.kr-entry{cursor:pointer;outline:none;transition:transform .16s ease,filter .16s ease}.kr-entry:hover,.kr-entry:focus-visible{transform:translateY(-1px);filter:drop-shadow(0 0 8px #ffd84d)}
body.kr-open{overflow:hidden}
.kr-screen{position:fixed;inset:0;z-index:12000;background:radial-gradient(circle at 50% 18%,#1a2141 0,#0a0d18 42%,#05070d 100%);color:#fff;font-family:inherit}
.kr-screen[hidden]{display:none!important}.kr-shell{height:100%;display:grid;grid-template-rows:auto auto 1fr;overflow:hidden}
.kr-header{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid #ffffff18;background:#080b14e8;backdrop-filter:blur(12px)}
.kr-back,.kr-my-position,.kr-detail-close{border:1px solid #ffffff28;background:#111827;color:#fff;border-radius:12px;font:inherit;font-weight:900;cursor:pointer}
.kr-back{width:46px;height:42px;font-size:24px}.kr-back:hover,.kr-back:focus-visible,.kr-my-position:hover,.kr-my-position:focus-visible{border-color:#ffd84d;box-shadow:0 0 14px #ffd84d55}
.kr-heading{min-width:0}.kr-kicker{display:block;font-size:10px;letter-spacing:.22em;color:#ffd84d;font-weight:900}.kr-heading h2{margin:1px 0 0;font-size:clamp(20px,3vw,34px);letter-spacing:.04em}
.kr-total{display:flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid #ffd84d66;border-radius:999px;background:#ffd84d12;box-shadow:inset 0 0 18px #ffd84d12}.kr-total strong{font-size:18px}
.kr-summary{display:grid;grid-template-columns:minmax(170px,1fr) minmax(240px,1.5fr) auto;gap:18px;align-items:center;padding:10px 18px;background:#0b1020;border-bottom:1px solid #ffffff12}
.kr-summary>div:first-child span{display:block;color:#aab4c8;font-size:10px;font-weight:900;letter-spacing:.14em}.kr-summary>div:first-child strong{display:block;font-size:15px;margin-top:2px}
.kr-summary-progress{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.kr-summary-track{height:9px;border-radius:999px;background:#2b2d28;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff16}.kr-summary-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ffbe0b,#fff36c);box-shadow:0 0 12px #ffd84d;transition:width .45s ease}.kr-summary-progress>span{font-size:11px;color:#d9e2f2;white-space:nowrap}
.kr-my-position{padding:9px 12px;font-size:11px}
.kr-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#ffd84d55 #0b1020;display:flex;align-items:center;padding:18px 0 24px}
.kr-track{display:flex;align-items:center;min-width:max-content;padding:0 max(6vw,34px)}
.kr-arena{--kr-tone:#ffd84d;position:relative;display:flex;flex-direction:column;width:min(310px,70vw);scroll-snap-align:center;border:1px solid color-mix(in srgb,var(--kr-tone) 56%,transparent);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#141b2a,#090d16);box-shadow:0 14px 40px #0008,inset 0 0 30px color-mix(in srgb,var(--kr-tone) 10%,transparent);transition:transform .2s ease,filter .2s ease,opacity .2s ease;outline:none}
.kr-arena:hover,.kr-arena:focus-visible{transform:translateY(-5px);filter:brightness(1.08)}.kr-current{border-width:2px;box-shadow:0 0 0 1px color-mix(in srgb,var(--kr-tone) 36%,transparent),0 0 28px color-mix(in srgb,var(--kr-tone) 34%,transparent),0 18px 45px #0009}
.kr-locked{filter:saturate(.35) brightness(.58);opacity:.72}.kr-unlocked{opacity:.94}
.kr-arena-art{padding:12px 10px 0;background:radial-gradient(ellipse at 50% 55%,color-mix(in srgb,var(--kr-tone) 16%,transparent),transparent 70%)}.kr-arena-art img{display:block;width:100%;height:auto;max-height:min(40vh,290px);object-fit:contain;filter:drop-shadow(0 8px 14px #0009);user-select:none;-webkit-user-drag:none}
.kr-arena-copy{padding:8px 15px 14px;text-align:center}.kr-arena-number{font-size:10px;letter-spacing:.18em;color:var(--kr-tone);font-weight:1000}.kr-arena h3{font-size:18px;margin:3px 0}.kr-range{margin:0;color:#ffe36c;font-size:13px;font-weight:900}
.kr-lock,.kr-check,.kr-you{position:absolute;right:12px;top:12px;z-index:3;border-radius:999px;background:#05070dcc;border:1px solid #ffffff2c;padding:5px 8px;font-weight:1000}.kr-check{color:#67f4a1}.kr-you{color:#111;background:var(--kr-tone);font-size:9px;letter-spacing:.08em}
.kr-connector{width:125px;flex:0 0 125px;text-align:center;--kr-progress:0%}.kr-line{height:7px;background:#34331f;position:relative;box-shadow:inset 0 0 0 1px #ffffff16}.kr-line-fill{display:block;height:100%;width:var(--kr-progress);background:linear-gradient(90deg,#ffbe0b,#fff36c);box-shadow:0 0 12px #ffd84d}.kr-player-marker{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:23px;filter:drop-shadow(0 0 7px #ffd84d);z-index:2}.kr-connector-label{font-size:8px;font-weight:900;letter-spacing:.09em;color:#9ba6ba;margin-top:6px}.kr-complete .kr-connector-label{color:#ffe36c}
.kr-detail{--kr-tone:#ffd84d;position:absolute;left:50%;bottom:18px;transform:translateX(-50%);width:min(620px,90vw);display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid color-mix(in srgb,var(--kr-tone) 55%,transparent);border-radius:18px;background:#080c16ed;box-shadow:0 0 25px color-mix(in srgb,var(--kr-tone) 22%,transparent),0 12px 40px #000a;backdrop-filter:blur(16px);z-index:6}.kr-detail[hidden]{display:none}.kr-detail-icon{font-size:34px}.kr-detail small{display:block;color:var(--kr-tone);font-weight:1000;letter-spacing:.1em}.kr-detail strong{display:block;font-size:15px;margin:2px 0}.kr-detail p{margin:0;color:#c2ccdc;font-size:11px}.kr-detail-close{width:34px;height:34px;font-size:20px}
.kr-celebration{position:absolute;inset:0;z-index:20;display:grid;place-content:center;text-align:center;background:#05070db5;backdrop-filter:blur(4px);pointer-events:none}.kr-celebration[hidden]{display:none}.kr-celebration span{font-size:13px;font-weight:1000;letter-spacing:.2em;color:#ffe36c}.kr-celebration strong{display:block;font-size:clamp(32px,6vw,64px);margin:8px 0;text-shadow:0 0 25px #ffd84d}.kr-celebration em{font-style:normal;font-weight:1000;color:#fff}.kr-celebration-run:before{content:"";position:absolute;inset:25%;border:2px solid #ffd84d;border-radius:50%;animation:krBurst 1.1s ease-out both}
@keyframes krBurst{from{transform:scale(.25);opacity:1}to{transform:scale(2.2);opacity:0}}
@media(max-width:800px){.kr-header{grid-template-columns:48px 1fr auto;padding:8px 10px}.kr-total{padding:6px 9px}.kr-total strong{font-size:14px}.kr-summary{grid-template-columns:1fr auto;gap:8px;padding:7px 10px}.kr-summary-progress{grid-column:1/-1;grid-row:2}.kr-my-position{grid-column:2;grid-row:1}.kr-arena{width:min(270px,68vw)}.kr-track{padding-inline:24px}.kr-connector{width:90px;flex-basis:90px}}
@media(max-height:520px){.kr-kicker{display:none}.kr-header{padding-block:5px}.kr-summary{padding-block:5px}.kr-viewport{padding-block:8px 12px}.kr-arena{width:min(250px,46vw)}.kr-arena-art{padding-top:8px}.kr-arena-art img{max-height:max(86px,calc(100vh - 245px))}.kr-arena-copy{padding-top:4px;padding-bottom:8px}.kr-arena h3{font-size:15px;margin:2px 0}.kr-detail{bottom:8px}}
@media(prefers-reduced-motion:reduce){.kr-celebration-run:before{animation:none!important}.kr-arena,.kr-summary-track span{transition:none!important}}
