@font-face{font-family:SkyHopDisplay;src:url(/assets/skins/Original/font/CarterOne-Regular.ttf)format("truetype");font-display:swap}:root{--game-font:"SkyHopDisplay";--color-bg:#7dd3fc;--color-surface:#f8fdffe8;--color-text:#12313c;--color-inverse:#f8fdff;--color-primary:#0b8f86;--color-primary-strong:#066a68;--color-accent:#e9b338;--color-focus:#ffd84d;--color-border:#09404e3d;--shadow-panel:0 18px 46px #082d383d;font-family:var(--game-font), "SkyHopDisplay", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:#7dd3fc;width:100%;height:100%;min-height:100%;margin:0}body{background:linear-gradient(#7dd3fc 0%,#dff7ff 100%);min-height:100dvh;overflow:hidden}body.access-locked{background:#fff}body.access-locked #app,body.access-locked dialog{display:none!important}.access-layer{display:none}body.access-locked .access-layer{z-index:90;pointer-events:none;background:0 0;place-items:center;display:grid;position:fixed;inset:0}body.fake-cover-visible .access-layer{padding:0 16px max(16px, env(safe-area-inset-bottom));align-items:end}.access-form{pointer-events:auto;place-items:center;width:min(220px,72vw);min-height:56px;display:grid}.access-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.access-code-input{color:#0000;caret-color:#0000;opacity:.01;text-align:center;-webkit-text-security:disc;background:#fff;border:0;outline:0;width:100%;height:56px;font-size:24px}.rotate-overlay{display:none}@media (pointer:coarse){body.access-locked .access-layer{z-index:140;background:#fff}body.fake-cover-visible .access-layer{background:linear-gradient(#0000 0% 42%,#fffffff0 100%)}.access-form{background:#f8f8f8;border:1px solid #b6b6b6;gap:8px;width:min(260px,100vw - 40px);min-height:88px;padding:12px;font-family:Arial,Helvetica,sans-serif;box-shadow:2px 2px #d0d0d0}.access-label{clip:auto;color:#222;white-space:normal;width:auto;height:auto;font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:700;position:static;overflow:visible}.access-code-input{color:#111;caret-color:#111;opacity:1;letter-spacing:6px;-webkit-text-security:disc;background:#fff;border:1px inset #9a9a9a;height:44px;font-family:Arial,Helvetica,sans-serif;font-size:22px}}.fake-cover{display:none}body.fake-cover-visible .fake-cover{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;color:#000;background:#fff;width:100vw;height:100dvh;font-family:Times New Roman,Times,serif;font-size:16px;display:block;position:fixed;inset:0;overflow:auto}.fake-page{background:#ffe;border:2px ridge #9a9a9a;width:min(760px,100% - 16px);margin:8px auto}.fake-header{color:#ffc;text-align:center;background:#036;border-bottom:2px ridge #9a9a9a;padding:10px 12px}.fake-header h1{color:inherit;text-shadow:none;margin:0;font-family:Georgia,Times New Roman,Times,serif;font-size:34px;line-height:1.1}.fake-header p,.fake-content p,.fake-footer{margin:6px 0}.fake-nav{text-align:center;background:#ccc;border-bottom:1px solid gray;padding:6px}.fake-nav a{color:#00e;margin:0 8px;text-decoration:underline}.fake-content{padding:14px}.fake-content h2{color:maroon;margin:0 0 8px;font-family:Georgia,Times New Roman,Times,serif;font-size:24px}.fake-content h3{color:#036;margin:18px 0 6px;font-family:Georgia,Times New Roman,Times,serif;font-size:19px}.fake-content ul,.fake-content ol{margin:8px 0 10px 28px;padding:0}.fake-content li{margin:4px 0}.fake-content table{border-collapse:collapse;background:#fff;width:100%;margin-top:12px}.fake-content th,.fake-content td{text-align:left;border:1px solid gray;padding:6px}.fake-content th{color:#036;vertical-align:top;background:#eee;width:138px}.fake-note{color:#333;background:#ffc;border:1px dashed gray;padding:8px}.fake-footer{text-align:center;background:#ccc;border-top:1px solid gray;padding:8px;font-size:13px}button,input{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.62}button:focus-visible,input:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.app-shell{background:#7dd3fc;width:100dvw;height:100dvh;min-height:100dvh;padding:0;display:block;position:fixed;inset:0;overflow:hidden}.topbar{z-index:12;top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));width:auto;color:var(--color-inverse);justify-content:space-between;align-items:center;margin:0;display:flex;position:absolute}.top-actions,.button-row{align-items:center;gap:10px;display:flex}.button-icon{width:1.25em;height:1.25em;-webkit-mask:var(--icon-url) center / contain no-repeat;-webkit-mask:var(--icon-url) center / contain no-repeat;mask:var(--icon-url) center / contain no-repeat;background:currentColor;flex:none;display:inline-block}.icon-leaderboard{--icon-url:url(/assets/icons/leaderboard_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg)}.icon-refresh{--icon-url:url(/assets/icons/refresh_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg)}.icon-save{--icon-url:url(/assets/icons/save_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg)}.icon-story{--icon-url:url(/assets/icons/award_star_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg)}.icon-button{width:44px;height:44px;color:var(--color-inverse);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#066970c7;border:1px solid #ffffff8f;border-radius:8px;justify-content:center;align-items:center;font-size:1.25rem;font-weight:900;display:inline-flex;box-shadow:inset 0 1px #ffffff2e,0 8px 18px #082d3833}.icon-button .button-icon{width:25px;height:25px}.icon-button:hover{background:#057e84db}.level-menu-button{max-width:min(240px,100vw - 90px);min-height:44px;color:var(--color-inverse);text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#066970c7;border:1px solid #ffffff8f;border-radius:8px;padding:0 14px;font-weight:850;overflow:hidden;box-shadow:inset 0 1px #ffffff2e,0 8px 18px #082d3833}.icon-button:active:not(:disabled),.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:translateY(1px)}.game-stage{min-height:0;display:block;position:absolute;inset:0}.canvas-wrap{touch-action:none;place-items:stretch stretch;width:100vw;height:100dvh;min-height:0;display:grid;position:relative}#gameCanvas{width:100%;height:100%;box-shadow:none;background:#7dd3fc;border-radius:0;display:block}.overlay{--overlay-top-pad:max(72px, env(safe-area-inset-top));--overlay-right-pad:max(18px, env(safe-area-inset-right));--overlay-bottom-pad:max(18px, env(safe-area-inset-bottom));--overlay-left-pad:max(18px, env(safe-area-inset-left));padding:var(--overlay-top-pad) var(--overlay-right-pad) var(--overlay-bottom-pad) var(--overlay-left-pad);overscroll-behavior:contain;pointer-events:none;display:none;position:absolute;inset:0;overflow:hidden}.overlay.is-visible{place-items:center;display:grid}.overlay-panel{width:min(348px,100%);max-height:calc(100vh - var(--overlay-top-pad) - var(--overlay-bottom-pad));max-height:calc(100dvh - var(--overlay-top-pad) - var(--overlay-bottom-pad));border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 #ffffffb8, var(--shadow-panel);text-align:center;pointer-events:auto;border-radius:8px;margin:auto;padding:26px 24px 24px;position:relative;overflow:auto}.menu-overlay{place-items:center}.menu-panel{width:min(980px,100%);max-height:min(740px, calc(100vh - var(--overlay-top-pad) - var(--overlay-bottom-pad)));max-height:min(740px, calc(100dvh - var(--overlay-top-pad) - var(--overlay-bottom-pad)));border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 #ffffffb8, var(--shadow-panel);pointer-events:auto;border-radius:8px;flex-direction:column;gap:18px;margin:auto;padding:24px;display:flex;overflow:auto}.menu-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.menu-header h1{margin-bottom:0}.menu-header-actions{justify-items:end;gap:10px;min-width:0;display:grid}.story-button{min-height:38px;padding:0 13px}.coin-summary{flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:360px;display:flex}.coin-chip{color:#17343e;white-space:nowrap;background:#ffffff9e;border:1px solid #0837442e;border-radius:8px;grid-template-columns:22px auto auto;justify-content:center;align-items:center;gap:4px;min-width:66px;min-height:36px;padding:4px 7px;font-size:.8rem;font-weight:850;display:inline-grid}.coin-icon{object-fit:contain;image-rendering:auto;filter:drop-shadow(0 1px #08374433);width:22px;height:22px;display:inline-block}.coin-chip-label{color:#58727b;font-size:.72rem}.coin-chip-value,.coin-amount-value{color:#17343e;font-weight:900}.profile-row{grid-template-columns:72px minmax(180px,320px);align-items:center;gap:10px;display:grid}.profile-row label{font-weight:850}.profile-row input{color:#10242d;background:#ffffffc2;border:1px solid #0837444d;border-radius:8px;min-height:44px;padding:0 12px;font-weight:850}.menu-toolbar{grid-template-columns:minmax(150px,220px) minmax(0,1fr);align-items:center;gap:14px;display:grid}.menu-toolbar .primary-button{margin-top:0}.level-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;min-height:min-content;padding-right:2px;display:grid}.level-card{border:1px solid #08374433;border-top:4px solid var(--level-color);background:#ffffff9e;border-radius:8px;grid-template-rows:auto 1fr auto;gap:12px;min-height:158px;padding:12px;display:grid}.level-card.is-active{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--level-color) 44%, transparent)}.level-card.is-locked{background:#ffffff6b}.level-card-title{color:#102c36;font-weight:900}.level-card-meta{color:#4a6872;flex-wrap:wrap;align-content:start;gap:7px;font-size:.86rem;line-height:1.28;display:flex}.coin-amount{white-space:nowrap;background:#ffffff85;border:1px solid #08374424;border-radius:8px;align-items:center;gap:6px;min-height:32px;padding:4px 8px 4px 5px;display:inline-flex}.level-action{align-self:end;width:100%;min-height:40px;margin-top:0}.game-over-panel{text-align:left;width:min(378px,100%)}.eyebrow{color:var(--color-primary-strong);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:900}h1,h2,p{margin-top:0}h1{letter-spacing:0;color:#102c36;text-shadow:0 3px #5abecc38;margin-bottom:8px;font-size:3.4rem;line-height:1}h2{margin-bottom:0;font-size:1.5rem}.overlay-panel>p:not(.eyebrow),.result-text,.accent-text,.score-form label,.status-line,.dialog-status{line-height:1.35}.overlay-panel>p:not(.eyebrow){color:#315965;margin-bottom:0;font-weight:800}.pause-countdown{min-height:86px;color:var(--color-primary-strong);text-shadow:0 4px #5abecc38;margin:10px 0 0;font-size:5rem;font-weight:950;line-height:.95}.primary-button,.secondary-button{border:1px solid #064b543d;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 17px;font-weight:850;line-height:1.05;transition:transform .12s,background .12s,box-shadow .12s;display:inline-flex}.primary-button{background:var(--color-primary);color:var(--color-inverse);margin-top:16px;box-shadow:0 8px 18px #06565838}.primary-button:hover{background:var(--color-primary-strong)}.secondary-button{color:#17343e;background:#ffffffad;box-shadow:0 6px 14px #082d381f}.secondary-button:hover{background:#ffffffe0}.primary-button .button-icon,.secondary-button .button-icon{width:22px;height:22px}.button-label{overflow-wrap:anywhere;min-width:0}.status-line,.dialog-status{color:#4a6872;min-height:1.35em;margin:12px 0 0;font-weight:800;line-height:1.35}.result-row{align-items:center;gap:14px;margin:14px 0 18px;display:flex}.result-row canvas{flex:none}.result-text{color:#284d58;margin:0;font-weight:800}.accent-text{color:var(--color-accent);margin:3px 0 0;font-weight:900}.score-form{gap:8px;display:grid}.score-form[hidden]{display:none}.score-form label{font-weight:850}.score-form input{color:#10242d;background:#ffffffbd;border:1px solid #0837444d;border-radius:8px;width:100%;min-height:46px;padding:0 12px;font-weight:850}.button-row{justify-content:space-between;align-items:stretch;margin-top:16px}.game-over-panel .button-row{flex-direction:column}.button-row .secondary-button{flex:1 1 0;width:100%}.leaderboard-dialog{background:0 0;border:0;border-radius:8px;width:min(420px,100% - 28px);max-height:min(720px,100% - 28px);padding:0}.leaderboard-dialog::backdrop{background:#04212a6b}.story-dialog{background:#050709;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.story-dialog::backdrop{background:#050709}.dialog-shell{max-height:inherit;border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 #ffffffb8, var(--shadow-panel);border-radius:8px;flex-direction:column;gap:14px;padding:20px;display:flex}.dialog-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-header .icon-button{color:#17333c;background:#ffffffb8;width:40px;height:40px;font-size:1.35rem;line-height:1;box-shadow:0 6px 14px #082d381f}.dialog-header h2{align-items:center;gap:10px;display:inline-flex}.dialog-header h2:before{content:"";background:currentColor;width:28px;height:28px;-webkit-mask:url(/assets/icons/leaderboard_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg) 50%/contain no-repeat;mask:url(/assets/icons/leaderboard_42dp_E3E3E3_FILL0_wght400_GRAD0_opsz40.svg) 50%/contain no-repeat}.story-shell{width:100%;min-height:100%;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));background:#050709;border:0;grid-template-rows:auto 1fr;display:grid}.story-header{z-index:2;color:#f8fdff;justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex;position:relative}.story-header h2{text-shadow:0 2px 8px #00000080;margin:0;font-size:1.35rem}.story-header .icon-button{color:#f8fdff;background:#ffffff29;border-color:#ffffff57;box-shadow:0 8px 18px #00000042}.story-image-wrap{background:#050709;place-items:center;min-height:0;display:grid;overflow:auto}.story-image{object-fit:contain;width:min(100%,177.68dvh - 142.144px);max-width:none;height:auto;max-height:calc(100dvh - 80px);display:block}.leaderboard-list{min-height:120px;max-height:58vh;margin:0;padding:0;list-style:none;overflow:auto}.leaderboard-list li{border-bottom:1px solid #142e381f;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;min-height:48px;display:grid}.leaderboard-list li.is-current{background:#e9b33829}.rank{color:var(--color-primary-strong);font-weight:900}.entry-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:850;overflow:hidden}.entry-meta{color:#5a7680;font-size:.82rem}.entry-score{font-weight:950}@media (width<=480px){.topbar{gap:10px}.level-menu-button{max-width:calc(100vw - 86px)}.menu-panel{gap:14px;padding:18px}.menu-header{grid-template-columns:1fr}.menu-header-actions{justify-items:start}.coin-summary{justify-content:flex-start;max-width:none}.profile-row,.menu-toolbar,.level-grid{grid-template-columns:1fr}.overlay-panel{width:min(340px,100%);padding:24px 20px}h1{font-size:3.05rem}.game-over-panel h1{font-size:2.8rem}.primary-button,.secondary-button{width:100%;min-height:46px}.button-row{flex-direction:column}}@media (height<=680px){.overlay{--overlay-top-pad:max(58px, env(safe-area-inset-top));--overlay-bottom-pad:max(12px, env(safe-area-inset-bottom))}.overlay-panel{padding-top:22px;padding-bottom:18px}h1{font-size:3rem}}@media (height<=560px){.overlay{--overlay-top-pad:max(52px, env(safe-area-inset-top));--overlay-right-pad:max(10px, env(safe-area-inset-right));--overlay-bottom-pad:max(10px, env(safe-area-inset-bottom));--overlay-left-pad:max(10px, env(safe-area-inset-left))}.menu-panel,.overlay-panel{padding:14px}.menu-panel{gap:12px}.menu-header{gap:10px}.coin-chip{min-height:32px}.level-card{gap:9px;min-height:136px;padding:10px}.result-row{margin:10px 0 12px}.button-row{gap:8px;margin-top:10px}.primary-button,.secondary-button{min-height:42px}h1{font-size:2.35rem}.game-over-panel h1{font-size:2.15rem}}@media (pointer:coarse) and (orientation:portrait){body:not(.access-locked) .rotate-overlay{z-index:120;color:#111827;background:#fff;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.rotate-panel{font-family:var(--game-font), "SkyHopDisplay", system-ui, sans-serif;text-align:center;justify-items:center;gap:18px;font-weight:900;display:grid}.rotate-panel p{margin:0;font-size:clamp(1.35rem,7vw,2.4rem)}.rotate-device{border:5px solid;border-radius:14px;width:58px;height:96px;animation:1.8s ease-in-out infinite rotate-phone}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){html,body{background:#7dd3fc;width:100dvw;height:100dvh;overflow:hidden}body:not(.access-locked),body:not(.access-locked) .app-shell,body:not(.access-locked) .game-stage,body:not(.access-locked) .canvas-wrap,body:not(.access-locked) #gameCanvas{background:#7dd3fc;border:0;width:100dvw;max-width:none;height:100dvh;max-height:none;margin:0;position:fixed;inset:0}.topbar{top:max(8px, env(safe-area-inset-top));left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right))}.level-menu-button,.icon-button{height:38px;min-height:38px}.level-menu-button{max-width:190px;padding-inline:10px;font-size:.8rem}.icon-button{width:38px}.overlay{--overlay-top-pad:max(44px, env(safe-area-inset-top));--overlay-right-pad:max(8px, env(safe-area-inset-right));--overlay-bottom-pad:max(8px, env(safe-area-inset-bottom));--overlay-left-pad:max(8px, env(safe-area-inset-left))}.menu-panel{width:min(820px,100%);max-height:calc(100dvh - var(--overlay-top-pad) - var(--overlay-bottom-pad));grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr);align-content:start;gap:10px 14px;padding:12px}.menu-header,.profile-row,.menu-toolbar{grid-column:1}.level-grid{max-height:calc(100dvh - var(--overlay-top-pad) - var(--overlay-bottom-pad) - 24px);grid-area:1/2/span 3;grid-template-columns:repeat(2,minmax(0,1fr));padding-right:4px;overflow:auto}.level-card{min-height:112px;padding:9px}.overlay-panel{width:min(330px,100%)}h1,.game-over-panel h1{font-size:2rem}.result-row{margin-block:8px}.button-row{margin-top:8px}}@keyframes rotate-phone{0%,28%{transform:rotate(0)}70%,to{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
