/* 1600 x 900 layout units; proportional 16:9 cabinet with intentional letterboxing. */
html:has(.cabinet-app),body.cabinet-app{width:100%;height:100%;margin:0;overflow:hidden;background:#000;color:#fff}
.cabinet-app>header,.cabinet-app>main,.cabinet-app>footer{display:none!important}
#cabinet-stage{position:absolute;left:50%;top:50%;width:1600px;height:900px;transform:translate(-50%,-50%) scale(var(--cabinet-scale,1));transform-origin:center;overflow:hidden;background:#02060b;font-family:Arial,Helvetica,sans-serif}
#cabinet-stage *{box-sizing:border-box}#cabinet-stage button{font-family:inherit;cursor:pointer}#cabinet-stage button:focus-visible{outline:4px solid #fff;outline-offset:3px}
#cabinet-top{position:absolute;inset:0 0 auto;height:58px;display:flex;align-items:center;padding:0 20px;gap:14px;background:#03060a;border-bottom:3px solid #00c7ff;z-index:5;width:auto;max-width:none}
.cabinet-logo{font-weight:1000;font-style:italic;font-size:32px;letter-spacing:-1.5px;color:#ffe000;background:none;border:0;padding:0;text-shadow:2px 2px #b53d00}.cabinet-logo em{color:#00c7ff}
#cabinet-clock{position:absolute;left:50%;transform:translateX(-50%);top:0;background:#03060a;padding:0 30px 5px;clip-path:polygon(0 0,100% 0,100% 85%,90% 100%,10% 100%,0 85%)}
#cabinet-clock #timer{position:static;transform:none;background:none;border:0;box-shadow:none;color:#ffe600;font:bold italic 48px/1 Arial;padding:0;text-shadow:none;min-width:160px;text-align:center}#cabinet-clock #timer small{font-size:10px;line-height:1.1;letter-spacing:2px;color:#fff}
.cabinet-venue{margin-left:auto;text-align:right;max-width:360px;display:grid;gap:3px}.cabinet-venue b{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cabinet-venue small{font-size:10px;letter-spacing:2px;color:#78d6f5}
#cabinet-full,#cabinet-menu{background:#111b28;color:white;border:1px solid #255775;width:36px;height:36px;padding:0;font-size:23px;border-radius:3px}
#cabinet-playfield{position:absolute;inset:58px 0 133px}#cabinet-playfield #game-shell{width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;overflow:hidden;position:relative;margin:0}#cabinet-playfield #game{width:100%;height:100%;position:absolute;inset:0}#game canvas{display:block}
#cabinet-playfield .game-caption,#cabinet-playfield .water-label,#cabinet-playfield .cast-in,#cabinet-playfield #touch,#cabinet-playfield #pause{display:none!important}
#cabinet-hud{position:absolute;inset:auto 0 0;height:133px;background:#02050a;border-top:3px solid #00c7ff;z-index:5}
#cabinet-hud #scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;margin:0;height:100%;background:none;border:0}
#cabinet-hud .score{border:0;border-right:1px solid #24455b;border-radius:0;background:none;padding:12px 12px 8px 100px;position:relative;min-height:0;overflow:hidden}
#cabinet-hud .score-title{font-size:20px;color:var(--p);height:23px;line-height:1;white-space:nowrap}#cabinet-hud .score-title b{font-style:italic}#cabinet-hud .score-title>span{font-size:9px;margin-left:5px}#cabinet-hud .player-dot{display:none}#cabinet-hud .score>strong{font-size:37px;line-height:1.1;color:var(--p);display:inline-block;margin:2px 0}#cabinet-hud .fish-count{font-size:12px;margin-left:9px}
.cabinet-portrait{position:absolute;left:10px;top:12px;width:80px;height:90px;object-fit:contain;border:2px solid var(--p);border-radius:8px;background:#06111e}
#cabinet-hud .meter-label{display:none}#cabinet-hud .tension{position:absolute;left:238px;top:45px;width:145px;height:15px;border:2px solid #97d8ef;padding:2px;border-radius:6px;background:#142131}#cabinet-hud .tension i{height:7px;background:var(--p)}#cabinet-hud .fatigue{display:none}
#cabinet-hud .fight-cue{margin:0;padding:0;border:0;background:none;display:block;min-height:0}#cabinet-hud .cue-icon,#cabinet-hud .cue-detail,#cabinet-hud .score-state,#cabinet-hud .last-catch{display:none}#cabinet-hud .cue-title{font-size:13px;white-space:nowrap;color:white}#cabinet-hud .score-actions{position:absolute;right:10px;bottom:9px;margin:0}#cabinet-hud .hud-coin{padding:3px 6px;border:0;background:none;color:var(--p);font-weight:900;font-size:21px}#cabinet-hud .hud-coin span{font-size:10px;display:inline-block;margin-left:5px}
#cabinet-screen{position:absolute;inset:58px 0 133px;z-index:4;overflow:hidden;background:linear-gradient(90deg,#000b,transparent 72%)}
.attract-copy{position:absolute;left:64px;top:64px}.arcade-kicker{color:#00d5ff;font-size:18px;letter-spacing:3px;font-weight:900;margin:0 0 18px}.attract-copy h1{position:relative;font-size:108px;font-weight:1000;line-height:.85;margin:0;letter-spacing:-5px;font-style:italic;text-shadow:5px 7px 0 #02070a,-2px -2px 0 #021018;color:#fff}.attract-copy h1 span{color:#ffdf00}.attract-copy h1 em{font-size:64px;color:#00c7ff;margin-left:10px;letter-spacing:-3px}.attract-line{font-size:17px;font-weight:900;margin:25px 0;color:#fff}.arcade-primary{background:#ffe000;border:3px solid #fff;color:#05080d;box-shadow:0 6px 0 #9e5300;font-size:29px;font-style:italic;font-weight:1000;padding:18px 35px;min-width:350px;border-radius:4px}.arcade-primary span{margin-left:45px}.arcade-price{font-size:16px;font-weight:bold;margin-top:20px}.attract-label{position:absolute;right:26px;bottom:23px;text-align:right;font-size:20px;font-weight:bold;text-shadow:2px 2px #000}.attract-label small{font-size:10px;letter-spacing:1px;color:#97ddec}
.cabinet-app #toast{position:fixed;z-index:1000;left:50%;bottom:17%;transform:translateX(-50%);max-width:80vw;font-size:clamp(12px,1.2vw,24px);background:#050c16;border:2px solid #ffe000;color:#fff}
.cabinet-app dialog{overscroll-behavior:none}
#cabinet-playfield #game canvas{width:100%!important;height:100%!important;margin:0!important}
#cabinet-stage [hidden]{display:none!important}
#cabinet-screen.solid-menu{background:linear-gradient(120deg,#020811f5,#061c2ff5);padding:28px 48px 50px}
.screen-heading{height:108px;display:flex;justify-content:space-between;gap:20px}.screen-heading .arcade-kicker{margin:0 0 7px;font-size:13px}.screen-heading h2{font-size:39px;letter-spacing:-1px;font-weight:1000;font-style:italic;margin:0;color:#fff;line-height:1.05}.screen-copy{font-size:17px;color:#bbd9ee;margin:9px 0 0;line-height:1.3}.back-choice{height:38px;background:#132030;color:#fff;border:1px solid #52667a;white-space:nowrap;border-radius:3px;padding:5px 15px;font-size:16px}
.screen-footer{position:absolute;left:48px;right:48px;bottom:18px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#9dbbd2;letter-spacing:.5px}.screen-footer b{color:#ffe000}
.cabinet-choice{min-height:45px;padding:10px 19px;border:2px solid #385a76;border-radius:3px;background:#0b1b2c;color:#fff;font-weight:900;font-size:17px;line-height:1.15;box-shadow:none}
.cabinet-choice.yellow{background:#ffe000;color:#050a10;border-color:#fff}.cabinet-choice.selected,.mode-poster.selected{border-color:#ffe000!important;background:#293419!important}.pad-focus{outline:3px solid #fff!important;outline-offset:3px}.entry-row{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0}.entry-row .cabinet-choice{flex:0 1 auto}.mode-screen-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.mode-poster{height:206px;border:2px solid #264e6c;background:linear-gradient(#15374a,#061524);border-radius:8px;color:#fff;display:flex;align-items:center;flex-direction:column;padding:12px 8px;box-shadow:none}.mode-poster img{width:108px;height:108px;object-fit:contain}.mode-poster b{font-size:22px;text-transform:uppercase;font-style:italic;line-height:1.1;margin:10px 0 7px}.mode-poster span{font-size:13px;color:#c3dfec}.mode-rule{text-align:center;font-size:20px;color:#fff;margin:17px 0 10px}.cabinet-destinations{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:33px}.cabinet-destinations button{font-size:15px;padding:13px 5px;min-height:60px;color:#8ddfff;border-color:#1c455e}
.roster-layout{display:grid;grid-template-columns:1fr 325px;gap:25px}.cabinet-roster{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(5,78px);gap:9px}.roster-tile{position:relative;min-width:0;background:linear-gradient(130deg,#18344c,#081522);border:2px solid #326080;border-radius:5px;color:white;padding:1px 3px;overflow:hidden}.roster-tile.selected{border:3px solid #ffe000}.roster-tile img{height:67px;width:92%;object-fit:contain;display:block;margin:auto}.roster-tile>b{position:absolute;bottom:3px;left:0;right:0;font-size:15px;font-style:italic;background:#0009}.roster-markers{position:absolute;top:2px;left:2px;display:flex;flex-wrap:wrap;gap:2px}.roster-markers i{background:var(--p);color:#000;padding:2px 3px;font-size:12px;font-weight:1000;border:1px solid #fff}.roster-preview{background:radial-gradient(circle at 50% 25%,#12496b,#07121e 70%);border:2px solid var(--p);border-radius:8px;padding:16px;text-align:center}.roster-preview>img{width:100%;height:185px;object-fit:contain;filter:drop-shadow(0 10px 20px #0009)}.roster-preview h3{font-size:32px;color:var(--p);font-style:italic;margin:0 0 5px}.roster-preview b{font-size:18px;color:#fff}.roster-preview p{font-size:16px;margin:6px 0}.roster-preview .roster-bio{font-size:14px;line-height:1.25;color:#ffe000}.roster-preview small{font-size:14px;color:#b5daeb;display:block;height:31px}.roster-preview button{width:100%;margin-top:10px}.lobby-seats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:13px}.lobby-seats button{border:1px solid var(--p);border-left:7px solid var(--p);background:#030b12;color:var(--p);padding:9px 13px;text-align:left;min-height:51px}.lobby-seats b{font-size:19px;display:block}.lobby-seats span{font-size:11px;color:#fff;display:block;margin-top:3px}
.lake-screen-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:195px;gap:17px}.lake-poster{position:relative;border:2px solid #244961;border-radius:6px;overflow:hidden;background:#04101a;color:#fff;padding:0;text-align:left}.lake-poster.selected{border:3px solid #ffe000}.lake-poster:disabled{opacity:1;cursor:default}.lake-poster>img{width:100%;height:100%;object-fit:cover}.lake-poster>div{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#00101df5 30%);padding:27px 15px 12px}.lake-poster small{font-size:10px;color:#8adfff;letter-spacing:1px}.lake-poster b{display:block;font-size:23px;margin:4px 0}.lake-poster span{font-size:13px;color:#c3dce9}
.loadout-grid{display:grid;grid-template-columns:1.05fr .9fr 1.1fr;gap:22px;height:355px}.loadout-grid>article{border:1px solid #2b5270;border-radius:8px;background:#061726;padding:16px}.loadout-grid h3{font-size:24px;margin:5px 0 12px;color:#fff;font-style:italic}.loadout-grid>article>img{display:block;width:100%;height:165px;object-fit:contain}.boat-stat-pills{display:flex;justify-content:space-around;gap:6px;color:#a6c4db;font-size:11px}.boat-stat-pills b{display:block;font-size:29px;color:#ffe000}.loadout-grid .entry-row{gap:7px;margin:10px 0}.loadout-grid .entry-row button{font-size:13px;padding:8px 12px;min-height:32px}.loadout-grid p{font-size:16px;color:#c5e5f2;line-height:1.3;margin:10px 0}.loadout-grid small{font-size:12px;line-height:1.4;color:#9fbdd0}.loadout-fish>div{display:flex;height:59px;align-items:center;gap:8px;border-bottom:1px solid #163950}.loadout-fish>div img{width:98px;height:55px;object-fit:contain}.loadout-fish b{font-size:18px;display:block}.loadout-fish span>small{display:block;font-size:11px;color:#ffe000}.loadout-fish>small{display:block;margin-top:10px}.launch-row{display:flex;align-items:center;justify-content:space-between;margin-top:25px}.launch-row>div{display:grid;gap:10px}.launch-row b{font-size:22px;color:#ffe000}.launch-row span{font-size:18px;color:#fff}.launch-row .arcade-primary{padding:15px 25px;min-width:310px}
.pause-grid{display:flex;gap:25px;margin:30px 0}.pause-grid button{min-width:300px;min-height:70px}.control-lessons{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.control-lessons article{border-top:3px solid #00c7ff;padding:18px;background:#092237}.control-lessons img{width:115px;height:115px;object-fit:contain;float:left;margin-right:20px}.control-lessons h3{font-size:23px;color:#ffe000}.control-lessons p{font-size:19px;line-height:1.4;color:#e2f1fb}
.podium-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;height:355px}.podium-card{position:relative;background:linear-gradient(130deg,#15304b,#051320);border:2px solid var(--p);border-radius:8px;text-align:center;padding:15px;color:#fff}.podium-card.winner{box-shadow:inset 0 0 45px #ffe0001f}.podium-card>span{font-size:17px;font-weight:900;color:var(--p)}.podium-card>img{display:block;height:190px;width:100%;object-fit:contain}.podium-card h3{font-size:24px;margin:5px 0;color:var(--p)}.podium-card strong{font-size:40px;display:block;color:#fff}.podium-card small{display:block;font-size:12px;color:#b0cde1;margin-top:6px}.results-hint{text-align:center;font-size:16px;color:#bdd6e8;margin:5px 0}
.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,191px);gap:17px}.collection-boat{background:linear-gradient(150deg,#102438,#030b15);border:2px solid var(--rarity);border-radius:7px;padding:9px 14px;text-align:left;color:#fff;position:relative}.collection-boat>span{display:flex;justify-content:space-between;color:var(--rarity);font-size:13px;text-transform:uppercase}.collection-boat img{width:100%;height:88px;object-fit:contain}.collection-boat h3{font-size:18px;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collection-boat small{display:block;color:#a1c1d5;font-size:10px;white-space:nowrap}.collection-boat>strong{display:block;font-size:12px;color:var(--rarity);margin-top:8px}.collection-boat.holo{background:linear-gradient(125deg,#392d69,#103c53,#533a28);background-size:200% 200%;animation:holo-card 6s ease infinite}@keyframes holo-card{50%{background-position:100% 50%}}
.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;height:395px}.guide-grid article{background:#091e30;border:1px solid #386078;border-radius:6px;padding:17px}.guide-grid img{width:100%;height:120px;object-fit:contain}.guide-grid h3{font-size:25px;font-style:italic;margin:5px 0 12px;color:white}.guide-grid b{font-size:11px;color:#ffe000}.guide-grid p{font-size:16px;line-height:1.4;color:#c9dfed;margin:12px 0}.guide-grid .guide-tip{border-top:1px solid #2a465a;padding-top:12px;color:#73ddfa}
.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:180px;gap:20px}.shop-item{display:flex;align-items:center;gap:15px;border:1px solid #2b5571;border-radius:7px;background:#0a2032;color:white;text-align:left;padding:15px}.shop-item img{width:110px;height:125px;object-fit:contain}.shop-item b{font-size:23px}.shop-item p{font-size:14px;line-height:1.4;color:#b6d3e6}.shop-item strong{font-size:17px;color:#ffe000}.shop-item small{display:block;font-size:12px;color:#9cb8cc;margin-top:5px}
.option-tabs{display:flex;gap:14px;margin-bottom:20px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.settings-grid button{display:flex;justify-content:space-between;align-items:center;border:1px solid #355b74;border-radius:5px;background:#0b2336;color:#fff;padding:22px;font-size:20px;height:83px}.settings-grid span{color:#ffe000;font-size:17px}.option-note{font-size:18px;color:#bad9eb;line-height:1.5}.input-seats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.input-seats article{border-top:3px solid var(--p);padding:10px;background:#091f31}.input-seats button{width:100%;display:flex;justify-content:space-between;background:#0a1522;border:1px solid #24405a;color:#b8d2e5;padding:9px;font-size:14px;height:39px;margin-bottom:4px}.input-seats button b{color:var(--p)}.performance-panel{padding:35px;background:#071a29;border:1px solid #24405b}.performance-panel h3{font-size:28px;color:#ffe000}.performance-panel p{font-size:19px;color:#c8e1f0;line-height:1.5}
#cabinet-subtitle{position:absolute;left:50%;transform:translateX(-50%);bottom:153px;z-index:9;background:#000d;border-radius:4px;max-width:85%;text-align:center;font-size:19px;font-weight:bold;color:#fff;padding:8px 16px;pointer-events:none}#cabinet-subtitle:empty{display:none}
#cabinet-playfield .catch-reveals{position:absolute;inset:0;pointer-events:none;display:grid;grid-template-columns:repeat(4,1fr);z-index:7;align-items:end;padding:0 10px 40px;gap:20px}#cabinet-playfield .catch-card{position:relative;width:auto;min-height:0;background:#010912ec;border:2px solid var(--p);padding:13px;max-height:250px;text-align:center;border-radius:8px;box-shadow:0 10px 30px #0008;transform:translateY(20px);opacity:0}#cabinet-playfield .catch-card.revealed{opacity:1;transform:translateY(0)}#cabinet-playfield .catch-card>img:not(.reward-art){width:100%;height:88px;object-fit:contain}#cabinet-playfield .catch-card .reward-art{position:absolute;width:40px;height:40px;left:6px;top:8px}#cabinet-playfield .catch-card>span{font-size:14px;color:var(--p)}#cabinet-playfield .catch-card b{font-size:21px;display:block}#cabinet-playfield .catch-card strong{font-size:31px;display:block}#cabinet-playfield .catch-card small{font-size:12px;display:block}
/* Reuse the networked services in bounded destination screens. */
#cabinet-library{position:absolute;inset:58px 0 133px;background:#040c16;z-index:6;overflow:hidden;padding:0 25px}
.library-bar{height:61px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #285170}.library-bar>b{color:#ffe000;font-size:24px;margin-right:auto}.library-bar button{background:#0b243b;border:1px solid #396982;color:#fff;font-size:15px;padding:9px 14px;border-radius:3px}.library-bar [data-library-page]{min-width:45px;text-align:center}.library-bar [data-world-tabs]{display:flex;gap:7px}.library-bar button.selected{border-color:#ffe000;color:#ffe000}.library-body{height:648px;overflow:hidden;position:relative}.cabinet-page-hidden{display:none!important}
#cabinet-library #content-view{display:block;padding:20px 0;margin:0;height:648px;overflow:hidden;color:#e5f5ff}#cabinet-library .view-title{font-size:31px;margin:5px 0 15px}#cabinet-library h2{font-size:33px}#cabinet-library p{color:#bfd9e9}#cabinet-library button{background:#102e48;color:#fff;border-color:#38607c}#cabinet-library button.primary{background:#ffe000;color:#00101b}.cabinet-app .intro{line-height:1.4}
#cabinet-library .marina-heading{height:80px;margin:0}#cabinet-library .marina-heading h2{font-size:30px;line-height:1}#cabinet-library .marina-heading br{display:none}#cabinet-library .fleet-total strong{font-size:32px}#cabinet-library .marina-status{padding:8px;margin:5px 0}#cabinet-library .marina-top{height:452px;grid-template-columns:1.4fr 1fr;margin:0;gap:24px}#cabinet-library .boat-vending{grid-template-columns:.9fr 1fr;padding:15px}#cabinet-library .machine-art img{max-height:350px;object-fit:contain}#cabinet-library .machine-controls{padding:10px}#cabinet-library .machine-controls h3{font-size:25px}#cabinet-library .machine-controls p{font-size:15px}#cabinet-library .equipped-boat{padding:12px}#cabinet-library .equipped-boat .boat-card{max-width:none;display:grid;grid-template-columns:1fr 1fr}#cabinet-library .boat-card-art{height:110px}#cabinet-library .boat-card-top{grid-column:1/-1}#cabinet-library .boat-card-name{padding:10px}#cabinet-library .boat-card-name h3{font-size:19px}#cabinet-library .boat-stats{padding:10px}#cabinet-library .boat-world-odds{font-size:12px;padding:10px}#cabinet-library .boat-card-foot{grid-column:1/-1}#cabinet-library .boat-perk-copy{font-size:14px}#cabinet-library .fleet-heading,#cabinet-library .fleet-grid,#cabinet-library .fleet-pagination,#cabinet-library .fleet-pager{display:none!important}
#cabinet-library .career-heading{margin:0;padding:0}#cabinet-library .career-heading h2{font-size:30px}#cabinet-library .career-heading p{margin:5px 0;font-size:15px}#cabinet-library .career-ladder{margin:12px 0;gap:8px}#cabinet-library .career-ladder li{padding:10px}#cabinet-library .career-home{height:410px;grid-template-columns:440px 1fr;gap:22px}#cabinet-library #career-map{height:410px;min-height:0}#cabinet-library .career-home>section{padding:16px}#cabinet-library .career-home p{font-size:14px;margin:9px 0}#cabinet-library .career-event{height:420px}#cabinet-library .career-event-art img{max-height:290px}#cabinet-library .career-history{display:grid;grid-template-columns:repeat(2,1fr)}
#cabinet-library #world-view{height:648px;padding:0;overflow:hidden;position:relative}#cabinet-library .world-top{height:45px;padding:4px 0}#cabinet-library .world-top h2,#cabinet-library .world-top .eyebrow{display:none}#cabinet-library .world-top-actions{margin-left:auto}#cabinet-library .world-layout{display:grid!important;grid-template-columns:345px 1fr!important;height:567px!important;min-height:0;gap:15px}#cabinet-library .world-stage{height:567px!important;min-height:0!important;grid-column:2;grid-row:1}#cabinet-library .world-sidebar,#cabinet-library .world-field{overflow:hidden!important;height:567px;max-height:none;border-radius:4px;padding:13px;grid-column:1;grid-row:1;background:#061a2c}#cabinet-library .world-field{display:none}#cabinet-library .world-sidebar>.world-loadout,#cabinet-library .world-sidebar>.world-environment,#cabinet-library .world-sidebar>.world-party,#cabinet-library .world-sidebar>.world-recent,#cabinet-library .world-sidebar>.world-destinations{display:none}#cabinet-library .world-results{max-height:none;overflow:hidden}#cabinet-library .world-results button{font-size:15px;padding:9px}#cabinet-library .world-results small{font-size:11px}#cabinet-library .world-discovery-actions{display:flex;gap:8px}#cabinet-library .world-discovery-actions button{font-size:11px}#cabinet-library .world-message{font-size:11px;line-height:1.2;margin:7px}
#cabinet-library [data-cabinet-tab=rig] .world-sidebar>*{display:none}#cabinet-library [data-cabinet-tab=rig] .world-sidebar>.world-loadout,#cabinet-library [data-cabinet-tab=rig] .world-sidebar>.world-environment,#cabinet-library [data-cabinet-tab=rig] .world-sidebar>.world-party{display:block}#cabinet-library [data-cabinet-tab=rig] .world-loadout{padding:0;margin:0;border:0}#cabinet-library [data-cabinet-tab=rig] .world-boat-preview{height:70px;min-height:0}#cabinet-library [data-cabinet-tab=rig] .world-turntable{height:70px}#cabinet-library [data-cabinet-tab=rig] .world-turntable img{height:65px}#cabinet-library [data-cabinet-tab=rig] select{margin:3px 0 8px;padding:6px}
#cabinet-library [data-cabinet-tab=fish] .world-sidebar,#cabinet-library [data-cabinet-tab=sources] .world-sidebar{display:none}#cabinet-library [data-cabinet-tab=fish] .world-field,#cabinet-library [data-cabinet-tab=sources] .world-field{display:block;position:static;width:auto;inset:auto;box-shadow:none;max-height:none}#cabinet-library [data-cabinet-tab=fish] .world-provenance{font-size:11px;max-height:84px;overflow:hidden}#cabinet-library [data-cabinet-tab=fish] .world-provenance p,#cabinet-library [data-cabinet-tab=fish] .world-provenance small,#cabinet-library [data-cabinet-tab=fish] .world-sources,#cabinet-library [data-cabinet-tab=fish] .world-legend{display:none}#cabinet-library [data-cabinet-tab=sources] .world-fish-list,#cabinet-library [data-cabinet-tab=sources] .world-legend{display:none}#cabinet-library [data-cabinet-tab=sources] .world-provenance{font-size:13px;line-height:1.3}#cabinet-library .world-fish-list article{padding:8px 0;min-height:105px}#cabinet-library .world-fish-list img{height:70px;width:76px}#cabinet-library .world-fish-list small,#cabinet-library .world-fish-list span{font-size:10px;line-height:1.3}#cabinet-library .world-fish-list b{font-size:16px}#cabinet-library .world-fish-list button{font-size:11px;padding:5px;margin:5px 0 0}#cabinet-library .world-sources p{font-size:15px;line-height:1.5}
#cabinet-library .world-fishing:not(.show-field) .world-layout{display:block!important}#cabinet-library .world-fishing:not(.show-field) .world-sidebar,#cabinet-library .world-fishing:not(.show-field) .world-field{display:none!important}#cabinet-library .world-fishing:not(.show-field) .world-stage{width:100%;height:600px!important}#cabinet-library .world-fishing .world-top{height:25px}#cabinet-library .world-fishing .world-controls{padding:7px 15px;bottom:20px}#cabinet-library .world-fishing .world-map-title{max-width:55%}#cabinet-library .world-fishing .world-map-tools{max-width:40%}#cabinet-library .world-fishing .world-scenery{font-size:11px}#cabinet-library .world-fishing .world-fight{top:175px}
.cabinet-app dialog{position:fixed;left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%) scale(var(--cabinet-scale));transform-origin:center;margin:0!important;width:1200px;max-width:none!important;max-height:800px;height:auto;border:3px solid #00c7ff;background:#071525;color:white;overflow:hidden;padding:28px}
.cabinet-app dialog::backdrop{background:#000b}.cabinet-app dialog .modal-title{font-size:32px}.cabinet-app dialog .intro{font-size:17px}.cabinet-app dialog .close{position:absolute;top:12px;right:15px}.cabinet-app dialog .key-grid{display:none}.cabinet-app dialog .feedback-settings{display:none}.cabinet-app dialog .settings-row{font-size:18px;margin:8px 0}.cabinet-app dialog .operator{display:block}.cabinet-app dialog .operator[open]{padding:10px}.cabinet-app dialog .operator-row{display:flex;gap:20px;align-items:center;margin:10px 0}.cabinet-app dialog .operator-row select{font-size:18px}.cabinet-app #modal .intro:last-child{display:none}
.reduced-motion *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){#cabinet-stage *{animation:none!important;transition:none!important}}

#cabinet-playfield #game canvas{object-fit:fill!important}
.cabinet-app #toast{opacity:0;pointer-events:none}.cabinet-app #toast.visible{opacity:1}
.cabinet-app .vault-dialog .vault-secrets{grid-template-columns:1fr 1fr 2fr;gap:16px}.cabinet-app .vault-dialog .vault-secrets section{min-width:0}.cabinet-app .vault-dialog .vault-secrets output{font-size:20px;line-height:1.5;min-height:100px}.cabinet-app .vault-dialog .vault-secrets section:last-child output{font-size:18px}.cabinet-app .vault-dialog p{margin:12px 0}.cabinet-app .vault-dialog .notice{padding:12px}.cabinet-app .vault-dialog .vault-tabs{margin-bottom:12px}.cabinet-app .vault-dialog .check-label{margin:12px 0}

.operator-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:30px 0}.operator-grid article{padding:30px;border:2px solid #246783;background:#092039}.operator-grid h3{font-size:35px;color:#ffe000;margin:0 0 25px}.operator-grid button{display:block;width:100%;margin:15px 0;padding:20px;color:#fff;background:#04101c;border:1px solid #66b6d7;font-size:25px}
#cabinet-library .outdoor-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:188px;gap:15px;margin:10px 0}#cabinet-library .outdoor-grid article{display:grid;grid-template-columns:105px 1fr;grid-template-rows:auto auto auto;padding:15px;gap:5px 12px;background:#092238}#cabinet-library .outdoor-grid .outdoor-icon{width:100px;height:110px;grid-row:1/4}#cabinet-library .outdoor-grid h3{font-size:22px;margin:0}#cabinet-library .outdoor-grid p{font-size:14px;line-height:1.4;margin:0}#cabinet-library .outdoor-grid button{padding:8px;font-size:15px}#cabinet-library .view-heading{display:flex;align-items:center;gap:20px;height:100px}#cabinet-library .view-heading .eyebrow{display:none}#cabinet-library .view-heading h2{font-size:32px;min-width:280px}#cabinet-library .outdoor-rules{margin:7px 0;font-size:14px}

/* World and service scenes use the whole cabinet below the marquee. */
#cabinet-stage:has(#cabinet-library:not([hidden])) #cabinet-hud,#cabinet-stage:has(#cabinet-library:not([hidden])) #cabinet-clock,#cabinet-stage:has(#cabinet-library:not([hidden])) .cabinet-venue{visibility:hidden}
#cabinet-library{bottom:0}.library-body,#cabinet-library #content-view,#cabinet-library #world-view{height:781px}
#cabinet-library .world-layout,#cabinet-library .world-stage{height:696px!important}#cabinet-library .world-sidebar,#cabinet-library .world-field{height:696px}
#cabinet-library .world-fishing:not(.show-field) .world-stage{height:731px!important}
#cabinet-library .world-pad{display:none!important}#cabinet-library .world-tackle{float:left;width:50%;display:flex}#cabinet-library .world-buttons{display:flex;justify-content:flex-end}
#cabinet-library .world-controls{padding:13px;bottom:20px}#cabinet-library .world-status b{font-size:20px}#cabinet-library .world-status span{font-size:16px}#cabinet-library .world-tackle select{font-size:17px;padding:8px}#cabinet-library .world-buttons button{font-size:17px;padding:14px}#cabinet-library .world-controls>p{font-size:12px}
#cabinet-library .world-map-tools button,#cabinet-library .world-top-actions button{font-size:15px}#cabinet-library .world-controller{font-size:14px}#cabinet-library .world-weather{font-size:14px}#cabinet-library .world-guide{font-size:16px;bottom:200px}
#cabinet-library .world-sidebar label{font-size:15px}#cabinet-library .world-sidebar select,#cabinet-library .world-search input{font-size:17px}#cabinet-library .world-search button{font-size:17px}
#cabinet-library [data-cabinet-tab=destinations] .world-sidebar>*{display:none}#cabinet-library [data-cabinet-tab=destinations] .world-destinations{display:block}#cabinet-library .world-destinations>summary{display:none}#cabinet-library .world-bookmarks{grid-template-columns:1fr;gap:12px}#cabinet-library .world-bookmarks button{font-size:19px;padding:15px}#cabinet-library .world-bookmarks small{font-size:12px}
#cabinet-library [data-cabinet-tab=rig] .world-party{margin:0;border:0}#cabinet-library [data-cabinet-tab=rig] .world-party p{font-size:18px}#cabinet-library [data-cabinet-tab=rig] .world-party button{font-size:18px}#cabinet-library [data-cabinet-tab=rig] .world-environment summary{font-size:17px}
#cabinet-library .world-fish-list article{min-height:128px}#cabinet-library .world-fish-list b{font-size:19px}#cabinet-library .world-fish-list small,#cabinet-library .world-fish-list span{font-size:13px}#cabinet-library .world-fish-list button{font-size:14px}
#cabinet-library .world-provenance{overflow-wrap:anywhere}#cabinet-library .world-sources p{font-size:16px}
#cabinet-library .career-home{height:520px}#cabinet-library #career-map{height:520px}#cabinet-library .career-event{height:auto}#cabinet-library .career-home p{font-size:17px}#cabinet-library .career-home select,#cabinet-library .career-home button{font-size:18px}

.editing-control{outline:4px solid #ffe000!important;background:#213400!important}
.cabinet-app .world-journal .world-legend-grid{grid-template-columns:repeat(4,1fr);gap:10px}.cabinet-app .world-journal .world-legend-grid article{padding:12px;min-height:128px}.cabinet-app .world-journal .world-records{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cabinet-app .world-journal .world-records article{min-height:130px}.cabinet-app .world-journal [hidden]{display:none!important}.journal-pager{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.journal-pager button{padding:12px;font-size:18px}
#cabinet-library .story-grid{grid-template-columns:400px 1fr;gap:25px}#cabinet-library .story-art{min-height:580px}#cabinet-library .chapter{margin:12px 0;padding:17px}#cabinet-library .chapter h3{font-size:24px}#cabinet-library .location-grid{grid-template-columns:repeat(3,1fr);gap:20px}#cabinet-library .water-card>img{height:220px}#cabinet-library .water-card h3{font-size:28px}#cabinet-library .water-card p{font-size:17px}
#cabinet-library .boat-vending:has(details[open]){grid-template-columns:1fr}#cabinet-library .boat-vending:has(details[open]) .machine-art{display:none}#cabinet-library .boat-vending:has(details[open]) .boat-odds{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}#cabinet-library .boat-vending:has(details[open]) .boat-odds span{font-size:15px}#cabinet-library .marina{padding:12px 20px}

.settings-grid{gap:12px}.settings-grid button{height:70px;padding:14px;font-size:19px}.settings-grid+.option-note{font-size:17px;margin:14px 0}

#cabinet-library .world-fish-list article{display:block;padding:10px 0}#cabinet-library .world-fish-list img{width:100%;height:100px;object-fit:contain}#cabinet-library .world-fish-list small,#cabinet-library .world-fish-list span{font-size:15px;line-height:1.35}#cabinet-library .world-fish-list b{font-size:25px}#cabinet-library .world-fish-list button{font-size:18px;padding:10px}#cabinet-library .world-fish-list a{overflow-wrap:anywhere}

#cabinet-library .career-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;height:105px}#cabinet-library .career-home,#cabinet-library #career-map{height:480px}#cabinet-library .career-heading>div{flex:1}#cabinet-library .career-heading>button{flex:0 0 auto}#cabinet-library .career-home .world-results{margin:8px 0}#cabinet-library .career-home .world-results button{padding:7px;font-size:14px}#cabinet-library .career-home .world-results small{font-size:11px}

#cabinet-library .machine-controls:has(details[open])>p,#cabinet-library .machine-controls:has(details[open])>small{display:none}

/* Competition information uses the black cabinet surround, never the fish. */
#cabinet-hud .race-target{position:absolute;left:100px;right:10px;top:82px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:800 14px 'Barlow Condensed',sans-serif;color:#ffe000;letter-spacing:.25px}
#cabinet-hud .score[data-leading=true]{background:linear-gradient(180deg,#152112,#02050a 75%)}
#cabinet-hud .score[data-leading=true] .score-title:after{content:' ★';color:#ffe000}
#cabinet-hud .landing-progress{position:absolute;left:100px;right:140px;top:107px;height:15px;overflow:hidden;background:#152232;border:1px solid #355977;border-radius:3px}
#cabinet-hud .landing-progress i{position:absolute;inset:0 auto 0 0;background:var(--p);opacity:.5;transition:width .1s linear}
#cabinet-hud .landing-progress span{position:relative;display:block;text-align:center;font:800 10px/13px Arial,sans-serif;color:#fff;text-shadow:0 1px 2px #000}
#cabinet-hud .landing-progress[hidden]{display:none}
#derby-race-banner{position:absolute;z-index:9;top:14px;left:50%;transform:translateX(-50%);max-width:60%;padding:9px 24px;border:2px solid #ffe000;background:#02050aed;color:#ffe000;box-shadow:0 5px 20px #0008;font:900 25px/1.05 'Barlow Condensed',sans-serif;text-align:center;letter-spacing:1px;pointer-events:none}
#derby-race-banner[data-kind=lead]{border-color:#00caff;color:#fff}
#derby-race-banner[hidden]{display:none}
#cabinet-clock.final-minute #timer{color:#ff354c}
/* Reserve a readable row for rivalry while preserving four independent seats. */
.playing-round #cabinet-hud{height:154px}
.playing-round #cabinet-playfield{bottom:154px}
#cabinet-hud .score{padding-top:10px}
#cabinet-hud .score>strong{position:absolute;left:100px;top:31px;margin:0}
#cabinet-hud .fish-count,#cabinet-hud .score.bag-score .fish-count{position:absolute;display:block;left:100px;right:10px;top:73px;margin:0;line-height:15px;height:15px}
#cabinet-hud .race-target{top:94px;line-height:18px}
#cabinet-hud .fight-cue{position:absolute;left:100px;right:135px;bottom:10px;overflow:hidden;height:17px}
#cabinet-hud .cue-title{font-size:12px;line-height:17px}
#cabinet-hud .landing-progress{left:auto;right:12px;top:64px;width:108px;height:14px}
#cabinet-hud .landing-progress span{font-size:9px;line-height:12px}

body:not(.playing-round) .race-target,body:not(.playing-round) .landing-progress{display:none!important}
