:root{--paper:#F5F7F4;--paper-2:#EBEFEA;--ink:#1B2622;--ink-2:#4A5A54;--line:#CFD8D2;--accent:#0F6E56;--accent-ink:#fff;--bad:#B3372F;--bad-soft:#F6DDDA;--warn:#B7791F;--warn-soft:#F7ECD3;--good:#2E7D4F}
@media (prefers-color-scheme:dark){:root{--paper:#131A17;--paper-2:#1B2521;--ink:#E6ECE8;--ink-2:#A7B5AE;--line:#2C3A34;--accent:#3FB48F;--accent-ink:#0B1511;--bad:#E36A60;--bad-soft:#3E1F1C;--warn:#E0A64A;--warn-soft:#3A2D14;--good:#5CC48A}}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;padding-bottom:calc(64px + env(safe-area-inset-bottom))}
main{padding:16px;max-width:640px;margin:0 auto}h1{font-size:24px;margin:8px 0 12px}h2{font-size:18px;margin:20px 0 8px}
label{display:block;margin:10px 0 4px;font-size:14px;color:var(--ink-2)}input,select,textarea{width:100%;font:inherit;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2);color:var(--ink)}
button{font:inherit;padding:14px 16px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);width:100%;margin-top:12px;font-weight:600}button.phu{background:var(--paper-2);color:var(--ink)}button:disabled{opacity:.45}
button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.tabs{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--paper-2);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tabs[hidden]{display:none}
.tab{flex:1;text-align:center;padding:12px 4px;font-size:13px;color:var(--ink-2);text-decoration:none}.tab.active{color:var(--accent);font-weight:700}
.toast{position:fixed;left:12px;right:12px;bottom:80px;background:var(--ink);color:var(--paper);padding:12px 14px;border-radius:10px;z-index:9}.toast.loi{background:var(--bad)}
.banner-mang{background:var(--warn-soft);color:var(--warn);padding:8px 16px;font-size:14px;text-align:center}.banner-mang[hidden]{display:none}
.small{font-size:14px;color:var(--ink-2)}.loi{color:var(--bad)}.dang-tai{color:var(--ink-2)}.the{background:var(--paper-2);border-radius:12px;padding:14px;margin:10px 0}
table{width:100%;border-collapse:collapse;font-size:15px}td,th{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:12px;color:var(--ink-2);text-transform:uppercase}.num{text-align:right;font-variant-numeric:tabular-nums}
.do{background:var(--bad-soft)}.chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;background:var(--paper-2)}.chip.do{background:var(--bad-soft);color:var(--bad)}
.dang-nhap{margin-top:12vh}.dang-nhap input{font-size:22px;letter-spacing:.1em}
.to{font-size:26px;padding:28px}.vao{background:var(--good)}.ra{background:var(--bad)}.luoi-tuan{display:grid;gap:8px}.o-ngay{display:flex;justify-content:space-between;padding:12px;border-radius:10px;background:var(--paper-2)}.o-ngay.co-ca{border-left:4px solid var(--accent)}.tuan-nav{display:flex;gap:8px}.tuan-nav button{margin:0}
.luoi-so{display:grid;grid-template-columns:1fr 1fr;gap:8px}.the-so{display:block;text-decoration:none;color:inherit}.the-so .gia{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.the-so.do{background:var(--bad-soft)}.bieu-do{width:100%;margin:12px 0}.hang{display:flex;gap:12px;align-items:end}.hang label{flex:1}details summary{cursor:pointer;list-style:none}
.quy .gia{font-size:28px;font-weight:700}.tabs-con .chip.active{background:var(--accent);color:var(--accent-ink)}.cuon{overflow-x:auto}.luoi-ca select{width:56px;padding:6px}.luoi-ca td{padding:4px}
