:root{font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,sans-serif;color-scheme:light dark}body{margin:0;padding:2rem;max-width:960px;margin-inline:auto}.token-gate{max-width:420px;margin:4rem auto}.token-gate form{display:flex;gap:.5rem;margin-top:1rem}.token-gate input{flex:1;padding:.5rem}.stacked-form{display:flex;flex-direction:column;gap:.75rem;max-width:420px}.stacked-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.stacked-form input,.stacked-form select{padding:.5rem}.driver-form{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid color-mix(in srgb,canvastext 15%,transparent)}.driver-form h2{font-size:1rem;margin-bottom:0}.notice{background:color-mix(in srgb,canvastext 6%,canvas);border-radius:6px;padding:.75rem 1rem;font-size:.9rem}.notice p{margin:.35rem 0}.notice p:first-child{margin-top:0}.notice p:last-child{margin-bottom:0}.driver-registered-notice{margin-bottom:1.5rem}.login-url-row{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.login-url-row code{flex:1;padding:.4rem .6rem;background:canvas;border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:4px;font-size:.85rem;overflow-wrap:anywhere}nav{display:flex;gap:.5rem;margin:1rem 0}nav button{padding:.5rem 1rem;border:1px solid color-mix(in srgb,canvastext 30%,transparent);background:canvas;color:canvastext;border-radius:6px;cursor:pointer}nav button.active{background:color-mix(in srgb,canvastext 15%,canvas);font-weight:600}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.5rem;border-bottom:1px solid color-mix(in srgb,canvastext 15%,transparent)}.error{color:#c0392b}.link-button{background:none;border:none;padding:0;color:#c0392b;text-decoration:underline;cursor:pointer;font:inherit}tr.alcohol-alert{background:color-mix(in srgb,#c0392b 12%,canvas)}.alert-badge{display:inline-block;margin-left:.5rem;padding:.1rem .5rem;border-radius:999px;background:#c0392b;color:#fff;font-size:.75rem;font-weight:600}.logout{margin-top:.5rem;font-size:.85rem}.toolbar{display:flex;gap:.5rem;margin-bottom:1rem}.toolbar button{padding:.4rem .8rem;border:1px solid color-mix(in srgb,canvastext 30%,transparent);background:canvas;color:canvastext;border-radius:6px;cursor:pointer}.print-only{display:none}@media print{header,nav,.print-hidden{display:none!important}.print-only{display:block}body{padding:0;max-width:none}}.driver-detail-row>td{background:color-mix(in srgb,canvastext 4%,canvas)}.driver-detail-panel{display:grid;gap:1.5rem;padding:1rem 0}@media(min-width:900px){.driver-detail-panel{grid-template-columns:1fr 1fr}}.ledger-meta{font-size:.85rem;color:color-mix(in srgb,canvastext 60%,transparent)}.ledger-form fieldset,.guidance-form fieldset{border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:8px;padding:.5rem .75rem;margin-top:.5rem}.legal-tag{display:inline-block;margin-left:.4rem;padding:.05rem .4rem;font-size:.7rem;border-radius:999px;background:color-mix(in srgb,#2e7d32 15%,canvas);color:#2e7d32;vertical-align:middle}.success{color:#2e7d32}.hint{font-size:.8rem;color:color-mix(in srgb,canvastext 55%,transparent)}.expiry-overview section{margin-bottom:1.5rem}.expiry-badge{display:inline-block;padding:.1rem .5rem;border-radius:6px}.expiry-status-label{font-size:.75rem}.expiry-expired{background:color-mix(in srgb,#c0392b 20%,canvas);color:#c0392b;font-weight:700}.expiry-warning{background:color-mix(in srgb,#f39c12 25%,canvas);color:#9a6100}.expiry-ok{color:color-mix(in srgb,canvastext 70%,transparent)}.expiry-unknown{background:color-mix(in srgb,canvastext 8%,canvas);color:color-mix(in srgb,canvastext 55%,transparent)}.ocr-capture{border:1px dashed color-mix(in srgb,canvastext 25%,transparent);border-radius:8px;padding:.75rem;margin-bottom:1rem}.ocr-capture-picker{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.ocr-capture-filename{font-size:.8rem;color:color-mix(in srgb,canvastext 55%,transparent);margin:.35rem 0 0}.ocr-capture-status{font-size:.85rem;margin:.35rem 0 0}.ocr-capture-result{margin-top:.75rem;padding-top:.5rem;border-top:1px solid color-mix(in srgb,canvastext 15%,transparent)}.ocr-capture-note{font-size:.8rem;color:color-mix(in srgb,canvastext 60%,transparent);margin:0 0 .4rem}.ocr-capture-result dl{display:grid;grid-template-columns:auto 1fr;gap:.15rem .6rem;font-size:.85rem;margin:0 0 .5rem}.ocr-capture-result dt{color:color-mix(in srgb,canvastext 55%,transparent)}.ocr-capture-preview{max-width:100%;border-radius:6px;margin-top:.5rem}.invite-link-panel{border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.text-button{background:none;border:none;color:#2563eb;text-decoration:underline;cursor:pointer;padding:0;font-size:.85rem}.billing-setup-screen{border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:8px;padding:1rem;max-width:28rem}#billing-card-element{border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:4px;padding:.75rem;margin:.75rem 0}.ocr-review-list{list-style:none;padding:0;display:grid;gap:.5rem}.ocr-review-item{border:1px solid color-mix(in srgb,canvastext 20%,transparent);border-radius:8px}.ocr-review-summary{width:100%;display:flex;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:none;border:none;cursor:pointer;font-size:.9rem;text-align:left}.ocr-review-detail{padding:0 1rem 1rem;display:grid;gap:.5rem}.ocr-review-reference dt{font-size:.8rem;color:color-mix(in srgb,canvastext 55%,transparent)}.ocr-review-reference dd{margin:0}.ocr-mismatch{color:#c0392b}.ocr-mismatch-badge{display:inline-block;margin-left:.5rem;padding:.1rem .5rem;font-size:.75rem;border-radius:999px;background:color-mix(in srgb,#c0392b 15%,canvas)}.ocr-review-actions{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.reject-button{background:color-mix(in srgb,#c0392b 15%,canvas);color:#c0392b;border-color:transparent}.demo-banner{background:#b45309;color:#fff;text-align:center;font-size:13px;font-weight:600;padding:6px 12px;position:sticky;top:0;z-index:1000}
