:root{--bg:#12142a;--bg2:#1a1d3a;--panel:#20244a;--panel2:#282d5a;--line:#343a70;--ink:#eef0ff;--ink2:#a9aed6;--ink3:#6f76a8;--lime:#c8f53c;--lime-d:#86a91a;--coral:#ff6b5a;--coral-d:#b8402f;--sky:#5cc8ff;--sky-d:#2a86b8;--amber:#ffc53d;--amber-d:#b8861a;--violet:#a78bfa;--violet-d:#6d52c4;--cap:#f4f2ea;--cap-d:#b9b5a5;--cap-ink:#1b1d33;--r:14px;--font:"Pretendard Variable", Pretendard, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum";font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit}::selection{background:var(--lime);color:var(--cap-ink)}.cap{--c:var(--cap);--cd:var(--cap-d);--ci:var(--cap-ink);--d:5px;background:linear-gradient(180deg, color-mix(in srgb, var(--c) 100%, white 12%) 0%, var(--c) 60%);min-height:48px;color:var(--ci);letter-spacing:-.01em;box-shadow:0 var(--d) 0 var(--cd), 0 calc(var(--d) + 4px) 14px #00000059;-webkit-user-select:none;user-select:none;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:800;transition:transform 70ms,box-shadow 70ms,filter .15s;display:inline-flex;position:relative;transform:translateY(0)}.cap:hover{filter:brightness(1.04)}.cap:active,.cap.pressed{transform:translateY(var(--d));box-shadow:0 0 0 var(--cd), 0 2px 6px #0000004d}.cap:disabled{opacity:.45;cursor:not-allowed}.cap.lime{--c:var(--lime);--cd:var(--lime-d)}.cap.coral{--c:var(--coral);--cd:var(--coral-d);--ci:#fff}.cap.sky{--c:var(--sky);--cd:var(--sky-d)}.cap.amber{--c:var(--amber);--cd:var(--amber-d)}.cap.violet{--c:var(--violet);--cd:var(--violet-d);--ci:#fff}.cap.dark{--c:var(--panel2);--cd:#15183a;--ci:var(--ink)}.cap.sel{outline:3px solid var(--ink);outline-offset:3px}.cap.sm{--d:4px;border-radius:10px;min-height:36px;padding:6px 12px;font-size:13px}.cap .kbd{font:700 10px/1 var(--mono);color:inherit;opacity:.75;background:#00000024;border-radius:5px;padding:3px 5px}.cap .legend{font:700 10px/1 var(--mono);opacity:.55;position:absolute;top:6px;left:9px}.enter-wrap{filter:drop-shadow(0 7px 0 var(--lime-d)) drop-shadow(0 12px 16px #00000073);transition:filter 70ms,transform 70ms}.enter-wrap:active,.enter-wrap.pressed{filter:drop-shadow(0 0 0 var(--lime-d)) drop-shadow(0 3px 6px #00000059);transform:translateY(7px)}.enter{background:linear-gradient(160deg, #dcff6a, var(--lime) 55%);clip-path:polygon(0 0,100% 0,100% 100%,26% 100%,26% 50%,0 50%);width:100%;height:116px;color:var(--cap-ink);text-align:left;border:0;border-radius:14px;padding:0;position:relative}.enter .top{letter-spacing:-.02em;font-size:20px;font-weight:900;position:absolute;top:14px;left:18px}.enter .sub{opacity:.7;font-size:12px;font-weight:700;position:absolute;top:42px;left:18px}.enter .arrow{font-size:34px;font-weight:900;line-height:1;position:absolute;bottom:16px;right:22px}.enter .hint{font:800 11px/1 var(--mono);opacity:.6;position:absolute;bottom:16px;left:30%}.enter:disabled{filter:grayscale(.8)brightness(.8);cursor:not-allowed}.panel{background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 85%, var(--bg)));border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:inset 0 1px #ffffff0d}.panel h3{letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);align-items:center;gap:8px;margin:0 0 12px;font-size:12px;font-weight:800;display:flex}.panel h3 .dot{background:var(--lime);border-radius:2px;width:8px;height:8px}.chip{background:var(--panel2);color:var(--ink2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.chip.lime{background:color-mix(in srgb, var(--lime) 18%, transparent);color:var(--lime);border-color:color-mix(in srgb, var(--lime) 40%, transparent)}.chip.coral{background:color-mix(in srgb, var(--coral) 18%, transparent);color:#ff9d90;border-color:color-mix(in srgb, var(--coral) 45%, transparent)}.chip.amber{background:color-mix(in srgb, var(--amber) 16%, transparent);color:var(--amber);border-color:color-mix(in srgb, var(--amber) 40%, transparent)}.chip.sky{background:color-mix(in srgb, var(--sky) 16%, transparent);color:var(--sky);border-color:color-mix(in srgb, var(--sky) 40%, transparent)}.muted{color:var(--ink2)}.faint{color:var(--ink3)}.mono{font-family:var(--mono)}.row{align-items:center;gap:10px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.bar{border:1px solid var(--line);background:#0d0f22;border-radius:99px;height:10px;overflow:hidden}.bar>i{background:var(--lime);border-radius:99px;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);display:block}.field{gap:6px;display:grid}.field label{color:var(--ink2);font-size:13px;font-weight:700}.input{border:2px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#0f1124;border-radius:12px;outline:none;padding:10px 14px}.input:focus{border-color:var(--lime)}textarea.input{resize:vertical;min-height:96px;line-height:1.55}.toast{background:var(--lime);color:var(--cap-ink);z-index:100;border-radius:12px;padding:12px 20px;font-weight:800;animation:.25s cubic-bezier(.2,1.4,.4,1) pop;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0006}@keyframes pop{0%{opacity:0;transform:translate(-50%,14px)scale(.9)}}@keyframes pulse{50%{opacity:.35}}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}}.arcade-bg{z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% -10%, #262c66 0%, var(--bg) 55%);position:fixed;inset:0;overflow:hidden}.arcade-bg .grid{transform-origin:top;background-image:linear-gradient(#5cc8ff1a 1px,#0000 1px),linear-gradient(90deg,#5cc8ff1a 1px,#0000 1px);background-size:56px 56px;height:70%;animation:6s linear infinite gridmove;position:absolute;bottom:-10%;left:-50%;right:-50%;transform:perspective(600px)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000,#000 40%);mask-image:linear-gradient(#0000,#000 40%)}.arcade-bg .glow{filter:blur(90px);opacity:.22;border-radius:50%;width:520px;height:520px;animation:18s ease-in-out infinite float;position:absolute}.arcade-bg .g1{background:var(--lime);top:10%;left:-120px}.arcade-bg .g2{background:var(--violet);animation-delay:-6s;top:30%;right:-160px}.arcade-bg .g3{background:var(--sky);animation-delay:-12s;bottom:-260px;left:40%}@keyframes gridmove{to{background-position:0 56px}}@keyframes float{50%{transform:translate(60px,-40px)scale(1.1)}}.badges{flex-wrap:wrap;gap:24px 8px;padding-bottom:6px;display:flex}.badge{color:#3d4378;background:#11132b;border:2px dashed #343a70;border-radius:12px;place-items:center;font-weight:900;transition:transform .2s;display:grid;position:relative}.badge em{color:var(--ink3);white-space:nowrap;font-size:9px;font-style:normal;font-weight:800;position:absolute;bottom:-16px;left:50%;transform:translate(-50%)}.badge.got{color:var(--cap-ink);box-shadow:0 4px 0 #00000059, 0 0 18px color-mix(in srgb, currentColor 30%, transparent);border-style:solid;animation:.5s cubic-bezier(.2,1.6,.4,1) badgeIn}.badge.got:hover{transform:translateY(-3px)rotate(-4deg)}.badge.got.lime{background:var(--lime);border-color:var(--lime-d)}.badge.got.sky{background:var(--sky);border-color:var(--sky-d)}.badge.got.amber{background:var(--amber);border-color:var(--amber-d)}.badge.got.coral{background:var(--coral);border-color:var(--coral-d);color:#fff}.badge.got.violet{background:var(--violet);border-color:var(--violet-d);color:#fff}.badge.got em{color:var(--ink2)}@keyframes badgeIn{0%{opacity:0;transform:scale(.3)rotate(-30deg)}}.journey{align-items:center;gap:0;padding:22px 4px 8px;display:flex;overflow-x:auto}.journey .jseg{align-items:center;display:flex}.journey .jline{background:#22264d;border-radius:3px;width:30px;height:6px}.journey .jline.done{background:linear-gradient(90deg, var(--lime), var(--sky));box-shadow:0 0 10px #c8f53c80}.journey .jnode{width:50px;height:50px;color:var(--ink3);background:#161936;border:2px solid #343a70;border-radius:14px;flex:none;place-items:center;line-height:1;display:grid;position:relative}.journey .jnode b{font:900 16px/1 var(--mono)}.journey .jnode small{font-size:9px;font-weight:800}.journey .jnode.start{width:auto;font:900 10px/1 var(--mono);letter-spacing:.1em;color:var(--lime);border-color:var(--lime-d);padding:0 10px}.journey .jnode.done{color:var(--sky);border-color:var(--sky-d);background:#1d2650}.journey .jnode.here{background:var(--lime);color:var(--cap-ink);border-color:var(--lime-d);box-shadow:0 5px 0 var(--lime-d), 0 0 24px #c8f53c8c;animation:1.6s ease-in-out infinite bob}.journey .jnode.next{border-style:dashed;border-color:var(--amber);color:var(--amber)}.journey .flag{font:900 9px/1 var(--mono);background:var(--lime);color:var(--cap-ink);white-space:nowrap;border-radius:5px;padding:3px 5px;font-style:normal;position:absolute;top:-20px}.journey .flag.nx{background:var(--amber)}.journey.compact .jnode{border-radius:11px;width:40px;height:40px}.journey.compact .jnode.start{width:auto}.journey.compact .jline{width:18px}@keyframes bob{50%{transform:translateY(-4px)}}.radar-poly{transform-origin:50%;transform-box:fill-box;animation:.7s cubic-bezier(.2,1.2,.4,1) radarIn}@keyframes radarIn{0%{opacity:0;transform:scale(.2)}}.particle{z-index:200;pointer-events:none;border-radius:2px;width:9px;height:9px;animation:.9s cubic-bezier(.15,.8,.3,1) forwards part;position:fixed}@keyframes part{to{transform:translate(var(--dx), var(--dy)) rotate(var(--r));opacity:0}}.combo{z-index:60;font:900 44px/1 var(--mono);color:var(--amber);text-shadow:0 4px 0 var(--amber-d), 0 0 30px #ffc53d99;pointer-events:none;animation:.5s cubic-bezier(.2,1.6,.4,1) comboIn;position:fixed;top:120px;right:28px}.combo small{letter-spacing:.2em;color:var(--ink);text-shadow:none;font-size:13px;display:block}@keyframes comboIn{0%{opacity:0;transform:scale(2.4)rotate(8deg)}}.xp{background:#0b0d1e;border:2px solid #343a70;border-radius:99px;height:16px;position:relative;overflow:hidden}.xp>i{background:repeating-linear-gradient(45deg, var(--lime), var(--lime) 8px, #b4e02a 8px, #b4e02a 16px);background-size:22px 22px;transition:width 1s cubic-bezier(.2,.8,.2,1);animation:1s linear infinite stripe;position:absolute;inset:0 auto 0 0;box-shadow:0 0 14px #c8f53c99}.xp>b{font:900 10px/1 var(--mono);color:#fff;text-shadow:0 1px 2px #000;place-items:center;display:grid;position:absolute;inset:0}@keyframes stripe{to{background-position:22px 0}}.qr-mini{color:var(--cap-ink);background:#fff;border-radius:12px;justify-items:center;gap:4px;padding:8px;display:grid}.qr-mini img{display:block}.qr-mini b{font-size:11px;font-weight:900}.screens{border:1px solid var(--line);background:#0b0d1e;border-radius:12px;gap:2px;padding:3px;display:inline-flex}.screens a{color:var(--ink2);white-space:nowrap;border-radius:9px;padding:6px 12px;font-size:13px;font-weight:800}.screens a:hover{color:var(--ink)}.screens a.on{background:var(--lime);color:var(--cap-ink)}.arcade-bg .grid,.arcade-bg .glow,.journey .jnode.here,.xp>i,.stat b.pulse,.pulse,.new,.inqbtn i,.schat .fab i{animation:none!important}
