/* Wharton PTA
   Layout: one column, 920px. Every page: top bar, header band, gold rule, image, intro, tabs, closing.
   Spacing: 8px scale (8, 16, 24, 32, 48). Type: 30 title, 19 section, 16 body, 13 small. */
:root{
  --bg:#ffffff; --ink:#1a1a1a; --muted:#555555; --rule:#d9d4cc; --thread:#e6e1d6;
  --cream:#f6f2e6; --cream-line:#e4ddc9; --notice:#fbefc2; --notice-ink:#1a1a1a;
  --green:#0d4f2b; --green-ink:#ffffff; --green-soft:#e9ddb0; --green-text:#0d4f2b; --red:#b0261d; --red-hover:#8f1d16; --glide:#e2ede6; --mark:#f6dc6e; --mark-ink:#3b2f05; --blue:#1d4e89; --blue-hover:#17406f;
  --gold:#f2c12e; --gold-deep:#8a6a0a;
  --band:var(--green); --band-ink:var(--green-ink); --band-soft:var(--green-soft);
  --font:"Public Sans", Arial, Helvetica, sans-serif;
  --mono:"DM Mono", ui-monospace, Menlo, monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#151614; --ink:#eeeeee; --muted:#a8a8a8; --rule:#3a3a3a; --thread:#34342f;
  --cream:#22231d; --cream-line:#3a3a30; --notice:#3a3020; --notice-ink:#f3e9c8;
  --green:#0b3f22; --green-soft:#e9ddb0; --green-text:#8cc9a2; --red:#c4392e; --red-hover:#d9493d; --glide:#24352b; --mark:#5a4a12; --mark-ink:#ffe9a3; --blue:#2f6fb5; --blue-hover:#3d82cc; --gold-deep:#f2c12e; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#151614; --ink:#eeeeee; --muted:#a8a8a8; --rule:#3a3a3a; --thread:#34342f;
  --cream:#22231d; --cream-line:#3a3a30; --notice:#3a3020; --notice-ink:#f3e9c8;
  --green:#0b3f22; --green-soft:#e9ddb0; --green-text:#8cc9a2; --red:#c4392e; --red-hover:#d9493d; --glide:#24352b; --mark:#5a4a12; --mark-ink:#ffe9a3; --blue:#2f6fb5; --blue-hover:#3d82cc; --gold-deep:#f2c12e; color-scheme:dark}

*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5}
img{max-width:100%;display:block}
[hidden]{display:none !important}
p,ul,ol,dl,h1,h2,h3{margin:0}
a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--green-text)}
a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.wrap{max-width:920px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.small{font-size:13px;color:var(--muted)}
.muted{color:var(--muted)}
.num{font-variant-numeric:tabular-nums}
main p:not(.news):not(.notice):not(.contact):not(.line),main li,main dd{max-width:65ch}

/* language */
:root[data-lang="en"] [lang="es"]:not(html),:root[data-lang="es"] [lang="en"]:not(html){display:none !important}

/* top bar */
.topbar{border-bottom:1px solid var(--thread);background:var(--bg)}
.topbar .wrap{display:flex;align-items:center;gap:16px;padding-block:8px}
.home{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:800;font-size:16px;min-height:44px}
.home img{width:36px;height:36px}
.topnav{position:relative;display:flex;flex-wrap:wrap;gap:0 4px;margin-left:auto;margin-right:-10px;font-size:13px;font-weight:600}
.topnav a{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--muted);text-decoration:none}
/* the glider: one pill that slides to whatever you point at, and rests on the page you are on */
.glider{position:absolute;left:0;top:0;z-index:0;height:32px;border-radius:6px;background:var(--glide);opacity:0;pointer-events:none;transition:transform .22s cubic-bezier(.4,0,.2,1),width .22s cubic-bezier(.4,0,.2,1),opacity .15s ease}
@media (prefers-reduced-motion:reduce){.glider{transition:opacity .15s ease}}
.topnav a:hover,.topnav a[aria-current="page"]{color:var(--ink)}
.topnav a.navcta{min-height:38px;padding:0 14px;border-radius:6px;background:var(--red);color:#fff;font-weight:800;white-space:nowrap}
.topnav a.navcta:hover,.topnav a.navcta[aria-current="page"]{background:var(--red-hover);color:#fff}
.topnav a.navcta--blue{background:var(--blue);color:#fff}
.topnav a.navcta--blue:hover,.topnav a.navcta--blue[aria-current="page"]{background:var(--blue-hover);color:#fff}
.topnav a.navcta--gold{background:transparent;color:var(--ink);border:2px solid var(--gold);padding:0 12px}
.topnav a.navcta--gold:hover,.topnav a.navcta--gold[aria-current="page"]{background:var(--gold);color:#1a1a1a}
.topnav a.navcta .tap{width:17px;height:17px;flex:none;margin-left:8px;overflow:visible}
.tap .hand{animation:tap-press 2.2s ease-in-out 4;transform-origin:12px 12px}
.tap .p1,.tap .p2{opacity:0;animation:tap-ring 2.2s ease-out 4}
.navcta:hover .tap .hand{animation:tap-press 2.2s ease-in-out infinite}
.navcta:hover .tap .p1,.navcta:hover .tap .p2{animation:tap-ring 2.2s ease-out infinite}
.tap .p2{animation-delay:.14s}
@keyframes tap-press{0%,34%,100%{transform:translate(0,0)}14%,24%{transform:translate(-1.2px,1.6px)}}
@keyframes tap-ring{0%,10%{opacity:0;transform:translate(1.5px,1.5px)}26%{opacity:1;transform:translate(0,0)}55%,100%{opacity:0;transform:translate(-1px,-1px)}}
@media (prefers-reduced-motion:reduce){.tap .hand,.tap .p1,.tap .p2{animation:none}.tap .p1,.tap .p2{opacity:1}}
.langswitch{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--muted);padding-left:16px;border-left:1px solid var(--thread)}
.langswitch button{border:0;background:none;padding:0 4px;min-height:44px;font:inherit;color:var(--muted);text-decoration:underline;cursor:pointer}
.langswitch button[aria-pressed="true"]{color:var(--ink);font-weight:800;text-decoration:none}
@media (max-width:640px){.topbar .wrap{flex-wrap:wrap;gap:0 16px}.topnav{order:3;flex-basis:100%;margin-left:0;gap:0 16px}.langswitch{margin-left:auto}}

/* header band: same shape on every page */
.band{background:var(--band);color:var(--band-ink)}
.band .wrap{padding-block:24px 32px;display:flex;flex-direction:column;gap:8px}
.kicker{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--band-soft)}
.band h1{font-size:30px;font-weight:800;line-height:1.2;text-wrap:balance;max-width:32ch}
.band .lede{max-width:72ch}
.band--gold{--band:#f2c12e;--band-ink:#1a1a1a;--band-soft:#5a4a10}
.band--cream{--band:var(--cream);--band-ink:var(--ink);--band-soft:var(--gold-deep)}
.goldrule{height:6px;background:var(--gold)}

/* home hero: same band with the badge */
.hero .wrap{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px 24px}
.hero img{width:80px;height:80px;flex:none}
.hero .name{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:4px}
.hero h1{font-size:30px}

/* main column */
main.wrap{padding-block:24px 48px;display:flex;flex-direction:column;gap:24px}
main > *{margin:0}
.sec{display:flex;align-items:center;gap:16px;font-size:19px;font-weight:800;margin-top:8px}
.sec::after{content:"";flex:1;height:2px;background:var(--gold)}
h3{font-size:16px;font-weight:700;margin-top:8px}
ul,ol{padding-left:22px;display:flex;flex-direction:column;gap:4px}

/* news line and updated stamp */
.news{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 16px;background:var(--notice);color:var(--notice-ink)}
.news b{font-weight:800}
.stamp{font-size:13px;color:var(--muted)}

/* event image: same frame on every event page */
.photo{display:flex;flex-direction:column;gap:8px}
.photo img{width:100%;aspect-ratio:21/9;object-fit:cover;background:var(--cream)}
.photo a{font-size:13px;font-weight:600}
.photo figcaption{font-size:13px;color:var(--muted)}

/* intro */
.intro{display:flex;flex-direction:column;gap:8px}
/* numbered steps: do this, then this */
.steps{list-style:none;counter-reset:s;padding:0;gap:0;margin-top:8px}
.steps li{counter-increment:s;position:relative;display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:16px 0 20px 48px;border-top:1px solid var(--thread);max-width:none}
.steps li:last-child{border-bottom:1px solid var(--thread)}
.steps li::before{content:counter(s);position:absolute;left:0;top:16px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--green);color:var(--green-ink);font:800 15px var(--font);font-variant-numeric:tabular-nums}
.steps li p{max-width:60ch}
.steps .btn{margin-top:4px}

/* tabs: same on every event page */
.tabbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);border-bottom:1px solid var(--thread);margin-top:8px}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin-left:-14px}
.tab{border:0;background:none;color:var(--muted);font:500 16px var(--font);padding:12px 14px;min-height:48px;margin-bottom:-1px;border-bottom:4px solid transparent;white-space:nowrap;cursor:pointer;border-radius:4px 4px 0 0}
.tab:hover{color:var(--ink);background:var(--cream)}
.tab[aria-selected="true"]{color:var(--ink);font-weight:800;background:var(--cream);border-bottom-color:var(--gold)}
[role="tabpanel"]{display:flex;flex-direction:column;gap:16px}

/* surfaces: cream for content, notice for heads-up. Nothing else. */
.card{padding:16px;background:var(--cream);border:1px solid var(--cream-line);display:flex;flex-direction:column;gap:8px}
.notice{padding:12px 16px;background:var(--notice);color:var(--notice-ink)}
.notice b{font-weight:800}
.marker{background:var(--mark);color:var(--mark-ink);font-weight:700;padding:1px 6px;border-radius:3px;white-space:nowrap}

/* facts */
.facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;padding-block:16px;border-top:1px solid var(--thread);border-bottom:1px solid var(--thread)}
.facts dt{font-weight:700}
.facts dd{min-width:0}
.card .facts{border:0;padding:0}
@media (max-width:420px){.facts{grid-template-columns:1fr;gap:0}.facts dd{margin-bottom:8px}}

/* buttons: gold primary, outline secondary */
.btn{display:inline-block;align-self:flex-start;background:var(--gold);color:#1a1a1a;text-decoration:none;font-weight:800;font-size:16px;padding:12px 24px;border-radius:8px;border:2px solid var(--gold)}
.btn:hover{background:#e3b21f;border-color:#e3b21f;color:#1a1a1a}
.btn--quiet{background:transparent;color:var(--ink);border-color:var(--rule)}
.btn--off{background:transparent;color:var(--muted);border-color:var(--rule);border-style:dashed;cursor:default}
.btn--quiet:hover{background:var(--cream);border-color:var(--rule);color:var(--ink)}
.copy{font:600 13px var(--font);color:var(--ink);background:none;border:1px solid var(--rule);border-radius:4px;padding:4px 8px;cursor:pointer;min-height:28px}
.copy:hover{background:var(--cream)}
.copy .c-done,.copy .c-fail{display:none}
.copy.done .c-done,.copy.fail .c-fail{display:inline}
.copy.done .c-idle,.copy.fail .c-idle{display:none}
.copy.done{border-color:var(--green-text);color:var(--green-text)}
.contact{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.contact .pair{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.contact a.who{text-decoration:underline;text-underline-offset:2px}
.contact .who{font-weight:600;user-select:all}

/* closing: same on every event page */
.closing{display:flex;flex-direction:column;gap:16px;padding-top:24px;border-top:1px solid var(--thread)}
.closing .thanks{font-style:italic}

/* shift list */
.shifthead,.shift{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) minmax(0,.8fr);gap:0 16px}
.shifthead{padding:8px 0;background:var(--cream);font-size:13px;font-weight:600}
.shifthead span:first-child{padding-left:8px}
.shifthead span:last-child{padding-right:8px}
.shifthead span:last-child,.shift span:last-child{text-align:right}
.day{padding:24px 0 8px;font-size:16px;font-weight:800;color:var(--green-text);border-bottom:2px solid var(--green)}
.shift{padding:12px 0;border-bottom:1px solid var(--thread);font-variant-numeric:tabular-nums}
.shift .open{font-weight:700}
.shift .tag{color:var(--muted);font-size:13px}
.filter{display:flex;gap:8px;align-items:center;font-size:13px}
.filter select{font:inherit;font-size:16px;padding:8px;border:1px solid var(--rule);background:var(--bg);color:var(--ink);min-height:40px}
@media (max-width:420px){.shift{font-size:13px}}

/* menu */
.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px 40px;padding:24px;background:var(--cream);border:1px solid var(--cream-line)}
.menu-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:8px;border-bottom:2px solid var(--gold)}
.menu-head h2{font-size:19px;font-weight:800}
.menu-price{font-size:30px;font-weight:800;line-height:1;color:var(--gold-deep);font-variant-numeric:tabular-nums;white-space:nowrap}
.menu-price span{font-size:13px;font-weight:600;color:var(--muted)}
.flavors{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:0}
.flavors li{padding:8px 0;border-bottom:1px solid var(--cream-line)}
.leaders{list-style:none;padding:0;gap:0}
.leaders li{display:flex;align-items:baseline;gap:8px;padding:8px 0;max-width:none}
.leaders i{flex:1;border-bottom:2px dotted var(--rule);transform:translateY(-4px);min-width:16px}
.leaders b{font-weight:800;color:var(--gold-deep);font-variant-numeric:tabular-nums}

/* two-list compare */
.compare{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:640px){.compare{grid-template-columns:1fr}}
.compare h2{font-size:19px;font-weight:800}
.compare .item{padding:8px 0;border-top:1px solid var(--cream-line)}
.compare .item b{display:block;font-weight:700}
.compare .item small{display:block;font-size:13px;color:var(--muted)}
.compare .notice .item{border-color:#e6d48f}

/* home: event blocks */
.blocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:16px}
.block{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--cream);border:1px solid var(--cream-line);text-decoration:none;color:var(--ink)}
.block:hover{border-color:var(--green);color:var(--ink)}
.block:hover .name{text-decoration:underline;text-underline-offset:3px}
.block .when{display:inline-flex;align-items:center;gap:8px;font:500 13px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--gold-deep)}
.block .when::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold-deep)}
.block .name{font-size:19px;font-weight:800;line-height:1.3}
.block .line{color:var(--muted);max-width:none}
.block--soon{background:var(--bg);border-style:dashed}
.empty{color:var(--muted)}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px 48px}
.split section{display:flex;flex-direction:column;gap:8px}
.partners{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px}
.partners img{height:56px;width:auto}
.partners .label{font-size:13px;color:var(--muted);flex-basis:100%}

/* calendar */
.calrow{display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 16px;padding:12px 0;border-bottom:1px solid var(--thread)}
.caldate{font:500 13px var(--mono);line-height:1.35;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.caldate span{display:block;color:var(--muted)}
.calname{font-weight:700}
.calname a{text-decoration:none}
.calname a:hover{text-decoration:underline}
.caldetail{color:var(--muted)}
.calname .marker{font-size:13px;margin-left:4px}
.calrow--open{background:var(--cream);box-shadow:12px 0 0 var(--cream),-12px 0 0 var(--cream)}

/* footer: same on every page */
.sitefoot{border-top:1px solid var(--thread);margin-top:24px}
.sitefoot .wrap{padding-block:24px 32px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px 48px;font-size:13px;color:var(--muted)}
.sitefoot h2{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}
.sitefoot p,.sitefoot li{max-width:none}
.sitefoot ul{list-style:none;padding:0;gap:4px}
.sitefoot a{color:var(--muted)}
.sitefoot a:hover{color:var(--ink)}
.sitefoot .logos{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.sitefoot .logos img{height:40px;width:auto}
.sitefoot .legal{grid-column:1/-1;padding-top:16px;border-top:1px solid var(--thread)}
.placeholder{background:var(--notice);color:#1a1a1a;padding:0 4px}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* call band: the one thing that needs people right now, above everything else */
.callband{background:var(--notice);color:var(--notice-ink);border-bottom:1px solid var(--cream-line);
  box-shadow:inset 4px 0 0 var(--red)}
.callband .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;padding-block:16px}
.callband .msg{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:4px}
.callband .eyebrow{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red)}
.callband .say{min-width:0;max-width:60ch}
.callband .say b{font-weight:800}
.callband .track{flex:0 1 200px;min-width:0;display:flex;flex-direction:column;gap:5px;font-size:13px}
.callband .track .label{font-weight:600}
.callband .track .label b{font-weight:800;font-variant-numeric:tabular-nums}
.callband .track .bar{max-width:none;margin-top:0;background:#e5d9a8}
.callband .track .count{font-weight:600;color:var(--red)}
.callband .btn{flex:none;padding:10px 20px;font-size:15px}
@media (max-width:560px){.callband .wrap{gap:8px}.callband .btn{width:100%;text-align:center}}

/* happening-now strip: one row of date tiles that scrolls, like a week on a wall calendar */
.sechint{font-size:13px;color:var(--muted);margin-top:-16px}
.filter--months{margin:-8px 0 0}
.filter--months select{min-width:160px}
@media (max-width:560px){.sechint .wide{display:none}}
.nextrow{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(196px,1fr);
  border:1px solid var(--thread);overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain}
.nextrow::-webkit-scrollbar{height:8px}
.nextrow::-webkit-scrollbar-thumb{background:var(--thread);border-radius:4px}
.nextcell{scroll-snap-align:start;display:flex;flex-direction:column;gap:5px;padding:12px 16px 16px;
  min-width:0;text-decoration:none;color:var(--ink);background:var(--bg);
  border-left:1px solid var(--thread)}
.nextcell:first-child{border-left:0}
/* meetings read as standing invitations, not tasks: tinted like the calendar row */
.nextcell[data-kind="meeting"]{background:var(--cream)}
.nextcell[data-kind="meeting"] .dow,.nextcell[data-kind="meeting"] .mo{color:var(--gold-deep)}
.nextcell:hover{background:var(--cream);color:var(--ink)}
.nextcell[data-kind="meeting"]:hover{background:var(--cream-line)}
.nextcell:hover .t{text-decoration:underline;text-underline-offset:3px}
.nextcell .dow{order:1;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nextcell .date{order:2;position:relative;display:flex;align-items:baseline;gap:6px;line-height:1;align-self:flex-start}
.nextcell .pre{font:500 12px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--gold-deep)}
.nextcell .n{font-weight:800;font-size:34px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nextcell .mo{font:500 13px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--gold-deep);font-style:normal}
.nextcell .t{order:2;font-weight:700;font-size:15px;line-height:1.3;margin-top:2px}
.nextcell .meta{order:3;font-size:13px;color:var(--muted);line-height:1.35}
.nextcell .emo{font-size:14px;line-height:1;vertical-align:-1px}
.nextcell .fill{order:4;display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:8px;
  font-size:13px;font-weight:600;color:var(--muted)}
.nextcell .fill .bar{max-width:none;margin-top:0}
.nextcell .v{order:5;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;
  color:var(--green-text);padding-top:4px}
.nextcell .fill:not(:has(+ .v)){margin-bottom:0}
.nextcell .v:only-of-type{margin-top:auto}
.nextcell .v::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold-deep)}
/* the next date up gets circled, the way you'd ring it on the kitchen calendar */
.nextcell--soon .date::before{content:"";position:absolute;left:50%;top:46%;width:calc(100% + 20px);
  height:calc(100% + 18px);transform:translate(-50%,-50%) rotate(-2.5deg);border:2px solid var(--gold);
  border-radius:50% 50% 52% 48%;pointer-events:none}
/* on a phone the strip stacks: vertical scrolling is already what your thumb is doing */
@media (max-width:560px){
  .nextrow{grid-auto-flow:row;grid-auto-columns:auto;overflow-x:visible;scroll-snap-type:none}
  .nextcell{border-left:0;border-top:1px solid var(--thread);padding-bottom:14px}
  .nextcell:first-child{border-top:0}
}

/* screen-reader-only headings */
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* fill bars: how many volunteers a shift has */
.bar{display:block;width:100%;max-width:120px;height:6px;margin-top:6px;background:var(--thread);border-radius:3px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--gold);border-radius:3px}
.shift .open{display:flex;flex-direction:column;align-items:flex-end}
.shift .open.is-full{color:var(--green-text)}
.shift .open.is-full .bar i{background:var(--green-text)}
.nextcell .fill{display:flex;flex-direction:column;gap:4px;padding-top:4px;font-size:13px;font-weight:600;color:var(--muted)}
.nextcell .fill .bar{max-width:none;margin-top:0}


/* first-time callout */
.callout{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:24px 16px;border:2px dashed var(--green)}
.callout .eye{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep)}
.callout h2{font-size:22px;font-weight:800;max-width:40ch}
.callout p{max-width:54ch;color:var(--muted)}
.callout .btn{align-self:center;margin-top:8px}
