*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:IBM Plex Sans KR,Apple SD Gothic Neo,system-ui,sans-serif;font-size:15px;line-height:1.6;transition:background-color .16s}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60% 45% at 15% 0%, var(--bg-glow-a), transparent 70%), radial-gradient(70% 55% at 100% 100%, var(--bg-glow-b), transparent 70%);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--display-font,"Noto Serif KR", "Apple SD Gothic Neo", serif);color:var(--text);text-wrap:balance;margin:0}p{margin:0}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}a{color:inherit;text-decoration:none}input,select{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.btn{will-change:transform;transition:transform 90ms,filter .12s,box-shadow 90ms,background-color .12s;position:relative}.btn:not(:disabled):active{filter:brightness(.95);transform:scale(.97)translateY(1px)}.btn-accent{background:linear-gradient(180deg, color-mix(in srgb, var(--accent-fill) 82%, #fff) 0%, var(--accent-fill) 55%, color-mix(in srgb, var(--accent-fill) 88%, #000) 100%);box-shadow:inset 0 1px 0 #ffffff38, 0 3px 0 color-mix(in srgb, var(--accent-fill) 70%, #000), 0 6px 14px #5e3a1e38}.btn-accent:not(:disabled):active{box-shadow:inset 0 1px 0 #ffffff29, 0 0 0 color-mix(in srgb, var(--accent-fill) 70%, #000), 0 2px 6px #5e3a1e2e;filter:none;transform:translateY(3px)}.btn-ink{box-shadow:0 2px #00000059}.btn-ink:not(:disabled):active{transform:translateY(2px);box-shadow:0 0 #00000059}.btn-surface,.btn-paper{box-shadow:var(--shadow-card)}.pressable{transition:transform 90ms,filter .12s}.pressable:active{filter:brightness(.97);transform:scale(.985)}:root[data-motion=off] .btn,:root[data-motion=off] .pressable{transition:none}:root[data-motion=off] .btn:not(:disabled):active,:root[data-motion=off] .pressable:active{transform:none}
:root{--display-font:"Gowun Batang", "Apple SD Gothic Neo", serif;--paper:#f2efe8;--surface:#fffdf9;--surface-alt:#efe8f3;--border:#ddd6cc;--border-weak:#ebe6dd;--border-strong:#b9a6cc;--divider:#e2ddd3;--chrome:#ebe6de;--accent:#4d3a6b;--accent-fill:#4d3a6b;--accent-dark:#33264a;--accent-on-dark:#c7b2e6;--text:#17161c;--text-body:#45424a;--text-muted:#6a6570;--text-disabled:#8b8690;--ink:#1c1a22;--ink-border:#2d2a35;--on-ink:#f3f0ea;--on-ink-muted:#a9a4b2;--on-ink-accent:#c7b2e6;--danger:#a3403a;--danger-bg:#fbecea;--danger-border:#e6c1bc;--board:#e0b96e;--board-line:#301e068c;--board-edge:#3c260a4d;--board-out:#2818041a;--shadow-board:0 10px 28px #3c260a3d, 0 2px 4px #3c260a24;--flat-black:#111014;--flat-white:#fff;--flat-white-edge:#2a2830;--last-on-black:#f3f0ea;--last-on-white:#4d3a6b;--mark-ok:#2f7d57;--mark-bad:#b33b33;--mark-hint:#8f6fc2;--mark-target:#b33b33;--xp:#d9a441;--xp-dark:#a4781f;--flame:#e2622b;--bg-glow-a:#8f6fc229;--bg-glow-b:#e0b96e24;--track-off:#ddd6cc;--knob-off:#fffdf9;--shadow-card:0 2px 0 #17161c0f;--shadow-float:0 18px 40px #17161c1f;--locked-opacity:.6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#16151b;--surface:#1f1d25;--surface-alt:#2a2533;--border:#312d39;--border-weak:#2a2731;--border-strong:#5a4a73;--divider:#2a2731;--chrome:#1b1a21;--accent:#c7b2e6;--accent-fill:#6a5391;--accent-dark:#dccbf2;--accent-on-dark:#c7b2e6;--text:#f3f0ea;--text-body:#c9c5cf;--text-muted:#938e9c;--text-disabled:#6f6b77;--ink:#1b1a21;--ink-border:#312d39;--on-ink:#f3f0ea;--on-ink-muted:#938e9c;--danger:#e0796d;--danger-bg:#2e1f1d;--danger-border:#5c332d;--board:#d4ab60;--board-line:#28180494;--board-edge:#1e120273;--board-out:#00000024;--shadow-board:0 12px 30px #00000080, 0 2px 4px #0000004d;--last-on-white:#4d3a6b;--bg-glow-a:#8f6fc224;--bg-glow-b:#0006;--track-off:#312d39;--knob-off:#938e9c;--shadow-float:0 18px 40px #0000004d;--locked-opacity:.55;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#16151b;--surface:#1f1d25;--surface-alt:#2a2533;--border:#312d39;--border-weak:#2a2731;--border-strong:#5a4a73;--divider:#2a2731;--chrome:#1b1a21;--accent:#c7b2e6;--accent-fill:#6a5391;--accent-dark:#dccbf2;--accent-on-dark:#c7b2e6;--text:#f3f0ea;--text-body:#c9c5cf;--text-muted:#938e9c;--text-disabled:#6f6b77;--ink:#1b1a21;--ink-border:#312d39;--on-ink:#f3f0ea;--on-ink-muted:#938e9c;--danger:#e0796d;--danger-bg:#2e1f1d;--danger-border:#5c332d;--board:#d4ab60;--board-line:#28180494;--board-edge:#1e120273;--board-out:#00000024;--shadow-board:0 12px 30px #00000080, 0 2px 4px #0000004d;--bg-glow-a:#8f6fc224;--bg-glow-b:#0006;--track-off:#312d39;--knob-off:#938e9c;--shadow-float:0 18px 40px #0000004d;--locked-opacity:.55;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-board=hinoki]{--board:#f0ddb4;--board-line:#3c280c75;--board-out:#3c280c14}:root[data-board=paper]{--board:#f4f0e6;--board-line:#1e1a1470;--board-out:#1e1a140f;--board-grain:.35}:root[data-board=slate]{--board:#2b2a33;--board-line:#f0ece457;--board-out:#00000040;--board-grain:0;--last-on-white:#6a5391}.go-surface{fill:var(--board)}.go-board{box-shadow:var(--shadow-board);background:var(--board);border-radius:14px}@media (max-width:899px){.board-wrap{margin-inline:-8px}:root[data-boardsize=large] .board-wrap{margin-inline:-18px}:root[data-boardsize=large] .board-wrap .go-board{border-radius:6px}}@keyframes tcDrop{0%{opacity:0;transform:scale(1.3)}60%{opacity:1;transform:scale(.97)}to{transform:scale(1)}}.stone-drop{transform-box:fill-box;transform-origin:50%;animation:.15s ease-out tcDrop}@keyframes tcPulse{0%,to{opacity:.35}50%{opacity:.75}}.mark-pulse{animation:1.1s ease-in-out infinite tcPulse}:root[data-motion=off] .stone-drop,:root[data-motion=off] .mark-pulse{animation:none}.level-dots{vertical-align:middle;gap:3px;display:inline-flex}.level-dots i{background:var(--border);border-radius:50%;width:6px;height:6px}.level-dots i.on{background:var(--accent-fill)}:root[data-easy=on]{--text-body:#2b2830;--text-muted:#4a4650;--text-disabled:#6a6570;--border:#c7bfb3;--border-weak:#d8d1c5;--board-line:#1e1000bf}@media (prefers-color-scheme:dark){:root[data-easy=on]:not([data-theme=light]){--text-body:#dedae3;--text-muted:#b6b0be;--text-disabled:#928c9b;--border:#4a4453;--border-weak:#3b3643}}:root[data-easy=on][data-theme=dark]{--text-body:#dedae3;--text-muted:#b6b0be;--text-disabled:#928c9b;--border:#4a4453;--border-weak:#3b3643}:root[data-easy=on][data-board=slate]{--board-line:#f0ece48c}.problem-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;display:grid}.problem-cell{aspect-ratio:1;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.problem-cell[data-done]{background:var(--surface-alt);border-color:var(--border-strong);color:var(--accent)}.problem-no{font-family:var(--display-font);font-size:18px;font-weight:700}.problem-meta{align-items:center;height:16px;display:flex}.problem-cell[data-locked]{color:var(--text-muted);background:var(--chrome);box-shadow:none}.problem-cell[data-locked] .problem-meta{gap:5px}.solve-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}@media (min-width:560px){.solve-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}
@keyframes gcSheetUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes gcFadeIn{0%{opacity:0}to{opacity:1}}.sheet-backdrop{z-index:50;background:#14181c73;justify-content:center;align-items:flex-end;animation:.14s ease-out gcFadeIn;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:560px;max-height:88vh;color:var(--text);border:1px solid var(--border);padding:18px 20px max(env(safe-area-inset-bottom), 18px);box-shadow:var(--shadow-float);border-bottom:none;border-radius:22px 22px 0 0;animation:.2s ease-out gcSheetUp;overflow-y:auto}@media (min-width:900px){.sheet-backdrop{align-items:center}.sheet{border-bottom:1px solid var(--border);border-radius:22px;padding-bottom:20px}}:root[data-motion=off] .sheet,:root[data-motion=off] .sheet-backdrop{animation:none}.stat-tile{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:14px;align-items:center;gap:8px;min-width:0;padding:9px 12px;display:flex}.stat-big{font-variant-numeric:tabular-nums;font-size:17px;font-weight:700;line-height:1.15;display:block}.stat-sub{color:var(--text-muted);white-space:nowrap;font-size:10.5px;display:block}.flame{transform-origin:50% 90%;font-size:22px;line-height:1;animation:1.6s ease-in-out infinite gcFlame;display:inline-block}.flame-lg{font-size:40px}.flame-dim{filter:grayscale()opacity(.45);animation:none}@keyframes gcFlame{0%,to{transform:scale(1)rotate(-3deg)}50%{transform:scale(1.12)rotate(3deg)}}.xp-chip{background:color-mix(in srgb, var(--xp) 22%, transparent);color:var(--xp-dark);border:1px solid color-mix(in srgb, var(--xp) 55%, transparent);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:2px 9px;font-size:11.5px;font-weight:700;display:inline-flex}:root[data-theme=dark] .xp-chip{color:#f2c86a}.progress-xp{background:linear-gradient(90deg, var(--xp), #f2c86a)}.badge-icon{background:var(--chrome);border-radius:50%;place-items:center;width:62px;height:62px;font-size:34px;line-height:1;display:inline-grid}.badge-on .badge-icon{background:radial-gradient(circle at 35% 30%, #fbe6b3, var(--xp) 70%, var(--xp-dark));box-shadow:0 4px 12px color-mix(in srgb, var(--xp) 45%, transparent)}.rank-badge{background:radial-gradient(circle at 35% 30%, #fbe6b3, var(--xp) 70%, var(--xp-dark));width:96px;height:96px;box-shadow:0 10px 28px color-mix(in srgb, var(--xp) 45%, transparent), inset 0 -4px 0 #0000001f;border-radius:50%;place-items:center;margin:0 auto 14px;font-size:50px;animation:.42s cubic-bezier(.2,1.4,.4,1) gcPop;display:grid}.rank-badge-sm{width:64px;height:64px;margin:0;font-size:32px;animation:none}@keyframes gcPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.rank-card{background:var(--surface);width:min(92vw,380px);color:var(--text);border:1px solid var(--border-strong);text-align:center;box-shadow:var(--shadow-float);border-radius:24px;margin-bottom:12vh;padding:26px 22px 22px;animation:.22s ease-out gcSheetUp}.sheet-backdrop:has(.rank-card){align-items:center}.reward-xp{left:50%;top:calc(env(safe-area-inset-top) + 18px);z-index:60;background:radial-gradient(circle at 35% 30%, #fbe6b3, var(--xp) 70%, var(--xp-dark));color:#3d2a08;box-shadow:0 8px 22px color-mix(in srgb, var(--xp) 50%, transparent);pointer-events:none;border-radius:999px;padding:8px 18px;font-size:18px;font-weight:800;animation:1.3s ease-out forwards gcXp;position:fixed;transform:translate(-50%)}@keyframes gcXp{0%{opacity:0;transform:translate(-50%)translateY(14px)scale(.6)}18%{opacity:1;transform:translate(-50%)translateY(0)scale(1.1)}30%{transform:translate(-50%)translateY(0)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%)translateY(-16px)scale(.9)}}.reward-toast{left:50%;top:calc(env(safe-area-inset-top) + 14px);z-index:60;background:var(--ink);width:min(92vw,400px);color:var(--on-ink);border:1px solid var(--ink-border);box-shadow:var(--shadow-float);cursor:pointer;border-radius:18px;align-items:center;gap:12px;padding:11px 14px;animation:.26s cubic-bezier(.2,1.2,.4,1) gcToastIn;display:flex;position:fixed;transform:translate(-50%)}.reward-toast-icon{background:#f4f1ea1a;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;font-size:24px;display:grid}@keyframes gcToastIn{0%{opacity:0;transform:translate(-50%)translateY(-24px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.confetti{z-index:55;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti span{border-radius:2px;animation:2s ease-in forwards gcConfetti;position:absolute;top:-12px}@keyframes gcConfetti{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:.7;transform:translateY(105vh)rotate(720deg)}}:root[data-motion=off] .flame,:root[data-motion=off] .rank-badge,:root[data-motion=off] .reward-toast,:root[data-motion=off] .rank-card{animation:none}:root[data-motion=off] .confetti{display:none}:root[data-easy=on]{zoom:1.22}:root[data-easy=on] .easy-hide{display:none!important}:root[data-easy=on] .label{letter-spacing:.06em;font-size:13px}:root[data-easy=on] .tabbar a{font-size:12.5px!important;font-weight:600!important}:root[data-easy=on] .btn{min-height:48px!important}:root[data-easy=on] .stat-sub{font-size:12px}:root[data-easy=on] .status-strip{grid-template-columns:1fr 1fr!important}:root[data-easy=on] .status-strip>:nth-child(2){grid-area:1/1/auto/-1}:root[data-easy=on] .stat-big{white-space:nowrap}:root[data-easy=on] .game-controls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}@media (min-width:900px){:root[data-easy=on]{zoom:1.15}}.label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600}.shell{max-width:640px;padding:max(env(safe-area-inset-top), 26px) 22px 24px;margin:0 auto}.stack{gap:12px;display:grid}.tabbar{display:flex}.web-header,.only-desktop{display:none}@media (min-width:900px){.web-header{background:var(--chrome);border-bottom:1px solid var(--divider);z-index:20;align-items:center;gap:22px;height:62px;padding:0 44px;display:flex;position:sticky;top:0}.only-desktop{display:block}.only-desktop.trust-row{display:flex}.only-mobile{display:none!important}.shell{max-width:1180px;padding:44px 56px 56px}.home-grid{grid-template-columns:1fr 380px;align-items:start;gap:36px;display:grid}.home-two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.home-three{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.play-grid{grid-template-columns:280px minmax(0,1fr) 300px;align-items:start;gap:0;display:grid}.play-col-l{border-right:1px solid var(--divider);padding-right:26px}.play-col-c{padding:0 26px}.play-col-r{border-left:1px solid var(--divider);padding-left:26px}.tabbar{display:none}.app-body{padding-bottom:0!important}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
