:root{--bg:#f3f5f7;--surface:#fff;--ink:#16212b;--muted:#5b6b79;--line:#d5dce3;--brand:#12324a;--brand-ink:#fff;--accent:#e8730c;--ok:#1f7a4d;--warn:#b25e00;--bad:#b3261e;--radius:12px;--tap:52px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.4}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.4rem}h2{font-size:1.15rem}p{margin:0}.topbar{z-index:5;padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top));background:var(--brand);color:var(--brand-ink);align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar h1{flex:1;font-size:1.15rem}.topbar .who{opacity:.85;font-size:.85rem}.page{gap:16px;max-width:1100px;margin:0 auto;padding:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:12px;padding:16px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grow{flex:200px;min-width:0}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--bad);font-weight:600}button,.btn{min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}button:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-quiet{color:inherit;background:0 0;border-color:#0000}.btn-on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}input,select,textarea{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--ink);font:inherit;background:#fff;padding:10px 14px}textarea{resize:vertical;min-height:96px}label{gap:6px;font-size:.9rem;font-weight:600;display:grid}.list{gap:8px;display:grid}.list-item{text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:#fff;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 14px;font-weight:500;display:flex}.list-item strong{display:block}.list-item .sub{color:var(--muted);font-size:.85rem;font-weight:400}.chip{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);white-space:nowrap;background:#e7ecf1;border-radius:999px;padding:3px 10px;font-size:.78rem;font-weight:700;display:inline-block}.chip-draft{color:#3d4c5a;background:#e7ecf1}.chip-submitted{color:#184a7c;background:#dce9f7}.chip-rejected{color:var(--bad);background:#fbe3e1}.chip-locked,.chip-approved{color:var(--ok);background:#dcf0e4}.chip-test{color:var(--warn);background:#fdebd8}.stand{gap:10px;display:grid}.stand-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stand-nums{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.num{background:var(--bg);border-radius:10px;padding:8px 10px}.num .k{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem}.num .v{font-size:1.1rem;font-weight:700}.bar{background:#e3e8ee;border-radius:999px;height:14px;display:flex;overflow:hidden}.bar>span{height:100%;display:block}.bar .done{background:var(--brand)}.bar .today{background:var(--accent)}.bar .over{background:var(--bad)}.qty{align-items:center;gap:10px;display:flex}.qty input{text-align:right;max-width:180px;font-size:1.2rem;font-weight:700}.signin{place-items:center;min-height:100dvh;padding:16px;display:grid}.signin .card{width:100%;max-width:420px}
