button:disabled{cursor:wait;opacity:.6}#logStatus{font:12px var(--mono);line-height:1.6;max-width:60ch;min-height:1.6em}#statsStatus{font:11px var(--mono);line-height:1.7}#retryLog{min-height:44px} .reaction-overlay.open{pointer-events:auto;background:#16171955} .reaction-overlay.open .reaction-card{max-height:90dvh;overflow:auto} #bankStatus{padding:12px 5vw;font:12px var(--mono);line-height:1.6} .receipt-paper[data-empty=true] .receipt-total,.receipt-paper[data-empty=true] .receipt-stamp{display:none} .result-panel li:only-child{font:12px var(--mono);line-height:1.7} :focus-visible{outline:3px solid var(--blue);outline-offset:4px}
/* Slice 3: readable text, real hit areas and honest non-JavaScript states. */
:root{--link:#2448d8}
.board .result-no,.board .swipe-hint,.board .ranking-note{color:var(--ink)}
.manifesto-copy span,.crew-type,.ledger-arrow,.data-link{color:var(--link)}
.bank-strip a,.blog-link-strip a,.entry-actions>a,.back-link,.bank-bottom-strip a{display:inline-flex;align-items:center;min-height:44px}
.survey-chip,.text-button,.replay-print,.reaction-close{min-width:44px;min-height:44px}
.survey-dialog input,.survey-dialog select{font-size:16px}
#surveyFeedback:empty{display:none}#surveyFeedback:focus{outline:2px solid var(--blue);outline-offset:5px}
.boot-message{padding:14px 5vw;font:13px/1.6 var(--mono);border-bottom:1px solid var(--line)}
#reloadPage{min-height:44px}
.bank-timebars{align-items:stretch;gap:6px}.bank-timebars>button{position:relative;min-height:120px;height:100%;background:transparent;min-width:24px}
.bank-timebars>button .time-bar-fill{position:absolute;inset:auto 0 0;background:var(--blue);height:var(--bar-height);pointer-events:none}
.bank-timebars>button.peak .time-bar-fill{background:var(--acid)}
.bank-timebars>button.selected{outline:2px solid var(--pink);outline-offset:3px}
.bank-timebars>button>span:not(.time-bar-fill){position:absolute;top:0;left:0;right:0;transform:none!important}
@media(max-width:1000px){.bank-heatmap{grid-template-columns:repeat(6,minmax(44px,1fr));gap:4px}.bank-heatmap>button{min-width:44px;min-height:44px}}
.bank-timebars>button.peak{background:transparent}.bank-timebars>button .time-bar-fill{transform:none;margin:0;width:auto}
.noscript-links{display:flex;gap:18px;flex-wrap:wrap;padding:0 5vw 12px}.noscript-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;font:12px var(--mono)}

/* Marquee separators inherit each band’s ink; stationary marks stay unchanged. */
.ticker:not(.main-ticker) .ticker-track{align-items:center}.ticker:not(.main-ticker) .ticker-droplet{display:block;width:15px;height:19px;flex:0 0 15px;margin-right:35px}

/* Keep one question scroll region and persistent navigation within the dialog. */
.survey-dialog{padding:0;overflow:hidden;max-height:min(88dvh,780px);max-height:min(88vh,780px)}
@supports(height:100dvh){.survey-dialog{max-height:min(88dvh,780px)}}
.survey-dialog[open]{display:flex;flex-direction:column}
.survey-top{flex:none;padding:8px 20px;border-bottom:1px solid var(--line)}
.survey-dialog progress{flex:none;margin:0;height:4px}
#surveyForm{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.survey-body{min-height:0;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:0 24px 16px;scroll-padding-block:16px;scrollbar-color:var(--blue) var(--paper)}
.survey-foot{flex:none;margin:0;padding:12px 24px;border-top:1px solid var(--line);background:var(--paper)}
.survey-dialog .search-results{position:relative;inset:auto;margin:8px 0 0;max-height:min(220px,30dvh);overscroll-behavior-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.stat-mark svg{display:block;width:1em;height:1em}
@media(max-width:700px){.result-panels.is-tab-scrolling{scroll-snap-type:none;scroll-behavior:auto}.result-panels{scroll-snap-type:x proximity;scroll-behavior:auto}.result-panel{scroll-snap-stop:normal}.result-tabs button{transition:background-color .2s,color .2s}}
@media(max-width:600px){.survey-dialog{width:calc(100vw - 20px);max-height:calc(100vh - 24px);box-shadow:4px 4px 0 var(--acid)}@supports(height:100dvh){.survey-dialog{max-height:calc(100dvh - 24px)}}.survey-top{padding-inline:16px}.survey-body{padding-inline:16px;padding-bottom:16px}.survey-foot{padding:8px 16px max(8px,env(safe-area-inset-bottom));gap:12px}.survey-foot .big-button{min-height:48px}}

/* Three short mobile steps; desktop retains its two-step survey. */
#surveyHeading:focus{outline:none}.survey-step-note{font:11px/1.6 var(--mono);margin:16px 0 0}.survey-step-note:empty{display:none}
.rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.rating-options .survey-chip{min-width:0;padding:12px 3px;border-radius:6px;font-size:20px}.rating-options small{display:block;font:10px/1.4 var(--mono);margin-top:5px}
.receipt-confirmation{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px;background:var(--paper);color:var(--ink);border:2px solid var(--ink)}.receipt-confirmation::backdrop{background:#16171988}.receipt-confirmation>button{display:block;margin-left:auto}.receipt-confirmation h2{font-size:36px;letter-spacing:-.04em;margin:12px 0}.receipt-confirmation p{line-height:1.6}.receipt-reference{font:500 18px var(--mono);overflow-wrap:anywhere;border-block:1px dashed var(--line);padding:14px 0}.receipt-confirmation .big-button{margin:16px 5px 5px 0}
@media(max-width:360px){.rating-options{gap:4px}.rating-options small{font-size:9px}.receipt-confirmation{padding:20px}}

.receipt-id{overflow-wrap:anywhere}.void-receipt{margin-top:10px}.void-actions{display:flex;gap:12px;flex-wrap:wrap}.void-actions button{min-height:48px}.void-actions #confirmVoid{background:var(--ink);color:var(--paper)}

/* Consistent square choices and compact question helper text. */
#surveyForm .survey-chip{border-radius:6px}
#surveyForm .survey-question-hint{margin:6px 0 12px;font:12px/1.5 var(--mono)}
#surveyForm fieldset:has(.survey-question-hint) legend{margin-bottom:0}
