.game-control{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);width:100%}.game-control__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.game-control__heading,.game-control__sub-heading{margin:0}.game-control__loading,.game-control__empty,.game-control__awaiting,.game-control__running,.game-control__between,.game-control__complete{display:flex;flex-direction:column;gap:var(--space-3)}.game-control__loading{align-items:center;text-align:center}.game-control__spinner{width:36px;height:36px;border-radius:50%;border:4px solid var(--surface-border);border-top-color:var(--brand-coral);animation:game-control-spin .9s linear infinite}@keyframes game-control-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.game-control__spinner{animation-duration:2.5s}}.game-control__game-row{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:0;padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border)}.game-control__game-row-pair{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1 auto;min-width:0}.game-control__game-row-pair dt,.game-control__game-row-pair dd{margin:0}.game-control__game-row-value{color:var(--text-primary);font-weight:var(--weight-semibold)}.game-control__winners{display:flex;flex-direction:column;gap:var(--space-2)}.game-control__winners-heading{margin:0}.game-control__winners-empty{margin:0;padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm)}.game-control__winners-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.game-control__winner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border)}.game-control__winner--highlight{background:var(--status-success-bg);border-color:var(--status-success)}.game-control__winner-code{margin:0;font-weight:var(--weight-medium);font-family:var(--font-mono, monospace)}.game-control__next-up{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm)}.game-control__footnote{margin:0}.game-control__divider{border:none;border-top:var(--border-hairline) solid var(--surface-border);margin:var(--space-2) 0;width:100%}.game-control__error{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--status-warning-bg, var(--surface-sunken));color:var(--text-primary);border:var(--border-hairline) solid var(--status-warning);border-radius:var(--radius-md)}.game-control__confirm{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--status-warning);border-radius:var(--radius-md)}.game-control__confirm-title{color:var(--status-warning);margin:0}.game-control__confirm-actions{display:flex;flex-direction:column;gap:var(--space-2)}@media (min-width: 600px){.game-control__confirm-actions{flex-direction:row}}.card-mgmt{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6) var(--content-gutter);max-width:720px;margin:0 auto;width:100%}.card-mgmt__header{display:flex;flex-direction:column;gap:var(--space-2)}.card-mgmt__title,.card-mgmt__subtitle{margin:0}.card-mgmt__banner{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:var(--border-hairline) solid}.card-mgmt__banner--warning{background:var(--status-warning-bg);color:var(--text-primary);border-color:var(--status-warning)}.card-mgmt__section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md)}.card-mgmt__section-heading{margin:0}.card-mgmt__games{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);counter-reset:card-mgmt-game}.card-mgmt__game{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border)}.card-mgmt__game--active{border-color:var(--brand-coral);background:var(--surface-raised)}.card-mgmt__game--closed{opacity:.85;border-style:dashed}.card-mgmt__game-header{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.card-mgmt__game-ordinal{margin:0}.card-mgmt__game-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:11px;line-height:14px;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;border:var(--border-hairline) solid var(--surface-border);background:var(--surface-bg);color:var(--text-muted)}.card-mgmt__game-badge--active{background:var(--status-success-bg);color:var(--status-success);border-color:var(--status-success)}.card-mgmt__game-badge--closed{background:var(--surface-bg);color:var(--text-muted);border-color:var(--surface-border)}.card-mgmt__game-winners{margin-left:auto}.card-mgmt__game-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);grid-column:1 / 2}@media (max-width: 480px){.card-mgmt__game-row{grid-template-columns:1fr}}.card-mgmt__game-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.card-mgmt__game-field-label{margin:0}.card-mgmt__game-pattern,.card-mgmt__game-payout{padding:var(--space-2) var(--space-3);font-size:14px;line-height:20px;background:var(--surface-bg);color:var(--text-primary);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-sm);min-height:var(--target-min);width:100%}.card-mgmt__game-pattern:focus-visible,.card-mgmt__game-payout:focus-visible{outline:var(--border-focus) solid var(--brand-coral);outline-offset:2px}.card-mgmt__game-pattern:disabled,.card-mgmt__game-payout:disabled{opacity:.6;cursor:not-allowed}.card-mgmt__game-controls{display:flex;flex-direction:column;gap:var(--space-1);grid-column:2 / 3}.card-mgmt__game-control{display:inline-flex;align-items:center;justify-content:center;width:var(--target-min);height:var(--target-min);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border);background:var(--surface-bg);color:var(--text-primary);font-size:18px;line-height:1;cursor:pointer}.card-mgmt__game-control:focus-visible{outline:var(--border-focus) solid var(--brand-coral);outline-offset:2px}.card-mgmt__game-control:hover:not(:disabled){background:var(--surface-raised)}.card-mgmt__game-control:disabled{opacity:.4;cursor:not-allowed}.card-mgmt__game-control--remove{color:var(--status-error, var(--brand-coral))}.card-mgmt__game-pinned{grid-column:1 / -1;margin:0}.card-mgmt__games-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.card-mgmt__games-actions>*{flex:1 1 auto;min-width:140px}.card-mgmt__count-choices{display:flex;gap:var(--space-2);flex-wrap:wrap}.card-mgmt__count-choice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-pill);border:var(--border-hairline) solid var(--surface-border);cursor:pointer;min-height:var(--target-min);font-size:16px;font-weight:var(--weight-medium);color:var(--text-primary)}.card-mgmt__count-choice--checked{background:var(--brand-coral);border-color:var(--brand-coral);color:var(--text-on-accent)}.card-mgmt__count-choice input[type=radio]{width:16px;height:16px}.card-mgmt__actions{display:flex;flex-direction:column;gap:var(--space-3)}.card-mgmt__confirm,.card-mgmt__success,.card-mgmt__error,.card-mgmt__busy{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border-radius:var(--radius-md);border:var(--border-hairline) solid var(--surface-border)}.card-mgmt__error{border-color:var(--status-error)}.card-mgmt__success{border-color:var(--status-success)}.card-mgmt__confirm{border-color:var(--status-warning)}.card-mgmt__confirm-title{color:var(--status-warning)}.card-mgmt__confirm-actions,.card-mgmt__error-actions{display:flex;flex-direction:column;gap:var(--space-2)}@media (min-width: 600px){.card-mgmt__confirm-actions,.card-mgmt__error-actions{flex-direction:row}}.card-mgmt__download{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:var(--target-min)}.card-mgmt__busy{align-items:center;text-align:center}.card-mgmt__spinner{width:48px;height:48px;border-radius:50%;border:4px solid var(--surface-border);border-top-color:var(--brand-coral);animation:card-mgmt-spin .9s linear infinite}@keyframes card-mgmt-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.card-mgmt__spinner{animation-duration:2.5s}}.verify-page{display:flex;flex-direction:column;min-height:100vh;background:var(--surface-bg)}.verify-page__bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:var(--border-hairline) solid var(--surface-border);background:var(--surface-raised);position:sticky;top:0;z-index:5}.verify-page__brand-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--brand-coral);flex:0 0 auto}.verify-page__brand{font-weight:var(--weight-semibold);color:var(--text-primary);font-size:15px;line-height:22px}.verify-page__title{margin-left:auto}.verify-page__main{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;width:100%;padding:var(--space-5) var(--space-4) var(--space-10);max-width:520px;margin:0 auto;gap:var(--space-6)}.verify-body{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-5);width:100%}.verify-badge{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);font-weight:var(--weight-bold);letter-spacing:.02em;text-transform:uppercase;font-size:28px;line-height:32px;text-align:center}.verify-badge__icon{font-size:36px;line-height:1;font-weight:var(--weight-regular)}.verify-badge__label{font-size:inherit;line-height:inherit}.verify-badge--winner{background:var(--status-success-bg);color:var(--status-success);animation:verify-winner-pulse 1.8s ease-in-out infinite;box-shadow:0 0 0 2px var(--status-success)}.verify-badge--not-winner{background:var(--surface-sunken);color:var(--text-muted);box-shadow:0 0 0 1px var(--surface-border)}@keyframes verify-winner-pulse{0%,to{box-shadow:0 0 0 2px var(--status-success)}50%{box-shadow:0 0 0 6px var(--status-success-bg)}}@media (prefers-reduced-motion: reduce){.verify-badge--winner{animation:none}}.verify-grid{display:grid;grid-template-columns:repeat(5,1fr);aspect-ratio:1 / 1;width:100%;gap:var(--space-1);padding:var(--space-2);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md)}.verify-cell{position:relative;display:flex;align-items:center;justify-content:center;background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:10px;line-height:12px;font-weight:var(--weight-medium);text-align:center;padding:var(--space-1);overflow:hidden;word-break:break-word;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.verify-cell__label{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:12px}.verify-cell__check{position:absolute;top:2px;right:4px;font-size:12px;font-weight:var(--weight-bold);line-height:1}.verify-cell--marked{background:var(--status-success-bg);color:var(--status-success);border-color:var(--status-success)}.verify-cell--marked .verify-cell__check{color:var(--status-success)}.verify-cell--free{background:var(--surface-raised);color:var(--brand-coral);border-color:var(--brand-coral);font-weight:var(--weight-bold)}.verify-cell--free .verify-cell__check{color:var(--brand-coral)}.verify-cell--winning{background:var(--brand-coral);color:var(--text-on-accent);border-color:var(--brand-coral);font-weight:var(--weight-bold);animation:verify-cell-pulse 1.4s ease-in-out infinite}.verify-cell--winning .verify-cell__check,.verify-cell--winning .verify-cell__label{color:var(--text-on-accent)}@keyframes verify-cell-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ff6b4a66}50%{transform:scale(1.03);box-shadow:0 0 0 6px #ff6b4a00}}@media (prefers-reduced-motion: reduce){.verify-cell--winning{animation:none}}.verify-grid--skeleton .verify-cell--skeleton{background:linear-gradient(90deg,var(--surface-sunken) 0%,var(--surface-raised) 50%,var(--surface-sunken) 100%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.verify-loading{display:flex;flex-direction:column;gap:var(--space-5);width:100%;align-items:center}.verify-loading__badge{width:100%;height:72px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-sunken) 0%,var(--surface-raised) 50%,var(--surface-sunken) 100%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.verify-loading__caption{text-align:center}.verify-details{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md)}.verify-details__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.verify-details__row dt,.verify-details__row dd{margin:0}.verify-details__value{color:var(--text-primary);font-weight:var(--weight-semibold)}.verify-hint{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--status-info-bg);border-radius:var(--radius-md);color:var(--status-info)}.verify-hint__copy{color:var(--text-primary)}.verify-stamp{text-align:center}.verify-others-note{margin:0;padding:var(--space-2) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm);text-align:center}.verify-winners{display:flex;flex-direction:column;gap:var(--space-2)}.verify-winners__heading{margin:0}.verify-winners__empty{margin:0;padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-sm)}.verify-winners__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.verify-winners__row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border)}.verify-winners__row--this{background:var(--status-success-bg);border-color:var(--status-success)}.verify-winners__code{margin:0;font-family:var(--font-mono, monospace);font-weight:var(--weight-medium)}.verify-winners__this-badge{margin-left:auto;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--status-success);color:var(--text-on-accent);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}.verify-hint--no-active-game{background:var(--surface-sunken);color:var(--text-primary)}.verify-actions{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.verify-rescan{width:100%;min-height:var(--target-min)}.verify-share{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.verify-share__status{text-align:center;min-height:16px}.verify-error{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-6);background:var(--surface-raised);border:var(--border-hairline) solid var(--status-error);border-radius:var(--radius-md);width:100%}.verify-error__title{color:var(--status-error)}.verify-error__copy{color:var(--text-primary)}.verify-error__detail{word-break:break-word}@media (max-width: 360px){.verify-page__main{padding-left:var(--space-3);padding-right:var(--space-3)}.verify-badge{font-size:24px;line-height:28px;padding:var(--space-4) var(--space-5)}}.audience-pattern-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg)}.audience-pattern-card__heading{color:var(--text-muted);letter-spacing:.08em}.audience-pattern-card--compact{flex-direction:row;align-items:center;gap:var(--space-3);padding:0;background:none;border:none}.audience-pattern-card--compact .audience-pattern-card__meta{align-items:flex-start}.audience-pattern-card--compact .audience-pattern-card__label{font-size:clamp(11px,.9vw,15px)}.audience-pattern-card__meta{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.audience-pattern-card__label{color:var(--text-primary);font-weight:var(--weight-semibold)}.audience-pattern-card__payout{color:var(--text-secondary)}.sm-glyph--compact{--sm-glyph-size: clamp(44px, 4vw, 72px);--sm-glyph-gap: 2px}.audience-page[data-halloween=true]{--surface-bg: #0b0610;--surface-raised: #34205a;--surface-sunken: #0b0610;--surface-border: #6a3fa0;--brand-coral: #ff7a1a;background:radial-gradient(230px 230px at 50% 15%,rgba(255,230,160,.28),rgba(255,230,160,.06) 45%,transparent 62%),radial-gradient(1100px 620px at 78% -8%,#3a1c55 0%,transparent 60%),radial-gradient(900px 700px at 12% 108%,#2a0f3f 0%,transparent 55%),linear-gradient(180deg,#1a0b26,#0b0610)!important}.audience-page[data-halloween=true] .audience-recent,.audience-page[data-halloween=true] .audience-reveal{background:#301a4af5;border-color:#ff7a1a73;box-shadow:0 10px 34px #00000080}.hw-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;overflow:hidden}.hw-fog{position:absolute;left:-20%;right:-20%;bottom:-40px;height:200px;background:radial-gradient(60% 100% at 50% 100%,rgba(139,242,74,.1),transparent 70%);filter:blur(8px);animation:hw-fog 26s linear infinite}@keyframes hw-fog{0%{transform:translate(-4%)}50%{transform:translate(4%)}to{transform:translate(-4%)}}.hw-web{position:absolute;width:120px;height:120px;opacity:.5}.hw-web--tl{top:64px;left:0}.hw-web--tr{top:64px;right:0;transform:scaleX(-1)}.hw-lantern{position:absolute;bottom:26px;left:26px;font-size:40px;animation:hw-flicker 3.5s infinite}@keyframes hw-flicker{0%,to{filter:drop-shadow(0 0 10px rgba(255,140,20,.7))}45%{filter:drop-shadow(0 0 4px rgba(255,140,20,.35))}70%{filter:drop-shadow(0 0 16px rgba(255,170,40,.9))}}.hw-sprite{position:absolute;will-change:transform;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}.hw-track{position:absolute;top:0;left:0;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes hw-crossR{0%{transform:translate(-12vw)}to{transform:translate(112vw)}}@keyframes hw-crossL{0%{transform:translate(112vw)}to{transform:translate(-12vw)}}.hw-bat{animation:hw-flap .32s ease-in-out infinite alternate}@keyframes hw-flap{0%{transform:scaleX(.72)}to{transform:scaleX(1.05)}}.hw-witch{font-size:52px;animation:hw-witchbob 2.4s ease-in-out infinite;filter:drop-shadow(0 0 12px rgba(139,242,74,.5))}@keyframes hw-witchbob{0%{transform:translateY(-6px) rotate(-6deg)}to{transform:translateY(6px) rotate(-2deg)}}.hw-ghost{font-size:66px;opacity:0;animation:hw-rise 7s ease-in-out forwards;filter:drop-shadow(0 0 18px rgba(220,220,255,.5))}@keyframes hw-rise{0%{opacity:0;transform:translateY(30px) scale(.9)}15%{opacity:.85}85%{opacity:.7}to{opacity:0;transform:translateY(-120px) scale(1.05)}}.hw-thread{position:absolute;top:0;width:2px;background:linear-gradient(rgba(183,162,214,.9),transparent);transform-origin:top;animation:hw-drop 5.5s ease-in-out forwards}.hw-thread .hw-spider{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);font-size:30px}@keyframes hw-drop{0%{height:0}35%{height:44vh}70%{height:44vh}to{height:0}}.hw-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:#fff;opacity:0}.hw-flash.hw-zap{animation:hw-zap .55s}@keyframes hw-zap{0%{opacity:0}7%{opacity:.6}15%{opacity:.02}28%{opacity:.45}38%{opacity:0}to{opacity:0}}.hw-lunge{position:fixed;left:50%;top:48%;z-index:4;pointer-events:none;font-size:132px;opacity:0;transform:translate(-50%,-50%) scale(.2);filter:drop-shadow(0 8px 30px rgba(0,0,0,.7))}.hw-lunge.hw-go{animation:hw-lunge .72s ease-out forwards}@keyframes hw-lunge{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:.95;transform:translate(-50%,-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.hw-vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;opacity:0;box-shadow:inset 0 0 240px 80px #000000d9;transition:opacity .18s}.hw-vignette.hw-hit{opacity:1;transition:opacity .5s}.np-fx-panel{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.np-fx-panel__label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-right:4px}@media (prefers-reduced-motion: reduce){.hw-fog,.hw-lantern,.hw-bat,.hw-witch,.hw-track,.hw-flash,.hw-lunge{animation:none!important}}.audience-page{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100vw;overflow:hidden;background:var(--surface-bg);color:var(--text-primary)}.audience-page__bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:var(--border-hairline) solid var(--surface-border);background:var(--surface-raised);flex:0 0 auto}.audience-page__brand-dot{width:12px;height:12px;border-radius:var(--radius-pill);background:var(--brand-coral);flex:0 0 auto}.audience-page__brand{font-weight:var(--weight-semibold);font-size:16px;line-height:24px}.audience-page__room{margin-left:var(--space-4)}.audience-page--branded{background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;isolation:isolate}.audience-page--branded:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:0;pointer-events:none}.audience-page--branded>*{position:relative;z-index:1}.audience-page__logo{height:32px;width:auto;max-width:220px;object-fit:contain;display:block;flex:0 0 auto}.audience-page__main{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;gap:min(var(--space-8),3vh);padding:min(var(--space-10),4vh) min(var(--space-8),3vw);width:100%;box-sizing:border-box}.audience-page__main--with-rail{display:grid;grid-template-columns:1fr clamp(220px,20vw,336px);align-items:stretch;gap:min(var(--space-8),3vw);min-height:0;width:100%}.audience-page__main--with-rail>.audience-page__center{min-width:0}.audience-page__center{display:flex;flex-direction:column;gap:var(--space-8);min-height:0}.audience-reveal{display:flex;align-items:center;gap:min(var(--space-8),3vw);flex:1 1 auto;min-height:0;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:min(var(--space-10),4vh) min(var(--space-10),4vw);box-sizing:border-box}.audience-reveal--empty{align-items:center;justify-content:center;text-align:center}.audience-reveal__waiting{font-size:clamp(24px,3vmin + 14px,56px);line-height:1.22;color:var(--text-muted)}.audience-reveal__cover{flex:0 0 auto;width:clamp(180px,16vmin,400px);height:clamp(180px,16vmin,400px);border-radius:var(--radius-md);object-fit:cover;background:var(--surface-sunken);box-shadow:0 8px 24px #0000004d}.audience-reveal__text{display:flex;flex-direction:column;gap:var(--space-3)}.audience-reveal__title{font-size:clamp(44px,5vmin + 20px,132px);line-height:1.15;font-weight:var(--weight-bold);letter-spacing:-.01em;color:var(--text-primary)}.audience-reveal__subtitle{font-size:clamp(22px,2vmin + 14px,60px);line-height:1.22;color:var(--text-secondary)}.audience-reveal__year-badge{display:inline-flex;align-self:flex-start;margin-top:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill, 999px);background:var(--surface-raised);border:var(--border-hairline) solid var(--brand-coral);color:var(--brand-coral);font-weight:var(--weight-semibold);font-size:clamp(14px,.8vw + 10px,24px);letter-spacing:.04em}.audience-recent{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6)}.audience-recent__heading{flex:0 0 auto;margin:0 0 var(--space-3) 0;letter-spacing:.08em;font-size:clamp(11px,.6vw + 8px,18px)}.audience-recent__fade{position:relative;flex:1 1 auto;min-height:0;display:flex}.audience-recent__fade:after{content:"";position:absolute;left:0;right:0;bottom:0;height:24px;background:linear-gradient(to bottom,transparent,var(--surface-bg));pointer-events:none}.audience-recent__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;min-height:0;width:100%}.audience-recent__item{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3);background:var(--surface-sunken);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border)}.audience-recent__marker{flex:0 0 auto;width:8px;height:8px;margin-top:.5em;border-radius:var(--radius-pill);background:var(--text-muted)}.audience-recent__item--latest .audience-recent__marker{background:var(--brand-coral)}.audience-recent__text{min-width:0}.audience-recent__title{font-size:clamp(15px,.4vw + 12px,20px);line-height:1.3;font-weight:var(--weight-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audience-recent__subtitle{font-size:clamp(12px,.3vw + 10px,16px);line-height:1.3;color:var(--text-muted);margin-top:var(--space-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audience-pill{margin-left:auto;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:12px;line-height:16px;font-weight:var(--weight-medium);color:var(--text-muted);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border)}.audience-pill--connected{color:var(--status-success);background:var(--status-success-bg);border-color:var(--status-success)}.audience-pill--connecting{color:var(--status-warning);background:var(--status-warning-bg);border-color:var(--status-warning)}.audience-pill--disconnected,.audience-pill--error{color:var(--status-error);background:var(--status-error-bg);border-color:var(--status-error)}.room-qr{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);width:max-content}.room-qr__heading{margin:0;letter-spacing:.08em}.room-qr__code-block{display:flex;flex-direction:column;gap:0}.room-qr__code-label{text-transform:uppercase;letter-spacing:.06em}.room-qr__code{font-family:var(--font-mono);font-size:36px;line-height:44px;font-weight:var(--weight-bold);letter-spacing:.05em;color:var(--brand-coral)}.room-qr__image-wrap{background:#fff;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.room-qr__placeholder{width:100%;height:100%;background:var(--surface-sunken);border-radius:var(--radius-sm)}.room-qr__image{display:block}.room-qr__error{text-align:center;padding:var(--space-2)}.room-qr__open-link{color:var(--brand-coral);text-decoration:underline;min-height:var(--target-min);display:inline-flex;align-items:center}.audience-page__main--with-media .audience-page__center{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr 1fr;min-height:0}.audience-page__main--with-media .audience-reveal{grid-row:1;grid-column:1;min-height:0}.audience-page__main--with-media .audience-media{grid-row:2;grid-column:1;min-height:0}.audience-reveal__cover--placeholder{display:flex;align-items:center;justify-content:center;background:var(--surface-sunken);color:var(--text-muted);font-size:clamp(56px,6vmin + 24px,160px);line-height:1;width:clamp(180px,16vmin,400px);height:clamp(180px,16vmin,400px);border-radius:var(--radius-md);flex:0 0 auto}.audience-media{position:relative;display:flex;align-items:center;justify-content:center;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:min(var(--space-6),2vh);height:100%;min-height:0;box-sizing:border-box;overflow:hidden}.audience-media__image,.audience-media__video{max-width:100%;max-height:40vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius-md);background:#000}.audience-media__iframe{width:100%;height:100%;aspect-ratio:16 / 9;max-height:40vh;border:0;border-radius:var(--radius-md);background:#000}.audience-media__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:200px;background:var(--surface-sunken);color:var(--text-muted);border-radius:var(--radius-md)}.audience-media__countdown{position:absolute;bottom:var(--space-3);right:var(--space-4);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:#000000b3;color:#fff;letter-spacing:.02em}.audience-audio-unlock{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000c7;display:flex;align-items:center;justify-content:center;z-index:10;padding:var(--space-6)}.audience-audio-unlock__card{background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);max-width:480px;text-align:center}.audience-audio-unlock__title{margin:0;color:var(--text-primary)}.audience-audio-unlock__body{margin:0;color:var(--text-secondary)}.audience-audio-unlock__cta{min-width:240px;min-height:64px;font-size:20px}.push-media{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md)}.push-media__heading{margin:0;letter-spacing:.08em}.push-media__form{display:flex;flex-direction:column;gap:var(--space-3)}.push-media__field{display:flex;flex-direction:column;gap:var(--space-1)}.push-media__label{font-weight:var(--weight-medium);color:var(--text-secondary)}.push-media__input{width:100%;padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:14px;color:var(--text-primary);min-height:var(--target-min)}.push-media__input:focus-visible{outline:2px solid var(--brand-coral);outline-offset:2px}.push-media__detected{margin-top:var(--space-1)}.push-media__duration{display:flex;flex-direction:column;gap:var(--space-2);border:0;padding:0;margin:0}.push-media__duration legend{padding:0}.push-media__duration-choices{display:flex;flex-wrap:wrap;gap:var(--space-2)}.push-media__duration-choice{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-pill);cursor:pointer;min-height:var(--target-min)}.push-media__help{margin:0;word-break:break-word}.push-media__error{color:var(--status-error);margin:0}.push-media__actions{display:flex;gap:var(--space-3);justify-content:flex-end}.push-media__pushed{display:flex;flex-direction:column;gap:var(--space-2)}.push-media__pushed-url-wrap{display:flex;flex-direction:column;gap:var(--space-1)}.push-media__pushed-url{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);word-break:break-all}.push-media__countdown{margin:0;color:var(--text-secondary)}@media (max-width: 900px){.audience-page__main{padding:var(--space-6) var(--space-4);gap:var(--space-6)}.audience-page__main--with-media .audience-page__center{grid-template-columns:1fr;grid-template-rows:auto auto}.audience-page__main--with-media .audience-reveal{grid-column:1;grid-row:1}.audience-page__main--with-media .audience-media{grid-column:1;grid-row:2;min-height:22vh}.audience-page__main--with-media .audience-page__center,.audience-page__main--with-rail>.audience-page__center{overflow-y:auto}.audience-page__main--with-rail{grid-template-columns:1fr;grid-template-rows:auto auto}.audience-page__main--with-rail>.audience-page__center{grid-row:1}.audience-page__main--with-rail>.audience-recent{grid-row:2}.audience-recent{height:auto}.audience-recent__list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding-bottom:var(--space-2)}.audience-recent__item{flex:0 0 auto;min-width:200px}.audience-recent__fade:after{top:0;bottom:0;left:auto;right:0;width:24px;height:auto;background:linear-gradient(to right,transparent,var(--surface-bg))}.audience-reveal{flex-direction:column;align-items:flex-start;padding:var(--space-6);gap:var(--space-5);min-height:0}.audience-reveal__cover{width:200px;height:200px}.audience-reveal__cover--placeholder{width:200px;height:200px;font-size:72px}.audience-reveal__title{font-size:clamp(48px,6vw + 20px,64px);line-height:1.18}.audience-reveal__subtitle{font-size:clamp(24px,3vw + 10px,32px);line-height:1.3}.audience-ambient__headline--guess{font-size:clamp(48px,6vw + 20px,64px);line-height:1.18}}.audience-ambient{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);min-height:0;text-align:center;position:relative}.audience-ambient__stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-6)}.audience-ambient__headline{color:var(--text-primary);font-size:clamp(32px,3vmin + 20px,92px);line-height:1.15;font-weight:var(--weight-semibold);letter-spacing:.01em}.audience-ambient__headline--guess{font-size:clamp(40px,4vmin + 24px,116px);line-height:1.12;font-weight:var(--weight-bold);letter-spacing:-.01em}.audience-ambient__glyph{color:var(--brand-coral)}.audience-ambient__headline--with-hint{font-size:clamp(30px,1.4vw + 20px,46px);line-height:1.2;font-weight:var(--weight-bold);letter-spacing:-.01em}.audience-ambient__subline.audience-ambient__subline{margin-top:calc(-1 * var(--space-3));font-size:clamp(16px,1vw + 10px,28px);line-height:1.3}.audience-ambient__year-pill{display:inline-flex;align-self:center;margin-top:var(--space-3);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill, 999px);background:var(--surface-raised);border:var(--border-hairline) solid var(--brand-coral);color:var(--brand-coral);font-weight:var(--weight-semibold);font-size:clamp(14px,.8vw + 10px,22px);letter-spacing:.04em}.audience-ambient__equalizer{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-3);height:clamp(64px,4vw + 40px,112px)}.audience-ambient__equalizer--primary{height:clamp(44px,5vw + 20px,96px)}.audience-ambient__bar{width:clamp(12px,.8vw + 6px,22px);border-radius:var(--radius-pill);background:var(--brand-coral);transform-origin:bottom center;height:100%;animation:audience-eq .9s ease-in-out infinite alternate}.audience-ambient__bar:nth-child(1){animation-delay:0ms}.audience-ambient__bar:nth-child(2){animation-delay:.14s}.audience-ambient__bar:nth-child(3){animation-delay:.28s}.audience-ambient__bar:nth-child(4){animation-delay:.42s}.audience-ambient__bar:nth-child(5){animation-delay:.56s}@keyframes audience-eq{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}@media (prefers-reduced-motion: reduce){.audience-ambient__bar{animation:none}.audience-ambient__bar:nth-child(1){transform:scaleY(.5)}.audience-ambient__bar:nth-child(2){transform:scaleY(.8)}.audience-ambient__bar:nth-child(3){transform:scaleY(1)}.audience-ambient__bar:nth-child(4){transform:scaleY(.7)}.audience-ambient__bar:nth-child(5){transform:scaleY(.45)}}.audience-ambient__pattern{position:absolute;left:var(--space-4);top:var(--space-4);display:flex;justify-content:flex-start;z-index:1}.audience-hint-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);max-width:min(90%,1200px);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-left:clamp(4px,.4vw,8px) solid var(--brand-coral);border-radius:var(--radius-md);padding:clamp(var(--space-4),2vw,var(--space-10)) clamp(var(--space-6),3vw,var(--space-12));box-shadow:var(--elevation-overlay);text-align:left}.audience-hint-card__label.audience-hint-card__label{color:var(--brand-coral);letter-spacing:.08em;font-size:clamp(11px,1vw + 6px,22px);line-height:1.4;font-weight:var(--weight-semibold)}.audience-hint-card__text.audience-hint-card__text{color:var(--text-primary);font-size:clamp(18px,2.2vw + 10px,52px);line-height:1.3;font-weight:var(--weight-semibold)}.audience-countdown-dock{position:absolute;left:clamp(var(--space-6),5%,var(--space-16));bottom:clamp(var(--space-6),5%,var(--space-16));display:flex;align-items:center;gap:var(--space-3);z-index:2;padding:var(--space-2);border-radius:var(--radius-lg);background:#0a0c108c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.audience-countdown-ring{width:clamp(52px,4vw,72px);height:clamp(52px,4vw,72px);overflow:visible}.audience-countdown-ring__track{fill:none;stroke:var(--surface-border-strong);stroke-width:4}.audience-countdown-ring__arc{fill:none;stroke-width:4;stroke-linecap:round;transform-origin:50% 50%;transform:rotate(-90deg);transition:stroke-dashoffset .25s linear,stroke .2s ease}.audience-countdown-ring__num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:var(--weight-bold);font-size:clamp(13px,1.1vw,18px);fill:currentColor}.audience-countdown-ring--muted{color:var(--text-primary)}.audience-countdown-ring--muted .audience-countdown-ring__arc{stroke:var(--text-primary)}.audience-countdown-ring--warning{color:var(--status-warning)}.audience-countdown-ring--warning .audience-countdown-ring__arc{stroke:var(--status-warning)}.audience-countdown-ring--error{color:var(--status-error)}.audience-countdown-ring--error .audience-countdown-ring__arc{stroke:var(--status-error);animation:audience-countdown-pulse 1s ease-in-out infinite}.audience-countdown-ring--extend{color:var(--brand-coral)}.audience-countdown-ring--extend .audience-countdown-ring__arc{stroke:var(--brand-coral);transition:none}.audience-countdown-ring--extend .audience-countdown-ring__track{animation:audience-countdown-pop .9s ease-out 1}@keyframes audience-countdown-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes audience-countdown-pop{0%{stroke:var(--brand-coral);stroke-width:4;transform:scale(.85);opacity:.9}to{stroke:var(--brand-coral);stroke-width:2;transform:scale(1.35);opacity:0}}@media (prefers-reduced-motion: reduce){.audience-countdown-ring__arc{transition:none}.audience-countdown-ring--error .audience-countdown-ring__arc,.audience-countdown-ring--extend .audience-countdown-ring__track{animation:none}}.audience-countdown-pills{display:flex;flex-direction:column;gap:var(--space-1)}.audience-countdown-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:clamp(2px,.3vw,4px) clamp(6px,.6vw,10px);border-radius:var(--radius-pill);background:#171b22e6;border:var(--border-hairline) solid var(--surface-border);font-size:clamp(10px,.85vw,13px);font-variant-numeric:tabular-nums;white-space:nowrap}.audience-countdown-pill__dot{width:5px;height:5px;border-radius:var(--radius-pill);flex:0 0 auto}.audience-countdown-pill--hint{color:var(--brand-coral)}.audience-countdown-pill--hint .audience-countdown-pill__dot{background:var(--brand-coral)}.audience-countdown-pill--reveal{color:var(--text-muted)}.audience-countdown-pill--reveal .audience-countdown-pill__dot{background:var(--text-muted)}.sm-glyph{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--sm-glyph-gap, 2px);padding:var(--sm-glyph-gap, 2px);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);aspect-ratio:1 / 1;width:var(--sm-glyph-size, 80px);flex:0 0 auto}.sm-glyph--sm{--sm-glyph-size: 80px;--sm-glyph-gap: 2px}.sm-glyph--lg{--sm-glyph-size: 240px;--sm-glyph-gap: 4px}.sm-glyph__cell{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;border-radius:var(--radius-sm, 3px);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);color:transparent}.sm-glyph__cell.is-lit{background:var(--brand-coral);border-color:var(--brand-coral)}.sm-glyph__cell--free{border-color:color-mix(in srgb,var(--brand-coral) 45%,var(--surface-border))}.sm-glyph__free-mark{font-size:.7em;line-height:1;color:var(--text-secondary)}.sm-glyph__cell--free.is-lit .sm-glyph__free-mark{color:var(--text-on-accent, #fff)}.sm-round-rail-fill{display:flex;flex-direction:column;gap:var(--space-5);height:100%}.sm-round-rail__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.sm-round-rail__collapse{padding:var(--space-1, 4px) var(--space-2);white-space:nowrap}.sm-round-rail__pattern{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);border:var(--border-hairline) solid var(--surface-border);background:var(--surface-raised)}.sm-round-rail__pattern-meta{display:flex;flex-direction:column;gap:var(--space-1, 4px);min-width:0}.sm-round-rail__pattern-chip{color:var(--text-primary)}.sm-round-rail__payout{font-variant-numeric:tabular-nums}.sm-round-rail-fill .game-control{background:transparent;border:none;padding:0;box-shadow:none}.sm-round-rail-fill--collapsed{height:100%}.sm-round-rail__spine{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) 0;background:transparent;border:none;cursor:pointer;color:var(--text-secondary)}.sm-round-rail__spine:hover{color:var(--text-primary)}.sm-round-rail__spine:focus-visible{outline:var(--border-focus, 2px) solid var(--focus-ring, currentColor);outline-offset:2px;border-radius:var(--radius-sm)}.sm-round-rail__spine-round{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.08em}.sm-round-rail-fill--collapsed .sm-glyph--sm{--sm-glyph-size: 40px}.pace-chip{display:inline-flex;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:var(--border-hairline) solid transparent;white-space:nowrap}.pace-chip__dot{width:8px;height:8px;border-radius:var(--radius-pill);flex:0 0 auto}.pace-chip__label{font-size:10px;line-height:12px;font-weight:var(--weight-medium);letter-spacing:.02em;text-transform:uppercase}.pace-chip__digit{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;line-height:18px;font-weight:var(--weight-semibold)}.pace-chip__cards{display:inline-flex;align-items:center;height:18px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:10px;line-height:12px;font-weight:var(--weight-medium);background:currentColor;opacity:.9}.pace-chip__cards{color:var(--surface-bg)}.pace-chip--calm{background:var(--surface-sunken);color:var(--text-secondary);border-color:var(--surface-border)}.pace-chip--calm .pace-chip__dot{display:none}.pace-chip--building{background:var(--surface-sunken);color:var(--status-warning);border-color:var(--status-warning)}.pace-chip--building .pace-chip__dot{display:none}.pace-chip--warning{background:var(--status-warning-bg);color:var(--status-warning)}.pace-chip--warning .pace-chip__dot{background:var(--status-warning)}.pace-chip--hot{background:#ff6b4a1f;color:var(--brand-coral)}.pace-chip--hot .pace-chip__dot{background:var(--brand-coral);animation:pace-chip-pulse 1.1s ease-in-out infinite}.pace-chip--any-time-now{background:var(--brand-coral);color:var(--text-on-accent)}.pace-chip--any-time-now .pace-chip__dot{background:var(--text-on-accent);animation:pace-chip-pulse-hard .9s ease-in-out infinite}@keyframes pace-chip-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}@keyframes pace-chip-pulse-hard{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.sm-showbar__pace-divider{width:var(--border-hairline);align-self:stretch;margin:var(--space-2) 0;background:var(--surface-border);flex:0 0 auto}.sm-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;height:100vh;height:100dvh;display:grid;grid-template-rows:var(--sm-showbar-height, 56px) 1fr;background:var(--surface-bg);color:var(--text-primary);overflow:hidden}.sm-stage:focus{outline:none}.sm-showbar{height:var(--sm-showbar-height, 56px);display:flex;align-items:center;padding:0 var(--space-4);background:var(--surface-raised);border-bottom:var(--border-hairline) solid var(--surface-border)}.sm-body{min-height:0;display:grid;grid-template-columns:var(--sm-rail-width, 252px) 1fr var(--sm-next-width, 360px)}.sm-stage--rail-collapsed .sm-body{grid-template-columns:var(--sm-rail-collapsed-width, 56px) 1fr var(--sm-next-width, 360px)}.sm-round-rail{min-height:0;overflow-y:auto;padding:var(--space-6) var(--space-6);background:var(--surface-sunken);border-right:var(--border-hairline) solid var(--surface-border)}.sm-stage--rail-collapsed .sm-round-rail{padding:var(--space-4) var(--space-2)}.sm-now{min-height:0;overflow-y:auto;padding:var(--space-8) var(--space-8);display:flex;flex-direction:column;gap:var(--space-6)}.sm-next{min-height:0;overflow-y:auto;padding:var(--space-6) var(--space-6);background:var(--surface-sunken);border-left:var(--border-hairline) solid var(--surface-border)}.sm-skeleton{display:flex;flex-direction:column;gap:var(--space-3);height:100%}.sm-skeleton__label{color:var(--text-secondary)}.sm-skeleton__box{flex:1 1 auto;min-height:96px;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-6);color:var(--text-muted);background:var(--surface-raised);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-lg)}.sm-now-zone{display:flex;flex-direction:column;gap:var(--space-8);width:100%;max-width:640px;margin:0 auto}.sm-now-zone__hotkeys{text-align:center;margin:0}.sm-now-zone__reveal{text-align:center}.sm-now-zone--flagged{position:relative;padding:var(--space-6);margin:calc(var(--space-6) * -1);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--status-warning) 20%,transparent);box-shadow:0 0 0 3px var(--status-warning),0 0 36px color-mix(in srgb,var(--status-warning) 55%,transparent)}.sm-now-zone__flag-badge{align-self:center;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-pill, 999px);background:var(--status-warning);color:#1a1200;border:0;font-size:1.35rem;font-weight:var(--weight-bold, 700);letter-spacing:.06em;text-transform:uppercase;box-shadow:0 2px 16px color-mix(in srgb,var(--status-warning) 60%,transparent)}@media (prefers-reduced-motion: no-preference){.sm-now-zone__flag-badge{animation:sm-flag-badge-pulse 1.6s ease-in-out infinite}}@keyframes sm-flag-badge-pulse{0%,to{box-shadow:0 2px 14px color-mix(in srgb,var(--status-warning) 40%,transparent)}50%{box-shadow:0 2px 26px color-mix(in srgb,var(--status-warning) 85%,transparent)}}.sm-next-rail{display:flex;flex-direction:column;gap:var(--space-6);height:100%}.sm-next-rail>.sm-skeleton{flex:0 0 auto;height:auto}.sm-next-rail>.sm-skeleton .sm-skeleton__box{min-height:56px}.sm-next-peek{display:flex;flex-direction:column;gap:var(--space-1);flex:0 0 auto;padding:var(--space-4);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg)}.sm-next-peek__label{color:var(--text-secondary);margin-bottom:var(--space-1)}.sm-next-peek__title{color:var(--text-primary)}.sm-next-peek__ordinal{margin-top:var(--space-1)}.sm-next-peek__tease{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border-radius:var(--radius-sm);border-left:2px solid var(--brand-coral)}.sm-next-peek__tease-label{color:var(--brand-coral)}.sm-next-peek__tease-text,.sm-next-peek__empty{margin:0}.sm-next-peek__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.sm-next-peek__collapse{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;cursor:pointer;color:var(--text-secondary);text-decoration:underline}.sm-next-peek__collapse:hover{color:var(--text-primary)}.sm-next-peek--collapsed{flex-direction:row;align-items:center;gap:var(--space-2);width:100%;text-align:left;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.sm-next-peek--collapsed .sm-next-peek__label{margin-bottom:0;flex:0 0 auto}.sm-next-peek__title-compact{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.sm-next-peek__chevron{flex:0 0 auto;color:var(--text-muted)}.sm-prompter{display:flex;flex-direction:column;gap:var(--space-4);flex:1 1 auto;min-height:0}.sm-prompter__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.sm-prompter__heading{color:var(--text-secondary);margin:0}.sm-prompter__deadair{--btn-accent: var(--brand-coral);border-color:color-mix(in srgb,var(--brand-coral) 40%,transparent);color:var(--brand-coral);white-space:nowrap}.sm-prompter__empty{margin:0;padding:var(--space-4);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-md);text-align:center}.sm-prompter__cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.sm-prompter__card{display:flex;flex-direction:column;gap:var(--space-1, 4px);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:var(--border-hairline) solid var(--surface-border);border-left:3px solid var(--surface-border);background:var(--surface-raised);transition:opacity .16s ease,border-color .16s ease,background-color .16s ease}.sm-prompter__label{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.sm-prompter__text{margin:0;font-size:1.05rem;line-height:1.5;color:var(--text-primary)}.sm-prompter__house-badge{padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);color:var(--text-secondary);letter-spacing:.02em;text-transform:none}.sm-prompter__card.is-emphasised{border-left-color:var(--brand-coral);background:color-mix(in srgb,var(--brand-coral) 8%,var(--surface-raised));opacity:1}.sm-prompter__card.is-emphasised .sm-prompter__label{color:var(--brand-coral)}.sm-prompter__card.is-dim{opacity:.6}.sm-prompter__card--tease{border-left-color:color-mix(in srgb,var(--brand-coral) 55%,var(--surface-border))}@media (prefers-reduced-motion: reduce){.sm-prompter__card{transition:none}}.sm-showbar__group{display:flex;align-items:center;gap:var(--space-3)}.sm-showbar__group--left{flex:1 1 0;min-width:0}.sm-showbar__group--right{flex:1 1 0;justify-content:flex-end}.sm-showbar__status{display:inline-flex;align-items:center;gap:var(--space-2)}.sm-showbar__dot{width:8px;height:8px;border-radius:var(--radius-pill);flex:0 0 auto;background:var(--text-muted)}.sm-showbar__dot--live{background:var(--status-error);animation:sm-pulse 1.4s ease-in-out infinite}.sm-showbar__event{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}@keyframes sm-pulse{0%,to{opacity:1}50%{opacity:.45}}.sm-guard{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--surface-bg)}.sm-guard__card{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;padding:var(--space-10);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--elevation-raised)}@media (max-width: 1080px){.sm-stage,.sm-stage--rail-collapsed{grid-template-rows:var(--sm-showbar-height, 56px) 1fr}.sm-body,.sm-stage--rail-collapsed .sm-body{grid-template-columns:1fr;grid-auto-rows:min-content;overflow-y:auto}.sm-now{order:-1}.sm-round-rail,.sm-next{border-left:none;border-right:none;border-top:var(--border-hairline) solid var(--surface-border);overflow-y:visible}.sm-round-rail{overflow-y:visible}}.sm-showbar__device{display:inline-flex;align-items:center;gap:var(--space-2);max-width:180px}.sm-showbar__device .text-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:color-mix(in srgb,var(--surface-bg) 72%,transparent)}.sm-sheet{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--elevation-raised)}.sm-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.sm-sheet__head h2{margin:0}.sm-join-sheet .room-qr{align-self:center}.sm-join-sheet__status{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--status-warning)}.sm-join-sheet__status.is-connected{color:var(--status-success)}.sm-join-sheet__status .sm-showbar__dot{background:currentColor}.sm-settings__row{display:flex;flex-direction:column;gap:var(--space-2)}.sm-settings__theme{display:flex;gap:var(--space-2)}.sm-settings__theme .btn.is-active{border-color:var(--brand-coral);color:var(--brand-coral)}.sm-exit-confirm h2,.sm-exit-confirm p{margin:0}.sm-exit-confirm__actions{display:flex;gap:var(--space-3);justify-content:flex-end}.sm-preshow{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);width:100%;max-width:760px;margin:0 auto}.sm-preshow__heading{margin:0;text-align:center}.sm-preshow__card{width:100%;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg)}.sm-preshow__checklist{gap:var(--space-4)}.sm-preshow__row{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.sm-preshow__join{align-items:flex-start}.sm-preshow__join .room-qr{align-self:center}.sm-preshow__steps{margin:0;padding-left:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);font-size:1.05rem;line-height:1.5}.sm-preshow__reveal-key{color:var(--brand-coral)}.sm-preshow__hotkeys{font-family:var(--font-mono);margin:0}.sm-preshow__autotimer-label{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sm-preshow__start{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.sm-preshow__start .btn--primary{font-size:1.05rem;padding:var(--space-4) var(--space-8)}.sm-preshow__go-note{display:inline-flex;align-items:center;gap:var(--space-2)}.sm-check{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:var(--space-3)}.sm-check__mark{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:var(--border-hairline) solid var(--text-muted);color:var(--text-muted);font-size:12px;flex:0 0 auto}.sm-check.is-satisfied .sm-check__mark{border-color:var(--status-success);color:var(--status-success);background:color-mix(in srgb,var(--status-success) 12%,transparent)}.sm-check__label,.sm-check.is-satisfied .sm-check__label{color:var(--text-primary)}.sm-check:not(.is-satisfied) .sm-check__label{color:var(--text-secondary)}.sm-check__optional{padding:1px var(--space-2);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--status-warning) 18%,transparent);color:var(--status-warning)}.sm-check__detail{justify-self:end;text-align:right}.sm-check__action{justify-self:end}@media (max-width: 1080px){.sm-preshow__row{grid-template-columns:1fr}.sm-check{grid-template-columns:auto 1fr auto}.sm-check__detail{grid-column:1 / -1;justify-self:start;text-align:left}}@media (prefers-reduced-motion: reduce){.sm-showbar__dot--live{animation:none}}.join-panel{display:inline-flex;align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-2) 0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border)}.join-panel--open{border-color:var(--status-success)}.join-panel--missing{border-color:var(--status-warning)}.join-panel__dot{width:8px;height:8px;border-radius:var(--radius-pill);flex:0 0 auto}.join-panel__dot--open{background:var(--status-success)}.join-panel__dot--missing{background:var(--status-warning)}.join-panel__label{display:flex;flex-direction:column;line-height:1.15;min-width:0}.join-panel__l1{color:var(--text-secondary)}.join-panel--open .join-panel__l1{color:var(--status-success)}.join-panel--missing .join-panel__l1{color:var(--status-warning)}.join-panel__l2{color:var(--text-primary);font-variant-numeric:tabular-nums}.join-panel__l2--muted{color:var(--text-muted)}.join-panel__btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);font-size:13px;font-weight:600;border:var(--border-hairline) solid var(--surface-border-strong);background:var(--surface-raised);color:var(--text-primary);cursor:pointer;text-decoration:none;white-space:nowrap}.join-panel__btn:hover{border-color:var(--brand-coral)}.join-panel__btn--fix{border:none;background:var(--brand-coral);color:var(--text-on-accent, #1a0e0a)}.join-panel__btn--fix:hover:not(:disabled){background:var(--brand-coral-hover)}.join-panel__btn--fix:disabled{opacity:.7;cursor:default}.missing-room-banner{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;max-width:640px;margin:0 auto}.missing-room-banner__text{display:flex;align-items:center;gap:var(--space-3)}:root{--brand-coral: #ff6b4a;--brand-coral-hover: #ff8164;--brand-coral-press: #e5563a;--external-spotify-green: #1db954;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-0: 0px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--border-hairline: 1px;--border-focus: 2px;--target-min: 44px;--target-transport: 72px;--app-bar-height: 56px;--app-max-width: 1200px;--content-gutter: 24px;--panel-gap: 20px;--breakpoint-compact: 768px}:root,[data-theme=dark]{--surface-bg: #0e1116;--surface-raised: #171b22;--surface-sunken: #0b0e13;--surface-border: #2a3038;--surface-border-strong: #3c444f;--text-primary: #f2f4f7;--text-secondary: #a6aeba;--text-muted: #6c7480;--text-on-accent: #1a0e0a;--status-success: #3dd68c;--status-success-bg: #10271c;--status-warning: #e6b450;--status-warning-bg: #2b2310;--status-error: #ff7468;--status-error-bg: #2e1513;--status-info: #5daee6;--status-info-bg: #10222e;--focus-ring: #5daee6;--elevation-raised: 0 1px 2px rgba(0, 0, 0, .4);--elevation-overlay: 0 8px 24px rgba(0, 0, 0, .6)}[data-theme=light]{--surface-bg: #f7f8fa;--surface-raised: #ffffff;--surface-sunken: #eef0f4;--surface-border: #d8dce3;--surface-border-strong: #b7bdc8;--text-primary: #14181f;--text-secondary: #525a66;--text-muted: #878f9c;--text-on-accent: #ffffff;--status-success: #1e8e5a;--status-success-bg: #e3f5ec;--status-warning: #b5740b;--status-warning-bg: #fbf0da;--status-error: #c0362c;--status-error-bg: #fbe6e4;--status-info: #1f6fb2;--status-info-bg: #e4f0f9;--focus-ring: #1f6fb2;--elevation-raised: 0 1px 2px rgba(20, 24, 31, .06), 0 1px 3px rgba(20, 24, 31, .08);--elevation-overlay: 0 8px 24px rgba(20, 24, 31, .14)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:22px;color:var(--text-primary);background:var(--surface-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p{margin:0}button{font-family:inherit;cursor:pointer}:focus-visible{outline:var(--border-focus) solid var(--focus-ring);outline-offset:2px}.t-display{font-family:var(--font-mono);font-size:72px;line-height:76px;font-weight:var(--weight-bold);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.t-title-xl{font-size:30px;line-height:36px;font-weight:var(--weight-bold);letter-spacing:-.01em}.t-title-lg{font-size:24px;line-height:30px;font-weight:var(--weight-bold);letter-spacing:-.01em}.t-title-md{font-size:18px;line-height:24px;font-weight:var(--weight-semibold)}.t-body{font-size:15px;line-height:22px;font-weight:var(--weight-regular)}.t-body-strong{font-size:15px;line-height:22px;font-weight:var(--weight-semibold)}.t-label{font-size:13px;line-height:18px;font-weight:var(--weight-medium)}.t-caption{font-size:12px;line-height:16px;font-weight:var(--weight-medium);letter-spacing:.02em}.t-overline{font-size:11px;line-height:14px;font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.app-shell{display:flex;flex-direction:column;min-height:100%}.app-main{flex:1 1 auto;display:flex;flex-direction:column}.app-bar{position:sticky;top:0;z-index:10;height:var(--app-bar-height);display:flex;align-items:center;gap:var(--space-4);padding:0 var(--space-6);background:var(--surface-raised);border-bottom:var(--border-hairline) solid var(--surface-border)}.app-bar__mark{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto}.app-bar__mark-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--brand-coral)}.app-bar__events{margin-left:var(--space-2);padding:var(--space-1) var(--space-2);background:none;border:none;color:var(--text-secondary);font:inherit;font-weight:var(--weight-semibold);cursor:pointer;border-radius:var(--radius-sm)}.app-bar__events:hover{color:var(--text-primary)}.app-bar__events--current{color:var(--brand-coral);cursor:default}.events-screen{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4)}.events-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.events-header__lead{display:flex;flex-direction:column;gap:var(--space-1)}.events-status{display:flex;align-items:center;gap:var(--space-3)}.events-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.event-row{display:flex;align-items:center;gap:var(--space-3);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.event-row__main{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;background:none;border:none;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.event-row__main:hover .event-row__name{color:var(--brand-coral)}.event-row__status{flex:0 0 auto;padding:2px var(--space-2);border-radius:var(--radius-pill, 999px);font-size:12px;font-weight:var(--weight-semibold);background:var(--surface-sunken);color:var(--text-secondary)}.event-row__status--live{background:var(--status-success-bg, rgba(46, 204, 113, .15));color:var(--status-success, #2ecc71)}.event-row__status--ended{color:var(--text-muted)}.event-row__dup{flex:0 0 auto;font-size:13px}.dup-checks{display:flex;flex-direction:column;gap:var(--space-2)}.dup-check{display:flex;align-items:center;gap:var(--space-2);font-size:14px;cursor:pointer}.event-panel{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-left:3px solid var(--brand-coral);border-radius:var(--radius-md)}.event-panel__info{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.event-panel__notes{margin:0;white-space:pre-wrap}.app-bar__steps{flex:1 1 auto;display:flex;justify-content:center;gap:var(--space-3)}.app-bar__step{color:var(--text-muted);background:none;border:none;padding:0;margin:0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;transition:color .12s ease}.app-bar__step:hover:not(.app-bar__step--current):not(.app-bar__step--disabled){color:var(--text-primary, var(--brand-coral))}.app-bar__step:focus-visible{outline:2px solid var(--brand-coral);outline-offset:2px;border-radius:2px}.app-bar__step--current{color:var(--brand-coral);cursor:default}.app-bar__step--disabled{cursor:default;opacity:.4}.app-bar__step-sep{color:var(--text-muted);opacity:.6}.app-bar__right{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-3)}.sync-status-badge{display:inline-flex;align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-3);border:var(--border-hairline) solid var(--status-warning, #d97706);border-radius:var(--radius-pill);background:var(--surface-bg);color:var(--status-warning, #d97706);font-size:12px;line-height:16px;font-weight:var(--weight-medium);letter-spacing:.02em;cursor:pointer}.sync-status-badge:hover{filter:brightness(1.05)}.sync-status-badge__retry{text-decoration:underline}.sync-failure-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--status-error, #c0392b);color:#fff;font-size:15px;font-weight:var(--weight-semibold, 600);border-bottom:2px solid rgba(0,0,0,.28)}.sync-failure-banner__icon{font-size:18px;flex:0 0 auto}.sync-failure-banner__text{flex:1 1 auto}.sync-failure-banner__retry{flex:0 0 auto;background:#fff;color:var(--status-error, #c0392b);border:0;border-radius:var(--radius-pill, 999px);padding:var(--space-1) var(--space-4);font-weight:var(--weight-bold, 700);font-size:14px;cursor:pointer}.sync-failure-banner__retry:hover{filter:brightness(.95)}.sm-play-it-out{align-self:center;margin-top:var(--space-2)}.sm-play-it-out--on,.sm-play-it-out--on:hover{background:var(--status-error, #c0392b);color:#fff;border-color:transparent;font-weight:var(--weight-bold, 700)}.conn-chip{display:inline-flex;align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-3);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-pill);background:var(--surface-bg);color:var(--text-secondary);font-size:12px;line-height:16px;font-weight:var(--weight-medium);letter-spacing:.02em}.conn-chip[role=button]{cursor:pointer}.conn-chip__dot{width:8px;height:8px;border-radius:var(--radius-pill);flex:0 0 auto}.conn-chip__dot--success{background:var(--status-success)}.conn-chip__dot--warning{background:var(--status-warning)}.conn-chip__dot--error{background:var(--status-error)}.conn-chip__spinner{width:10px;height:10px;border:2px solid var(--status-warning);border-top-color:transparent;border-radius:var(--radius-pill);animation:spin .8s linear infinite}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--target-min);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);border:var(--border-hairline) solid transparent;font-size:15px;line-height:22px;font-weight:var(--weight-semibold);text-decoration:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--brand-coral);color:var(--text-on-accent)}.btn--primary:not(:disabled):hover{background:var(--brand-coral-hover)}.btn--primary:not(:disabled):active{background:var(--brand-coral-press)}.btn--secondary{background:var(--surface-raised);border-color:var(--surface-border-strong);color:var(--text-primary)}.btn--secondary:not(:disabled):hover{background:var(--surface-sunken)}.btn--ghost{background:transparent;color:var(--text-secondary)}.btn--ghost:not(:disabled):hover{background:var(--surface-sunken)}.btn--destructive{background:transparent;color:var(--status-error)}.btn--destructive:not(:disabled):hover{background:var(--status-error-bg)}.btn--spotify{background:var(--external-spotify-green);color:#fff;height:48px;width:100%}.btn--spotify:not(:disabled):hover{filter:brightness(1.06)}.btn--full{width:100%}.btn--icon{width:var(--target-min);height:var(--target-min);min-height:var(--target-min);padding:0;border-radius:var(--radius-pill)}.seconds-field{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border-strong);background:var(--surface-sunken)}.seconds-field--disabled{opacity:.5}.seconds-field__input{width:3ch;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;text-align:right;padding:0}.seconds-field__input:focus-visible{outline:none}.seconds-field__input:disabled{color:var(--text-muted)}.seconds-field__unit{white-space:nowrap}.seconds-field__stepper{display:inline-flex;flex-direction:column;line-height:.7}.seconds-field__step{border:none;background:transparent;color:var(--text-muted);font-size:8px;line-height:1;padding:1px 2px;cursor:pointer}.seconds-field__step:not(:disabled):hover{color:var(--text-primary)}.seconds-field__step:disabled{cursor:not-allowed}.seconds-field--compact{padding:0 var(--space-1)}.seconds-field--compact .seconds-field__input{font-size:12px}.banner{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:13px;line-height:18px}.banner--error{background:var(--status-error-bg);color:var(--status-error)}.banner--warning{background:var(--status-warning-bg);color:var(--status-warning)}.banner--info{background:var(--status-info-bg);color:var(--status-info)}.banner--success{background:var(--status-success-bg);color:var(--status-success)}.banner__actions{display:flex;gap:var(--space-2)}.toast-region{position:fixed;left:50%;bottom:var(--space-8);transform:translate(-50%);z-index:50;display:flex;justify-content:center;pointer-events:none}.toast{pointer-events:auto;max-width:90vw;padding:var(--space-3) var(--space-5);background:var(--surface-raised);color:var(--text-primary);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--elevation-overlay);font-size:13px;line-height:18px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:#00000080}.connect-screen{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--surface-bg)}.connect-card{width:100%;max-width:440px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--elevation-raised);display:flex;flex-direction:column;gap:var(--space-4)}.connect-card__mark{display:flex;align-items:center;gap:var(--space-2)}.connect-card__mark-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--brand-coral)}.device-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none;max-height:55vh;overflow-y:auto;overscroll-behavior:contain}.device-row{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3);border-radius:var(--radius-md);border:var(--border-hairline) solid var(--surface-border);background:var(--surface-sunken);color:var(--text-primary)}.device-row--selected{border:var(--border-focus) solid var(--brand-coral);padding:calc(var(--space-3) - 1px)}.device-row__radio{width:14px;height:14px;flex:0 0 auto;border-radius:var(--radius-pill);border:2px solid var(--surface-border-strong)}.device-row--selected .device-row__radio{border-color:var(--brand-coral);background:var(--brand-coral);box-shadow:inset 0 0 0 3px var(--surface-sunken)}.device-row__body{flex:1 1 auto;display:flex;flex-direction:column}.device-row__icon{flex:0 0 auto;font-size:16px}.screen{flex:1 1 auto;width:100%;max-width:var(--app-max-width);margin:0 auto;padding:var(--space-8) var(--content-gutter);display:flex;flex-direction:column;gap:var(--space-4)}.screen--center{align-items:center;justify-content:center;text-align:center}.stub-card{max-width:520px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10);background:var(--surface-raised);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-lg)}.stub-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.link-button{background:none;border:none;padding:0;color:var(--status-info);font-weight:var(--weight-semibold);text-decoration:underline;cursor:pointer}.link-button:hover{filter:brightness(1.1)}.import-screen{gap:var(--space-5)}.dropzone{width:100%;max-width:680px;margin:var(--space-12) auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12);text-align:center;background:var(--surface-sunken);border:2px dashed var(--surface-border-strong);border-radius:var(--radius-lg);transition:border-color .12s ease,background-color .12s ease,color .12s ease}.dropzone--active{border-color:var(--brand-coral);background:var(--surface-raised)}.dropzone__icon{font-size:40px;line-height:1;color:var(--text-secondary)}.dropzone--active .dropzone__icon{color:var(--brand-coral)}.dropzone__template{color:var(--status-info)}.import-parsing{display:flex;align-items:center;gap:var(--space-3)}.skeleton-table{display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-row{height:56px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-raised) 0%,var(--surface-sunken) 50%,var(--surface-raised) 100%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}@keyframes shimmer{to{background-position:-200% 0}}.review-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.review-header__lead{display:flex;flex-direction:column;gap:var(--space-3)}.review-header__actions{display:flex;align-items:center;gap:var(--space-3)}.review-pills{display:flex;gap:var(--space-2);flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:var(--space-2);height:26px;padding:0 var(--space-3);border-radius:var(--radius-pill);font-size:12px;line-height:16px;font-weight:var(--weight-medium)}.pill__dot{width:8px;height:8px;border-radius:var(--radius-pill);background:currentColor}.pill--success{background:var(--status-success-bg);color:var(--status-success)}.pill--warning{background:var(--status-warning-bg);color:var(--status-warning)}.pill--error{background:var(--status-error-bg);color:var(--status-error)}.needs-attention{padding:var(--space-2) var(--space-4);background:var(--status-warning-bg);color:var(--status-warning);border-radius:var(--radius-sm);font-size:13px;line-height:18px;font-weight:var(--weight-semibold)}.import-preview__group{margin-top:var(--space-4)}.import-preview__group h2{margin-bottom:var(--space-2)}.import-preview__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.import-preview__item{display:flex;gap:var(--space-3);align-items:baseline;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:13px;line-height:18px}.import-preview__item--error{background:var(--status-error-bg);color:var(--status-error)}.import-preview__item--warning{background:var(--status-warning-bg);color:var(--status-warning)}.import-preview__row{font-weight:var(--weight-semibold);white-space:nowrap;min-width:4.5rem}.review-table-wrap{border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);background:var(--surface-raised);overflow:hidden}.review-table{width:100%;border-collapse:collapse}.review-table thead th{text-align:left;text-transform:uppercase;padding:var(--space-3) var(--space-4);border-bottom:var(--border-hairline) solid var(--surface-border);font-weight:var(--weight-medium)}.review-row{height:56px;border-bottom:var(--border-hairline) solid var(--surface-border)}.review-table tbody tr:last-child{border-bottom:none}.review-row--unresolved{background:var(--status-error-bg)}.review-row--needs-offset{background:var(--status-warning-bg)}.review-cell{padding:0 var(--space-4);vertical-align:middle}.review-cell--status{width:56px}.review-cell--artist{max-width:200px}.review-cell--actions{width:140px;text-align:right;white-space:nowrap}.review-cell--actions .row-include{margin-right:var(--space-1)}.status-icon{font-size:16px;font-weight:var(--weight-bold)}.status-icon--ready{color:var(--status-success)}.status-icon--needs-offset{color:var(--status-warning)}.status-icon--unresolved{color:var(--status-error)}.track-resolved,.track-unresolved{display:inline-flex;align-items:center;gap:var(--space-2)}.album-thumb{flex:0 0 auto;width:24px;height:24px;border-radius:var(--radius-sm);object-fit:cover;display:block}.album-thumb--empty{background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border)}.time-cell{display:inline-flex}.time-cell__display{font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;background:none;border:var(--border-hairline) solid transparent;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);color:var(--text-primary);cursor:text}.time-cell__display:hover{background:var(--surface-sunken)}.time-cell__display--muted{color:var(--text-secondary)}.time-cell__display--warn{color:var(--status-warning)}.time-cell__input{width:64px;font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2)}.time-cell__input--error{border-color:var(--status-error)}.search-row>td{padding:0 var(--space-4) var(--space-3);background:var(--surface-sunken)}.search-pop{margin:0 auto;max-width:520px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border-strong);border-radius:var(--radius-md);box-shadow:var(--elevation-overlay);padding:var(--space-3)}.search-pop__head{display:flex;align-items:center;gap:var(--space-2)}.search-pop__input{flex:1 1 auto;height:var(--target-min);padding:0 var(--space-3);background:var(--surface-sunken);color:var(--text-primary);border:var(--border-hairline) solid var(--surface-border-strong);border-radius:var(--radius-md);font-size:15px}.search-pop__note{margin:var(--space-3) var(--space-1) var(--space-1)}.search-pop__list{list-style:none;margin:var(--space-2) 0 0;padding:0;max-height:280px;overflow-y:auto}.search-pop__result{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary)}.search-pop__result:hover{background:var(--surface-sunken)}.search-pop__result-body{display:flex;flex-direction:column}.search-pop__result .album-thumb{width:32px;height:32px}@keyframes spin{to{transform:rotate(360deg)}}.toast{display:inline-flex;align-items:center;gap:var(--space-3)}.toast__action{font-size:13px}.queue-screen{gap:var(--space-5)}.queue-layout{display:flex;align-items:flex-start;gap:var(--panel-gap)}.queue-main{flex:1 1 auto;min-width:0;max-width:760px;display:flex;flex-direction:column;gap:var(--space-4)}.queue-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.queue-header__lead{display:flex;flex-direction:column;gap:var(--space-2)}.queue-header__actions{display:flex;align-items:center;gap:var(--space-2)}.queue-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.queue-row{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-3) var(--space-4);background:var(--surface-raised);border:var(--border-focus) solid transparent;border-radius:var(--radius-md);transition:height .15s ease,opacity .15s ease,margin .15s ease,padding .15s ease,border-color .12s ease,background-color .12s ease}.queue-row--lifted{border-color:var(--brand-coral)}.queue-row--drag-over{border-color:var(--brand-coral);background:var(--surface-sunken)}.queue-row--removing{height:0;min-height:0;padding-top:0;padding-bottom:0;margin-top:calc(var(--space-2) * -1);opacity:0;overflow:hidden;pointer-events:none}.queue-row--played{opacity:.72}.queue-row__movers{flex:0 0 auto;display:inline-flex;flex-direction:column;gap:2px}.queue-row__move{width:var(--space-6);height:var(--space-5);min-height:0;padding:0;font-size:10px;line-height:1}.queue-row__move:disabled{opacity:.3}.queue-row__indicators{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-1);font-size:12px}.queue-row__ind{display:inline-flex;align-items:center;justify-content:center;min-width:16px}.queue-row__ind--ok{color:var(--status-success, #2ecc71)}.queue-row__ind--warn{color:var(--status-warning)}.queue-row__ind--played{color:var(--status-success, #2ecc71);font-weight:var(--weight-semibold)}.queue-filters{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.queue-filter{padding:var(--space-1) var(--space-3);font-size:13px;background:var(--surface-raised);color:var(--text-secondary);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-pill, 999px);cursor:pointer}.queue-filter--active{background:var(--brand-coral);color:#fff;border-color:var(--brand-coral)}.queue-filter-note,.queue-filter-empty{margin:0 0 var(--space-3)}.queue-row__handle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-8);padding:0;background:none;border:none;color:var(--text-muted);cursor:grab;font-size:16px;border-radius:var(--radius-sm)}.queue-row__handle:hover{background:var(--surface-sunken)}.queue-row--lifted .queue-row__handle{color:var(--brand-coral);cursor:grabbing}.queue-row__order{flex:0 0 auto;width:22px;font-variant-numeric:tabular-nums}.queue-row__thumb{flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius-sm);object-fit:cover;display:block}.queue-row__thumb--empty{background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border)}.queue-row__meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.queue-row__title,.queue-row__artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-row__time{flex:0 0 auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.queue-row__remove{flex:0 0 auto}.queue-row__hint{position:absolute;left:var(--space-4);bottom:calc(var(--space-2) * -1);transform:translateY(100%);z-index:1;padding:var(--space-1) var(--space-2);background:var(--status-warning-bg);color:var(--status-warning);border-radius:var(--radius-sm);white-space:nowrap}.round-summary{flex:0 0 320px;width:320px;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--elevation-raised)}.round-summary__rows{margin:0;display:flex;flex-direction:column}.round-summary__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-hairline) solid var(--surface-border)}.round-summary__row:last-child{border-bottom:none}.round-summary__row dt,.round-summary__row dd{margin:0}.round-summary__output{display:inline-flex;align-items:center;gap:var(--space-2)}.round-summary__helper{text-align:center}.queue-empty{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10);background:var(--surface-raised);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-lg)}.queue-empty__icon{font-size:40px;line-height:1}.queue-empty__actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-4);overflow-y:auto;background:#00000080}.add-song{width:100%;max-width:520px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.add-song__form{display:flex;flex-direction:column;gap:var(--space-3)}.add-song__row{display:flex;gap:var(--space-3)}.add-song__row .add-song__field{flex:1}.add-song__field{display:flex;flex-direction:column;gap:var(--space-1)}.add-song__label{color:var(--text-secondary);font-weight:var(--weight-semibold)}.add-song__field input,.add-song__field textarea{width:100%;padding:var(--space-2) var(--space-3);background:var(--surface-base);border:var(--border-hairline) solid var(--surface-border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit}.add-song__field input[aria-invalid=true],.add-song__field textarea[aria-invalid=true]{border-color:var(--status-error)}.add-song__error{color:var(--status-error)}.add-song__warn{color:var(--status-warning)}.add-song__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2)}.reresolve-art{width:100%;max-width:420px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.reresolve-art__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2)}@media (max-width: 768px){.queue-layout{flex-direction:column}.queue-main{max-width:none;width:100%}.round-summary{flex-basis:auto;width:100%}}.np-screen{position:relative;flex:1 1 auto;width:100%;max-width:none;min-height:calc(100vh - var(--app-bar-height));margin:0;padding:var(--space-8) var(--content-gutter);display:flex;align-items:flex-start;justify-content:center}.np-column{width:100%;max-width:720px;display:flex;flex-direction:column;gap:var(--space-8);padding-top:var(--space-4)}.np-live{width:100%;display:flex;flex-direction:column;gap:var(--space-8)}.np-primary{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}@media (min-width: 1024px){.np-column{max-width:1100px}.np-live{flex-direction:row;align-items:flex-start;justify-content:center}.np-primary{flex:1 1 auto;max-width:700px}.np-coach{flex:0 0 340px}}.np-zone-a{display:flex;gap:var(--space-6);align-items:center}.np-art{flex:0 0 auto;width:200px;height:200px;border-radius:var(--radius-lg);object-fit:cover;display:block}.np-art--empty{display:inline-flex;align-items:center;justify-content:center;font-size:48px;color:var(--text-on-accent);background:linear-gradient(135deg,var(--brand-coral),var(--brand-coral-press))}.np-meta{min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.np-meta__eyebrow{color:var(--brand-coral)}.np-meta__year-badge{display:inline-flex;align-self:flex-start;align-items:center;padding:var(--space-2) var(--space-4);margin-top:var(--space-2);margin-bottom:var(--space-1);border-radius:var(--radius-pill, 999px);background:var(--brand-coral);color:#fff;font-size:1.25rem;font-weight:var(--weight-bold, 700);letter-spacing:.07em;text-transform:uppercase;line-height:1.1;box-shadow:0 2px 12px #00000047}.np-meta__title{overflow:hidden;text-overflow:ellipsis}.np-meta__window{display:inline-flex;align-self:flex-start;margin-top:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-muted)}.np-zone-b{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.np-countdown{font-variant-numeric:tabular-nums;color:var(--text-primary);transition:color .2s ease}.np-countdown--warning{color:var(--status-warning)}.np-countdown--error{color:var(--status-error)}.np-countdown--ended,.np-countdown[data-buffering=true]{color:var(--text-muted)}.np-progress{width:100%;height:8px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.np-progress__fill{height:100%;border-radius:var(--radius-pill);background:var(--brand-coral);transition:width .15s linear,background-color .2s ease}.np-progress__fill--warning{background:var(--status-warning);animation:np-pulse 1s ease-in-out infinite}.np-progress__fill--error{background:var(--status-error);animation:np-pulse 1s ease-in-out infinite}@keyframes np-pulse{0%,to{opacity:1}50%{opacity:.6}}.np-clip-warn{color:var(--status-warning);letter-spacing:.02em}.np-clip-chip{align-items:center;text-align:center}.np-zone-c{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.np-transport{display:flex;align-items:center;gap:var(--space-6)}.np-tbtn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:var(--border-hairline) solid transparent;transition:background-color .12s ease,border-color .12s ease,filter .12s ease}.np-tbtn:disabled{opacity:.5;cursor:not-allowed}.np-tbtn--secondary{width:var(--target-min);height:var(--target-min);font-size:20px;background:var(--surface-raised);border-color:var(--surface-border-strong);color:var(--text-secondary)}.np-tbtn--secondary:not(:disabled):hover{background:var(--surface-sunken)}.np-tbtn--primary{width:var(--target-transport);height:var(--target-transport);font-size:26px;background:var(--brand-coral);color:var(--text-on-accent)}.np-tbtn--primary:not(:disabled):hover{background:var(--brand-coral-hover)}.np-tbtn--primary:not(:disabled):active{background:var(--brand-coral-press)}.np-tbtn__spinner{width:24px;height:24px;border:3px solid var(--text-on-accent);border-top-color:transparent;border-radius:var(--radius-pill);animation:spin .8s linear infinite}.np-reveal-btn{width:100%;max-width:340px}.np-hotkeys{text-align:center}.np-showmode-entry{display:flex;justify-content:center}.np-autotimer-live{display:flex;flex-direction:column;gap:var(--space-1);width:100%;max-width:340px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border)}.np-autotimer-live__row{display:flex;align-items:center;gap:var(--space-2)}.np-autotimer-live__label{flex:1 1 auto;color:var(--text-secondary)}.np-autotimer-live__off{font-style:italic}.np-extend{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.np-extend-btn{min-width:88px;font-variant-numeric:tabular-nums}.np-mic-live{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);align-self:center;background:var(--brand-coral);color:var(--text-on-accent);border-radius:var(--radius-pill);font-weight:700;letter-spacing:.04em;font-size:14px;text-transform:uppercase}.np-mic-live__dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--text-on-accent);animation:np-mic-pulse 1.2s ease-in-out infinite}.np-mic-live__countdown{font-variant-numeric:tabular-nums;opacity:.85}@keyframes np-mic-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.55}}.np-up-next{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"label  title   ordinal" "label  artist  ordinal";align-items:baseline;column-gap:var(--space-3);row-gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px)}.np-up-next__label{grid-area:label;color:var(--brand-coral);align-self:center}.np-up-next__title{grid-area:title}.np-up-next__artist{grid-area:artist}.np-up-next__ordinal{grid-area:ordinal;align-self:center}.np-reveal-banner{align-items:center;text-align:center;padding:var(--space-5) var(--space-6)}.np-sdk-drop,.np-track-unavailable{flex-direction:row;align-items:center;justify-content:space-between}.np-complete-card{max-width:520px;display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-10);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--elevation-raised);text-align:center}.np-complete-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.np-history-tab{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:30;padding:var(--space-4) var(--space-2);writing-mode:vertical-rl;background:var(--surface-raised);color:var(--brand-coral);border:var(--border-hairline) solid var(--surface-border);border-right:none;border-radius:var(--radius-md) 0 0 var(--radius-md);font-size:13px;font-weight:var(--weight-semibold);letter-spacing:.04em;box-shadow:var(--elevation-raised)}.np-history-tab:hover{background:var(--surface-sunken)}.np-history-drawer{position:fixed;top:var(--app-bar-height);right:0;bottom:0;z-index:35;width:360px;max-width:92vw;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border-left:var(--border-hairline) solid var(--surface-border);box-shadow:var(--elevation-overlay);animation:np-slide-in .16s ease}@keyframes np-slide-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.np-history-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.np-history-drawer__input{width:100%;height:36px;padding:0 var(--space-3);background:var(--surface-sunken);color:var(--text-primary);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);font-size:13px}.np-history-drawer__empty{padding:var(--space-4) 0}.np-history-drawer__hint{margin-top:auto;padding-top:var(--space-3)}.np-history-list{list-style:none;margin:0;padding:0;flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1)}.np-history-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-sunken)}.np-history-row--current{border-left:3px solid var(--brand-coral);padding-left:calc(var(--space-3) - 3px)}.np-history-row__thumb{flex:0 0 auto;width:32px;height:32px;border-radius:var(--radius-sm);object-fit:cover;display:block}.np-history-row__thumb--empty{background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border)}.np-history-row__meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.np-history-row__title,.np-history-row__artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-history-row__skipped{color:var(--status-warning);font-weight:var(--weight-medium)}.np-history-row__time{flex:0 0 auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media (max-width: 768px){.np-zone-a{flex-direction:column;text-align:center}.np-meta{align-items:center}}.tune-screen{flex:1 1 auto;width:100%;max-width:none;margin:0;padding:var(--space-6) var(--content-gutter);display:flex;align-items:flex-start;justify-content:center}.tune-column{width:100%;max-width:880px;display:flex;flex-direction:column;gap:var(--space-6)}.tune-sdk-drop{flex-direction:row;align-items:center;justify-content:space-between}.tune-zone-a{display:flex;flex-direction:column;gap:var(--space-4)}.tune-export-row{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.tune-export{min-height:36px;padding:var(--space-2) var(--space-4)}.tune-nav{display:flex;align-items:center;gap:var(--space-4)}.tune-nav__btn{flex:0 0 auto;width:var(--target-min);height:var(--target-min);font-size:22px}.tune-identity{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);text-align:center}.tune-identity__overline{color:var(--brand-coral)}.tune-identity__row{display:flex;align-items:center;gap:var(--space-4);min-width:0}.tune-identity__art{flex:0 0 auto;width:64px;height:64px;border-radius:var(--radius-md);object-fit:cover;display:block}.tune-identity__art--empty{display:inline-flex;align-items:center;justify-content:center;font-size:28px;color:var(--text-on-accent);background:linear-gradient(135deg,var(--brand-coral),var(--brand-coral-press))}.tune-identity__art--error{background:var(--status-error-bg);color:var(--status-error)}.tune-identity__meta{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.tune-identity__titlerow{display:flex;align-items:center;gap:var(--space-2);min-width:0}.tune-identity__title,.tune-identity__artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:480px}.tune-identity__hint{color:var(--status-warning)}.tune-dot{flex:0 0 auto;width:12px;height:12px;border-radius:var(--radius-pill)}.tune-dot--tuned{background:var(--status-success)}.tune-dot--untuned{background:var(--status-warning)}.tune-dot--no-track{background:var(--status-error)}.tune-progress{align-self:center;display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--surface-sunken);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-pill)}.tune-progress--done{background:var(--status-success-bg);border-color:var(--status-success)}.tune-progress__label{color:var(--text-primary);white-space:nowrap}.tune-progress--done .tune-progress__label{color:var(--status-success)}.tune-progress__meter{width:128px;height:6px;border-radius:var(--radius-pill);background:var(--surface-raised);overflow:hidden}.tune-progress__fill{display:block;height:100%;border-radius:var(--radius-pill);background:var(--brand-coral);transition:width .2s ease}.tune-progress--done .tune-progress__fill{background:var(--status-success)}.tune-zone-b{display:flex;flex-direction:column;gap:var(--space-3)}.tune-scrubber__label{margin-bottom:var(--space-1)}.tune-rail{position:relative;height:12px;margin:var(--space-6) 0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);touch-action:none;cursor:pointer}.tune-rail--disabled{opacity:.6;cursor:not-allowed}.tune-rail__elapsed{position:absolute;top:0;left:0;height:100%;border-radius:var(--radius-pill);background:var(--surface-raised)}.tune-rail__window{position:absolute;top:0;height:100%;border-radius:var(--radius-pill)}.tune-rail__window--tuned{background:var(--brand-coral);opacity:.9}.tune-rail__window--provisional{background:#ff6b4a2e;border:1.5px dashed var(--brand-coral)}.tune-rail__playhead{position:absolute;top:-8px;height:28px;width:2px;margin-left:-1px;background:var(--text-primary);border-radius:1px;pointer-events:none;transition:left .15s linear}.tune-rail__playhead-cap{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:8px;height:8px;border-radius:var(--radius-pill);background:var(--text-primary)}.tune-rail__handle{position:absolute;top:-8px;height:28px;width:12px;margin-left:-6px;border-radius:var(--radius-sm);background:var(--brand-coral);border:var(--border-hairline) solid var(--surface-border);box-shadow:inset 0 0 0 2px var(--text-on-accent);cursor:grab;touch-action:none}.tune-rail__handle:before{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px}.tune-rail__handle:active{cursor:grabbing}.tune-rail__handle--provisional{background:var(--surface-raised);border:2px dashed var(--brand-coral);box-shadow:none}.tune-rail__handle-grip{position:absolute;top:0;right:0;bottom:0;left:0}.tune-time-row{display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tune-time-row__now{color:var(--text-primary)}.tune-clip-readout{text-align:center;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tune-clip-end-note{text-align:center;color:var(--status-warning)}.tune-zone-c{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.tune-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-10);width:100%;flex-wrap:wrap}.tune-transport{display:flex;align-items:center;gap:var(--space-4)}.tune-nudge{font-family:var(--font-mono);font-size:13px;font-weight:var(--weight-semibold)}.tune-setprev{display:flex;flex-direction:column;gap:var(--space-2);min-width:220px}.tune-transport__hint{text-align:center}.tune-cliplen{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2)}.tune-cliplen__label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold)}.tune-cliplen__input-wrap{position:relative;display:inline-flex;align-items:center}.tune-cliplen__input{width:72px;font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-6) var(--space-1) var(--space-2);text-align:right}.tune-cliplen__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px}.tune-cliplen__input--error{border-color:var(--status-error)}.tune-cliplen__input:disabled{opacity:.6;cursor:not-allowed}.tune-cliplen__unit{position:absolute;right:var(--space-2);pointer-events:none;font-family:var(--font-mono)}.tune-cliplen__hint{min-height:1.2em}.tune-preview-pill{align-items:center;text-align:center}.tune-save-row{display:flex;gap:var(--space-3);width:100%;margin-top:var(--space-2)}.tune-save{flex:0 0 160px;height:48px}.tune-save-next{flex:1 1 auto;height:48px}.tune-hotkeys{text-align:center}.tags-editor{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px);margin-top:var(--space-2)}.tags-editor__label{display:flex;flex-direction:column;gap:var(--space-1);font-weight:var(--weight-semibold)}.tags-editor__input{width:100%;font:inherit;font-size:14px;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.tags-editor__chips,.queue-row__tags{display:flex;flex-wrap:wrap;gap:var(--space-1);list-style:none;margin:0;padding:0}.queue-row__tags{margin-top:2px}.tags-editor__chip,.queue-row__tag{font-size:11px;line-height:1.4;padding:1px var(--space-2);border-radius:var(--radius-pill, 999px);background:var(--surface-sunken);color:var(--text-secondary)}.host-coach-editor,.identity-editor{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px);margin-top:var(--space-2)}.tune-scope{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px)}.tune-scope__toggle{display:inline-flex;border:var(--border-hairline) solid var(--surface-border-strong);border-radius:var(--radius-pill, 999px);overflow:hidden}.tune-scope__btn{padding:var(--space-1) var(--space-3);background:none;border:none;color:var(--text-secondary);font:inherit;font-size:13px;cursor:pointer}.tune-scope__btn--active{background:var(--brand-coral);color:#fff}.tune-scope__hint{flex:1 1 200px}.identity-editor__heading{margin:0}.identity-editor__row{display:flex;gap:var(--space-3);flex-wrap:wrap}.identity-editor__row .identity-field__label{flex:1;min-width:180px}.identity-field__label{display:flex;flex-direction:column;gap:var(--space-1);font-weight:var(--weight-semibold)}.identity-field__input{width:100%;font-family:var(--font-sans, inherit);font-size:14px;line-height:1.4;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.identity-field__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px}.identity-editor__dup{color:var(--status-warning);margin:0}.identity-editor__track{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-2);border-top:var(--border-hairline) solid var(--surface-border)}.identity-editor__track-status{color:var(--text-secondary)}.identity-editor__replace-row{display:flex;gap:var(--space-2);align-items:stretch}.identity-editor__replace-row .identity-field__input{flex:1}.identity-editor__replace-btn{white-space:nowrap}.identity-editor__error{color:var(--status-error)}.host-coach-editor__heading,.host-coach-editor__sub{margin:0}.host-coach-field{display:flex;flex-direction:column;gap:var(--space-1)}.host-coach-field__label{display:flex;flex-direction:column;gap:var(--space-1);font-weight:var(--weight-semibold)}.host-coach-field__input{width:100%;min-height:56px;resize:vertical;font-family:var(--font-sans, inherit);font-size:14px;line-height:1.4;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.host-coach-field__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px}.host-coach-field__input:disabled{opacity:.6;cursor:not-allowed}.host-coach-field__input--over{border-color:var(--status-warning)}.host-coach-field__meta{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3)}.host-coach-field__counter{font-variant-numeric:tabular-nums}.host-coach-field__counter--over{color:var(--status-warning);font-weight:var(--weight-semibold)}.host-coach-flag-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);font:inherit;font-weight:var(--weight-semibold);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border);background:var(--surface-sunken);color:var(--text-secondary);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.host-coach-flag-toggle:hover:not(:disabled){border-color:var(--status-warning);color:var(--text-primary)}.host-coach-flag-toggle:focus-visible{outline:2px solid var(--brand-coral);outline-offset:1px}.host-coach-flag-toggle:disabled{opacity:.6;cursor:not-allowed}.host-coach-flag-toggle--on{background:var(--status-warning-bg);border-color:var(--status-warning);color:var(--status-warning)}.host-coach-field__ai{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.host-coach-field__ai-btn{font:inherit;font-size:12px;line-height:1.2;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--surface-border);background:var(--surface-sunken);color:var(--text-primary);cursor:pointer;transition:background .12s ease,border-color .12s ease,opacity .12s ease}.host-coach-field__ai-btn:hover:not(:disabled){border-color:var(--brand-coral)}.host-coach-field__ai-btn:focus-visible{outline:2px solid var(--brand-coral);outline-offset:1px}.host-coach-field__ai-btn:disabled{opacity:.5;cursor:not-allowed}.host-coach-field__ai-btn--primary{border-color:var(--brand-coral);color:var(--brand-coral);font-weight:var(--weight-semibold)}.host-coach-field__ai-btn--primary:hover:not(:disabled){background:var(--brand-coral);color:#fff}.host-coach-field__ai-error{color:var(--status-warning);flex-basis:100%}.reveal-media-editor{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px);margin-top:var(--space-2)}.reveal-media-editor__heading,.reveal-media-editor__sub{margin:0}.reveal-media-editor__field{display:flex;flex-direction:column;gap:var(--space-1)}.reveal-media-editor__label{display:flex;flex-direction:column;gap:var(--space-1);font-weight:var(--weight-semibold)}.reveal-media-editor__input{width:100%;font-family:var(--font-sans, inherit);font-size:14px;line-height:1.4;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.reveal-media-editor__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px}.reveal-media-editor__input:disabled{opacity:.6;cursor:not-allowed}.reveal-media-editor__input--invalid{border-color:var(--status-error, var(--status-warning))}.reveal-media-editor__detected{margin:0;font-variant-numeric:tabular-nums}.reveal-media-editor__hint{margin:0}.reveal-media-editor__error{margin:0;color:var(--status-error, var(--status-warning))}.album-art-url-editor{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px);margin-top:var(--space-2)}.album-art-url-editor__heading,.album-art-url-editor__sub{margin:0}.album-art-url-editor__field{display:flex;flex-direction:column;gap:var(--space-1)}.album-art-url-editor__label{display:flex;flex-direction:column;gap:var(--space-1);font-weight:var(--weight-semibold)}.album-art-url-editor__input{width:100%;font-family:var(--font-sans, inherit);font-size:14px;line-height:1.4;background:var(--surface-sunken);color:var(--text-primary);border:var(--border-focus) solid var(--focus-ring);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.album-art-url-editor__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px}.album-art-url-editor__input:disabled{opacity:.6;cursor:not-allowed}.album-art-url-editor__input--invalid{border-color:var(--status-error, var(--status-warning))}.album-art-url-editor__hint{margin:0}.album-art-url-editor__error{margin:0;color:var(--status-error, var(--status-warning))}.np-coach{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md, 8px)}.np-coach__heading{color:var(--text-secondary);margin:0}.np-coach__section{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border-radius:var(--radius-sm)}.np-coach__label{text-transform:uppercase;letter-spacing:.04em;font-weight:var(--weight-semibold)}.np-coach__label--accent{color:var(--brand-coral)}.np-coach__text{margin:0}.np-coach__tease{border-left:3px solid var(--brand-coral);padding-left:var(--space-3)}.queue-locked-banner{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.queue-locked-banner__text{flex:1}.queue-locked-banner__actions{display:flex;gap:var(--space-2);flex-shrink:0}.queue-row--locked .queue-row__handle,.queue-row--locked .queue-row__remove{opacity:.4;cursor:not-allowed}.queue-row--locked{background:var(--surface-sunken)}.tune-no-track{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-10);text-align:center;background:var(--surface-sunken);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-lg)}.tune-no-track__actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-2)}.tune-empty{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10);background:var(--surface-raised);border:var(--border-hairline) dashed var(--surface-border-strong);border-radius:var(--radius-lg)}.tune-empty__icon{font-size:40px;line-height:1}.pill--link{border:none;cursor:pointer}.pill--link:hover{filter:brightness(1.1)}.queue-row__tune{flex:0 0 auto;min-height:36px;padding:var(--space-2) var(--space-3);opacity:0;transition:opacity .12s ease}.queue-row:hover .queue-row__tune,.queue-row:focus-within .queue-row__tune,.queue-row__tune:focus-visible{opacity:1}@media (max-width: 768px){.tune-controls{flex-direction:column;gap:var(--space-4)}.tune-setprev{width:100%}.queue-row__tune{opacity:1}}@media (prefers-reduced-motion: reduce){.tune-rail__playhead,.tune-progress__fill{transition:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.conn-chip__spinner{animation:none;border-top-color:var(--status-warning);opacity:.6}.np-progress__fill--warning,.np-progress__fill--error{animation:none;opacity:1}}.auth-screen{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--surface-bg)}.auth-card{width:100%;max-width:440px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--elevation-raised);display:flex;flex-direction:column;gap:var(--space-5)}.auth-card__mark{display:flex;align-items:center;gap:var(--space-2)}.auth-card__mark-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--brand-coral)}.auth-card__title{margin:0}.auth-card__subtitle{margin:var(--space-2) 0 0;color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-field{display:flex;flex-direction:column;gap:var(--space-1)}.auth-field__label{font-weight:var(--weight-semibold)}.auth-field__input{width:100%;height:var(--target-min);padding:0 var(--space-3);background:var(--surface-sunken);color:var(--text-primary);border:var(--border-hairline) solid var(--surface-border-strong);border-radius:var(--radius-md);font:inherit;font-size:15px}.auth-field__input:focus{outline:2px solid var(--brand-coral);outline-offset:1px;border-color:var(--brand-coral)}.auth-field__input[aria-invalid=true]{border-color:var(--status-error)}.auth-field__input:disabled{opacity:.6;cursor:not-allowed}.auth-field__hint{min-height:1.2em;color:var(--text-secondary)}.auth-field__hint--error{color:var(--status-error);font-weight:var(--weight-semibold)}.auth-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.auth-footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;color:var(--text-secondary)}.auth-footer__row{display:flex;gap:var(--space-2);align-items:baseline;flex-wrap:wrap;justify-content:center}.auth-link{background:none;border:none;padding:0;color:var(--status-info);font:inherit;font-weight:var(--weight-semibold);text-decoration:underline;cursor:pointer}.auth-link:hover{filter:brightness(1.1)}.auth-link--quiet{color:var(--text-secondary);text-decoration:none;font-weight:var(--weight-medium)}.auth-link--quiet:hover{color:var(--text-primary);text-decoration:underline}.signed-in-menu{position:relative;display:inline-flex}.signed-in-menu__trigger{display:inline-flex;align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-3);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-pill);background:var(--surface-bg);color:var(--text-secondary);font:inherit;font-size:12px;font-weight:var(--weight-medium);letter-spacing:.02em;cursor:pointer;max-width:220px}.signed-in-menu__trigger:hover{color:var(--text-primary);border-color:var(--surface-border-strong)}.signed-in-menu__avatar{width:8px;height:8px;border-radius:var(--radius-pill);background:var(--brand-coral);flex:0 0 auto}.signed-in-menu__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.signed-in-menu__popover{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:160px;background:var(--surface-raised);border:var(--border-hairline) solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--elevation-raised);padding:var(--space-1);z-index:50}.signed-in-menu__item{width:100%;display:block;text-align:left;padding:var(--space-2) var(--space-3);background:none;border:none;color:var(--text-primary);font:inherit;font-size:14px;border-radius:var(--radius-sm);cursor:pointer}.signed-in-menu__item:hover:not(:disabled){background:var(--surface-sunken)}.signed-in-menu__item:disabled{opacity:.6;cursor:not-allowed}.auth-field__input--code{font-family:var(--font-mono);letter-spacing:.4em;font-variant-numeric:tabular-nums;text-align:center;font-size:18px}.auth-federation{display:flex;flex-direction:column;gap:var(--space-3)}.auth-federation__btn{width:100%;height:var(--target-min);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-md);border:var(--border-hairline) solid var(--surface-border-strong);font:inherit;font-size:15px;font-weight:var(--weight-semibold);cursor:pointer}.auth-federation__btn:focus-visible{outline:2px solid var(--brand-coral);outline-offset:2px}.auth-federation__btn:disabled{opacity:.55;cursor:not-allowed}.auth-federation__btn--google{background:#fff;color:#1f1f1f;border-color:#d8dce3}.auth-federation__btn--google:hover:not(:disabled){background:#f5f7fa}.auth-federation__btn--apple{background:#000;color:#fff;border-color:#000}.auth-federation__btn--apple:hover:not(:disabled){background:#1a1a1a}.auth-federation__logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.auth-federation__logo--apple{color:#fff}.auth-federation__label{display:inline-flex}.auth-federation__separator{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted);text-transform:uppercase;font-size:12px;letter-spacing:.08em;margin-top:var(--space-1)}.auth-federation__separator:before,.auth-federation__separator:after{content:"";flex:1 1 auto;height:1px;background:var(--surface-border)}
