@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-sans-latin-400-normal-gapTbOY8.woff2) format("woff2"),url(/assets/geist-sans-latin-400-normal-BOaIZNA2.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-sans-latin-500-normal-uokXdC-Q.woff2) format("woff2"),url(/assets/geist-sans-latin-500-normal-CN2lyvyL.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geist-sans-latin-600-normal-DFOURf8L.woff2) format("woff2"),url(/assets/geist-sans-latin-600-normal-CA1yjETN.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/geist-sans-latin-700-normal-BmN9tIp5.woff2) format("woff2"),url(/assets/geist-sans-latin-700-normal-CjScfYeH.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/geist-sans-latin-800-normal-EH2RlpXL.woff2) format("woff2"),url(/assets/geist-sans-latin-800-normal-XNjooQKs.woff) format("woff")}:root{color:#151719;background:#e9eae7;font-family:Geist Sans,Geist,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #151719;--muted: #696c69;--faint: #969894;--line: #d1d3cf;--line-strong: #b9bcb7;--surface: #fafaf7;--surface-raised: #ffffff;--brass: #aa813d;--brass-light: #d2b16f;--green: #315f4b;--green-soft: #e6f0ea;--danger: #9b4036;--danger-soft: #f8e9e6;--light-marble: #eef0ed;--dark-marble: #252628}*{box-sizing:border-box}html{min-width:320px;background:#e9eae7}body{min-width:320px;min-height:100vh;margin:0;background:linear-gradient(90deg,rgb(255 255 255 / 38%) 1px,transparent 1px) 0 0 / 72px 72px,linear-gradient(rgb(255 255 255 / 28%) 1px,transparent 1px) 0 0 / 72px 72px,radial-gradient(circle at 18% 10%,rgb(255 255 255 / 88%),transparent 34%),radial-gradient(circle at 84% 18%,rgb(198 202 197 / 42%),transparent 30%),#e9eae7}button,select{font:inherit}.game-setup{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.setup-mode{display:flex;padding:3px;border:1px solid var(--line-strong);border-radius:6px;background:#dfe2dd}.setup-mode button{border:0;border-radius:4px;background:transparent;color:var(--muted);padding:9px 13px;font-size:13px;font-weight:600;cursor:pointer}.setup-mode button[aria-pressed=true]{background:var(--surface-raised);color:var(--ink);box-shadow:0 1px 3px #0000001a}.game-setup label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.game-setup select{max-width:100%;min-height:36px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--ink);padding:6px 24px 6px 9px;font-size:13px}.setup-caption{margin-left:auto;font-size:12px;color:var(--muted)}.thinking-status{color:var(--green)}@media(max-width:540px){.game-setup{gap:10px 14px}.game-setup label{flex:1;flex-direction:column;align-items:stretch;gap:4px}.setup-mode{width:100%}.setup-mode button{flex:1}.setup-caption{display:none}}button:focus-visible{outline:3px solid rgb(49 95 75 / 35%);outline-offset:2px}h1,h2,h3,p{margin-top:0}.app-shell{width:min(1480px,100%);margin:0 auto;padding:16px 24px 28px}.app-header{display:flex;align-items:center;justify-content:space-between;min-height:58px;gap:20px;border-bottom:1px solid var(--line-strong);padding-bottom:13px}.brand-lockup{display:flex;align-items:center;min-width:0;gap:11px}.brand-mark{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border:1px solid #292b2d;border-radius:7px;background:linear-gradient(145deg,rgb(255 255 255 / 18%),transparent 42%),#191b1d;color:#f0dfb6;box-shadow:0 7px 18px #17191b26}.spy-mark{position:relative;display:block;overflow:visible}.spy-hat,.wordmark-hat{position:absolute;z-index:2;border-radius:3px 3px 1px 1px;background:#d7bc7e;box-shadow:inset 0 -3px #8f6a2e;transform:rotate(-4deg)}.spy-hat{top:8px;left:10px;width:20px;height:9px}.spy-hat:after,.wordmark-hat:after{position:absolute;height:3px;border-radius:2px;background:#ead8ab;content:""}.spy-hat:after{top:8px;left:-5px;width:30px}.spy-hat i{position:absolute;right:3px;bottom:2px;left:3px;height:2px;background:#232527}.spy-eye{position:absolute;top:23px;width:8px;height:6px;overflow:hidden;border-radius:50%;background:#f9f8f2}.spy-eye.left{left:10px}.spy-eye.right{right:10px}.spy-eye i,.wordmark-eyes i{display:block;border-radius:50%;background:#151719;animation:spy-look 4.2s ease-in-out infinite}.spy-eye i{width:3px;height:3px;margin:2px 0 0 2px}.wordmark-o{position:relative;display:inline-block;margin:0 .01em}.wordmark-hat{top:-.22em;left:.05em;width:.52em;height:.22em}.wordmark-hat:after{top:.18em;left:-.12em;width:.76em;height:.08em}.wordmark-eyes{position:absolute;top:.47em;left:.17em;display:flex;gap:.08em}.wordmark-eyes i{width:.1em;height:.1em}.header-actions{display:flex;align-items:center;gap:8px}.sound-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:6px;background:#ffffff85;color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.sound-button:hover{border-color:var(--brass);background:#fff;transform:translateY(-1px)}.brand-lockup h1{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:0;line-height:1.05}.brand-lockup p{margin:3px 0 0;color:var(--muted);font-size:.76rem;font-weight:600;letter-spacing:0}.primary-button,.secondary-button,.icon-button,.resign-button{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.primary-button{min-height:40px;gap:8px;border:1px solid #151719;background:#191b1d;color:#fff;padding:8px 14px;font-weight:750;box-shadow:0 5px 14px #15171924}.primary-button:hover{background:#303335;transform:translateY(-1px);box-shadow:0 7px 18px #1517192e}.primary-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.secondary-button{min-height:40px;border:1px solid var(--line-strong);background:#fff;color:var(--ink);padding:8px 14px;font-weight:700}.secondary-button:hover{border-color:#777a76;background:#f3f4f1}.icon-button{width:34px;height:34px;border:1px solid var(--line);background:#ffffffb3;color:var(--muted)}.icon-button:hover{border-color:var(--line-strong);color:var(--ink)}.new-game-button{flex:0 0 auto}.match-bar{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(176px,.8fr) minmax(190px,.9fr) minmax(130px,.6fr);width:100%;min-height:66px;border-bottom:1px solid var(--line-strong);color:var(--ink)}.turn-status,.move-clock,.material-status,.turn-counts{display:flex;align-items:center;min-width:0;gap:10px;padding:10px 16px;border-right:1px solid var(--line)}.turn-status{padding-left:0}.turn-status small,.move-clock span,.material-status span,.turn-counts span{display:block;color:var(--muted);font-size:.66rem;font-weight:750;letter-spacing:0;line-height:1.15;text-transform:uppercase}.turn-status strong,.material-status strong{display:block;margin-top:2px;font-size:.94rem;font-weight:800;line-height:1.15}.turn-status em{display:block;max-width:34ch;margin-top:2px;overflow:hidden;color:var(--muted);font-size:.68rem;font-style:normal;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.turn-stone,.side-stone{position:relative;display:block;flex:0 0 auto;border-radius:50%;box-shadow:inset 0 -3px 4px #00000040,inset 0 2px 3px #ffffff5c,0 3px 7px #00000029}.turn-stone{width:28px;height:28px}.side-stone{width:31px;height:31px}.turn-stone:after,.side-stone:after{position:absolute;inset:16%;border:1px solid rgb(255 255 255 / 26%);border-radius:inherit;content:""}.turn-stone.white,.side-stone.white{border:1px solid #bcae8e;background:radial-gradient(circle at 32% 25%,#fff 0 18%,#e6ddca 45%,#a89675)}.turn-stone.black,.side-stone.black{border:1px solid #050607;background:radial-gradient(circle at 32% 24%,#6f7172 0 9%,#282a2c 42%,#08090a)}.move-clock svg,.material-status svg{flex:0 0 auto;color:var(--brass)}.move-clock strong{display:block;margin-top:1px;font-size:1.12rem;font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.move-clock i{margin-left:auto;border:1px solid var(--line);border-radius:999px;color:var(--muted);padding:3px 7px;font-size:.62rem;font-style:normal;font-weight:750;text-transform:uppercase}.move-clock.urgent{background:var(--danger-soft);color:var(--danger)}.move-clock.urgent svg,.move-clock.urgent i{color:var(--danger)}.move-clock.urgent i{border-color:#9b403659}.material-status small{margin-left:auto;color:var(--faint);font-size:.68rem;font-weight:650;white-space:nowrap}.turn-counts{justify-content:flex-end;padding-right:0;border-right:0}.turn-counts div{min-width:42px;text-align:right}.turn-counts strong{display:block;margin-top:2px;font-size:.92rem;font-variant-numeric:tabular-nums}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;border:1px solid rgb(155 64 54 / 45%);border-radius:6px;background:var(--danger-soft);color:#7d3029;padding:9px 10px 9px 12px;font-size:.84rem;font-weight:700}.error-banner button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:4px;background:transparent;color:inherit;cursor:pointer}.notice-region{position:fixed;z-index:60;top:18px;right:max(170px,calc((100vw - 1480px)/2 + 170px));width:min(390px,calc(100vw - 32px));pointer-events:none}.notice-toast{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;overflow:hidden;border:1px solid #2c2f31;border-radius:8px;background:#fcfcf9f5;padding:11px;box-shadow:0 22px 60px #15171938;pointer-events:auto;animation:notice-enter .32s cubic-bezier(.2,.8,.2,1) both;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.notice-toast.capture{border-color:var(--brass)}.notice-toast.timeout{border-color:var(--danger)}.notice-toast.rule{border-color:var(--green)}.notice-copy{min-width:0}.notice-copy strong{display:block;font-size:.9rem;font-weight:800}.notice-copy p{margin:3px 0 0;color:var(--muted);font-size:.78rem;line-height:1.32}.notice-piece,.notice-icon{display:grid;place-items:center;width:62px;height:62px;overflow:hidden;border:1px solid rgb(170 129 61 / 50%);border-radius:7px;background:linear-gradient(135deg,rgb(255 255 255 / 80%),transparent 45%),#ebece8}.moment-layer{position:fixed;z-index:90;inset:0;display:grid;place-items:center;background:#12141533;padding:18px;animation:backdrop-enter .18s ease-out both}.moment-toast{position:relative;display:grid;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;width:min(480px,100%);min-height:150px;gap:17px;overflow:hidden;border:1px solid #252729;border-radius:8px;background:linear-gradient(115deg,rgb(213 181 113 / 16%),transparent 48%),#fbfbf7;padding:20px 18px 20px 20px;box-shadow:0 30px 90px #0a0c0d4d;animation:moment-enter .36s cubic-bezier(.18,.85,.22,1) both}.moment-layer.check .moment-toast{border-color:#9b4036}.moment-layer.reveal .moment-toast{border-color:var(--brass)}.moment-layer.win .moment-toast{border-color:var(--green)}.moment-visual{position:relative;display:grid;place-items:center;width:96px;height:108px;color:var(--brass)}.moment-visual .piece-art{z-index:2;width:92%;height:92%;filter:drop-shadow(0 8px 6px rgb(0 0 0 / 27%));animation:moment-piece .62s cubic-bezier(.2,.85,.2,1) both}.moment-halo{position:absolute;width:70px;height:70px;border:1px solid rgb(170 129 61 / 45%);border-radius:50%;animation:moment-halo 1.5s ease-out infinite}.moment-copy{min-width:0}.moment-copy>span{color:var(--brass);font-size:.65rem;font-weight:850;text-transform:uppercase}.moment-copy h2{margin:4px 0 5px;font-size:1.65rem;line-height:1}.moment-copy p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.38}.moment-close{align-self:start;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.moment-close:hover{background:#ecece7;color:var(--ink)}.moment-progress{position:absolute;right:0;bottom:0;left:0;height:4px;background:var(--brass);transform-origin:left;animation:moment-progress 2.8s linear both}.moment-layer.check .moment-progress{background:var(--danger)}.moment-layer.persistent .moment-progress{display:none}.notice-piece.black{background:linear-gradient(135deg,rgb(255 255 255 / 13%),transparent 45%),#232527}.notice-piece .piece-art{width:82%;height:82%;animation:captured-piece-reveal .72s cubic-bezier(.22,1,.36,1) both}.notice-icon{background:var(--green-soft);color:var(--green)}.king-reveal-strip{display:grid;grid-template-columns:auto minmax(190px,.65fr) 1fr;align-items:center;gap:14px;margin-top:14px;border:1px solid rgb(170 129 61 / 55%);border-radius:8px;background:linear-gradient(90deg,rgb(210 177 111 / 15%),transparent 42%),var(--surface);padding:12px 14px;box-shadow:0 8px 24px #27282612;animation:reveal-panel-enter .26s ease-out both}.reveal-emblem{display:grid;place-items:center;width:42px;height:42px;border-radius:6px;background:#1d1f21;color:#edd9aa}.king-reveal-strip p{margin:0 0 2px;color:var(--brass);font-size:.66rem;font-weight:800;text-transform:uppercase}.king-reveal-strip h2{margin:0;font-size:.96rem;font-weight:800}.king-reveal-strip>div>span{display:block;margin-top:2px;color:var(--muted);font-size:.72rem}.reveal-choice-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px}.reveal-choice-row button{display:flex;align-items:center;justify-content:center;min-height:38px;gap:6px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);cursor:pointer;font-size:.78rem;font-weight:800;transition:border-color .15s ease,background .15s ease,transform .15s ease}.reveal-choice-row button:hover{border-color:var(--brass);background:#fffaf0;transform:translateY(-1px)}.candidate-token{width:17px;height:17px;border-radius:50%}.candidate-token.white{border:1px solid #bcae8e;background:radial-gradient(circle at 32% 25%,#fff,#b8a684)}.candidate-token.black{border:1px solid #050607;background:radial-gradient(circle at 32% 25%,#676a6b,#08090a 72%)}.play-layout{display:grid;grid-template-columns:minmax(220px,260px) minmax(460px,650px) minmax(220px,260px);grid-template-areas:"black board white";align-items:start;justify-content:center;width:100%;gap:18px;margin-top:16px}.inventory-panel{min-width:0;max-height:min(650px,calc(100vh - 178px));overflow:auto;border:1px solid var(--line);border-top:3px solid #a7aaa6;border-radius:8px;background:#fafaf7;padding:13px;box-shadow:0 12px 34px #1e201f14;scrollbar-color:#c1c3bf transparent;scrollbar-width:thin;transition:border-color .18s ease,box-shadow .18s ease}.inventory-panel.black{grid-area:black}.inventory-panel.white{grid-area:white}.inventory-panel.active{border-top-color:var(--green);box-shadow:0 14px 38px #315f4b21}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:11px}.player-title{display:flex;align-items:center;min-width:0;gap:9px}.player-title h2{margin:0;font-size:.98rem;font-weight:800}.player-title div>span{display:block;margin-top:1px;color:var(--muted);font-size:.67rem;font-weight:650}.inventory-panel.active .player-title div>span{color:var(--green);font-weight:800}.resign-button{min-height:31px;gap:6px;border:1px solid transparent;background:transparent;color:var(--muted);padding:5px 7px;font-size:.7rem;font-weight:700}.resign-button:hover:not(:disabled){border-color:#9b403640;background:var(--danger-soft);color:var(--danger)}.resign-button:disabled{cursor:not-allowed;opacity:.35}.player-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.player-metrics div{min-width:0;padding:9px 7px;border-right:1px solid var(--line)}.player-metrics div:first-child{padding-left:0}.player-metrics div:last-child{padding-right:0;border-right:0}.player-metrics span{display:block;overflow:hidden;color:var(--muted);font-size:.58rem;font-weight:750;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.player-metrics strong{display:block;margin-top:2px;font-size:1rem;font-variant-numeric:tabular-nums}.pawn-election-meter{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.pawn-election-meter>div:first-child{display:flex;align-items:baseline;min-width:0;gap:7px}.pawn-election-meter span{color:var(--muted);font-size:.58rem;font-weight:800;text-transform:uppercase}.pawn-election-meter strong{font-size:.9rem;font-variant-numeric:tabular-nums}.pawn-election-pips{display:flex;flex:0 0 auto;gap:5px}.pawn-election-pips i{display:block;width:19px;height:7px;border:1px solid var(--line-strong);border-radius:999px;background:#e1e2de}.pawn-election-pips i.available{border-color:var(--brass);background:linear-gradient(90deg,var(--brass),var(--brass-light));box-shadow:0 2px 5px #aa813d38}.pawn-election-meter.remaining-0 span,.pawn-election-meter.remaining-0 strong{color:var(--danger)}.piece-section{padding-top:11px}.piece-section+.piece-section{margin-top:10px;border-top:1px solid var(--line)}.piece-section h3{margin:0 0 7px;color:var(--muted);font-size:.63rem;font-weight:800;text-transform:uppercase}.piece-count-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px}.piece-count{display:flex;align-items:center;min-width:0;gap:2px}.piece-count-art{display:grid;place-items:center;width:38px;height:42px;overflow:hidden}.piece-count-art .piece-art{width:100%;height:100%}.piece-count-number{color:var(--muted);font-size:.67rem;font-variant-numeric:tabular-nums;font-weight:750}.empty-strip{margin:0;color:var(--faint);font-size:.72rem}.revealed-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.revealed-chip{display:grid;place-items:center;min-width:0;border:1px solid var(--line);border-radius:5px;background:#ffffffa6;padding:3px 2px 4px}.revealed-chip>span{display:block;width:28px;height:30px}.revealed-chip .piece-art{width:100%;height:100%}.revealed-chip strong{color:var(--muted);font-size:.58rem;font-weight:800}.board-stage{grid-area:board;width:min(100%,650px,calc(100vh - 178px));min-width:0;aspect-ratio:1;margin:0 auto;perspective:1100px}.board-frame{position:relative;width:100%;height:100%;padding:clamp(8px,1.15vw,13px);border:1px solid #050607;border-radius:4px;background:linear-gradient(120deg,rgb(255 255 255 / 11%),transparent 24% 71%,rgb(255 255 255 / 6%)),repeating-linear-gradient(92deg,#161719 0 4px,#252729 5px 7px,#0d0e0f 8px 13px);box-shadow:0 28px 60px #181a1b3d,0 4px 10px #181a1b2e,inset 0 0 0 2px #ffffff12,inset 0 0 0 5px #00000059}.board-frame:before,.board-frame:after{position:absolute;z-index:3;width:4px;height:4px;border:1px solid #6e5429;border-radius:50%;background:var(--brass-light);box-shadow:0 1px 1px #00000073;content:""}.board-frame:before{top:4px;left:4px}.board-frame:after{right:4px;bottom:4px}.board{display:grid;grid-template-columns:repeat(8,1fr);width:100%;height:100%;overflow:hidden;border:1px solid #987538;background:#242628;box-shadow:inset 0 0 0 1px #ffffff2e}.square{position:relative;display:grid;place-items:center;min-width:0;overflow:hidden;border:0;padding:0;aspect-ratio:1;cursor:pointer;transition:filter .12s ease,box-shadow .16s ease}.square:before{position:absolute;inset:0;background:linear-gradient(145deg,rgb(255 255 255 / 11%),transparent 38% 72%,rgb(0 0 0 / 10%));content:"";pointer-events:none}.square.light{background-color:var(--light-marble);background-image:radial-gradient(ellipse at 18% 16%,rgb(255 255 255 / 85%),transparent 32%),linear-gradient(118deg,transparent 0 35%,rgb(143 147 142 / 16%) 36% 37%,transparent 38% 64%,rgb(164 167 162 / 12%) 65% 66%,transparent 67%),linear-gradient(32deg,transparent 0 46%,rgb(255 255 255 / 55%) 47% 49%,transparent 50%),linear-gradient(145deg,#f7f8f5,#e3e5e1 52%,#f1f2ef)}.square.dark{background-color:var(--dark-marble);background-image:radial-gradient(ellipse at 24% 18%,rgb(255 255 255 / 12%),transparent 30%),linear-gradient(122deg,transparent 0 32%,rgb(255 255 255 / 7%) 33% 35%,transparent 36% 66%,rgb(255 255 255 / 5%) 67% 68%,transparent 69%),linear-gradient(29deg,transparent 0 48%,rgb(0 0 0 / 24%) 49% 51%,transparent 52%),linear-gradient(145deg,#353739,#1f2022 56%,#2a2b2d)}.square.pattern-1{background-position:18% 12%,30% 0,0 20%,0 0}.square.pattern-2{background-position:76% 70%,60% 30%,22% 0,0 0;background-size:auto,130% 130%,140% 140%,auto}.square.pattern-3{background-position:42% 82%,0 50%,50% 50%,0 0;background-size:auto,115% 115%,120% 120%,auto}.square:hover{filter:brightness(1.055)}.square.last-from,.square.last-to{box-shadow:inset 0 0 0 999px #b78b392b}.square.last-to{box-shadow:inset 0 0 0 999px #b78b393d,inset 0 0 0 2px #d2b16f94}.coord{position:absolute;z-index:4;color:#ffffff7d;font-size:clamp(.48rem,.68vw,.66rem);font-weight:800;line-height:1;pointer-events:none}.square.light .coord{color:#2022237a}.rank-coord{top:5px;left:5px}.file-coord{right:5px;bottom:5px}.token{position:relative;z-index:2;display:grid;place-items:center;width:70%;aspect-ratio:1;line-height:1;will-change:transform,opacity,filter}.token.fluid{border-radius:50%}.token.fluid:before,.token.fluid:after{position:absolute;border-radius:inherit;content:"";pointer-events:none}.token.fluid:before{inset:8%;border:1px solid rgb(255 255 255 / 26%);box-shadow:inset 0 0 0 2px #00000014}.token.fluid:after{inset:19%;border:1px solid rgb(255 255 255 / 13%)}.token.fluid.white{border:2px solid #b4a580;background:radial-gradient(circle at 30% 23%,#ffffff 0 11%,transparent 27%),radial-gradient(circle at 40% 34%,#fffef8 0 20%,#dfd4bd 56%,#998665);box-shadow:inset 0 -7px 10px #57452a40,inset 0 4px 7px #ffffffb8,0 6px 9px #00000047}.token.fluid.black{border:2px solid #050607;background:radial-gradient(circle at 29% 22%,#75787a 0 7%,transparent 22%),radial-gradient(circle at 40% 34%,#404346 0 19%,#202225 55%,#050607);box-shadow:inset 0 -7px 10px #000000ad,inset 0 4px 7px #ffffff29,0 6px 9px #0000005c}.token-glint{position:absolute;top:17%;left:21%;width:30%;height:16%;border-radius:50%;background:#fff3;filter:blur(1px);transform:rotate(-28deg)}.token.revealed{width:88%;height:88%;filter:drop-shadow(0 6px 4px rgb(0 0 0 / 30%));pointer-events:none}.piece-art{display:block;width:100%;height:100%;overflow:visible}.piece-art .piece-outline{stroke-linecap:round;stroke-linejoin:round;stroke-width:2.8px}.piece-art .piece-detail{fill:none;stroke:#0a0a0a8c;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px}.piece-art.black .piece-detail{stroke:#ebe4d757}.piece-art .piece-cast-shadow{fill:#00000040}.piece-art.small .piece-outline{stroke-width:2.4px}.token.selected{filter:drop-shadow(0 0 8px rgb(222 188 117 / 90%))}.token.fluid.selected{outline:3px solid var(--brass-light);outline-offset:3px}.token.moved-now{animation:piece-travel .36s cubic-bezier(.2,.75,.22,1) both}.token.revealed-now{animation:piece-collapse .64s cubic-bezier(.2,.8,.2,1) both}.token.capture-landing{animation:piece-capture-land .43s cubic-bezier(.18,.8,.22,1) both}.token.capture-landing.capture-knight{animation:knight-chomp .62s cubic-bezier(.2,.82,.2,1) both}.token.capture-landing.capture-rook{animation:rook-stomp .58s cubic-bezier(.18,.84,.2,1) both}.token.capture-landing.capture-bishop{animation:bishop-slice .56s cubic-bezier(.18,.84,.2,1) both}.token.capture-landing.capture-queen{animation:queen-sweep .65s cubic-bezier(.18,.84,.2,1) both}.token.capture-landing.capture-pawn{animation:pawn-bonk .5s cubic-bezier(.18,.84,.2,1) both}.token.capture-landing.capture-king{animation:king-drop .62s cubic-bezier(.18,.84,.2,1) both}.capture-flourish,.capture-burst{position:absolute;z-index:5;inset:-8%;pointer-events:none}.capture-flourish i,.capture-burst i{position:absolute;display:block;width:5px;height:5px;border-radius:50%;background:var(--brass-light);box-shadow:0 0 0 1px #ffffff7f;animation:capture-fragment .7s ease-out both}.capture-flourish i:nth-child(1){top:18%;right:5%;--fragment-x: 22px;--fragment-y: -18px}.capture-flourish i:nth-child(2){right:-2%;bottom:24%;--fragment-x: 28px;--fragment-y: 9px;animation-delay:45ms}.capture-flourish i:nth-child(3){bottom:4%;left:20%;--fragment-x: -15px;--fragment-y: 18px;animation-delay:80ms}.capture-burst i:nth-child(1){top:20%;left:18%;--fragment-x: -24px;--fragment-y: -20px}.capture-burst i:nth-child(2){top:15%;right:17%;--fragment-x: 25px;--fragment-y: -17px}.capture-burst i:nth-child(3){right:12%;bottom:14%;--fragment-x: 22px;--fragment-y: 20px}.capture-burst i:nth-child(4){bottom:12%;left:14%;--fragment-x: -22px;--fragment-y: 17px}.capture-knight .capture-flourish:before,.capture-knight .capture-flourish:after{position:absolute;right:-10%;width:34%;height:22%;border:2px solid #d2b16f;content:"";transform-origin:left center}.capture-knight .capture-flourish:before{top:33%;border-bottom:0;border-radius:50% 50% 0 0;animation:chomp-upper .48s ease-in-out both}.capture-knight .capture-flourish:after{top:52%;border-top:0;border-radius:0 0 50% 50%;animation:chomp-lower .48s ease-in-out both}.capture-bishop .capture-flourish:before{position:absolute;top:48%;left:-12%;width:125%;height:2px;background:linear-gradient(90deg,transparent,#f4e1ad 24%,#aa813d 75%,transparent);content:"";transform:rotate(-45deg) scaleX(0);animation:bishop-flash .48s ease-out both}.capture-rook .capture-flourish i{top:auto;bottom:7%;background:#b9b3a6}.token.revealed-now.capture-landing{animation:piece-collapse-capture .7s cubic-bezier(.18,.8,.22,1) both}.move-marker{position:absolute;z-index:3;width:17%;aspect-ratio:1;border:1px solid rgb(255 255 255 / 42%);border-radius:50%;background:#264d3cc2;box-shadow:0 2px 5px #0000003d;pointer-events:none;animation:marker-enter .16s ease-out both}.square.capture .move-marker{width:72%;border:3px solid rgb(162 62 51 / 82%);background:transparent;box-shadow:inset 0 0 0 1px #ffffff47,0 0 14px #9b403647}.impact-ring{position:absolute;z-index:5;width:30%;aspect-ratio:1;border:2px solid var(--brass-light);border-radius:50%;opacity:0;pointer-events:none;animation:capture-ring .62s ease-out both}.history-panel{display:grid;grid-template-columns:180px 1fr;gap:18px;margin-top:18px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);padding:14px 0}.history-heading{display:flex;align-items:flex-start;gap:9px;color:var(--muted)}.history-heading h2{margin:0;color:var(--ink);font-size:.88rem;font-weight:800}.history-heading p{margin:2px 0 0;font-size:.7rem}.history-empty{align-self:center;color:var(--faint);font-size:.78rem}.history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px;margin:0;padding:0;list-style:none}.history-list li{display:grid;grid-template-columns:25px 1fr;min-width:0;gap:8px;border-bottom:1px solid rgb(209 211 207 / 70%);padding:4px 0 6px}.history-list li>span{color:var(--brass);font-size:.64rem;font-variant-numeric:tabular-nums;font-weight:800}.history-list p{margin:0;overflow:hidden;color:#4e514e;font-size:.72rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:#131516a8;padding:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:backdrop-enter .18s ease-out both}.modal{width:min(590px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid #242628;border-radius:8px;background:linear-gradient(135deg,rgb(255 255 255 / 76%),transparent 38%),#f4f5f2;padding:18px;box-shadow:0 30px 90px #00000059;animation:modal-enter .24s cubic-bezier(.2,.8,.2,1) both}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:13px}.modal-eyebrow{display:flex;align-items:center;gap:5px;margin:0 0 4px;color:var(--brass);font-size:.66rem;font-weight:800;text-transform:uppercase}.modal-heading h2{margin:0;font-size:1.22rem;font-weight:800}.modal-heading h2 span{color:var(--muted);font-size:.82rem;font-weight:500}.choice-section{padding-top:15px}.choice-section+.choice-section{margin-top:12px;border-top:1px solid var(--line)}.choice-section h3{margin:0 0 9px;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.choice-grid.pieces button{position:relative;display:grid;place-items:center;min-width:0;min-height:116px;border:1px solid var(--line);border-radius:7px;background:#ffffffb3;color:var(--ink);cursor:pointer;padding:8px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.choice-grid.pieces button:hover{border-color:var(--brass);background:#fff;transform:translateY(-2px);box-shadow:0 8px 22px #2d2b241a}.choice-grid.pieces button.active{border-color:var(--brass);background:#fffaf0;box-shadow:inset 0 0 0 1px #aa813d47,0 7px 20px #aa813d21}.choice-piece-art{display:block;width:64px;height:70px}.choice-piece-art .piece-art{width:100%;height:100%}.choice-grid.pieces strong{font-size:.76rem;font-weight:800}.choice-grid.pieces i{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--green);color:#fff;opacity:0;transform:scale(.7);transition:opacity .15s ease,transform .15s ease}.choice-grid.pieces button.active i{opacity:1;transform:scale(1)}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;border-top:1px solid var(--line);padding-top:14px}@keyframes piece-travel{0%{filter:drop-shadow(0 8px 5px rgb(0 0 0 / 38%));transform:translate(var(--move-x, 0),var(--move-y, 0)) scale(.98)}72%{transform:translate(0) scale(1.035)}to{transform:translate(0) scale(1)}}@keyframes piece-collapse{0%{opacity:.2;filter:brightness(1.8) drop-shadow(0 0 12px rgb(222 188 117 / 92%));transform:translate(var(--move-x, 0),var(--move-y, 0)) rotateY(82deg) scale(.72)}46%{opacity:1;filter:brightness(1.35) drop-shadow(0 0 15px rgb(222 188 117 / 88%));transform:translate(0) rotateY(-12deg) scale(1.08)}74%{transform:translate(0) rotateY(5deg) scale(.98)}to{opacity:1;transform:translate(0) rotateY(0) scale(1)}}@keyframes piece-capture-land{0%{filter:brightness(1.4) drop-shadow(0 0 12px rgb(210 177 111 / 75%));transform:translate(var(--move-x, 0),var(--move-y, 0)) scale(.94)}68%{transform:translate(0) scale(1.12)}to{transform:translate(0) scale(1)}}@keyframes piece-collapse-capture{0%{opacity:.2;filter:brightness(1.9) drop-shadow(0 0 14px rgb(222 188 117 / 95%));transform:translate(var(--move-x, 0),var(--move-y, 0)) rotateY(85deg) scale(.7)}54%{opacity:1;transform:translate(0) rotateY(-10deg) scale(1.14)}to{opacity:1;transform:translate(0) rotateY(0) scale(1)}}@keyframes knight-chomp{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) rotate(-8deg) scale(.94)}48%{transform:translateY(-17%) rotate(7deg) scale(1.05)}70%{transform:translate(3%,1%) rotate(-3deg) scale(1.14,.92)}to{transform:translate(0) rotate(0) scale(1)}}@keyframes rook-stomp{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) scale(.96)}48%{transform:translateY(-20%) scale(1.04)}70%{transform:translateY(7%) scale(1.16,.82)}to{transform:translate(0) scale(1)}}@keyframes bishop-slice{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) rotate(-11deg) scale(.95)}55%{transform:translate(-4%,-4%) rotate(13deg) scale(1.09)}to{transform:translate(0) rotate(0) scale(1)}}@keyframes queen-sweep{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) rotate(-7deg) scale(.92)}48%{filter:brightness(1.25) drop-shadow(0 0 14px rgb(210 177 111 / 85%));transform:translate(-5%,-7%) rotate(9deg) scale(1.14)}to{transform:translate(0) rotate(0) scale(1)}}@keyframes pawn-bonk{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) scale(.96)}62%{transform:translateY(-4%) rotate(8deg) scale(1.12)}78%{transform:translateY(3%) rotate(-4deg) scale(.96)}to{transform:translate(0) rotate(0) scale(1)}}@keyframes king-drop{0%{transform:translate(var(--move-x, 0),var(--move-y, 0)) scale(.95)}55%{transform:translateY(-14%) scale(1.08)}76%{transform:translateY(5%) scale(1.1,.9)}to{transform:translate(0) scale(1)}}@keyframes capture-fragment{0%{opacity:0;transform:translate(0) scale(.4)}30%{opacity:1}to{opacity:0;transform:translate(var(--fragment-x),var(--fragment-y)) scale(1.3)}}@keyframes chomp-upper{0%,35%{opacity:0;transform:rotate(-32deg)}58%{opacity:1;transform:rotate(-32deg)}76%,to{opacity:0;transform:rotate(4deg)}}@keyframes chomp-lower{0%,35%{opacity:0;transform:rotate(32deg)}58%{opacity:1;transform:rotate(32deg)}76%,to{opacity:0;transform:rotate(-4deg)}}@keyframes bishop-flash{0%,24%{opacity:0;transform:rotate(-45deg) scaleX(0)}52%{opacity:1;transform:rotate(-45deg) scaleX(1)}to{opacity:0;transform:rotate(-45deg) scaleX(1.12)}}@keyframes capture-ring{0%{opacity:.85;transform:scale(.45)}to{opacity:0;transform:scale(3.4)}}@keyframes marker-enter{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@keyframes notice-enter{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes captured-piece-reveal{0%{opacity:0;filter:blur(3px);transform:translateY(-16px) rotate(-8deg) scale(1.15)}55%{opacity:1;filter:blur(0);transform:translateY(3px) rotate(2deg) scale(.94)}to{transform:translateY(0) rotate(0) scale(1)}}@keyframes reveal-panel-enter{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-enter{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spy-look{0%,18%,to{transform:translate(0)}30%,47%{transform:translate(2px)}58%,76%{transform:translate(-1px)}}@keyframes moment-enter{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes moment-piece{0%{opacity:0;filter:brightness(1.7) blur(3px);transform:translateY(16px) rotateY(70deg) scale(.72)}58%{opacity:1;filter:brightness(1.2) blur(0);transform:translateY(-4px) rotateY(-8deg) scale(1.08)}to{transform:translateY(0) rotateY(0) scale(1)}}@keyframes moment-halo{0%{opacity:.65;transform:scale(.55)}to{opacity:0;transform:scale(1.45)}}@keyframes moment-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:1180px){.app-shell{padding:14px 18px 24px}.match-bar{grid-template-columns:1.25fr .85fr .9fr}.turn-counts{display:none}.material-status{border-right:0;padding-right:0}.play-layout{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"board board" "black white"}.board-stage{width:min(680px,100%,calc(100vh - 174px))}.inventory-panel{max-height:none}}@media(max-width:720px){.app-shell{padding:12px 12px 20px}.app-header{min-height:52px;padding-bottom:10px}.brand-mark{width:36px;height:36px}.brand-lockup h1{font-size:1.12rem}.brand-lockup p{font-size:.66rem}.new-game-button{min-height:36px;padding:7px 10px;font-size:.78rem}.sound-button{width:36px;height:36px}.match-bar{grid-template-columns:1fr 1fr;min-height:0}.turn-status,.move-clock,.material-status{padding:9px 10px}.turn-status{padding-left:0}.move-clock{border-right:0;padding-right:0}.material-status{grid-column:1 / -1;border-top:1px solid var(--line);padding-left:0}.move-clock i{display:none}.king-reveal-strip{grid-template-columns:auto 1fr}.reveal-choice-row{grid-column:1 / -1}.play-layout{grid-template-columns:1fr;grid-template-areas:"board" "black" "white";gap:12px;margin-top:12px}.board-stage{width:100%}.inventory-panel{padding:12px}.piece-count-strip{grid-template-columns:repeat(6,minmax(0,1fr))}.piece-count{display:grid;place-items:center}.piece-count-art{width:34px;height:38px}.revealed-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.history-panel{grid-template-columns:1fr;gap:9px}.history-list{grid-template-columns:1fr}.notice-region{top:62px;right:10px;width:calc(100vw - 20px)}.notice-piece,.notice-icon{width:54px;height:54px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.moment-toast{grid-template-columns:78px minmax(0,1fr) auto;min-height:128px;gap:11px;padding:15px 12px 15px 14px}.moment-visual{width:72px;height:88px}.moment-copy h2{font-size:1.32rem}}@media(max-width:430px){.brand-lockup p,.material-status small,.resign-button span,.brand-mark{display:none}.app-header{gap:8px}.header-actions{gap:5px;flex-shrink:0}.resign-button{width:31px;padding:5px}.turn-status strong,.material-status strong{font-size:.82rem}.turn-stone{width:24px;height:24px}.piece-count-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.revealed-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.board-frame{padding:7px}.coord{font-size:.48rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.app-shell{width:min(1840px,100%)}.play-layout{grid-template-columns:190px minmax(0,1120px) 190px;grid-template-areas:"black board white";gap:20px}.board-stage{width:min(100%,1120px)}.inventory-panel{max-height:none;position:sticky;top:16px;padding:12px;box-shadow:none}.inventory-panel .panel-heading{flex-wrap:wrap}.inventory-panel .player-metrics{grid-template-columns:1fr;gap:5px}.inventory-panel .player-metrics>div{display:flex;align-items:center;justify-content:space-between;padding:0;border:0}.inventory-panel .player-metrics span{overflow:visible;text-overflow:clip}.inventory-panel .resign-button span{display:none}.inventory-panel .pawn-election-meter{flex-wrap:wrap;gap:7px}.inventory-panel .piece-count-strip{gap:6px 2px}.inventory-panel .piece-count-art{width:38px;height:46px;flex-shrink:0}.revealed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.board-frame{padding:2.9%;border-radius:6px;border:2px solid #263d36;background:linear-gradient(135deg,#29483e,#152b27 48%,#213c32);box-shadow:0 24px 55px #16271d2e,0 6px #172921,0 9px #a58b55,0 12px 18px #16271d33,inset 0 0 0 2px #d5bb7b}.board-frame:before,.board-frame:after{inset:7px;width:auto;height:auto;border-radius:0;border:1px solid #b69a5d;background:none;box-shadow:none;pointer-events:none}.board-frame:after{inset:12px;border-color:#d5bf8b44}.board-ornament{position:absolute;z-index:4;width:4.5%;height:4.5%;color:#d6bf7f;pointer-events:none}.corner-0{top:.3%;left:.3%}.corner-1{top:.3%;right:.3%;transform:rotate(90deg)}.corner-2{bottom:.3%;right:.3%;transform:rotate(180deg)}.corner-3{bottom:.3%;left:.3%;transform:rotate(270deg)}.board{position:relative;grid-template-rows:repeat(8,minmax(0,1fr));border:1px solid #c7b580;box-shadow:0 0 0 3px #0d211e,0 0 0 4px #c7b58066}.square{isolation:auto}.square.light{background-image:linear-gradient(#fcfff75c,#fcfff75c),url(/art/pearl-marble.png);background-size:100%,520%;background-color:#e6e9dc}.square.dark{background-image:linear-gradient(#0b171be6,#0d191de6),url(/art/pearl-marble.png);background-size:100%,520%;background-color:#1c282b}.square.pattern-0{background-position:center,0 15%}.square.pattern-1{background-position:center,37% 72%}.square.pattern-2{background-position:center,80% 22%}.square.pattern-3{background-position:center,100% 90%}.square:before{background:none;box-shadow:inset 0 0 0 1px #d1c9ab1a,inset 2px 2px 7px #00000007}.square.last-to{z-index:6;overflow:visible}.square.last-from{box-shadow:inset 0 0 0 2px #ccb572aa}.coord{z-index:8;font-size:.7rem;pointer-events:none}.square.light .coord{color:#48564dcc}.square.dark .coord{color:#dce5d3bb}.piece-travel{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:4}.piece-travel.travelling{animation:sculpture-travel 1.25s cubic-bezier(.36,.05,.26,1) both}.token.revealed{display:block;width:96%;height:96%;filter:drop-shadow(0 3px 2px #09100e4d)}.token.fluid{width:67%;container-type:inline-size}.token.fluid.white{border-color:#b5ad87;background:radial-gradient(circle at 33% 25%,#fffff7,#dbe3ce 50%,#829588);box-shadow:inset 0 -4px 7px #243c3455,inset 0 2px 5px #fff,0 5px 7px #0c19174d}.token.fluid.black{border-color:#6e837b;background:radial-gradient(circle at 33% 25%,#667d7c,#223b3d 50%,#101b22);box-shadow:inset 0 -4px 7px #001215aa,inset 0 2px 5px #cfebdf33,0 5px 7px #0c191755}.token-mystery{position:relative;z-index:2;font-family:inherit;font-size:43cqi;font-weight:500;line-height:1;color:#316d65;text-shadow:0 0 8px #efffe1,0 0 16px #d7ffc3aa;animation:mystery-breathe 5s ease-in-out infinite}.black .token-mystery{color:#ebd7a8;text-shadow:0 0 7px #e8d7a477,0 0 15px #c9a75b55}.token.revealed-now{animation:sculpture-reveal .95s cubic-bezier(.2,.75,.2,1) both}.board .token.capture-landing{animation:sculpture-land .4s .95s ease-out both}.board .token.revealed-now.capture-landing{animation:sculpture-reveal .95s ease-out both}.capture-flourish:before,.capture-flourish:after{display:none}.captured-ghost{position:absolute;inset:5%;z-index:3;pointer-events:none;animation:captured-curtsy 1.45s ease-in both}.capture-flourish i,.capture-burst i,.impact-ring{animation-delay:1s!important}.sculpture{min-width:0;min-height:0;overflow:visible}.sculpture g{transform-box:view-box}.board .horse-figure{transform-origin:80px 160px;animation:horse-breathe 5.7s ease-in-out infinite}.board .horse-tail{transform-origin:47px 98px;animation:tail-rest 7s ease-in-out infinite}.board .horse-ear{transform-origin:110px 42px;animation:ear-rest 8s ease-in-out infinite}.board .horse-eye{transform-box:fill-box;transform-origin:center;animation:horse-blink 6.5s ease-in-out infinite}.board .queen-robe{transform-origin:80px 82px;animation:robe-flow 5.8s ease-in-out infinite}.board .rook-banner{transform-origin:81px 20px;animation:banner-flow 6.5s ease-in-out infinite}.horse-leg.hind{transform-origin:60px 115px}.horse-leg.fore{transform-origin:108px 115px}.board .is-galloping .horse-figure{animation:horse-gallop 416ms ease-in-out 3}.board .is-galloping .horse-leg.near.fore,.board .is-galloping .horse-leg.far.hind{animation:fore-stride 416ms ease-in-out 3}.board .is-galloping .horse-leg.near.hind,.board .is-galloping .horse-leg.far.fore{animation:hind-stride 416ms ease-in-out 3}.board .is-galloping .horse-tail{animation:gallop-tail 416ms ease-in-out 3}.board .is-galloping .horse-head{transform-origin:105px 87px;animation:head-stride 416ms ease-in-out 3}.board .is-galloping .sculpture-plinth{opacity:.45;transition:opacity .25s}.music-button[aria-pressed=true]{background:#dbeadf;color:#2f6659;border-color:#749b86}.game-setup{gap:12px 18px}.capture-candidates{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0}.capture-candidates .choice-piece-art{width:90px;height:110px}.capture-choice-dialog .modal-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.capture-choice-dialog .modal-heading h2{font-size:1.3rem}.capture-clock{display:flex;align-items:center;gap:5px;color:#52655c;font-size:.75rem}.capture-computer{font-size:.8rem;color:#52655c}.capture-choice-dialog .secondary-button{display:inline-flex;align-items:center;gap:8px}.move-clock strong{font-size:1rem}@keyframes sculpture-travel{0%{transform:translate(var(--move-x),var(--move-y))}48%{transform:translate(calc(var(--move-x) * .45),calc(var(--move-y) * .45 - 6px))}to{transform:translate(0)}}@keyframes sculpture-reveal{0%{opacity:.2;filter:brightness(1.7) blur(3px);scale:.72}65%{opacity:1;filter:brightness(1.12) blur(0);scale:1.025}to{opacity:1;filter:none;scale:1}}@keyframes sculpture-land{0%,to{scale:1}45%{scale:1.03 .95}}@keyframes captured-curtsy{0%{opacity:.8;scale:.94}45%{opacity:1;scale:1;transform:rotate(0)}65%{opacity:.9;transform:rotate(-12deg);scale:.85}to{opacity:0;transform:translateY(18px) rotate(18deg);scale:.25}}@keyframes mystery-breathe{0%,to{opacity:.72}50%{opacity:1}}@keyframes horse-breathe{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-.6px) scaleY(1.008)}}.royalty-setup{width:min(640px,calc(100vw - 32px));text-align:center}.royalty-setup h2{font-size:1.5rem;line-height:1.2;margin:10px 0 18px}.royalty-setup p{line-height:1.5}.royalty-emblem{display:grid;place-items:center;margin:0 auto 14px;width:56px;height:56px;color:var(--accent, #69764d)}.royalty-rank{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin:22px 0}.royalty-rank button{min-width:0;padding:6px 2px;border:1px solid #b8beb2;border-radius:6px;background:#f5f6f3;color:#252c25;display:grid;justify-items:center;gap:5px}.royalty-rank button[aria-pressed=true]{outline:3px solid #56765d;outline-offset:1px;background:#e6efe3}.royalty-piece{display:block;width:100%;max-width:58px;aspect-ratio:1 / 1.2}.royalty-piece>*{width:100%;height:100%;object-fit:contain}.royalty-setup>.primary-button{margin:8px auto}.royalty-cancel{display:block;margin:14px auto 0;border:0;background:transparent;text-decoration:underline;font:inherit;color:inherit}@media(max-width:500px){.royalty-rank{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}}@keyframes tail-rest{0%,65%,to{transform:rotate(0)}75%{transform:rotate(8deg)}85%{transform:rotate(-5deg)}}@keyframes ear-rest{0%,78%,to{transform:rotate(0)}83%{transform:rotate(-10deg)}88%{transform:rotate(6deg)}}@keyframes horse-blink{0%,90%,96%,to{transform:scaleY(1)}93%{transform:scaleY(.12)}}@keyframes robe-flow{0%,to{transform:skew(-.8deg) scaleX(.99)}50%{transform:skew(1.2deg) scaleX(1.015)}}@keyframes banner-flow{0%,to{transform:skewY(-3deg)}50%{transform:skewY(4deg)}}@keyframes horse-gallop{0%,to{transform:translateY(0) rotate(0)}40%{transform:translateY(-5px) rotate(-2deg)}75%{transform:translateY(-1px) rotate(1deg)}}@keyframes fore-stride{0%,to{transform:rotate(14deg)}50%{transform:rotate(-16deg)}}@keyframes hind-stride{0%,to{transform:rotate(-14deg)}50%{transform:rotate(16deg)}}@keyframes gallop-tail{0%,to{transform:rotate(-6deg)}50%{transform:rotate(13deg)}}@keyframes head-stride{0%,to{transform:rotate(1deg)}50%{transform:rotate(-3deg)}}@media(max-width:1150px){.play-layout{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"board board" "black white"}.board-stage{width:min(100%,1000px)}.inventory-panel{position:static}.inventory-panel .panel-heading{flex-wrap:nowrap}.inventory-panel .player-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-panel .player-metrics>div{display:grid}.inventory-panel .resign-button span{display:inline}.revealed-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:720px){.play-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"board" "black" "white"}.app-shell{padding:10px 8px 20px}.board-frame{padding:3%}.board-frame:before{inset:3px}.board-frame:after{inset:5px}.coord{font-size:.5rem}.game-setup{gap:8px}.game-setup label{min-width:95px}.header-actions{gap:4px}}@media(max-width:470px){.app-header{flex-wrap:wrap;gap:9px}.brand-lockup{flex:1 0 100%}.header-actions{width:100%;justify-content:flex-end}.header-actions .music-button{margin-right:auto}.brand-mark{display:grid}.brand-lockup p{display:block}}@media(prefers-reduced-motion:reduce){.board *,.board *:before,.board *:after{animation:none!important;transition:none!important}.piece-travel{transform:none!important}.captured-ghost{display:none}}.paper-piece{min-width:0;min-height:0;overflow:visible;shape-rendering:geometricPrecision}.paper-piece g,.paper-piece .horse-ear{transform-box:view-box}.board .paper-piece .paper-character{transform-origin:80px 163px;animation:paper-breathe 7.8s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -2.2s)}.board .paper-piece .paper-eyes,.board .paper-piece .horse-eye{transform-box:fill-box;transform-origin:center;animation:paper-blink 7.1s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -3.4s)}.board .paper-piece .paper-pawn-head{transform-origin:81px 96px;animation:paper-pawn-think 11s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -1.6s)}.board .paper-piece .paper-scarf{transform-origin:94px 95px;animation:paper-scarf-float 6.5s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -2.3s)}.board .paper-piece .queen-robe{transform-origin:80px 86px;animation:paper-robe-sway 7.4s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -3s)}.board .paper-piece .rook-banner{transform-origin:82px 25px;animation:paper-banner-ripple 6.2s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -4.1s)}.board .paper-piece .paper-moustache{transform-origin:80px 79px;animation:paper-moustache-twitch 12s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -2.8s)}.board .paper-piece .horse-figure{transform-origin:80px 163px;animation:paper-horse-rest 8.3s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -2.6s)}.board .paper-piece .horse-tail{transform-origin:47px 100px;animation:paper-tail-flick 9.3s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -1.9s)}.board .paper-piece .horse-head{transform-origin:105px 86px}.board .paper-piece .horse-ear{transform-origin:109px 42px;animation:paper-ear-listen 10.8s ease-in-out infinite;animation-delay:var(--paper-idle-delay, -5.3s)}.board .paper-piece .paper-far-ear{animation-delay:var(--paper-idle-delay, -5.1s)}.paper-piece .horse-leg.hind{transform-origin:60px 116px}.paper-piece .horse-leg.fore{transform-origin:109px 114px}.board .is-galloping .paper-piece .horse-figure{animation:paper-gallop 416ms ease-in-out 3;animation-delay:0s}.board .is-galloping .paper-piece .horse-leg.near.fore,.board .is-galloping .paper-piece .horse-leg.far.hind{animation:paper-front-stride 416ms ease-in-out 3}.board .is-galloping .paper-piece .horse-leg.near.hind,.board .is-galloping .paper-piece .horse-leg.far.fore{animation:paper-back-stride 416ms ease-in-out 3}.board .is-galloping .paper-piece .horse-head{animation:paper-head-stride 416ms ease-in-out 3}.board .is-galloping .paper-piece .horse-tail{animation:paper-running-tail 416ms ease-in-out 3}.board .is-galloping .paper-piece .horse-ear{animation:none}.board .is-galloping .paper-piece .paper-ground{opacity:.3}.paper-piece.small *,.captured-ghost .paper-piece *{animation:none!important}@keyframes paper-breathe{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-.45px) scaleY(1.004)}}@keyframes paper-blink{0%,87%,91%,to{transform:scaleY(1)}89%{transform:scaleY(.08)}}@keyframes paper-pawn-think{0%,60%,to{transform:rotate(0)}70%,79%{transform:rotate(-2deg)}87%{transform:rotate(.7deg)}}@keyframes paper-scarf-float{0%,to{transform:rotate(-1deg) skewY(0)}50%{transform:rotate(3deg) skewY(-2deg)}}@keyframes paper-robe-sway{0%,to{transform:skew(-.4deg)}50%{transform:skew(.65deg)}}@keyframes paper-banner-ripple{0%,to{transform:skewY(-2deg) scaleX(1)}50%{transform:skewY(3deg) scaleX(.975)}}@keyframes paper-moustache-twitch{0%,74%,88%,to{transform:rotate(0)}78%{transform:rotate(-2deg)}82%{transform:rotate(1deg)}}@keyframes paper-horse-rest{0%,to{transform:translateY(0)}50%{transform:translateY(-.7px)}}@keyframes paper-tail-flick{0%,65%,to{transform:rotate(0)}72%{transform:rotate(7deg)}78%{transform:rotate(-4deg)}85%{transform:rotate(2deg)}}@keyframes paper-ear-listen{0%,78%,to{transform:rotate(0)}83%{transform:rotate(-9deg)}88%{transform:rotate(5deg)}94%{transform:rotate(-2deg)}}@keyframes paper-gallop{0%,to{transform:translateY(0) rotate(0)}36%{transform:translateY(-5px) rotate(-2.2deg)}72%{transform:translateY(-1px) rotate(1.3deg)}}@keyframes paper-front-stride{0%,to{transform:rotate(16deg)}48%{transform:rotate(-19deg)}}@keyframes paper-back-stride{0%,to{transform:rotate(-17deg)}48%{transform:rotate(18deg)}}@keyframes paper-head-stride{0%,to{transform:rotate(1.5deg)}48%{transform:rotate(-3.5deg)}}@keyframes paper-running-tail{0%,to{transform:rotate(-8deg)}48%{transform:rotate(12deg)}}@media(prefers-reduced-motion:reduce){.paper-piece,.paper-piece *{animation:none!important;transition:none!important}}html[data-art-style=paper]{background:#ece7d8;color:#302f28;--ink:#302f28;--muted:#847d69;--line:#d6cfb9;--line-strong:#bfb59a;--surface:#f6f2e4;--surface-raised:#fffbee;--brass:#ac8c45;--brass-light:#d3ba77;--green:#655d38;--green-soft:#e9e2c8;--danger:#9d5442}html[data-art-style=paper] body{background:radial-gradient(ellipse at 30% 0%,#fffdf0aa,transparent 70%),#ece7d8}[data-art-style=paper] .app-shell{max-width:1800px}[data-art-style=paper] .brand-lockup h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-1.5px}[data-art-style=paper] .brand-lockup p{color:#92866b;letter-spacing:1px;font-size:10px}[data-art-style=paper] .board-frame{padding:3.2%;border:1px solid #bfb49a;border-radius:2px 5px 3px 2px;background:#f2edda;box-shadow:0 16px 40px #574b2b16,1px 3px #d6cdb5,3px 5px #f5efd9,4px 6px #cfc5ac}[data-art-style=paper] .board-frame:before{inset:10px;border-color:#c4b89b66;transform:rotate(-.15deg)}[data-art-style=paper] .board-frame:after{display:none}[data-art-style=paper] .board-ornament{opacity:.25;color:#716340;width:3.2%;height:3.2%}[data-art-style=paper] .board:not(.studio-stage){border:1.4px solid #6a604c;box-shadow:0 0 0 2px #f4eedb,0 0 0 3px #998a6a66;border-radius:2px;overflow:visible}[data-art-style=paper] .square.light{background:#f7f1df;background-image:linear-gradient(37deg,transparent 48%,#d8ccb412 50%,transparent 52%);background-size:13px 17px}[data-art-style=paper] .square.dark{background:#d4d0bd;background-image:repeating-linear-gradient(43deg,transparent 0,transparent 7px,#aa9d7d18 7px,#aa9d7d18 8px)}[data-art-style=paper] .square:before{box-shadow:inset 0 0 0 .5px #7d6a4738;background:none}[data-art-style=paper] .square.last-from{box-shadow:inset 0 0 0 2px #b49a5988}[data-art-style=paper] .square.last-to{background-color:#d8c78f}[data-art-style=paper] .square .coord{color:#796f55}[data-art-style=paper] .token.revealed{filter:none;width:93%;height:96%}[data-art-style=paper] .token.fluid{height:69%;width:62%;border-radius:44% 48% 39% 43%;border:2px solid #39372d;box-shadow:2px 3px #352f2820;transform:rotate(-2deg)}[data-art-style=paper] .token.fluid.white{background:linear-gradient(110deg,#fbf6e3,#eee6cf);border-color:#524d3d;box-shadow:2px 3px #352f2820}[data-art-style=paper] .token.fluid.black{background:linear-gradient(110deg,#46473d,#30332b);border-color:#242820;box-shadow:2px 3px #352f2820}[data-art-style=paper] .token-glint{opacity:.2}[data-art-style=paper] .token-mystery{font-family:Georgia,serif;font-style:italic;color:#9c8039;text-shadow:0 0 8px #e7c66b44;font-size:48cqi;transform:rotate(5deg)}[data-art-style=paper] .black .token-mystery{color:#ebd99e;text-shadow:0 0 8px #e7c66b44}[data-art-style=paper] .inventory-panel{background:#f6f1e3;border-color:#d5cbb4;border-radius:5px;box-shadow:none}[data-art-style=paper] .match-bar{background:#f7f2e5;border-color:#cfc5ad;box-shadow:none}[data-art-style=paper] .primary-button{background:#494d36;border-color:#494d36;color:#fff9df}[data-art-style=paper] .setup-mode{background:#e0dac8;border-color:#c8bea5}[data-art-style=paper] .square.legal .move-marker{background:#94864799;box-shadow:0 0 0 3px #f9edbc66}[data-art-style=paper] .square.capture .move-marker{background:transparent;border-color:#a05f45}.atelier-link{font-size:12px;color:var(--muted);text-decoration:none;border-bottom:1px dotted currentColor;padding:5px 0;white-space:nowrap}.atelier-link:hover{color:var(--ink)}.atelier-link{background:none;border:0;border-bottom:1px dotted currentColor;font-family:inherit;cursor:pointer}.board-row{display:contents}.board-keyboard-hint{margin:12px 0 0;text-align:center;font-size:10px;line-height:1.7;color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.square:focus-visible{outline:3px solid var(--brass);outline-offset:-4px;z-index:12}#studio-title:focus,#game-title:focus{outline:none}.studio{max-width:1240px;margin:auto;padding:28px 42px 20px;color:#34372e}.studio-header{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #c9c3ad;padding-bottom:24px;font-size:11px;color:#7c7967}.studio-header>a{color:inherit;text-decoration:none}.studio-back{color:inherit;background:none;border:0;padding:8px 0;font:inherit;cursor:pointer}.studio-play{background:none;border:0;font-family:inherit;cursor:pointer}.studio-header>span{font-size:9px;letter-spacing:2px}.studio-style{display:flex;align-items:center;gap:10px;font-size:10px}.studio-style select{border:1px solid #c8bea3;border-radius:4px;padding:8px 28px 8px 9px;background:#f7f2e2;color:#5a5b49;font-size:11px}.studio-intro{text-align:center;margin:44px 0 36px}.studio-intro>p,.studio-overline{font-size:9px;letter-spacing:2px;color:#8e876b}.studio-intro h1{font-family:Georgia,serif;font-size:49px;letter-spacing:-1.8px;font-weight:400;margin:15px 0}.studio-intro>div{font-size:12px;color:#8a856f}.studio-workbench{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center;margin-bottom:36px}.studio .studio-stage{container-type:inline-size;width:100%;height:360px;aspect-ratio:auto;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;place-items:center;position:relative;background:#f7f2e3;border:1px solid #d2c7a9;box-shadow:2px 3px #dfd5b9;border-radius:3px;overflow:hidden}.studio-registration{position:absolute;font:19px Georgia,serif;color:#d0c5a7}.studio-registration.tl{top:12px;left:15px}.studio-registration.tr{top:12px;right:15px}.studio-registration.bl{bottom:12px;left:15px}.studio-registration.br{bottom:12px;right:15px}.studio-actor{--actor-half:115px;--atelier-travel:clamp(10px,calc(50cqw - var(--actor-half) - 20px),80px);width:230px;height:273px;position:relative;z-index:2;display:grid;place-items:center}.studio-actor .piece-art{width:100%;height:100%;max-width:none;max-height:none}.studio-stage-caption{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:2px;color:#a79c7c}.studio-details h2{font-family:Georgia,serif;font-weight:400;font-size:40px;letter-spacing:-1px;margin:14px 0 12px}.studio-character-copy{font-size:13px;color:#87836e;line-height:1.8;margin-bottom:22px}.studio-side{display:flex;gap:6px;margin-bottom:25px}.studio-side button{border:1px solid #cec4a9;border-radius:25px;background:transparent;color:#817b64;font-size:11px;padding:9px 16px}.studio-side button[aria-pressed=true]{background:#ede3c7;color:#5a543e;border-color:#b9a674}.motion-label{margin:0 0 12px}.studio-actions{display:flex;gap:7px;flex-wrap:wrap}.studio-actions button{background:#fffbed;border:1px solid #c7bda3;padding:10px 13px;color:#655b40;border-radius:4px;font-size:11px;cursor:pointer}.studio-actions button:hover{background:#ede2c3}.studio-actions button:disabled{cursor:default;opacity:.45}.studio-note{font-size:10px;color:#9b9278;line-height:1.8;min-height:36px;margin:13px 0 16px}.studio-play{font-size:12px;text-decoration:none;color:#666342;border-bottom:1px solid #c1b68e;padding-bottom:5px}.studio-cast{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:30px 0}.studio-cast>button{border:1px solid #d5ccb4;background:#f1ecdd;border-radius:5px;padding:12px 8px 17px;cursor:pointer;transition:background .2s,transform .2s;color:#62604c;min-width:0}.studio-cast>button:hover{transform:translateY(-3px);background:#faf4e2}.studio-cast>button.chosen{border-color:#9b8a59;box-shadow:inset 0 0 0 1px #b8a36b66;background:#f8f1dc}.studio-thumb{height:105px;display:block;margin-bottom:7px}.studio-thumb .piece-art{height:100%;width:100%;max-width:none}.studio-cast>button>span:not(.studio-thumb){font-family:Georgia,serif;font-size:17px;display:block;text-transform:capitalize}.studio-cast small{display:block;font-size:8px;color:#9b9278;margin-top:6px;text-transform:uppercase;letter-spacing:.8px}.studio-footer{display:flex;justify-content:space-between;border-top:1px solid #cdc4ad;padding:22px 0 0;font-size:8px;letter-spacing:1px;color:#9b9277;gap:20px}.studio-actor.move{animation:atelier-travel 1.5s cubic-bezier(.4,.05,.25,1) both}.studio-actor.capture{animation:atelier-curtain 1.7s ease-in both}.studio-actor.check{animation:atelier-surprise 1.2s ease-in-out both}.studio-punctuation{position:absolute;top:45px;right:23%;font:italic 35px Georgia,serif;color:#9d6f45;animation:atelier-punctuation 1.6s ease both}@keyframes atelier-travel{0%{transform:translate(calc(var(--atelier-travel) * -1)) rotate(-2deg)}15%{transform:translate(calc(var(--atelier-travel) * -1.125)) rotate(-3deg)}65%{transform:translate(calc(var(--atelier-travel) * .625)) translateY(-7px)}85%{transform:translate(var(--atelier-travel)) scaleY(.98)}to{transform:translate(var(--atelier-travel))}}@keyframes atelier-curtain{0%,28%{transform:rotate(0);opacity:1}45%{transform:rotate(-12deg) translateY(6px)}58%{transform:rotate(2deg)}to{transform:translateY(50px) rotate(16deg) scale(.55);opacity:0}}@keyframes atelier-surprise{0%,to{transform:rotate(0)}20%{transform:translateY(-12px) rotate(-5deg)}35%{transform:translateY(-7px) rotate(4deg)}50%{transform:rotate(-3deg)}65%{transform:rotate(2deg)}}@keyframes atelier-punctuation{0%{opacity:0;transform:translateY(8px)}15%,75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@media(max-width:900px){.studio{padding:22px}.studio-workbench{gap:30px}.studio .studio-stage{height:330px}.studio-cast{gap:8px}.studio-thumb{height:80px}.studio-header>span{display:none}.studio-intro h1{font-size:40px}}@media(max-width:620px){.studio{padding:18px 14px}.studio-intro{margin:30px 0}.studio-intro h1{font-size:32px;letter-spacing:-1px}.studio-workbench{grid-template-columns:1fr;gap:28px}.studio .studio-stage{height:300px}.studio-actor{width:205px;height:243px}.studio-details h2{font-size:30px}.studio-cast{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-header{gap:12px}.studio-style{font-size:0;gap:0}.studio-style select{font-size:10px}.studio-footer{font-size:7px;line-height:1.8}.studio-note{min-height:0}.atelier-link{font-size:11px}}@media(prefers-reduced-motion:reduce){.studio *,.studio *:before,.studio *:after{animation:none!important;transition:none!important}.studio-actor.capture{opacity:1}}dialog.native-dialog{margin:auto;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);overscroll-behavior:contain}dialog.native-dialog::backdrop{background:#171d18a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}[data-art-style=paper] dialog.native-dialog{background:#fbf7e9;border-color:#b6aa8a;box-shadow:0 25px 100px #342e3355}dialog.how-to-play{width:min(740px,calc(100vw - 32px));padding:26px}.guide-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.guide-heading .modal-eyebrow{letter-spacing:2px;font-size:9px;color:var(--muted);margin:0 0 10px}.guide-heading h2{font:34px/1.15 Georgia,serif;letter-spacing:-1px;margin:0}.guide-heading .icon-button{flex:none}.guide-art{display:block;width:100%;height:auto;border-radius:4px;border:1px solid #cec3a966}.guide-lead{font-size:15px;line-height:1.75;margin:22px 0;color:var(--ink)}.guide-steps{list-style:none;padding:0;margin:0;display:grid;gap:20px}.guide-steps>li{display:flex;gap:16px}.guide-steps>li>span{font:italic 25px Georgia,serif;color:var(--brass);line-height:1.3;flex:none}.guide-steps h3{font-size:14px;margin:0 0 6px}.guide-steps p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.guide-details{border-block:1px solid var(--line);padding:17px 0;margin-top:24px;font-size:12px;line-height:1.9;color:var(--muted)}.guide-details summary{font-size:13px;color:var(--ink);cursor:pointer}.guide-details ul{margin:14px 0 0;padding-left:19px;display:grid;gap:10px}.guide-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.guide-bottom p{font-size:10px;line-height:1.9;color:var(--muted);margin:0}.guide-bottom .primary-button{white-space:nowrap;flex:none}@media(max-width:620px){dialog.how-to-play{padding:20px}.guide-heading h2{font-size:27px}.guide-lead{font-size:14px}.guide-bottom{flex-direction:column;align-items:stretch}.guide-bottom .primary-button{justify-content:center}.guide-steps p,.guide-details{font-size:12px}.studio-side button,.studio-actions button{min-height:40px}}dialog.moment-dialog{width:min(520px,calc(100vw - 32px));padding:0}.moment-dialog .moment-toast{width:100%;border:0;box-shadow:none;animation:none;background:transparent}.moment-dialog .moment-progress{display:none}.result-actions{grid-column:1/-1;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.result-actions button{min-height:44px}@media(max-width:430px){.result-actions button{flex:1;justify-content:center;padding:10px;font-size:12px}}.moment-dialog.win .moment-toast{display:flex;flex-direction:column;gap:14px;padding:28px 26px 24px;text-align:center}.moment-dialog.win .moment-close{position:absolute;top:10px;right:10px;z-index:3}.moment-dialog.win .moment-copy{width:100%}.moment-dialog.win .moment-copy h2{font-size:2rem;line-height:1.15;margin:7px 0;overflow-wrap:anywhere}.moment-dialog.win .moment-copy p{font-size:.9rem}.moment-dialog.win .result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;width:100%;margin:8px 0 0}.victory-scene{position:relative;width:100%;height:240px;isolation:isolate;overflow:hidden;flex:0 0 auto}.victory-confetti{position:absolute;inset:0;z-index:4;pointer-events:none}.victory-confetti i{position:absolute;left:var(--confetti-x);top:-14px;width:7px;height:13px;background:#b08c37;opacity:0;animation:victory-paper var(--confetti-time) var(--confetti-delay) cubic-bezier(.15,.45,.5,1) both}.victory-confetti i:nth-child(4n+1){background:#53846b}.victory-confetti i:nth-child(4n+2){background:#bb626b;width:5px;height:9px}.victory-confetti i:nth-child(4n+3){background:#6d91a1}.victory-trophy{position:absolute;top:5px;left:calc(50% - 16px);color:#a5822e;animation:victory-trophy .85s .18s both}.victory-spark{position:absolute;color:#a5822e;animation:victory-spark .7s .65s 3 both}.victory-spark.left{left:22%;top:72px}.victory-spark.right{right:23%;top:52px;animation-delay:.95s}.victory-podium{position:absolute;bottom:39px;left:28%;width:44%;height:17px;background:#60806b;border-bottom:5px solid #3c5846;border-radius:50% 50% 3px 3px}.victory-champion{position:absolute;bottom:55px;left:calc(50% - 58px);width:116px;height:150px;transform-origin:50% 100%;animation:victory-bow 2.4s .2s both}.victory-loser{position:absolute;bottom:53px;right:5%;width:65px;height:94px;transform-origin:50% 94%;animation:victory-topple .95s .3s both;opacity:.6}.victory-champion>*,.victory-loser>*{width:100%;height:100%;object-fit:contain}.victory-ribbon{position:absolute;bottom:2px;left:20%;width:60%;box-sizing:border-box;padding:7px 8px;background:#304e3c;color:#fff;border-radius:2px;font-size:.75rem;font-weight:700;line-height:1.3;animation:victory-ribbon .55s .45s both}@keyframes victory-paper{0%{opacity:0;transform:translateY(-12px) rotate(0)}8%,75%{opacity:1}to{opacity:0;transform:translate(var(--confetti-drift),275px) rotate(var(--confetti-spin))}}@keyframes victory-bow{0%{transform:translateY(40px) scale(.85);opacity:0}18%{transform:translateY(-12px) scale(1.04);opacity:1}30%{transform:translateY(0) scale(1)}43%{transform:translateY(-10px) rotate(-6deg)}55%{transform:translateY(0) rotate(5deg)}70%{transform:rotate(-5deg)}to{opacity:1;transform:none}}@keyframes victory-topple{0%,25%{transform:none}75%{transform:rotate(78deg) translateY(4px)}87%{transform:rotate(68deg)}to{transform:rotate(74deg)}}@keyframes victory-trophy{0%{opacity:0;transform:translateY(-25px) rotate(-20deg)}to{opacity:1;transform:none}}@keyframes victory-spark{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes victory-ribbon{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:420px){.moment-dialog.win .moment-toast{padding:25px 16px 18px;gap:10px}.moment-dialog.win .moment-copy h2{font-size:1.6rem}.victory-loser{right:7%;width:48px;height:70px}.victory-champion{width:100px;height:140px;left:calc(50% - 50px)}.victory-spark.left{left:12%}.victory-spark.right{right:13%}}@media(prefers-reduced-motion:reduce){.victory-scene *,.victory-scene *:before,.victory-scene *:after{animation:none!important;transition:none!important}.victory-confetti{display:none}.victory-loser{transform:rotate(74deg)}}
