/* A cabinet-sized play surface. Menus stay in the screen; long field guides scroll inside. */
html,body{height:100%;background:#082830}body{height:100dvh;overflow:hidden;display:flex;flex-direction:column;color:#e4f0e6}header{padding:8px 18px;gap:16px;flex-shrink:0;border-color:#31545a;background:#0d3139}.brand{font-size:24px}.brand em{color:#ffca7a}.brand-icon,.brand small{display:none}nav{gap:3px}nav button{padding:9px 10px;color:#ceded9;font-size:14px}nav button.active{background:#ffca7a;color:#18343c}header .icon-btn{color:#eee;border-color:#45676b;width:34px;height:34px;font-size:21px}main{width:100%;padding:8px 14px;max-width:none;min-height:0;flex:1;display:flex;flex-direction:column}.page-heading,.below,footer{display:none}#derby-view{display:flex;flex-direction:column;min-height:0;flex:1}#derby-view[hidden]{display:none}#content-view{min-height:0;overflow:auto;background:#edf0e7;color:#173436;padding:24px;border-radius:8px;height:100%}.coin-panel{margin:0 0 8px;padding:8px 10px;background:#123b42;border:1px solid #35606a}.coin-heading{margin:0 0 5px;gap:8px}.coin-heading .eyebrow{display:none}.coin-heading b{font:700 17px 'Barlow Condensed';color:#e2ede2}.session-switch button{font-size:13px;padding:5px 10px}.coin-slots{gap:8px}.coin-slot{padding:5px 10px;min-height:38px}.coin-slot .coin-player{font-size:23px}.coin-slot b{font-size:12px}.coin-slot small{font-size:12px}.coin-art{width:26px;height:26px}.coin-note{display:none}.arena-layout{gap:10px;flex:1;min-height:0;grid-template-columns:232px minmax(0,1fr)}.setup{padding:10px;background:#153d43;color:#e4eee1;border-color:#39616a;overflow:auto}.section-cap{margin-bottom:5px;font-size:12px}.mode{padding:5px 6px;gap:8px;margin:0}.mode b{font-size:14px}.mode small{font-size:12px}.mode-icon img{width:29px;height:29px}.mode.active{background:#305b5b;box-shadow:inset 3px 0 #ffca7a}.setup-bottom{margin-top:8px}.setup select{margin:4px 0 9px;padding:7px}.setup label,.party-label{font-size:12px}.party-label{margin-bottom:4px}.crew-row{margin-bottom:3px}.crew-row select{margin:0;color:#e4eee1}.crew-row option{color:#14373b;background:#edf0e7}.setup .primary{margin-top:8px;padding:11px}.subtle{color:#d6e4d4;font-size:12px;opacity:1}.arena-wrap{min-height:0}.arena-top{padding:5px 12px;font-size:13px;min-height:29px}.arena-top .weather{display:none}#game-shell{min-height:0;aspect-ratio:auto;flex:1}#game canvas{object-fit:contain}#fish-focus{padding:3px 8px;flex-shrink:0}.focus-heading{display:none}.focus-list{padding:2px 0;gap:4px}.focus-list button{display:flex;align-items:center;gap:4px;min-width:0;max-width:none;padding:2px 6px}.focus-list img{width:40px;height:23px}.focus-list b{font-size:12px}.focus-list small{display:none}.focus-list button:first-child{min-width:62px}.scoreboard{flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr))}.score{padding:6px 10px}.score-title{font-size:13px;letter-spacing:0}.score-title span:last-child{display:none}.score strong{font-size:25px;margin-top:0}.score-state,.score .cue-detail{display:none}.score .meter-label{font-size:10px;margin-top:2px;white-space:nowrap}.score .fight-cue{min-height:29px;padding:3px 4px;margin:4px 0}.score .cue-title{font-size:12px;letter-spacing:0}.score .cue-icon{width:25px;height:25px}.score-actions{margin-top:4px}.score-actions button{font-size:11px;padding:2px}.arena-help{padding:5px 10px;font-size:12px}.arena-help>span:nth-child(2){display:none}.game-caption{top:8%;left:5%}.game-caption h2{font-size:clamp(25px,3.6vw,57px);margin:8px 0}.game-caption p{margin:5px 0;max-width:230px;font-size:12px}.game-caption>span{font-size:10px}.timer{top:12px;right:16px;font-size:34px}.pause{top:60px;right:12px}.cast-in{padding:9px 12px;bottom:13px;right:13px;font-size:14px}.water-label{display:none}#setup-toggle{display:none}.during-play .coin-heading{display:none}.during-play.coin-panel{padding:4px 10px}.playing-round .arena-layout{grid-template-columns:1fr}.playing-round .setup{display:none}.playing-round #fish-focus{display:none}.playing-round .game-caption{display:none}.playing-round .score{padding:8px 14px}.playing-round .score .cue-detail{display:block}.playing-round .score .fight-cue{min-height:45px}.playing-round .arena-help{font-size:14px}.playing-round .score .cue-title{font-size:16px}.playing-round .score .meter-label{font-size:12px}.playing-round .score strong{font-size:32px}.playing-round .score-title{font-size:15px}.playing-round .coin-slot{min-height:28px}.playing-round .coin-slot small{font-size:11px}dialog{color:#163b3f}dialog::backdrop{background:#021a21e8}
#character-select{inset:0;width:min(1400px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;border:0;border-radius:0;padding:16px 22px;background:radial-gradient(ellipse at 50% 0,#245d67,#0a2834 65%);color:#edf3df;overflow:hidden;margin:auto}#character-select[open]{display:flex;flex-direction:column;gap:8px}.select-heading{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.select-heading p{color:#f9c96c;font-size:12px;letter-spacing:2px;margin:0}.select-heading h2{font:800 clamp(22px,3.5vw,42px)/1 'Barlow Condensed';margin:3px 0}.select-heading button{background:#254e59;color:#fff;border:1px solid #4c7074;border-radius:50%;width:34px;height:34px}.select-players{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;flex-shrink:0}.crew-pick{display:flex;align-items:center;gap:7px;background:#113a47;border:1px solid #41616b;border-bottom:3px solid var(--p);border-radius:6px;color:#dce5d9;min-width:0;padding:3px 8px;text-align:left}.crew-pick.current{background:#335663;outline:2px solid var(--p)}.crew-pick img{width:45px;height:45px;object-fit:contain}.crew-pick b{font-size:16px;display:block}.crew-pick small{font-size:11px;color:var(--p);display:block}.character-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));flex:1;min-height:0;gap:7px}.character-tile{min-height:0;min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:end;overflow:hidden;padding:4px;background:linear-gradient(145deg,#244e60,#122f3d);border:1px solid #3c6573;border-radius:6px;color:#e6efde;transition:background .15s}.character-tile:hover,.character-tile.current{background:linear-gradient(145deg,#54716d,#285c69);border-color:#ffcf7b;box-shadow:inset 0 0 0 2px #ffcf7b}.character-tile img{height:calc(100% - 28px);width:100%;min-height:0;object-fit:contain;filter:drop-shadow(0 3px 4px #001b24)}.character-tile b{font:700 17px/1.1 'Barlow Condensed';letter-spacing:.5px}.character-tile small{font-size:10px;color:#b7ced1}.pick-markers{position:absolute;top:3px;left:4px;display:flex;gap:3px}.pick-markers i{font:bold 11px/18px sans-serif;min-width:18px;color:#102632;border-radius:3px}.character-detail{display:flex;align-items:center;gap:12px;border:1px solid #40606a;border-left:4px solid var(--p);background:#0c2e3b;border-radius:6px;padding:5px 12px;flex-shrink:0}.character-detail>img{width:64px;height:64px;object-fit:contain}.character-detail h3{margin:0 0 3px;font:700 24px 'Barlow Condensed'}.character-detail h3 small{font:12px 'DM Sans';color:#acc1bd}.character-detail b{font-size:14px;color:#f1d38e}.character-detail p{font-size:12px;color:#b3cdcb;margin:4px 0}.character-detail .primary{margin-left:auto;white-space:nowrap;color:#102f37;padding:10px 18px}.select-bottom{display:flex;gap:12px;flex-shrink:0}.select-coins{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;flex:1}.select-coins button{background:#173e48;border:1px solid #50717a;border-bottom:2px solid var(--p);border-radius:4px;color:var(--p);padding:7px;font-size:14px;white-space:nowrap}.select-coins span{font-size:11px;display:block;color:#aec7c5}.select-bottom>.primary{color:#123640;white-space:nowrap;padding:8px 18px}.select-help{text-align:center;font-size:12px;color:#abc9c9;margin:0;flex-shrink:0}
@media(max-width:1050px){.arena-layout{grid-template-columns:1fr}.setup{display:none}.setup-open .setup{display:flex;position:fixed;z-index:20;top:60px;bottom:12px;left:12px;width:260px;box-shadow:0 5px 40px #0009}#setup-toggle{display:block;background:#ffd080;border:0;border-radius:4px;padding:4px 9px;font-size:13px;color:#133b43}.brand{font-size:21px}header{gap:6px;padding:6px 10px}nav button{font-size:12px;padding:8px 6px}.arena-help{font-size:11px}.arena-help kbd{font-size:10px}}
@media(max-width:700px){header{flex-wrap:nowrap}.brand{font-size:18px}nav span{display:none}nav button{font-size:11px;padding:7px 4px}main{padding:5px}.coin-heading b{display:none}.coin-heading{justify-content:flex-end}.coin-slot{padding:5px;gap:5px}.coin-slot b{font-size:10px}.coin-slot small{font-size:9px}.coin-slot .coin-player{font-size:17px}.coin-slots{gap:4px}.coin-panel{margin-bottom:4px}.coin-plus{display:none}.score{padding:5px}.score-title{font-size:11px}.score strong{font-size:22px}.score .meter-label{font-size:8px}.score .cue-title{font-size:10px}.score .cue-icon{width:19px;height:19px}.score-actions .last-catch{display:none}.score-actions button{font-size:10px}.score .fight-cue{gap:3px}.arena-help>span{display:none}.playing-round .score{padding:5px}.playing-round .score .cue-detail{display:none}.playing-round .score .cue-title{font-size:11px}.playing-round .score .meter-label{font-size:9px}.playing-round .score-title{font-size:12px}.playing-round .score .fight-cue{min-height:28px}.playing-round .score strong{font-size:25px}.game-caption p{max-width:180px}.touch{bottom:9px}#character-select{padding:8px;gap:5px!important}.select-heading p{font-size:10px;letter-spacing:1px}.select-players{gap:5px}.crew-pick{padding:3px;gap:2px}.crew-pick img{width:29px;height:32px}.crew-pick b{font-size:12px}.crew-pick small{font-size:9px}.character-grid{gap:4px}.character-tile{padding:3px 1px}.character-tile b{font-size:14px}.character-tile small{font-size:9px}.character-tile img{height:calc(100% - 23px)}.character-detail{padding:4px 6px;gap:6px}.character-detail>img{width:43px;height:43px}.character-detail h3{font-size:19px}.character-detail b{font-size:11px}.character-detail p{font-size:10px;margin:2px 0}.character-detail .primary{padding:8px;font-size:12px}.select-bottom{gap:5px}.select-coins{gap:4px}.select-coins button{font-size:11px;padding:5px 2px}.select-coins span{font-size:9px}.select-bottom>.primary{font-size:11px;padding:6px;white-space:normal;max-width:130px}.select-help{font-size:10px}.pick-markers{gap:1px;left:2px}.pick-markers i{min-width:14px;font-size:9px;line-height:15px}}
@media(max-height:550px){#character-select{gap:4px;padding:6px 10px}.select-heading h2{font-size:23px}.select-heading p{display:none}.crew-pick img{width:28px;height:28px}.character-detail>img{width:38px;height:38px}.character-detail h3{font-size:18px}.character-detail p{display:none}.select-help{font-size:10px}.select-coins button{padding:3px}.character-tile small{display:none}.character-tile img{height:calc(100% - 17px)}.character-tile b{font-size:13px}}
@media(max-width:450px){nav button{font-size:10px;padding:8px 3px}.brand{font-size:15px}header .icon-btn{width:26px;height:26px;font-size:16px}.character-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr))}.character-detail>img{display:none}.character-detail h3 small{display:none}.select-help{font-size:9px}.select-players .crew-pick img{display:none}.select-bottom>.primary{max-width:95px}.character-detail b{font-size:10px}.coin-slot small{font-size:8px}.coin-slot b{font-size:9px}}
.coin-panel .coin-slots{grid-template-columns:repeat(4,minmax(0,1fr))}.coin-panel .coin-heading{flex-direction:row}.coin-panel .coin-slot{min-width:0}.coin-panel .coin-slot>span{min-width:0}.coin-panel .coin-slot small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coin-panel .session-switch{width:auto}.coin-panel .session-switch button{white-space:nowrap}.arena-layout{grid-template-rows:minmax(0,1fr)}.coin-panel~.arena-layout{align-items:stretch}.arena-layout .arena-wrap{height:100%}.arena-layout .setup{height:100%}.setup-open .arena-layout .setup{height:auto}
.playing-round header{display:none}#game-shell{background:#071e26}.playing-round .score{padding:5px 12px}.playing-round .score-title{font-size:14px}.playing-round .score strong{font-size:25px;line-height:1.1}.playing-round .score .meter-label{font-size:11px;margin:0}.playing-round .score .tension{height:6px;margin-top:3px}.playing-round .score .fatigue{height:3px;margin-top:2px}.playing-round .score .fight-cue{min-height:32px;margin:3px 0;padding:3px}.playing-round .score .cue-title{font-size:14px}.playing-round .score .cue-detail{font-size:11px;margin-top:1px;line-height:1.2}.playing-round .score .score-actions{margin-top:2px}.playing-round .coin-panel{margin-bottom:4px}.playing-round .coin-slot{padding:4px 10px}
@media(max-width:700px){.coin-panel{padding:5px}.coin-panel .coin-heading{margin-bottom:4px}.coin-panel .session-switch{display:flex;width:100%}.coin-panel .session-switch button{flex:1;padding:4px;font-size:12px}.coin-panel .coin-slot{display:flex;gap:3px;padding:4px;min-height:30px}.coin-slot small{font-size:8px;max-width:60px}.coin-slot b{font-size:9px}.focus-list button{height:27px}.focus-list img{width:28px;height:18px}.focus-list b{font-size:11px}.focus-list button:first-child{font-size:11px}.scoreboard{max-height:135px}.score .fight-cue{margin:3px 0;min-height:23px}.score .score-actions{margin-top:2px}.score .meter-label{margin-top:0}.arena-help{padding:3px 7px;min-height:20px}.score .tension{height:6px}.score .fatigue{height:3px}.game-caption p,.game-caption>span{display:none}.game-caption h2{font-size:25px}.timer{font-size:28px;top:8px}.timer small{font-size:8px}.cast-in{font-size:12px;padding:8px}.playing-round .coin-heading{display:none}}
