/* Piece palettes are deliberately independent of board materials. */
body{--human-fill:radial-gradient(circle at 34% 26%,#fff,#f5f5f5 68%,#cdcdcd);--human-base:#f5f5f5;--human-edge:#a4a4a4;--human-ink:#222;--bot-fill:radial-gradient(circle at 34% 26%,#585b60,#202124 68%,#08090a);--bot-base:#202124;--bot-edge:#08090a;--bot-ink:#fff}
body .checker.human-checker,body .drag-ghost{background:var(--human-fill);border-color:var(--human-edge);color:var(--human-ink)}
body .checker.bot-checker,body .moving-stone{background:var(--bot-fill);border-color:var(--bot-edge);color:var(--bot-ink)}
body .off-disc{background:var(--human-base);box-shadow:0 3px var(--human-edge),0 6px var(--human-base)}
body .off-disc.dark-disc{background:var(--bot-base);box-shadow:0 3px var(--bot-edge),0 6px var(--bot-base)}
body .human-avatar{background:var(--human-fill);color:var(--human-ink);border:1px solid var(--human-edge)}
body .bot-avatar{background:var(--bot-fill);color:var(--bot-ink);border:1px solid var(--bot-edge)}
body .die[data-tone=white]{background:linear-gradient(135deg,#fff,#ececec);color:#252525;box-shadow:0 2px 0 #b5b5b5,inset 0 0 0 1px #bcbcbc}
body .die[data-tone=black]{background:linear-gradient(135deg,#45474b,#111214);color:#fff;box-shadow:0 2px 0 #050505,inset 0 0 0 1px #55585c}
body .die[data-tone=white] .pip{background:#151617}
body .die[data-tone=black] .pip{background:#fff}
.player-name{min-width:0}.player-name strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-strip .dice-area{flex-shrink:0}
.appearance-fields{border-block:1px solid var(--line);margin:18px 0;padding:4px 0 16px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important}
body[data-view=aufbau]{background:#f3ede3;color:#352e28}
body[data-view=aufbau] .topbar,body[data-view=aufbau] .landscape-toolbar,body[data-view=aufbau] footer{display:none}
body[data-view=aufbau] main{max-width:1100px;margin:0 auto;padding:38px 28px 40px}
.setup-page{--line:#ddd2c1;--paper:#fffcf6;--teal:#654124;--muted:#756a5c;--gold:#ae8041}
.setup-intro{text-align:center;margin-bottom:28px}.setup-intro .eyebrow{font-size:11px;letter-spacing:.2em;color:#775e40}.setup-intro h1{font:normal clamp(32px,5vw,48px)/1.1 Georgia,serif;margin:12px 0}.setup-intro p{color:var(--muted);margin:0;font-size:15px}
.setup-logo{width:180px;height:74px;object-fit:contain;display:block;margin:0 auto -2px}.brand-logo{width:165px;height:66px;object-fit:contain;display:block}.table-logo{width:135px;height:54px;object-fit:contain;display:block}.menu-logo{width:140px;height:55px;object-fit:contain;display:block;margin:-8px 0 -3px}
.setup-logo{width:240px}.brand-logo{width:190px}.table-logo{width:180px}.menu-logo{width:180px}
.setup-progress{display:flex;list-style:none;gap:12px;max-width:650px;padding:0;margin:0 auto 26px;justify-content:center}.setup-progress li{display:flex;align-items:center;gap:9px;color:#827768;font-size:13px;flex:1;justify-content:center;position:relative}.setup-progress b{border:1px solid #cfc2ae;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:13px;font-weight:500}.setup-progress li[aria-current=step]{color:#4c301b;font-weight:650}.setup-progress li[aria-current=step] b{color:#fff;background:#654124;border-color:#654124}.setup-progress li.complete b{background:#e3d3b9;border-color:#c6ab81;color:#624521}
.setup-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:26px;align-items:stretch}
.setup-card{background:#fffcf7;border:1px solid #ddd2c1;border-radius:22px;padding:30px;box-shadow:0 9px 36px #65412408;min-width:0;display:flex;flex-direction:column}
.setup-card section{flex:1}.setup-kicker{font-size:10px;letter-spacing:.14em;color:#806d52;margin:0 0 11px}.setup-card h2{font:normal clamp(26px,3vw,32px)/1.14 Georgia,serif;margin:0 0 24px}.setup-card h2:focus{outline:none}
.setup-names{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setup-names label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}.setup-names input{background:#fff;border:1px solid #cfc3b2;border-radius:9px;width:100%;min-height:46px;padding:10px 12px;font:400 16px/1.3 system-ui,sans-serif;color:#352e28}.setup-names small{font-size:11px;line-height:1.4;font-weight:400;color:#756a5c}
.setup-fieldset{min-width:0;margin:24px 0 0;padding:0;border:0}.setup-fieldset legend{font-size:13px;font-weight:600;margin:0 0 10px;padding:0}.setup-fieldset .small{font-size:12px;line-height:1.55;color:#756a5c;margin:11px 0 0}
.setup-color-options{display:flex;gap:12px}.setup-color-option{flex:1;display:flex;align-items:center;gap:12px;border:1px solid #d8cdbc;padding:12px;border-radius:12px;cursor:pointer;position:relative;background:#fffdf9;min-height:74px}.setup-color-option strong{font-size:14px;font-weight:550}.sample-stone{display:inline-block;width:44px;height:44px;border-radius:50%;border:1px solid;box-shadow:inset 0 0 0 3px #ffffff18,inset 0 0 0 5px #0000000c,0 3px 5px #23190c30;flex-shrink:0}
.setup-color-option input,.setup-board-option input,.setup-dice-option input{position:absolute;right:9px;top:9px;width:15px;height:15px;accent-color:#654124;margin:0;cursor:pointer}
.setup-color-option:has(input:checked),.setup-board-option:has(input:checked),.setup-dice-option:has(input:checked){border-color:#916734;box-shadow:0 0 0 1px #916734;background:#f8efdf}
.setup-color-option:has(input:focus-visible),.setup-board-option:has(input:focus-visible),.setup-dice-option:has(input:focus-visible){outline:3px solid #355f9a;outline-offset:3px}
.setup-footnote{font-size:12px;color:#756a5c;line-height:1.6;margin:18px 0 0}
.setup-board-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.setup-board-option{border:1px solid #d8cdbc;border-radius:12px;padding:12px;cursor:pointer;position:relative;overflow:hidden}.setup-board-option .theme-swatch{height:58px;border-width:5px;border-radius:7px;margin:0 0 10px}.setup-board-option strong,.setup-board-option small{display:block}.setup-board-option strong{font-size:14px;font-weight:550}.setup-board-option small{font-size:11px;color:#756a5c;margin-top:3px}.setup-board-option input{z-index:1;background:white;box-shadow:0 0 0 4px #fffdf9;border-radius:50%}
.setup-dice-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.setup-dice-option{display:flex;flex-direction:column;align-items:center;gap:14px;padding:25px 8px 13px;border:1px solid #d8cdbc;border-radius:12px;position:relative;cursor:pointer}.setup-dice-option strong{font-weight:550;font-size:13px}.setup-dice-option .dice-pair{gap:7px;min-width:0}.setup-dice-option .die{width:31px;height:31px;padding:5px;gap:2px}
.setup-remember{display:flex;align-items:flex-start;gap:12px;background:#f3ebdd;padding:16px;border-radius:12px;margin-top:25px;cursor:pointer;line-height:1.45}.setup-remember input{accent-color:#654124;flex-shrink:0;width:19px;height:19px;margin:1px 0}.setup-remember strong,.setup-remember small{display:block}.setup-remember strong{font-size:13px;font-weight:600}.setup-remember small{font-size:12px;color:#756a5c;margin-top:6px}
.setup-actions{display:flex;gap:12px;margin-top:27px;justify-content:flex-end}.setup-actions button{min-height:46px;border-radius:10px;font-size:14px;padding:11px 17px}.setup-actions .primary{flex:1;max-width:340px;background:#654124;color:#fff}.setup-cancel{align-self:center;margin-top:14px;min-height:44px;color:#756a5c;font-size:12px;background:none;border:0;text-decoration:underline;cursor:pointer;padding:8px}
.setup-save-status{font-size:13px;color:#8f3526;line-height:1.5}.setup-save-status:not(:empty){margin-top:16px}.setup-save-status button{margin-top:10px;display:block;min-height:44px}
.setup-preview{background:#e7dcc9;border:1px solid #d9cab3;border-radius:22px;padding:29px 23px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-width:0}.setup-preview h3{font:normal 25px/1.2 Georgia,serif;margin:19px 0 15px}.setup-preview>.small{font-size:12px;line-height:1.65;color:#75654f;margin:17px 0 0}.setup-preview>.dice-pair{justify-content:center;margin-top:18px}
.setup-preview-players{display:flex;align-items:center;justify-content:center;gap:10px;max-width:100%;font-size:12px}.setup-preview-players>span{font-size:10px;color:#806d52}.setup-preview-players>div{display:flex;gap:6px;align-items:center;min-width:0}.setup-preview-players strong{font-size:12px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setup-preview-players i{width:15px;height:15px;border:1px solid;border-radius:50%;flex-shrink:0}
.setup-mini-board{width:100%;max-width:325px;aspect-ratio:1.5;position:relative;margin-top:12px;border:10px solid #684126;border-radius:9px;background:repeating-linear-gradient(2deg,#fff3d822 0 1px,#9b622217 2px 3px,transparent 4px 8px),linear-gradient(95deg,#ebcf9c,#e3bc80 48%,#f0d5a5);box-shadow:0 8px 18px #51351e25,inset 0 0 0 2px #543721;--mini-a:#623c29;--mini-b:#b87940}
.mini-points{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:1fr 1fr;gap:8px 4px;position:absolute;inset:4px 5px}.mini-points i{background:var(--mini-a);clip-path:polygon(0 0,100% 0,50% 100%)}.mini-points i:nth-child(even){background:var(--mini-b)}.mini-points i:nth-child(n+7){transform:rotate(180deg)}.mini-bar{position:absolute;left:calc(50% - 5px);width:10px;top:0;bottom:0;background:linear-gradient(90deg,#664025,#95633c,#58351f)}
#setup-preview-stones{position:absolute;inset:5px 9px;display:flex;justify-content:space-between;align-items:flex-start}#setup-preview-stones>span{display:flex;flex-direction:column}#setup-preview-stones>span:last-child{align-self:flex-end}#setup-preview-stones .sample-stone{width:35px;height:35px}#setup-preview-stones .sample-stone+span{margin-top:-10px}
.setup-mini-board[data-style=salon]{background:#e7cb98;border-color:#674329;--mini-a:#994a36;--mini-b:#526f72}.setup-mini-board[data-style=modern]{background:#cbd9cb;border-color:#253e37;--mini-a:#f5f1de;--mini-b:#507460}.setup-mini-board[data-style=orient]{background:#ebc293;border-color:#683d28;--mini-a:#903e2d;--mini-b:#cf955b}
@media(max-width:760px){body[data-view=aufbau] main{padding:24px 16px 32px}.setup-layout{gap:18px;grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr)}.setup-card{padding:22px}.setup-names{grid-template-columns:1fr;gap:14px}.setup-preview{padding:22px 15px}.setup-intro{margin-bottom:22px}.setup-card h2{font-size:28px}}
@media(max-width:580px){body[data-view=aufbau] main{padding:22px 15px 28px}.setup-intro h1{font-size:32px}.setup-intro p{font-size:12px}.setup-intro .eyebrow{font-size:9px}.setup-progress{gap:5px;margin-bottom:19px}.setup-progress li{font-size:10px;gap:5px}.setup-progress b{width:25px;height:25px;font-size:11px}.setup-layout{grid-template-columns:1fr;gap:18px}.setup-card{padding:23px 20px;border-radius:18px}.setup-names{grid-template-columns:1fr;gap:16px}.setup-card h2{font-size:27px;margin-bottom:22px}.setup-preview{padding:22px;display:none}.setup-color-option{gap:10px;padding:11px;min-height:75px}.setup-actions{gap:8px}.setup-actions button{font-size:13px;padding:10px 12px}.setup-dice-option .die{width:29px;height:29px;padding:4px}.setup-dice-option .dice-pair{gap:5px}}
@media(orientation:landscape) and (max-height:600px){body[data-view=aufbau] main{padding-top:18px}.setup-intro{text-align:left;margin-bottom:18px}.setup-intro h1{font-size:30px;margin:7px 0}.setup-intro p{font-size:12px}.setup-progress{margin:0 0 19px;max-width:550px}.setup-layout{grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr);gap:20px}.setup-card{padding:24px}.setup-preview{padding:22px 18px}.setup-names{grid-template-columns:1fr 1fr}.setup-card h2{font-size:28px}.setup-card .die{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.setup-page *{scroll-behavior:auto}}
@media(max-width:580px){body[data-view=aufbau] main{padding-top:10px}.setup-logo{width:148px;height:60px}.setup-intro{margin-bottom:18px}.setup-card{padding-top:20px;padding-bottom:20px}.setup-footnote{margin-top:13px}.setup-actions{margin-top:22px}.setup-intro h1{margin-top:4px}}
@media(orientation:landscape) and (max-height:600px){.setup-logo{width:140px;height:55px;margin-left:0}.setup-intro{position:relative;padding-left:160px;min-height:65px;display:flex;flex-direction:column;justify-content:center}.setup-intro .setup-logo{position:absolute;left:0;top:4px}.setup-intro h1{margin-top:0}.setup-intro p{margin-bottom:0}}
@media(orientation:landscape) and (max-height:600px){body[data-view=tisch]:not([data-mobile-view=page]):not(.table-menu-open) .table-column{grid-template-columns:148px 138px minmax(0,1fr) 178px 72px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:680px){body[data-view=tisch]:not([data-mobile-view=page]):not(.table-menu-open) .table-column{grid-template-columns:124px 114px minmax(0,1fr) 156px 60px;column-gap:3px}body[data-view=tisch]:not([data-mobile-view=page]) .landscape-toolbar button{width:60px;padding-inline:4px}body[data-view=tisch]:not([data-mobile-view=page]) .die{width:26px;height:26px;padding:4px}}
@media(max-width:580px){.setup-logo{width:200px}}
.site-lockup{display:inline-flex;align-items:center;justify-content:center;gap:8px;vertical-align:middle;object-fit:initial}.site-lockup .brand-emblem{display:block;height:100%;width:auto;aspect-ratio:1;object-fit:contain}.site-lockup .brand-wordmark{display:block;height:auto;max-height:80%;min-width:0;flex:1;object-fit:contain}.site-lockup.setup-logo{display:flex;width:250px;height:74px;margin-inline:auto}.site-lockup.brand-logo{width:190px;height:53px}.site-lockup.table-logo{width:170px;height:45px}.site-lockup.menu-logo{width:180px;height:47px}
@media(max-width:580px){.site-lockup.setup-logo{width:215px;height:60px}}
@media(orientation:landscape) and (max-height:600px){.setup-intro{padding-left:178px}.site-lockup.setup-logo{width:155px;height:53px;margin-left:0}}
.table-tools{display:flex;align-items:center;gap:6px}.account-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:5px 12px;border:1px solid var(--line,#d8c6a6);border-radius:999px;background:var(--paper,#fffaf1);color:var(--teal,#654124);text-decoration:none;font-size:13px;white-space:nowrap}.account-pill b{font:600 21px/1 Georgia,serif}.account-pill:hover{border-color:#96723e;background:#f6ecda}.setup-intro{position:relative}.setup-account{position:absolute;right:0;top:6px}.setup-account .account-label{display:none}.setup-account{width:44px;padding:0}
@media(orientation:landscape) and (max-height:600px){body[data-view=tisch]:not([data-mobile-view=page]) .account-label{display:none}body[data-view=tisch]:not([data-mobile-view=page]) .account-pill{width:44px;padding:0}body[data-view=tisch]:not([data-mobile-view=page]):not(.table-menu-open) .table-column{grid-template-columns:148px 138px minmax(0,1fr) 178px 122px}.setup-account{top:0}.setup-intro{padding-right:48px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:680px){body[data-view=tisch]:not([data-mobile-view=page]):not(.table-menu-open) .table-column{grid-template-columns:124px 114px minmax(0,1fr) 156px 110px;column-gap:3px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:540px){body[data-view=tisch]:not([data-mobile-view=page]):not(.table-menu-open) .table-column{grid-template-columns:110px 96px minmax(0,1fr) 130px 110px;column-gap:3px}}
