*,*:before,*:after{box-sizing:border-box}*{margin:0}:root{--paper: #f9f7f0;--paper-soft: #f3f0e5;--ink: #1a1a2e;--muted: #706d85;--accent: #fbbf24;--accent-deep: #d97706;--panel: #ffffff;--shadow-offset: 4px 4px 0 rgba(26, 26, 46, .85);--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html,body{max-width:100%;min-height:100%;overflow-x:clip;overscroll-behavior-x:none}body{min-width:320px;min-height:120vh;background-color:var(--paper);background-image:radial-gradient(circle,rgba(26,26,46,.18) 1.2px,transparent 1.2px);background-size:22px 22px}button,input{font:inherit}button{border:0;touch-action:manipulation}#root{min-height:100vh;min-height:100svh;min-height:100dvh;overflow-x:clip}.home-view,.setup-view,.game-layout{width:min(1180px,100%);min-height:100vh;min-height:100svh;min-height:100dvh;margin:0 auto;padding:clamp(14px,4vw,30px);overflow-x:clip}.home-view,.setup-view{display:grid;align-items:center}.home-hero{width:min(680px,100%);margin:0 auto;padding:clamp(28px,6vw,52px);text-align:center;background:var(--panel);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:6px 6px 0 var(--ink)}.hero-dot-board{position:relative;display:grid;width:min(240px,62vw);aspect-ratio:1;grid-template-columns:repeat(8,1fr);gap:0;margin:0 auto 28px;padding:8px;border:2.5px solid var(--ink);background:#fff;box-shadow:4px 4px 0 var(--ink)}.hero-dot-board span{display:block;width:100%;aspect-ratio:1;border-radius:0;background:var(--paper-soft)}.hero-dot-board span:nth-child(16n+2),.hero-dot-board span:nth-child(16n+4),.hero-dot-board span:nth-child(16n+6),.hero-dot-board span:nth-child(16n+8),.hero-dot-board span:nth-child(16n+9),.hero-dot-board span:nth-child(16n+11),.hero-dot-board span:nth-child(16n+13),.hero-dot-board span:nth-child(16n+15){background:#855c3b}.hero-piece{position:absolute;display:block;width:10.5%;height:10.5%;aspect-ratio:1;border-radius:999px;border:2.5px solid var(--ink);box-shadow:inset 0 0 0 5px #ffffff38,2px 2px 0 var(--ink)}.hero-red{left:28%;top:28%;background:#dc2626}.hero-black{right:28%;top:40.5%;background:#111827}.hero-red.second{left:40.5%;bottom:28%}.eyebrow{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}h1{margin-top:6px;color:var(--ink);font-size:clamp(2.4rem,9vw,5rem);font-weight:950;line-height:1;letter-spacing:-.02em}.title-accent{display:inline-block;color:#fff;background:#2563eb;border:2.5px solid var(--ink);border-radius:12px;padding:0 .18em;line-height:1.05;font-size:.88em;vertical-align:middle;box-shadow:3px 3px 0 var(--ink)}.hero-copy{max-width:480px;margin:16px auto 0;color:var(--muted);font-size:clamp(.95rem,2.4vw,1.1rem);line-height:1.5}.home-actions,.confirm-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}.btn,.settings-header-button,.icon-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:0 22px;cursor:pointer;font-weight:900;letter-spacing:.01em;transition:transform .1s ease,box-shadow .1s ease}.btn:active,.settings-header-button:active,.icon-button:active{transform:translateY(2px);box-shadow:none!important}.btn-primary{color:#fff;background:#2563eb;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.btn-secondary{color:var(--ink);background:var(--accent);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.btn-quiet{color:var(--ink);background:var(--paper-soft);border:2px solid rgba(26,26,46,.3);box-shadow:2px 2px #1a1a2e40}.btn-danger{color:#fff;background:#ef4444;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.btn:disabled,.settings-header-button:disabled{cursor:default;opacity:.45;transform:none;box-shadow:none}.setup-panel{width:min(1060px,100%);margin:0 auto;padding:clamp(24px,4vw,40px);background:var(--panel);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:6px 6px 0 var(--ink)}.settings-modal{border:2.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--panel);box-shadow:6px 6px 0 var(--ink)}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:28px}.section-heading h1{font-size:clamp(2.3rem,5vw,4.2rem)}.setup-grid,.player-mark-grid,.settings-actions,.rules-panel,.rules-scroll{display:grid;gap:14px}.setup-grid{grid-template-columns:1fr;align-items:stretch;gap:18px}.setup-block{display:grid;gap:16px;align-content:start;border:2px solid rgba(26,26,46,.12);border-radius:var(--radius-md);padding:20px;background:var(--paper-soft)}.setup-block-heading{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:12px}.setup-block-heading h2{font-size:1.35rem;font-weight:900}.setup-block-heading strong{flex:0 0 auto;border-radius:999px;padding:6px 14px;background:var(--accent);border:2px solid var(--ink);font-size:1rem}.icon-button{width:46px;min-height:46px;padding:0;color:#fff;background:#2563eb;border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}.icon-button:disabled,.remove-player-button:disabled{cursor:default;opacity:.4}.field{display:grid;gap:8px;color:var(--muted);font-weight:800;text-align:left}.player-setup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.name-with-mark{display:grid;grid-template-columns:50px minmax(0,1fr) 44px;align-items:center;overflow:hidden;border:2px solid rgba(26,26,46,.18);border-radius:var(--radius-sm);background:#fff}.name-with-mark strong{display:grid;min-height:50px;place-items:center;color:#fff;background:#2563eb;font-size:1.1rem;font-weight:950}.player-name-field:nth-child(2) .name-with-mark strong{background:#ef4444}.player-name-field:nth-child(3) .name-with-mark strong{background:#16a34a}.player-name-field:nth-child(4) .name-with-mark strong{background:#7c3aed}.player-name-field:nth-child(5) .name-with-mark strong{background:#ea580c}.player-name-field:nth-child(6) .name-with-mark strong{background:#0891b2}.field input{min-width:0;min-height:50px;width:100%;border:2px solid rgba(26,26,46,.18);border-radius:var(--radius-sm);padding:0 14px;color:var(--ink);background:#fff;outline:0}.remove-player-button{display:grid;width:44px;height:50px;place-items:center;color:var(--muted);background:transparent;cursor:pointer}.size-field input[type=range]{width:100%;height:40px;margin:0;accent-color:#2563eb;cursor:pointer}.size-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.size-option{min-height:42px;border-radius:999px;color:var(--ink);background:#fff;border:2px solid rgba(26,26,46,.2);cursor:pointer;font-weight:900;transition:background .1s,border-color .1s}.size-option.active{color:#fff;background:#2563eb;border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.shape-preview{position:relative;display:grid;width:100%;max-width:360px;place-items:center;justify-self:center;border:2px dashed rgba(26,26,46,.25);border-radius:var(--radius-md);padding:16px;color:var(--muted);background:#fff;font-size:.82rem;text-align:center}.shape-preview-dots{position:absolute;top:18px;right:18px;bottom:18px;left:18px;display:grid;align-items:center;justify-items:center}.shape-preview-dots span{width:7px;aspect-ratio:1;border-radius:999px;background:#1a1a2e59}.shape-preview strong{position:relative;z-index:1;border-radius:999px;padding:4px 10px;color:var(--muted);background:#ffffffe6;font-weight:950}.preview-columns{align-self:center}.preview-rows{align-self:end}.setup-actions{display:grid;grid-template-columns:minmax(160px,.35fr) minmax(0,1fr);gap:14px;margin-top:26px}.setup-actions .btn{width:100%}.game-layout{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto minmax(0,1fr);grid-template-areas:"header" "status" "check" "board";align-content:start;gap:clamp(10px,1.8dvh,14px)}.game-header{position:relative;z-index:30;grid-area:header;display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:999px;padding:clamp(10px,2.5vw,16px) clamp(16px,3vw,24px);background:var(--panel);border:2.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);color:var(--ink)}.game-header h1{color:var(--ink);font-size:clamp(1.6rem,5vw,3rem);font-weight:950;letter-spacing:-.02em;overflow-wrap:anywhere}.header-action-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.settings-header-button{color:var(--ink);background:var(--paper-soft);border:2px solid rgba(26,26,46,.3);box-shadow:2px 2px #1a1a2e40}.match-status{grid-area:status;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.player-chip{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;border:2.5px solid rgba(26,26,46,.12);border-radius:var(--radius-md);padding:8px 12px;color:var(--muted);background:var(--paper-soft);transition:border-color .14s,background .14s,box-shadow .14s,filter .14s,opacity .14s}.match-status:has(.player-chip.active) .player-chip:not(.active){opacity:.58;filter:saturate(.7) brightness(.92)}.player-chip.active{color:var(--ink);background:linear-gradient(90deg,color-mix(in srgb,var(--player-color) 10%,#ffffff),#fff 28%),#fff;border-color:var(--player-color);box-shadow:0 12px 24px #21120b29}.red-chip.active{box-shadow:inset 6px 0 0 var(--player-color),0 12px 24px #21120b29}.black-chip.active{box-shadow:inset -6px 0 0 var(--player-color),0 12px 24px #21120b29}.player-chip strong,.turn-pill strong{display:grid;width:36px;aspect-ratio:1;place-items:center;border-radius:999px;color:#fff;background:var(--player-color);font-size:1rem;font-weight:950;border:2px solid var(--ink)}.player-chip span,.player-chip em{min-width:0;overflow-wrap:anywhere;font-style:normal;font-weight:800}.player-chip em{color:var(--muted);font-size:.85rem}.player-chip.active em{border-radius:999px;padding:4px 9px;color:var(--player-color);background:color-mix(in srgb,var(--player-color) 12%,#ffffff);border:1px solid color-mix(in srgb,var(--player-color) 36%,transparent);font-size:.75rem;font-weight:950;text-transform:uppercase}.board-shell{grid-area:board;display:grid;place-items:center;min-height:0;overflow:hidden;border-radius:var(--radius-lg);padding:clamp(10px,1.5vw,20px);background:#fff;border:2.5px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}.checkers-board{display:grid;width:min(100%,calc(100dvh - 250px),680px);aspect-ratio:1;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden;border:3px solid var(--ink);border-radius:var(--radius-sm);background:var(--ink);box-shadow:4px 4px #1a1a2e40;touch-action:manipulation}.square{position:relative;display:grid;min-width:0;min-height:0;place-items:center;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.square.light{background:#f7ead7}.square.dark{background:#7b4f33}.square.dark:hover:not(:disabled){filter:brightness(1.04)}.square.possible-move:after{content:"";position:absolute;width:30%;aspect-ratio:1;border-radius:999px;background:#fbbf24d9;border:2px solid var(--ink)}.square:disabled{cursor:default}.piece{position:relative;z-index:1;display:grid;width:72%;aspect-ratio:1;place-items:center;border-radius:999px;border:3px solid var(--ink);color:#fff;font-weight:950;font-size:clamp(.8rem,3.2vw,1.55rem);line-height:1;box-shadow:inset 0 0 0 clamp(5px,1vw,9px) #ffffff2e,0 4px #1a1a2e8c}.piece.red{background:#dc2626}.piece.black{background:#111827}.piece.king:before{content:"";position:absolute;top:19%;right:19%;bottom:19%;left:19%;border-radius:999px;border:2px solid rgba(255,255,255,.72)}.piece.selected-piece{border-color:var(--accent);box-shadow:0 0 0 4px #fbbf246b,inset 0 0 0 clamp(5px,1vw,9px) #ffffff2e,0 4px #1a1a2e8c}.dot-board{container-type:inline-size;position:relative;width:min(calc(100% - 16px),calc((100dvh - 260px) * var(--board-columns) / var(--board-rows)),calc(var(--board-columns) * 70px));aspect-ratio:var(--board-columns) / var(--board-rows);margin:auto}.board-dot{position:absolute;z-index:10;width:calc(100cqw / var(--board-columns));height:calc(100cqw / var(--board-columns));transform:translate(-50%,-50%);background:transparent;cursor:pointer;outline:none;padding:0;-webkit-tap-highlight-color:transparent}.board-dot:focus{outline:none}.board-dot:disabled{cursor:default}.board-dot:before{content:"";position:absolute;top:50%;left:50%;width:clamp(10px,calc(32cqw / var(--board-columns)),22px);height:clamp(10px,calc(32cqw / var(--board-columns)),22px);transform:translate(-50%,-50%);border-radius:999px;background:var(--ink);pointer-events:none}.board-dot.selected:before{background:var(--active-color);box-shadow:0 0 0 clamp(2px,calc(3cqw / var(--board-columns)),4px) #fff,0 0 0 clamp(4px,calc(6cqw / var(--board-columns)),8px) var(--ink)}.box-cell{position:absolute;display:grid;place-items:center;color:var(--box-color);background:transparent;font-weight:950;line-height:1;font-size:clamp(.8rem,calc(32cqw / var(--board-columns)),3.2rem);transition:transform .16s ease;transform:scale(.8);transform-origin:center;pointer-events:none}.box-cell.claimed{background:color-mix(in srgb,var(--box-color) 14%,transparent);transform:scale(1)}.board-edge{position:absolute;z-index:2;min-width:0;min-height:0;border-radius:999px;background:transparent;pointer-events:none;transition:background .16s ease}.board-edge.horizontal{transform:translateY(-50%);height:clamp(6px,calc(16cqw / var(--board-columns)),16px)}.board-edge.vertical{width:clamp(6px,calc(16cqw / var(--board-columns)),16px);transform:translate(-50%)}.board-edge.claimed{background:var(--ink);box-shadow:0 2px 4px #0003}.mega-cell:focus-visible,.mini-cell:focus-visible,.square:focus-visible,.btn:focus-visible,.settings-header-button:focus-visible,.icon-button:focus-visible,.modal-close:focus-visible,.board-dot:focus-visible,.size-option:focus-visible,.remove-player-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.mini-game-backdrop,.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:18px;background:#1a1a2e80}.settings-modal{width:min(480px,100%);max-height:min(720px,calc(100dvh - 36px));display:grid;overflow:hidden;padding:20px;color:var(--ink)}.settings-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.settings-modal h2{margin-top:2px;color:var(--ink);font-size:clamp(1.65rem,5vw,2.4rem);font-weight:950;line-height:1}.modal-close{display:grid;width:48px;height:48px;place-items:center;flex:0 0 auto;color:var(--ink);background:var(--paper-soft);border:2px solid rgba(26,26,46,.2);box-shadow:2px 2px #1a1a2e2e;cursor:pointer}.settings-actions .btn{width:100%;justify-content:flex-start}.rules-scroll{max-height:min(520px,calc(100dvh - 190px));overflow-y:auto;padding-right:4px}.rules-panel section{border-radius:var(--radius-sm);padding:12px;background:#2563eb12;border:1.5px solid rgba(37,99,235,.15)}.rules-panel h3{margin-bottom:6px;color:var(--ink);font-size:1rem;font-weight:900}.rules-panel p,.confirm-message{color:var(--muted);line-height:1.5}.confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.results-modal{width:min(580px,calc(100vw - 24px));padding:0;gap:0;overflow:hidden;text-align:center}.results-banner{display:grid;justify-items:center;gap:8px;padding:clamp(28px,6vw,40px) clamp(20px,5vw,32px) clamp(20px,5vw,28px);background:linear-gradient(150deg,#2563eb12,#fbbf242e);border-bottom:2px solid rgba(26,26,46,.1)}.results-banner svg{color:#2563eb}.results-banner h2{font-size:clamp(1.8rem,7vw,2.8rem);font-weight:950;line-height:1;color:var(--ink);overflow-wrap:anywhere}.results-scores{display:grid;gap:10px;padding:clamp(16px,4vw,24px) clamp(20px,5vw,28px)}.multi-player-results{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.results-score-card{display:grid;gap:3px;border-radius:var(--radius-md);padding:14px 10px 12px;background:var(--paper-soft);border:2px solid transparent}.results-score-card.winner{background:#fbbf2433;border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.score-mark{display:inline-grid;width:32px;height:32px;place-items:center;border-radius:999px;margin:0 auto 4px;color:#fff;background:var(--player-color);font-size:1rem;font-weight:950;border:2px solid var(--ink)}.score-count{display:block;font-size:clamp(2.4rem,10vw,3.4rem);font-weight:950;font-style:normal;line-height:1;color:var(--ink)}.score-name{margin-top:4px;font-size:.85rem;font-weight:850;color:var(--ink);overflow-wrap:anywhere;line-height:1.2}.score-label{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.results-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:clamp(12px,3vw,18px) clamp(20px,5vw,28px) clamp(16px,4vw,24px);border-top:2px solid rgba(26,26,46,.08)}.results-actions .btn{min-height:50px;padding:0 12px;font-size:.9rem;white-space:normal}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:860px){.setup-grid{grid-template-columns:1fr}}@media(max-width:760px){.game-layout{gap:8px;min-height:100vh;min-height:100svh;min-height:100dvh}.dot-board{width:min(calc(100% - 12px),calc((100dvh - 220px) * var(--board-columns) / var(--board-rows)),calc(var(--board-columns) * 58px))}.game-header{align-items:stretch;flex-direction:column;border-radius:var(--radius-lg);gap:10px;padding:12px 14px}.game-header h1{font-size:clamp(1.55rem,8vw,2.2rem)}.header-action-group{justify-content:stretch}.settings-header-button{flex:1;min-height:40px;padding:0 10px}.match-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.player-setup{grid-template-columns:1fr}.player-chip{min-height:42px;gap:7px;padding:6px 10px}.player-chip.active:before{top:-11px;right:10px;padding:2px 7px;font-size:.55rem}.player-chip strong{width:28px;font-size:.86rem}.player-chip span{font-size:.82rem}.player-chip em{font-size:.72rem}.player-chip.active em{padding:4px 7px;font-size:.58rem}.board-shell{overflow:visible;padding:10px}.modal-backdrop{padding:12px}}@media(max-width:520px){.home-view,.setup-view,.game-layout{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.home-hero,.setup-panel{padding:22px}.dot-board{width:min(calc(100% - 8px),calc((100dvh - 185px) * var(--board-columns) / var(--board-rows)))}.confirm-actions,.results-actions,.setup-actions{grid-template-columns:1fr}.results-actions{gap:14px}.btn{width:100%}}@media(max-width:430px){.game-header{gap:8px}.game-header h1{font-size:clamp(1.35rem,7vw,1.8rem)}.header-action-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.settings-header-button{min-width:0;padding:0 8px;font-size:.82rem}.match-status{gap:6px}.player-chip{grid-template-columns:auto minmax(0,1fr)}.player-chip em{display:none}}@media(max-width:380px){.settings-header-button span{display:none}.settings-header-button{padding:0}}:root{--paper: #2b160d;--paper-soft: #5b351f;--ink: #21120b;--muted: #7c604d;--accent: #d7a243;--accent-deep: #8b5a1f;--panel: #fff2dd;--panel-soft: #f2ddbd;--red-piece: #bd1f1f;--black-piece: #1c130f;--board-light: #e7c18f;--board-dark: #774421;--shadow-offset: 0 28px 70px rgba(19, 9, 5, .46);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px}body{background:radial-gradient(circle at 18% 12%,rgba(215,162,67,.28),transparent 24%),radial-gradient(circle at 84% 18%,rgba(126,62,26,.5),transparent 28%),linear-gradient(115deg,rgba(255,255,255,.06) 0 8%,transparent 8% 100%),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 2px,transparent 2px 54px),linear-gradient(135deg,#1a0c07,#4a2514 48%,#241108);background-attachment:fixed}.home-view,.setup-view,.game-layout{width:min(1240px,100%)}.home-hero,.setup-panel,.game-header,.settings-modal,.player-chip{background:linear-gradient(180deg,#fff7e8f5,#eed3abf2),var(--panel);border:1px solid rgba(215,162,67,.72);box-shadow:var(--shadow-offset),inset 0 1px #ffffff9e}.home-hero{position:relative;width:min(840px,100%);padding:clamp(30px,6vw,64px);overflow:hidden}.home-hero:before,.setup-panel:before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;border:1px solid rgba(139,90,31,.28);border-radius:calc(var(--radius-lg) - 8px);pointer-events:none}.home-hero:after{content:"";position:absolute;inset:auto -14% -32% -14%;height:54%;background:radial-gradient(ellipse at center,rgba(122,68,33,.22),transparent 67%);pointer-events:none}.setup-panel,.home-hero{position:relative}.hero-dot-board{width:min(280px,68vw);padding:12px;border:14px solid #3b1d0f;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 36%),#3b1d0f;box-shadow:0 22px 44px #200e076b,inset 0 0 0 2px #d7a2436b;transform:rotate(-2deg)}.hero-dot-board span{background:linear-gradient(135deg,rgba(255,255,255,.24),transparent 44%),var(--board-light)}.hero-dot-board span:nth-child(16n+2),.hero-dot-board span:nth-child(16n+4),.hero-dot-board span:nth-child(16n+6),.hero-dot-board span:nth-child(16n+8),.hero-dot-board span:nth-child(16n+9),.hero-dot-board span:nth-child(16n+11),.hero-dot-board span:nth-child(16n+13),.hero-dot-board span:nth-child(16n+15){background:linear-gradient(135deg,rgba(255,255,255,.09),transparent 42%),var(--board-dark)}.hero-piece{border:2px solid rgba(255,241,214,.82);box-shadow:inset 0 0 0 7px #ffffff24,inset 0 -12px 18px #00000038,0 12px 22px #21120b66}.hero-red{background:radial-gradient(circle at 33% 23%,#ff7777,transparent 20%),linear-gradient(145deg,#d62d2d,var(--red-piece))}.hero-black{background:radial-gradient(circle at 33% 23%,#6a5749,transparent 22%),linear-gradient(145deg,#34241b,var(--black-piece))}.eyebrow{color:#8b5a1f}h1{color:#2a1409;font-size:clamp(2.7rem,9vw,6rem);font-weight:950;letter-spacing:0;text-shadow:0 1px 0 rgba(255,247,232,.92)}.title-accent{color:#2a1409;background:linear-gradient(180deg,#f3ce7a,#d7a243);border:1px solid rgba(139,90,31,.72);border-radius:999px;padding:.02em .28em .08em;font-size:.58em;box-shadow:0 10px 20px #8b5a1f33,inset 0 1px #ffffff7a}.hero-copy{color:#6d4c37;font-weight:650}.btn,.settings-header-button,.icon-button,.modal-close{border-radius:12px}.btn-primary{color:#fff7e8;background:linear-gradient(180deg,#d83a2e,#9d1919);border:1px solid rgba(71,27,15,.62);box-shadow:0 12px 22px #9d19194d,inset 0 1px #ffffff47}.btn-secondary,.icon-button{color:#2a1409;background:linear-gradient(180deg,#f5d07a,#c4882f);border:1px solid rgba(80,45,17,.52);box-shadow:0 12px 22px #502d1138,inset 0 1px #fff6}.btn-quiet,.settings-header-button,.modal-close{color:#2a1409;background:#fff2ddb8;border:1px solid rgba(58,29,15,.18);box-shadow:0 8px 18px #21120b1f}.btn-danger{background:linear-gradient(180deg,#c2412f,#7f1d1d);border:1px solid rgba(58,29,15,.42);box-shadow:0 12px 22px #7f1d1d3d}.setup-block{background:#fff7e89e;border:1px solid rgba(139,90,31,.24)}.field input{background:#fff8ec;border:1px solid rgba(58,29,15,.22);box-shadow:inset 0 2px 5px #3a1d0f14}.game-layout{gap:clamp(12px,2dvh,18px)}.game-header{border-radius:20px;padding:clamp(12px,2.5vw,18px) clamp(16px,3vw,26px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.game-header h1{font-size:clamp(1.6rem,5vw,2.9rem);letter-spacing:0}.match-status{gap:12px}.player-chip{min-height:64px;padding:10px 14px;border-radius:18px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,filter .14s ease,opacity .14s ease}.player-chip.active{background:linear-gradient(90deg,color-mix(in srgb,var(--player-color) 12%,#fff8ec),#fff8ec 34%,#f0d8b3);border-color:color-mix(in srgb,var(--player-color) 58%,var(--accent));box-shadow:0 16px 28px #21120b2e,inset 0 -5px color-mix(in srgb,var(--player-color) 24%,transparent);transform:none}.red-chip.active{box-shadow:inset 6px 0 0 var(--player-color),0 16px 28px #21120b2e,inset 0 -5px color-mix(in srgb,var(--player-color) 24%,transparent)}.black-chip.active{box-shadow:inset -6px 0 0 var(--player-color),0 16px 28px #21120b2e,inset 0 -5px color-mix(in srgb,var(--player-color) 24%,transparent)}.player-chip strong{width:38px;border:2px solid rgba(255,242,221,.78);box-shadow:inset 0 0 0 5px #ffffff1f,0 8px 14px #21120b3d}.board-shell{padding:clamp(14px,2.5vw,34px);background:radial-gradient(circle at 50% 0%,rgba(215,162,67,.24),transparent 55%),linear-gradient(135deg,#5a2f18,#2a1409);border:1px solid rgba(215,162,67,.58);border-radius:28px;box-shadow:0 34px 80px #13090580,inset 0 1px #ffffff29}.checkers-board{position:relative;width:min(92vw,calc(100dvh - 250px),700px);border:clamp(12px,2.2vw,22px) solid #35190c;border-radius:20px;background:#35190c;box-shadow:0 26px 44px #13090585,inset 0 0 0 2px #d7a2435c}.square{transition:filter .14s ease,box-shadow .14s ease}.square.light{background:linear-gradient(135deg,rgba(255,255,255,.28),transparent 45%),var(--board-light)}.square.dark{background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 45%),var(--board-dark)}.square.dark:hover:not(:disabled){filter:saturate(1.08) brightness(1.03)}.square.possible-move:after{width:28%;background:#f5d07aeb;border:2px solid rgba(255,248,236,.9);box-shadow:0 0 0 4px #2a140933,0 0 20px #f5d07a73}.piece{border:2px solid rgba(255,242,221,.78);font-weight:950;box-shadow:inset 0 0 0 clamp(5px,1vw,10px) #ffffff21,inset 0 -12px 20px #00000047,0 9px 14px #21120b75}.piece.selected-piece{border-color:#f5d07a;box-shadow:0 0 0 4px #f5d07a70,inset 0 0 0 clamp(5px,1vw,10px) #ffffff21,inset 0 -12px 20px #00000047,0 12px 18px #21120b80}.piece.red{background:radial-gradient(circle at 34% 24%,#ff8181,transparent 19%),linear-gradient(145deg,#da2f2f,var(--red-piece) 72%)}.piece.black{background:radial-gradient(circle at 34% 24%,#6f5b4b,transparent 21%),linear-gradient(145deg,#3a271e,var(--black-piece) 74%)}.piece.king:before{top:18%;right:18%;bottom:18%;left:18%;border-color:#f5d07af5;box-shadow:0 0 0 4px #f5d07a24}.piece-moving-source{opacity:0}.animated-piece{position:absolute;z-index:5;width:9%;left:var(--start-left);top:var(--start-top);pointer-events:none;animation:checker-slide .28s ease-out forwards;transform:translate(-50%,-50%);transform-origin:center;will-change:transform,filter}.animated-piece.jumping{animation-name:checker-jump;animation-timing-function:linear}@keyframes checker-slide{0%{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 8px 9px rgba(33,18,11,.28))}to{transform:translate(-50%,-50%) translate(calc(var(--move-cols) * 138.8889%),calc(var(--move-rows) * 138.8889%)) scale(1);filter:drop-shadow(0 10px 12px rgba(33,18,11,.35))}}@keyframes checker-jump{0%{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 8px 10px rgba(33,18,11,.28))}25%{transform:translate(-50%,-50%) translate(calc(var(--move-cols) * 34.7222%),calc(var(--move-rows) * 34.7222% - 68%)) scale(1.05);filter:drop-shadow(0 18px 14px rgba(33,18,11,.32))}50%{transform:translate(-50%,-50%) translate(calc(var(--mid-cols) * 138.8889%),calc(var(--mid-rows) * 138.8889% - 92%)) scale(1.08);filter:drop-shadow(0 24px 20px rgba(33,18,11,.36))}75%{transform:translate(-50%,-50%) translate(calc(var(--move-cols) * 104.1667%),calc(var(--move-rows) * 104.1667% - 68%)) scale(1.05);filter:drop-shadow(0 18px 14px rgba(33,18,11,.32))}to{transform:translate(-50%,-50%) translate(calc(var(--move-cols) * 138.8889%),calc(var(--move-rows) * 138.8889%)) scale(1);filter:drop-shadow(0 8px 10px rgba(33,18,11,.28))}}@media(prefers-reduced-motion:reduce){.animated-piece{animation-duration:80ms}}.modal-backdrop{background:#180b06ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.settings-modal{background:linear-gradient(180deg,#fff8ec,#efd6af)}.rules-panel section{background:#8b5a1f17;border:1px solid rgba(139,90,31,.18)}.results-banner{background:radial-gradient(circle at 50% 0%,rgba(245,208,122,.42),transparent 56%),linear-gradient(145deg,#7e442124,#bd1f1f1a);border-bottom:1px solid rgba(58,29,15,.12)}.results-banner svg{color:var(--accent-deep)}.results-actions{border-top:1px solid rgba(58,29,15,.1)}@media(max-width:760px){.checkers-board{width:min(100%,620px);border-width:12px}.board-shell{padding:10px}.home-hero:before,.setup-panel:before{top:9px;right:9px;bottom:9px;left:9px}}.hero-white{left:28%;top:28%;color:#f8fafc;background:radial-gradient(circle at 33% 23%,#ffffff,transparent 20%),linear-gradient(145deg,#fff8ec,#d6b98b)}.hero-white,.hero-black{display:grid;place-items:center;font-size:clamp(1.1rem,5vw,2rem);font-style:normal;line-height:1;text-shadow:0 2px 2px rgba(33,18,11,.28)}.chess-board{position:relative;display:grid;width:min(92vw,calc(100dvh - 250px),700px);aspect-ratio:1;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden;border:clamp(12px,2.2vw,22px) solid #35190c;border-radius:20px;background:#35190c;box-shadow:0 26px 44px #13090585,inset 0 0 0 2px #d7a2435c;touch-action:manipulation}.square.possible-move:has(.chess-piece):after{width:82%;background:transparent;border:4px solid rgba(245,208,122,.9);box-shadow:inset 0 0 0 2px #2a140940,0 0 20px #f5d07a73}.chess-piece{width:86%;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,min(8.4vw,8.4dvh),4.7rem);font-weight:400;line-height:1;text-shadow:0 2px 0 rgba(255,248,236,.55),0 7px 12px rgba(33,18,11,.42)}.chess-piece.white{color:#fff8ec;-webkit-text-stroke:1px rgba(64,35,17,.72)}.chess-piece.black{color:#21120b;-webkit-text-stroke:1px rgba(255,248,236,.42)}.chess-piece.king:before{content:none}.chess-piece.selected-piece{box-shadow:none;filter:drop-shadow(0 0 12px rgba(245,208,122,.82))}.animated-piece.chess-piece{width:10.75%;animation-name:chess-slide}@keyframes chess-slide{0%{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 8px 9px rgba(33,18,11,.28))}to{transform:translate(-50%,-50%) translate(calc(var(--move-cols) * 116.2791%),calc(var(--move-rows) * 116.2791%)) scale(1);filter:drop-shadow(0 10px 12px rgba(33,18,11,.35))}}.white-chip strong{color:#21120b;background:#fff8ec;border-color:#2a14099e}.white-chip.active{box-shadow:inset 6px 0 #fff8ec,0 16px 28px #21120b2e,inset 0 -5px #f5d07a47}@media(max-width:760px){.chess-board{width:min(100%,620px);border-width:12px}}:root{--paper: #e9eef3;--paper-soft: #f6f8fb;--ink: #172033;--muted: #61708a;--accent: #20c997;--accent-deep: #087f5b;--panel: #ffffff;--panel-soft: #eef4f8;--board-light: #ecf4ee;--board-dark: #2f7d6d;--shadow-offset: 0 24px 70px rgba(23, 32, 51, .18);--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px}body{background:linear-gradient(120deg,rgba(32,201,151,.11),transparent 28%),linear-gradient(300deg,rgba(61,90,128,.12),transparent 32%),repeating-linear-gradient(0deg,rgba(23,32,51,.025) 0 1px,transparent 1px 36px),#e9eef3;background-attachment:fixed}.home-hero,.setup-panel,.game-header,.settings-modal,.player-chip{background:#ffffffe0;border:1px solid rgba(122,140,163,.28);box-shadow:0 18px 50px #17203324,inset 0 1px #ffffffd1}.home-hero:before,.setup-panel:before,.home-hero:after{content:none}.eyebrow{color:var(--accent-deep);letter-spacing:.12em}h1,.game-header h1,.settings-modal h2,.results-banner h2{color:var(--ink);text-shadow:none}.hero-copy,.rules-panel p,.confirm-message{color:var(--muted)}.btn,.settings-header-button,.icon-button,.modal-close{border-radius:10px}.btn-primary{color:#fff;background:#1677ff;border:1px solid #0f5dcc;box-shadow:0 12px 22px #1677ff38}.btn-secondary,.icon-button{color:#082f25;background:#43e0ad;border:1px solid #16a67d;box-shadow:0 12px 22px #20c99738}.btn-quiet,.settings-header-button,.modal-close{color:var(--ink);background:#f7fafc;border:1px solid rgba(97,112,138,.28);box-shadow:0 8px 18px #17203314}.btn-danger{background:#e03131;border:1px solid #b02525;box-shadow:0 12px 22px #e0313133}.hero-dot-board{border:10px solid #172033;border-radius:16px;background:#172033;box-shadow:0 24px 48px #17203338,inset 0 0 0 1px #ffffff24;transform:rotate(-1deg)}.hero-dot-board span{background:var(--board-light)}.hero-dot-board span:nth-child(16n+2),.hero-dot-board span:nth-child(16n+4),.hero-dot-board span:nth-child(16n+6),.hero-dot-board span:nth-child(16n+8),.hero-dot-board span:nth-child(16n+9),.hero-dot-board span:nth-child(16n+11),.hero-dot-board span:nth-child(16n+13),.hero-dot-board span:nth-child(16n+15){background:var(--board-dark)}.hero-piece,.hero-white,.hero-black{width:18%;height:18%;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,8vw,3.7rem)}.hero-white{color:#fff;text-shadow:0 1px 0 #0f172a,0 3px 8px rgba(15,23,42,.28)}.hero-black{color:#0f172a;text-shadow:0 3px 8px rgba(15,23,42,.2)}.board-shell{padding:clamp(12px,2.3vw,28px);background:linear-gradient(145deg,#fff,#dbe5ee);border:1px solid rgba(122,140,163,.36);border-radius:24px;box-shadow:0 30px 70px #17203333,inset 0 1px #ffffffe6}.chess-board{border:clamp(10px,2vw,18px) solid #172033;border-radius:14px;background:#172033;box-shadow:0 22px 42px #1720333d,inset 0 0 0 1px #ffffff29}.square.light{background:var(--board-light)}.square.dark{background:var(--board-dark)}.square.dark:hover:not(:disabled),.square.light:hover:not(:disabled){filter:brightness(1.04)}.square.selected{box-shadow:inset 0 0 0 5px #20c997b8}.square.possible-move:after{width:25%;background:#1677ffc7;border:0;box-shadow:0 0 0 5px #1677ff24}.square.possible-move:has(.chess-piece):after{width:82%;background:transparent;border:4px solid rgba(22,119,255,.75);box-shadow:inset 0 0 0 2px #ffffff38}.piece.chess-piece,.piece.chess-piece.white,.piece.chess-piece.black{border:0;border-radius:0;background:transparent;box-shadow:none}.chess-piece{width:88%;color:currentColor;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.05rem,min(8.5vw,8.5dvh),4.8rem);font-weight:400;line-height:1;transform:none;transform-style:flat}.chess-piece.white{color:#fff;-webkit-text-stroke:0;text-shadow:0 2px 4px rgba(15,23,42,.2);filter:none}.chess-piece.black{color:#0f172a;-webkit-text-stroke:0;text-shadow:0 2px 4px rgba(15,23,42,.18);filter:none}.chess-piece.selected-piece{filter:none;text-shadow:0 0 10px rgba(32,201,151,.8)}.animated-piece.chess-piece{width:11%;animation-name:chess-piece-slide;animation-timing-function:ease-out;transform:translate(-50%,-50%)}@keyframes chess-piece-slide{0%{left:var(--start-left);top:var(--start-top);transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 8px 7px rgba(7,21,39,.24))}to{left:var(--end-left);top:var(--end-top);transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 10px 9px rgba(7,21,39,.28))}}.player-chip{border-radius:14px;background:#fffc}.player-chip.active{background:#fff;border-color:var(--accent);box-shadow:0 14px 30px #1720331f,inset 0 -4px #20c99738}.white-chip.active,.black-chip.active{box-shadow:inset 6px 0 0 var(--accent),0 14px 30px #1720331f,inset 0 -4px #20c99738}.player-chip strong{border:1px solid rgba(97,112,138,.36);box-shadow:none}.white-chip strong{color:#0f172a;background:#fff}.black-chip strong{color:#fff;background:#0f172a}.player-chip.active em{color:var(--accent-deep);background:#20c9971f;border-color:#20c99747}.settings-modal,.results-banner{background:#fff}.rules-panel section,.setup-block{background:#f6f8fb;border:1px solid rgba(122,140,163,.2)}.field input{background:#fff;border:1px solid rgba(97,112,138,.28);box-shadow:none}.check-alert{grid-area:check;display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:1px solid rgba(176,37,37,.26);border-radius:12px;padding:10px 14px;color:#7f1d1d;background:#fff1f2;box-shadow:0 12px 24px #7f1d1d1a;text-align:center}.check-alert strong{border-radius:999px;padding:5px 10px;color:#fff;background:#e03131;font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.check-alert span{font-weight:850;overflow-wrap:anywhere}:root{--board-light: #c9bd8f;--board-dark: #2f796f}.chess-piece.white{-webkit-text-stroke:1px rgba(15,23,42,.34);text-shadow:0 2px 3px rgba(15,23,42,.22)}:root{--paper: #dcecff;--paper-soft: #edf6ff;--ink: #071527;--muted: #48657f;--accent: #0ea5e9;--accent-deep: #075985;--panel: #ffffff;--panel-soft: #e7f3ff;--board-light: #91c4f2;--board-dark: #0b7097;--shadow-offset: 0 24px 70px rgba(7, 21, 39, .18)}body{background:radial-gradient(circle at 18% 10%,rgba(145,196,242,.72),transparent 28%),radial-gradient(circle at 86% 20%,rgba(14,165,233,.2),transparent 30%),linear-gradient(135deg,#eff7ff,#cfe7ff);background-attachment:fixed}.home-hero,.setup-panel,.game-header,.settings-modal,.player-chip{background:#ffffffe6;border-color:#07598538;box-shadow:0 18px 50px #07152721,inset 0 1px #ffffffdb}.hero-dot-board,.chess-board{border-color:#071527;background:#071527;box-shadow:0 22px 44px #07152742,inset 0 0 0 1px #ffffff29}.board-shell{background:linear-gradient(145deg,#f7fbff,#b9d9f5);border-color:#07598552;box-shadow:0 30px 70px #07152733,inset 0 1px #ffffffeb}.hero-dot-board span,.square.light{background:var(--board-light)}.hero-dot-board span:nth-child(16n+2),.hero-dot-board span:nth-child(16n+4),.hero-dot-board span:nth-child(16n+6),.hero-dot-board span:nth-child(16n+8),.hero-dot-board span:nth-child(16n+9),.hero-dot-board span:nth-child(16n+11),.hero-dot-board span:nth-child(16n+13),.hero-dot-board span:nth-child(16n+15),.square.dark{background:var(--board-dark)}.square{box-shadow:inset 0 0 0 1px #07152761}.square.selected{box-shadow:inset 0 0 0 1px #07152761,inset 0 0 0 5px #facc15c7}.square.possible-move:after{background:#facc15e6;box-shadow:0 0 0 5px #0715271f}.square.possible-move:has(.chess-piece):after{border-color:#facc15eb}.chess-piece.white{color:#fff;-webkit-text-stroke:1.35px #071527;text-shadow:0 2px 2px rgba(7,21,39,.28)}.chess-piece.black{color:#020617;-webkit-text-stroke:.7px rgba(255,255,255,.65);text-shadow:0 2px 2px rgba(7,21,39,.18)}.btn-primary{background:#0b70d7;border-color:#0755a8;box-shadow:0 12px 22px #0b70d738}.btn-secondary,.icon-button{color:#071527;background:#91c4f2;border-color:#3b82c4;box-shadow:0 12px 22px #3b82c438}.player-chip.active{border-color:var(--accent);box-shadow:0 14px 30px #0715271f,inset 0 -4px #0ea5e933}.white-chip.active,.black-chip.active{box-shadow:inset 6px 0 0 var(--accent),0 14px 30px #0715271f,inset 0 -4px #0ea5e933}.player-chip.active em{color:#075985;background:#0ea5e91f;border-color:#0ea5e947}.board-shell{grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);gap:clamp(14px,2vw,28px);align-items:center}.board-shell .chess-board{width:min(62vw,calc(100dvh - 250px),700px)}.captured-tray{display:grid;align-content:start;gap:10px;min-height:min(100%,380px);width:100%;max-width:220px;border:1px solid rgba(7,89,133,.2);border-radius:14px;padding:12px;background:#ffffffa3;box-shadow:inset 0 1px #fffc}.captured-tray:first-child{justify-self:end}.captured-tray:last-child{justify-self:start}.captured-tray span{color:var(--accent-deep);font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.captured-pieces{display:flex;flex-wrap:wrap;gap:4px 6px;align-content:flex-start;min-height:42px}.captured-pieces em{color:var(--muted);font-size:.85rem;font-style:normal;font-weight:750}.captured-piece{display:inline-grid;width:28px;height:28px;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-style:normal;line-height:1}.captured-piece.white{color:#fff;-webkit-text-stroke:.8px #071527;text-shadow:0 1px 1px rgba(7,21,39,.22)}.captured-piece.black{color:#020617;-webkit-text-stroke:.45px rgba(255,255,255,.62);text-shadow:0 1px 1px rgba(7,21,39,.12)}.promotion-modal{width:min(560px,100%)}.promotion-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;margin-top:18px}.promotion-option{display:grid;min-height:106px;place-items:center;gap:8px;border:1px solid rgba(7,89,133,.22);border-radius:12px;padding:12px;color:var(--ink);background:#eef7ff;cursor:pointer;box-shadow:0 10px 20px #07152714;text-transform:capitalize;transition:transform .12s ease,border-color .12s ease,background .12s ease}.promotion-option:hover{border-color:var(--accent);background:#dcefff;transform:translateY(-1px)}.promotion-option:active{transform:translateY(1px)}.promotion-option .captured-piece{width:42px;height:42px;font-size:2.6rem}.promotion-option span{font-weight:900}@media(max-width:900px){.board-shell{grid-template-columns:1fr}.captured-tray,.captured-tray:first-child,.captured-tray:last-child{justify-self:stretch;max-width:none;min-height:0}.board-shell .chess-board{width:min(100%,620px)}}.piece.chess-piece,.piece.chess-piece.white,.piece.chess-piece.black{width:88%;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;filter:drop-shadow(0 8px 7px rgba(7,21,39,.24))}.chess-piece.white{--piece-fill: #f6e7c8;--piece-stroke: #8b6d42;--piece-base: #dec38f;--piece-rim: #fff3d6;--piece-detail: #b48a4b;--piece-shadow: rgba(59, 39, 12, .22)}.chess-piece.black{--piece-fill: #17191f;--piece-stroke: #05070b;--piece-base: #080a0f;--piece-rim: #2c3039;--piece-detail: #9aa4b5;--piece-shadow: rgba(0, 0, 0, .42)}.piece-svg{display:block;width:100%;height:100%;overflow:visible;transform:scaleY(1.22);transform-origin:50% 86%}.piece-svg path,.piece-svg circle,.piece-svg ellipse{vector-effect:non-scaling-stroke}.piece-shadow{fill:var(--piece-shadow);stroke:none}.piece-main,.piece-base{stroke:var(--piece-stroke);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.piece-main{fill:var(--piece-fill)}.piece-base{fill:var(--piece-base)}.piece-base-wide{stroke-width:2.4}.piece-rim{fill:var(--piece-rim);stroke:var(--piece-stroke);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.piece-detail{fill:var(--piece-detail);stroke:var(--piece-stroke);stroke-width:1.8}.piece-cut,.piece-cross,.piece-glint{fill:none;stroke-linecap:round;stroke-linejoin:round}.piece-cut,.piece-cross{stroke:var(--piece-stroke);stroke-width:2.6}.piece-glint{stroke:#ffffff94;stroke-width:1.8}.piece-highlight{fill:none;stroke:#ffffff94;stroke-width:2.2;stroke-linecap:round}.chess-piece.black .piece-highlight,.chess-piece.black .piece-glint{stroke:#ffffff38}.chess-piece.selected-piece{filter:drop-shadow(0 0 7px rgba(250,204,21,.94)) drop-shadow(0 8px 8px rgba(7,21,39,.24))}.animated-piece.chess-piece{width:11%}.chess-move-animation{position:absolute;z-index:6;display:grid;width:12.5%;aspect-ratio:1;place-items:center;left:var(--start-left);top:var(--start-top);pointer-events:none;transform:translate(-50%,-50%);animation:chess-square-slide .24s cubic-bezier(.2,0,.2,1) forwards;will-change:left,top}.chess-move-animation .chess-piece{width:88%}@keyframes chess-square-slide{0%{left:var(--start-left);top:var(--start-top)}to{left:var(--end-left);top:var(--end-top)}}.captured-piece,.captured-piece.white,.captured-piece.black{color:inherit;-webkit-text-stroke:0;text-shadow:none}.captured-piece.white{--piece-fill: #f6e7c8;--piece-stroke: #8b6d42;--piece-base: #dec38f;--piece-rim: #fff3d6;--piece-detail: #b48a4b;--piece-shadow: rgba(59, 39, 12, .18)}.captured-piece.black{--piece-fill: #17191f;--piece-stroke: #05070b;--piece-base: #080a0f;--piece-rim: #2c3039;--piece-detail: #9aa4b5;--piece-shadow: rgba(0, 0, 0, .36)}.promotion-option .captured-piece{width:56px;height:56px}
