.kr-wrap{max-width:760px;margin:20px auto;font-family:system-ui,-apple-system,sans-serif;color:#191919}.kr-head{display:flex;align-items:center;justify-content:space-between;margin:0 4px 10px}.kr-head strong{font-size:24px;display:block}.kr-head small{opacity:.65}.kr-mute{border:0;background:#eee;border-radius:12px;padding:9px 12px;font-size:18px;cursor:pointer}.kr-stage{position:relative;overflow:hidden;border-radius:20px;background:#8fc85d;box-shadow:0 10px 30px #0002;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.kr-canvas{width:100%;height:auto;display:block;aspect-ratio:3/4;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;user-drag:none}.kr-hud{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;color:white;font-weight:800;font-size:17px;text-shadow:0 2px 4px #0008;pointer-events:none}.kr-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#0008;padding:20px;z-index:4}.kr-overlay[hidden]{display:none}.kr-card{width:min(390px,90%);background:#fff;border-radius:22px;text-align:center;padding:25px;box-shadow:0 15px 50px #0005}.kr-card h2{font-size:31px;margin:4px 0 10px}.kr-logo{font-size:62px}.kr-controls{background:#f4f4f4;padding:12px;border-radius:12px;line-height:1.7}.kr-card button{border:0;border-radius:12px;background:#d71920;color:white;font-weight:900;padding:13px 22px;font-size:17px;cursor:pointer}.kr-final{font-size:58px;font-weight:900;color:#d71920}.kr-score-form{display:grid;gap:9px;margin:14px 0}.kr-score-form label{font-weight:700}.kr-score-form input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:11px;border:1px solid #bbb;border-radius:9px;font-size:16px}.kr-again{background:#222!important}.kr-leaders{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.kr-leaders>div{background:#fff;border:1px solid #ddd;border-radius:16px;padding:14px}.kr-leaders h3{margin:0 0 10px}.kr-leaders ol{margin:0;padding-left:28px}.kr-leaders li{padding:5px 0;border-bottom:1px solid #eee}.kr-leaders li span{float:right;font-weight:800}@media(max-width:600px){.kr-wrap{margin:8px auto}.kr-stage{border-radius:12px}.kr-leaders{grid-template-columns:1fr}.kr-head strong{font-size:21px}}

/* v1.0.1: keep modal controls reachable on short/mobile viewports */
.kr-overlay{box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;align-items:center;justify-items:center}
.kr-card{box-sizing:border-box;max-height:calc(100% - 8px);overflow-y:auto;-webkit-overflow-scrolling:touch}
@media(max-width:600px),(max-height:760px){
 .kr-overlay{padding:10px;place-items:center}
 .kr-card{width:min(390px,96%);padding:14px 16px;border-radius:16px;max-height:calc(100% - 4px)}
 .kr-logo{font-size:38px;line-height:1}
 .kr-card h2{font-size:25px;margin:5px 0 6px}
 .kr-card p{margin:7px 0;line-height:1.35}
 .kr-controls{padding:8px;line-height:1.45;margin:8px 0}
 .kr-card button{padding:11px 20px;font-size:16px}
 .kr-final{font-size:42px}
 .kr-score-form{margin:8px 0;gap:6px}
}
@media(max-height:600px){
 .kr-logo{font-size:30px}
 .kr-card h2{font-size:22px}
 .kr-card{font-size:14px;padding:10px 14px}
 .kr-controls{line-height:1.3}
}
/* v1.1.0 canvas pseudo-3D presentation */
.kr-stage{background:#07101f;perspective:900px}
.kr-canvas{image-rendering:auto;outline:none}
.kr-wrap:focus{outline:none}
@media(max-width:600px){.kr-stage{box-shadow:0 6px 18px #0002}.kr-hud{font-size:15px}}

/* v1.2.0 night-time voxel visual pass */
.kr-stage{background:#07101f}
/* v1.2.6 Kebab Dash: responsive isometric overscan is handled by the expanded canvas world. */

/* v1.9.3: keep the voxel artwork crisp without forcing an 8-bit/pixelated scaler. */
.kr-canvas{image-rendering:auto}

/* v1.4.1: the start instructions must sit above the complete game/page rather than being clipped by the stage. */
.kr-start{position:fixed;inset:0;z-index:2147483000;overflow:auto;background:rgba(3,8,18,.86);padding:18px;place-items:center}
.kr-start .kr-card{position:relative;z-index:1;max-height:none;overflow:visible;margin:auto}
@media(max-width:600px),(max-height:760px){.kr-start{padding:10px}.kr-start .kr-card{max-height:none;overflow:visible}}

/* v1.7.1 challenges and achievement feedback */
.kr-challenges{margin:12px 0;padding:10px 12px;background:#f4f4f4;border-radius:12px;text-align:left;display:grid;gap:5px;font-size:14px}.kr-challenges strong{color:#d71920}.kr-challenges span.done{opacity:.65;text-decoration:line-through}.kr-challenge-toast{position:absolute;z-index:6;top:58px;left:50%;transform:translate(-50%,-12px);background:#fff;color:#191919;border-radius:12px;padding:10px 14px;font-weight:900;box-shadow:0 8px 28px #0006;opacity:0;pointer-events:none;transition:.22s;white-space:nowrap;max-width:88%;overflow:hidden;text-overflow:ellipsis}.kr-challenge-toast.show{opacity:1;transform:translate(-50%,0)}
/* v1.7.2: game-first layout + Daily Challenge */
.kr-wrap{margin-top:0}
.kr-stage>.kr-mute{position:absolute;z-index:6;top:12px;right:12px;background:rgba(255,255,255,.88);box-shadow:0 2px 10px #0002}
.kr-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 7px}
.kr-mode button{background:#e8e8e8;color:#222;padding:10px 8px;font-size:13px}
.kr-mode button.active{background:#d71920;color:#fff}
.kr-daily-note{font-size:12px;opacity:.68;margin:0 0 10px}
.kr-daily-mode .kr-hud:before{content:'DAILY';position:absolute;left:50%;transform:translateX(-50%);top:24px;font-size:11px;letter-spacing:.12em;background:#d71920;padding:3px 7px;border-radius:999px}
.kr-leaders{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.kr-leaders{grid-template-columns:1fr}.kr-stage>.kr-mute{top:8px;right:8px}}


/* v1.8.2 — unified arcade HUD and menu presentation */
.kr-stage{border:1px solid rgba(125,174,216,.16);box-shadow:0 18px 55px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.025) inset}
.kr-hud{top:11px;left:11px;right:58px;justify-content:flex-start;gap:8px;align-items:center;text-shadow:none;font-size:14px;z-index:5}
.kr-hud>span{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 11px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:linear-gradient(180deg,rgba(13,27,48,.88),rgba(5,14,30,.78));box-shadow:0 5px 16px rgba(0,0,0,.22),0 1px 0 rgba(255,255,255,.07) inset;backdrop-filter:blur(5px);color:#dce9f4;letter-spacing:.02em}
.kr-hud b{font-size:17px;color:#fff}.kr-streak{color:#ffd56a!important}
.kr-stage>.kr-mute{width:38px;height:34px;padding:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(7,18,36,.82);color:#fff;box-shadow:0 5px 16px #0005;backdrop-filter:blur(5px)}
.kr-overlay{background:radial-gradient(circle at 50% 38%,rgba(24,52,82,.30),rgba(1,5,13,.82) 62%,rgba(0,2,8,.94));backdrop-filter:blur(2px)}
.kr-card{color:#edf5fb;background:linear-gradient(180deg,rgba(17,34,55,.97),rgba(7,17,33,.98));border:1px solid rgba(142,190,225,.20);box-shadow:0 22px 70px #000a,0 1px 0 rgba(255,255,255,.07) inset}
.kr-card h2{color:#fff;letter-spacing:-.03em;text-shadow:0 3px 18px #0008}.kr-eyebrow{display:inline-block;margin:0 0 3px;padding:4px 9px;border-radius:999px;background:rgba(215,25,32,.16);border:1px solid rgba(255,88,88,.25);color:#ff8a8e;font-size:10px;font-weight:900;letter-spacing:.16em}
.kr-logo{filter:drop-shadow(0 8px 18px #0007)}
.kr-controls,.kr-challenges{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.075);color:#d9e5ee}.kr-challenges strong{color:#ff7378}.kr-daily-note{color:#aebdca}
.kr-mode button{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.08);color:#dce6ed}.kr-mode button.active{background:linear-gradient(180deg,#ef3037,#b90f16);border-color:#ff5960;color:#fff;box-shadow:0 6px 18px rgba(215,25,32,.25)}
.kr-card button{box-shadow:0 7px 18px rgba(0,0,0,.25);transition:transform .12s ease,filter .12s ease}.kr-card button:hover{filter:brightness(1.08);transform:translateY(-1px)}.kr-card button:active{transform:translateY(1px)}
.kr-final{color:#fff;text-shadow:0 0 26px rgba(255,67,73,.32);line-height:1}.kr-result{color:#bdcbd6}.kr-score-form label{color:#dbe6ee}.kr-score-form input{border:1px solid rgba(255,255,255,.14);background:#07101f;color:#fff;outline:none}.kr-score-form input:focus{border-color:#ff5960;box-shadow:0 0 0 3px rgba(215,25,32,.15)}
.kr-leaders{gap:12px}.kr-leaders>div{background:linear-gradient(180deg,#101c2d,#091321);border:1px solid #20334a;color:#e9f1f7;box-shadow:0 10px 28px #0002}.kr-leaders h3{font-size:16px;color:#fff}.kr-leaders li{border-bottom-color:#203047;color:#bfcbd5}.kr-leaders li span{color:#fff}
.kr-challenge-toast{background:#0d1b2d;color:#fff;border:1px solid #304963;box-shadow:0 10px 32px #0009}
.kr-daily-mode .kr-hud:before{top:37px;background:#d71920;box-shadow:0 4px 12px #0005}
@media(max-width:600px){.kr-hud{right:51px;gap:5px;font-size:12px}.kr-hud>span{padding:0 8px;min-height:28px}.kr-hud b{font-size:15px}.kr-stage>.kr-mute{width:34px;height:31px}.kr-card{width:min(410px,96%)}}

/* v1.9.1 — replay and sharing */
.kr-return-status{margin:9px 0 2px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.045);color:#afc2d1;font-size:12px;line-height:1.45}.kr-return-status b{color:#fff}.kr-verdict{margin:8px 0 2px;color:#ffe08a;font-weight:900;font-size:18px}.kr-share-row{display:flex;justify-content:center;margin:10px 0}.kr-share{background:#314d68!important;font-size:13px!important;padding:9px 15px!important}.kr-leaders li.kr-me{margin-left:-8px;padding-left:8px;padding-right:7px;border-radius:8px;background:rgba(255,214,91,.12);box-shadow:inset 3px 0 #ffd65b;color:#fff}.kr-leaders li.kr-me:after{content:' YOU';font-size:9px;font-weight:900;color:#ffd65b;margin-left:5px;letter-spacing:.08em}


/* v1.9.2 — keep the opening/game-over overlays inside the game stage.
   The old v1.4.1 fixed-position start screen covered the browser viewport instead
   of behaving as an overlay on the game itself. */
.kr-start{position:absolute;inset:0;z-index:7;overflow-y:auto;background:radial-gradient(circle at 50% 38%,rgba(24,52,82,.30),rgba(1,5,13,.82) 62%,rgba(0,2,8,.94));padding:18px;place-items:center}
.kr-start .kr-card{position:relative;z-index:1;max-height:calc(100% - 8px);overflow-y:auto;margin:auto}
@media(max-width:600px),(max-height:760px){.kr-start{padding:10px}.kr-start .kr-card{max-height:calc(100% - 4px);overflow-y:auto}}

/* v1.9.3 — QA/performance/accessibility polish */
.kr-card button:focus-visible,.kr-mute:focus-visible{outline:3px solid #ffd65b;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.kr-card button,.kr-challenge-toast{transition:none}}
\n\n/* v2.0.0 — final release presentation and accessibility polish */
.kr-card{width:min(430px,92%);padding:24px 26px;background:linear-gradient(180deg,rgba(13,29,49,.985),rgba(5,14,29,.99));border-color:rgba(139,193,232,.24)}
.kr-start .kr-card{box-shadow:0 24px 80px #000c,0 0 60px rgba(25,107,176,.10),0 1px 0 rgba(255,255,255,.08) inset}
.kr-logo{font-size:52px;line-height:1;margin-bottom:3px}
.kr-card h2{font-size:36px;margin:2px 0 2px}.kr-card h2 span{color:#ff4d53}.kr-tagline{margin:0 0 13px;color:#9fb5c8;font-size:10px;font-weight:900;letter-spacing:.22em}
.kr-start .kr-card>p:not(.kr-controls){color:#c9d7e2;font-size:14px;line-height:1.45}.kr-controls{font-size:13px;text-align:left}.kr-controls small{display:block;margin-top:4px;color:#9fb0bf}
.kr-play{width:100%;margin-top:4px;background:linear-gradient(180deg,#f2373e,#bd1118)!important;letter-spacing:.05em;box-shadow:0 9px 24px rgba(215,25,32,.32)!important}
.kr-mode button{min-height:42px}.kr-card button:focus-visible,.kr-mute:focus-visible,.kr-score-form input:focus-visible{outline:3px solid #ffd65b;outline-offset:3px}
.kr-gameover-card .kr-final{margin-top:4px}.kr-gameover-card .kr-result{font-size:12px;line-height:1.55}.kr-gameover-card .kr-verdict{font-size:19px}
.kr-share-row{gap:8px}.kr-share{background:linear-gradient(180deg,#3d607e,#29445d)!important}.kr-again{background:linear-gradient(180deg,#27394b,#152433)!important}
.kr-version-mark{font-size:10px;color:#7f95a7;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:600px),(max-height:760px){.kr-card{padding:14px 16px}.kr-card h2{font-size:28px}.kr-logo{font-size:38px}.kr-tagline{margin-bottom:8px}.kr-start .kr-card>p:not(.kr-controls){font-size:12px}.kr-controls{font-size:12px}.kr-mode{margin-top:9px}.kr-return-status{margin-top:6px}.kr-challenges{margin:8px 0}}
@media(prefers-reduced-motion:reduce){.kr-card button:hover{transform:none}.kr-challenge-toast.show{transform:translate(-50%,0)}}

/* v2.0.1 — compact launch card with optional instructions */
.kr-start .kr-start-card{width:min(430px,94%);padding:18px 22px;max-height:calc(100% - 24px);overflow-y:auto}
.kr-start-head{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:4px}
.kr-start-head .kr-logo{font-size:34px;line-height:1;flex:0 0 auto}
.kr-start-head h2{font-size:28px;margin:2px 0 1px}
.kr-start-head .kr-eyebrow{margin-bottom:1px}
.kr-start-head .kr-tagline{font-size:10px;letter-spacing:.22em}
.kr-start-card .kr-mode{margin:11px 0 5px}
.kr-start-card .kr-daily-note{margin:0 0 7px;line-height:1.35}
.kr-start-tools{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;margin:5px 0 8px}
.kr-start-card .kr-how-toggle{padding:8px 10px;font-size:11px;background:#314d68;box-shadow:none;white-space:nowrap}
.kr-start-card .kr-return-status{margin:0;padding:7px 9px;font-size:11px;line-height:1.25}
.kr-how-panel{margin:7px 0 9px;padding:10px 11px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.04);text-align:left;font-size:12px;color:#c9d7e2}
.kr-how-panel[hidden]{display:none}
.kr-how-panel p{margin:0 0 7px;line-height:1.4}
.kr-how-panel .kr-controls{margin:0;padding:9px 10px;line-height:1.5}
.kr-start-card .kr-challenges{margin:8px 0;padding:8px 10px;gap:3px;font-size:12px;line-height:1.3}
.kr-start-card .kr-play{width:100%;padding:11px 20px;margin-top:2px}
@media(max-width:600px),(max-height:760px){
 .kr-start .kr-start-card{padding:12px 14px;max-height:calc(100% - 12px)}
 .kr-start-head{gap:8px}.kr-start-head .kr-logo{font-size:28px}.kr-start-head h2{font-size:24px}
 .kr-start-tools{grid-template-columns:1fr}.kr-start-card .kr-how-toggle{width:100%}.kr-start-card .kr-return-status{padding:6px 8px}
 .kr-start-card .kr-challenges{margin:6px 0;padding:7px 9px}
}
