/* LIVING TABLE · presentation layer over the existing PRESSBOX game.
   Remove this stylesheet and restore the checkpoint to roll back the UI.
   No data, scoring, clocks, storage or sports logic lives here. */
:root {
  --table-stage:var(--black); --table-surface:var(--navy);
  --table-paper:var(--paper); --table-text:var(--ink);
  --table-action:var(--brand-blue); --table-accent:var(--brand-orange);
  --table-edge:#b9c6d8; --table-muted:#516078; --table-light:#c4d1e4;
  --table-space:16px; --table-radius:4px;
  --table-ease:cubic-bezier(.18,.86,.26,1); --table-press:140ms;
  --table-shadow:0 2px 0 var(--table-edge),0 5px 0 var(--brand-ink);
}
.shell{width:min(1240px,100%);padding-inline:32px}
.topbar{height:76px}.brand{width:96px}.brand img{width:54px}
.topbar-right{gap:4px}.nav-btn.active{box-shadow:inset 0 -2px var(--table-accent)}
.primary-btn,.primary-btn.orange{background:var(--table-action);color:var(--paper);border-color:transparent}
.primary-btn:hover:not(:disabled),.primary-btn.orange:hover:not(:disabled){background:var(--table-action);filter:brightness(1.1);transform:translateY(-1px)}
button:active:not(:disabled){translate:0 1px}
button,a,select,input{scroll-margin-block:90px 100px}
.small-btn,.primary-btn,.icon-btn,select,input{border-radius:var(--table-radius)}
.home-heading{margin:20px 0 16px;align-items:center;gap:20px}
.home-heading>div{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:0 22px}
.home-heading h1{grid-column:1;grid-row:1/3}.home-wordmark{width:180px}
.home-heading .eyebrow{grid-column:2;font-size:9px;margin:0 0 5px;align-self:end}
.brand-tagline{grid-column:2;font-size:22px;margin:0;align-self:start}
.home-objective{font-size:12px;max-width:280px}.home-objective br{display:none}
.sport-heading{margin:14px 0 6px;padding-top:16px;border-top:1px solid var(--line)}
.sport-switch{border-radius:4px;gap:2px;padding:3px;background:var(--table-surface)}
.sport-switch button{font:700 19px/1 var(--display);min-height:40px;min-width:76px;padding:9px 18px;letter-spacing:.04em}
.sport-switch button[aria-pressed=true]{background:var(--brand-cream);color:var(--table-stage);box-shadow:0 2px var(--brand-ink)}
.sport-scope{font-size:11px;margin-bottom:14px}.sport-heading p{font-size:12px}
.daily-ticket{border-radius:var(--table-radius);box-shadow:var(--table-shadow);border:1px solid var(--table-edge);overflow:visible}
.daily-ticket:before{display:none}.ticket-top{padding:10px 20px;background:var(--table-surface);border-top:3px solid var(--table-accent);border-radius:3px 3px 0 0;background-image:none}
.league-badge{font-size:16px}.ticket-top>b{font-size:23px}.ticket-top>span:nth-child(2){font-size:9px}
.daily-ticket-body{padding:17px 20px 14px!important}.daily-card-title{margin-bottom:16px;align-items:center}
.daily-card-title h2{font-size:30px}.daily-card-title>span{font-size:12px;font-variant-numeric:tabular-nums}
.daily-modes{gap:12px}.daily-mode-ticket{padding:16px;background:var(--table-paper)!important;border:1px solid var(--table-edge);border-top:3px solid var(--table-text);border-radius:3px;box-shadow:0 2px var(--table-edge);transition:box-shadow .18s,translate .18s}
.daily-mode-ticket.flagship{border-top-color:var(--table-accent)}
.daily-mode-ticket h3{font-size:30px;line-height:1;margin:8px 0 5px}
.daily-mode-ticket>p{font-size:13px;margin:0 0 5px}.daily-mode-ticket>small{font-size:11px;line-height:1.4}
.ticket-mode-number{font-size:10px;letter-spacing:.1em;display:flex;align-items:center;gap:8px}
.ticket-mode-number:after{content:'';width:6px;height:6px;border:1px solid currentColor;border-radius:50%;margin-left:auto}
.daily-mode-ticket[data-ticket-state="Submitted"] .ticket-mode-number:after{background:var(--blue);border-color:var(--blue)}
.daily-mode-ticket[data-ticket-state="In progress"] .ticket-mode-number:after{background:var(--table-accent);border-color:var(--table-accent)}
.mode-sketch{height:48px;width:100%;margin:13px 0 5px;display:block;color:var(--table-muted)}
.mode-sketch .sketch-card{fill:var(--table-paper);stroke:currentColor;stroke-width:1.4}
.mode-sketch .sketch-ink{fill:var(--table-surface)}.mode-sketch .sketch-action{fill:var(--brand-blue);stroke:var(--brand-blue)}
.mode-sketch .sketch-line{stroke:currentColor;stroke-width:1.4;fill:none}.mode-sketch .sketch-mark{stroke:var(--table-paper);stroke-width:2;fill:none}
.mode-ticket-bottom{padding-top:8px;gap:8px}.mode-status{font-size:11px;min-height:17px}
.mode-ticket-bottom button{width:100%;background:var(--table-action);border-color:var(--table-action);color:var(--paper);font-size:13px;min-height:44px;justify-content:space-between}
.mode-ticket-bottom button:hover:not(:disabled){background:var(--table-action);filter:brightness(1.1)}
.earned-perfect{box-shadow:inset 0 -2px var(--gold),0 2px var(--table-edge)}
.sweep-home{padding-top:17px;gap:16px}.sweep-home b{font:700 19px/1.1 var(--display);letter-spacing:.025em}.sweep-home small{font-size:11px;margin-top:4px}
.sweep-home .small-btn{white-space:nowrap;background:var(--table-surface);color:var(--paper);border-color:var(--table-surface);font-size:12px}
.daily-meta{margin-top:6px;font-size:10px}.ticket-tear{padding:10px 20px;border-radius:0 0 3px 3px}.ticket-tear>b{font-size:25px}.ticket-tear>span{font-size:9px}
.unlimited-ticket{margin-top:18px;padding:16px 20px;gap:16px;border-top:2px solid var(--table-accent);background:var(--table-surface);border-radius:4px}
.unlimited-ticket h2{font-size:29px;margin:3px 0}.unlimited-ticket p{font-size:12px}.unlimited-ticket .eyebrow{font-size:8px}
.unlimited-ticket .primary-btn{min-width:175px}.unlimited-controls{gap:12px}.mode-select{font-size:10px;letter-spacing:.03em}
.unlimited-controls select,.practice-controls select{min-height:44px;font-size:12px;background:var(--table-stage);color:var(--paper);border:1px solid #71829c}
.player-record{margin-top:20px;padding:16px 0}.record-values b{font-size:29px}.record-values span{font-size:10px}
.menu-bottom{padding-block:10px}.page-foot{margin-top:20px;padding-block:20px}.footer-brand img{width:88px}

/* BoardShell: one compact, readable table, with decisions beside the lineup. */
.modebar{margin:12px 0 0;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.modebar #countdown{font-size:11px;font-variant-numeric:tabular-nums}
.game-sport-switch{float:right;margin:5px 0 0 20px}.game-sport-switch .sport-switch button{min-width:62px;min-height:36px;font-size:16px}
.game-intro{margin:8px 0 8px;min-height:46px;gap:18px}.game-intro h1{font-size:32px;line-height:1.05;margin-top:4px}
.round-label{font-size:10px;line-height:1.5;letter-spacing:.06em;max-width:none}
.mode-instructions{clear:both;font-size:13px;line-height:1.5;max-width:none;margin:8px 0 14px;color:var(--table-light)}
.practice-controls{gap:8px}.practice-controls>label:not(.mode-select){font-size:11px}.practice-controls .mode-select{gap:3px}
.board-heading{margin:0 0 8px;min-height:44px}.board-heading h2{font-size:18px}.board-heading p{font-size:11px}.head-actions{gap:12px}
.head-actions .text-btn{font-size:12px}.head-actions .icon-btn{width:44px;height:44px}
.mesh-arena{padding:12px 16px 8px;border:1px solid #71829c;background:var(--table-surface);border-radius:4px;box-shadow:inset 3px 0 #71829c33,0 4px var(--brand-ink)}
.arena-rim{padding:0 0 12px;margin-bottom:0;min-height:35px;font-size:9px;letter-spacing:.08em}
.arena-rim b{font-size:27px}.arena-rim i{font-size:9px}.board{gap:12px}
.press-clue{min-height:140px;padding:10px 12px;border:1px solid var(--table-edge);border-bottom:2px solid #abbace;border-radius:3px;box-shadow:0 2px var(--table-edge),0 4px #14213b44;transform:none;background:var(--table-paper)}
.tile-top{gap:7px;padding-bottom:6px;min-height:25px}.tile-index{font-size:20px}.category-type{font-size:8px;line-height:1.2;letter-spacing:.055em;max-width:calc(100% - 35px);overflow-wrap:anywhere}
.print-mark{font-size:16px;margin-left:auto}.tile-content{margin:7px 0 8px}.tile-content strong{font:700 23px/1.06 var(--display);letter-spacing:0;overflow-wrap:anywhere}
.tile-content small{font-size:11px;line-height:1.35;margin-top:5px;display:block;color:var(--table-muted)}
.tile-state{font-size:10px;line-height:1.3;padding:3px 6px;letter-spacing:.02em;transform:none}
.match-names{font-size:11px;line-height:1.3;margin-top:5px;min-height:14px;color:var(--table-muted);overflow-wrap:anywhere}
.press-clue.covered{border-left:4px solid var(--card-tone)}.press-clue.collision{border-left:4px solid var(--red)}
.lineup-heading{padding:14px 0 8px;margin:0;min-height:36px}.lineup-heading>span:first-child{font:600 18px/1 var(--display)}
.rail-search{min-height:36px;font-size:12px;padding:3px 0}.lineup-shelf{padding-bottom:7px;border:0}.lineup-shelf:before{display:none}
.selected-list{gap:12px;padding:0 0 5px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.press-player{width:100%;max-width:none;height:172px;min-height:172px;transform:none;border:2px solid var(--paper);border-radius:3px;box-shadow:1px 2px var(--table-edge),2px 4px var(--paper),3px 6px var(--brand-ink)}
.press-player[data-corner="1"]{border-radius:3px}.card-art{inset:3px;border-radius:0}.card-art:after{opacity:.12}.card-finish{inset:3px}
.athlete-info{padding:25px 13px 29px;justify-content:center;min-height:0}
.player-serial{font-size:8px;top:8px;left:10px}.locked-label{font-size:7px;right:9px;top:9px}
.player-given{font-size:12px;line-height:1.2}.player-family{font-size:27px;line-height:1;display:block;white-space:normal;overflow-wrap:anywhere;letter-spacing:.1px}
.player-monogram{font-size:78px;top:17px;right:10px;opacity:.12}.player-years{font-size:9px;line-height:1.3;margin-top:6px}
.piece-notches{margin:7px 0 4px;gap:4px}.piece-notches i{width:19px;height:19px;font-size:10px;line-height:17px}
.player-summary{font-size:9px}.contribution-patch{bottom:10px;left:10px;right:10px;min-height:20px;font-size:11px}.card-set,.card-register{display:none}
.remove-player{width:44px;height:44px;top:0;right:0;font-size:23px}.remove-player span{pointer-events:none}
.empty-slot{border:1px dashed #71829c;background:transparent;box-shadow:inset 0 0 0 5px #10162433;justify-content:center;gap:5px}
.empty-number{font-size:46px;line-height:1}.empty-slot strong{font-size:18px}.empty-slot small{font-size:11px}.empty-slot .player-serial{font-size:8px}
.lineup-search{padding-top:12px;margin-top:7px;border-top:1px solid var(--line)}
.picker-area{margin:0;z-index:15}.picker-label{font-size:12px;margin-bottom:6px;color:var(--table-light)}
.picker-wrap input{height:48px;font-size:15px;background:var(--table-stage);color:var(--paper);border:1px solid #71829c}
.picker-wrap input:focus{border-color:var(--brand-cream)}.picker-wrap input::placeholder{color:var(--muted)}
.picker-wrap .search-icon{stroke:var(--table-light)}.microcopy{font-size:11px;line-height:1.4;margin-top:6px}
.suggestions{max-height:min(280px,40dvh);border:1px solid #71829c;box-shadow:0 8px 20px #0c131866}.suggestion{min-height:48px;font-size:14px}.suggestion small{font-size:11px}
.arena-caption{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:11px;gap:8px;min-height:31px}.arena-caption>span:last-child{white-space:nowrap;font-size:10px}
.progress-line{height:3px;margin-top:10px}.game-footer{margin-top:12px;padding:14px 16px;gap:16px;background:var(--table-surface);border:1px solid #71829c;border-radius:4px}
.submit-btn{min-width:235px;min-height:48px;font-size:14px}.submission-notes{text-align:right}.submission-notes p{font-size:11px;line-height:1.4}.submission-notes .text-btn{font-size:11px;min-height:36px;padding:4px 0}
.scope-note{font-size:10px;line-height:1.5;margin-top:10px}.under-board{margin-top:10px;align-items:center;gap:12px}.under-board p,.under-board .text-btn{font-size:11px}
.first-pick-tip{margin:0 0 10px;padding:9px 12px;border-color:var(--table-accent);background:var(--table-surface)}.first-pick-tip p{font-size:12px}.first-pick-tip b{font-size:17px;color:var(--brand-cream)}
.inspection-strip{margin-top:10px;padding-block:4px}.inspection-strip p{font-size:12px}

/* Mode differences share the same card anatomy and action dock. */
.save-panel{padding-top:14px;margin-top:10px;border-top:1px solid var(--line)}
.save-steps{gap:12px;font-size:11px;margin-bottom:10px}.save-steps b{border-radius:2px;font-size:10px;min-width:23px;text-align:center}
.save-steps [aria-current] b{background:var(--table-action);border-color:var(--table-action);color:var(--paper)}
.save-panel #saveSummary{font-size:13px;line-height:1.5;margin:6px 0 10px}.save-panel .picker-area{margin-top:10px}
.save-panel .save-cancel-actions{gap:22px}.save-cancel-actions button{font-size:12px}
[data-game-mode="save"] .press-player{min-height:232px;height:auto}
[data-game-mode="save"] .athlete-info{min-height:164px;flex:1;padding-bottom:29px}
.save-card-controls{padding:7px 9px;gap:4px;background:var(--table-stage);border-top:1px solid var(--paper)}
.save-card-controls>span{font-size:9px;letter-spacing:.08em}.save-card-controls button{min-height:40px;border-color:#71829c;font-size:12px;border-radius:3px;padding:7px 4px}
.save-card-controls button[aria-pressed=true]{border-color:var(--brand-cream);background:var(--table-action);color:var(--paper)}
.save-replacing{outline:2px solid var(--table-accent);outline-offset:3px;transform:translateY(-3px)}
.shortlist-cards{gap:12px;margin:16px 0 5px}.shortlist-card{min-height:140px;padding:13px;background:var(--table-stage);color:var(--brand-cream);border:1px solid #71829c;border-bottom:3px solid #71829c;border-radius:3px;box-shadow:0 3px var(--brand-ink);transition:transform .16s var(--table-ease),border-color .16s,background .16s}
.shortlist-card strong{font-size:26px;line-height:1.05;margin:17px 0 14px;letter-spacing:0;z-index:1}
.shortlist-card small{font-size:10px;letter-spacing:.07em;color:var(--table-light)}.shortlist-card .player-serial{font-size:9px}
.shortlist-card.is-selected{transform:translateY(-3px);background:var(--table-surface);border-color:var(--brand-cream);box-shadow:inset 0 -3px var(--brand-cream),0 3px var(--brand-ink)}
.shortlist-card.is-selected small{color:var(--brand-cream)}.shortlist-card.is-selected small:before{content:'✓ ';font-weight:700}
.shortlist-card.not-chosen{opacity:.55}.neutral-monogram{font:600 11px var(--body);right:12px;top:13px;opacity:1;color:var(--table-light)}
.blind-clue{min-height:140px}.blind-clue .tile-state{font-size:9px;letter-spacing:.02em;white-space:normal;border-style:dashed;color:var(--table-muted)}
.mode-reveal-status{margin-top:10px;padding:8px 12px;border-left:3px solid var(--table-action);background:var(--table-surface);font-size:12px}
.has-result[data-game-mode="shortlist"] .shortlist-cards{gap:6px}
.has-result[data-game-mode="shortlist"] .shortlist-card{min-height:68px;padding:9px}
.has-result[data-game-mode="shortlist"] .shortlist-card strong{font-size:18px;margin:8px 0}
.has-result[data-game-mode="shortlist"] .shortlist-card .player-serial,.has-result[data-game-mode="shortlist"] .shortlist-card .neutral-monogram{display:none}
.lineup-search:has(.picker-area[hidden]),.lineup-search:empty{display:none}

/* ResultTicket: the evidence remains beside the result; one prominent next step. */
.has-result .game{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.game-layout{min-width:0}.result-panel{position:sticky;top:20px;margin:0;padding:20px;background:var(--table-paper);color:var(--table-text);border:1px solid var(--table-edge);border-top:3px solid var(--table-action);box-shadow:var(--table-shadow);border-radius:4px}
.result-panel.perfect{border-top-color:var(--gold);box-shadow:var(--table-shadow)}.result-topline{font-size:9px;line-height:1.5;letter-spacing:.055em}
.result-head{margin:14px 0;gap:10px;align-items:flex-start}.result-copy h2{font-size:35px;line-height:.98;text-transform:none;letter-spacing:0}.result-copy p{font-size:12px;line-height:1.5;margin-top:10px}
.result-seal{gap:5px;font-size:22px}.result-seal img{width:30px;height:30px}.result-seal span{font-size:23px}
.result-six-marks{gap:4px;margin:0 0 14px}.result-six-marks i{width:27px;height:21px;font-size:12px;line-height:19px}
.result-metrics{gap:8px;padding:12px 0}.result-metrics>div+div{padding-left:10px}.result-metrics b{font-size:28px}.result-metrics span{font-size:10px;line-height:1.3;display:block;margin-top:4px}
.result-actions{gap:6px;margin-top:16px}.result-actions .primary-btn{width:100%;font-size:13px;gap:9px;min-height:46px}
.result-actions .small-btn{flex:1 1 auto;padding:8px 10px;font-size:11px;min-height:40px}
.result-share-tools{gap:6px 16px;margin-top:7px}.result-share-tools .text-btn{font-size:10px;min-height:34px;padding:4px 0}
.result-personal{font-size:10px;line-height:1.5;margin-top:10px;padding-top:10px}.result-mode-detail{font-size:10px;line-height:1.5;margin-top:10px}
.daily-progress-strip{margin-top:16px;padding-top:13px;border-top:1px dashed var(--table-edge)}
.sweep-heading{align-items:center;gap:8px}.sweep-heading b{font-size:20px;line-height:1.1}.sweep-heading>span{font-size:10px;white-space:nowrap}
.mode-stamps{gap:5px;margin:10px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mode-stamps span{padding:7px 3px;font-size:10px;line-height:1.3;text-align:center;border:1px dashed var(--table-edge)}
.result-panel .mode-stamps .stamped{background:var(--table-surface);color:var(--brand-cream);border-style:solid;border-color:var(--table-surface)}
.daily-progress-strip small{font-size:10px;line-height:1.4;display:block}.sweep-earned .sweep-heading b{color:var(--table-text)}
.result-insight{font-size:12px}.result-insight ul{padding-left:16px}.has-result .press-player{height:176px}.has-result .player-family{font-size:23px}
.has-result .tile-content strong{font-size:21px}.has-result .press-clue{min-height:152px}
.has-result .board-heading{display:none}.has-result .scope-note{margin-bottom:0}

/* Dialogs reuse the same paper, labels, primary action and print edge. */
.modal{background:var(--table-paper);color:var(--table-text);border:1px solid var(--table-edge);border-top:3px solid var(--table-accent);border-radius:4px;padding:30px;box-shadow:0 4px var(--table-edge),0 20px 70px #0c131866}
.modal h2{font-size:34px;letter-spacing:0;text-transform:none}.modal p{font-size:14px;color:var(--table-muted)}.modal .eyebrow{font-size:9px;color:var(--table-muted)}
.modal button:focus-visible,.daily-card button:focus-visible,.result-panel button:focus-visible{outline:3px solid var(--table-action);outline-offset:3px}
.stat{background:transparent;border:1px solid var(--table-edge);border-bottom-width:3px;border-radius:3px}.stat b{color:var(--table-text)}.stat span{font-size:11px}
.setting-row{padding:15px 0}.setting-row input{accent-color:var(--table-action)}.setting-row select{min-height:44px}.history-row:hover{background:#dde5f0}
.toast{border-left:4px solid var(--table-action);font-size:13px}.first-pick-tip,.inspection-strip{border-radius:3px}
/* Keep search and commit together on the table, without a fixed mobile overlay. */
.mesh-arena{display:grid;grid-template-columns:minmax(0,1fr) 270px;column-gap:20px}
.arena-rim,.arena-interior,.inspection-strip,.arena-caption,.progress-line{grid-column:1/-1;min-width:0}
.lineup-search{grid-column:1;align-self:start}
.mesh-arena>.game-footer{grid-column:2;display:flex;flex-direction:column;align-items:stretch;background:none;border:0;border-top:1px solid var(--line);padding:12px 0 0;margin:7px 0 0;gap:4px}
.mesh-arena>.game-footer .submit-btn{min-width:0;width:100%}
.mesh-arena>.game-footer .submission-notes{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px}
.mesh-arena>.game-footer .submission-notes p{max-width:160px;font-size:10px}
.mesh-arena>.game-footer .submission-notes .text-btn{font-size:10px;min-height:36px}
[data-game-mode="save"] .mesh-arena>.game-footer,[data-game-mode="shortlist"] .mesh-arena>.game-footer{grid-column:1/-1;max-width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin-top:12px}
[data-game-mode="save"] .mesh-arena>.game-footer .submit-btn,[data-game-mode="shortlist"] .mesh-arena>.game-footer .submit-btn{width:auto;min-width:240px}
.card-inspect-label{position:absolute;right:7px;top:7px;font:500 9px var(--body);color:var(--paper)}
@media(hover:hover) and (pointer:fine){
  .daily-mode-ticket:has(button:not(:disabled)):hover{translate:0 -2px;box-shadow:0 4px var(--table-edge)}
  .press-clue:hover{transform:translateY(-2px)}.empty-slot:hover{background:var(--table-stage);border-color:var(--brand-cream)}
  .shortlist-card:not(:disabled):hover{border-color:var(--brand-cream)}
}
@media(max-width:1000px){
 .shell{padding-inline:24px}.home-heading>div{grid-template-columns:160px 1fr;gap:0 18px}.home-wordmark{width:160px}.home-objective{display:none}
 .has-result .game{grid-template-columns:minmax(0,1fr)}.result-panel{position:static;margin-top:0;max-width:none}
 .result-actions .primary-btn{width:auto;min-width:220px}.result-copy h2{font-size:37px}.result-actions .small-btn{flex:0 1 auto}
 .trilogy-result-extra{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.trilogy-result-extra .daily-progress-strip{flex:1;min-width:250px}
 .has-result .press-clue{min-height:140px}.has-result .tile-content strong{font-size:23px}
}
@media(max-width:640px){
 .mesh-arena{grid-template-columns:minmax(0,1fr);column-gap:0}
 .mesh-arena>.game-footer{grid-column:1;margin:10px 0 0;padding:12px 0 0;gap:7px}
 [data-game-mode="save"] .mesh-arena>.game-footer,[data-game-mode="shortlist"] .mesh-arena>.game-footer{flex-direction:column;align-items:stretch}
 [data-game-mode="save"] .mesh-arena>.game-footer .submit-btn,[data-game-mode="shortlist"] .mesh-arena>.game-footer .submit-btn{width:100%;min-width:0}
 .mesh-arena>.game-footer .submission-notes{width:100%}.card-inspect-label{font-size:7px;top:6px;right:4px}
 .shell{padding-inline:16px}.topbar{height:64px;min-height:64px;gap:8px}.brand{width:44px;padding:2px}.brand img{width:40px;height:40px}.topbar-right{gap:0}.nav-btn{font:600 15px var(--display);padding-inline:8px}.topbar .icon-btn{width:44px}.stats-nav{width:44px;justify-content:center}
 .home-heading{margin:16px 0 14px;display:block}.home-heading>div{grid-template-columns:120px 1fr;gap:0 14px}.home-wordmark{width:120px}.home-heading .eyebrow{font-size:7px;line-height:1.5;letter-spacing:.1em;margin-bottom:4px}.brand-tagline{font-size:18px;line-height:1.1;margin:0}
 .sport-heading{margin-top:10px;padding-top:12px;gap:8px}.sport-switch button{min-width:66px;padding:8px 14px;font-size:18px}.sport-heading p{font-size:10px}.sport-scope{font-size:10px;margin-bottom:12px;line-height:1.5}
 .ticket-top{padding:8px 12px;gap:8px}.ticket-top>span:nth-child(2){font-size:8px;letter-spacing:.08em}.ticket-top>b{font-size:21px}
 .daily-ticket-body{padding:13px 12px 12px!important}.daily-card-title{flex-direction:row;align-items:center;gap:8px;margin-bottom:12px}.daily-card-title h2{font-size:25px}.daily-card-title>span{font-size:10px;white-space:nowrap}
 .daily-modes{gap:10px}.daily-mode-ticket{padding:12px;grid-template-columns:minmax(0,1fr) 104px;gap:0 10px;min-height:148px}
 .daily-mode-ticket h3{font-size:27px;margin:6px 0 4px}.daily-mode-ticket p{font-size:12px;margin-bottom:4px}.daily-mode-ticket>small{font-size:10px;line-height:1.4}
 .ticket-mode-number{font-size:8px;grid-column:1}.ticket-mode-number:after{margin-left:0}.mode-sketch{grid-column:2;grid-row:1/3;width:100%;height:34px;margin:2px 0 6px;align-self:start}
 .mode-ticket-bottom{grid-column:2;grid-row:3/6;max-width:none;align-self:end;gap:5px;padding:0}.mode-status{font-size:9px;line-height:1.35;min-height:14px}.mode-ticket-bottom button{padding:8px 10px;font-size:12px;gap:8px;min-height:44px}
 .sweep-home{padding-top:14px;gap:10px;display:grid;grid-template-columns:1fr auto;align-items:center}.sweep-home b{font-size:17px}.sweep-home small{font-size:10px;line-height:1.4}.sweep-home .small-btn{font-size:10px;padding:8px;min-height:44px}
 .ticket-tear{padding:10px 12px;gap:8px}.ticket-tear>b{font-size:22px;letter-spacing:0}.ticket-tear>span{font-size:8px}.ticket-tear small{font-size:7px}
 .unlimited-ticket{padding:14px;margin-top:16px;display:grid;grid-template-columns:1fr auto;gap:12px}.unlimited-ticket h2{font-size:28px;max-width:none}.unlimited-ticket p{font-size:11px}.unlimited-controls{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:10px}.unlimited-controls .menu-difficulty{margin:0}.unlimited-ticket .primary-btn{grid-column:2;grid-row:1;min-width:0;min-height:44px;font-size:12px;padding:10px 12px;gap:12px}.unlimited-ticket .primary-btn>span{font-size:18px}
 .player-record{padding:12px 0;margin-top:18px}.record-values b{font-size:25px}.record-values span{font-size:9px;line-height:1.3}.record-heading .eyebrow{font-size:8px}.record-heading img{width:24px;height:24px}
 .page-foot{margin-top:12px;padding-block:18px}.page-foot .footer-brand img{width:76px}.menu-bottom{padding-block:5px}
 .modebar{margin-top:6px;gap:8px}.modebar #countdown{font-size:9px}.modebar .text-link{font-size:12px}
 .game-sport-switch{margin:3px 0 0 10px}.game-sport-switch .sport-switch button{min-width:48px;min-height:32px;padding:7px 10px;font-size:15px}
 .game-intro{display:block;margin:6px 0;min-height:50px}.game-intro h1{font-size:29px;max-width:210px}.round-label{font-size:8px;letter-spacing:.04em;max-width:calc(100% - 128px)}
 .practice-controls{clear:both;margin-top:12px;display:flex;gap:7px;align-items:center}.practice-controls .mode-select{display:flex;align-items:center}.practice-controls select{font-size:11px;min-height:40px;max-width:133px}.practice-controls>label:not(.mode-select){font-size:10px}
 .mode-instructions{font-size:12px;line-height:1.5;margin:8px 0 10px}.board-heading{gap:6px;margin-bottom:7px}.board-heading h2{font-size:17px}.board-heading p{font-size:10px;max-width:160px;line-height:1.4}.head-actions{gap:5px}.head-actions .text-btn{font-size:11px}
 .mesh-arena{padding:10px 10px 7px}.arena-rim{font-size:8px;letter-spacing:.035em;padding-bottom:10px;min-height:32px}.arena-rim .rim-rule{display:none}.arena-rim b{font-size:25px}.arena-rim i{font-size:8px}
 .board{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.press-clue,.blind-clue,.has-result .press-clue{padding:9px;min-height:155px}.tile-top{padding-bottom:5px;gap:5px}.tile-index{font-size:19px}.category-type{font-size:7px;letter-spacing:.02em;padding:3px 4px}.print-mark{display:none}
 .tile-content strong,.has-result .tile-content strong{font-size:21px;line-height:1.07}.tile-content small{font-size:10px;line-height:1.4}.tile-state{font-size:9px;max-width:100%;white-space:normal}.match-names{font-size:10px;line-height:1.35;min-height:13px}.blind-clue .tile-state{font-size:8px;line-height:1.4}
 .lineup-heading{padding:12px 0 8px}.lineup-heading>span:first-child{font-size:17px}.rail-search{font-size:11px}
 .selected-list{gap:8px;padding:0 0 5px}.press-player,.has-result .press-player{height:174px;min-height:174px;border-width:1px;box-shadow:1px 2px var(--table-edge),2px 4px var(--brand-ink)}
 .athlete-info{padding:28px 5px 27px}.player-serial{font-size:7px;top:7px;left:6px}.locked-label{font-size:5px;right:5px;top:8px}
 .player-given{font-size:10px}.player-family,.has-result .player-family{font-size:21px;line-height:1.03}.player-years{font-size:8px;line-height:1.3;margin-top:5px}.player-monogram{font-size:52px;top:28px;right:3px}
 .piece-notches{gap:2px;margin:7px 0 4px}.piece-notches i{width:12px;height:15px;font-size:8px;line-height:13px}.player-summary{font-size:8px}.contribution-patch{font-size:9px;bottom:7px;left:4px;right:4px;min-height:20px;line-height:1.2;padding:2px}
 .triple-card .contribution-patch{font-size:9px;padding:3px 2px;gap:3px}.triple-card .contribution-patch i{font-size:12px}.remove-player{width:44px;height:44px;font-size:22px;top:0;right:0}
 .empty-slot strong{font-size:14px}.empty-slot small{font-size:9px;line-height:1.3}.empty-number{font-size:39px}.empty-slot .player-serial{font-size:7px}
 .lineup-search{padding-top:12px}.picker-wrap input{font-size:16px;height:48px}.picker-label{font-size:12px}.microcopy{font-size:10px}.suggestion{min-height:48px;font-size:14px}.suggestion small{font-size:10px}
 .arena-caption{align-items:center;font-size:10px;margin-top:10px;line-height:1.4}.arena-caption>span:last-child{font-size:9px}.game-footer{display:flex;flex-direction:column;align-items:stretch;padding:12px;gap:7px;margin-top:10px;position:static}.submit-btn{width:100%;min-width:0;min-height:48px}.submission-notes{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.submission-notes p{font-size:10px;max-width:180px}.submission-notes .text-btn{font-size:10px;min-height:36px;max-width:95px;text-align:right;justify-content:flex-end}
 .scope-note{font-size:10px}.first-pick-tip{padding:8px 10px}.first-pick-tip p{font-size:11px}.first-pick-tip b{font-size:16px}.under-board{align-items:flex-start}.under-board p{font-size:10px;max-width:180px}.under-board .text-btn{font-size:10px}
 [data-game-mode="save"] .press-player{min-height:244px;height:auto}[data-game-mode="save"] .athlete-info{min-height:170px;padding-bottom:28px}.save-card-controls{padding:6px 4px;min-height:74px;gap:3px}.save-card-controls>span{font-size:8px}.save-card-controls button{font-size:10px;min-height:44px;padding:5px 2px;line-height:1.2}
 .save-steps{gap:6px;font-size:10px;line-height:1.4}.save-steps li{flex:1;gap:5px;align-items:center}.save-steps b{min-width:19px;padding:2px 4px;font-size:9px}.save-panel #saveSummary{font-size:12px}.save-cancel-actions{gap:16px!important}.save-cancel-actions button{font-size:11px}
 .shortlist-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.shortlist-card{padding:12px;min-height:134px}.shortlist-card strong{font-size:25px;margin:17px 0 12px}.shortlist-card small{font-size:9px}.shortlist-card .player-serial{font-size:8px}
 .result-panel{padding:17px;margin-top:0}.has-result .game{gap:16px}.result-copy h2{font-size:34px}.result-actions .primary-btn{width:100%;min-width:0;min-height:48px}.result-actions .small-btn{min-height:44px;font-size:11px;flex:1 1 auto}.result-copy p{font-size:12px}.result-metrics b{font-size:30px}.result-metrics span{font-size:10px}.trilogy-result-extra{display:block}.daily-progress-strip{margin-top:14px}.mode-stamps span{font-size:10px;padding:9px 4px}.result-share-tools .text-btn{font-size:11px;min-height:44px}.result-mode-detail{font-size:11px}
 .modal{padding:26px 20px;width:calc(100% - 24px);max-height:90dvh}.modal h2{font-size:31px}.modal p{font-size:13px}.stat{padding:12px 9px}.stat b{font-size:30px}.stat span{font-size:10px}.setting-row{gap:12px}.setting-row b{font-size:13px}.setting-row small{font-size:11px}.toast{font-size:12px}
}
@media(max-width:360px){
 .shell{padding-inline:12px}.nav-btn{padding-inline:5px;font-size:14px}.topbar .icon-btn{width:44px}.home-heading>div{grid-template-columns:106px 1fr;gap:0 12px}.home-wordmark{width:106px}.brand-tagline{font-size:17px}
 .daily-mode-ticket{grid-template-columns:minmax(0,1fr) 91px;padding:10px;gap:0 8px}.daily-mode-ticket h3{font-size:25px}.daily-card-title h2{font-size:24px}.daily-card-title>span{font-size:9px}.sweep-home{grid-template-columns:1fr}.sweep-home .small-btn{width:100%}
 .mesh-arena{padding-inline:8px}.board{gap:8px}.press-clue{padding:8px}.tile-content strong,.has-result .tile-content strong{font-size:20px}.category-type{font-size:6.5px}.selected-list{gap:6px}.player-family,.has-result .player-family{font-size:19px}.player-years{font-size:7px}.piece-notches{gap:1px}.piece-notches i{width:10px;font-size:7px}.player-given{font-size:9px}.empty-slot small{font-size:8px}.contribution-patch{font-size:8px}.triple-card .contribution-patch{font-size:8px}
 .modebar #countdown{font-size:8px}.game-intro h1{font-size:27px}.round-label{font-size:7px}.shortlist-card strong{font-size:23px}.save-steps{font-size:9px}.save-steps li{gap:3px}.ticket-tear>b{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 .daily-mode-ticket,.shortlist-card,.press-clue,.press-player,button{transition:none!important;animation:none!important;translate:none!important}
 .shortlist-card.is-selected,.save-replacing,.press-player.is-inspected,.press-clue.is-linked{transform:none!important}
}
html[data-motion="reduced"] .daily-mode-ticket,html[data-motion="reduced"] .shortlist-card,html[data-motion="reduced"] .save-replacing{transition:none!important;transform:none!important;translate:none!important}
@media(forced-colors:active){
 .daily-mode-ticket,.shortlist-card,.press-player,.mesh-arena,.result-panel,.modal,.game-footer{border:1px solid CanvasText;box-shadow:none}
 .shortlist-card.is-selected,.save-replacing{outline:3px solid Highlight}.mode-sketch{display:none}.card-art{display:none}
 .primary-btn,.mode-ticket-bottom button{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}.mode-stamps .stamped{border:2px solid Highlight}
}
