*{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:"Noto Serif KR", "Apple SD Gothic Neo", serif;--tile-font:"Noto Serif KR", serif;--paper:#f2f0ea;--surface:#fffdf8;--surface-alt:#e5eeeb;--border:#d9d5ca;--border-weak:#e8e4da;--border-strong:#93b8b1;--divider:#e0dcd2;--chrome:#eae6dd;--accent:#b8432c;--accent-fill:#b8432c;--accent-dark:#7b2b1b;--accent-on-dark:#f2b99f;--text:#132226;--text-body:#3a4a4d;--text-muted:#5f6e71;--text-disabled:#8a9597;--ink:#0f3a3f;--ink-border:#235a5e;--on-ink:#f4f1e9;--on-ink-muted:#a8c3c0;--on-ink-accent:#f2b99f;--danger:#b3372f;--danger-bg:#fbeceb;--danger-border:#eac3bf;--xp:#d7a33a;--xp-dark:#9c7419;--flame:#e2622b;--bg-glow-a:#b8432c17;--bg-glow-b:#0d4a501c;--track-off:#d9d5ca;--knob-off:#fffdf8;--shadow-card:0 2px 0 #1322260f;--shadow-float:0 18px 40px #13222624;--locked-opacity:.6;--table:#17625d;--table-deep:#0d4a50;--table-line:#ffffff12;--sel:#ff6a3d;--hint:#ffcb45;--tile-face:#fbf6ea;--tile-edge:#d9cdb2;--tile-side:#c0492f;--mini-face:var(--tile-face);--mini-edge:var(--tile-edge);--mini-side:var(--tile-side);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0b1416;--surface:#142124;--surface-alt:#1b2d30;--border:#26393c;--border-weak:#1d2d30;--border-strong:#3d6a67;--divider:#1d2d30;--chrome:#101b1d;--accent:#f08c6d;--accent-fill:#c24e33;--accent-dark:#f6bba7;--text:#eef1ee;--text-body:#c4cecc;--text-muted:#8e9c9b;--text-disabled:#6a7877;--ink:#11282c;--ink-border:#26393c;--on-ink:#eef1ee;--on-ink-muted:#8e9c9b;--danger:#ec8a80;--danger-bg:#331c1c;--danger-border:#6a2f2c;--bg-glow-a:#c24e331a;--bg-glow-b:#0006;--track-off:#26393c;--knob-off:#8e9c9b;--shadow-float:0 18px 40px #0006;--locked-opacity:.55;--tile-face:#f5efe1;--tile-edge:#cfc2a5;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#0b1416;--surface:#142124;--surface-alt:#1b2d30;--border:#26393c;--border-weak:#1d2d30;--border-strong:#3d6a67;--divider:#1d2d30;--chrome:#101b1d;--accent:#f08c6d;--accent-fill:#c24e33;--accent-dark:#f6bba7;--text:#eef1ee;--text-body:#c4cecc;--text-muted:#8e9c9b;--text-disabled:#6a7877;--ink:#11282c;--ink-border:#26393c;--on-ink:#eef1ee;--on-ink-muted:#8e9c9b;--danger:#ec8a80;--danger-bg:#331c1c;--danger-border:#6a2f2c;--bg-glow-a:#c24e331a;--bg-glow-b:#0006;--track-off:#26393c;--knob-off:#8e9c9b;--shadow-float:0 18px 40px #0006;--locked-opacity:.55;--tile-face:#f5efe1;--tile-edge:#cfc2a5;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-table=ink]{--table:#214a70;--table-deep:#14304c;--tile-side:#1f6f66}:root[data-table=rosewood]{--table:#6f302b;--table-deep:#4a1d1b;--tile-side:#1f6f66}:root[data-table=bamboo]{--table:#9c7c45;--table-deep:#735a2f;--tile-side:#1f6f66;--table-line:#3c280a1f}:root[data-table=night]{--table:#1d232b;--table-deep:#0f1317;--tile-side:#2a7f75;--tile-face:#ede7d8;--tile-edge:#c9bc9f}.mj-board-wrap{width:100%;position:relative}.mj-table{background:repeating-linear-gradient(90deg, var(--table-line) 0 1px, transparent 1px 7px), radial-gradient(ellipse at 50% 0%, var(--table) 0%, var(--table-deep) 100%);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:18px;justify-content:center;width:100%;transition:background .2s;display:flex;position:relative;overflow:hidden}@media (max-width:899px){:root[data-boardsize=large] .mj-edge{margin-inline:-22px}:root[data-boardsize=large] .mj-edge .mj-table{border-radius:0}}.mj-board{flex:none;position:relative}.mj-tile{width:var(--tw);height:var(--th);border:1px solid var(--tile-edge);border-radius:calc(var(--tw) * .13);background:linear-gradient(150deg, color-mix(in srgb, var(--tile-face) 55%, #fff) 0%, var(--tile-face) 45%);box-shadow:var(--e) var(--e) 0 var(--tile-edge), var(--s) var(--s) 0 var(--tile-side), calc(var(--s) + 1px) calc(var(--s) + 2px) 4px #00000052;cursor:pointer;-webkit-tap-highlight-color:transparent;padding:0;transition:transform .11s,box-shadow .11s;position:absolute}.mj-tile svg{pointer-events:none}.mj-tile:before{content:"";top:-1px;left:-1px;right:calc(-1px - var(--s));bottom:calc(-1px - var(--s));position:absolute}.mj-tile:after{content:"";border-radius:inherit;pointer-events:none;background:0 0;transition:background-color .16s;position:absolute;inset:-1px}.mj-table[data-dim="1"] .mj-tile.is-blocked:after{background:#0a20244d}.mj-tile.is-blocked{cursor:default}.mj-tile:focus-visible{outline:3px solid var(--sel);outline-offset:1px;border-radius:calc(var(--tw) * .13)}.mj-tile.is-sel{outline:3px solid var(--sel);outline-offset:-1px;box-shadow:var(--e) var(--e) 0 var(--tile-edge), var(--s) var(--s) 0 var(--tile-side), calc(var(--s) + 4px) calc(var(--s) + 8px) 10px #0006;transform:translate(-2px,-5px)}.mj-tile.is-sel:after{background:#ff6a3d24}.mj-tile.is-hint{outline:3px solid var(--hint);outline-offset:-1px;animation:1.1s ease-in-out infinite mjHint}.mj-tile.is-hint.is-sel{outline-color:var(--sel)}@keyframes mjHint{0%,to{filter:drop-shadow(0 0 #0000)}50%{filter:drop-shadow(0 0 7px var(--hint))}}.mj-tile.is-shake{animation:.32s ease-in-out mjShake}@keyframes mjShake{0%,to{translate:0}20%{translate:-4px}40%{translate:4px}60%{translate:-3px}80%{translate:2px}}.mj-ghost{pointer-events:none;animation:.3s ease-in forwards mjLeave}@keyframes mjLeave{0%{opacity:1;transform:translateY(-4px)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.72)}}:root[data-motion=off] .mj-tile{transition:none}:root[data-motion=off] .mj-tile.is-hint,:root[data-motion=off] .mj-tile.is-shake{animation:none}:root[data-motion=off] .mj-ghost{display:none}.mj-overlay{background:radial-gradient(ellipse at 50% 0%, var(--table) 0%, var(--table-deep) 100%);color:#fff;z-index:2;border:none;place-items:center;width:100%;display:grid;position:absolute;inset:0}.mj-pill{z-index:3;color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#08181ad1;border-radius:999px;max-width:calc(100% - 20px);padding:6px 14px;font-size:13px;font-weight:600;position:absolute;top:10px;left:50%;overflow:hidden;transform:translate(-50%)}.tool-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.tool{background:var(--surface);border:1px solid var(--border);min-height:58px;box-shadow:var(--shadow-card);color:var(--text-body);border-radius:14px;justify-items:center;gap:3px;padding:10px 4px 8px;font-size:12.5px;font-weight:600;transition:transform 90ms,background-color .12s;display:grid;position:relative}.tool:not(:disabled):active{transform:scale(.96)}.tool:disabled{opacity:.4}.tool-on{background:var(--ink);color:var(--on-ink);border-color:var(--ink-border)}.tool.tool-glow{outline:3px solid var(--hint);outline-offset:1px;animation:1.1s ease-in-out infinite mjHint}:root[data-motion=off] .tool.tool-glow{animation:none}.tut-gallery{gap:10px;margin-top:12px;display:grid}.tut-gallery-row{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.tut-gallery-cap{color:var(--on-ink);flex-basis:100%;font-size:14px;font-weight:600;line-height:1.45}.tut-gallery figure{justify-items:center;gap:3px;margin:0;display:grid}.tut-gallery figcaption{color:var(--on-ink-muted);font-size:12px}.tool-badge{background:var(--accent-fill);color:#fff;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700;position:absolute;top:5px;right:7px}.table-example{background:radial-gradient(ellipse at 50% 0%, var(--table) 0%, var(--table-deep) 100%);border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:10px;margin:12px 0 4px;padding:14px 12px;display:flex}.table-example figcaption{color:#fff}.layout-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.layout-tile{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);text-align:left;border-radius:16px;flex-direction:column;gap:8px;width:100%;padding:12px 14px;display:flex}.layout-tile-art{background:radial-gradient(ellipse at 50% 0%, var(--table) 0%, var(--table-deep) 100%);border-radius:10px;place-items:center;height:64px;display:grid}.layout-tile-name{font-family:var(--display-font);font-size:16px;font-weight:700;line-height:1.25;display:block}.layout-tile-sub{color:var(--text-muted);font-size:12px;line-height:1.4;display:block}@media (min-width:900px){.layout-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width:420px){.layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.rec-dot{background:var(--chrome);width:30px;height:30px;color:var(--text-disabled);border-radius:9px;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.rec-dot.rec-won{background:var(--table-deep);color:#fff}.rec-grid{grid-template-columns:minmax(0,1.5fr) .7fr .8fr .8fr .9fr;gap:6px;display:grid}@media (max-width:480px){.rec-grid{grid-template-columns:minmax(0,1.4fr) .8fr .8fr .9fr}.rec-games{display:none}}.tile-index{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px 6px;display:grid}.tile-index figure{text-align:center;justify-items:center;gap:4px;margin:0;display:grid}.tile-index figcaption{color:var(--text-muted);font-size:11px;line-height:1.3}:root[data-easy=on]{--text-body:#243234;--text-muted:#3e4c4f;--text-disabled:#5f6c6e;--border:#b3aea0;--border-weak:#cdc8bb}@media (prefers-color-scheme:dark){:root[data-easy=on]:not([data-theme=light]){--text-body:#dde5e3;--text-muted:#b4c1bf;--text-disabled:#8e9c9b;--border:#41585b;--border-weak:#33474a}}:root[data-easy=on][data-theme=dark]{--text-body:#dde5e3;--text-muted:#b4c1bf;--text-disabled:#8e9c9b;--border:#41585b;--border-weak:#33474a}
@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}}
