/* Makan Fin-ish Line: a focused food-decision tool with a playful reveal. */
html,body{max-width:100%;overflow-x:clip}body{background:#eef1eb}
.game-hero{min-height:300px;padding:44px max(24px,7vw) 68px;grid-template-columns:minmax(0,760px) minmax(240px,1fr);background:radial-gradient(circle at 83% 20%,#176275 0 9%,transparent 9.3%),linear-gradient(135deg,#071f2f 0 58%,#0b4352);overflow:hidden;contain:paint}
.game-hero h1{max-width:760px;margin:10px 0 18px;font-size:clamp(48px,6.2vw,82px);line-height:.93;letter-spacing:-4px}
.game-hero>div>p:last-of-type{max-width:520px;margin-bottom:0;font-size:15px;line-height:1.45}
.game-shell{width:min(1380px,calc(100% - 40px));margin:-44px auto 70px;grid-template-columns:minmax(330px,.78fr) minmax(500px,1.22fr);gap:16px;align-items:stretch}
.setup-card,.race-card,.local-results{box-shadow:0 14px 36px #0c2f3e0d}
.setup-card,.race-card{min-width:0;padding:26px;border-radius:22px;overflow:hidden}
.setup-card{display:flex;flex-direction:column;background:#fffdf8}
.card-heading{min-width:0}.card-heading>div{min-width:0;grid-template-columns:42px minmax(0,1fr);column-gap:12px}.card-heading>div>span{width:42px;height:42px;border-radius:14px;color:var(--lime)}
.card-heading h2{font-size:clamp(25px,2.1vw,32px);line-height:1.05}.card-heading>b{align-self:start;background:#eef4f1;color:#49676e}
.setup-help{margin:15px 0 13px;font-size:11px;line-height:1.5}
.race-presets{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-bottom:12px}.race-presets>span{grid-column:1/-1;color:#668087;font-size:8px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase}.race-presets button{min-height:40px;padding:0 8px;border:1px solid #cdd8d5;border-radius:11px;background:#f7f9f5;color:#173445;font-size:10px;font-weight:850;cursor:pointer}.race-presets button:hover,.race-presets button:focus-visible{border-color:#34b7cc;background:#eaf9fa}
.racer-inputs{grid-template-columns:1fr;gap:7px}.racer-row{grid-template-columns:27px 58px 1fr 36px;min-height:58px;padding:5px 7px;border-radius:12px;background:#f7f9f5}.racer-number{color:#789097;font-size:8px;font-weight:900;letter-spacing:.6px;text-align:center}.racer-swatch{display:grid;width:56px;height:38px;place-items:center}.racer-fish-canvas{display:block;width:56px;height:33px;filter:drop-shadow(0 3px 3px #163b4930)}.racer-row input{font-size:13px}.setup-actions{display:grid;grid-template-columns:.72fr 1.28fr;margin-top:auto;padding-top:16px}.setup-actions button{width:100%;padding-inline:10px}.form-message{text-align:left}
.race-card{background:linear-gradient(180deg,#fff 0 112px,#eaf7f7 112px,#dceff0 100%)}
.race-card:before,.race-card:after{opacity:.42}.race-status{margin:14px 0 10px;border:1px solid #bcdfe2;background:#f7ffff;color:#245a66}
.race-track{gap:6px;min-height:260px}.empty-track{height:260px;display:flex;align-items:center;justify-content:center;gap:16px;border:1px dashed #8fb8ba;background:#ffffff63}.empty-track strong{font-size:14px}.empty-fish-canvas{display:block;width:78px;height:46px;filter:drop-shadow(0 4px 4px #163b4930)}
.race-lane{height:64px;border:1px solid #c6e2e2;border-radius:13px;background:linear-gradient(180deg,#dff5f7,#f2fbf9 60%,#d7eff0);overflow:hidden}.race-lane:after{right:26px;width:6px}.lane-number{position:absolute;z-index:3;left:8px;bottom:7px;color:#6b8990;font-size:7px;font-weight:900}.lane-label{left:8px;top:6px;max-width:125px;padding:3px 7px;background:#fffffff0;font-size:9px}.racing-fish{top:15px;width:76px;height:46px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 5px 4px #0a35433a);overflow:visible}.racing-fish:before,.racing-fish:after,.racing-fish>.tuna-fin,.racing-fish>.tuna-gill{display:none}.racing-fish-canvas{display:block;width:76px;height:44px;contain:strict}.race-live .racing-fish{will-change:transform}.race-lane.leading{box-shadow:inset 0 0 0 2px #30b9ce,0 5px 12px #2ba5b21c}.race-lane.finished{background:#f1fbd8}.lane-angler{display:none!important}
.winner-panel{margin-top:14px;padding:22px;border:1px solid #325767;border-radius:18px;background:linear-gradient(135deg,#071f2f,#0c3d4b)}.winner-panel>strong{margin:8px 0;font-size:clamp(36px,5.4vw,58px)}.winner-panel>div{flex-wrap:wrap}.winner-panel .primary-btn{background:var(--lime)}
.local-results{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:16px 20px;background:#fff;content-visibility:auto;contain-intrinsic-size:80px}.local-results[hidden]{display:none}.local-results h2{margin:0;font-size:18px}.local-results ol{scrollbar-width:none}.local-results li{background:#f6f8f4}.local-results>button{min-height:38px;padding:0 12px;border:1px solid #d5ddda;border-radius:10px;background:#fff}
.game-ad-zone,.game-site-footer{content-visibility:auto;contain-intrinsic-size:180px}
@media(max-width:1100px){.game-hero{grid-template-columns:minmax(0,1fr)}.hero-fish.species-hero{display:none}.game-shell{max-width:860px;grid-template-columns:minmax(0,1fr)}.local-results{grid-column:auto}.setup-actions{margin-top:0}.race-track{min-height:220px}.empty-track{height:220px}}
@media(max-width:760px){.game-hero{min-height:255px;padding:30px 20px 62px}.game-hero h1{font-size:clamp(40px,12vw,54px);letter-spacing:-2.6px}.game-hero>div>p:last-of-type{font-size:13px}.game-shell{width:calc(100% - 20px);margin-top:-30px;gap:11px}.setup-card,.race-card,.local-results{padding:17px;border-radius:18px}.card-heading>div{grid-template-columns:37px 1fr}.card-heading>div>span{width:37px;height:37px;border-radius:12px}.card-heading h2{font-size:24px}.setup-help{margin:11px 0}.race-presets{grid-template-columns:1fr 1fr}.race-presets button:last-child{grid-column:1/-1}.setup-actions{grid-template-columns:1fr;padding-top:12px}.race-heading{align-items:flex-start}.sound-toggle{flex:0 0 auto}.race-track{min-height:190px}.empty-track{height:190px;padding:18px}.race-lane{height:59px}.racing-fish{top:13px;scale:.92;transform-origin:left center}.winner-panel>div{display:grid;grid-template-columns:1fr}.local-results{grid-template-columns:1fr auto;gap:10px}.local-results ol{grid-column:1/-1;order:3;display:flex;flex-wrap:wrap;overflow:visible;padding-bottom:0}.local-results li{min-width:0;white-space:normal}}

@media(max-width:760px){.racer-row input{min-height:40px}.remove-racer,.sound-toggle{min-width:44px;min-height:44px}}
@media(max-width:390px){.card-heading>b{padding:6px 7px}.race-presets{grid-template-columns:1fr}.race-presets button:last-child{grid-column:auto}.racer-row{grid-template-columns:23px 52px 1fr 34px}.racer-swatch{width:50px}.racer-fish-canvas{width:50px;height:30px}.empty-track{gap:11px}.empty-fish-canvas{width:68px;height:40px}.winner-panel{padding:18px 14px}}
@media(prefers-reduced-motion:reduce){.racing-fish-canvas{animation:none}}
