/* Show Times Today (/show-times, shows.js). Builds on styles.css tokens + ll.css/deals.css (lead form, callouts) + bag.css-like panels. Mobile first; space reserved while loading (low CLS). */
.st-load{min-height:760px}
.st-h{margin:0 0 8px;font-size:22px}
.st-tonight{background:var(--ink);color:#fff;border-radius:var(--r);padding:16px;margin:0 0 18px;box-shadow:var(--sh-sm)}
.st-tonight .st-h{color:#fff}
.st-tonight .meta{color:#e8e8e8;margin:0 0 10px}
.st-tn{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.st-tn>li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:10px 12px;min-width:0}
.st-tn ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:14px}
.st-tn b{color:var(--sun,#ffd23f)}
.st-tn em{font-style:normal;font-size:12px;font-weight:700;border-radius:999px;padding:1px 7px;background:#fff;color:var(--ink);white-space:nowrap}
.st-tn-p{font:inherit;font-weight:700;font-size:16px;color:#fff;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.st-tn-p:focus-visible{outline:2px solid var(--sun,#ffd23f);outline-offset:2px}
.st-tool{display:grid;gap:18px;margin:0 0 24px}
.st-panel{background:var(--card);border:var(--bw,1px) solid var(--rule);border-radius:var(--r);box-shadow:var(--sh-sm);padding:16px;min-width:0}
.st-panel h2{margin:0 0 10px;font-size:20px}
.st-lab{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:12px 0 6px}
.st-lab:first-child{margin-top:0}
.st-chips{display:flex;flex-wrap:wrap;gap:6px}
.st-chips button{font:inherit;font-size:14px;min-height:40px;padding:6px 12px;border:1px solid var(--rule);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}
.st-chips button small{font-size:11px;font-weight:700;opacity:.75}
.st-chips button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.st-chips button:focus-visible,.st-t:focus-visible,.st-x:focus-visible,.st-panel .btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.st-check{display:flex;gap:8px;align-items:center;margin:12px 0 0;font-size:14px}
.st-check input{width:20px;height:20px}
.st-hours{margin:12px 0 0;font-size:14px}
.st-main{min-width:0}
.st-soon{background:#fff8e1;border:2px solid var(--ink);border-radius:14px;padding:10px 14px;margin:0 0 12px}
.st-soon h3{margin:0 0 6px;font-size:16px}
.st-soon ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}
.st-soon small{color:var(--muted)}
.st-count{margin:4px 0 10px;font-size:15px}
.st-count b{font:700 22px/1.1 var(--display)}
#stList{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.st-show{background:#fff;border:1px solid var(--rule);border-left:6px solid var(--muted);border-radius:14px;padding:10px 14px;min-width:0}
.st-show.c-night{border-left-color:#3b2a8f}.st-show.c-parade{border-left-color:#c2401a}.st-show.c-meet{border-left-color:#498500}.st-show.c-music{border-left-color:#a86b00}.st-show.c-show{border-left-color:var(--purple,#6b3fd4)}
.st-show.is-closed{opacity:.85}
.st-sh h3{margin:0;font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.st-sh h3 small{display:block;font:500 12px/1.4 var(--text);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.st-tk{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:4px}
.st-tk span{font-size:12px;font-weight:700;border-radius:999px;padding:2px 8px;background:#f3ecfe;color:#3b2a8f}
.st-cl{margin:6px 0 0;font-size:13px;color:var(--muted)}
.st-ts{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.st-t{font:inherit;font-size:14px;font-weight:700;min-height:40px;padding:6px 11px;border:2px solid var(--ink);border-radius:10px;background:#fff;color:var(--ink);cursor:pointer;white-space:nowrap}
.st-t i,.st-t em{font-style:normal;font-size:11px;font-weight:600;color:var(--muted)}
.st-t[aria-pressed=true]{background:var(--sun,#ffd23f);box-shadow:inset 0 0 0 2px var(--ink)}
.st-t[aria-pressed=true]::before{content:'✓ '}
.st-t.past{border-style:dashed;color:var(--muted)}
.st-t.tk-party{border-color:#3b2a8f}
.st-off{margin:10px 0 0}
.st-plan h2 span{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;margin-left:4px;vertical-align:middle}
.st-buf{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:14px;margin:0 0 10px}
.st-buf select{font:inherit;min-height:40px;padding:4px 8px;border:1px solid var(--rule);border-radius:8px;background:#fff;color:var(--ink)}
.st-pl{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.st-pi{display:grid;grid-template-columns:auto 1fr auto;gap:2px 8px;align-items:center;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:8px 10px;font-size:14px}
.st-pi small{grid-column:2;color:var(--muted)}
.st-pi .st-x{grid-row:1/span 2;grid-column:3}
.st-pi.past{opacity:.7}
.st-x{font:inherit;min-width:40px;min-height:40px;border:1px solid var(--rule);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}
.st-gap{font-size:13px;color:var(--muted);padding:2px 4px 2px 12px;border-left:3px dotted var(--rule);margin-left:12px}
.st-gap.warn{color:#8a2a0b;border-left-color:#c2401a;background:#ffece5;border-radius:0 8px 8px 0}
.st-fill{display:block;color:var(--ink)}
.st-actions{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}
.st-jump{position:fixed;right:14px;bottom:14px;z-index:20;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px;font-weight:700;text-decoration:none;box-shadow:var(--sh-sm)}
.st-src{margin:24px 0}

@media (min-width:960px){
 .st-tool{grid-template-columns:260px minmax(0,1fr) 300px;align-items:start}
 .st-ctrl,.st-plan{position:sticky;top:12px}
 .st-scroll{flex-direction:column;align-items:stretch}
 .st-scroll button{text-align:left}
 .st-jump{display:none}
}
@media print{.st-ctrl,.st-jump,.pwd-callout,.st-actions{display:none!important}}
.st-srcl{columns:2 260px;font-size:14px}
.st-tips{display:grid;gap:12px;margin:0 0 24px}
.st-tips>div{background:var(--card);border:1px solid var(--rule);border-radius:var(--r);padding:12px 14px}
.st-tips h3{margin:0 0 6px;font-size:17px}
.st-tips p{margin:0;font-size:14px}
.st-scoop{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:8px 0}
.st-scoop input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}
@media (min-width:700px){.st-tips{grid-template-columns:repeat(3,1fr)}}
