@font-face{font-family:Atelier;src:local("Georgia");font-display:swap}
:root{color-scheme:dark;--ink:#192126;--deep:#121a1e;--surface:#202a2f;--ivory:#f1eadc;--muted:#9da7a7;--brass:#d0b17c;--brass-light:#e8cea0;--line:#ffffff13;--font:"Segoe UI",-apple-system,BlinkMacSystemFont,sans-serif;--display:Atelier,Georgia,"Times New Roman",serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 48% 35%,#38403b55,transparent 52%),radial-gradient(ellipse at 50% 100%,#101b23,transparent 70%),var(--ink);color:var(--ivory);font-family:var(--font);font-size:14px;line-height:1.5;min-height:100vh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--brass-light);outline-offset:5px}button{border:0}a{color:inherit}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h2,h3{font-size:15px;font-weight:500}p{color:var(--muted)}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.app-shell{max-width:1552px;padding:0 52px;margin:0 auto}
.site-header{display:flex;align-items:center;justify-content:space-between;height:108px;border-bottom:1px solid var(--line);gap:32px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-family:var(--display);font-size:32px;letter-spacing:.015em;line-height:1.1}.brand-tagline{display:block;font-family:var(--font);font-size:10px;letter-spacing:.07em;color:var(--muted);margin-top:7px}.brand-mark{position:relative;width:37px;height:42px;display:block}.brand-mark i{position:absolute;border:1px solid var(--brass);width:29px;height:17px;left:2px;border-radius:50%;background:var(--ink)}.brand-mark i:nth-child(1){top:24px}.brand-mark i:nth-child(2){top:16px}.brand-mark i:nth-child(3){top:8px;background:linear-gradient(135deg,#d0b17c33,#d0b17c08)}.site-header nav{display:flex;gap:34px;align-self:stretch;align-items:center}.site-header nav button,.site-header nav span{font-size:13px;color:var(--muted);background:none;height:100%;position:relative}.site-header nav button:hover{color:var(--ivory)}.site-header nav .nav-current{color:var(--ivory);display:flex;align-items:center}.nav-current:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--brass)}.header-actions{display:flex;align-items:center;gap:18px}.icon-button{background:transparent;display:grid;place-items:center;min-width:36px;min-height:36px;color:var(--muted);border-radius:6px}.icon-button:hover{color:var(--ivory);background:#ffffff08}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;min-height:46px;border-radius:7px;font-weight:500;font-size:13px;transition:background .2s,box-shadow .2s,transform .2s}.button svg{width:18px;height:18px}.button.primary{background:linear-gradient(110deg,#d8ba86,#bfa06b);color:#29271e;box-shadow:0 2px 0 #846d43,0 5px 16px #0002}.button.primary:hover:not(:disabled){background:linear-gradient(110deg,#e9cea0,#d0af79);transform:translateY(-1px)}.button.subtle{border:1px solid #ffffff20;background:#ffffff03;color:#d8dbd8}.button.subtle:hover:not(:disabled){background:#ffffff09}.button.small{padding:10px 13px;min-height:38px;font-size:12px}.button.full{width:100%}.intro{padding:34px 0 34px;display:flex;align-items:center;justify-content:space-between}.intro h1{font:normal clamp(30px,3vw,43px)/1.2 var(--display);letter-spacing:-.035em}.intro p{margin-top:12px;font-size:13px;color:#a4afae}.edition{display:flex;align-items:center;gap:15px;font-size:13px;margin-right:5px}.edition small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.edition-line{display:block;height:34px;width:2px;background:linear-gradient(transparent,var(--brass),transparent)}
.game-layout{display:grid;grid-template-columns:minmax(220px,260px) minmax(340px,1fr) minmax(208px,248px);gap:40px;align-items:start}.setup-panel,.match-panel{padding-top:10px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.panel-heading h2{font-size:15px;color:#dce0dc;font-weight:500}.tiny-diamond{width:6px;height:6px;background:var(--brass);transform:rotate(45deg);opacity:.6}.mode-picker{display:grid;gap:9px}.mode-button{display:flex;align-items:center;gap:11px;text-align:left;width:100%;padding:14px 12px;min-height:70px;border:1px solid #ffffff11;border-radius:8px;background:#ffffff02;transition:background .2s,border-color .2s}.mode-button>svg{color:#929d9b;width:21px;height:21px}.mode-button>span:nth-child(2){flex:1;white-space:nowrap;font-size:12px;font-weight:500}.mode-button small{display:block;font-weight:400;font-size:10px;color:var(--muted);margin-top:5px}.mode-button.selected{background:linear-gradient(110deg,#cfb28113,#cfb28104);border-color:#b69c6966}.mode-button.selected>svg{color:var(--brass)}.mode-button:hover{background:#ffffff06}.mode-radio{width:12px;height:12px;border:1px solid #ffffff25;border-radius:50%;flex-shrink:0}.selected .mode-radio{border-color:var(--brass);background:var(--brass);box-shadow:inset 0 0 0 3px #30372f}.setup-fields{margin:26px 0}.field{margin-bottom:20px}.field label,.color-field legend{display:block;color:#bfc6c1;font-size:12px;margin-bottom:10px}.field select{width:100%;height:43px;padding:0 13px;background:#151f24;color:var(--ivory);border:1px solid #ffffff19;border-radius:6px;font-size:12px;cursor:pointer}.field-note{font-size:11px;line-height:1.7;margin-top:9px;min-height:38px}.color-field{padding:0;border:none;margin:0}.color-options{display:flex;gap:9px}.color-options label{flex:1;cursor:pointer;position:relative}.color-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}.color-option{display:grid;grid-template-columns:22px 1fr;align-items:center;column-gap:9px;font-size:12px;padding:12px 10px;background:#ffffff02;border:1px solid #ffffff12;border-radius:6px;transition:border-color .2s}.color-option small{grid-column:2;font-size:9px;color:var(--muted);margin-top:3px}.color-option .mini-piece{grid-row:span 2;width:21px;height:21px}.color-options input:checked+.color-option{border-color:#d0b17c88;background:#d0b17c0a}.color-options input:focus-visible+.color-option{outline:2px solid var(--brass);outline-offset:3px}.unhurried{display:flex;justify-content:center;align-items:center;gap:6px;font-size:9px;margin-top:16px;color:#939f9c}.unhurried svg{width:12px;height:12px}.table-note{border-top:1px solid var(--line);margin-top:30px;padding-top:23px;text-align:center}.note-ornament{font-size:25px;color:#bba06c}.table-note p{font:italic 14px/1.7 var(--display);color:#99a39e;margin-top:8px}
.table-area{max-width:660px;width:100%;justify-self:center}.player-strip{display:flex;align-items:center;gap:12px;padding:0 8px 16px;min-height:65px}.player-avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:10px;border:1px solid #ffffff20;box-shadow:0 3px 5px #0002}.dark-avatar{background:linear-gradient(140deg,#3d474b,#20282e);color:var(--brass)}.light-avatar{background:linear-gradient(145deg,#e9ddc3,#ad9d7a);color:#5b4c31;border-color:#eee1c26b}.player-avatar svg{width:21px;height:21px}.player-info strong{font-size:14px;font-weight:500;display:block}.player-info>span{font-size:10px;color:var(--muted);display:block;margin-top:2px}.player-count{margin-left:auto;display:flex;align-items:center;gap:7px;color:#aeb8b3;font-size:12px;font-variant-numeric:tabular-nums}.player-count .mini-piece{width:14px;height:14px}.turn-pill{font-size:10px;color:var(--brass-light);background:#d0b17c10;border:1px solid #d0b17c24;border-radius:20px;padding:4px 10px;margin-left:3px}.board-surround{position:relative;isolation:isolate}.board-frame{position:relative;padding:27px;background:repeating-linear-gradient(94deg,#00000008 0 2px,transparent 2px 8px),linear-gradient(120deg,#7e5940,#51392b 22%,#694a35 46%,#483225 80%,#694a34);border:1px solid #ac835252;border-radius:9px;box-shadow:inset 0 1px 1px #f7d9a54a,inset 0 0 0 5px #6a4a3522,0 4px 0 #2d231d,0 7px 0 #2a231d,0 10px 1px #101918,0 22px 28px #0004,0 45px 75px #0003}.board-frame:before{content:"";position:absolute;inset:23px;border:1px solid #b38d5f6b;border-radius:2px;pointer-events:none;box-shadow:0 0 0 2px #211b1755}.board-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));aspect-ratio:1;border:1px solid #21180d;box-shadow:0 0 6px #0008;position:relative;z-index:1;background:#bdab8a}.square{padding:0;position:relative;display:grid;place-items:center;aspect-ratio:1;border:0;border-radius:0;min-width:0;min-height:0;touch-action:manipulation}.square.light{background:repeating-linear-gradient(87deg,#ffffff08 0 1px,transparent 1px 7px),linear-gradient(115deg,#dbc9a6,#c3ae89 63%,#d0bb96)}.square.dark{background:repeating-linear-gradient(91deg,#1c110b0a 0 2px,transparent 2px 6px),linear-gradient(110deg,#7d5d46,#684b36 70%,#79563b);box-shadow:inset 0 0 1px #37231950}.square.dark:before{content:"";position:absolute;inset:0;transition:background .15s;pointer-events:none}.square.dark:hover:before{background:#f2dcab15}.square.last-move:before{background:#e8c36128}.square.selected:before{background:#f7cf7770;box-shadow:inset 0 0 0 2px #ffe5a5a0}.square.path-step:before{background:#d5ad5755}.square:focus-visible{outline:3px solid #fff4c6;outline-offset:-3px;z-index:3}.square.destination:after{content:"";width:24%;height:24%;border-radius:50%;background:radial-gradient(circle,#f4dca6,#d7b575);box-shadow:0 0 0 6px #e8c78520,0 2px 3px #0002;position:absolute;pointer-events:none}.square.can-select .piece{cursor:pointer}.square.can-select:hover .piece{transform:translateY(-3px);filter:brightness(1.07)}.square-number{position:absolute;left:4px;top:2px;font-size:8px;line-height:1.2;color:#ead7b350;pointer-events:none}.square.selected .square-number{color:#fff2c6}.piece{position:relative;width:77%;height:73%;border-radius:50%;pointer-events:none;display:grid;place-items:center;transition:transform .18s,filter .18s;z-index:2}.piece:before{content:"";position:absolute;inset:12%;border-radius:50%;pointer-events:none}.piece:after{content:"";position:absolute;inset:21%;border-radius:50%;pointer-events:none}.piece.ivory{background:radial-gradient(ellipse at 33% 24%,#faf4e3 0%,#e6d9bc 50%,#c6b28b 77%,#eddcbb 80%,#b29a70 88%,#dec9a1 96%);border:1px solid #f6e7c4;box-shadow:0 2px 0 #b39b6c,0 4px 0 #8b7655,0 5px 1px #614c33,1px 7px 5px #20140770,inset 0 2px 2px #fff8}.piece.ivory:before{border:1px solid #a58c5b7a;box-shadow:inset 0 1px 2px #7f683e45,0 1px 0 #fff8}.piece.ivory:after{border:1px solid #f9edcf77;background:radial-gradient(ellipse at 40% 35%,#f6edd62e,#c3aa7b22)}.piece.ebony{background:radial-gradient(ellipse at 35% 22%,#596065 0%,#333b40 40%,#252c30 72%,#5c6364 78%,#1e2529 86%,#41494d 97%);border:1px solid #737774;box-shadow:0 2px 0 #242a2e,0 4px 0 #111b20,0 5px 1px #080d0f,1px 7px 5px #140d087d,inset 0 2px 1px #ffffff30}.piece.ebony:before{border:1px solid #141c23;box-shadow:0 1px 0 #ffffff29,inset 0 2px 2px #080e1180}.piece.ebony:after{border:1px solid #70777b33;background:radial-gradient(ellipse at 38% 20%,#6d767721,#111b2022)}.piece.king{height:75%;transform:translateY(-3px)}.piece.king.ivory{box-shadow:0 2px 0 #b39b6c,0 4px 0 #dec9a1,0 6px 0 #8b7655,0 8px 0 #c1a87d,0 9px 1px #614c33,1px 11px 6px #20140780}.piece.king.ebony{box-shadow:0 2px 0 #242a2e,0 4px 0 #50585a,0 6px 0 #111b20,0 8px 0 #343c40,0 9px 1px #080d0f,1px 11px 6px #140d0880}.piece svg{position:absolute;inset:30.5%;width:39%;height:39%;z-index:2;stroke-width:1.6}.piece.ivory svg{color:#8b7145}.piece.ebony svg{color:#cfb782}.mini-piece{display:inline-block;flex-shrink:0;border-radius:50%;border:1px solid #ffffff30;width:17px;height:17px}.mini-piece.ivory{background:radial-gradient(circle at 30% 30%,#f6edd8,#c3b08b);box-shadow:0 2px 0 #8e7b59,inset 0 0 0 3px #d0be99}.mini-piece.ebony{background:radial-gradient(circle at 30% 30%,#626b6d,#273036);box-shadow:0 2px 0 #11191e,inset 0 0 0 3px #434d50}.coordinates{position:absolute;display:grid;color:#dcc5a0a1;font-size:10px;font-weight:500;pointer-events:none;font-family:var(--font)}.coordinates-files{bottom:6px;left:27px;right:27px;grid-template-columns:repeat(8,1fr);text-align:center}.coordinates-ranks{top:27px;bottom:27px;left:10px;grid-template-rows:repeat(8,1fr);align-items:center}.frame-corner{width:5px;height:5px;position:absolute;background:#b99b6799;transform:rotate(45deg)}.frame-corner.top-left{left:11px;top:11px}.frame-corner.bottom-right{right:11px;bottom:11px}.bottom-player{padding:24px 8px 0}.board-status{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;margin-top:15px;font-size:11px;text-align:center;color:#c1c7bc}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--brass);flex-shrink:0}.status-dot.thinking{animation:breathe 1.2s ease-in-out infinite}.board-tools{display:flex;align-items:center;justify-content:center;gap:18px;padding:5px 0 2px}.tool-button{display:flex;align-items:center;gap:7px;background:none;color:#a5aeaa;font-size:11px;padding:8px 0;min-height:36px}.tool-button:hover:not(:disabled){color:var(--brass-light)}.tool-button svg{width:16px;height:16px}.tool-divider{height:13px;width:1px;background:var(--line)}
.live-badge{font-size:9px;background:#ffffff05;border:1px solid #ffffff12;padding:3px 7px;border-radius:4px;color:#aeb6b1}.live-badge.live{color:#afc5b1;border-color:#93b29a30;background:#93b29a0a}.live-badge.live:before{content:"";width:4px;height:4px;background:#9bbba3;display:inline-block;border-radius:50%;margin-right:5px}.match-summary{border-bottom:1px solid var(--line);padding:0 0 23px}.match-summary>span{font-size:10px;color:var(--brass)}.match-summary strong{display:block;font:normal 23px/1.3 var(--display);margin:11px 0 10px;letter-spacing:-.025em;max-width:210px}.match-summary p{font-size:11px;line-height:1.8}.moves-header{display:flex;align-items:center;justify-content:space-between;margin:23px 0 15px}.moves-header h3,.captured-section h3{font-size:12px}.moves-header>span{font-size:10px;color:#aab3ae;border:1px solid #ffffff15;min-width:22px;padding:1px 5px;text-align:center;border-radius:4px}.history-columns,.history-row{display:grid;grid-template-columns:28px 1fr 1fr;align-items:center;gap:9px}.history-columns{color:#9aa7a3;font-size:10px;padding:0 7px 10px;border-bottom:1px solid var(--line)}.history-columns>span{display:flex;align-items:center;gap:6px}.piece-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.white-dot{background:#d8c9a9}.black-dot{background:#3c484e;border:1px solid #74807e}.move-history{height:188px;overflow:auto;padding:5px 0;scrollbar-width:thin;scrollbar-color:#5a60584a transparent}.history-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;gap:16px}.history-empty p{text-align:center;font-size:11px;line-height:1.8;color:#7e8f8d}.empty-diagram{display:grid;grid-template-columns:repeat(2,12px);gap:3px;transform:rotate(-9deg);opacity:.6}.empty-diagram i{width:12px;height:12px;border:1px solid #92a29a50;border-radius:1px}.empty-diagram i:nth-child(2),.empty-diagram i:nth-child(3){background:#92a29a30}.history-row{padding:8px 7px;font-size:11px;font-variant-numeric:tabular-nums;border-radius:3px;min-height:33px}.history-row:nth-child(even){background:#ffffff03}.history-row>span:first-child{color:#718580;font-size:10px}.history-row>span{overflow-wrap:anywhere}.history-row .latest{color:var(--brass-light)}.captured-section{padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.captured-row{display:flex;align-items:center;gap:9px;margin-top:13px;font-size:10px;color:#9ba8a2;min-height:16px}.captured-row>span{min-width:59px}.captured-pieces{display:flex;align-items:center;flex-wrap:wrap;gap:1px}.captured-pieces .mini-piece{width:11px;height:11px;margin-left:-2px}.empty-capture{color:#627570}.help-note{display:flex;gap:9px;margin-top:20px}.help-note svg{width:15px;height:15px;color:var(--brass);margin-top:2px}.help-note p{font-size:10px;line-height:1.8}.resign-button{display:flex;gap:7px;align-items:center;background:none;color:#8b9b97;font-size:10px;margin-top:21px;padding:9px 0}.resign-button svg{width:13px;height:13px}.resign-button:hover{color:#e4b5a5}.join-area,.retry-area{margin-top:18px}.retry-area p{color:#e3b8a5;font-size:12px;margin-bottom:12px}.retry-area button{font-size:12px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin:38px 0 0;padding:24px 0 26px;font-size:10px;color:#83918b}footer>span:first-child{color:#a3aca3}footer>span:first-child::first-letter{font-family:var(--display)}footer .footer-dot{padding:0 9px;color:#697c73}footer button{font-size:10px;color:#9fa99e;background:none}footer button:hover{color:var(--ivory)}
dialog{color:var(--ivory);background:linear-gradient(140deg,#2b3739,#1c292e);border:1px solid #b6a07640;border-radius:15px;padding:30px 34px;max-width:570px;width:calc(100% - 36px);box-shadow:0 30px 100px #0008;max-height:calc(100dvh - 64px);overflow:auto;scrollbar-width:thin}dialog::backdrop{background:#071015bd;backdrop-filter:blur(9px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.dialog-emblem{width:39px;height:39px;border:1px solid #d0b17c40;border-radius:9px;display:grid;place-items:center;color:var(--brass)}dialog h2{font:normal 32px/1.2 var(--display);letter-spacing:-.03em;margin-bottom:15px}.dialog-lead{font-size:13px;color:#b4beb5;margin-bottom:23px}dialog>p{font-size:13px;line-height:1.8;margin-bottom:17px}.rules-list{display:grid;gap:20px;margin-bottom:23px}.rules-list h3{color:var(--brass-light);font-size:13px;margin-bottom:7px}.rules-list p{font-size:12px;line-height:1.8}.text-link{font-size:11px;color:var(--brass);text-underline-offset:4px}.model-cards{display:grid;gap:13px;margin:20px 0}.model-card{padding:17px 18px;border:1px solid #ffffff15;border-radius:8px;background:#ffffff03}.model-card h3{color:var(--brass-light);font:normal 22px var(--display);margin-bottom:9px}.model-card p{font-size:12px;line-height:1.8}.dialog-footnote{font-size:11px!important;color:#8e9c93;line-height:1.8!important}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.share-label{font-size:12px;display:block;margin-bottom:8px}.share-input{display:flex;gap:10px;margin-bottom:18px}.share-input input{width:100%;min-width:0;color:#d8ddcf;background:#121c20;border:1px solid #ffffff18;border-radius:6px;padding:10px;font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 22px;background:#354340;border:1px solid #c4b18b55;box-shadow:0 10px 40px #0007;border-radius:8px;font-size:12px;z-index:10;max-width:min(90vw,550px);text-align:center}.toast.error{background:#4a3330;color:#f6ddd4;border-color:#b9816060}.noscript{position:fixed;inset:auto 0 0;padding:20px;background:#c5a770;color:#201d17;text-align:center}.result-glow .board-frame{box-shadow:inset 0 1px 1px #f7d9a54a,0 4px 0 #2d231d,0 7px 0 #2a231d,0 22px 28px #0004,0 0 60px #d0b17c18}@keyframes breathe{0%,100%{opacity:.4;box-shadow:0 0 0 0 #d0b17c00}50%{opacity:1;box-shadow:0 0 0 4px #d0b17c18}}
@media(min-width:1500px){.game-layout{gap:48px;grid-template-columns:260px 1fr 260px}.intro{padding:38px 0}.table-area{max-width:660px}}
@media(max-width:1250px){.app-shell{padding:0 30px}.game-layout{gap:25px;grid-template-columns:215px minmax(300px,1fr) 207px}.mode-button{padding:12px 10px;gap:8px}.mode-button small{font-size:9px}.mode-button>span:nth-child(2){font-size:11px}.mode-radio{width:10px;height:10px}.board-frame{padding:22px}.board-frame:before{inset:18px}.coordinates-files{left:22px;right:22px;bottom:4px}.coordinates-ranks{top:22px;bottom:22px;left:8px}.site-header nav{gap:24px}.intro h1{font-size:36px}.game-layout .match-summary strong{font-size:22px}.move-history{height:160px}.board-tools{gap:13px}.mode-button>svg{width:18px;height:18px}}
@media(max-width:1020px){.game-layout{grid-template-columns:215px minmax(300px,1fr);gap:32px}.match-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding-top:8px}.match-panel>.panel-heading{grid-column:1}.match-summary{grid-column:1;grid-row:2/5}.match-summary strong{max-width:none}.moves-header{grid-column:2;grid-row:1;margin:0 0 15px}.history-columns{grid-column:2;grid-row:2}.move-history{grid-column:2;grid-row:3/7;height:180px}.captured-section{grid-column:1;border-top:0}.help-note{grid-column:1;margin-top:14px}.resign-button{grid-column:1}.join-area,.retry-area{grid-column:1}.site-header nav{display:none}.intro{padding:30px 0}.table-note{margin-top:22px}.setup-panel{padding-top:8px}.table-area{max-width:620px}.edition{display:none}}
@media(max-width:700px){.app-shell{padding:0 18px}.site-header{height:82px;gap:16px}.brand{font-size:28px;gap:9px}.brand-tagline{font-size:9px;margin-top:5px}.brand-mark{transform:scale(.85);width:31px}.header-actions{gap:5px}.header-actions .button{padding:9px}.header-actions .button span{display:none}.intro{padding:27px 1px 25px}.intro h1{font-size:31px}.intro p{font-size:11px;line-height:1.7;max-width:280px;margin-top:9px}.game-layout{display:flex;flex-direction:column;gap:26px}.table-area{order:1}.setup-panel{order:2;width:100%;padding:21px 0 0;border-top:1px solid var(--line)}.match-panel{order:3;width:100%;padding-top:21px;border-top:1px solid var(--line);display:block}.setup-panel .panel-heading{margin-bottom:15px}.mode-picker{grid-template-columns:repeat(3,1fr);gap:7px}.mode-button{flex-direction:column;gap:8px;align-items:flex-start;padding:12px 9px;min-height:76px;position:relative}.mode-button>span:nth-child(2){font-size:10px;white-space:normal}.mode-button small{display:none}.mode-radio{position:absolute;right:10px;top:16px}.setup-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:19px 0}.setup-fields .field{margin:0}.field-note{font-size:10px;min-height:0}.field label,.color-field legend{font-size:11px}.color-option{padding:10px 6px;grid-template-columns:17px 1fr;column-gap:5px;font-size:10px}.color-option .mini-piece{width:17px;height:17px}.color-option small{font-size:8px}.color-options{gap:5px}.color-field{align-self:start}.unhurried{font-size:10px}.table-note{display:none}.board-frame{padding:22px}.player-strip{padding-left:5px;padding-right:5px;min-height:56px}.player-avatar{width:34px;height:34px;border-radius:8px}.player-info strong{font-size:13px}.player-info>span{font-size:10px}.bottom-player{padding-top:20px}.board-tools{gap:20px}.board-status{margin-top:10px;font-size:10px;min-height:38px}.tool-button{font-size:11px}.match-panel .panel-heading{margin-bottom:16px}.match-summary{padding-bottom:19px}.match-summary strong{font-size:25px}.moves-header{margin:19px 0 13px}.move-history{height:140px}.match-summary p{font-size:12px}.history-row{font-size:12px}.help-note p{font-size:11px}.resign-button{font-size:11px}.captured-row{font-size:11px}footer{margin-top:28px;padding:23px 0;flex-wrap:wrap;gap:12px;font-size:9px}footer>span:nth-child(2){display:none}dialog{padding:23px}dialog h2{font-size:29px}.dialog-actions .button{font-size:11px;padding:10px}.share-input{flex-wrap:wrap}.share-input button{width:100%}.square-number{font-size:7px}.frame-corner.top-left{top:8px;left:8px}.frame-corner.bottom-right{bottom:8px;right:8px}}
.mobile-start{display:none}.square.pending-capture .piece{opacity:.35;filter:grayscale(.5)}
@media(min-width:1021px) and (max-height:1050px){.site-header{height:82px}.intro{padding:24px 0 26px}.intro h1{font-size:35px}.intro p{margin-top:8px}.table-area{max-width:clamp(400px,calc(100svh - 430px),660px)}.player-strip{min-height:53px;padding-bottom:12px}.bottom-player{padding-top:18px;padding-bottom:0}.board-status{min-height:32px;margin-top:10px}.board-tools{padding:0}.table-note{margin-top:22px;padding-top:15px}footer{margin-top:25px}}
@media(max-width:700px){.mobile-start:not([hidden]){display:flex;position:fixed;bottom:18px;left:18px;right:18px;width:calc(100% - 36px);z-index:7;box-shadow:0 4px 30px #0008,0 0 0 6px #19212699;min-height:48px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The tournament register shares the table's ivory, brass and ink palette. */
.field input{width:100%;min-width:0;height:43px;padding:0 13px;background:#151f24;color:var(--ivory);border:1px solid #ffffff25;border-radius:6px;font-size:12px}.field input::placeholder{color:#a4aeab}.player-info{min-width:0}.player-info strong{overflow-wrap:anywhere}.join-area .field{margin-bottom:12px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.leaderboard-dialog{width:min(1040px,calc(100vw - 40px));max-width:1040px;max-height:88svh;padding:34px 38px}.leaderboard-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.leaderboard-heading .dialog-lead{margin-bottom:0}.scoring-key{display:flex;align-items:baseline;gap:7px;white-space:nowrap;font-size:11px}.scoring-key strong{color:var(--brass-light);font-family:var(--display);font-size:25px;font-weight:400;margin-left:9px}.leaderboard-filters{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:28px;padding-bottom:20px;border-bottom:1px solid var(--line)}.leaderboard-filters .field{margin:0;min-width:150px}.leaderboard-filters label{font-size:10px;margin-bottom:6px}.leaderboard-filters select{height:38px}.match-type-tabs{display:flex;gap:5px;flex-wrap:wrap}.match-type-tabs button{background:transparent;color:#b0bbb6;border:1px solid transparent;border-radius:5px;padding:10px 12px;font-size:12px}.match-type-tabs button:hover{background:#ffffff08;color:var(--ivory)}.match-type-tabs [aria-pressed=true]{background:#d0b17c15;border-color:#d0b17c50;color:var(--brass-light)}.leaderboard-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:15px 0}.leaderboard-summary p{font-size:11px}.leaderboard-summary .tool-button{flex-shrink:0}.standings-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b59b6555 transparent}.standings-table{width:100%;border-collapse:collapse;font-size:12px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.standings-table th{font-weight:400;color:#aab6b0;font-size:10px;padding:11px 14px;border-bottom:1px solid #ffffff22}.standings-table td{padding:13px 14px;border-bottom:1px solid #ffffff09}.standings-table th:nth-child(2),.standings-table td:nth-child(2){text-align:left;width:100%}.standings-table th:first-child,.standings-table td:first-child{text-align:left;padding-left:10px}.standings-table abbr{text-decoration:none}.standings-table tbody tr:nth-child(odd){background:#ffffff02}.standings-table tbody tr:first-child{background:linear-gradient(90deg,#d0b17c14,transparent 75%)}.standing-rank{color:#a89b7f}.standing-name{font-weight:500}.participant-kind{font-size:9px;color:var(--muted);margin-left:10px}.standing-points{font-family:var(--display);font-size:24px;color:var(--brass-light)}.leaderboard-empty{padding:35px 12px;text-align:center;font:normal 18px/1.6 var(--display)}.leaderboard-note{font-size:10px;line-height:1.8;margin-top:13px}.recent-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:30px 0 12px}.recent-heading h3{font:normal 23px var(--display)}.recent-heading>span{font-size:10px;color:var(--muted)}.leaderboard-matches{list-style:none;margin:0;padding:0}.recorded-match{display:grid;grid-template-columns:1fr auto;gap:8px 20px;padding:16px 0;border-top:1px solid var(--line)}.recorded-players{display:flex;align-items:baseline;gap:10px;min-width:0;overflow-wrap:anywhere}.recorded-players strong{font-size:12px;font-weight:500}.recorded-players>span{color:var(--muted);font:italic 13px var(--display)}.recorded-result{font-size:11px;color:var(--brass-light);text-align:right;overflow-wrap:anywhere}.recorded-detail{grid-column:1/-1;display:flex;align-items:center;gap:12px;font-size:10px;color:var(--muted)}.recorded-detail time{margin-left:auto}.source-badge{border:1px solid #ffffff1f;border-radius:4px;padding:2px 6px}.source-web{color:#b8d4bd;border-color:#91b69b33}.source-test{color:#aabfd2;border-color:#aabfd233}.source-benchmark{color:var(--brass-light);border-color:#d0b17c40}
@media(max-width:700px){.leaderboard-dialog{width:calc(100vw - 20px);max-height:92svh;padding:20px 17px}.leaderboard-heading{display:block}.leaderboard-heading h2{font-size:32px}.leaderboard-heading .dialog-lead{font-size:12px}.scoring-key{margin-top:13px}.scoring-key strong:first-child{margin-left:0}.leaderboard-filters{display:block;margin-top:20px;padding-bottom:15px}.match-type-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px}.match-type-tabs button{padding:10px 6px;font-size:11px}.leaderboard-filters .field{margin-top:14px;display:flex;align-items:center;gap:12px}.leaderboard-filters label{margin:0}.leaderboard-filters select{flex:1}.leaderboard-summary{gap:10px}.leaderboard-summary p{font-size:10px}.standings-table th,.standings-table td{padding:10px}.standing-name{font-size:11px}.participant-kind{display:block;margin:4px 0 0}.recent-heading{align-items:flex-start;flex-direction:column;gap:5px}.recorded-match{grid-template-columns:1fr}.recorded-result{text-align:left}.recorded-players{flex-wrap:wrap}.recorded-detail{flex-wrap:wrap;gap:8px}.recorded-detail time{font-size:9px}.leaderboard-note{font-size:9px}.header-actions{gap:2px}}

/* Keep turn instructions readable on the shared board, including mobile. */
.board-status{font-size:13px;line-height:1.5}

