:root{--background:#fff;--foreground:#171717;--border:#e2e2e2;--muted:#666;--accent:#1f4e78;--accent-contrast:#fff;--chip-bg:#f2f2f2;--overdue-bg:#fce4e4}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--border:#2a2a2a;--muted:#a0a0a0;--chip-bg:#1a1a1a;--overdue-bg:#3a1f1f}}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;height:100%}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:Arial,Helvetica,sans-serif;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:16px}h1{margin-bottom:8px;font-size:1.25rem}h2{margin-bottom:6px;font-size:1.05rem}p{color:var(--muted);margin-bottom:8px}button,input,select{font:inherit}button{background:var(--accent);color:var(--accent-contrast);cursor:pointer;border:none;border-radius:8px;min-height:44px;padding:12px 16px;font-weight:600}button:active{opacity:.85}button.secondary{background:var(--chip-bg);color:var(--foreground)}input[type=search],input[type=text]{border:1px solid var(--border);background:var(--background);width:100%;color:var(--foreground);border-radius:8px;min-height:44px;padding:10px 12px}.signin{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:80vh;display:flex}.topbar{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.topbar .user{color:var(--muted);font-size:.85rem}.tool-list{flex-direction:column;gap:8px;margin-top:12px;list-style:none;display:flex}.tool-card{border:1px solid var(--border);border-radius:10px;padding:12px;display:block}.tool-card .asset-number{color:var(--accent);font-weight:700}.tool-card .name{margin:2px 0;font-weight:600}.tool-card .meta{color:var(--muted);font-size:.85rem}.status-chip{background:var(--chip-bg);border-radius:999px;margin-top:4px;padding:2px 8px;font-size:.75rem;display:inline-block}.status-chip.checked-out{background:var(--overdue-bg)}.detail-grid{grid-template-columns:1fr 1fr;gap:8px 16px;margin:16px 0;display:grid}.detail-grid .field-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem}.detail-grid .field-value{font-weight:600}.actions{flex-direction:column;gap:8px;margin:16px 0;display:flex}.history-list{flex-direction:column;gap:8px;list-style:none;display:flex}.history-list li{border-top:1px solid var(--border);padding-top:8px;font-size:.9rem}.empty-state{text-align:center;color:var(--muted);padding:32px 16px}.unmatched-user{text-align:center;padding:32px 16px}.notice{border-radius:8px;margin:16px 0 0;padding:12px;font-weight:600}.notice.success{color:#1b5e20;background:#e3f4e6}.notice.error{background:var(--overdue-bg);color:#8b1a1a}@media (prefers-color-scheme:dark){.notice.success{color:#a5d6a7;background:#1d3322}.notice.error{color:#f4b4b4}}.confirm-panel{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;margin:16px 0;padding:12px;display:flex}.confirm-panel .confirm-text{color:var(--foreground);margin:0;font-weight:600}.confirm-panel .hint{margin:0;font-size:.85rem}.confirm-panel .actions{margin:0}.employee-list{flex-direction:column;gap:6px;max-height:50vh;list-style:none;display:flex;overflow-y:auto}.employee-list button{text-align:left;width:100%}button:disabled{opacity:.45;cursor:not-allowed}a.button-link{background:var(--accent);color:var(--accent-contrast);border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:12px 16px;font-weight:600;display:inline-flex}a.button-link.secondary{background:var(--chip-bg);color:var(--foreground)}.nav-row,.admin-links{gap:8px;margin-bottom:12px;display:flex}.nav-row .button-link,.admin-links .button-link{flex:1}.hint{color:var(--muted);font-size:.85rem}.scanner{aspect-ratio:3/4;background:#000;border-radius:12px;width:100%;max-height:60vh;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%}.scanner-frame{border:3px solid #ffffffd9;border-radius:12px;position:absolute;inset:20%;box-shadow:0 0 0 9999px #00000040}.manual-entry{gap:8px;margin-top:16px;display:flex}.qr-label{border:1px dashed var(--border);color:#000;background:#fff;border-radius:8px;align-items:center;gap:12px;max-width:360px;margin:16px 0;padding:12px;display:flex}.qr-label .qr{flex-shrink:0;width:120px;height:120px}.qr-label .qr svg{width:100%;height:100%}.qr-asset{font-size:1.4rem;font-weight:700}.qr-name{font-size:.9rem}.qr-company{color:#444;margin-top:4px;font-size:.75rem}@media print{.no-print{display:none!important}.qr-label{border:none;margin:0}main{padding:0}}.progress-count{font-size:1.4rem;font-weight:700}.progress-bar{background:var(--chip-bg);border-radius:4px;height:8px;margin:8px 0;overflow:hidden}.progress-bar>div{background:var(--accent);height:100%}.status-chip.verified{color:#1b5e20;background:#e3f4e6}.tool-card.flagged{border-width:2px;border-color:#c62828}.flag-reason{color:#c62828}.stocktake-form{flex-direction:column;gap:12px;margin-top:16px;display:flex}.stocktake-form .field{flex-direction:column;gap:4px;display:flex}.stocktake-form select{border:1px solid var(--border);background:var(--background);width:100%;color:var(--foreground);border-radius:8px;min-height:44px;padding:10px 12px}.changed-tag{color:#b26a00;font-weight:700}.photo-pick{border:1px dashed var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;font-weight:600;display:flex}.photo-preview{align-items:center;gap:8px;display:flex}.photo-preview img{object-fit:cover;border-radius:8px;width:96px;height:96px}@media (prefers-color-scheme:dark){.status-chip.verified{color:#a5d6a7;background:#1d3322}}.tool-photo{aspect-ratio:4/3;background:var(--chip-bg);border:1px solid var(--border);border-radius:10px;width:100%;margin:8px 0;padding:0;display:block;overflow:hidden}.tool-photo img{object-fit:cover;width:100%;height:100%;display:block}.tool-photo.placeholder{text-align:center;color:var(--muted);justify-content:center;align-items:center;padding:16px;font-size:.9rem;display:flex}.photo-viewer{z-index:50;background:#000000eb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.photo-viewer img{object-fit:contain;max-width:100%;max-height:100%}.photo-viewer-close{position:absolute;top:16px;right:16px}.settings-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.settings-section h3{margin:12px 0 4px;font-size:.95rem}.inline-form{align-items:center;gap:8px;margin:8px 0;display:flex}input[type=number]{border:1px solid var(--border);background:var(--background);width:96px;color:var(--foreground);border-radius:8px;min-height:44px;padding:10px 12px}.settings-section select,.log-filters select{border:1px solid var(--border);background:var(--background);color:var(--foreground);border-radius:8px;max-width:100%;min-height:44px;padding:10px 12px}.plain-list{list-style:none}.plain-list li{padding:4px 0}.flagged-list{flex-direction:column;gap:8px;list-style:none;display:flex}.flagged-list li{border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.add-flagged{flex-direction:column;gap:8px;margin-top:8px;display:flex}.log-filters{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.log-filters select{flex:140px}.log-list{flex-direction:column;gap:8px;list-style:none;display:flex}.log-entry{border:1px solid var(--border);border-radius:8px;padding:10px;font-size:.9rem}.log-entry.failed{border-color:#c62828}.log-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.log-head .hint{margin-left:auto}.log-result,.log-error{color:#c62828;font-weight:600}.log-line{margin-top:2px}.log-entry pre{white-space:pre-wrap;word-break:break-word;margin-top:4px;font-size:.75rem;overflow-x:auto}.notice.mode-banner{color:#7a4b00;background:#fff4e0}@media (prefers-color-scheme:dark){.notice.mode-banner{color:#ffcc80;background:#3a2a10}}.nav-row{flex-wrap:wrap}.nav-row .button-link{flex:30%}.status-chip.overdue{background:var(--overdue-bg);color:#8b1a1a}.label-sheet{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin-top:16px;display:grid}.sheet-label{border:1px dashed var(--border);color:#000;background:#fff;border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.sheet-label .qr{flex-shrink:0;width:96px;height:96px}.sheet-label .qr svg{width:100%;height:100%}.labels-page{page:label-sheet}@page label-sheet{size:A4;margin:0}@media print{.labels-page{max-width:none;padding:0}.label-sheet{break-after:page;grid-template-columns:repeat(3,63.5mm);grid-auto-rows:38.1mm;gap:0 2.5mm;height:297mm;margin:0;padding:15.15mm 7.25mm 0}.label-sheet:last-child{break-after:auto}.sheet-label{break-inside:avoid;border:none;border-radius:0;gap:2mm;padding:2mm 3mm;overflow:hidden}.sheet-label .qr{width:32mm;height:32mm}.sheet-label .qr-asset{font-size:13pt}.sheet-label .qr-name{font-size:7.5pt;line-height:1.15}.sheet-label .qr-company{font-size:6.5pt}}button.danger{color:#fff;background:#c62828}.live-badge{color:#fff;background:#c62828;border-radius:4px;padding:0 6px;font-size:.75rem;font-weight:700}.field-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:.85rem}.field-table th,.field-table td{text-align:left;border-bottom:1px solid var(--border);padding:6px 4px}.field-table tr.failed td{color:#c62828;font-weight:600}
