:root{--ground:#fff;--ground-dim:#f6f4f1;--ink:#1e1b19;--ink-soft:#5f5852;--brand:#f4640d;--brand-deep:#b8480a;--brand-wash:#fdeee4;--rule:#e7e2dc;--rule-strong:#b9b2aa;--ok:#2f7d4f;--ok-wash:#e6f2ea;--on-ink:#fff;--display:"Avenir Next Condensed", "DIN Condensed", "Roboto Condensed", "sans-serif-condensed", "Arial Narrow", sans-serif;--body:"Avenir Next", "Segoe UI", roboto, "Helvetica Neue", sans-serif;--text-label:11px;--text-label-phone:12.5px;--text-pill:11.5px;--text-small:13px;--text-nav:14px;--text-row:14.5px;--text-body:15px;--text-phone:17px;--text-phone-title:18px;--text-input-big:19px;--text-button:21px;--text-button-phone:25px;--text-heading:40px;--text-heading-phone:34px;--text-big:54px;--space-2:2px;--space-4:4px;--space-6:6px;--space-7:7px;--space-8:8px;--space-9:9px;--space-10:10px;--space-11:11px;--space-12:12px;--space-14:14px;--space-16:16px;--space-18:18px;--space-20:20px;--space-22:22px;--space-24:24px;--space-26:26px;--space-28:28px;--radius-tick:3px;--radius-small:4px;--radius-banner:5px;--radius:6px;--radius-pill:20px;--tick-box:14px;--control:36px;--control-big:44px;--control-phone:46px;--button:44px;--button-phone:56px;--bar:64px;--logo:40px;--logo-phone:34px;--tabs:64px;--reading:720px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background-color:var(--ground);color:var(--ink);font-family:var(--body);font-size:var(--text-body);min-height:100dvh;font-weight:500;line-height:1.4}a{color:inherit;text-decoration:none}.disp{font-family:var(--display);letter-spacing:.01em;font-weight:700;line-height:1}.label{color:var(--ink-soft);font-size:var(--text-label);letter-spacing:.13em;text-transform:uppercase;font-weight:600}.soft{color:var(--ink-soft)}.hot{color:var(--brand-deep)}.num{font-variant-numeric:tabular-nums}.bar{border-bottom:1px solid var(--rule);align-items:center;gap:var(--space-28);min-height:var(--bar);padding:0 var(--space-28);display:flex}.bar-logo{height:var(--logo);width:auto;display:block}.bar-nav{color:var(--ink-soft);font-size:var(--text-nav);gap:var(--space-24);font-weight:600;display:flex}.bar-nav a{padding:var(--space-8) 0}.bar-nav a[aria-current=page]{box-shadow:0 23px 0 -20px var(--brand);color:var(--ink)}.who{color:var(--ink-soft);font-size:var(--text-small);align-items:center;gap:var(--space-14);margin-left:auto;display:flex}.who a{color:var(--ink-soft)}.who button{color:var(--ink-soft);cursor:pointer;font:inherit;background-color:#0000;border:0;text-decoration:underline}.page{padding:var(--space-26) var(--space-28)}.head{align-items:flex-end;gap:var(--space-16);margin-bottom:var(--space-20);justify-content:space-between;display:flex}.head h1{font-family:var(--display);font-size:var(--text-heading);font-weight:700;line-height:1}.head .sub{color:var(--ink-soft);font-size:var(--text-nav);margin-top:var(--space-6)}.cols{gap:var(--space-26);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);display:grid}.card{background-color:var(--ground);border:1px solid var(--rule);border-radius:var(--radius);padding:var(--space-18) var(--space-20)}.card+.card{margin-top:var(--space-16)}.card h2{color:var(--ink-soft);font-size:var(--text-small);letter-spacing:.13em;margin-bottom:var(--space-12);text-transform:uppercase;font-weight:600}.reading{max-width:var(--reading)}.grid2{gap:var(--space-10) var(--space-14);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid3{gap:var(--space-10) var(--space-14);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.grid4{gap:var(--space-8);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.field .label{margin-bottom:var(--space-4);display:block}.input{background-color:var(--ground);border:1.5px solid var(--rule);border-radius:var(--radius-small);color:var(--ink);font:inherit;font-size:var(--text-body);min-height:var(--control);padding:var(--space-7) var(--space-10);align-items:center;width:100%;font-weight:600;display:flex}.input:focus-visible{border-color:var(--ink);outline:none}.input.big{font-size:var(--text-input-big);min-height:var(--control-big)}.input.owed{background-color:var(--brand-wash);border-color:var(--brand);color:var(--brand-deep)}.tick{border:1.5px solid var(--rule);border-radius:var(--radius-small);color:var(--ink-soft);font-size:var(--text-row);align-items:center;gap:var(--space-8);padding:var(--space-6) var(--space-9);font-weight:600;display:flex}.tick:before{border:1.5px solid var(--rule-strong);border-radius:var(--radius-tick);content:"";height:var(--tick-box);width:var(--tick-box);flex:none}.tick.on{border-color:var(--ink);color:var(--ink)}.tick.on:before{background-color:var(--ink);border-color:var(--ink);box-shadow:inset 0 0 0 2.5px var(--ground)}table{border-collapse:collapse;font-size:var(--text-row);width:100%}th{border-bottom:1px solid var(--rule);color:var(--ink-soft);font-size:var(--text-label);letter-spacing:.13em;padding:0 var(--space-10) var(--space-8) 0;text-align:left;text-transform:uppercase;font-weight:600}td{border-bottom:1px solid var(--rule);padding:var(--space-10) var(--space-10) var(--space-10) 0;vertical-align:middle;font-weight:600}td .soft{font-size:var(--text-small);font-weight:500}.r{text-align:right;white-space:nowrap;padding-right:0}tr.total td{font-size:var(--text-input-big);padding-top:var(--space-14);border-bottom:0}tr.flag td{background-color:var(--brand-wash)}tr.flag td:first-child{box-shadow:inset 3px 0 0 var(--brand);padding-left:var(--space-10)}.preview-banner{background-color:var(--brand-wash);border-bottom:1.5px solid var(--brand);color:var(--brand-deep);font-size:var(--text-label);letter-spacing:.08em;padding:var(--space-4) var(--space-9);text-align:center;text-transform:uppercase;font-weight:700}.pill{border:1.5px solid var(--rule);border-radius:var(--radius-pill);color:var(--ink-soft);font-size:var(--text-pill);letter-spacing:.08em;padding:var(--space-4) var(--space-9);text-transform:uppercase;white-space:nowrap;font-weight:700;display:inline-block}.pill.sched{border-color:var(--brand);color:var(--brand-deep)}.pill.going{background-color:var(--brand);border-color:var(--brand);color:var(--ink)}.pill.done{background-color:var(--ink);border-color:var(--ink);color:var(--on-ink)}.pill.inv{background-color:var(--ok-wash);border-color:var(--ok);color:var(--ok)}.pill.owed{background-color:var(--brand-wash);border-color:var(--brand);color:var(--brand-deep)}.btn{background-color:var(--ground);border:2px solid var(--ink);border-radius:var(--radius-small);color:var(--ink);cursor:pointer;font-family:var(--display);font-size:var(--text-button);letter-spacing:.04em;min-height:var(--button);padding:0 var(--space-22);text-transform:uppercase;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.btn.fill{background-color:var(--brand);border-color:var(--brand)}.btn.ink{background-color:var(--ink);color:var(--on-ink)}.btn.wide{width:100%}.btn:disabled{cursor:progress;opacity:.6}.row{align-items:center;gap:var(--space-10);display:flex}.note{color:var(--ink-soft);font-size:var(--text-small);margin-top:var(--space-10)}.banner{background-color:var(--ok-wash);border-radius:var(--radius-banner);color:var(--ok);font-size:var(--text-row);align-items:center;gap:var(--space-10);padding:var(--space-11) var(--space-14);font-weight:700;display:flex}.banner.warn{background-color:var(--brand-wash);color:var(--brand-deep)}.big{font-family:var(--display);font-size:var(--text-big);font-weight:700;line-height:.95}.btn.slim{font-size:var(--text-small);min-height:var(--control);padding:0 var(--space-12)}.connection-head{align-items:baseline;gap:var(--space-10);justify-content:space-between;display:flex}.connection-actions{margin-top:var(--space-16);flex-wrap:wrap}.connection-error,.connection-notice{margin-bottom:var(--space-16);margin-top:var(--space-12)}.connection-value{overflow-wrap:anywhere;white-space:normal}.connection-label{white-space:nowrap}.connection-detail{overflow-wrap:anywhere}.connection-recent{margin-top:var(--space-16)}.sign-in{margin:var(--space-28) auto;max-width:var(--reading);padding:0 var(--space-16)}.sign-in-logo{height:var(--control-phone);margin-bottom:var(--space-22);width:auto;display:block}.sign-in h1{font-size:var(--text-heading-phone)}.sign-in .card{margin-top:var(--space-18)}.sign-in a{text-decoration:underline}.sign-in form{gap:var(--space-14);display:grid}.phone{font-size:var(--text-phone);padding-bottom:calc(var(--tabs) + env(safe-area-inset-bottom))}.phone-top{border-bottom:1px solid var(--rule);padding:var(--space-12) var(--space-20);justify-content:space-between;align-items:center;display:flex}.phone-logo{height:var(--logo-phone);width:auto;display:block}.phone-wrap{padding:var(--space-16) var(--space-20)}.phone-wrap h1{font-family:var(--display);font-size:var(--text-heading-phone);font-weight:700;line-height:1}.offline{background-color:var(--ink);color:var(--on-ink);font-size:var(--text-row);align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-20);font-weight:600;display:flex}.tabs{background-color:var(--ground);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tabs a{color:var(--ink-soft);font-size:var(--text-label-phone);letter-spacing:.08em;min-height:var(--tabs);text-transform:uppercase;justify-content:center;align-items:center;font-weight:700;display:flex}.tabs a[aria-current=page]{box-shadow:inset 0 3px 0 var(--brand);color:var(--ink)}.phone .label{font-size:var(--text-label-phone)}.phone .btn{font-size:var(--text-button-phone);min-height:var(--button-phone);width:100%}.phone .input{font-size:var(--text-phone-title);min-height:var(--control-phone)}@media (max-width:760px){.bar{gap:var(--space-8) var(--space-16);padding:var(--space-10) var(--space-16) 0;flex-wrap:wrap}.bar-nav{gap:var(--space-20);order:3;width:100%;overflow-x:auto}.bar-nav a{white-space:nowrap}.page{padding:var(--space-18) var(--space-16)}.head{flex-direction:column;align-items:flex-start}.head h1{font-size:var(--text-heading-phone)}.cols{grid-template-columns:minmax(0,1fr)}}
