:root {
  color-scheme:light; --bg:#f1ede3; --surface:#fffcf5; --subtle:#eae4d7; --ink:#202624;
  --muted:#62655e; --line:rgba(53,54,43,.19); --accent:#33594d; --on-accent:#fffcf5; --soft:#e6e9dd;
  --hold:#745719; --hold-bg:#f5edd7; --skip:#62645d; --skip-bg:#ebebe5; --error:#9c3f2c;
  --font-body:'Satoshi',sans-serif; --font-display:'Zodiak',serif;
  --text-xs:clamp(.8rem,.78rem + .1vw,.875rem); --text-sm:clamp(.9rem,.88rem + .1vw,1rem);
  --text-base:1.125rem; --text-lg:clamp(1.2rem,1.1rem + .4vw,1.4rem); --text-xl:clamp(1.65rem,1.45rem + .8vw,2.15rem);
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px; --s8:32px; --s10:40px; --s12:48px; --s16:64px;
}
[data-theme=dark] {color-scheme:dark;--bg:#1c201f;--surface:#252a27;--subtle:#30352e;--ink:#f1ecdf;--muted:#bdbfb3;--line:rgba(222,215,192,.21);--accent:#b9cbb6;--on-accent:#222b25;--soft:#343f35;--hold:#e6d19d;--hold-bg:#453d2c;--skip:#d0d2c6;--skip-bg:#373b34;--error:#f4ac9c}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--text-base)/1.55 var(--font-body)}
button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}
button,select,input{min-height:48px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}
a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
h1,h2,h3,p{margin:0}h1{font:400 var(--text-xl)/1.25 var(--font-display);letter-spacing:-.04em}h2{font-size:var(--text-lg);line-height:1.35;letter-spacing:-.025em}h3{font-size:var(--text-base);line-height:1.4}p{color:var(--muted)}small{font-size:var(--text-sm)}
.sidebar{position:fixed;inset:0 auto 0 0;width:248px;padding:var(--s8) var(--s5);border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;z-index:10}
.brand{display:flex;gap:var(--s3);align-items:center;text-decoration:none}.brand svg{width:42px;height:42px;flex-shrink:0}.brand>span{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.3}.brand small{display:block;font:700 .75rem/1.8 var(--font-body);letter-spacing:.02em}
.nav-caption{font-size:var(--text-xs);letter-spacing:.13em;margin:var(--s12) var(--s3) var(--s4)}
nav{display:flex;flex-direction:column;gap:var(--s2)}nav a{display:flex;gap:var(--s4);padding:var(--s3) var(--s4);min-height:54px;text-decoration:none;border-radius:8px;color:var(--muted);font-weight:500}nav a.active{background:var(--soft);color:var(--ink);font-weight:700}nav a:hover{background:var(--subtle)}.nav-number{font-size:var(--text-xs);align-self:center;opacity:.8;font-variant-numeric:tabular-nums}
.sidebar-bottom{margin-top:auto;font-size:var(--text-sm);padding:var(--s4) var(--s3);border-top:1px solid var(--line)}.sidebar-bottom p{font-family:var(--font-display);margin-top:var(--s5);font-size:var(--text-lg);line-height:1.5}.version{float:right;font-size:var(--text-xs)}.pilot-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:var(--s2)}
.workspace{margin-left:248px}.topbar{padding:var(--s4) var(--s10);min-height:80px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);gap:var(--s4)}.divider{margin:0 var(--s3);opacity:.4}.top-actions{display:flex;align-items:center;gap:var(--s4)}
.pill,.badge{display:inline-flex;align-items:center;min-height:28px;padding:var(--s1) var(--s3);font-size:var(--text-xs);font-weight:700;border-radius:5px;white-space:nowrap}.pill{border:1px solid var(--line)}.badge{background:var(--skip-bg);color:var(--skip)}.badge.hold{color:var(--hold);background:var(--hold-bg)}.badge.buy{background:var(--soft);color:var(--ink)}
.text-button{background:none;border:0;color:var(--ink);padding:var(--s2);font-size:var(--text-sm);text-decoration:underline;text-underline-offset:4px}
main{max-width:1180px;margin:auto;padding:var(--s10) var(--s10) var(--s6);min-height:calc(100vh - 145px)}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s3)}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s5);margin-bottom:var(--s8)}.page-head p{margin-top:var(--s3);max-width:58ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);min-height:52px;border:1px solid var(--line);border-radius:7px;padding:var(--s3) var(--s5);background:var(--surface);color:var(--ink);font-weight:700;font-size:var(--text-base);text-decoration:none}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn:hover{filter:brightness(.96)}
.notice{background:var(--subtle);border-radius:8px;padding:var(--s4) var(--s5);margin-bottom:var(--s6);font-size:var(--text-sm);color:var(--muted)}.notice strong{color:var(--ink)}
.week-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(265px,1fr);gap:var(--s6)}.lead-card{background:var(--soft);padding:var(--s8);border-radius:12px}.lead-card h2{font:400 var(--text-xl)/1.35 var(--font-display);max-width:23ch}.lead-card p{margin-top:var(--s4);max-width:45ch}.lead-card .btn{margin-top:var(--s6)}
.proof-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:var(--s6);display:flex;flex-direction:column;justify-content:space-between}.proof-card h2{font-size:var(--text-base)}.proof-card .proof-value{font:400 var(--text-xl)/1.3 var(--font-display);margin:var(--s4) 0;color:var(--ink)}.mini-row{display:flex;justify-content:space-between;gap:var(--s3);padding:var(--s3) 0;border-bottom:1px solid var(--line);font-size:var(--text-sm)}.mini-row:last-child{border-bottom:0}
.section-heading{display:flex;justify-content:space-between;align-items:center;margin:var(--s8) 0 var(--s4);gap:var(--s4)}.section-heading a{font-size:var(--text-sm);min-height:48px;display:flex;align-items:center}
.decision-preview{display:grid;grid-template-columns:70px 1fr auto;gap:var(--s5);padding:var(--s5) 0;border-bottom:1px solid var(--line);align-items:start}.decision-preview .badge{justify-content:center;margin-top:var(--s1)}.decision-preview p{font-size:var(--text-sm);margin-top:var(--s1)}.chevron{font-size:var(--text-base);text-decoration:none;min-width:48px;min-height:48px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);border-radius:7px}
.counts{display:flex;gap:var(--s5);font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap}.counts strong{color:var(--ink)}
.bottom-note{display:flex;justify-content:space-between;gap:var(--s6);margin-top:var(--s8);padding-top:var(--s5);border-top:1px solid var(--line);font-size:var(--text-sm)}
.toolbar{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s6)}.filter{min-height:48px;padding:var(--s2) var(--s4);border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:6px;font-size:var(--text-sm)}.filter.selected{background:var(--accent);color:var(--on-accent)}
.list-group{margin-bottom:var(--s8)}.group-title{display:flex;align-items:center;gap:var(--s3);padding-bottom:var(--s4);border-bottom:1px solid var(--line)}.group-title span{font-size:var(--text-sm);color:var(--muted);font-weight:400}.list-row{display:grid;grid-template-columns:1fr 170px;gap:var(--s4);padding:var(--s5) 0;border-bottom:1px solid var(--line)}.list-row p{font-size:var(--text-sm);margin-top:var(--s2);max-width:65ch}.list-row select{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:var(--s2);color:var(--ink);font-size:var(--text-sm)}.list-row.bought h3{text-decoration:line-through;color:var(--muted)}.quantity{font-weight:500;color:var(--muted);font-size:var(--text-sm);margin-left:var(--s3)}.field-label{display:block;font-size:var(--text-xs);margin-bottom:var(--s1);color:var(--muted)}
.details-card{border:1px solid var(--line);background:var(--surface);padding:var(--s6);border-radius:10px;margin-bottom:var(--s4)}.card-top{display:flex;justify-content:space-between;gap:var(--s4);align-items:flex-start}.card-top h2{font-size:var(--text-lg);margin-top:var(--s2)}.card-top p{font-size:var(--text-sm);margin-top:var(--s1)}.card-lane{font-size:var(--text-xs);color:var(--muted);font-weight:700;letter-spacing:.03em}.reason{margin:var(--s4) 0;color:var(--ink)}.price-line{display:flex;gap:var(--s4);flex-wrap:wrap;font-size:var(--text-sm);margin:var(--s4) 0}.price-line strong{color:var(--ink)}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}.card-actions label{display:flex;align-items:center;gap:var(--s3);font-size:var(--text-sm);min-height:48px;cursor:pointer}.card-actions input{width:22px;min-height:22px;accent-color:var(--accent)}details{margin-top:var(--s4);border-top:1px solid var(--line)}summary{min-height:48px;padding:var(--s3) 0;cursor:pointer;color:var(--ink);font-size:var(--text-sm);font-weight:700}dl{margin:var(--s2) 0}dt{font-size:var(--text-sm);font-weight:700;margin-top:var(--s4)}dd{margin:var(--s1) 0;font-size:var(--text-sm);color:var(--muted)}.source-links{display:flex;flex-wrap:wrap;gap:var(--s4);font-size:var(--text-sm);margin-top:var(--s4)}.source-links a{min-height:48px;display:inline-flex;align-items:center}
.empty{border:1px dashed var(--line);padding:var(--s10);border-radius:10px;text-align:center}.empty p{margin-top:var(--s3)}.empty .btn{margin-top:var(--s6)}
.two-col{display:grid;grid-template-columns:1.15fr 1fr;gap:var(--s6)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:var(--s6)}.panel p{margin-top:var(--s3)}.panel .btn{margin-top:var(--s5)}.receipt-paper{padding:var(--s6);background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:2px}.receipt-paper h2{margin:var(--s4) 0}.receipt-total{font-weight:700;border-top:1px solid var(--line);margin-top:var(--s2);padding-top:var(--s4)}.receipt-preview{max-width:100%;max-height:340px;object-fit:contain;display:block;margin-top:var(--s5);border:1px solid var(--line)}
.upload-label{display:flex;align-items:center;justify-content:center;min-height:120px;text-align:center;border:1px dashed var(--line);border-radius:7px;padding:var(--s5);margin-top:var(--s5);cursor:pointer;font-weight:700}.upload-label:hover{background:var(--subtle)}.error{color:var(--error);font-size:var(--text-sm);margin-top:var(--s4)}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s6);padding:var(--s5) 0;border-bottom:1px solid var(--line)}.settings-row p{font-size:var(--text-sm);margin-top:var(--s1)}.switch{width:54px;height:32px;min-height:48px;border:0;background:none;position:relative;flex-shrink:0}.switch:before{content:'';position:absolute;inset:8px 0;border-radius:30px;background:var(--muted)}.switch:after{content:'';position:absolute;top:12px;left:4px;width:24px;height:24px;border-radius:50%;background:var(--surface);transition:transform .16s}.switch[aria-checked=true]:before{background:var(--accent)}.switch[aria-checked=true]:after{transform:translateX(22px);background:var(--on-accent)}.locked{font-size:var(--text-sm);color:var(--muted);white-space:nowrap}.source-list{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s4)}.source-list a{font-size:var(--text-sm);min-height:48px;display:flex;align-items:center}.review-marker{font-size:var(--text-sm);color:var(--muted)}footer{font-size:var(--text-xs);color:var(--muted);padding:var(--s5) var(--s10);max-width:1180px;margin:auto}
.skip-link{position:fixed;left:8px;top:-100px;background:var(--surface);padding:var(--s4);z-index:100}.skip-link:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.sidebar{width:218px}.workspace{margin-left:218px}.topbar,main{padding-left:var(--s6);padding-right:var(--s6)}.week-layout,.two-col{grid-template-columns:1fr}.proof-card{display:block}.proof-card .proof-value{margin:var(--s3) 0}.sidebar{padding-left:var(--s4);padding-right:var(--s4)}}
@media(max-width:760px){.sidebar{width:auto;inset:auto 0 0;height:auto;padding:0;background:var(--surface);border-top:1px solid var(--line);border-right:0}.sidebar .brand,.nav-caption,.sidebar-bottom{display:none}nav{flex-direction:row;gap:0;justify-content:space-around;padding:var(--s2) var(--s1) max(var(--s2),env(safe-area-inset-bottom))}nav a{min-height:54px;min-width:0;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:var(--s1);gap:0;border-radius:5px;font-size:var(--text-xs)}.nav-number{display:none}.workspace{margin-left:0;padding-bottom:90px}.topbar{padding:var(--s3) var(--s5);min-height:70px;font-size:var(--text-xs)}.topbar .divider,.topbar>span{display:none}.topbar:before{content:'Household';font:400 var(--text-lg) var(--font-display)}.top-actions{gap:var(--s2)}main{padding:var(--s6) var(--s5)}.page-head{margin-bottom:var(--s6)}.page-head .pill{display:none}.lead-card{padding:var(--s6)}.lead-card h2{font-size:var(--text-xl)}.lead-card .btn{width:100%}.decision-preview{grid-template-columns:60px 1fr;gap:var(--s3)}.decision-preview .chevron{display:none}.list-row{grid-template-columns:1fr}.list-row>div:last-child{max-width:100%}.list-row select{font-size:var(--text-base)}.quantity{display:block;margin-left:0;margin-top:var(--s1)}.bottom-note{flex-direction:column;gap:var(--s3)}.card-actions{align-items:flex-start;flex-direction:column;gap:var(--s2)}.details-card,.panel,.receipt-paper{padding:var(--s5)}.empty{padding:var(--s6)}.settings-row{gap:var(--s4)}footer{padding:var(--s5);font-size:var(--text-xs)}.section-heading{gap:var(--s3)}.source-links{gap:var(--s3)}}
.upload-label:has(+ input:focus-visible){outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:760px){
  .topbar,.top-actions{flex-wrap:wrap}
  nav{flex-wrap:wrap}
  nav a{flex:1 1 7ch;min-width:max-content}
  .workspace{padding-bottom:9rem}
  .settings-row{flex-wrap:wrap}
  .settings-row>div{min-width:0;flex:1 1 180px}
  .settings-row .locked{white-space:normal}
  .mini-row{flex-wrap:wrap}
  .card-top{flex-wrap:wrap}
  h1,h2,h3,p,dd{overflow-wrap:break-word}
  .btn{max-width:100%;white-space:normal}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.plan-options{border-top:1px solid var(--line)}
.plan-option{display:grid;grid-template-columns:32px 1fr auto;gap:var(--s4);padding:var(--s5) 0;border-bottom:1px solid var(--line);align-items:center}
.plan-option.selected{background:var(--soft);padding-inline:var(--s4);border-radius:8px}
.plan-number{font-size:var(--text-sm);color:var(--muted);align-self:start;padding-top:var(--s1)}
.plan-copy p{font-size:var(--text-sm);margin-top:var(--s1)}
.plan-facts{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s2);font-size:var(--text-sm);color:var(--muted)}
.plan-facts span+span{border-left:1px solid var(--line);padding-left:var(--s3)}
.plan-disclaimer{margin-top:var(--s4);margin-bottom:var(--s6)}
.plan-review{scroll-margin-top:24px;margin-top:var(--s6)}
.allocation-list{margin:var(--s5) 0}
.allocation-row{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s5);padding:var(--s4) 0;border-bottom:1px solid var(--line)}
.allocation-row span{display:block;font-size:var(--text-sm);color:var(--muted)}
.allocation-row>div:last-child{text-align:right}
.plan-checks p{font-size:var(--text-sm);margin-top:var(--s3)}
.approval-actions{display:flex;gap:var(--s3);flex-wrap:wrap;margin:var(--s6) 0 var(--s3)}
.cart-summary{display:flex;justify-content:space-between;gap:var(--s4);align-items:center;margin-bottom:var(--s6)}
.assignment-label{font-weight:700;color:var(--ink)}
.evidence-section{margin-top:var(--s10)}.evidence-section>.toolbar{margin-top:var(--s5)}
.master-contract{margin-bottom:var(--s6)}
.meal-hook{max-width:65ch}
.meal-hook summary span{display:block;font-weight:400;color:var(--muted);font-size:var(--text-xs)}
.meal-content{background:var(--subtle);padding:var(--s5);border-radius:8px}
.meal-content h4{font-size:var(--text-lg);line-height:1.35;margin:var(--s3) 0}
.meal-meta{display:flex;flex-wrap:wrap;gap:var(--s3);font-size:var(--text-xs);font-weight:700;margin-top:var(--s4)}
.meal-content ol{padding-left:var(--s5);font-size:var(--text-sm)}
.meal-content li+li{margin-top:var(--s3)}
.meal-content .btn{margin:var(--s5) 0 var(--s2)}
.meal-boundary{padding-top:var(--s3);border-top:1px solid var(--line)}
.list-row>div{min-width:0}
.list-row .badge{white-space:normal}
/* Demo 02: banknote-paper warmth, precise ink, restrained security linework. */
.brand small{font-size:.75rem;letter-spacing:.015em}
.sidebar{background:var(--bg);border-right:1px solid var(--line)}
.sidebar-bottom p{font-style:normal}
.topbar{font-size:var(--text-xs);letter-spacing:.025em;min-height:72px}
.topbar .pill{font-size:var(--text-xs)}
.page-head{margin-bottom:var(--s5)}
.page-head h1{font-weight:600}
.page-head p{font-size:var(--text-sm)}
.eyebrow{letter-spacing:.13em;font-size:var(--text-xs)}
.btn{border-radius:9px;min-height:52px}
.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.btn:hover,.filter:hover,.tap-status button:hover{box-shadow:0 2px 0 var(--line)}
.microcopy{font-size:var(--text-xs);line-height:1.6;color:var(--muted)}
.search-entry{width:100%;display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--muted);text-align:left;min-height:62px;margin-bottom:var(--s6);font-size:var(--text-sm)}
.search-mark{display:block;width:17px;height:17px;border:1.7px solid currentColor;border-radius:50%;position:relative;flex:none;margin-right:4px}
.search-mark:after{content:'';width:7px;height:1.7px;background:currentColor;position:absolute;right:-5px;bottom:-2px;transform:rotate(48deg)}
.add-mark{margin-left:auto;font-size:var(--text-lg);line-height:1}
.money-note{position:relative;isolation:isolate;overflow:hidden;border:1px solid #b3ad97;border-radius:12px;padding:var(--s8);background:#e5e0cc;color:#252b26;box-shadow:inset 0 0 0 5px #e5e0cc,inset 0 0 0 6px #bbb69e}
.money-note:before{content:'';position:absolute;right:-90px;top:-75px;width:450px;height:450px;z-index:-1;border-radius:50%;opacity:.25;background:repeating-radial-gradient(ellipse at center,transparent 0 7px,#586a57 7.5px 8px,transparent 8.5px 11px);transform:scaleX(.8) rotate(-25deg);pointer-events:none}
.money-note:after{content:'';position:absolute;right:-75px;top:-65px;width:450px;height:450px;z-index:-1;border-radius:50%;opacity:.16;background:repeating-radial-gradient(ellipse at center,transparent 0 8px,#687c59 8.5px 9px,transparent 9.5px 13px);transform:scaleX(.8) rotate(25deg);pointer-events:none}
.note-top{display:flex;justify-content:space-between;gap:var(--s4);font-size:var(--text-xs);letter-spacing:.08em;font-weight:700;margin-bottom:var(--s6);position:relative;z-index:1}
.money-note h2{font:600 var(--text-xl)/1.15 var(--font-display);letter-spacing:-.035em;position:relative;z-index:1}
.money-note>p{font-size:var(--text-sm);color:#464f43;margin-top:var(--s4);position:relative;z-index:1}
.note-ledger{display:flex;justify-content:space-between;align-items:end;gap:var(--s4);margin-top:var(--s8);border-top:1px solid #afb29a;padding-top:var(--s4);position:relative;z-index:1}
.note-ledger span{font-size:var(--text-xs);letter-spacing:.1em;display:block;color:#4c5849}
.note-ledger strong{display:block;font-size:var(--text-base);font-weight:700;margin-top:var(--s1)}
.note-ledger a{font-size:var(--text-sm);min-height:48px;display:flex;align-items:center;white-space:nowrap}
.note-seal{position:absolute;right:var(--s10);top:85px;width:116px;height:116px;display:grid;place-items:center;border:5px double #76836b;border-radius:50%;font:400 3.5rem var(--font-display);color:#52684c;opacity:.55;z-index:-1}
.snapshot-line{font-size:var(--text-xs);margin:var(--s4) 0;display:flex;align-items:center;gap:var(--s2)}
.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}
.decision-rail{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:var(--s3) 0}
.decision-rail button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;border-right:1px solid var(--line);color:var(--ink);background:transparent;min-height:60px}
.decision-rail button:last-child{border-right:0}
.decision-rail strong{font:600 var(--text-lg)/1.2 var(--font-display);font-variant-numeric:tabular-nums}
.decision-rail span{font-size:var(--text-sm);color:var(--muted)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--s8)}
.section-heading .eyebrow{margin-bottom:var(--s1)}
.section-heading h2{font-size:var(--text-lg)}
.section-heading a{white-space:nowrap;font-size:var(--text-xs)}
.spotlight{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:var(--s6);border-top:3px solid var(--accent)}
.spotlight-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4)}
.spotlight h3{font-size:var(--text-lg);font-weight:700}
.spotlight p{font-size:var(--text-sm);margin-top:var(--s3)}
.spotlight .microcopy{font-size:var(--text-xs)}
.spot-price{font:600 var(--text-xl)/1.3 var(--font-display);margin-top:var(--s4)}
.spot-price span{font:400 var(--text-xs)/1.5 var(--font-body);display:block;color:var(--muted)}
.tap-pair{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s4)}
.tap-pair .btn{flex:1;font-size:var(--text-sm);padding-inline:var(--s3)}
.brief-card{padding:var(--s6) 0;border-bottom:1px solid var(--line)}
.brief-card h3{margin-top:var(--s2)}
.brief-card p{font-size:var(--text-sm);margin-top:var(--s2)}
.brief-card .btn{font-size:var(--text-sm);margin-top:var(--s4);width:100%}
.treat-strip{padding:var(--s5) 0}.treat-strip p{font-size:var(--text-sm);margin-top:var(--s2)}.treat-strip .text-button{padding-left:0}
.household-tile,.watch-tile,.staple-tile{padding:var(--s6);border:1px solid var(--line);border-radius:12px;margin-bottom:var(--s4);background:var(--surface)}
.household-tile p,.watch-tile p,.staple-tile p{font-size:var(--text-sm);margin-top:var(--s3)}
.household-tile .btn,.watch-tile .btn,.staple-tile .btn{width:100%;margin-top:var(--s4);font-size:var(--text-sm)}
.tile-count{font:600 var(--text-xl)/1.3 var(--font-display)}
.tile-count span{font:400 var(--text-sm)/1.4 var(--font-body);color:var(--muted);margin-left:var(--s3)}
.watch-count{border:1px solid var(--line);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:var(--text-sm)}
.watch-tile{background:var(--subtle)}
.staple-tile{background:var(--soft);border-color:transparent}.staple-tile h3{margin-top:var(--s2)}
.plan-summary{margin-top:var(--s8);border-block:1px solid var(--line);padding-block:var(--s6);display:flex;align-items:center;justify-content:space-between;gap:var(--s5)}
.plan-summary h2{margin-top:var(--s2)}.plan-summary p{font-size:var(--text-sm);margin-top:var(--s2)}
.list-builder{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:var(--s5);margin-bottom:var(--s5)}
.list-builder .field-label{font-size:var(--text-sm);color:var(--ink);font-weight:500;margin-bottom:var(--s3)}
.search-input-wrap{display:flex;align-items:center;gap:var(--s3);border-bottom:1px solid var(--line)}
.search-input-wrap input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);font-size:var(--text-base);padding:var(--s3) 0}
.list-builder>.microcopy{margin-top:var(--s3)}
.search-result{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);text-align:left;background:none;color:var(--ink);border:0;border-bottom:1px solid var(--line);padding:var(--s4) 0;font-size:var(--text-sm)}
.search-result small{display:block;color:var(--muted);font-size:var(--text-xs);margin-top:var(--s1)}
.search-result>span:last-child{white-space:nowrap}
.search-matches:has(*){margin-top:var(--s4)}
#add-item-form{margin-top:var(--s5)}#add-item-form h3{margin-bottom:var(--s3);overflow-wrap:anywhere}
#new-quantity{width:100%;border:1px solid var(--line);border-radius:7px;padding:var(--s3);background:var(--bg);color:var(--ink);font-size:var(--text-sm)}
#add-item-form .microcopy{margin-top:var(--s3)}
.list-tabs{margin-top:var(--s6);gap:var(--s2)}
.list-tabs button{display:flex;gap:var(--s2);align-items:center}
.list-tabs button span{font-size:var(--text-xs);opacity:.8}
.watch-explainer{border-left:3px solid var(--accent);padding:var(--s2) var(--s4);margin-bottom:var(--s5)}
.watch-explainer p{font-size:var(--text-sm);margin-top:var(--s2)}
.master-list{display:grid;grid-template-columns:1fr;gap:var(--s4)}
.list-row{display:block;padding:var(--s5);background:var(--surface);border:1px solid var(--line);border-radius:12px;scroll-margin:var(--s5)}
.list-row h3{font-size:var(--text-lg)}
.list-row .quantity{display:block;margin:var(--s1) 0 0}
.item-kicker{display:flex;justify-content:space-between;gap:var(--s4);font-size:var(--text-xs);color:var(--muted);margin-bottom:var(--s3)}
.item-kicker>span:first-child{font-weight:700;letter-spacing:.07em}
.list-row .assignment-label{font-size:var(--text-xs);font-weight:500;color:var(--muted)}
.tap-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);margin-top:var(--s5)}
.tap-status button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);min-height:52px;padding:var(--s2);font-size:var(--text-sm);line-height:1.3}
.tap-status button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.list-row.watching{border-left:3px solid var(--accent)}
.item-controls>.text-button{font-size:var(--text-xs)}
.list-row.bought{background:var(--bg)}
.session-footnote{margin-top:var(--s5)}
.meal-hook{max-width:none;margin-top:var(--s5)}
.meal-hook summary{font-size:var(--text-base);padding:var(--s4) 0}
.meal-hook summary span{margin-top:var(--s1)}
.meal-content{padding:var(--s5);background:var(--subtle)}
.meal-choice-actions{display:flex;gap:var(--s3);flex-wrap:wrap;margin:var(--s5) 0}
.meal-choice-actions .btn{flex:1;min-width:120px;font-size:var(--text-sm);margin:0}
.meal-assembly{padding:var(--s5);border:1px solid var(--line);border-radius:10px;background:var(--surface);margin:var(--s5) 0}
.meal-assembly h4{font-size:var(--text-base)}
.side-choice{border-block-end:1px solid var(--line);padding:var(--s4) 0;font-size:var(--text-sm)}
.side-choice>span{display:block;font-size:var(--text-xs);color:var(--muted);margin-top:var(--s1)}
.side-choice .btn{margin:0}
.side-choice .tap-pair{margin-top:var(--s3)}
.meal-content .meal-boundary{font-size:var(--text-xs)}
.plan-option{background:var(--surface);padding:var(--s5);border:1px solid var(--line);border-radius:10px;margin-bottom:var(--s3)}
.plan-options{border-top:0}
.plan-option.selected{border-color:var(--accent);background:var(--soft)}
.plan-number{font-family:var(--font-display)}
.evidence-section{scroll-margin-top:var(--s5)}
.details-card{scroll-margin-top:var(--s5)}
.randalls-watch{margin-top:var(--s6);scroll-margin-top:var(--s5)}
.randalls-watch h2{margin-top:var(--s2)}
.randalls-watch p{font-size:var(--text-sm)}
.randalls-watch .microcopy{font-size:var(--text-xs)}
.randalls-watch label{display:block;font-size:var(--text-sm);font-weight:700;margin:var(--s5) 0 var(--s2)}
.watch-input-line{display:flex;gap:var(--s3);align-items:center;flex-wrap:wrap}
.randalls-watch input{border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:var(--s3);max-width:100%;width:140px;min-width:0}
.watch-input-line input{flex:1 1 90px;max-width:170px}
.watch-input-line .btn{flex:1 1 180px}
.alert-match{border-top:4px solid var(--accent);background:var(--surface)}
.alert-price{font:600 var(--text-xl)/1.3 var(--font-display);margin:var(--s5) 0}
.alert-price span{display:block;font:400 var(--text-sm)/1.6 var(--font-body);color:var(--muted)}
.watch-review{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}
.watch-review dd{max-width:65ch}
.watch-foot{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s3)}
.watch-test-controls .tap-pair .btn{flex:1 1 160px}
.randalls-watch .card-top{flex-wrap:wrap}
@media(min-width:1150px){.master-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.list-row:has(.meal-hook[open]){grid-column:1/-1}}
@media(max-width:950px){.dashboard-grid{grid-template-columns:1fr;gap:0}.plan-summary{flex-direction:column;align-items:stretch}}
@media(max-width:760px){
 .sidebar{background:var(--surface);border-right:0}
 .topbar{padding:var(--s2) var(--s4);gap:var(--s1)}
 .topbar:before{font-size:var(--text-lg);font-weight:600;letter-spacing:-.035em}
 .top-actions{gap:0}.top-actions>.pill{display:none}.top-actions .text-button{font-size:var(--text-xs)}
 main{padding:var(--s6) var(--s4)}
 .page-head{margin-bottom:var(--s4)}.page-head .eyebrow{font-size:.75rem}
 .search-entry{margin-bottom:var(--s4);min-height:58px}
 .money-note{padding:var(--s6)}
 .note-top{font-size:.75rem;letter-spacing:.015em;margin-bottom:var(--s5);gap:var(--s2)}
 .money-note h2{font-size:var(--text-xl)}
 .money-note>p{font-size:var(--text-xs);margin-top:var(--s3)}
 .money-note:before,.money-note:after{right:-215px;opacity:.13}
 .note-seal{right:-36px;top:60px;opacity:.15}
 .note-ledger{margin-top:var(--s5);gap:var(--s2)}
 .note-ledger span{font-size:.75rem}.note-ledger strong{font-size:var(--text-sm)}
 .note-ledger a{font-size:var(--text-xs)}
 .snapshot-line{font-size:.75rem}
 .decision-rail{padding:var(--s2) 0}
 .decision-rail button{min-height:55px}
 .section-heading{margin-top:var(--s6)}
 .section-heading h2{font-size:var(--text-base)}
 .spotlight,.household-tile,.watch-tile,.staple-tile{padding:var(--s5)}
 .list-builder,.list-row{padding:var(--s4)}
 .list-builder .field-label{font-size:var(--text-xs)}
 .search-input-wrap{gap:var(--s2)}.search-input-wrap input{font-size:var(--text-sm)}
 .search-input-wrap .text-button{padding-inline:var(--s1);font-size:var(--text-xs)}
 .tap-status{grid-template-columns:repeat(2,minmax(0,1fr))}
 .meal-content,.meal-assembly{padding:var(--s4)}
 .meal-choice-actions{gap:var(--s2)}
 .item-kicker{flex-wrap:wrap;gap:var(--s1)}
 .tap-pair .btn{flex:1 1 110px}
 .money-note,.list-row,.meal-content,.spotlight{overflow-wrap:anywhere}
 .note-top{flex-wrap:wrap}
 .note-ledger{flex-wrap:wrap}
 .list-tabs .filter{padding-inline:var(--s3)}
 .master-list{grid-template-columns:1fr}
}
@media(max-width:760px){
 .topbar:before{content:'Dynasty'}
 .plan-option{grid-template-columns:1fr;gap:var(--s3)}.plan-number{display:none}
 .plan-option .btn{justify-self:start}
 .allocation-row{grid-template-columns:1fr;gap:var(--s2)}.allocation-row>div:last-child{text-align:left}
 .cart-summary{flex-direction:column;align-items:flex-start}
 .section-heading{flex-wrap:wrap}.evidence-section>.section-heading{align-items:flex-start}
 .plan-facts span+span{border-left:0;padding-left:0}
}
