@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--paper:#f5f3ed;--ink:#292c29;--muted:#777b72;--line:#dedfd5;--red:#ed5b46;--green:#e9eddc;--display:'Space Grotesk',sans-serif;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #d95740;outline-offset:4px}button{transition:background .15s,transform .15s}button:active:not(:disabled){transform:translateY(1px)}header{height:98px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4.2%}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-family:var(--display);font-size:25px;font-weight:700;letter-spacing:-1.1px}.brand-mark{background:var(--red);color:#fff;width:37px;height:40px;display:grid;place-items:center;border-radius:9px;font-size:30px;transform:rotate(-7deg)}.brand-dot{color:var(--red)}.header-right{display:flex;align-items:center;gap:34px}.local-badge{font-size:10px;font-weight:700;letter-spacing:1.3px;display:flex;align-items:center;gap:9px}.local-badge i,.live-dot{display:inline-block;background:#7d8d55;width:6px;height:6px;border-radius:50%}.text-button{background:none;border:0;font-size:12px;font-weight:600;display:flex;gap:10px;align-items:center}.question{border:1px solid #b8bcb0;width:20px;height:20px;border-radius:50%;display:grid;place-items:center}main{max-width:1600px;margin:auto;padding:38px 4.2% 0}.game-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{font-size:9px;letter-spacing:1.65px;font-weight:700;color:#767c6f}.game-heading h1{font-family:var(--display);font-size:36px;letter-spacing:-1.8px;margin:10px 0 0;font-weight:500}.button{padding:13px 20px;border-radius:7px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:14px}.secondary{background:transparent;border:1px solid #cdd0c3}.secondary:hover{background:#e9ecdf}.primary{background:var(--ink);color:#fff;border:1px solid var(--ink)}.primary:hover{background:#474d42}.button>span{font-size:19px;line-height:16px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:28px}.board-wrap{border:1px solid #cfd3c4;border-radius:12px;overflow:hidden;background:#eef0e5;box-shadow:0 4px 20px #2f3b2310}.board-top{height:45px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d4d9c9;font-size:9px;letter-spacing:1.6px;font-weight:600;color:#6e7665}.board-top>span{display:flex;gap:9px;align-items:center}.board-top>span:last-child{font-size:19px;font-weight:400}.infinite-label{font-size:9px}#board{height:clamp(370px,57vh,720px);position:relative;overflow:hidden;touch-action:none;cursor:crosshair;outline:none}#board:focus-visible{box-shadow:inset 0 0 0 3px #929f76}canvas{position:absolute;inset:0;width:100%;height:100%}#start-hint{position:absolute;left:calc(50% + 45px);top:calc(50% - 88px);display:flex;flex-direction:column;gap:6px;pointer-events:none;white-space:nowrap;font-size:11px;color:#879079}.hint-label{color:#5d6655;font-size:13px;font-weight:600}.hint-arrow{font-size:28px;transform:rotate(-12deg);margin-left:10px}.board-coordinate{position:absolute;left:18px;bottom:21px;color:#838c76;font:10px var(--display);letter-spacing:1px}.board-controls{position:absolute;right:16px;bottom:14px;display:flex;align-items:center;background:#fafbf5e8;border:1px solid #d6dacd;border-radius:7px;padding:3px;box-shadow:0 2px 5px #35422108}.board-controls button{background:transparent;border:0;width:31px;height:29px;font-size:20px;color:#555f4c;border-radius:4px}.board-controls button:hover{background:#e3e8d7}.board-controls #zoom-level{font-size:10px;min-width:38px;text-align:center}.control-divider{height:16px;border-left:1px solid var(--line);margin:0 4px}.board-bottom{display:flex;align-items:center;gap:20px;min-height:44px;padding:12px 18px;border-top:1px solid #d4d9c9;color:#727c64;font-size:10px}.board-bottom span{white-space:nowrap}.keyboard-tip{margin-left:auto;font-size:9px}.turn-panel{padding:23px 22px 16px;border:1px solid var(--line);border-radius:12px;background:#faf9f4}.turn-title{display:flex;gap:12px;align-items:center;margin-top:16px}.turn-title h2{font-family:var(--display);font-size:23px;letter-spacing:-.8px;font-weight:500;margin:0}.stone{width:30px;height:30px;border-radius:50%;box-shadow:inset 0 2px 2px #ffffff44,inset 0 -3px 2px #0002,0 3px 5px #0002;display:block;flex-shrink:0}.red{background:var(--red)}.black{background:#343b37}.turn-panel>p{font-size:11px;line-height:1.65;color:var(--muted);min-height:36px;margin:10px 0 20px}.player-card{min-height:63px;border:1px solid transparent;border-radius:8px;padding:11px 12px;display:flex;align-items:center;gap:10px;margin-bottom:8px}.player-card.active{border-color:#edb2a3;background:#fcf0e9}.player-card.active.charcoal{border-color:#b9c0b4;background:#edf0e9}.small-stone{width:19px;height:19px;border-radius:50%;box-shadow:inset 0 -2px 1px #0002}.player-card strong{display:block;font-size:12px;font-weight:600}.player-card div>span{font-size:9px;color:#8a8e82;display:block;margin-top:3px}.player-count{font-size:13px;margin-left:auto}.turn-pill{font-size:7px;letter-spacing:.6px;font-weight:700;color:#bc513c;background:#f9dfd4;padding:5px;border-radius:3px;white-space:nowrap}.charcoal .turn-pill{background:#dce3d7;color:#4a5843}.move-summary{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:19px;margin-top:15px;font-size:11px;color:var(--muted)}.move-summary strong{font:500 16px var(--display);color:var(--ink)}.undo-button{width:100%;border:0;background:none;margin-top:20px;padding:6px;font-size:17px;color:#747c6b}.undo-button span{font-size:11px;margin-left:6px}.objective{padding:26px 9px 0}.objective h3{font:500 27px/1.13 var(--display);letter-spacing:-1.1px;margin:12px 0 19px}.five-demo{display:flex;gap:10px;position:relative;width:max-content;margin-bottom:17px}.five-demo:before{content:'';position:absolute;top:10px;left:-6px;right:-6px;border-top:1px solid #eeb6a5}.five-demo i{height:21px;width:21px;border-radius:50%;background:var(--red);position:relative;border:3px solid var(--paper);box-sizing:content-box;margin-top:-3px}.objective p{color:#7c8176;font-size:11px;line-height:1.75;max-width:235px}.objective-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);color:#7c8176;font-size:9px;display:flex;gap:8px;align-items:center}.objective-note>span{font-size:17px}footer{display:flex;justify-content:space-between;align-items:center;padding:24px 0;color:#91968a;font-size:10px}footer>span:first-child{font-size:8px;letter-spacing:1.5px}.footer-mark{font-size:20px;color:#727e5d;vertical-align:middle;margin-left:14px}dialog{border:1px solid #d5d9ca;background:var(--paper);border-radius:16px;padding:34px;max-width:470px;width:calc(100% - 36px);color:var(--ink);box-shadow:0 30px 100px #242b2433}dialog::backdrop{background:#252b2355;backdrop-filter:blur(4px)}dialog h2{font:500 31px/1.1 var(--display);letter-spacing:-1px;margin:14px 0 22px}dialog li,dialog p{font-size:13px;line-height:1.7;color:#71776a}dialog ol{padding-left:18px}dialog li{padding-left:6px;margin:13px 0}dialog strong{color:var(--ink)}.close-dialog{position:absolute;top:15px;right:18px;background:none;border:0;font-size:26px}.dialog-note{padding-top:15px;border-top:1px solid var(--line)}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:28px}#win-card{position:absolute;top:20px;left:50%;transform:translateX(-50%);min-width:255px;text-align:center;background:#fbfaf4f5;border:1px solid #d0d7c2;border-radius:12px;padding:23px;box-shadow:0 12px 35px #36422620}#win-card h2{font:500 29px var(--display);letter-spacing:-1px;margin:9px 0}#win-card p{font-size:11px;color:var(--muted);margin:0 0 18px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:8px;background:var(--ink);color:white;font-size:12px;box-shadow:0 6px 20px #0002;z-index:5}
@media(min-width:1450px){.game-layout{grid-template-columns:minmax(0,1fr) 310px;gap:32px}.turn-panel{padding:27px}.objective{padding-top:32px}}@media(max-width:1050px){.keyboard-tip{display:none}.game-layout{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.turn-panel{padding:20px 15px}.player-card{padding:10px 7px;gap:8px}.board-bottom{gap:14px;font-size:9px}.game-heading h1{font-size:31px}}@media(max-width:760px){header{height:73px;padding:0 6%}.brand{font-size:21px}.brand-mark{width:30px;height:34px;font-size:25px}.local-badge{display:none}.header-right{gap:0}.text-button{font-size:11px}main{padding:25px 5% 0}.eyebrow{font-size:8px;letter-spacing:1.2px}.game-heading{align-items:flex-end;margin-bottom:21px;gap:12px}.game-heading h1{font-size:27px;margin-top:9px;line-height:1.05;letter-spacing:-1.2px}.game-heading .eyebrow{max-width:180px;line-height:1.6}.game-heading .button{padding:10px 12px;white-space:nowrap;font-size:10px;gap:8px}.game-layout{display:flex;flex-direction:column;gap:17px}#board{height:48vh;min-height:320px}.board-top{height:36px;padding:0 14px}.board-bottom{justify-content:space-between;gap:6px;padding:12px 11px;font-size:8px}aside{display:flex;flex-direction:column}.turn-panel{padding:18px;display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.turn-panel>.eyebrow{grid-column:1/-1}.turn-title{grid-column:1/-1;margin-top:10px}.turn-title h2{font-size:23px}.turn-panel>p{grid-column:1/-1;min-height:0;margin:7px 0 15px}.player-card{margin:0;padding:9px 7px;min-height:55px;gap:7px;position:relative}.player-card .turn-pill{display:none}.player-count{margin-left:auto}.player-card div>span{font-size:8px}.move-summary{grid-column:1;align-items:center;margin-top:15px;padding-top:14px}.undo-button{grid-column:2;margin-top:15px;border-top:1px solid var(--line);border-radius:0;padding-top:14px}.objective{display:none}footer{padding:23px 0}footer>span:last-child{font-size:8px}footer>span:first-child{max-width:110px;line-height:1.7;font-size:7px}.footer-mark{margin-left:4px}#start-hint{left:calc(50% + 22px);top:calc(50% - 78px);font-size:9px}.hint-label{font-size:11px}.board-controls{right:10px;bottom:10px}.board-coordinate{left:12px;bottom:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Classic and battle royale share a board; player color is paired with a number. */
.mode-bar{display:flex;justify-content:space-between;align-items:center;margin:-5px 0 20px;gap:12px}.mode-switch{display:flex;gap:4px;padding:4px;background:#e9ecdf;border:1px solid #dce0d1;border-radius:9px}.mode-switch button{border:0;background:transparent;border-radius:6px;padding:10px 14px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:12px;color:#727a66}.mode-switch button[aria-pressed=true]{color:#fff;background:#333c30;box-shadow:0 2px 4px #23302015}.mode-switch button span{font:10px var(--display);opacity:.7}.mode-bar>.text-button{padding:10px}.numbered-stone{display:inline-flex;align-items:center;justify-content:center;color:white;font:600 11px var(--display);flex-shrink:0}.stone.numbered-stone{font-size:15px}.small-stone.numbered-stone{width:23px;height:23px}.turn-panel{padding-top:22px}.turn-panel>p{margin-bottom:14px}.player-card{min-height:49px;padding:8px 10px;margin-bottom:5px}.player-card.active,.player-card.champion{border-color:color-mix(in srgb,var(--player-color) 40%,transparent);background:color-mix(in srgb,var(--player-color) 8%,#faf9f4)}.player-card .turn-pill{color:var(--player-color);background:color-mix(in srgb,var(--player-color) 12%,#faf9f4)}.turn-panel .turn-order{font-size:10px;min-height:0;margin:12px 0 0;color:#777e6e;line-height:1.5}.move-summary{margin-top:15px;padding-top:14px}.undo-button{margin-top:12px}.count-label{display:block;margin:20px 0 8px;font-size:12px;font-weight:600}#player-count{width:100%;font:13px 'DM Sans',sans-serif;color:var(--ink);border:1px solid #bbc3ac;border-radius:7px;background:#fafbf5;padding:12px;cursor:pointer}#player-count:focus-visible{outline:3px solid #d95740;outline-offset:2px}.setup-roster{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.setup-roster>span{display:flex;align-items:center;gap:9px;font-size:12px}.setup-roster i{width:25px;height:25px;border-radius:50%;font-style:normal}.reset-warning{padding:12px 14px;background:#f9e7dd;border-radius:7px;color:#98513d!important;font-size:11px!important;margin:22px 0 0}#setup-form h2{margin-bottom:12px}#setup-form>p{margin-top:0}
@media(max-width:760px){.mode-bar{margin:0 0 15px}.mode-switch button{padding:9px 10px;font-size:10px;gap:8px}.mode-bar>.text-button{font-size:10px;padding:7px 0}.turn-panel #player-list{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.turn-panel .turn-order{grid-column:1/-1;margin:12px 0 0}.player-card{margin:0}.turn-panel>.move-summary,.turn-panel>.undo-button{margin-top:12px}.header-right .text-button{white-space:nowrap}.game-heading h1{font-size:26px}}
/* Arena, conquest, and the online bracket. */
.mode-bar{align-items:center;flex-wrap:wrap}.mode-switch{overflow-x:auto;max-width:100%}.mode-switch button{white-space:nowrap;padding:10px 12px}.board-top-right{font:600 9px var(--display)!important;letter-spacing:1.2px}.mode-status{padding:11px 17px;font-size:10px;line-height:1.5;color:#626b58;background:#e4e9d8;border-bottom:1px solid #cfd6c2}.sector-map{padding:10px 14px;background:#e5eadc;display:grid;grid-template-columns:repeat(25,minmax(20px,1fr));gap:3px;border-bottom:1px solid #cfd6c2}.sector-button{background:#f7f8f0;border:1px solid #bec9af;color:#657052;border-radius:3px;min-height:28px;font:10px var(--display);padding:2px}.sector-button:hover{outline:2px solid #798d63}.map-score{display:grid;grid-template-columns:1fr auto;gap:5px;font-size:12px;margin:0 0 18px}.map-score progress{grid-column:1/-1;width:100%;height:7px;border:0}.objective:has(#conquest-score:not([hidden]))>h3{font-size:24px}.turn-title h2{overflow-wrap:anywhere}.player-card>div{min-width:0}.player-card strong{overflow-wrap:anywhere}.mode-switch::-webkit-scrollbar{height:3px}.mode-switch::-webkit-scrollbar-thumb{background:#a8b396;border-radius:3px}.online-intro{display:flex;justify-content:space-between;align-items:center;gap:20px}.online-intro h2{font:500 30px var(--display);letter-spacing:-1.1px;margin:10px 0}.online-intro p,.temporary-note{font-size:12px;line-height:1.7;color:var(--muted)}#online-panel{border:1px solid var(--line);border-radius:12px;padding:26px;background:#faf9f4;margin-bottom:25px}.connection-badge{font-size:10px;background:#e8ecdf;color:#627151;padding:8px 12px;border-radius:20px;white-space:nowrap}.lobby-entry{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:20px}.lobby-entry form{padding:22px;border:1px solid #d8decc;border-radius:10px;background:#f3f5eb}.lobby-entry h3{font:500 20px var(--display);margin:0 0 18px}.lobby-entry label{display:block;font-size:11px;font-weight:600;margin:14px 0 6px}.lobby-entry input,.lobby-entry select{width:100%;padding:11px 12px;font:13px 'DM Sans',sans-serif;color:var(--ink);background:#fcfcf8;border:1px solid #c6ceba;border-radius:6px}.lobby-entry .button{margin-top:20px}.lobby-entry input:focus-visible,.lobby-entry select:focus-visible{outline:2px solid #899b72;outline-offset:2px}#room-code-input{text-transform:uppercase;letter-spacing:3px}#online-error{background:#f9e4dc;color:#a44b36;padding:13px 16px;border-radius:7px;font-size:12px}.room-heading{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:25px 0 15px;border-top:1px solid var(--line);padding-top:22px}.room-heading>div{display:flex;align-items:center;gap:14px}.room-heading strong{font:600 25px var(--display);letter-spacing:3px}.room-heading>p{flex:1;font-size:12px;color:var(--muted)}.lobby-seats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.lobby-seat{padding:15px;background:#f3f4ec;border:1px dashed #d0d7c3;border-radius:6px;font-size:12px;color:#919783;overflow-wrap:anywhere}.lobby-seat.filled{border-style:solid;color:#4a5540;background:#e8eddc}.temporary-note{font-size:10px;margin:15px 0 0}.bracket{display:flex;gap:20px;overflow-x:auto;margin-top:25px;align-items:stretch}.bracket:empty{display:none}.bracket-round{flex:1;min-width:200px;display:flex;flex-direction:column;justify-content:space-around;gap:18px}.bracket-round h3{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#818b73;margin:0}.match-card{display:flex;flex-direction:column;text-align:left;border:1px solid #d1d9c5;border-radius:9px;background:#f4f6ed;padding:8px 14px;gap:0;min-height:95px;position:relative}.match-card span{padding:8px 0;font-size:13px;overflow-wrap:anywhere}.match-card span+span{border-top:1px solid #dde2d3}.match-card small{font-size:9px;color:#8d957e;padding:7px 0 4px}.match-card .match-winner{color:#627c41;font-weight:700}.match-card.selected{border:2px solid #889d6e;background:#eaf0df}.match-card:disabled{opacity:.65}.online-notice{background:#f9e9d3;color:#876029;border:1px solid #e7d4b3;padding:15px;font-size:12px;line-height:1.8;border-radius:8px}.online-notice a{color:inherit;font-weight:700}.online-notice>span{display:block;font-size:10px}#rules-dialog{max-width:590px;max-height:85vh;overflow:auto}.game-heading{margin-bottom:24px}#board{height:clamp(390px,57vh,720px)}#win-card{max-width:calc(100% - 30px)}#win-title{overflow-wrap:anywhere}
@media(max-width:1100px){.sector-map{grid-template-columns:repeat(5,1fr);padding:8px 12px;gap:3px}.sector-button{min-height:23px}.mode-switch button{padding:9px 10px;font-size:10px;gap:7px}}
@media(max-width:760px){.mode-bar{gap:8px}.mode-switch{width:100%}.mode-switch button{padding:10px}.mode-bar>.text-button{margin-left:auto}.mode-status{padding:9px 12px;font-size:9px}#board{height:48vh;min-height:320px}.sector-map{grid-template-columns:repeat(5,1fr)}.objective:has(#conquest-score:not([hidden])){display:block}.objective:has(#conquest-score:not([hidden]))>.eyebrow,.objective:has(#conquest-score:not([hidden]))>h3,.objective:has(#conquest-score:not([hidden]))>.five-demo,.objective:has(#conquest-score:not([hidden]))>.objective-note{display:none}.objective:has(#conquest-score:not([hidden]))>p{max-width:100%}#conquest-score{display:grid;grid-template-columns:1fr 1fr;gap:20px}.online-intro{align-items:flex-start;flex-direction:column;gap:0}.online-intro h2{font-size:27px}.connection-badge{white-space:normal}.lobby-entry{grid-template-columns:1fr;gap:13px}#online-panel{padding:18px}.lobby-entry form{padding:16px}.lobby-seats{grid-template-columns:1fr 1fr}.room-heading{gap:12px}.room-heading>div{flex-wrap:wrap;gap:9px}.room-heading strong{font-size:22px}.room-heading>p{flex-basis:100%;margin:0}.bracket-round{min-width:200px}#rules-dialog{padding:27px}.turn-title h2{font-size:22px}}
#another-tournament{margin-top:24px}
.appearance-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 22px;padding:15px 19px;border:1px solid #d7ddca;border-radius:10px;background:#f9faf3}.theme-picker{display:flex;gap:6px;margin-top:9px}.theme-picker button{border:1px solid transparent;background:none;border-radius:6px;padding:9px 13px;font-size:12px;font-weight:600;color:#737c65}.theme-picker button[aria-pressed=true]{border-color:#aebb98;background:#e7edda;color:#384a29}.appearance-options{display:flex;align-items:center;gap:16px;font-size:10px;color:#838a77}#motion-toggle{border:1px solid #d0d8c2;background:#fbfcf7;border-radius:20px;padding:8px 12px;font-size:10px;white-space:nowrap}.character-avatar{display:block;flex-shrink:0}.turn-title .stone{width:42px;height:42px;border-radius:8px;background:transparent!important;box-shadow:none}.small-stone:has(.character-avatar){border-radius:5px;width:28px;height:28px;box-shadow:none}.setup-roster i:has(.character-avatar){background:transparent!important}.player-card{gap:9px}body[data-character-theme=tactical] .appearance-bar{background:#eeecdf;border-color:#c9c6b1}body[data-character-theme=tactical] .theme-picker button[aria-pressed=true]{background:#3e4637;color:#f4f1df;border-color:#3e4637}body[data-character-theme=tactical] .board-wrap{background:#e6e5d8}body[data-character-theme=tactical] .board-top,body[data-character-theme=tactical] .board-bottom{background:#dedfce}#character-status{max-width:220px;line-height:1.5}
@media(max-width:760px){.appearance-bar{padding:12px;gap:12px;align-items:flex-start;flex-wrap:wrap}.appearance-options{width:100%;justify-content:space-between;gap:9px}.theme-picker button{padding:8px 10px;font-size:11px}.turn-title .stone{width:38px;height:38px}}

/* Character canvases participate in layout; only the game canvas fills its board. */
.character-avatar{position:static;inset:auto}.theme-picker{flex-wrap:wrap}.appearance-options{flex-wrap:wrap;justify-content:flex-end}.avatar-button{border:1px solid transparent;padding:0;cursor:pointer}.avatar-button:hover{border-color:#899b72}.avatar-button:focus-visible,.character-choice:focus-visible{outline:3px solid #496b38;outline-offset:3px}.small-stone.avatar-button{min-width:32px;min-height:32px}#choose-character{font-size:11px;padding:10px 13px;white-space:nowrap}
#character-dialog{max-width:650px;max-height:88vh;overflow:auto}#character-dialog h2{margin-bottom:14px}#character-player{width:100%;padding:12px;border:1px solid #bbc3ac;border-radius:7px;background:#fafbf5;font:13px 'DM Sans',sans-serif;color:var(--ink)}.character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}.character-choice{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:12px 7px 10px;min-width:0;border:1px solid #d4dac8;border-radius:12px;background:#fafbf6;color:var(--ink);cursor:pointer}.character-choice:hover{background:#edf1e4;border-color:#9aa98a}.character-choice[aria-pressed=true]{border:2px solid var(--team-color);padding:11px 6px 9px;background:color-mix(in srgb,var(--team-color) 12%,#fafbf6)}.character-name{font-size:11px;line-height:1.4;font-weight:600;text-align:center}.character-choice-state{font-size:9px;color:#767f69}.character-choice[aria-pressed=true] .character-choice-state{font-weight:700;color:var(--ink)}#character-dialog .dialog-actions{margin-top:15px}#character-picker-note{font-size:11px;margin-bottom:0}
@media(max-width:760px){.appearance-options{justify-content:flex-start}#character-status{flex:1;min-width:90px}#character-dialog{padding:24px}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.character-choice .character-avatar{width:76px!important;height:76px!important}}

.parrot-wardrobe{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:17px;padding:14px;border:1px solid #c7cdbb;border-radius:9px;background:#e9eddf}.parrot-wardrobe strong{display:block;font-size:12px}.parrot-wardrobe span{display:block;font-size:10px;line-height:1.5;color:#747e66;margin-top:5px;max-width:270px}#armor-toggle{flex-shrink:0;border:1px solid #a4b191;border-radius:7px;background:#f9fbf5;color:#526343;font:600 11px 'DM Sans',sans-serif;padding:11px 12px;cursor:pointer}#armor-toggle[aria-pressed=true]{background:#36472c;color:#fff;border-color:#36472c}#armor-toggle:focus-visible{outline:3px solid #496b38;outline-offset:3px}
@media(max-width:500px){.parrot-wardrobe{align-items:flex-start;flex-direction:column;gap:10px}.appearance-bar>div:first-child{width:100%}.theme-picker button{flex:1 1 40%}}

body[data-character-theme=reef] .appearance-bar{background:#edf7f4;border-color:#b3d3cf}body[data-character-theme=reef] .theme-picker button[aria-pressed=true]{background:#205c62;color:#efffff;border-color:#205c62}body[data-character-theme=reef] .board-top,body[data-character-theme=reef] .board-bottom{background:#d4e9e5;color:#37676b}body[data-character-theme=reef] .mode-status{background:#c9e2df;color:#315f63;border-color:#aacbca}body[data-character-theme=reef] .board-wrap{border-color:#9fbdbe}body[data-character-theme=reef] .character-choice{background:#edf7f5}body[data-character-theme=reef] .character-choice[aria-pressed=true]{background:color-mix(in srgb,var(--team-color) 12%,#edf7f5)}#reef-description{color:#376b70;font-size:12px;margin-top:-3px}

.character-trait{font-size:9px;line-height:1.35;color:#64745a;text-align:center}

#account-dialog{max-width:460px;max-height:90vh;overflow:auto}.account-close{position:absolute;right:18px;top:12px;font-size:28px;border:0;background:none}.account-tabs{display:flex;gap:5px;background:#e7ebde;border-radius:8px;padding:4px;margin-bottom:20px}.account-tabs button{flex:1;padding:10px;border:0;background:none;border-radius:5px;font-size:12px}.account-tabs button[aria-pressed=true]{background:#fff;color:#34432c;box-shadow:0 1px 4px #0001}#account-fields{border:0;padding:0;margin:0;min-width:0}#account-form label{display:block;font-size:12px;font-weight:600;margin:14px 0 7px}#account-form input{width:100%;padding:12px;border:1px solid #bec8af;border-radius:7px;background:#fff;font:14px 'DM Sans',sans-serif;color:var(--ink)}#account-form input:focus-visible{outline:3px solid #9db487;outline-offset:2px}#account-submit{width:100%;margin-top:22px}#account-forgot,#account-back{margin:15px auto 0;font-size:11px}#account-message{min-height:22px;font-size:12px;color:#42673a}#account-message[data-error=true]{color:#9a392e}#account-unavailable{font-size:12px;background:#ecebdc;border-radius:7px;padding:12px}#account-user-email{overflow-wrap:anywhere}.account-note{font-size:10px!important;padding-top:12px;border-top:1px solid var(--line)}#account-button{font-size:11px;padding:9px 13px;white-space:nowrap}@media(max-width:760px){.header-right{gap:12px}#account-dialog{padding:25px}.header-right .text-button{font-size:10px}#account-button{padding:8px 10px}}
