@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=Nunito+Sans:wght@600;700;800;900&display=swap');
:root{--ink:#f4f6ff;--cream:#f4f6ff;--yellow:#ffcf48;--orange:#ff963e;--green:#15213c;--surface:#182641;--line:#ffffff1c;--muted:#acb8d0;--font:'Nunito Sans',system-ui,sans-serif;--display:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:var(--font);color:var(--ink);background:#101a31}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}button:disabled{opacity:.45;cursor:default}button{color:inherit}a{color:var(--yellow)}[hidden],.hidden{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.ui-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;pointer-events:none}
#game{position:relative;height:100dvh;overflow:hidden;isolation:isolate}#game[data-state="playing"]{touch-action:none}#world{width:100%;height:100%;display:block;touch-action:none;position:absolute;inset:0}.vignette{pointer-events:none;position:absolute;inset:0;background:linear-gradient(#0f183655,transparent 22%,transparent 76%,#0b14265c)}
.topbar{position:absolute;top:calc(env(safe-area-inset-top) + 14px);left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));z-index:8;display:flex;align-items:center;justify-content:space-between;pointer-events:none;max-width:1040px;margin:auto}.wordmark{pointer-events:auto;text-decoration:none;color:#fff;font:900 27px/.85 var(--display);letter-spacing:.6px;display:flex;flex-direction:column}.wordmark>span{color:var(--yellow);letter-spacing:2px;margin-top:3px}.top-actions{display:flex;gap:8px;pointer-events:none}.icon-button{pointer-events:auto;width:44px;height:44px;border-radius:14px;border:1px solid #ffffff28;background:#182641;color:var(--ink);position:relative;display:grid;place-items:center;font-size:25px}.icon-button:hover{background:#263757}.mute-slash{width:26px;height:2px;background:var(--cream);position:absolute;transform:rotate(-45deg)}.icon-button.sound-on .mute-slash{display:none}
.screen{position:absolute;inset:0;z-index:5}.start-screen{overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;background:linear-gradient(90deg,#102139f2 0%,#152b43d9 42%,#1b304c66 100%)}.lobby{width:min(100%,1040px);height:100%;min-height:560px;margin:auto;padding:calc(env(safe-area-inset-top) + 80px) 20px calc(env(safe-area-inset-bottom) + 16px);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:14px}
.lobby-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lobby-stat{display:flex;align-items:center;gap:12px;border:1px solid #ffffff1c;background:#0e172bbd;border-radius:17px;padding:12px 15px;min-width:0}.lobby-stat .ui-icon{color:var(--yellow);width:28px;height:28px}.lobby-stat span{display:block;font-size:12px;font-weight:800;letter-spacing:.7px;color:var(--muted)}.lobby-stat strong{display:block;font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.wallet-stat strong{color:#ffe28b}
.opener-stage{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;min-height:0}.opener-copy{min-width:0;container-type:inline-size}.season-tag{font-size:12px;letter-spacing:1.5px;font-weight:900;color:#ffce81}.opener-copy h1{margin:18px 0 20px;font:900 clamp(90px,16dvh,158px)/.8 var(--display);letter-spacing:-1.5px;color:#fff;transform:rotate(-3deg);text-shadow:0 5px 0 #101c3360}.opener-copy h1 span,.opener-copy h1 i{color:var(--yellow)}.opener-copy h1>span{display:inline-block;white-space:nowrap}.opener-copy h1 i{font-style:normal;display:inline-block;transform:rotate(9deg)}.opener-intro{font-size:24px;font-weight:900;line-height:1.2;margin:0 0 9px}.opener-story{font-size:16px;line-height:1.5;color:#d4e0ee;margin:0;max-width:360px}.opener-platy{width:min(100%,335px);margin:0 auto;transform:rotate(5deg);pointer-events:none}.opener-platy img{display:block;width:100%;height:auto;border:6px solid #f8e6bc;border-radius:27px;box-shadow:0 18px 55px #07132959}.opener-platy figcaption{position:relative;width:92%;margin:-18px auto 0;padding:12px 8px;background:#ffcf48;border-radius:12px;text-align:center;color:#33220b;transform:rotate(-8deg);box-shadow:0 5px 0 #b47b2680}.opener-platy figcaption strong{display:block;font:900 28px/1 var(--display)}.opener-platy figcaption span{display:block;font-size:12px;margin-top:5px;font-weight:800}.opener-outfit{color:#c6d3ee;font-size:13px;margin:0 0 10px;text-align:center}.lobby-stats{width:min(100%,440px)}.lobby-nav{width:min(100%,440px);justify-self:start}.lobby-play{justify-self:start!important;max-width:440px!important}

.primary-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:56px;padding:15px 22px;border:1px solid #ffe490;border-radius:17px;box-shadow:0 5px 0 #bd7f23;background:linear-gradient(#ffdc65,#ffc642);color:#33220b;font-weight:900;font-size:20px;text-decoration:none;transition:transform .1s,box-shadow .1s}.primary-button:active{transform:translateY(3px);box-shadow:0 2px 0 #bd7f23}.lobby-play{width:100%;max-width:390px;justify-self:center}.lobby-play .primary-button{min-height:62px;font-size:24px;padding-inline:25px}.lobby-play p{font-size:13px;text-align:center;color:var(--muted);margin:13px 0 0}.lobby-nav{display:grid;grid-template-columns:repeat(4,1fr);padding:8px 4px;border:1px solid #ffffff20;border-radius:21px;background:#101b31;box-shadow:0 7px 26px #070e2529}.lobby-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:59px;min-width:0;padding:6px 2px;border:0;background:none;color:#c3d0e9;font-size:14px;font-weight:800;border-radius:13px}.lobby-nav button:hover,.lobby-nav button:active{background:#263b61;color:var(--yellow)}.lobby-nav .ui-icon{width:26px;height:26px;color:#e4ecff}.lobby-nav button:nth-child(2) .ui-icon{color:var(--yellow)}
/* During a run, only explicit controls accept touches. */
#game[data-state="playing"] .wordmark,#game[data-state="playing"] #help-open,#game[data-state="paused"] .wordmark{display:none}#game[data-state="playing"] .topbar,#game[data-state="paused"] .topbar{justify-content:flex-end}.hud,.speed-meter,.power-status,.turn-warning,.tutorial,.toast,.desktop-hint,.vignette{pointer-events:none;user-select:none}.hud *,.power-status *,.turn-warning *,.tutorial *,.toast *,.speed-meter *{pointer-events:none}
.hud{position:absolute;top:calc(env(safe-area-inset-top) + 12px);left:16px;z-index:3;display:flex;align-items:center;gap:16px;padding:9px 14px;border:1px solid #ffffff2c;border-radius:17px;background:#101b32e8;color:var(--cream);max-width:calc(100% - 134px);font-variant-numeric:tabular-nums}.stat{min-width:0}.stat>span{display:block;font-size:12px;color:#bccae4;font-weight:800;letter-spacing:.6px}.stat strong{display:block;font-size:25px;line-height:1.1;white-space:nowrap}.stat strong small{font-size:14px}.stat b{font-weight:900}.corn-icon{color:var(--yellow);font-size:18px;font-style:normal}.run-divider{width:1px;height:30px;background:#ffffff26;flex-shrink:0}.speed-meter{position:absolute;top:calc(env(safe-area-inset-top) + 85px);left:18px;z-index:3;color:#fff;font-size:12px;font-weight:900;text-shadow:0 1px 4px #0b1837;max-width:175px}.speed-meter>div{height:3px;margin-top:5px;background:#142e3c90;border-radius:5px;overflow:hidden}.speed-meter i{display:block;height:100%;background:var(--yellow);width:0}
.power-status{position:absolute;z-index:4;right:18px;top:calc(env(safe-area-inset-top) + 82px);display:flex;flex-direction:column;gap:5px;font-weight:900;font-size:12px;align-items:flex-end}.power-status span:not(:empty){padding:5px 9px;border-radius:9px;background:#12223dec;color:#86ddff;border:1px solid #5acbf76b}.power-status #boost-timer:not(:empty){color:#ffdb65;border-color:#ffdb656b}.power-status #double-timer:not(:empty){color:#c9f79a;border-color:#a4e66b6b}
.turn-warning{position:absolute;z-index:4;left:50%;top:calc(env(safe-area-inset-top) + 154px);transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-items:center;background:#14223ce8;border:1px solid #a9bfeb70;border-radius:15px;padding:8px 14px;color:#f4f6ff;max-width:calc(100% - 32px)}.turn-warning b{font-size:34px;line-height:1;grid-row:1/3}.turn-warning strong{font-size:14px;white-space:nowrap}.turn-warning small{font-size:12px;color:#bfcee7}.turn-warning.turn-now{background:#ffcf48;color:#281e0f;border-color:#ffe58d}.turn-warning.turn-now small{color:#5b421e}
.tutorial{position:absolute;top:calc(env(safe-area-inset-top) + 120px);left:50%;transform:translateX(-50%);z-index:3;text-align:center;background:#16233ced;color:#fff;padding:12px 16px;border:1px solid #ffffff21;border-radius:16px;width:max-content;max-width:calc(100% - 32px)}.tutorial strong{font:800 20px/1.1 var(--display);letter-spacing:.6px;color:var(--yellow)}.tutorial p{white-space:pre-line;font-size:14px;line-height:1.5;font-weight:700;margin:7px 0}.tutorial small{font-size:13px;color:var(--muted)}.toast{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 152px);left:50%;transform:translateX(-50%);z-index:4;border-radius:12px;background:#15223dee;color:#ffde7b;padding:10px 16px;font-size:14px;font-weight:900;text-align:center;width:max-content;max-width:calc(100% - 36px)}.centered{display:flex;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + 74px) 18px calc(env(safe-area-inset-bottom) + 18px);background:#0b152cc9;overflow-y:auto;touch-action:pan-y}.panel{width:min(400px,100%);max-height:100%;overflow-y:auto;padding:28px;border:1px solid #ffffff29;border-radius:25px;background:#17243f;box-shadow:0 18px 70px #07102459;text-align:center}.eyebrow{font-size:12px;font-weight:900;letter-spacing:1.8px;color:#ffcf73}.panel h2{font:900 56px/.95 var(--display);margin:16px 0;color:#fff}.panel p{font-size:16px;line-height:1.45;color:var(--muted);margin:12px 0 22px}.text-button{border:0;background:none;color:#ccd9f2;padding:12px 4px;font-size:14px;font-weight:800;min-height:44px}.text-button:hover{color:var(--yellow)}.panel-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 15px;margin-top:10px}.end-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-block:18px}.end-stats>div{padding:15px 5px;border:1px solid #ffffff1c;background:#101b32;border-radius:16px}.end-stats strong{display:block;font:800 40px/1 var(--display)}.end-stats>div:nth-child(2) strong{color:var(--yellow)}.end-stats span{font-size:12px;font-weight:800;display:block;margin-top:6px;color:#b2c2de}.end-best{font-size:12px;font-weight:800;display:flex;justify-content:center;gap:14px;margin:16px 0;color:#b2c2de}.end-best b{color:white;font-size:14px}#score-status{font-size:14px;margin:10px 0 18px}
#community,#help-dialog{color:var(--ink);background:#15213a;border:1px solid #ffffff29;border-radius:24px;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;padding:24px;box-shadow:0 20px 70px #07102466}#community::backdrop,#help-dialog::backdrop{background:#080f24c7}.community-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.community-head h2{font-size:28px;line-height:1.1;margin:8px 0}.community-head .icon-button{flex-shrink:0}#community p,#help-dialog p{font-size:16px;line-height:1.5;color:var(--muted)}#community .primary-button{font-size:16px;justify-content:center}.nickname-row{display:flex;gap:8px;margin-top:7px}.nickname-row input{min-width:0;flex:1;background:#0f192d;border:1px solid #ffffff30;border-radius:12px;padding:12px;color:#fff;font-size:16px}.nickname-row button{border:0;border-radius:12px;background:#324c7a;color:#fff;padding:12px 18px;font-weight:800}#profile-form label{font-size:14px;font-weight:700}.profile-best strong{font-size:24px;margin-left:12px;color:#fff}#signout-score{font-size:14px}.board-scroll{overflow:auto;margin-top:18px}#community table{width:100%;border-collapse:collapse;font-size:14px}#community th{text-align:left;font-size:12px;text-transform:uppercase;padding:12px 8px;border-bottom:1px solid #ffffff40;color:#b7c6e2}#community td{padding:14px 8px;border-bottom:1px solid #ffffff17;overflow-wrap:anywhere}#community td:nth-child(3){font-weight:800;white-space:nowrap}#community tbody tr:first-child{background:#ffcf4814}#my-rank{font-weight:800}#community-status{min-height:22px}.visit-farm{border:1px solid #6d91cc55;border-radius:9px;padding:9px 10px;color:#dce8ff;background:#2b4268;font-weight:800;white-space:nowrap}.help-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.help-controls>div{display:grid;gap:8px;text-align:center;padding:14px 6px;border-radius:14px;background:#233653}.help-controls b{font-size:30px;color:var(--yellow)}.help-controls span{font-size:14px}.help-powers{display:grid;gap:8px;font-size:14px;color:var(--muted);padding:15px 0;border-block:1px solid var(--line)}.help-powers b{color:#c3e4ff;display:inline-block;min-width:65px}.tips-setting{display:flex;align-items:center;gap:18px;justify-content:space-between;padding-top:22px}.tips-setting strong{font-size:16px;display:block}.tips-setting small{display:block;font-size:13px;color:var(--muted);margin-top:4px}.tips-setting input{width:25px;height:25px;flex-shrink:0;accent-color:var(--yellow)}#help-dialog .help-note{font-size:13px;margin:12px 0 0}

@media(min-width:761px){.hud{left:50%;transform:translateX(-50%);gap:25px;padding:10px 22px}.speed-meter{top:100px;left:auto;right:24px}.power-status{top:144px;right:24px}.turn-warning{top:135px}}
@media(max-width:360px){.lobby{padding-inline:14px}.lobby-stat{padding:10px;gap:7px}.lobby-stat strong{font-size:18px}.lobby-nav button{font-size:13px}.hud{left:12px;padding:9px 10px;gap:9px}.stat strong{font-size:21px}.topbar{left:12px;right:12px}}
@media(max-width:760px){.lobby{max-width:520px}.opener-stage{grid-template-columns:1.15fr 1fr;gap:12px}.opener-copy h1{font-size:clamp(74px,13dvh,110px);font-size:min(clamp(74px,13dvh,110px),48cqi);margin:15px 0 18px}.opener-intro{font-size:20px}.opener-story{font-size:14px;line-height:1.5}.opener-story br{display:none}.opener-platy img{border-width:4px;border-radius:21px}.opener-platy figcaption{padding:9px 6px;width:96%;margin-top:-12px}.opener-platy figcaption strong{font-size:23px}.opener-platy figcaption span{font-size:12px;line-height:1.2}.lobby-stats,.lobby-nav{width:100%}.lobby-play{max-width:100%!important;width:100%}.season-tag{font-size:12px;letter-spacing:.8px}}
@media(max-height:680px) and (orientation:portrait){.lobby{min-height:calc(540px + env(safe-area-inset-top) + env(safe-area-inset-bottom));gap:10px;padding-top:calc(env(safe-area-inset-top) + 70px);padding-bottom:calc(env(safe-area-inset-bottom) + 10px)}.lobby-stat{padding-block:8px}.lobby-stat strong{font-size:18px}.opener-copy h1{font-size:68px;margin:12px 0}.opener-intro{font-size:18px}.opener-story{display:none}.opener-platy figcaption span{display:none}.lobby-play .primary-button{min-height:53px;font-size:21px;padding-block:12px}.lobby-nav{padding-block:4px}.lobby-nav button{min-height:52px;gap:4px}.lobby-play p{margin-top:10px}.lobby-nav .ui-icon{width:23px;height:23px}.opener-outfit{margin-bottom:7px}}
@media(orientation:landscape) and (max-height:600px){.lobby{width:min(940px,100%);min-height:360px;padding:calc(env(safe-area-inset-top) + 68px) max(24px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-bottom));grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:1fr auto;column-gap:35px;row-gap:10px}.lobby-stats{display:none}.opener-stage{grid-column:1/3;grid-row:1;grid-template-columns:1.15fr 1fr;gap:35px}.opener-copy h1{font-size:68px;line-height:.85;margin:10px 0}.opener-copy h1 br{display:none}.opener-copy h1 span{margin-left:8px}.opener-intro{font-size:18px;margin-bottom:5px}.opener-story{font-size:14px}.opener-platy{width:min(28dvh,155px)}.opener-platy figcaption{padding:7px 5px}.opener-platy figcaption strong{font-size:20px}.opener-platy figcaption span{display:none}.lobby-play{grid-column:1;grid-row:2;align-self:end}.lobby-play .primary-button{min-height:48px;font-size:20px;padding:10px 18px}.lobby-play p,.opener-outfit{display:none}.lobby-nav{grid-column:2;grid-row:2;padding-block:2px}.lobby-nav button{min-height:48px;gap:4px;font-size:13px}.lobby-nav .ui-icon{width:21px;height:21px}.turn-warning{top:calc(env(safe-area-inset-top) + 88px);padding:6px 11px}.turn-warning small{display:none}.turn-warning b{font-size:28px}.speed-meter{left:18px;right:auto;top:calc(env(safe-area-inset-top) + 83px)}.power-status{top:calc(env(safe-area-inset-top) + 78px)}.tutorial{top:calc(env(safe-area-inset-top) + 78px);padding:8px 14px}.tutorial p{margin:5px 0;line-height:1.35}.tutorial small{display:none}.toast{bottom:122px}.centered{padding-top:65px}.panel{padding:20px}.panel h2{font-size:38px;margin:10px 0}.panel h2 br{display:none}.panel p{margin:10px 0}.end-stats{margin:10px 0}.end-stats>div{padding:10px}.end-stats strong{font-size:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

#lobby-account{display:inline-block;margin-left:10px;padding:7px 9px;border-radius:9px;background:#ffffff12;color:var(--yellow);font-size:14px;letter-spacing:0;text-decoration:underline;text-underline-offset:3px;min-height:32px}#lobby-account:focus-visible{outline:3px solid var(--yellow)}

.farm-progression{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px;border-radius:14px;background:#153542;color:#fff;margin-bottom:12px}.farm-progression progress{grid-column:1/-1;width:100%;height:8px;accent-color:#ffcf48}.farm-progression small{grid-column:1/-1;font-size:13px;color:#d7e6dd}.farm-workshop{padding:14px;border:1px solid #c8d4bd;border-radius:14px;margin-bottom:16px}.farm-workshop summary{cursor:pointer;font-weight:800;font-size:16px}.farm-workshop .order-card{margin-top:10px}

.panel .farm-invitation{font-size:14px;line-height:1.4;color:#ffde7b;margin:16px 0 0}.farm-result-button{flex-basis:100%;justify-content:center}

#again{position:relative;justify-content:center;text-align:center;padding-inline:50px}#again>span{position:absolute;right:22px;top:50%;transform:translateY(-50%)}

/* Supporting copy only; retain the original opener composition. */
.opener-story{font-family:var(--font);font-weight:600;line-height:1.6;letter-spacing:normal;word-spacing:normal;text-align:left;text-wrap:pretty}
.opener-story span{display:block}
.opener-story span+span{margin-top:.45em}
@media(max-width:760px){.opener-story{font-size:14px;line-height:1.55}}

/* Matched lobby counters; account access sits with the header controls. */
#game[data-state="menu"] .lobby-stat{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;padding:15px 14px;border:1px solid #52658260;border-radius:16px;background:linear-gradient(145deg,#1b2b44,#101b2e);box-shadow:inset 0 1px 0 #ffffff08}
#game[data-state="menu"] .lobby-stat>div{min-width:0}
#game[data-state="menu"] .lobby-stat .ui-icon{width:24px;height:24px}
#game[data-state="menu"] .lobby-stat span{font-size:12px;line-height:1.4;letter-spacing:.02em;font-weight:800;white-space:nowrap}
#game[data-state="menu"] .lobby-stat strong{font-size:clamp(19px,5.3vw,25px);line-height:1.25;margin-top:5px;letter-spacing:-.025em;font-weight:900;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#game[data-state="menu"] .wallet-stat{border-color:#bc985f55}
.top-actions #lobby-account{display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;min-height:44px;padding:8px 12px;margin:0;border:1px solid #ffffff28;border-radius:14px;background:#182641;color:#e2eafa;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}
#game:not([data-state="menu"]) #lobby-account{display:none}
#start-screen .lobby-play .primary-button{position:relative;width:88%;max-width:360px;min-height:50px;margin-inline:auto;padding:11px 46px;justify-content:center;text-align:center;font-size:20px;line-height:1.3;border-radius:15px;box-shadow:0 4px 0 #bd7f23}
#start-screen .lobby-play .primary-button>span[aria-hidden]{position:absolute;right:19px;top:50%;transform:translateY(-50%);font-size:16px}
#start-screen .lobby-play .primary-button:active{box-shadow:0 1px 0 #bd7f23}
@media(max-width:360px){#game[data-state="menu"] .lobby-stat{padding:12px 10px;grid-template-columns:20px minmax(0,1fr);gap:8px}#game[data-state="menu"] .lobby-stat .ui-icon{width:20px;height:20px}#game[data-state="menu"] .lobby-stat span{font-size:12px;letter-spacing:0}.top-actions #lobby-account{padding-inline:9px;font-size:12px}}
