:root{--matcha-ink:#163029;--ink-2:#3c514a;--ink-3:#6b7d76;--green:#007853;--green-deep:#006548;--boost:#aada91;--sweet:#90d5ac;--milk:#ecf6f0;--paper:#f7f6ee;--card:#fffffb;--line:#d9e3dc;--amber:#b9761a;--amber-bg:#fbf0dc;--rust:#a8432b;--rust-bg:#f8e6e0;--radius:14px;--shadow:0 1px 0 #1630290a, 0 10px 30px -18px #16302959;--serif:"Fraunces", Georgia, serif;--sans:"Instrument Sans", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--sans);color:var(--matcha-ink);background:var(--paper);-webkit-font-smoothing:antialiased;background-image:radial-gradient(1200px 500px at 85% -10%,#90d5ac47,#0000 60%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .09  0 0 0 0 .19  0 0 0 0 .16  0 0 0 .05 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");min-height:100vh}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;font-variation-settings:"opsz" 96, "SOFT" 60;margin:0;font-weight:600}button,input,select,textarea{font:inherit;color:inherit}.mono,.amt{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.topbar{z-index:20;background:var(--matcha-ink);color:#fff;position:sticky;top:0}.topbar-in{align-items:center;gap:22px;max-width:1080px;margin:0 auto;padding:12px 20px;display:flex}.brand{font-family:var(--serif);letter-spacing:-.01em;align-items:center;gap:10px;font-size:21px;font-weight:600;display:flex}.brand small{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--boost);font-size:11px;font-weight:500}.nav{flex:1;gap:4px;display:flex;overflow-x:auto}.nav button{color:#c7d8cf;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-weight:500}.nav button:hover{color:#fff}.nav button.on{background:var(--green);color:#fff}.who{color:#c7d8cf;align-items:center;gap:12px;font-size:13px;display:flex}.who button{color:#e4efe9;cursor:pointer;background:0 0;border:1px solid #3f5a51;border-radius:999px;padding:5px 12px}.page{max-width:1080px;margin:0 auto;padding:28px 20px 90px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}.page-head h1{font-size:34px}.page-head p{color:var(--ink-3);margin:6px 0 0}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pad{padding:18px 20px}.grid{gap:14px;display:grid}.chip{background:var(--milk);color:var(--green-deep);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.chip.warn{background:var(--amber-bg);color:var(--amber)}.chip.bad{background:var(--rust-bg);color:var(--rust)}.chip.dark{background:var(--matcha-ink);color:#fff}.chip.lime{background:var(--boost);color:var(--matcha-ink)}.btn{cursor:pointer;background:var(--green);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:600;transition:transform .12s,background .12s}.btn:hover{background:var(--green-deep)}.btn:active{transform:translateY(1px)}.btn.ghost{color:var(--matcha-ink);border:1px solid var(--line);background:0 0}.btn.ghost:hover{background:var(--milk)}.btn.dark{background:var(--matcha-ink)}.btn.danger{background:var(--rust)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.small{padding:6px 12px;font-size:13px}label.f{color:var(--ink-2);gap:6px;font-size:13px;font-weight:600;display:grid}.input,select.input,textarea.input{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:10px 12px}.input:focus{outline:2px solid var(--sweet);border-color:var(--green)}.muted{color:var(--ink-3)}.row{align-items:center;gap:12px;display:flex}.spread{justify-content:space-between}.empty{text-align:center;color:var(--ink-3);padding:50px 20px}.empty h3{color:var(--matcha-ink);margin-bottom:6px;font-size:22px}.notice{background:var(--amber-bg);color:#6b4510;border-radius:12px;padding:12px 16px;font-size:14px}.notice.bad{background:var(--rust-bg);color:#6f2616}.notice.ok{background:var(--milk);color:var(--green-deep)}.report{cursor:pointer;gap:12px;padding:18px 20px;transition:transform .15s,box-shadow .15s;display:grid}.report:hover{transform:translateY(-2px);box-shadow:0 1px #1630290a,0 18px 34px -18px #16302973}.report h3{font-size:22px}.tally{flex-wrap:wrap;align-items:center;gap:9px 12px;min-height:34px;display:flex}.tally-group{gap:4px;display:flex;position:relative}.tally-mark{background:var(--line);border-radius:2px;width:3px;height:26px;transition:background .3s}.tally-mark.done{background:var(--green)}.tally-mark.suggested{background:repeating-linear-gradient(180deg, var(--boost) 0 4px, transparent 4px 7px)}.tally-slash{background:var(--line);border-radius:2px;height:3px;transition:background .3s;position:absolute;top:11px;left:-3px;right:-3px;transform:rotate(-24deg)}.tally-slash.done{background:var(--matcha-ink)}.bar{background:var(--milk);border-radius:99px;height:6px;overflow:hidden}.bar>i{background:var(--green);border-radius:99px;height:100%;transition:width .4s;display:block}.charges{display:grid}.charge{border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;grid-template-columns:28px 74px 1fr auto 20px;align-items:center;gap:12px;width:100%;padding:13px 18px;display:grid}.charge:hover{background:var(--milk)}.charge:last-child{border-bottom:0}.dot{border:2px solid var(--line);border-radius:50%;width:12px;height:12px}.dot.coded,.dot.submitted,.dot.approved,.dot.posted{background:var(--green);border-color:var(--green)}.dot.suggested{border-color:var(--boost);background:radial-gradient(circle, var(--boost) 40%, transparent 42%)}.charge .date{color:var(--ink-3);font-size:13px}.charge .m{font-weight:600}.charge .sub{color:var(--ink-3);margin-top:2px;font-size:12.5px}.charge .amt{text-align:right;font-weight:600}.credit{color:var(--green)}.sel{accent-color:var(--green);width:17px;height:17px}.scrim{z-index:40;background:#16302973;animation:.18s fade;position:fixed;inset:0}.drawer{background:var(--paper);z-index:41;width:min(520px,100vw);animation:.24s cubic-bezier(.2,.8,.2,1) slide;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-20px 0 50px -20px #16302980}.drawer-head{background:var(--matcha-ink);color:#fff;padding:22px 24px 16px}.drawer-head .amt{font-family:var(--serif);font-size:40px;font-weight:600}.drawer-body{gap:16px;padding:20px 24px 40px;display:grid}.receipt-thumb{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{opacity:0;transform:translate(40px)}}table.t{border-collapse:collapse;width:100%;font-size:14px}table.t th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);border-bottom:1px solid var(--line);padding:10px 14px;font-size:12px}table.t td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 14px}table.t tr:last-child td{border-bottom:0}.scroll-x{overflow-x:auto}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:center;width:min(440px,100%);padding:38px 34px}.login-card h1{font-size:46px;line-height:1}.login-card .tag{color:var(--ink-3);font-style:italic;font-family:var(--serif);margin:10px 0 26px}.login-tally{justify-content:center;margin-bottom:18px;display:flex}.sticky-submit{background:linear-gradient(180deg, transparent, var(--paper) 40%);justify-content:flex-end;gap:10px;padding:24px 0 16px;display:flex;position:sticky;bottom:0}@media (width<=640px){.topbar-in{flex-wrap:wrap;gap:8px}.who{margin-left:auto}.page-head h1{font-size:28px}.charge{grid-template-columns:22px 1fr auto}.charge .date,.charge .chev{display:none}}.packet-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.packet-head .eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:4px;font-size:11px;font-weight:600}.packet-head h1{font-size:34px}.packet-head p{color:var(--ink-3);margin:6px 0 0}.packet-person{margin:26px 0}.packet-person h2{font-size:22px}.packet-t td{vertical-align:top}.rthumb{object-fit:cover;border:1px solid var(--line);border-radius:6px;width:120px;max-height:150px;margin-bottom:4px;display:block}@media print{.topbar,.no-print{display:none!important}body{background:#fff}.page{max-width:none;padding:0}.card{box-shadow:none}.packet-person{break-inside:auto}table.t tr{break-inside:avoid}details{display:block}details>summary{list-style:none}details[open]>:not(summary){display:block}}
