@font-face{font-family:Trirong;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/trirong-thai-500-normal-B7KV6Llk.woff2)format("woff2"),url(/assets/trirong-thai-500-normal-Bhg47ycQ.woff)format("woff")}@font-face{font-family:Trirong;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/trirong-latin-500-normal-DCKQ2SJp.woff2)format("woff2"),url(/assets/trirong-latin-500-normal-CwPzWpjQ.woff)format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-400-normal-DKc8V4lk.woff)format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-400-normal-CwmoKdEh.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-400-normal-YXrLwNa7.woff)format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-thai-500-normal-BrMc1XKn.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-500-normal-BoHUoq0p.woff)format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-latin-500-normal-DQcnnbdd.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-500-normal-h5t7erDE.woff)format("woff")}:root{--cloth:#11203f;--panel:#1a2c52;--panel-raised:#243a68;--line:#3a4f7e;--cotton:#f3eddf;--cotton-dim:#b4bfd6;--kaya:#e6c07f;--kaya-deep:#c99a52;--kaya-ink:#2c1d08;--lac:#e0485c;--sky:#8ab8f5;--sky-ink:#0c1f3d;--font-display:"Trirong", "IBM Plex Sans Thai", serif;--font-body:"IBM Plex Sans Thai", system-ui, sans-serif;--tap:44px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;color:var(--cotton);font-family:var(--font-body);background:var(--cloth) url(/img/indigo.webp) 0 0 / 420px;overflow-wrap:anywhere;-webkit-tap-highlight-color:transparent;margin:0;font-size:15px;line-height:1.6}h1,h2,p,ol,ul{margin:0;padding:0}ol,ul{list-style:none}a{color:inherit}button,input{font:inherit;color:inherit}input,select,textarea{font-size:16px}:focus-visible{outline:3px solid var(--kaya);outline-offset:2px}.btn{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--cotton);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:6px 16px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--panel-raised)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{border-color:var(--kaya-deep);background:var(--kaya);color:var(--kaya-ink)}.btn-primary:hover:not(:disabled){background:#f0cf95}.btn-danger{border-color:var(--lac);background:var(--lac);color:#fff}.btn-danger:hover:not(:disabled){background:#c93a4e}.btn-quiet{color:var(--cotton-dim);background:0 0;border-color:#0000}.btn-grow{flex:1}.btn-large{min-height:46px;padding:8px 22px;font-size:16px}.btn-small{min-height:36px;padding:4px 12px;font-size:14px}.tab{min-width:0;min-height:42px;color:var(--cotton-dim);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.tab svg{flex:none;width:16px;height:16px}.tab:hover{color:var(--cotton)}.tab-on,.tab[aria-current=page]{border-bottom-color:var(--kaya);color:var(--cotton)}.tab-on svg,.tab[aria-current=page] svg{color:var(--kaya)}.tab-row{border-bottom:1px solid var(--line);gap:12px;display:flex}.tab-row .tab{margin-bottom:-1px}.tab-row-scroll{box-shadow:inset 0 -1px 0 var(--line);scrollbar-width:none;border-bottom:0;overflow-x:auto}.tab-row-scroll .tab{flex:none;margin-bottom:0}.tab-row-scroll .tab:focus-visible{outline-offset:-3px}.action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.section-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.4}.empty-page{flex-direction:column;align-items:flex-start;gap:16px;max-width:480px;padding:72px 20px;font-size:17px;display:flex}.sheet{border:1px solid var(--line);background:var(--panel);width:min(460px,100vw - 32px);color:var(--cotton);border-radius:12px;padding:24px}.sheet::backdrop{background:#060c1cb8}.sheet-title{font-family:var(--font-display);margin-bottom:18px;font-size:22px;font-weight:500;line-height:1.4}.sheet-warning{color:#ffb4bd;margin-bottom:14px;font-size:15px}.choice{border:0;margin:0 0 18px;padding:0}.choice legend{color:var(--cotton-dim);margin-bottom:8px;padding:0;font-size:15px}.choice-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.choice-item{border:1px solid var(--line);text-align:center;cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:62px;padding:6px;line-height:1.35;display:flex;position:relative}.choice-item:hover{background:var(--panel-raised)}.choice-item input{opacity:0;cursor:pointer;position:absolute;inset:0}.choice-item:has(input:focus-visible){outline:3px solid var(--kaya);outline-offset:2px}.choice-on,.choice-on:hover{border-color:var(--kaya);background:var(--kaya);color:var(--kaya-ink)}.choice-label{font-weight:500}.choice-note{opacity:.8;font-size:13px}@media (width<=560px){.sheet{width:100vw;max-width:100vw;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:14px 14px 0 0;margin:auto 0 0}.sheet-footer{bottom:calc(-24px - env(safe-area-inset-bottom));margin:0 -24px calc(-24px - env(safe-area-inset-bottom));padding:12px 24px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel);position:sticky}}.choice-row-two{grid-template-columns:repeat(2,1fr)}.choice-row-many{grid-template-columns:repeat(auto-fill,minmax(min(8.5em,40%),1fr))}.choice-off{opacity:.5}.choice-off input{cursor:not-allowed}.board{background:var(--kaya);border-radius:3px;width:100%;box-shadow:0 3px #a87c3c,0 6px #6d4c20,0 22px 40px #03081699}.board svg{-webkit-user-select:none;user-select:none;border-radius:3px;width:100%;height:auto;display:block}.board-live svg{cursor:pointer;touch-action:none}.board-mini{box-shadow:0 2px #a87c3c,0 4px #6d4c20,0 12px 22px #0308168c}.grid line,.grid rect{fill:none;stroke:#3b2a12;stroke-opacity:.82;stroke-width:1px;vector-effect:non-scaling-stroke}.grid .grid-edge{stroke-width:1.6px}.board-mini .grid line,.board-mini .grid rect{stroke-width:.7px;stroke-opacity:.7}.star{fill:#3b2a12}.coord text{fill:#4a3517;font-family:var(--font-body);text-anchor:middle;dominant-baseline:central;font-size:30px;font-weight:500}.last-move{fill:none;stroke:var(--lac)}.crosshair line{stroke:var(--lac);stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-opacity:.8}.ghost{opacity:.55;pointer-events:none}.ghost-firm{opacity:.88}.stone-new{transform-box:fill-box;transform-origin:50%;animation:.17s cubic-bezier(.2,.7,.3,1) stone-land}@keyframes stone-land{0%{opacity:.6;transform:scale(1.16)}}.stone-gone{pointer-events:none;animation:.42s ease-in forwards stone-leave}@keyframes stone-leave{to{opacity:0}}.stone-dead image{opacity:.5}.stone-dead-mark{stroke-width:7px;stroke-linecap:round;fill:none}.highlight{fill:#e0485c2e;stroke:var(--lac);stroke-width:7px;pointer-events:none;animation:1.1s ease-in-out infinite alternate point-pulse}@keyframes point-pulse{to{stroke-opacity:.45}}@media (prefers-reduced-motion:reduce){.stone-new,.highlight{animation:none}.stone-gone{animation-duration:1ms}}.lobby{width:100%;margin:0 auto}.lobby-bar{justify-content:space-between;align-items:center;padding:16px 0 8px;display:flex}.brand{font-family:var(--font-display);font-size:30px;font-weight:500;line-height:1.4;text-decoration:none}.lobby-guest{color:var(--cotton-dim);font-size:15px}.hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.hero-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.4}.hero-actions{flex-wrap:wrap;gap:8px;display:flex}.list-tabs{gap:8px}@media (width<=400px){.list-tabs .tab svg{display:none}}.list-filters{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:10px;display:flex}.filter-kind{align-items:center;gap:5px;display:inline-flex}.filter-kind svg{flex:none;width:15px;height:15px}.segmented{border:1px solid var(--line);border-radius:10px;gap:2px;padding:2px;display:inline-flex}.segmented .filter{border:0;border-radius:7px;min-height:30px}.segmented .filter-on,.segmented .filter-on:hover{background:var(--panel-raised);color:var(--cotton)}.filter-icons{align-items:center;gap:1px;display:inline-flex}.filter-count{color:var(--cotton-dim);font-size:12px}.filter-rank{color:var(--cotton-dim);align-items:center;gap:8px;font-size:14px;display:inline-flex}.filter-rank select{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--cotton);border-radius:8px;padding:2px 8px}.tile-mine-mark{color:var(--kaya);margin-right:6px;font-weight:600}.list-panel .hall-grid{margin-top:14px}.empty-stones{flex:none;display:inline-flex}.empty-stones img{width:22px;height:22px;display:block}.empty-stones img+img{margin-left:-5px}.seats{margin-top:0}.seat{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:10px 0;display:grid}.seat-name{font-weight:500}.seat-terms{color:var(--cotton-dim);font-size:14px}.tile{border-radius:4px;min-width:0;text-decoration:none;display:block}.tile:hover .tile-name{text-underline-offset:3px;text-decoration:underline}.tile-players{grid-template-columns:minmax(0,1fr);gap:2px;margin-top:10px;font-size:15px;display:grid}.tile-player{min-width:0;color:var(--cotton-dim);align-items:center;gap:6px;line-height:1.4;display:flex}.tile-player img{flex:none;width:16px;height:16px}.tile-to-move{color:var(--cotton);font-weight:500}.tile-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tile-rank{color:var(--cotton-dim);flex:none;font-size:13px;font-weight:400}.tile-meta{color:var(--cotton-dim);margin-top:2px;font-size:13px;display:block}.filters{flex-wrap:wrap;gap:4px;display:flex}.filter{min-height:34px;color:var(--cotton-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:2px 12px;font-size:14px}.filter:hover{color:var(--cotton)}.filter-on,.filter-on:hover{border-color:var(--line);background:var(--panel);color:var(--cotton)}.hall-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:24px 20px;display:grid}.boards-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-top:20px}.boards-empty{border-top:1px solid var(--line);color:var(--cotton-dim);justify-items:start;gap:12px;margin-top:16px;padding-top:14px;display:grid}.boards-panel>.boards-empty:first-child{border-top:0;padding-top:0}.boards-empty-actions{flex-wrap:wrap;gap:8px;display:flex}.prototype-note{border-top:1px solid var(--line);max-width:60em;color:var(--cotton-dim);margin-top:56px;padding-top:16px;font-size:14px}@media (width<=480px){.hall-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}}@media (width<=860px){.seat{grid-template-columns:minmax(0,1fr) auto;gap:2px 12px}.seat-who{grid-column:1}.seat-terms{grid-area:2/1}.seat .btn{grid-area:1/2/span 2}}.name-field{color:var(--cotton-dim);align-items:center;gap:8px;font-size:15px;display:flex}.name-field input{border:1px solid var(--line);background:var(--panel);width:9.5em;min-height:38px;color:var(--cotton);border-radius:8px;padding:4px 10px;font-size:16px}.offline-bar{color:#ffdfe3;background:#5b2130;border-radius:8px;margin:4px 0 8px;padding:8px 12px;font-size:15px}.seats-spaced{margin-bottom:28px}.seats-empty{color:var(--cotton-dim);align-items:center;gap:12px;padding:14px 0;display:flex}.room-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:10px 0 8px;display:flex}.room-head .room-title{flex-wrap:wrap;flex:1;align-items:center;gap:2px 14px;min-width:0;display:flex}.room-head .room-name{flex:0 auto;min-width:0}.room-head-tagline{min-width:0;color:var(--cotton-dim);overflow-wrap:anywhere;flex:14em;font-size:15px;line-height:1.4}.room-head .room-picture{border-radius:8px;width:28px;height:28px}.room-head .room-picture-none svg{width:16px;height:16px}.room-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-head .room-head-actions{flex-wrap:nowrap;flex:none;gap:2px}.room-name{font-family:var(--font-display);overflow-wrap:anywhere;align-items:center;gap:10px;font-size:18px;font-weight:500;line-height:1.35;display:flex}.room-name svg{width:20px;height:20px;color:var(--kaya);flex:none}.room-tagline{overflow-wrap:anywhere;margin-top:2px;font-size:15px}.room-picture{border:1px solid var(--line);object-fit:cover;background:var(--panel);border-radius:12px;flex:none;display:block}.room-picture-none{color:var(--kaya);background:#e6c07f1f;border:1px solid #e6c07f59;place-items:center;display:inline-grid}.room-picture-none svg{width:50%;height:50%}.rooms-row .room-picture{border-radius:10px;width:40px;height:40px}.room-name .room-lock-mark,.rooms-name .room-lock-mark{width:16px;height:16px;color:var(--kaya);flex:none}.room-name .room-lock-mark{width:18px;height:18px}.rooms-tagline{color:var(--cotton-dim);overflow-wrap:anywhere;grid-area:tagline;font-size:15px}.room-lock{gap:4px;margin-top:8px;display:grid}.room-gate{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:16px;justify-items:center;gap:8px;max-width:440px;margin:40px auto;padding:28px 22px;display:grid}.room-gate .room-name{justify-content:center}.room-gate .room-name svg{color:var(--kaya)}.room-gate-form{text-align:left;gap:12px;width:100%;margin-top:8px;display:grid}.room-gate-note{margin-top:8px}.room-gate-links{justify-content:center;margin-top:12px}.room-settings-form{gap:12px;display:grid}.room-picture-editor{align-items:center;gap:16px;margin-bottom:16px;display:flex}.room-settings-form .room-picture-editor{margin-bottom:0}.room-owner{color:var(--cotton-dim);margin-top:2px;font-size:15px}.room-owner a{color:var(--cotton)}.room-head-actions{flex-wrap:wrap;gap:8px;display:flex}.room-loading{color:var(--cotton-dim);padding:48px 0}.rooms-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.rooms-list{border-top:1px solid var(--line);margin-top:24px}.rooms-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:6px 0;display:flex}.rooms-text{flex:1;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name meta""tagline tagline";align-items:baseline;gap:2px 16px;min-width:0;padding:6px 0;display:grid}.rooms-pin,.rooms-pin-space{flex:none;width:40px;height:40px}.rooms-pin{color:var(--cotton-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;display:inline-grid}@media (hover:hover){.rooms-pin:hover{border-color:var(--line);background:var(--panel);color:var(--cotton)}}.rooms-pin svg{width:18px;height:18px}.rooms-pin.pin-on,.room-pin.pin-on{color:var(--kaya)}.room-pin.pin-on{border-color:#e6c07f73}.pin-on svg{fill:currentColor}@media (width<=600px){.rooms-text{grid-template-columns:minmax(0,1fr);grid-template-areas:"name""tagline""meta"}}.rooms-name{overflow-wrap:anywhere;grid-area:name;align-items:center;gap:8px;min-width:0;font-size:16px;font-weight:500;text-decoration:none;display:flex}.rooms-name:hover{text-underline-offset:3px;text-decoration:underline}.rooms-name svg{width:20px;height:20px;color:var(--kaya);flex:none}.rooms-meta{color:var(--cotton-dim);grid-area:meta;font-size:15px}.rooms-empty{color:var(--cotton-dim);padding:14px 0}.table{grid-template:"bar""top""board""bottom""actions""chat"minmax(240px,1fr)/minmax(0,1fr);min-height:100dvh;display:grid}.table-bar{grid-area:bar;align-items:center;gap:12px;min-height:44px;padding:0 12px;display:flex}.table-title{min-width:0;color:var(--cotton);text-align:center;flex:1;font-size:15px;font-weight:500}.sound-toggle{min-height:44px;color:var(--cotton-dim);cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:15px}.table-board{grid-area:board;min-width:0;position:relative}.table-top{grid-area:top}.table-bottom{grid-area:bottom;padding-top:6px}.table-actions{grid-area:actions;padding:4px 12px 8px}.table-chat{min-height:0;padding:0 12px calc(10px + env(safe-area-inset-bottom));grid-area:chat;display:flex}.strip{align-items:center;gap:10px;min-height:54px;padding:6px 12px;display:flex}.strip-stone{flex:none;width:28px;height:28px}.strip-who{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.strip-name{font-family:var(--font-display);white-space:nowrap;align-items:baseline;gap:6px;font-size:18px;font-weight:500;display:flex}.strip-rank{color:var(--cotton-dim);font-family:var(--font-body);font-size:13px;font-weight:400}.strip-tag{border:1px solid var(--line);color:var(--cotton-dim);font-family:var(--font-body);border-radius:4px;padding:0 6px;font-size:12px;font-weight:400}.strip-note{color:var(--cotton-dim);font-size:13px}.clock{min-width:76px;color:var(--cotton-dim);font-variant-numeric:tabular-nums;text-align:center;border-radius:6px;flex:none;padding:2px 10px;font-size:22px;font-weight:500;line-height:1.5}.clock-on{background:var(--cotton);color:#14203c}.clock-low.clock-on{background:var(--lac);color:#fff}.turn-note{flex:1;min-width:80px;font-weight:500}.action-question{flex:1;min-width:100px}.notice{color:#ffb4bd;margin-bottom:6px;font-size:15px}.scoring-count{font-weight:500}.scoring-hint{color:var(--cotton-dim);margin-bottom:8px;font-size:14px}.result{flex-wrap:wrap;align-items:center;gap:2px 16px;display:flex}.result-title{font-family:var(--font-display);font-size:26px;font-weight:500;line-height:1.4}.result-note{color:var(--cotton-dim);flex:140px}.watch-note{color:var(--cotton-dim);font-size:15px}.chat{border:1px solid var(--line);background:#0e1932c7;border-radius:10px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.chat-list{overscroll-behavior:contain;flex:1 1 0;min-height:60px;padding:10px 12px;overflow-y:auto}.chat-line{margin-bottom:6px;line-height:1.5}.chat-name{color:var(--kaya);margin-right:6px;font-size:14px;font-weight:500}.chat-mine .chat-name{color:var(--cotton-dim)}.chat-system{color:var(--cotton-dim);margin:4px 0 8px;font-size:13px}.chat-empty{color:var(--cotton-dim);font-size:14px}.point-link{border:1px solid var(--kaya-deep);color:var(--kaya);cursor:pointer;background:#e6c07f24;border-radius:4px;padding:0 5px;font-size:14px;font-weight:500;line-height:1.35}.point-link:hover{background:var(--kaya);color:var(--kaya-ink)}.chat-quick{scrollbar-width:none;gap:6px;padding:0 10px 8px;display:flex;overflow-x:auto}.chat-quick::-webkit-scrollbar{display:none}.chat-quick button{border:1px solid var(--line);min-height:34px;color:var(--cotton-dim);cursor:pointer;background:0 0;border-radius:17px;flex:none;padding:2px 10px;font-size:14px}.chat-quick button:hover{color:var(--cotton);background:var(--panel)}.chat-form{border-top:1px solid var(--line);gap:6px;padding:8px;display:flex}.chat-form input{min-width:0;min-height:var(--tap);border:1px solid var(--line);background:var(--cloth);border-radius:8px;flex:1;padding:6px 12px;font-size:16px}.chat-form input::placeholder{color:var(--cotton-dim)}.chat-form button{min-height:var(--tap);background:var(--kaya);color:var(--kaya-ink);cursor:pointer;border:0;border-radius:8px;flex:none;padding:4px 16px;font-weight:500}.chat-form button:disabled{background:var(--panel);color:var(--cotton-dim);cursor:default}@media (width>=900px),(orientation:landscape) and (width>=600px){.table{--side:clamp(300px, 28vw, 400px);grid-template-areas:"bar bar""board top""board chat""board bottom""board actions";grid-template-columns:minmax(0, 1fr) var(--side);grid-template-rows:auto auto minmax(0,1fr) auto auto;column-gap:20px;height:100dvh;padding:12px 16px}.table-board{justify-content:center;align-items:center;min-height:0;display:flex}.table-board .board{width:min(100%, calc(100dvh - 46px - var(--tap)))}.table-bar{grid-template-columns:subgrid;gap:normal;padding:0;display:grid}.table-bar .lobby-button{justify-self:start}.table-title{text-align:left}.strip{padding:6px 0}.table-bottom{padding-top:0}.table-chat{padding:4px 0 6px}.table-actions{min-height:52px;padding:4px 0 0}}.table-offline{grid-column:1/-1;margin:0 12px 8px}.waiting-title{font-weight:500;line-height:1.5}.waiting-link{color:var(--kaya);margin:4px 0 8px;font-size:14px}@media (height<=480px){.chat-quick{display:none}}@media (orientation:landscape) and (width>=600px) and (height<=520px){.table{grid-template:"board bar""board top""board bottom""board actions""board chat"minmax(220px,1fr)/calc(100dvh - 12px) minmax(0,1fr);height:auto;min-height:100dvh;padding:0 12px 0 0}.table-bar{gap:12px;display:flex}.table-board{align-self:start;height:100dvh;padding:6px;position:sticky;top:0}.table-board .board{width:100%}.table-actions{min-height:0}.table-chat{padding-bottom:calc(10px + env(safe-area-inset-bottom))}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sheet-tall{max-height:calc(100dvh - 24px);overflow-y:auto}.sheet-note{color:var(--cotton-dim);margin-bottom:14px;font-size:15px}.sheet-note a{color:var(--cotton)}.choice-column{gap:8px;display:grid}.game-field{gap:6px;margin-bottom:16px;display:grid}.game-field-label{color:var(--cotton-dim);font-size:15px}.game-field-note{color:var(--cotton-dim);font-size:14px}.sheet-with{color:var(--kaya);margin:-6px 0 14px;font-size:16px;font-weight:600}.game-field-select{border:1px solid var(--line);background:var(--panel-raised);width:100%;min-height:44px;color:var(--cotton);font:inherit;border-radius:8px;padding:8px 10px;font-size:16px}.bot-roster{align-items:flex-end;gap:8px;margin-bottom:16px;display:flex}.bot-roster .game-field{flex:1;min-width:0;margin-bottom:0}.bot-roster .btn{flex:none;min-height:44px}.game-more{margin-bottom:16px}.game-more summary{min-height:44px;color:var(--cotton-dim);cursor:pointer;align-items:center;display:flex}.game-more[open] summary{margin-bottom:8px}.check{align-items:center;gap:10px;min-height:44px;font-size:15px;display:flex}.check input{width:20px;height:20px;accent-color:var(--kaya);flex:none}.action-row-wrap{flex-wrap:wrap}.notice-quiet{color:var(--kaya)}.tool-note{color:var(--kaya);margin-top:8px;font-size:15px}.mode-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.mode-chip{border:1px solid var(--line);min-height:32px;color:var(--cotton-dim);font:inherit;background:0 0;border-radius:6px;align-items:center;padding:2px 10px;font-size:13px;display:inline-flex}.mode-chip-edit{min-height:44px;color:var(--cotton);cursor:pointer}.mode-chip-edit:hover{border-color:var(--cotton-dim)}.draw-surface{cursor:crosshair;touch-action:none}.draw-surface-eraser{cursor:cell}.board-drawing svg{touch-action:none;cursor:crosshair}.cursor-name{font-family:var(--font-body);paint-order:stroke;stroke-width:7px;stroke-linejoin:round;font-size:30px;font-weight:500}.stone-number{font-family:var(--font-body);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:40px;font-weight:500}.pen-swatch{flex:none;display:flex;position:relative}.chat-form .pen-swatch-button{border:1px solid var(--line);background:var(--panel-raised);width:44px;min-height:44px;color:inherit;cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid}.pen-swatch-dot{border:2px solid var(--cotton);border-radius:50%;width:22px;height:22px}.pen-swatch-menu{z-index:5;border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-columns:repeat(5,40px);gap:6px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0006}.chat-form .pen-swatch-option{cursor:pointer;border:2px solid #0000;border-radius:50%;flex:none;width:40px;height:40px;padding:0}.chat-form .pen-swatch-option-on{border-color:var(--cotton);outline:2px solid var(--panel);outline-offset:-5px}.chat-head{border-bottom:1px solid var(--line);padding:6px 12px}.chat-mode-note{color:var(--cotton-dim);font-size:13px}.chat-tag{border:1px solid var(--line);color:var(--cotton-dim);border-radius:4px;margin-left:6px;padding:0 5px;font-size:12px;font-weight:400}.chat-closed{border-top:1px solid var(--line);color:var(--cotton-dim);padding:12px;font-size:15px}.chat-closed a{color:var(--cotton)}.strip-faces{flex:none;display:inline-flex;position:relative}.strip-faces .strip-stone{width:20px;height:20px;position:absolute;bottom:-3px;right:-5px}.strip-name a{color:inherit;text-decoration:none}.strip-name a:hover{text-decoration:underline}.review-overlay{z-index:20;background:var(--cloth) url(/img/indigo.webp) 0 0 / 420px;position:fixed;inset:0;overflow-y:auto}.review-wait{flex-direction:column;align-items:flex-start;gap:16px;padding:40px 20px;display:flex}.lobby-toast{border:1px solid var(--kaya);color:var(--kaya);border-radius:8px;margin-bottom:12px;padding:10px 14px}.lobby-tabs{grid-area:tabs;gap:4px}.lobby-tab{flex:1;padding:0 4px}@media (width<=480px){.lobby-tabs-four .lobby-tab svg{display:none}}.lobby-columns{isolation:isolate;grid-template:"hero tabs""boards side"minmax(0,1fr)/minmax(0,1fr) minmax(300px,380px);align-items:start;gap:0 32px;display:grid;position:relative}.lobby-columns>*{z-index:1}.lobby-columns .hero{grid-area:hero;padding:0 0 14px}.lobby-boards{grid-area:boards;min-width:0}.lobby-side{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;grid-area:side;min-height:0;display:flex;overflow:hidden}.lobby-columns[data-panel=people] .lobby-chat,.lobby-columns[data-panel=members] .lobby-chat,.lobby-columns:not([data-panel=people]) .presence,.lobby-columns:not([data-panel=members]) .members{display:none}.side-title{border-bottom:1px solid var(--line);padding:10px 14px;font-size:15px;font-weight:500}.lobby-chat,.presence,.members{flex-direction:column;flex:1;min-height:0;display:flex}.lobby-chat-list{overscroll-behavior:contain;flex:1;min-height:120px;padding:8px 12px;overflow-y:auto}.lobby-line{gap:8px;padding:6px 0;display:flex}.lobby-line-body{flex:1;min-width:0;display:grid}.lobby-line-head{align-items:baseline;gap:8px;font-size:13px;display:flex}.lobby-line-name{font-weight:500;text-decoration:none}.lobby-line-name:hover{text-decoration:underline}.lobby-line-time{color:var(--cotton-dim);font-size:12px}.lobby-line-delete{color:var(--cotton-dim);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:12px;text-decoration:underline}.lobby-line-text{font-size:15px}.presence .side-title,.members .side-title{color:var(--cotton-dim);padding:8px 12px;font-size:13px;font-weight:400}.presence-list{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.presence-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:52px;padding:6px 12px;display:flex}.presence-row:last-child{border-bottom:0}.presence-name{min-width:0;color:inherit;flex:1;font-size:15px;text-decoration:none}.presence-name:hover{text-decoration:underline}.presence-rank,.seat-rank{color:var(--cotton-dim);margin-left:6px;font-size:13px}.presence-state{color:var(--cotton-dim);font-size:13px}.presence .chat-empty{padding:12px}.challenge-who{align-items:center;gap:12px;display:flex}.challenge-who .sheet-title{margin-bottom:0}.challenge-terms{color:var(--cotton-dim);margin:14px 0}@media (width>=901px){.lobby-tabs{border:1px solid var(--line);background:var(--panel);border-radius:10px 10px 0 0;align-self:end;gap:0;padding:0 6px}.lobby-tabs .lobby-tab-boards{display:none}.lobby-side{border-top:0;border-radius:0 0 10px 10px}.site-fill .lobby{flex-direction:column;flex:1;min-height:0;display:flex}.site-fill .lobby-columns{flex:1;min-height:0}.site-fill .lobby-boards,.site-fill .lobby-side{align-self:stretch}.site-fill .lobby-boards{scrollbar-color:var(--line) transparent;scrollbar-width:thin;margin-right:-12px;padding:4px 12px 16px 0;overflow-y:auto}}@media (width<=900px){.lobby-tabs{margin-bottom:12px}.lobby-columns{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"hero""tabs""boards""side"}.lobby-columns .hero{gap:6px;padding:0 0 8px}.hero-actions{flex:100%;gap:6px}.hero-actions .btn{flex:40%;min-height:40px;padding:4px;font-size:14px}.lobby-columns[data-panel=boards] .lobby-side,.lobby-columns:not([data-panel=boards]) .lobby-boards{display:none}.lobby-boards{min-height:320px}.site-fill .lobby{flex-direction:column;flex:1;min-height:0;display:flex}.site-fill .lobby-columns{flex:1;grid-template-rows:auto auto auto minmax(0,1fr);min-height:0}.site-fill .lobby-side{align-self:stretch}}:root{--turn:#46d6a4;--turn-ink:#06281c}.btn{gap:8px}.btn svg{flex:none;width:1.15em;height:1.15em}.cmd-group{flex-direction:column;gap:8px;display:flex}.cmd-bar{grid-auto-columns:minmax(0,128px);grid-auto-flow:column;gap:6px;display:grid}.cmd{border:1px solid var(--line);background:var(--panel);min-width:0;min-height:60px;color:var(--cotton);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:13px;font-weight:500;line-height:1.3;display:flex}.cmd svg{flex:none;width:22px;height:22px}.cmd:hover:not(:disabled){background:var(--panel-raised)}.cmd:disabled{opacity:.4;cursor:default}.cmd-on,.cmd-on:hover:not(:disabled){border-color:var(--kaya);background:var(--kaya);color:var(--kaya-ink)}.cmd-label{white-space:nowrap}.cmd-done{border-color:var(--cotton-dim)}.cmd-more{flex-wrap:wrap;gap:8px;display:flex}.cmd-more .mode-row{display:contents}.cmd-more .mode-chip svg{flex:none;width:16px;height:16px;margin-right:6px}@media (width<=360px){.cmd{font-size:12px}}.strip{transition:background-color .2s}.strip-off .strip-faces,.strip-off .strip-who{opacity:.72}.strip-on{box-shadow:inset 4px 0 0 var(--cotton-dim);background:#f3eddf17}.strip-you{box-shadow:inset 5px 0 0 var(--turn);background:#46d6a42b}.strip-name{min-width:0}.strip-name a,.strip-name-text{text-overflow:ellipsis;overflow:hidden}.strip-badge{white-space:nowrap;border-radius:14px;flex:none;align-items:center;gap:5px;min-height:28px;padding:2px 11px;font-size:14px;font-weight:500;line-height:1.3;display:inline-flex}.strip-badge svg{flex:none;width:15px;height:15px}.strip-badge-you{background:var(--turn);color:var(--turn-ink);font-size:15px}.strip-badge-wait{border:1px solid var(--cotton-dim);color:var(--cotton)}.strip-badge-pass{background:var(--cotton);color:#14203c}.thinking-dots{gap:3px;display:inline-flex}.thinking-dots i{background:currentColor;border-radius:50%;width:5px;height:5px}.board-stage,.board{position:relative}.table[data-turn=mine] .table-board .board:after{content:"";border:4px solid var(--turn);pointer-events:none;border-radius:3px;position:absolute;inset:0}.pass-note{z-index:2;max-width:88%;color:var(--cotton);pointer-events:none;background:#0a1226e6;border-radius:26px;align-items:center;gap:8px;padding:10px 20px;font-size:18px;font-weight:500;line-height:1.35;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pass-note svg{flex:none;width:20px;height:20px}.pass-advice{background:#f3eddf1c;border-radius:8px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;font-size:15px;line-height:1.4;display:flex}.pass-advice svg{flex:none;width:18px;height:18px}.side-pass{background:var(--cotton);color:#14203c;border-radius:10px;align-items:center;gap:3px;padding:0 7px;font-size:13px;font-weight:500;display:inline-flex}.side-pass svg{width:13px;height:13px}@media (prefers-reduced-motion:no-preference){.table[data-turn=mine] .table-board .board:after,.strip-badge-you{animation:1.1s ease-out turn-arrive}.pass-note-flash{animation:2.6s ease-out both pass-note}.thinking-dots i{animation:1.2s infinite thinking}.thinking-dots i:nth-child(2){animation-delay:.2s}.thinking-dots i:nth-child(3){animation-delay:.4s}}@keyframes turn-arrive{0%{opacity:0}30%{opacity:1}55%{opacity:.45}to{opacity:1}}@keyframes pass-note{0%{opacity:0}10%,80%{opacity:1}to{opacity:0}}@keyframes thinking{0%,70%,to{opacity:.3}35%{opacity:1}}.sound-toggle{justify-content:center;align-items:center;width:44px;display:inline-flex}.sound-toggle svg{width:22px;height:22px}.chat-send{justify-content:center;align-items:center;display:inline-flex}.chat-send svg{width:20px;height:20px}.rc-btn,.rc-small,.rc-play{justify-content:center;align-items:center;gap:6px;display:inline-flex}.rc-btn svg{width:26px;height:26px}.rc-small svg{width:20px;height:20px}.rc-play svg{width:18px;height:18px}.lc-restart{align-items:center;gap:6px;display:inline-flex}.lc-restart svg{width:16px;height:16px}.site-link{align-items:center;gap:6px;display:inline-flex}.site-link svg{flex:none;width:16px;height:16px}.menu-item{align-items:center;gap:8px;display:flex}.menu-item svg{flex:none;width:16px;height:16px}@media (width<=360px){.hero-actions .btn svg{display:none}}.site-count{background:var(--panel-raised);min-width:18px;height:18px;color:var(--cotton);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.site-count-live{background:var(--kaya);color:var(--kaya-ink)}.site-count-other{background:var(--sky);color:var(--sky-ink)}.site-count+.site-count{margin-left:-3px}.site-count-alert{background:var(--lac);color:#fff}.games-tabs,.boards-tabs{margin-top:12px}.lang-switch{border:1px solid var(--line);border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.lang-switch button{min-width:32px;min-height:34px;color:var(--cotton-dim);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:13px;font-weight:500}.lang-switch button:hover:not(:disabled){color:var(--cotton)}.lang-switch .lang-on{background:var(--panel-raised);color:var(--cotton);cursor:default}@media (width<=480px){.site-nav-auth .btn-small{padding-left:10px;padding-right:10px}.site-nav-auth .btn-small svg{display:none}.site-links{gap:0}.site-links .site-link{gap:4px;padding-left:8px;padding-right:8px}.site-links .site-link svg{display:none}}.lobby-button{min-height:var(--tap);border-color:var(--kaya);color:var(--kaya);white-space:nowrap;flex:none;gap:6px;padding:6px 12px;font-size:15px}.lobby-button:hover:not(:disabled){background:var(--kaya);color:var(--kaya-ink)}.bar-info{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.review-bar{justify-content:space-between;padding-top:8px;padding-bottom:8px}main .table-bar,main .lc-bar,main .replay-bar{padding-top:6px;padding-bottom:6px}@media (width<=480px){.table-title,.lc-title,.replay-title{font-size:14px;line-height:1.35}}.members-only{color:var(--cotton-dim);justify-items:start;gap:12px;margin-top:16px;display:grid}.members-only p{max-width:34em}.guest-note{border:1px solid var(--line);background:var(--panel-raised);color:var(--cotton-dim);border-radius:8px;margin-bottom:14px;padding:8px 12px;font-size:14px;line-height:1.5}.guest-note a{color:var(--kaya);font-weight:600}.room-select{max-width:100%;color:var(--cotton-dim);align-items:center;gap:8px;margin-bottom:4px;font-size:14px;display:inline-flex}.room-select svg{flex:none;width:16px;height:16px}.room-select select{border:1px solid var(--line);background:var(--panel);min-width:0;max-width:100%;min-height:36px;color:var(--cotton);border-radius:8px;padding:2px 8px}.games-filters{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:12px;display:flex}.games-filters .room-select{margin-bottom:0}.player-search{border:1px solid var(--line);background:var(--panel);max-width:320px;min-height:36px;color:var(--cotton-dim);border-radius:8px;flex:200px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.player-search:focus-within{border-color:var(--kaya)}.player-search svg{flex:none;width:16px;height:16px}.player-search input{min-width:0;color:var(--cotton);background:0 0;border:0;outline:none;flex:1}.games-scope{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:12px 0 4px;display:flex}.games-mine{border-color:var(--line)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site{flex-direction:column;min-height:100dvh;display:flex}.site-main{flex:1;width:min(960px,100%);margin:0 auto;padding:16px 16px 48px}.site-main-narrow{width:min(640px,100%)}.site-main-wide{width:min(1320px,100%)}.site-nav{border-bottom:1px solid var(--line);background:#11203feb}.site-nav-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;width:min(960px,100%);margin:0 auto;padding:8px 16px 0;display:flex}.site-wide .site-nav-row,.site-wide .site-links{width:min(1320px,100%)}@media (width>=1280px){.site-nav .site-brand-full{height:28px}.site-nav{--site-width:1320px;padding:6px max(16px, calc((100% - var(--site-width)) / 2 + 16px));grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:20px;display:grid}.site-nav-row{display:contents}.site-brand{grid-area:1/1}.site-nav .site-links{grid-area:1/2;width:auto;margin:0;padding:0}.site-nav-auth{grid-area:1/3}}.site-brand{min-height:var(--tap);font-family:var(--font-display);white-space:nowrap;align-items:center;gap:8px;font-size:24px;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.site-brand img{flex:none;display:block}.site-brand-full{width:auto;height:32px}.site-brand-mark{width:34px;height:34px;display:none!important}.site-nav-auth{min-height:var(--tap);align-items:center;gap:8px;display:flex}.conn-alert{width:var(--tap);height:var(--tap);color:var(--lac);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:inline-grid}.conn-alert:hover{background:var(--panel)}.conn-alert svg{width:22px;height:22px}.site-nav-auth .btn-small{min-height:var(--tap);padding:4px 12px;font-size:15px}.site-links{scrollbar-width:none;gap:2px;width:min(960px,100%);margin:0 auto;padding:0 8px;display:flex;overflow-x:auto}.site-link{min-height:var(--tap);flex:none;padding:0 10px}.site-footer{padding:0 max(16px, calc((100% - 1320px) / 2 + 16px)) env(safe-area-inset-bottom);border-top:1px solid var(--line);color:var(--cotton-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 16px;font-size:13px;line-height:1.4;display:flex}.site-footer-links{flex-wrap:wrap;margin-right:-8px;display:flex}.site-footer-links a{align-items:center;min-height:32px;padding:0 8px;display:inline-flex}@media (width<=480px){.site-footer{text-align:center;justify-content:center;padding-top:4px}.site-footer-links{justify-content:center;margin:0}}.site-fill{height:100dvh;min-height:480px}.site-fill .site-main{flex-direction:column;min-height:0;padding-top:12px;padding-bottom:12px;display:flex}.avatar{object-fit:cover;background:var(--panel-raised);border-radius:50%;flex:none}.avatar-initial{color:#fff;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.menu{position:relative}.menu-button{min-height:var(--tap);border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:24px;align-items:center;gap:8px;max-width:190px;padding:4px 8px 4px 6px;display:flex}.menu-button:hover{background:var(--panel-raised)}.menu-name{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}@media (width<=480px){.menu-button{max-width:150px}.site-nav-auth{gap:6px}.conn-alert{width:30px}.site-brand-full{display:none!important}.site-brand-mark{display:block!important}}.menu-caret{color:var(--cotton-dim);font-size:12px}.menu-list{z-index:20;border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;min-width:200px;margin-top:6px;padding:6px;display:flex;position:absolute;right:0;box-shadow:0 8px 24px #0006}.menu-item{min-height:var(--tap);color:var(--cotton);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;padding:0 12px;text-decoration:none;display:flex}.menu-item:hover:not(:disabled){background:var(--panel-raised)}.page-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.35}.page-lead{color:var(--cotton-dim);margin-top:6px}.prose{margin:12px 0}.prose a,.info a:not(.btn),.form-fine a,.field-note a{color:var(--kaya)}.field-note{color:var(--cotton-dim);margin-top:4px;font-size:14px;line-height:1.5}.empty-note{color:var(--cotton-dim);padding:24px 0}.stack{flex-direction:column;gap:16px;margin-top:16px;display:flex}.card{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-direction:column;gap:16px;margin-top:8px;padding:20px 16px;display:flex}.form{flex-direction:column;gap:14px;display:flex}.form-danger{border:1px solid var(--lac);border-radius:8px;padding:14px}.form-links{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.form-links a{min-height:var(--tap);color:var(--kaya);align-items:center;display:inline-flex}.form-fine{color:var(--cotton-dim);font-size:14px}.field label{color:var(--cotton-dim);margin-bottom:6px;font-size:15px;display:block}.input{width:100%;min-height:var(--tap);border:1px solid var(--line);background:var(--cloth);color:var(--cotton);border-radius:8px;padding:8px 12px;font-size:16px;display:block}select.input{appearance:auto}.textarea{resize:vertical;line-height:1.5}.input:focus-visible{border-color:var(--kaya)}.input[aria-invalid=true]{border-color:var(--lac)}.field-error{color:#ffb4bd}.form-notice{border:1px solid var(--line);background:var(--panel-raised);border-radius:8px;padding:10px 12px;font-size:15px}.form-notice-error{border-color:var(--lac);color:#ffd2d7}.form-notice-ok{border-color:#3fb950}.draft{margin:16px 0 8px}.status{margin-top:8px;font-size:15px}.status-ok{color:#8be09a}.status-error{color:#ffb4bd}.status-busy{color:var(--cotton-dim)}.divider{color:var(--cotton-dim);align-items:center;gap:12px;font-size:14px;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.divider span{flex:none}.social{flex-direction:column;gap:10px;display:flex}.social-btn{gap:12px;width:100%}.social-mark{width:28px;height:28px;font-family:var(--font-body);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.social-google{color:#4285f4}.social-off{flex-direction:column;gap:2px;display:flex}.social-off small{color:var(--cotton-dim);text-align:center}.panel{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:16px}.panel+.panel,.profile-head+.panel{margin-top:16px}.panel-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.4}.panel-sub{margin:12px 0 0;font-size:15px;font-weight:600}.panel-lead{color:var(--cotton-dim);margin:2px 0 12px;font-size:15px}.panel .form{margin-top:12px}.panel .form+.form{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.avatar-editor{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:8px;display:flex}.avatar-actions{flex:1;min-width:200px}.swatches{border:0;flex-wrap:wrap;gap:10px;margin:0;padding:0;display:flex}.swatch{width:var(--tap);height:var(--tap);cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.swatch input{opacity:0;cursor:pointer;position:absolute;inset:0}.swatch-fill{border:1px solid #fff6;border-radius:50%;width:30px;height:30px}.swatch-on{border-color:var(--kaya)}.swatch:has(input:focus-visible){outline:3px solid var(--kaya);outline-offset:2px}.toggles{flex-direction:column;display:flex}.toggle{min-height:var(--tap);cursor:pointer;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.toggle input{width:24px;height:24px;accent-color:var(--kaya);flex:none;margin:2px 0 0}.toggle-label{font-weight:500;display:block}.rows{flex-direction:column;display:flex}.row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:10px 0;display:flex}.row:first-child{border-top:0}.row-main{flex-direction:column;flex:1;min-width:180px;display:flex}.row-person{flex-direction:row;align-items:center;gap:10px}.row-off{flex-direction:column;align-items:center;display:flex}.row-off small{color:var(--cotton-dim);font-size:12px}.badge{background:var(--kaya);color:var(--kaya-ink);border-radius:10px;margin-left:8px;padding:1px 8px;font-size:12px;font-weight:500}.game-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.game-row{min-height:var(--tap);border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 12px;text-decoration:none;display:flex}.game-row:hover{background:var(--panel-raised)}.game-players{flex-direction:column;flex:1;gap:4px;min-width:200px;display:flex}.game-seat{min-width:0;color:var(--cotton-dim);align-items:center;gap:8px;display:flex}.game-seat-won{color:var(--cotton);font-weight:600}.game-seat-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-seat-rank{opacity:.8;flex:none;font-size:13px;font-weight:400}.stone{border:1px solid #888;border-radius:50%;flex:none;width:14px;height:14px}.stone-black{background:#111}.stone-white{background:#f5f1e6}.game-meta{flex-direction:column;align-items:flex-start;gap:2px;font-size:14px;display:flex}.game-result{font-weight:500}.game-result-win{color:#8be09a}.game-result-loss{color:#ffb4bd}.game-info{color:var(--cotton-dim)}.more{justify-content:center;margin-top:16px}.empty-card{border:1px dashed var(--line);border-radius:12px;flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px;padding:24px 16px;font-size:16px;display:flex}.board-table{border-collapse:collapse;width:100%;margin-top:16px}.board-table th{border-bottom:1px solid var(--line);color:var(--cotton-dim);text-align:left;padding:6px 8px;font-size:14px;font-weight:400}.board-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:6px 8px}.board-table .col-pos{width:36px;color:var(--cotton-dim);text-align:center}.board-table .col-rank{text-align:right;width:84px}.board-table td small{color:var(--cotton-dim);font-size:13px;display:block}.board-player{min-height:var(--tap);align-items:center;gap:10px;text-decoration:none;display:flex}.board-name{min-width:0}.board-name strong{display:block}.profile-head{flex-wrap:wrap;align-items:center;gap:16px;padding:8px 0 12px;display:flex}.profile-id{flex:1;min-width:200px}.profile-rank{font-size:18px}.profile-bio{border-left:3px solid var(--kaya-deep);white-space:pre-wrap;margin:8px 0 12px;padding:10px 12px}.profile-actions{margin-bottom:16px}.games-title{margin-top:24px}.chart{margin:8px 0 0}.chart svg{width:100%;max-width:480px;height:auto;display:block}.chart figcaption{max-width:480px;color:var(--cotton-dim);justify-content:space-between;font-size:13px;display:flex}.chart-grid{stroke:var(--line);stroke-dasharray:3 4}.chart-line{stroke:var(--kaya);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.chart-dot{fill:var(--kaya)}.info{line-height:1.8}.info-section{margin-top:28px}.info-heading{font-family:var(--font-display);margin-bottom:8px;font-size:19px;font-weight:500;line-height:1.4}.info-sub{margin:16px 0 2px;font-size:15px;font-weight:600}.info p+p,.info p+ul,.info ul+p{margin-top:10px}.bullets{padding-left:1.3em;list-style:outside}.bullets li+li{margin-top:4px}.steps{padding-left:1.5em;list-style:decimal}.steps li+li{margin-top:6px}.info code{background:var(--panel);border-radius:4px;padding:0 4px;font-size:.92em}.info-end{border-top:1px solid var(--line);margin-top:32px;padding-top:16px}.diagram-row{flex-wrap:wrap;gap:16px;margin:14px 0;display:flex}.diagram{max-width:100%;margin:0}.diagram svg{border-radius:6px;max-width:100%;height:auto;display:block}.diagram figcaption{max-width:280px;color:var(--cotton-dim);margin-top:4px;font-size:14px;line-height:1.5}.dg-wood{fill:var(--kaya)}.dg-line{stroke:#5b4116;stroke-width:1px}.dg-edge{stroke:#3a2808;stroke-width:2.4px}.dg-star{fill:#3a2808}.dg-black{fill:#151515;stroke:#000}.dg-white{fill:#f7f3e8;stroke:#6b6b6b}.dg-liberty{fill:var(--lac)}.dg-area-black{fill:#151515}.dg-area-white{fill:#f7f3e8;stroke:#6b6b6b}.dg-label-bg{fill:var(--kaya)}.dg-label{fill:#a1202f;font-family:var(--font-body);font-size:15px;font-weight:700}@media (width<=380px){.site-brand{font-size:22px}.card{padding:16px 12px}}@media (width>=640px){.site-main{padding-top:28px}.card{padding:28px}.game-meta{align-items:flex-end}}.friends-tabs{margin-top:12px}.page-lead.friends-lead{margin-top:16px}.friends-section{margin-top:28px}.friends-section .panel-title{align-items:center;gap:8px;margin-bottom:8px;display:flex}.friends-list{border-top:1px solid var(--line)}.friend-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;display:flex}.friend-face{flex:none;display:inline-flex;position:relative}.friend-dot{border:2px solid var(--cloth);background:#3fb950;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-1px;right:-1px}.friend-text{flex-direction:column;flex:1;min-width:10em;display:flex}.friend-name{color:inherit;font-weight:500;text-decoration:none}.friend-name:hover{text-decoration:underline}.friend-note{color:var(--cotton-dim);font-size:14px}.friend-note a{color:var(--cotton)}.friend-online{color:#3fb950}.friend-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.friends-empty{color:var(--cotton-dim);flex-direction:column;align-items:flex-start;gap:12px;margin-top:24px;display:flex}.friend-state{color:var(--cotton-dim);align-self:center;align-items:center;gap:6px;font-size:14px;text-decoration:none;display:inline-flex}.friend-state svg{width:1.15em;height:1.15em}.dm-top{flex:none;margin-top:4px;margin-bottom:12px}@media (width>=640px){.dm-top{margin-top:16px}}@media (width<=759.98px){.dm-top-thread{display:none}}.dm-layout{border:1px solid var(--line);background:#11203fcc;border-radius:12px;flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.dm-list-pane,.dm-thread-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.dm-list-pane{overflow-y:auto}.dm-layout.dm-has-thread .dm-list-pane,.dm-layout:not(.dm-has-thread) .dm-thread-pane{display:none}@media (width>=760px){.dm-layout{grid-template-columns:300px minmax(0,1fr)}.dm-layout.dm-has-thread .dm-list-pane,.dm-layout:not(.dm-has-thread) .dm-thread-pane{display:flex}.dm-list-pane{border-right:1px solid var(--line)}.dm-back{display:none}}.dm-list-pane .dm-conversations>li:first-child .dm-conversation{border-top:0}.dm-pad{padding:8px 16px}.dm-empty{color:var(--cotton-dim)}.dm-conversation{border-top:1px solid var(--line);min-height:64px;color:inherit;align-items:center;gap:10px;padding:8px 16px;text-decoration:none;display:flex}.dm-conversation:hover{background:var(--panel)}.dm-conversation[aria-current=page]{background:var(--panel-raised)}.dm-conv-text{flex-direction:column;flex:1;min-width:0;display:flex}.dm-conv-top{align-items:baseline;gap:8px;display:flex}.dm-conv-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.dm-conv-unread{color:var(--kaya)}.dm-conv-time{color:var(--cotton-dim);flex:none;font-size:12px}.dm-conv-last{color:var(--cotton-dim);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.dm-head{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:4px;min-height:56px;padding:6px 12px;display:flex}.dm-back{min-width:var(--tap);min-height:var(--tap)}.dm-who{min-width:0;min-height:var(--tap);color:inherit;align-items:center;gap:10px;font-weight:500;text-decoration:none;display:flex}.dm-who:hover .dm-who-name{text-decoration:underline}.dm-who-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dm-messages{overscroll-behavior:contain;flex:1;min-height:0;padding:12px 12px 4px;overflow-y:auto}.dm-older{margin:0 auto 8px;display:flex}.dm-messages>.dm-empty{text-align:center;padding:24px 8px}.dm-lines{flex-direction:column;gap:4px;display:flex}.dm-line{flex-direction:column;align-items:flex-start;display:flex}.dm-mine{align-items:flex-end}.dm-day{background:var(--panel);color:var(--cotton-dim);border-radius:10px;align-self:center;margin:10px 0 6px;padding:0 10px;font-size:12px}.dm-bubble{background:var(--panel-raised);border-radius:16px 16px 16px 4px;flex-wrap:wrap;align-items:flex-end;gap:2px 8px;max-width:min(80%,34em);padding:6px 12px;display:flex}.dm-mine .dm-bubble{background:var(--kaya);color:var(--kaya-ink);border-radius:16px 16px 4px}.dm-text{white-space:pre-wrap}.dm-time{opacity:.7;margin-left:auto;font-size:11px}.dm-read{color:var(--cotton-dim);font-size:12px}.dm-closed{border-top:1px solid var(--line);color:var(--cotton-dim);flex:none;padding:12px 16px}.dm-form{border-top:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:flex-end;gap:6px;padding:8px;display:flex}.dm-send-error{flex-basis:100%}.dm-input{min-width:0;min-height:var(--tap);border:1px solid var(--line);background:var(--cloth);max-height:160px;color:inherit;font:inherit;resize:none;field-sizing:content;border-radius:8px;flex:1;padding:9px 12px;font-size:16px;line-height:1.4}.dm-input::placeholder{color:var(--cotton-dim)}.dm-send{min-width:var(--tap);min-height:var(--tap);background:var(--kaya);color:var(--kaya-ink);cursor:pointer;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.dm-send:disabled{background:var(--panel);color:var(--cotton-dim);cursor:default}.dm-send svg{width:20px;height:20px}.dm-placeholder{color:var(--cotton-dim);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.dm-placeholder svg{width:40px;height:40px}.fx{max-width:1120px;margin:0 auto}.fx-hero{padding:20px 0 32px}.fx-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.4}.fx-lead{max-width:38em;color:var(--cotton-dim);margin-top:8px}.fx-start{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.fx-section{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:48px;padding:40px 0;display:grid}.fx-section-flip .fx-words{order:2}.fx-heading{font-family:var(--font-display);margin-bottom:14px;font-size:18px;font-weight:500;line-height:1.4}.fx-words>p{max-width:34em}.fx-points{max-width:34em;color:var(--cotton-dim);flex-direction:column;gap:8px;margin-top:18px;display:flex}.fx-points li{padding-left:20px;position:relative}.fx-points li:before{content:"";background:var(--kaya);border-radius:50%;width:9px;height:9px;position:absolute;top:.62em;left:2px}.fx-demo{flex-direction:column;gap:12px;min-width:0;display:flex}.fx-tools{margin-top:4px}.fx-colors{flex-wrap:wrap;gap:4px;display:flex}.fx-hint{color:var(--cotton-dim);font-size:15px}.fx-steps{grid-template-columns:52px 52px minmax(0,1fr) 52px 52px;align-items:center;gap:6px;margin-top:4px;display:grid}.fx-step-count{color:var(--cotton-dim);text-align:center;font-size:15px}.fx-chat{border:1px solid var(--line);background:#0e1932c7;border-radius:10px;flex-direction:column;gap:6px;min-height:118px;padding:10px 12px;display:flex}.fx-chat li{opacity:.62}.fx-chat .fx-chat-now,.fx-chat .fx-chat-empty{opacity:1}.fx-chat-move{color:var(--cotton-dim);margin-right:8px;font-size:13px}.fx-chat-who{margin-right:6px;font-weight:500}.fx-levels{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.fx-levels li{border:1px solid var(--line);border-radius:15px;align-items:baseline;gap:6px;padding:3px 10px;font-size:14px;display:inline-flex}.fx-levels small{color:var(--kaya);font-size:13px}.fx-views{flex-wrap:wrap}.fx-stat{font-size:16px;font-weight:500}.fx-more{border-top:1px solid var(--line);padding:56px 0}.fx-more-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 34px;margin-top:24px;display:grid}.fx-more-list li{gap:12px;display:flex}.fx-more-list svg{width:24px;height:24px;color:var(--kaya);flex:none;margin-top:3px}.fx-more-list h3{margin:0 0 4px;font-size:16px;font-weight:500;line-height:1.4}.fx-more-list p{color:var(--cotton-dim);font-size:15px}.fx-end{border-top:1px solid var(--line);padding:56px 0 24px}.fx-rules{color:var(--cotton-dim);flex-wrap:wrap;align-items:center;gap:8px;margin-top:26px;display:flex}.fx-rules svg{flex:none;width:20px;height:20px}.fx-cursor{transform:translate(420px,260px)}.fx-cursor text{paint-order:stroke;stroke-width:7px;stroke-linejoin:round;font-size:34px;font-weight:500}@media (prefers-reduced-motion:no-preference){.fx-cursor{animation:9s ease-in-out infinite alternate fx-cursor}}@keyframes fx-cursor{0%{transform:translate(190px,360px)}45%{transform:translate(430px,250px)}to{transform:translate(560px,500px)}}.fx-toc{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.fx-toc a{border:1px solid var(--line);background:var(--panel);min-height:36px;color:var(--cotton);border-radius:18px;align-items:center;padding:4px 14px;font-size:15px;text-decoration:none;display:inline-flex}.fx-toc a:hover{border-color:var(--kaya)}.fx section[id]{scroll-margin-top:16px}.fx-block{border-top:1px solid var(--line);padding:40px 0}.fx-intro{max-width:44em;color:var(--cotton-dim)}.fx-after,.fx-block .fx-more-list{margin-top:22px}.fx-ways{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.fx-ways li{border:1px solid var(--line);background:#1a2c52b8;border-radius:12px;flex-direction:column;gap:8px;padding:18px;display:flex}.fx-ways h3{margin:0;font-size:17px;font-weight:500}.fx-ways p{color:var(--cotton-dim);flex:1;font-size:15px}.fx-ways .btn{align-self:flex-start;margin-top:6px}.fx-way-icon{width:28px;height:28px;color:var(--kaya)}.fx-note-row{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px;margin-top:30px;padding:18px 20px;display:grid}.fx-note-row h3{margin:0 0 4px;font-size:16px;font-weight:500}.fx-note-row p{color:var(--cotton-dim);font-size:15px}.fx-sub{margin:22px 0 10px;font-size:16px;font-weight:500}.fx-modes{flex-direction:column;gap:6px;max-width:34em;display:flex}.fx-modes li{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:8px 12px;display:flex}.fx-modes li>span:last-child{color:var(--cotton-dim);flex-basis:100%;font-size:14px}.fx-modes strong{font-weight:500}.fx-mode-default{border-color:var(--kaya)}.fx-tag{background:var(--kaya);color:var(--kaya-ink);border-radius:9px;padding:0 8px;font-size:12px;font-weight:500}.fx-howto{counter-reset:fx-step;flex-direction:column;gap:10px;max-width:34em;margin-top:18px;display:flex}.fx-howto li{counter-increment:fx-step;padding-left:36px;position:relative}.fx-howto li:before{content:counter(fx-step);background:var(--kaya);width:24px;height:24px;color:var(--kaya-ink);border-radius:50%;place-items:center;font-size:13px;font-weight:500;display:grid;position:absolute;top:1px;left:0}@media (width<=900px){.fx-section{grid-template-columns:minmax(0,1fr);gap:24px;padding:28px 0}.fx-section-flip .fx-words{order:0}.fx-more-list{grid-template-columns:minmax(0,1fr);gap:22px}.fx-start .btn{flex:100%}.fx-ways{grid-template-columns:repeat(2,minmax(0,1fr))}.fx-note-row{grid-template-columns:minmax(0,1fr);gap:18px}.fx-block{padding:28px 0}}@media (width<=560px){.fx-ways{grid-template-columns:minmax(0,1fr)}}.replay-page{min-height:100dvh}.replay-bar{align-items:center;gap:12px;min-height:44px;padding:0 12px;display:flex}.replay-title{min-width:0;color:var(--cotton);text-align:center;flex:1;font-size:15px;font-weight:500}.replay-note{flex-direction:column;align-items:flex-start;gap:12px;max-width:480px;padding:48px 20px;font-size:18px;display:flex}.replay{padding-bottom:calc(16px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);grid-template-areas:"head""board""side";gap:10px;display:grid}.replay-head{grid-area:head;padding:0 12px}.replay-board{grid-area:board;min-width:0}.replay-side{flex-direction:column;grid-area:side;gap:10px;min-width:0;padding:0 12px;display:flex}.replay-panel{min-width:0}.rh-players{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.rh-seat{align-items:center;gap:6px;min-width:0;display:flex}.rh-stone{flex:none;width:24px;height:24px}.rh-name{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.4}.rh-rank,.rh-delta{color:var(--cotton-dim);font-size:13px}.rh-tag{border:1px solid var(--line);color:var(--cotton-dim);border-radius:4px;padding:0 6px;font-size:12px}.rh-vs{color:var(--cotton-dim);font-size:14px}.rh-result{font-family:var(--font-display);font-size:20px;font-weight:500;line-height:1.5}.rh-meta{color:var(--cotton-dim);flex-wrap:wrap;gap:0 12px;font-size:13px;line-height:1.5;display:flex}.rh-actions .btn{flex:auto}.rs{padding:8px 12px 0}.rs-now{color:var(--cotton);font-weight:500;line-height:1.4}.rs-sides{gap:8px;margin-top:6px;display:flex}.rs-side{min-height:40px;color:var(--cotton-dim);border:1px solid #0000;border-radius:8px;flex-wrap:wrap;flex:1;align-items:center;gap:2px 8px;padding:4px 8px;font-size:14px;display:flex}.rs-side-on{border-color:var(--line);background:var(--panel);color:var(--cotton)}.rs-stone{width:20px;height:20px}.rs-clock{font-variant-numeric:tabular-nums;margin-left:auto;font-weight:500}.rv-toggle{min-height:var(--tap);border:1px solid var(--line);color:var(--cotton-dim);cursor:pointer;background:0 0;border-radius:8px;margin:4px 12px 0;padding:4px 12px}.rv-toggle[aria-pressed=true]{border-color:var(--kaya-deep);color:var(--kaya)}.rc{flex-direction:column;gap:10px;display:flex}.rc-main{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.rc-btn{border:1px solid var(--line);background:var(--panel);min-height:52px;color:var(--cotton);cursor:pointer;border-radius:10px;font-size:22px}.rc-btn:hover:not(:disabled){background:var(--panel-raised)}.rc-btn:disabled,.rc-small:disabled{opacity:.4;cursor:default}.rc-slider{color:var(--cotton-dim);flex-direction:column;gap:2px;font-size:14px;display:flex}.rc-slider input[type=range]{width:100%;min-height:var(--tap);accent-color:var(--kaya);margin:0}.rc-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rc-events{color:var(--cotton-dim);align-items:center;gap:6px;font-size:13px;display:flex}.rc-small{border:1px solid var(--line);background:var(--panel);min-width:44px;min-height:44px;color:var(--cotton);cursor:pointer;border-radius:8px;font-size:22px;line-height:1}.rc-play{min-height:var(--tap);border:1px solid var(--kaya-deep);color:var(--kaya);cursor:pointer;background:0 0;border-radius:8px;flex:130px;padding:4px 12px;font-weight:500}.rc-play-on{background:var(--kaya);color:var(--kaya-ink)}.rc-speed{gap:6px;display:flex}.rc-chip{min-width:44px;min-height:var(--tap);border:1px solid var(--line);color:var(--cotton-dim);cursor:pointer;background:0 0;border-radius:22px;padding:2px 10px}.rc-chip-on{border-color:var(--kaya);color:var(--kaya)}.rtab{flex:1}.rchat{border:1px solid var(--line);background:#0e1932c7;border-radius:10px;flex-direction:column;min-height:0;display:flex}.rchat-list{overscroll-behavior:contain;height:280px;padding:10px 12px;overflow-y:auto}.rchat-empty,.an-none{color:var(--cotton-dim);font-size:14px}.rchat-line{border-left:3px solid #0000;border-radius:4px;flex-wrap:wrap;align-items:baseline;gap:0 6px;margin-bottom:4px;padding:3px 6px;line-height:1.5;display:flex}.rchat-current{border-left-color:var(--kaya);background:#e6c07f1f}.rchat-name{font-size:14px;font-weight:500}.rchat-name-dark{background:var(--cotton);border-radius:4px;padding:0 6px}.rchat-tag{border:1px solid var(--line);color:var(--cotton-dim);border-radius:10px;padding:0 6px;font-size:12px}.rchat-text{flex:100px;min-width:0}.rchat-go{min-width:36px;min-height:32px;color:var(--cotton-dim);cursor:pointer;background:0 0;border:0}.rchat-system{border-left:3px solid #0000;margin:4px 0 8px;padding:0 6px;font-size:13px}.rchat-hit{min-height:32px;color:var(--cotton-dim);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.rchip{border:1px solid var(--kaya-deep);min-height:28px;color:var(--kaya);cursor:pointer;background:#e6c07f24;border-radius:4px;padding:0 6px;font-size:14px;font-weight:500}.rchip:hover{background:var(--kaya);color:var(--kaya-ink)}.an{flex-direction:column;gap:10px;display:flex}.an-intro,.an-wait{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.an-problem{color:#ffb4bd}.an-link{color:var(--kaya);text-underline-offset:3px;font-weight:500}.an-progress{border:1px solid var(--line);background:var(--panel);border-radius:13px;width:100%;height:26px;position:relative;overflow:hidden}.an-progress-bar{background:var(--kaya-deep);height:100%;transition:width .4s}.an-progress-text{font-variant-numeric:tabular-nums;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.wchart{cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:8px;width:100%;height:auto;display:block}.wchart-bg{fill:#e9e2d0}.wchart-black{fill:#20283d}.wchart-mid{stroke:var(--kaya-deep);stroke-dasharray:3 4;stroke-width:1px}.wchart-line{fill:none;stroke:var(--kaya);stroke-width:2px;stroke-linejoin:round}.wchart-dot{fill:var(--lac);stroke:#fff;stroke-width:1.2px}.wchart-now line{stroke:var(--lac);stroke-width:1.5px}.wchart-now circle{fill:var(--cotton);stroke:var(--lac);stroke-width:2px}.an-legend{color:var(--cotton-dim);align-items:center;gap:6px;font-size:13px;display:flex}.an-dot{background:var(--lac);border-radius:50%;width:10px;height:10px}.an-now{flex-wrap:wrap;gap:2px 12px;display:flex}.an-sub{color:var(--cotton-dim);font-size:14px;font-weight:500}.an-title{font-family:var(--font-display);font-size:19px;font-weight:500}.an-cands{flex-direction:column;gap:6px;display:flex}.an-cand,.an-swing{width:100%;min-height:var(--tap);border:1px solid var(--line);background:var(--panel);color:var(--cotton);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:4px 10px;display:flex}.an-cand-on{border-color:var(--kaya);background:var(--panel-raised)}.an-cand-rank{background:var(--kaya);width:28px;height:28px;color:var(--kaya-ink);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.an-cand-move{font-weight:600}.an-cand-note{color:var(--cotton-dim);margin-left:auto;font-size:13px}.an-swings{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.an-swing-col ul{flex-direction:column;gap:6px;margin-top:6px;display:flex}.an-swing{gap:8px;font-size:14px}.an-swing-n{color:var(--cotton-dim)}.an-swing-drop{color:#ffb4bd;margin-left:auto;font-weight:600}.cand{cursor:pointer}.cand-dot{fill:#2c1d08d1;stroke:var(--kaya);stroke-width:8px}.cand-on .cand-dot{fill:var(--kaya)}.cand-rank,.cand-text{font-family:var(--font-body);text-anchor:middle;dominant-baseline:central;font-weight:600}.cand-rank{fill:var(--cotton);font-size:54px}.cand-text{fill:#fff;paint-order:stroke;stroke:#2c1d08;stroke-width:7px;stroke-linejoin:round;font-size:30px}.stroke-layer{opacity:.95}@media (width>=900px),(orientation:landscape) and (width>=600px){.replay{grid-template:"board head""board side"minmax(0,1fr)/minmax(0,1fr) clamp(320px,30vw,420px);column-gap:20px;height:calc(100dvh - 52px);padding:0 16px 12px}.replay-head,.replay-side{padding:0}.replay-board{flex-direction:column;align-items:stretch;min-height:0;display:flex;overflow-y:auto}.replay-board .board{width:min(100%,100dvh - 190px);margin:0 auto}.replay-side{min-height:0;overflow-y:auto}.replay-panel{flex:1;min-height:220px}.rchat-list{height:auto;max-height:46dvh}}@media (orientation:landscape) and (width>=600px) and (height<=520px){.replay{grid-template-rows:auto auto;grid-template-columns:calc(100dvh - 12px) minmax(0,1fr);height:auto;padding:0 12px 12px 0}.replay-board{align-self:start;height:100dvh;padding:6px;position:sticky;top:0}.replay-board .board{width:100%}.replay-side{overflow:visible}}.save-preview{grid-template-columns:minmax(0,132px) minmax(0,1fr);align-items:start;gap:14px;margin-bottom:16px;display:grid}.save-origin{color:var(--cotton-dim);gap:2px;margin:0;font-size:14px;display:grid}.save-origin-label{color:var(--kaya);font-size:13px;font-weight:600}.save-sheet .field{margin-bottom:14px}.save-sheet .action-row,.saved-actions{flex-wrap:wrap;gap:8px}.saved-tile-name{color:var(--cotton);margin-top:10px;font-size:16px;font-weight:600;display:block}.tile:hover .saved-tile-name{text-underline-offset:3px;text-decoration:underline}.saved-tile-note{color:var(--cotton);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:14px;display:-webkit-box;overflow:hidden}.saved-page{grid-template-columns:minmax(0,1fr);gap:20px;max-width:1040px;margin:0 auto;display:grid}@media (width>=820px){.saved-page{grid-template-columns:minmax(0,560px) minmax(0,1fr);align-items:start}}.saved-board{width:100%;max-width:560px}.saved-info{align-content:start;gap:12px;display:grid}.saved-info .page-title{margin:0}.saved-note{white-space:pre-wrap;margin:0}.saved-meta{color:var(--cotton-dim);gap:4px;margin:0;font-size:14px;display:grid}.saved-meta a{color:var(--cotton)}.saved-form .field{margin-bottom:12px}.free-badge{border:1px solid var(--kaya-deep);color:var(--kaya);white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:13px;font-weight:600;line-height:1.5;display:inline-flex}.free-badge svg{flex:none;width:14px;height:14px}.free-tools{gap:8px;display:grid}.free-stone{width:22px;height:22px;display:block}.free-stones{width:30px;height:22px;display:block;position:relative}.free-stones img{width:22px;height:22px;position:absolute;top:0}.free-stones img:last-child{left:8px}.free-seat{border:1px solid var(--line);background:var(--panel);border-radius:10px;align-items:center;gap:10px;min-height:52px;padding:6px 12px;display:flex}.free-seat-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.free-seat-tag{color:var(--cotton-dim);font-size:13px}.free-seat-empty{color:var(--cotton-dim);border-style:dashed}.table-title-icon{width:16px;height:16px;color:var(--kaya);vertical-align:-3px;margin-right:6px}.saved-view .saved-page{padding:12px 16px 40px}.ready-list{gap:4px;margin:8px 0 10px;padding:0;list-style:none;display:grid}.ready-seat{color:var(--cotton-dim);align-items:center;gap:8px;display:flex}.ready-seat img{flex:none;width:18px;height:18px}.ready-name{min-width:0;color:var(--cotton);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ready-on .ready-state{color:#7ee2a8;font-weight:600}.play-on-ways{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px;display:grid}.play-on-way{font:inherit;cursor:pointer;justify-items:center;gap:2px;display:grid}.play-on-way svg{width:22px;height:22px;color:var(--kaya)}.saved-tile{align-content:start;gap:8px;display:grid}.saved-tile .btn{justify-self:start}.lc{min-height:100dvh;padding-bottom:calc(14px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);grid-template-areas:"bar""turn""board""sides""actions";align-content:start;gap:8px;display:grid}.lc-bar{grid-area:bar;align-items:center;gap:12px;min-height:44px;padding:0 12px;display:flex}.lc-title{min-width:0;color:var(--cotton);text-align:center;flex:1;font-size:15px;font-weight:500}.lc-restart{min-height:44px;color:var(--cotton-dim);cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:15px}.lc-turn-area{grid-area:turn;padding:0 12px}.lc-board{grid-area:board;min-width:0;position:relative}.lc-sides-area{grid-area:sides;padding:0 12px}.lc-actions-area{grid-area:actions;padding:0 12px}.lc-turn{border:2px solid var(--line);background:var(--panel);border-radius:12px;align-items:center;gap:12px;min-height:64px;padding:6px 16px;display:flex}.lc-turn-black{background:#151a28;border-color:#0b0f1a}.lc-turn-white{border-color:var(--cotton);color:#14203c;background:#e9e2d0}.lc-turn-stone{flex:none;width:44px;height:44px}.lc-turn-main{white-space:nowrap;font-family:var(--font-display);flex:none;font-size:26px;font-weight:500;line-height:1.3}.lc-turn-sub{text-align:right;min-width:0;color:inherit;opacity:.75;margin-left:auto;font-size:14px}.lc-turn-done{border-color:var(--kaya)}.lc-sides{gap:8px;display:flex}.lc-side{border:1px solid var(--line);min-height:52px;color:var(--cotton-dim);border-radius:10px;flex-wrap:wrap;flex:1;align-items:center;gap:2px 8px;padding:6px 10px;display:flex}.lc-side-on{border-color:var(--kaya);background:var(--panel);color:var(--cotton)}.lc-side-stone{width:26px;height:26px}.lc-side-name{font-family:var(--font-display);font-size:18px;font-weight:500}.lc-side-note{font-size:13px}.lc-clock{font-variant-numeric:tabular-nums;border-radius:6px;margin-left:auto;padding:0 8px;font-size:20px;font-weight:500}.lc-clock-on{background:var(--cotton);color:#14203c}.lc-clock-low.lc-clock-on{background:var(--lac);color:#fff}.lc-actions{flex-direction:column;gap:8px;display:flex}.lc-undo-more{gap:6px}.lc-undo-label{color:var(--cotton-dim);font-size:14px}.lc-result{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.lc-saved,.lc-login-note{line-height:1.6}.lc-setup-page{align-content:start}.lc-setup{width:min(460px,100%);padding:8px 16px 16px}.lc-setup .sheet-title{margin-bottom:14px}.lc-chips{flex-wrap:wrap;gap:8px;display:flex}.lc-chip{min-height:var(--tap);flex:64px}.lc-label{color:var(--cotton-dim);margin-bottom:8px;font-size:15px}.lc-stepper{align-items:center;gap:10px;display:flex}.lc-stepper .btn{min-width:52px;font-size:22px}.lc-stepper-value{font-variant-numeric:tabular-nums;text-align:center;min-width:64px;font-size:24px;font-weight:500}.lc-start{width:100%}@media (width>=900px),(orientation:landscape) and (width>=600px){.lc:not(.lc-setup-page){--side:clamp(300px, 28vw, 400px);grid-template-areas:"bar bar""board turn""board sides""board actions";grid-template-columns:minmax(0, 1fr) var(--side);grid-template-rows:auto auto auto 1fr;column-gap:20px;height:100dvh;min-height:0;padding:12px 16px}.lc:not(.lc-setup-page) .lc-board{justify-content:center;align-items:center;min-height:0;display:flex}.lc-board .board{width:min(100%, calc(100dvh - 54px - var(--tap)))}.lc:not(.lc-setup-page) .lc-bar{grid-template-columns:subgrid;gap:normal;display:grid}.lc-bar .lobby-button{justify-self:start}.lc-bar,.lc-turn-area,.lc-sides-area,.lc-actions-area{padding-left:0;padding-right:0}.lc-title{text-align:left}}@media (orientation:landscape) and (width>=600px) and (height<=520px){.lc:not(.lc-setup-page){grid-template:"board bar""board turn""board sides""board actions"/calc(100dvh - 12px) minmax(0,1fr);height:auto;min-height:100dvh;padding:0 12px 12px 0}.lc:not(.lc-setup-page) .lc-board{align-self:start;height:100dvh;padding:6px;position:sticky;top:0}.lc-board .board{width:100%}.lc:not(.lc-setup-page) .lc-bar{gap:12px;display:flex}}.lc-colors{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.lc-color{cursor:pointer;background-clip:padding-box;border:3px solid #0000;border-radius:50%;width:44px;height:44px}.lc-color-on{border-color:var(--cotton)}.cmd-color-dot{border:2px solid var(--cotton);border-radius:50%;flex:none;width:22px;height:22px}.draw-colors{grid-template-columns:repeat(4,minmax(0,128px));justify-items:center;gap:6px;display:grid}.draw-color{cursor:pointer;background-clip:padding-box;border:3px solid #0000;border-radius:50%;width:44px;height:44px;padding:0}.draw-color-on{border-color:var(--cotton)}.draw-color:focus-visible{outline:3px solid var(--kaya);outline-offset:2px}
