/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--breakpoint-xl:80rem;--container-xl:36rem;--container-3xl:48rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.max-w-3xl{max-width:var(--container-3xl)}.max-w-screen-xl{max-width:var(--breakpoint-xl)}.max-w-xl{max-width:var(--container-xl)}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-70{opacity:.7}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (width>=40rem){.sm\:py-8{padding-block:calc(var(--spacing) * 8)}}}.waza-layer{z-index:7;pointer-events:none;position:absolute;inset:0}.waza-ring{width:11.1111%;height:11.1111%;box-shadow:0 0 0 3px var(--gold), 0 0 14px 4px #e6b12f8c;border-radius:50%;animation:.9s ease-out both waza-ring;position:absolute}.waza-frame{width:11.1111%;height:11.1111%;box-shadow:inset 0 0 0 3px var(--shu);border-radius:4px;animation:.35s ease-out both waza-frame;position:absolute}.waza-frame-castle{box-shadow:inset 0 0 0 3px var(--gold);background:#e6b12f29}.waza-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.waza-lines line{stroke:var(--shu);stroke-width:.06px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:.5s ease-out .15s forwards waza-draw}.waza-band{background:linear-gradient(90deg, transparent, var(--card) 12%, var(--card) 88%, transparent);border-top:2px solid var(--shu);border-bottom:2px solid var(--shu);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / .25);justify-content:center;align-items:baseline;gap:10px;padding:10px 0;animation:1.6s cubic-bezier(.2,.8,.3,1) both waza-band;display:flex;position:absolute;top:38%;left:-2%;right:-2%}.waza-band-name{font-family:var(--piece-font);font-weight:700;font-size:calc(var(--cell) * .9);color:var(--shu);letter-spacing:.06em}.waza-big .waza-band-name{font-size:calc(var(--cell) * 1.05)}.waza-band-kana{color:var(--ink-soft);font-size:12px}.waza-card{border-left:5px solid var(--gold);background:var(--card);width:max-content;max-width:92%;box-shadow:0 8px 20px rgb(var(--shadow-rgb) / .28);border-radius:12px;gap:2px;padding:8px 14px;animation:.3s ease-out both waza-card;display:grid;position:absolute;bottom:3%;left:50%;translate:-50%}.waza-card-name{font-family:var(--piece-font);color:var(--ink);align-items:baseline;gap:8px;font-size:17px;font-weight:700;display:flex}.waza-card-kind{color:var(--ink-soft);font-family:system-ui,sans-serif;font-size:11px;font-weight:700}.waza-card-first{color:var(--shu-text);font-size:12px;font-weight:700}.waza-card-line{color:var(--ink);font-size:13px;line-height:1.5}@keyframes waza-ring{0%{opacity:0;scale:.4}60%{opacity:1;scale:1.15}to{scale:1}}@keyframes waza-frame{0%{opacity:0;scale:1.3}}@keyframes waza-draw{to{stroke-dashoffset:0}}@keyframes waza-band{0%{opacity:0;translate:-30%}18%{opacity:1;translate:0}82%{opacity:1;translate:0}to{opacity:0;translate:20%}}@keyframes waza-card{0%{opacity:0;translate:-50% 8px}}@keyframes waza-fade{0%{opacity:0}}.waza-still .waza-ring,.waza-still .waza-frame,.waza-still .waza-band,.waza-still .waza-card{animation:.3s ease-out both waza-fade;scale:none}.waza-still .waza-lines line{stroke-dashoffset:0;animation:none}@media (prefers-reduced-motion:reduce){.waza-ring,.waza-frame,.waza-band,.waza-card{animation:.3s ease-out both waza-fade!important}.waza-lines line{stroke-dashoffset:0;animation:none!important}}.kifu-waza,.waza-chip{color:#6b4a00;white-space:nowrap;background:#fbe9c5;border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.waza-list{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.result-waza{text-align:left;margin-top:12px}.result-waza-caption{color:var(--ink-soft);font-size:12px}.result-waza .waza-list{margin-top:4px}.result-save{margin-top:10px}.result-save .chip{margin-left:8px}.result-save a{color:var(--focus);text-decoration:underline}.records-title{width:min(100%,560px);margin:0 auto 4px;font-size:22px;font-weight:700}.records-lead{width:min(100%,560px);color:var(--ink-soft);margin:0 auto 12px;font-size:13px}.records{gap:12px;width:min(100%,560px);margin:0 auto;display:grid}.records-tabs{background:var(--track);scrollbar-width:none;border-radius:999px;gap:4px;padding:4px;display:flex;overflow-x:auto}.records-tab{min-height:44px;color:var(--ink);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:1;padding:0 12px;font-size:14px;font-weight:700}.records-tab[aria-selected=true]{background:var(--card);box-shadow:0 1px 3px rgb(var(--shadow-rgb) / .15)}.records-panel{gap:12px;display:grid}.records-note{background:var(--card);color:var(--ink-soft);text-align:center;border-radius:12px;margin:0;padding:16px;font-size:14px}.records-summary{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;margin:0;display:grid}.records-summary div{border:1px solid var(--line);background:var(--card);text-align:center;border-radius:12px;padding:12px}.records-summary dt{color:var(--ink-soft);font-size:12px}.records-summary dd{margin:4px 0 0;font-size:20px;font-weight:700}.records-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.records-row{border:1px solid var(--line);background:var(--card);min-height:56px;color:var(--ink);border-radius:12px;align-items:center;gap:12px;padding:8px 12px;text-decoration:none;display:flex}a.records-row:hover{border-color:var(--line-hover)}.records-result{text-align:center;border-radius:8px;flex:none;min-width:4.6em;padding:4px 8px;font-size:13px;font-weight:700}.records-win{background:var(--good-bg);color:var(--good-fg)}.records-lose{background:var(--bad-bg);color:var(--bad-fg)}.records-draw{background:var(--sunken);color:var(--ink-soft)}.records-main{flex:1;gap:2px;min-width:0;display:grid}.records-opponent{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.records-meta{color:var(--ink-soft);font-size:12px}.records-open{color:var(--ink-soft)}.records-more{justify-self:center;min-width:12em}.records-empty{background:var(--card);text-align:center;border-radius:12px;gap:12px;padding:20px 16px;display:grid}.records-empty p{margin:0}.records-empty-links{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.records-empty-links .btn{align-items:center;text-decoration:none;display:inline-flex}.import-field{gap:6px;display:grid}.import-field textarea{border:1px solid var(--line-strong);resize:vertical;border-radius:8px;width:100%;padding:8px 10px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.import-file{align-items:center;margin-top:8px;display:inline-flex;position:relative;overflow:hidden}.import-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.import-ok{background:var(--good-bg);border-radius:8px;margin:10px 0 0;padding:8px 10px;font-size:13px}.site-header{justify-content:space-between;align-items:center;max-width:1280px;height:48px;margin:0 auto;padding:0 16px;display:flex}.site-logo{color:var(--ink);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.site-logo-text{letter-spacing:.01em;font-size:21px;font-weight:800}.site-logo-go{color:var(--shu)}.site-header-link{color:var(--ink-soft);padding:8px 4px;font-size:14px;text-decoration:none}.site-header-link:hover,.site-logo:hover .site-logo-text{text-decoration:underline}.site-footer{border-top:1px solid var(--line);max-width:1280px;color:var(--ink-soft);margin:48px auto 0;padding:24px 16px 32px;font-size:13px}.site-footer-nav{flex-wrap:wrap;gap:8px 18px;display:flex}.site-footer-nav a{color:inherit;text-decoration:none}.site-footer-nav a:hover{text-decoration:underline}.site-footer-copy{margin:16px 0 0}.site-page,.guide{max-width:768px;margin:0 auto;padding:16px 16px 0;font-size:15px;line-height:1.85}.site-page h1,.guide h1{margin:8px 0 16px;font-size:24px;line-height:1.4}.site-page h2,.guide h2{border-bottom:2px solid var(--line);margin:36px 0 10px;padding-bottom:6px;font-size:19px;line-height:1.45}.site-page h3,.guide h3{margin:24px 0 6px;font-size:16px}.site-page p,.guide p{margin:0 0 12px}.site-page ul,.site-page ol,.guide ul,.guide ol{margin:0 0 12px;padding-left:1.4em}.site-page ul,.guide ul{list-style:outside}.site-page ol,.guide ol{list-style:decimal}.site-page li,.guide li{margin:4px 0}.site-page a,.guide a{color:var(--focus);text-decoration:underline}.site-page table,.guide table{border-collapse:collapse;width:100%;margin:0 0 16px;font-size:14px}.site-page th,.site-page td,.guide th,.guide td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.site-page th,.guide th{background:var(--sunken);white-space:nowrap}.table-scroll{overflow-x:auto}.site-page .updated{color:var(--ink-soft);font-size:13px}.guide-lead{font-size:16px}.faq dt{margin-top:16px;font-weight:700}.faq dd{margin:4px 0 0}.site-header-nav{gap:14px;display:flex}textarea,select,input:not([type=checkbox]):not([type=radio]){background-color:var(--field);color:var(--ink)}.site-footer-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:16px;display:flex}.site-footer-bottom .site-footer-copy{margin:0}.theme-select{align-items:center;gap:8px;display:inline-flex}.theme-select select{border:1px solid var(--line-strong);border-radius:8px;min-height:36px;padding:0 8px;font-size:13px}.site-page h1,.site-page h2,.guide h2,.records-title,.lobby-card h2,.modal-title{font-family:var(--display-font);letter-spacing:.02em;text-wrap:balance;word-break:auto-phrase;font-weight:600}.site-page h1{font-size:26px}.site-page h2,.guide h2{background:linear-gradient(var(--shu), var(--shu)) left bottom / 28px 2px no-repeat, linear-gradient(var(--line), var(--line)) left bottom / 100% 1px no-repeat;border-bottom:0;padding-bottom:8px}.site-page h3,.guide h3{font-weight:600}.site-page p,.site-page li,.guide p,.guide li,.faq dd{text-wrap:pretty}.site-page a,.guide a{color:var(--shu-deep);text-underline-offset:3px;text-decoration-thickness:1px}.site-page a:hover,.guide a:hover{text-decoration-thickness:2px}.btn,.chip,.icon-button,.mode-tab,.level-button,.segment span,.site-header-link,.site-footer-nav a{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s}@media (hover:hover){.btn-primary:not(:disabled):hover{background:var(--shu-hover)}.btn-step:not(:disabled):hover{background:var(--btn-dark-hover)}.btn-quiet:not(:disabled):hover{background:var(--quiet-hover)}.btn-danger:not(:disabled):hover{background:#661d16}.chip:not(:disabled):hover,.level-button:hover{border-color:var(--line-hover);background:var(--field-hover)}.mode-tab:not([aria-current=page]):hover{background:var(--tab-hover)}}.btn:not(:disabled):active,.chip:not(:disabled):active,.icon-button:active,.mode-tab:active,.level-button:active{transform:translateY(1px)scale(.98)}.site-header-link[aria-current=page]{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--shu);-webkit-text-decoration-color:var(--shu);-webkit-text-decoration-color:var(--shu);text-decoration-color:var(--shu);text-underline-offset:6px;font-weight:600;text-decoration-thickness:2px}.skip-link{z-index:60;background:var(--inverse-bg);color:var(--inverse-fg);border-radius:10px;padding:10px 14px;font-size:14px;text-decoration:none;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}@media (prefers-reduced-motion:reduce){.btn,.chip,.icon-button,.mode-tab,.level-button,.segment span,.site-header-link,.site-footer-nav a{transition:none}.btn:active,.chip:active,.icon-button:active,.mode-tab:active,.level-button:active{transform:none}}#content:focus{outline:none}.icon{flex:none;display:block}.icon-button{justify-content:center;align-items:center;display:inline-flex}.kifu-caret{transition:transform .15s;display:inline-flex}.kifu-open .kifu-caret{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.kifu-caret{transition:none}}.diagram{text-align:center;margin:20px 0 24px}.diagram-board{max-width:100%;height:auto;margin:0 auto;display:block}.diagram-wood{fill:var(--wood-hi);stroke:var(--frame);stroke-width:2.5px}.diagram-grid{stroke:var(--grid-line);stroke-width:1px}.diagram-star{fill:var(--grid-line)}.diagram-coord{fill:var(--ink-soft);font-family:system-ui,-apple-system,Hiragino Sans,sans-serif;font-size:12px}.diagram-piece{fill:var(--piece-face);stroke:var(--piece-edge);stroke-width:1.2px;stroke-linejoin:round}.diagram-glyph{fill:var(--piece-ink);font-family:var(--piece-font);font-size:22px;font-weight:700}.diagram-glyph-promoted{fill:var(--piece-promoted)}.diagram-target{fill:#b3392d29;stroke:#b3392d8c;stroke-width:1.5px}.diagram-dot{fill:var(--board-mark);opacity:.8}.diagram-bad{stroke:var(--board-mark);stroke-width:3.5px;stroke-linecap:round;fill:none}.diagram-arrow{stroke:var(--board-mark);stroke-width:3px;stroke-linecap:round}.diagram-arrowhead{fill:var(--board-mark)}.diagram-hands{color:var(--ink-soft);flex-direction:column;gap:2px;margin:6px 0 0;font-size:13px;display:flex}.diagram figcaption{color:var(--ink-soft);text-wrap:pretty;margin-top:6px;font-size:13px;line-height:1.6}.diagram-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start;gap:0 12px;display:grid}.diagram-row .diagram{margin:12px 0}.guide-crumbs{color:var(--ink-soft);margin:4px 0 0;font-size:13px}.guide-crumbs a{color:inherit}.guide-toc{background:var(--toc-bg);border-radius:12px;margin:16px 0 8px;padding:12px 16px;font-size:14px}.guide-toc ol{margin:0;padding-left:1.4em;list-style:decimal}.guide-toc a{color:var(--ink);text-decoration:none}.guide-toc a:hover{text-decoration:underline}.site-page section[aria-labelledby] h2{scroll-margin-top:16px}.guide-note{border-left:3px solid var(--shu);background:var(--sunken);border-radius:0 10px 10px 0;margin:16px 0;padding:12px 16px}.guide-note strong{margin-bottom:4px;font-size:14px;display:block}.guide-note p{margin:0;font-size:14px}.site-page caption{caption-side:bottom;color:var(--ink-soft);text-align:left;padding-top:6px;font-size:13px}.guide-takeaway ul{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px 14px 2.2em}.site-page .guide-mistakes ul{border-left:3px solid var(--bad-fg);background:var(--bad-bg);border-radius:0 12px 12px 0;padding:4px 16px;list-style:none}.site-page .guide-mistakes li{margin:0;padding:10px 0 10px 1.5em;font-size:15px;position:relative}.site-page .guide-mistakes li+li{border-top:1px solid var(--line)}.guide-mistakes li:before{content:"×";color:var(--bad-fg);font-weight:700;position:absolute;left:0}.site-page .guide-quiz ol{gap:12px;padding:0;list-style:none;display:grid}.site-page .guide-quiz li{border:1px solid var(--line);background:var(--card);border-radius:12px;margin:0;padding:14px 16px}.guide-quiz-no{color:var(--shu-text);margin-right:.75em;font-weight:700}.guide-quiz .diagram{margin:12px 0}.site-page .guide-quiz .guide-quiz-answer{background:var(--sunken);border-radius:8px;margin:10px 0 0;padding:10px 12px}.guide-quiz-answer strong{color:var(--shu-text);margin-right:8px}.guide-pager{grid-template-columns:1fr 1fr;gap:10px;margin:28px 0 0;display:grid}.guide-pager a{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;font-weight:600;text-decoration:none;transition:border-color .15s;display:flex}.guide-pager a span{color:var(--ink-soft);font-size:12px;font-weight:400}.guide-pager-next{text-align:right}.guide-pager a:hover{border-color:var(--line-hover)}.guide-cta{background:var(--sunken);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:20px 0 0;padding:14px 16px;display:flex}.guide-cta p{margin:0}.guide-cta .btn{color:#fff;align-items:center;text-decoration:none;display:inline-flex}.guide-cards{gap:12px;margin:20px 0;padding:0;list-style:none;display:grid}.site-page .guide-cards{padding-left:0;list-style:none}.guide-card{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;grid-template-columns:112px 1fr;align-items:center;gap:14px;padding:12px;text-decoration:none;transition:border-color .15s,transform .1s;display:grid}.site-page a.guide-card{color:var(--ink);text-decoration:none}.guide-card:hover{border-color:var(--line-hover)}.guide-card:active{transform:translateY(1px)}.guide-card-figure .diagram{margin:0}.guide-card-figure figcaption{display:none}.guide-card-body{gap:2px;display:grid}.guide-card-no{color:var(--shu-deep);font-size:12px;font-weight:600}.guide-card-title{font-family:var(--display-font);font-size:18px;font-weight:600}.guide-card-summary{color:var(--ink-soft);font-size:13px;line-height:1.6}@media (prefers-reduced-motion:reduce){.guide-card,.guide-pager a{transition:none}}.site-page tbody th{white-space:normal;background:0 0;font-weight:600}.glossary-rows{flex-wrap:wrap;gap:6px;margin:16px 0 8px;display:flex}.site-page .glossary-rows a{border:1px solid var(--line);background:var(--card);width:40px;height:40px;color:var(--ink);font-family:var(--display-font);border-radius:8px;place-items:center;font-weight:600;text-decoration:none;display:inline-grid}.site-page .glossary-rows a:hover{border-color:var(--line-hover)}.glossary-list{margin:0}.glossary-list>div{border-bottom:1px solid var(--line);padding:12px 0;scroll-margin-top:16px}.glossary-list>div:target{background:var(--shu-tint)}.glossary-list dt{font-weight:700}.glossary-reading{color:var(--ink-soft);margin-left:4px;font-size:13px;font-weight:400}.glossary-list dd{margin:4px 0 0;font-size:15px;line-height:1.8}.guide-glossary-link{color:var(--ink-soft);margin-top:20px;font-size:14px}.site-page .glossary-see{margin-left:6px;font-size:14px;display:inline-block}.glossary-see:before{content:"→ "}.guide .piece-cards{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:12px;margin:12px 0 16px;padding:0;list-style:none;display:grid}.guide .piece-cards li{border:1px solid var(--line);background:var(--card);border-radius:10px;margin:0;padding:10px 10px 12px}.piece-cards .diagram{margin:0 0 8px}.piece-cards .diagram-board{width:100%;max-width:132px}.guide .piece-cards p{margin:0;font-size:13px;line-height:1.6}.guide .piece-cards .piece-card-name{font-family:var(--display-font);margin-bottom:2px;font-size:16px;font-weight:600}.guide .piece-cards .piece-card-promoted{border-top:1px dashed var(--line);color:var(--ink-soft);margin-top:6px;padding-top:6px}.guide .level-ladder{margin:12px 0 16px;padding:0;list-style:none}.guide .level-ladder li{border-bottom:1px solid var(--line);margin:0;padding:12px 0}.guide .level-ladder li:first-child{padding-top:4px}.level-meter{grid-template-columns:repeat(11,1fr);gap:3px;max-width:264px;margin-bottom:8px;display:grid}.level-meter span{background:var(--track);border-radius:2px;height:8px}.level-meter .is-below{background:var(--shu)}@supports (color:color-mix(in lab, red, red)){.level-meter .is-below{background:color-mix(in srgb, var(--shu) 35%, var(--track))}}.level-meter .is-on{background:var(--shu)}.guide .level-ladder h3{margin:0 0 2px;font-size:15px}.guide .level-ladder p{margin:0;font-size:14px}.guide .feature-cards{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:10px;margin:12px 0 16px;padding:0;list-style:none;display:grid}.guide .feature-cards li{border:1px solid var(--line);background:var(--card);border-radius:10px;grid-template-columns:36px 1fr;align-items:start;gap:10px;margin:0;padding:12px;display:grid}.feature-icon{box-sizing:content-box;background:var(--shu-tint);color:var(--shu-text);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;border-radius:8px;padding:6px}.guide .feature-cards h3{margin:2px 0 4px;font-size:15px}.guide .feature-cards p{margin:0;font-size:13px;line-height:1.65}.game-top,.game-main,.game-bottom{display:contents}@media (width>=1024px) and (height>=720px){body .game{--side-width:360px;--column-gap:32px;--cell:clamp(36px, min(calc((100vw - 64px - 18px - var(--side-width) - var(--column-gap)) / 9), calc((100vh - 190px) / 11)), 64px);width:min(100%, calc(var(--board-width) + 8px + var(--column-gap) + var(--side-width)));grid-template-columns:calc(var(--board-width) + 8px) var(--side-width);column-gap:var(--column-gap);grid-template-rows:auto 1fr;grid-template-areas:"main top""main bottom";align-items:start;row-gap:12px;display:grid}body .online-game{--cell:clamp(36px, min(calc((100vw - 64px - 18px - var(--side-width) - var(--column-gap)) / 9), calc((100vh - 290px) / 11)), 64px)}@supports (height:100dvh){body .game{--cell:clamp(36px, min(calc((100vw - 64px - 18px - var(--side-width) - var(--column-gap)) / 9), calc((100dvh - 190px) / 11)), 64px)}body .online-game{--cell:clamp(36px, min(calc((100vw - 64px - 18px - var(--side-width) - var(--column-gap)) / 9), calc((100dvh - 290px) / 11)), 64px)}}body .game-top,body .game-main,body .game-bottom{flex-direction:column;gap:10px;min-width:0;display:flex}body .game-top{grid-area:top}body .game-main{grid-area:main}body .game-bottom{grid-area:bottom}body .game-bottom .controls{justify-content:flex-start}body .game-top .bot-banner{width:100%;margin:0}body .play-screen{min-height:calc(100vh - 48px)}@supports (height:100dvh){body .play-screen{min-height:calc(100dvh - 48px)}}body .lobby{grid-template-columns:1fr 1fr;align-items:start;width:min(100%,980px)}body .lobby>.online-error{grid-column:1/-1}}@media (width>=1024px){body .records-title,body .records-lead,body .records{width:min(100%,760px)}}@font-face{font-family:Shippori Mincho B1;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/shippori-mincho-b1-700-pieces.woff2)format("woff2")}body{font-variant-numeric:tabular-nums;margin:0;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4efe4;--card:#fffdf8;--field:#fff;--field-hover:#fbf6ec;--sunken:#f3ecdf;--track:#e6dcc8;--progress-bg:#e2d6bf;--quiet:#e4dccb;--quiet-hover:#dcd2bf;--disabled-bg:#e6ddcc;--disabled-fg:#857a6c;--ink:#2a231c;--ink-soft:#6b6156;--line:#ddd0b6;--line-strong:#cfc3ab;--line-hover:#b8a988;--neutral-mark:#6b6156;--inverse-bg:#2a231c;--inverse-fg:#fff;--btn-dark:#4a4037;--btn-dark-hover:#3a3129;--shu:#b3392d;--shu-hover:#9f3127;--shu-deep:#8e2c22;--shu-tint:#fbe9e5;--shu-text:#b3392d;--gold:#e6b12f;--focus:var(--shu-deep);--notice-bg:#fff1d6;--good-bg:#e3f1e6;--good-fg:#2f6b42;--bad-bg:#fbe3df;--bad-fg:#7a241c;--shadow-rgb:60 36 10;--overlay-rgb:60 36 10;--tab-hover:#ffffff8c;--backdrop:#18120a80;--wood-hi:#ecca8e;--wood-lo:#d7a95f;--grid-line:#7a5a33;--frame:#5e4122;--tray:#d3b27a;--tray-edge:#9c7a45;--piece-face:#fbf1d6;--piece-face-lo:#f0dfb6;--piece-edge:#b99357;--piece-ink:#1b1b1b;--piece-promoted:#b3392d;--board-mark:#8e2c22;--tray-ink:#4a3a28;--sq-line:#7a5a33bf;--thumb-line:#7a5a3380;--kifu-current:#ffc82873;--toc-bg:#ffffff8c;--cell:clamp(30px, calc((100vw - 32px - 18px) / 9), 50px);--piece-font:"Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;--display-font:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#1b1713;--card:#262019;--field:#2e2720;--field-hover:#352d25;--sunken:#211c17;--track:#2e2720;--progress-bg:#3a3128;--quiet:#3a3128;--quiet-hover:#453a2f;--disabled-bg:#2c251e;--disabled-fg:#948878;--ink:#eee5d7;--ink-soft:#b3a794;--line:#3b3229;--line-strong:#4b4136;--line-hover:#6a5d4c;--neutral-mark:#6a5d4c;--inverse-bg:#3d3329;--inverse-fg:#f6efe3;--btn-dark:#564a3e;--btn-dark-hover:#62554a;--shu:#c0443a;--shu-hover:#a93a2f;--shu-deep:#f08a78;--shu-tint:#c0443a38;--notice-bg:#3a2f1c;--good-bg:#1f3326;--good-fg:#93d4a6;--bad-bg:#3d211d;--bad-fg:#f3a597;--shadow-rgb:0 0 0;--overlay-rgb:255 244 230;--tab-hover:#ffffff14;--backdrop:#0009;--wood-hi:#d2ae72;--wood-lo:#bc9352;--grid-line:#5c4326;--frame:#3e2b16;--tray:#a88a58;--tray-edge:#7a5d33;--piece-face:#ece0c4;--piece-face-lo:#dcca9f;--piece-edge:#a4834d;--piece-promoted:#9a2c22;--board-mark:#7a1f16;--tray-ink:#2a1e10;--sq-line:#463018d9;--thumb-line:#46301899;--kifu-current:#e6b12f26;--toc-bg:#211c17;--shu-text:#f08a78}body{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .32 0 0 0 0 .18 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"), var(--paper);color:var(--ink)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.game{--board-width:calc(var(--cell) * 9 + 18px);width:min(100%, var(--board-width) + 8px);-webkit-user-select:none;user-select:none;flex-direction:column;gap:8px;margin:0 auto;display:flex}.game-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.toolbar-actions{gap:4px;display:flex}.level-button{border:1px solid var(--line-strong);background:var(--card);min-height:44px;color:var(--ink);cursor:pointer;border-radius:999px;align-items:baseline;gap:8px;padding:6px 14px;display:inline-flex}.level-caption{color:var(--ink-soft);font-size:12px}.level-value{font-size:16px;font-weight:700}.icon-button{min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px}.icon-button:hover{background:rgb(var(--overlay-rgb) / .08)}.icon-button[aria-pressed=true]{background:rgb(var(--overlay-rgb) / .12)}.board-area{flex-direction:column;align-items:center;gap:4px;display:flex}.board-stage{position:relative}.hand{width:var(--board-width);min-height:calc(var(--cell) * .95);border:1px solid var(--tray-edge);background:var(--tray);box-sizing:border-box;border-radius:6px;align-items:center;gap:8px;padding:3px 8px;display:flex}.hand-label{background:rgb(var(--shadow-rgb) / .12);color:#3a2a14;text-align:center;opacity:.55;border-radius:4px;flex:none;min-width:3.2em;padding:2px 6px;font-size:12px;font-weight:700}.hand-active .hand-label{opacity:1;background:var(--frame);color:#fff4dc}.hand-pieces{scrollbar-width:none;flex-wrap:nowrap;gap:2px;display:flex;overflow-x:auto}.hand-empty{color:var(--tray-ink);font-size:12px}.hand-piece{width:calc(var(--cell) * .9);height:calc(var(--cell) * .9);cursor:pointer;touch-action:none;background:0 0;border:0;border-radius:6px;place-items:center;min-width:44px;min-height:44px;padding:0;display:grid;position:relative}.hand-piece:disabled{cursor:default;touch-action:auto}.hand-selected{background:#ffd04099}.hand-count{background:var(--inverse-bg);color:#fff;border-radius:8px;min-width:16px;padding:0 3px;font-size:11px;font-weight:700;line-height:16px;position:absolute;bottom:0;right:0}.board-frame{flex-direction:column;display:inline-flex}.board-files,.board-ranks{color:var(--ink-soft);font-size:11px}.board-files{grid-template-columns:repeat(9, var(--cell));text-align:center;margin-left:3px;line-height:16px;display:grid}.board-body{display:flex}.board-ranks{grid-template-rows:repeat(9, var(--cell));place-items:center;width:15px;padding-top:3px;display:grid}.board-grid{grid-template-columns:repeat(9, var(--cell));grid-template-rows:repeat(9, var(--cell));border:3px solid var(--frame);background:radial-gradient(circle at 35% 30%, var(--wood-hi), var(--wood-lo));border-radius:3px;display:grid;position:relative;box-shadow:0 6px 18px #3c240a40}.board-row{display:contents}.sq{width:var(--cell);height:var(--cell);border:0;border-right:1px solid var(--sq-line);border-bottom:1px solid var(--sq-line);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;place-items:center;padding:0;display:grid;position:relative}.board-row:last-child .sq{border-bottom:0}.sq:last-child{border-right:0}.board-waiting .sq{cursor:default}.sq:focus-visible{outline-offset:-3px;z-index:3}.sq-movable{touch-action:none;background:#fff0b9bf}.sq-selected{touch-action:none;background:#ffc82899}.sq-target:after{content:"";z-index:2;background:#22262e52;border-radius:50%;width:28%;height:28%}.sq-capture:after{content:"";z-index:2;border:3px solid #22262e52;border-radius:50%;position:absolute;inset:3px}.sq-check{box-shadow:inset 0 0 0 2px var(--shu)}.sq-hint{background:#b3392d29;box-shadow:inset 0 0 0 2px #b3392db3}.last-move{pointer-events:none;background:#b3392d42;position:absolute;inset:0;box-shadow:inset 0 -3px #b3392dbf}.check-line{pointer-events:none;z-index:2;width:100%;height:100%;animation:2.4s ease-in forwards fade-out;position:absolute;inset:0}.check-line line{stroke:var(--shu);stroke-width:.07px;stroke-linecap:round;stroke-dasharray:.2 .12}.piece{clip-path:polygon(50% 0,86% 16%,96% 100%,4% 100%,14% 16%);background:linear-gradient(180deg, var(--piece-face), var(--piece-face-lo));width:86%;height:92%;box-shadow:inset 0 -2px 0 var(--piece-edge);color:var(--piece-ink);pointer-events:none;z-index:1;place-items:center;display:grid;position:relative}.piece-away{transform:rotate(180deg)}.piece-glyph{font-family:var(--piece-font);font-weight:700;font-size:calc(var(--cell) * .55);padding-top:8%;line-height:1}.piece-promoted .piece-glyph{color:var(--piece-promoted)}.piece-guide{pointer-events:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:4% 10% 6%}.guide-dot{aspect-ratio:1;background:#d9822b;border-radius:50%;place-self:center;width:30%}.guide-far{aspect-ratio:auto;background:#b33a2e;border-radius:3px;width:42%;height:42%}:is(.piece-guide~.piece-glyph,.piece:has(.piece-guide) .piece-glyph){font-size:calc(var(--cell) * .42)}.drag-ghost{z-index:50;width:var(--cell);height:var(--cell);pointer-events:none;filter:drop-shadow(0 6px 8px rgb(var(--shadow-rgb) / .3));place-items:center;display:grid;position:fixed;translate:-50% -60%}.promote-layer{z-index:10;background:#14100a59;position:absolute;inset:0}.promote-sheet{width:calc(var(--cell) * 2.6);box-sizing:border-box;background:var(--card);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / .35);border-radius:10px;gap:4px;padding:4px;display:flex;position:absolute}.promote-choice{border:1px solid var(--line-strong);background:var(--field);cursor:pointer;border-radius:8px;flex:1;justify-items:center;gap:2px;padding:4px 0;display:grid}.promote-choice .piece{width:calc(var(--cell) * .8);height:calc(var(--cell) * .86)}.promote-caption{white-space:nowrap;font-size:11px;font-weight:700}.thinking{z-index:5;color:#fff;pointer-events:none;background:#2a231cd6;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;display:flex;position:absolute;top:22px;left:50%;translate:-50%}.thinking-bottom{top:auto;bottom:8px}.thinking-dots{gap:3px;display:flex}.thinking-dots i{background:#fff;border-radius:50%;width:5px;height:5px;animation:1s infinite bounce}.thinking-dots i:nth-child(2){animation-delay:.15s}.thinking-dots i:nth-child(3){animation-delay:.3s}.move-hint{z-index:6;color:#fff3e6;width:max-content;max-width:90%;box-shadow:0 6px 16px rgb(var(--shadow-rgb) / .25);background:#7a241c;border-radius:10px;padding:8px 12px;font-size:13px;line-height:1.5;animation:.18s ease-out pop-in;position:absolute;left:50%;translate:-50% -50%}.review-banner{background:var(--inverse-bg);color:#ffe7a8;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.review-banner div{gap:2px;display:grid}.review-banner span{color:#e8e1d3;font-size:12px}.kifu{border:1px solid var(--line);background:var(--card);border-radius:10px}.kifu-summary{width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:flex}.kifu-title{font-weight:700}.kifu-current{font-family:var(--piece-font);flex:1;font-weight:700}.kifu-turn{color:var(--ink-soft);font-size:12px}.kifu-panel{padding:0 12px 12px}.kifu-list{grid-template-columns:repeat(auto-fill,minmax(7.5em,1fr));gap:2px 8px;max-height:180px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.kifu-list button{width:100%;min-height:32px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 6px;font-size:14px}.kifu-entry{padding:6px;font-size:14px;display:block}.kifu-list button[aria-current=true],.kifu-entry[aria-current=true]{background:var(--kifu-current);font-weight:700}.kifu-ply{min-width:2em;color:var(--ink-soft);font-size:11px;display:inline-block}.kifu-empty,.kifu-error{color:var(--ink-soft);margin:4px 0;font-size:13px}.kifu-actions,.result-share{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--field);min-height:36px;color:var(--ink);cursor:pointer;border-radius:999px;padding:0 12px;font-size:13px}.chip:disabled{opacity:.45;cursor:default}.controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.btn{cursor:pointer;border:0;border-radius:12px;min-height:46px;padding:0 18px;font-size:15px;font-weight:700}.btn:disabled{background:var(--disabled-bg);color:var(--disabled-fg);cursor:not-allowed}.btn-step{background:var(--btn-dark);color:#fff;justify-content:center;align-items:center;min-width:56px;display:inline-flex}.btn-primary{background:var(--shu);color:#fff}.btn-quiet{background:var(--quiet);color:var(--ink)}.btn-danger{color:#fff;background:#7a241c}.notice{left:50%;top:max(12px, env(safe-area-inset-top));z-index:40;box-shadow:0 8px 20px rgb(var(--shadow-rgb) / .2);pointer-events:none;border-radius:999px;padding:10px 18px;font-weight:700;animation:.2s ease-out drop-in;position:fixed;translate:-50%}.notice-attack{background:var(--inverse-bg);color:#ffd76a}.notice-warn{background:var(--shu);color:#fff}.notice-info{background:var(--card);color:var(--ink);font-weight:500}.undo-toast{left:50%;bottom:max(16px, env(safe-area-inset-bottom));z-index:40;background:var(--inverse-bg);color:#fff;box-shadow:0 8px 20px rgb(var(--shadow-rgb) / .25);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:4px 4px 4px 16px;font-size:14px;display:flex;position:fixed;translate:-50%}.undo-action{min-height:40px;color:var(--piece-ink);cursor:pointer;background:#ffd76a;border:0;border-radius:999px;padding:0 12px;font-weight:700}.undo-toast .icon-button{color:#fff}.modal{background:var(--card);width:min(440px,100vw - 24px);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:0 24px 60px rgb(var(--shadow-rgb) / .35);border:0;border-radius:18px;margin:auto;padding:0}.modal::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[open]{animation:.2s ease-out pop-in}.modal-body{padding:8px 18px 18px}.modal-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.modal-title{margin:0;font-size:18px}.modal-foot{color:var(--ink-soft);margin:12px 0 0;font-size:12px}.level-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.level-option{border:1px solid var(--line);background:var(--field);width:100%;min-height:46px;color:var(--ink);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.level-option[aria-pressed=true]{border-color:var(--shu);box-shadow:inset 0 0 0 1px var(--shu)}.level-option:disabled{background:var(--sunken);color:var(--ink-soft);cursor:default}.level-name{font-weight:700}.level-note{color:var(--ink-soft);font-size:12px}.setting-group{border:0;margin:12px 0 0;padding:0}.setting-group legend{margin-bottom:6px;font-size:14px;font-weight:700}.segmented{flex-wrap:wrap;gap:6px;display:flex}.segment{position:relative}.segment input{opacity:0;position:absolute}.segment span{border:1px solid var(--line-strong);cursor:pointer;border-radius:10px;align-items:center;min-height:40px;padding:0 12px;font-size:13px;display:inline-flex}.segment input:checked+span{border-color:var(--shu);background:var(--shu-tint);font-weight:700}.segment input:focus-visible+span{outline:3px solid var(--focus)}.setting-toggle{align-items:center;gap:10px;min-height:40px;font-size:14px;display:flex}.setting-toggle input{width:20px;height:20px;accent-color:var(--shu);flex-shrink:0}.setting-warn{background:var(--notice-bg);border-radius:8px;margin:8px 0 0;padding:8px 10px;font-size:13px}.setting-note{color:var(--ink-soft);margin:0 0 8px;font-size:12px}.modal-result{border-top:8px solid var(--neutral-mark)}.result-win{border-top-color:#3e7a52}.result-lose{border-top-color:var(--shu)}.result-sub{color:var(--ink-soft);margin:0}.result-stats{gap:16px;margin:12px 0 0;display:flex}.result-stats div{align-items:baseline;gap:6px;display:flex}.result-stats dt{color:var(--ink-soft);font-size:12px}.result-stats dd{margin:0;font-weight:700}.result-unlock{background:var(--notice-bg);border-radius:10px;margin:10px 0 0;padding:8px 12px;font-weight:700}.result-board{--cell:22px;grid-template-columns:repeat(9, var(--cell));grid-template-rows:repeat(9, var(--cell));border:2px solid var(--frame);background:radial-gradient(circle at 35% 30%, var(--wood-hi), var(--wood-lo));cursor:zoom-out;margin:14px auto 0;padding:0;display:grid}.result-cell{border-right:1px solid var(--thumb-line);border-bottom:1px solid var(--thumb-line);place-items:center;display:grid}.result-next{width:100%;margin-top:14px}@keyframes fade-out{0%,70%{opacity:1}to{opacity:0}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes pop-in{0%{opacity:0;scale:.96}}@keyframes drop-in{0%{opacity:0;translate:-50% -8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.demo-layer{z-index:8;pointer-events:none;position:absolute;inset:0}.demo-finger{width:10%;height:10%;animation:3.2s ease-in-out 2 both demo-finger;position:absolute;translate:-25% -10%}.demo-ring{opacity:0;border:3px solid #ffd640f2;border-radius:50%;width:11.1111%;height:11.1111%;position:absolute;translate:-50% -50%}.demo-ring-from{animation:3.2s ease-out 2 both demo-ring;top:72.2222%;left:27.7778%}.demo-ring-to{animation:3.2s ease-out .9s 2 both demo-ring;top:61.1111%;left:27.7778%}.demo-caption{color:#fff;white-space:nowrap;background:#22262ee0;border-radius:999px;padding:8px 14px;font-size:14px;animation:.3s ease-out pop-in;position:absolute;top:38%;left:50%;translate:-50% -50%}@keyframes demo-finger{0%{opacity:0;top:100%;left:70%;scale:1}18%{opacity:1;top:72.2222%;left:27.7778%;scale:1}24%{scale:.82}30%{top:72.2222%;left:27.7778%;scale:1}46%{top:61.1111%;left:27.7778%;scale:1}52%{scale:.82}58%{opacity:1;top:61.1111%;left:27.7778%;scale:1}80%,to{opacity:0;top:61.1111%;left:27.7778%}}@keyframes demo-ring{0%,18%{opacity:0;scale:.6}26%{opacity:1;scale:1}45%,to{opacity:0;scale:1.3}}.mode-tabs{background:var(--track);border-radius:999px;justify-content:center;gap:4px;width:fit-content;margin:0 auto 10px;padding:4px;display:flex}.mode-tab{min-height:40px;color:var(--ink);border-radius:999px;align-items:center;padding:0 16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.mode-tab[aria-current=page]{background:var(--card);box-shadow:0 1px 3px rgb(var(--shadow-rgb) / .15)}.lobby{gap:12px;width:min(100%,480px);margin:0 auto;display:grid}.lobby-card{border:1px solid var(--line);background:var(--card);border-radius:14px;gap:10px;padding:16px;display:grid}.lobby-card h2{margin:0;font-size:17px}.lobby-cta{width:100%;min-height:52px;font-size:17px}.lobby-meta{color:var(--ink-soft);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.live-dot{background:#3e9a57;border-radius:50%;width:8px;height:8px;animation:1.6s ease-in-out infinite pulse}.lobby-me{justify-content:space-between;align-items:center;gap:8px;display:flex}.rank-card{background:var(--sunken);border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;padding:10px 12px;display:grid}.rank-progress{background:var(--progress-bg);border-radius:3px;grid-column:1/-1;height:6px;overflow:hidden}.rank-progress i{background:var(--shu);height:100%;display:block}.rank-card .setting-note{grid-column:1/-1;margin:0}.rank-badge{vertical-align:middle;border-radius:999px;align-items:center;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-flex}.rank-tier-0{color:#6a5332;background:#efe5d2}.rank-tier-1{color:#6b3f15;background:#e7c9a4}.rank-tier-2{color:#3c4652;background:#dfe3e8}.rank-tier-3{color:#6b4a00;background:#f5dc8a}.rank-tier-4{color:#f7e1c4;background:#5a2e2a}.setting-select{justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.setting-select select{border:1px solid var(--line-strong);background:var(--field);border-radius:8px;min-height:40px;padding:0 8px;font-size:14px}.seek-card{background:var(--sunken);text-align:center;border-radius:12px;justify-items:center;gap:8px;padding:16px;display:grid}.seek-card strong{align-items:center;gap:8px;display:inline-flex}.seek-card .thinking-dots i{background:var(--ink)}.seek-found{background:var(--good-bg)}.invite-url{border:1px solid var(--line-strong);background:var(--field);border-radius:8px;width:100%;min-height:44px;padding:0 10px;font-size:13px}.invite-qr{background:#fff;border-radius:8px;justify-self:center}.name-generated{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.name-preview{font-size:20px;font-weight:700}.name-custom{gap:6px;margin-top:12px;display:grid}.name-custom input{border:1px solid var(--line-strong);border-radius:8px;min-height:44px;padding:0 10px;font-size:16px}.online-error{background:var(--bad-bg);color:var(--bad-fg);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.online-connection,.result-note{color:var(--ink-soft);text-align:center;margin:0;font-size:13px}.bot-banner{background:var(--inverse-bg);color:#ffe7a8;text-align:center;border-radius:10px;width:min(100%,480px);margin:0 auto 8px;padding:8px 12px;font-size:13px}.player-row{background:var(--card);border:1px solid var(--line);border-radius:10px;align-items:center;gap:8px;min-height:40px;padding:0 10px;display:flex}.player-turn{border-color:var(--shu);box-shadow:inset 3px 0 0 var(--shu)}.player-row .player-name{flex:1;font-size:14px;font-weight:700}.player-warn{color:var(--shu-text);font-size:12px;font-weight:700}.player-note{color:var(--ink-soft);font-size:12px}.clock{background:var(--sunken);font-variant-numeric:tabular-nums;text-align:center;border-radius:8px;min-width:4.2em;padding:4px 8px;font-weight:700}.clock-running{background:var(--inverse-bg);color:#fff}.clock-warn.clock-running{background:#8f5e0b}.clock-danger.clock-running{background:var(--shu);animation:.6s ease-in-out infinite pulse}.start-overlay{z-index:9;color:#fff;text-align:center;pointer-events:none;background:#14100a8c;place-content:center;gap:6px;animation:.2s ease-out pop-in;display:grid;position:absolute;inset:0}.start-overlay strong{font-size:28px}.rating-change{align-items:baseline;gap:10px;margin-top:12px;display:flex}.rating-change strong{font-size:24px}.delta-up{color:var(--good-fg);font-weight:700}.delta-down{color:var(--shu-text);font-weight:700}.result-next+.result-next{margin-top:8px}@keyframes pulse{50%{opacity:.5}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
