.layout-shell{flex-direction:column;min-height:100%;display:flex}.layout-skip{z-index:10;position:absolute;top:-60px;left:8px}.layout-skip:focus{top:8px}.layout-header{height:var(--header-height);padding:0 var(--gutter);border-bottom:1px solid var(--border-2);background:var(--surface);justify-content:space-between;align-items:center;display:flex}.layout-home{min-height:44px;color:var(--text);align-items:center;text-decoration:none;display:flex}.layout-home .wordmark{padding-top:.18em}.layout-right{align-items:center;gap:var(--space-5);display:flex}.layout-nav{gap:var(--space-1);display:flex}.layout-lang button{min-height:30px;padding:.1em .7em}.layout-langShort{display:none}.layout-nav a{min-height:40px;padding:0 var(--space-3);border-radius:var(--radius);color:var(--text-2);align-items:center;font-weight:500;text-decoration:none;display:flex}.layout-nav a:hover{color:var(--text)}.layout-nav a[aria-current=page]{color:var(--text);background:var(--surface-2)}.layout-main{flex-direction:column;flex:1;min-height:0;display:flex}@media (width<=520px){.layout-home .wordmark{display:none}.layout-right{gap:var(--space-2)}.layout-nav a{padding:0 var(--space-2)}.layout-lang button{padding:.1em .55em}.layout-langLong{display:none}.layout-langShort{display:inline}}.home{--night:#0d1124eb;--night-soft:#0d112459}.home-hero{isolation:isolate;min-height:calc(100dvh - var(--header-height));align-items:flex-end;display:flex;position:relative;overflow:hidden}.home-heroImage{z-index:-2;object-fit:cover;object-position:50% 45%;width:100%;height:100%;position:absolute;inset:0}.home-hero:after{content:"";z-index:-1;background:linear-gradient(to top, var(--bg) 0%, var(--night) 24%, var(--night-soft) 55%, transparent 80%), linear-gradient(to right, var(--night-soft), transparent 55%);position:absolute;inset:0}.home-heroText{width:100%;max-width:var(--wide);padding:var(--space-8) var(--gutter) var(--space-8);margin:0 auto}.home-heroText>*{max-width:31rem}.home-title{margin:0 0 var(--space-4);font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.01em;text-wrap:balance;font-weight:700;line-height:1.02}.home-lead{margin:0 0 var(--space-6);color:var(--text-2);font-size:var(--text-lg)}.home-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.home-more{gap:var(--space-3);margin:var(--space-5) 0 0;color:var(--muted);flex-wrap:wrap;display:flex}.home-more a{align-items:center;min-height:32px;display:inline-flex}@media (width>=761px){.home-heroImage{transform-origin:50% 40%;transform:translate(18%)scale(1.08)}.home-hero:after{background:linear-gradient(to top, var(--bg) 0%, var(--night-soft) 30%, transparent 55%), linear-gradient(to right, var(--bg) 0%, var(--bg) 14%, var(--night) 30%, var(--night-soft) 48%, transparent 66%)}.home-heroText{align-self:center}}@media (width<=760px){.home-hero{min-height:0;display:block}.home-heroImage{object-position:50% 62%;height:52vh;min-height:300px;position:relative}.home-hero:after{background:linear-gradient(to top, var(--bg) 0%, var(--bg) 45%, var(--night-soft) 68%, transparent 85%)}.home-heroText{padding-top:0;padding-bottom:var(--space-7);margin-top:-120px}.home-actions .btn{flex:100%}}.home-how{max-width:var(--wide);padding:var(--space-8) var(--gutter) var(--space-9);margin:0 auto}.home-howTitle{margin:0 0 var(--space-6);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700}.home-shots{gap:var(--space-7);display:grid}@media (width>=900px){.home-shots{gap:var(--space-6) var(--space-7);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.home-shot:first-child{grid-row:span 2}}.home-shot{margin:0}.home-shot img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);width:100%}.home-shot figcaption{margin-top:var(--space-4)}.home-shot h3{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700}.home-shot p{max-width:34em;color:var(--text-2);margin:0}@media (width>=900px){.home-shot:first-child h3{font-size:var(--text-2xl)}}.home-title:lang(ko){font-size:clamp(2.25rem,4.5vw,3.5rem);line-height:1.2}.page-page{width:100%;max-width:var(--content);padding:var(--space-7) var(--gutter) var(--space-8);margin:0 auto}.page-page h1{margin-bottom:var(--space-4);font-size:var(--text-2xl)}.page-page h2{margin-top:var(--space-7);font-size:var(--text-xl)}.page-page p,.page-page li{color:var(--text-2)}.page-page p,.page-page :is(ul,ol):not([class])>li{max-width:var(--measure)}.page-page :is(ul,ol):not([class])>li+li{margin-top:var(--space-2)}.page-lead{margin:0 0 var(--space-6);font-size:var(--text-lg)}.page-page strong{color:var(--text)}.page-pieces{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.page-pieces li{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-2);border-radius:var(--radius);background:var(--surface);grid-template-columns:44px 1fr;align-items:start;display:grid}.page-pieces h3{color:var(--text);margin:0 0 4px;font-size:1.25rem}.page-pieces p{margin:0}.page-swatches{flex-wrap:wrap;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.page-swatches li{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-2);border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);font-size:var(--text-sm);display:flex}.page-swatch{border-radius:var(--radius-sm);border:1px solid var(--border);width:18px;height:18px}.page-tryIt{margin-top:var(--space-7)}.page-preview{height:calc(100dvh - var(--header-height));flex:1;grid-template-rows:auto minmax(0,1fr);display:grid}.page-previewBar{border-bottom:1px solid var(--border-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.page-previewBar h1{margin:0;font-size:1.6rem}.page-previewBoard{min-height:0;padding:12px}.game-layout{min-height:0;height:calc(100dvh - var(--header-height));flex:1 0 auto;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 340px;display:grid}.game-boardArea{min-height:0;padding:12px;position:relative}.game-panel{border-left:1px solid var(--border-2);background:var(--surface);overflow-y:auto}.game-sheetHandle{display:none}.game-panelBody{padding:8px 16px 24px}.game-section{border-bottom:1px solid var(--border-2);padding:12px 0}.game-section:last-child{border-bottom:0}.game-section p{margin:0 0 6px}.game-row{flex-wrap:wrap;gap:8px;display:flex}.game-turn,.game-turnDesktop{font-family:var(--font-heading);align-items:center;gap:8px;font-size:1.35rem;font-weight:700;display:flex}.game-turnDesktop{row-gap:var(--space-1);flex-wrap:wrap;line-height:1.15}.game-turnDesktop .label{flex-basis:100%;order:-1}.game-pieceTitle{align-items:center;gap:8px;font-weight:600;display:flex}.game-rule{color:var(--text-2);font-size:.95rem}.game-hint{color:var(--muted)}.game-moves{max-height:180px;font-family:var(--font-mono);margin:4px 0 0;padding:0;font-size:.85rem;list-style:none;overflow-y:auto}.game-moves li{grid-template-columns:2.5em 1fr 1fr;gap:4px;padding:2px 0;display:grid}.game-moveNo{color:var(--muted)}.game-captured{align-items:center;gap:4px;min-height:28px;display:flex}.game-capturedTeam{width:4.5em;color:var(--text-2)}.game-banner{border:1px solid var(--border);border-radius:var(--radius);text-align:center;background:#141a33f0;width:min(420px,100% - 32px);padding:16px 20px;position:absolute;top:24px;left:50%;transform:translate(-50%)}.game-banner .game-row{justify-content:center}.game-bannerTitle{font-family:var(--font-heading);margin:0;font-size:2rem;font-weight:700}.game-bannerDetail{color:var(--text-2);margin:4px 0 12px}@media (width<=760px){.game-layout{height:auto;display:block}.game-boardArea{height:calc(100dvh - var(--header-height) - 56px);min-height:320px;padding:8px}.game-panel{z-index:5;border-left:0;border-top:1px solid var(--border);border-radius:14px 14px 0 0;max-height:56px;transition:max-height .25s;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 24px #00000059}.game-panel.game-open{max-height:70dvh;overflow-y:auto}.game-sheetHandle{width:100%;height:56px;color:var(--text);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.game-turnDesktop{display:none}.game-banner{top:12px}}.game-check{color:var(--text-2);cursor:pointer;align-items:center;gap:8px;margin-top:6px;display:flex}.game-check input{width:18px;height:18px;accent-color:var(--accent)}.game-curtain{inset:var(--header-height) 0 0 0;z-index:20;background:var(--bg);place-items:center;padding:16px;display:grid;position:fixed}.game-curtainCard{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;max-width:380px;padding:28px 24px}.game-curtainCard h2{margin:12px 0 6px;font-size:1.8rem}.game-curtainCard p{color:var(--text-2);margin:0 0 18px}.game-players{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.game-players li{color:var(--text-2);grid-template-columns:18px 4.5em 1fr;align-items:center;gap:8px;display:grid}.game-playerName{color:var(--text);font-weight:500}.game-toggle[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--text)}.ice-dotEmpty{border-color:var(--muted)}.ice-meter{background:var(--border-2);border-radius:999px;height:10px;margin:4px 0 8px;overflow:hidden}.ice-meter span{background:var(--brand);height:100%;transition:width .4s;display:block}.ice-stones,.ice-cracks,.ice-log{margin:0;padding:0;list-style:none}.ice-stones li,.ice-log li{align-items:baseline;gap:8px;padding:3px 0;display:flex}.ice-stones li .game-hint{margin-left:auto}.ice-cracks li{padding:2px 0}.ice-log{max-height:300px;overflow-y:auto}.ice-log li{column-gap:var(--space-2);padding:var(--space-2) 0;grid-template-columns:auto 1fr;row-gap:2px;display:grid}.ice-log li+li{border-top:1px solid var(--border-2)}.ice-log .side-dot{align-self:center}.ice-log .game-hint{font-size:var(--text-sm);grid-column:2;line-height:1.45}.ice-shove p{margin:6px 0}.online-link{border:1px solid var(--border-2);background:var(--surface);min-width:0;color:var(--text);font:400 .85rem var(--font-mono,monospace);border-radius:8px;flex:1;padding:6px 10px}.ice-warn{color:var(--warn);font-weight:600}.ice-subhead{margin:12px 0 6px}.bot-picker{margin:var(--space-6) 0 0;border:0;padding:0}.bot-picker legend{margin-bottom:var(--space-3);font-family:var(--font-heading);font-size:var(--text-xl);color:var(--text);align-items:center;padding:0;font-weight:700;display:flex}.bot-strategy strong .side-dot,.bot-picker legend .side-dot{margin-right:var(--space-2)}.bot-subhead{margin:12px 0 6px}.bot-strategies{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.bot-strategy{padding:var(--space-3) 36px var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-2);font:400 var(--text-sm) / 1.45 var(--font-body);text-align:left;cursor:pointer;align-content:start;gap:2px;display:grid}.bot-strategy strong{color:var(--text);font-size:var(--text-base);font-weight:600}.bot-strategy{transition:border-color .12s,background-color .12s;position:relative}.bot-strategy:hover{border-color:var(--muted)}.bot-strategy[aria-pressed=true]{border-color:var(--cream);background:color-mix(in srgb, var(--cream) 9%, var(--surface));box-shadow:inset 0 0 0 1px var(--cream);color:var(--text)}.bot-strategy[aria-pressed=true]:after{content:"✓";background:var(--cream);width:20px;height:20px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:9px;right:10px}@media (prefers-reduced-motion:reduce){.bot-strategy{transition:none}}.bot-pair{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 24px;display:grid}.bot-start{margin:var(--space-6) 0 0}.bot-change{margin:12px 0 0;font-size:.9rem}:root{--bg:#0d1124;--surface:#141a33;--surface-2:#1b2342;--border:#2b3558;--border-2:#232b4a;--text:#eeedf8;--text-2:#c9cbe3;--muted:#9396b8;--aurora-green:#3fd0b557;--aurora-violet:#7c6cff47;--accent:#e8742e;--accent-hover:#f08646;--on-accent:#1b130c;--brand:#e8742e;--cream:#f1ede2;--success:#3fbf7f;--warn:#ffb020;--danger:#ff4d5e;--font-wordmark:"Josefin Sans", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;--font-display:"Vollkorn", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", Georgia, serif;--font-heading:"Barlow Condensed", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;--font-body:"Barlow", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.5rem;--text-2xl:2.25rem;--text-display:clamp(2.5rem, 5.5vw, 4.25rem);--measure:68ch;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--gutter:var(--space-4);--content:760px;--wide:1180px;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow:0 24px 60px -20px #030614bf, 0 2px 8px #03061466;--header-height:60px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width>=768px){:root{--gutter:var(--space-6)}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:radial-gradient(110% 55% at 45% -12%, var(--aurora-green), transparent 60%), radial-gradient(80% 45% at 85% -8%, var(--aurora-violet), transparent 62%), var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;line-height:1.6}h1,h2,h3{font-family:var(--font-heading);margin:0 0 .5em;font-weight:700;line-height:1.1}a{color:var(--text);text-underline-offset:.2em}img{max-width:100%;height:auto;display:block}:focus-visible{outline:3px solid var(--cream);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mono{font-family:var(--font-mono)}.wordmark{font-family:var(--font-wordmark);text-transform:uppercase;letter-spacing:.16em;font-weight:600}.btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);min-height:44px;color:var(--text);font:500 .95rem var(--font-body);cursor:pointer;justify-content:center;align-items:center;gap:.4em;padding:.5em 1.15em;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-small{min-height:32px;padding:.25em .7em;font-size:.85rem}.btn-large{min-height:52px;padding:.6em 1.5em;font-size:1.05rem}.link-quiet{color:var(--text-2);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);font-weight:500;text-decoration-thickness:1px}.link-quiet:hover{color:var(--text);text-decoration-color:currentColor}.segmented{border:1px solid var(--border);border-radius:var(--radius);display:inline-flex;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--border);min-height:34px;color:var(--text-2);font:500 .88rem var(--font-body);cursor:pointer;background:0 0;padding:.2em .8em}.segmented button:last-child{border-right:0}.segmented button[aria-pressed=true]{background:var(--cream);color:var(--on-accent)}.side-dot{vertical-align:-.1em;border:2px solid #0000;border-radius:50%;flex:none;width:14px;height:14px;display:inline-block}.text-danger{color:var(--danger)}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:lang(ko){word-break:keep-all}
