:root{--blue:#0B2B5C;--navy:#0B1F35;--soft:#F5F7FA;--line:#DDE6F1;--text:#111827;--red:#DC2626}
*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.hero{display:flex;gap:14px;align-items:center;background:linear-gradient(135deg,#fff,#eaf1ff);border-bottom:1px solid var(--line);padding:16px;position:sticky;top:0;z-index:10}.logo{width:68px;height:68px;object-fit:contain;border-radius:14px}.hero h1{font-size:22px;margin:0;color:var(--navy)}.hero p{margin:4px 0 0;color:#667085;font-size:13px}.tabs{display:flex;gap:8px;overflow:auto;background:white;border-bottom:1px solid var(--line);padding:10px;position:sticky;top:101px;z-index:10}.tab{border:0;border-radius:999px;background:#eef3f8;color:var(--blue);font-weight:800;padding:10px 14px}.tab.active{background:var(--blue);color:white}main{padding:14px 14px 90px}.page{display:none}.page.active{display:block}.dashboardHero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0B2B5C,#0B1F35);color:white;border-radius:28px;padding:22px;margin-bottom:14px;box-shadow:0 14px 35px #0b2b5c33}.dashboardHero span{font-size:12px;color:#bfdbfe;font-weight:800}.dashboardHero h2{margin:4px 0;font-size:28px}.dashboardHero p{margin:0;color:#dbeafe}.dashboardHero b{font-size:48px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat,.card,.item{background:white;border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 4px 16px #0000000a}.stat.red{background:#fff1f2}.stat b{display:block;font-size:30px;color:var(--blue)}.stat.red b{color:var(--red)}.stat span{color:#667085}.quick{display:grid;gap:8px;margin:14px 0}.primary,.secondary,.danger,button{font:inherit;border:0;border-radius:16px;font-weight:800;padding:13px 14px}.primary{background:var(--blue);color:white}.secondary{background:white;color:var(--blue);border:1px solid var(--line)}.danger{background:#fee2e2;color:#991b1b}.small{padding:8px 12px}input,select{font:inherit;width:100%;border:1px solid var(--line);border-radius:16px;padding:13px;background:white;margin:6px 0}.toolbar{margin-bottom:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter{display:grid;gap:8px}.filter-grid{display:grid;gap:8px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.grid{display:grid;gap:12px}.list{display:grid;gap:10px}.item h3{margin:0 0 6px;color:var(--navy)}.meta{color:#667085;font-size:13px;line-height:1.45}.badge{display:inline-block;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;margin-top:10px}.stok{background:#dcfce7;color:#166534}.cut{background:#ffedd5;color:#9a3412}.usedBadge{background:#fee2e2;color:#991b1b}.item.usedItem{background:#fff7f7;border-color:#fecaca}.item.usedItem h3{color:#991b1b}.photo{width:100%;height:180px;object-fit:cover;background:#eef2f7;border-radius:18px;margin-bottom:10px}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.history{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.tree{background:#f8fafc;border-radius:18px;padding:12px;margin-top:10px;font-family:ui-monospace,monospace;font-size:13px;white-space:pre-line}.bar{height:14px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:10px 0}.bar span{display:block;height:100%;background:var(--blue)}.searchInfo{font-weight:800;color:var(--blue);margin:12px 0}dialog{border:0;border-radius:24px;width:94%;max-width:620px;padding:18px;box-shadow:0 20px 90px #0005}#qrVideo{width:100%;min-height:280px;background:#000;border-radius:18px;margin:10px 0}
@media(min-width:900px){.stats{grid-template-columns:repeat(6,1fr)}.grid{grid-template-columns:repeat(3,1fr)}.quick{grid-template-columns:repeat(4,1fr)}.filter-grid{grid-template-columns:1fr 1fr 1fr 140px 140px}}
@media(prefers-color-scheme:dark){body{background:#0b1220;color:#fff}.hero,.tabs,.card,.item,dialog,input,select,.secondary{background:#111827;color:#fff;border-color:#263244}.hero{background:linear-gradient(135deg,#111827,#14213d)}.meta,.hero p{color:#aab4c5}.item.usedItem{background:#2a1212}.tree{background:#0f172a}}