.cm-chessboard .board.input-enabled .square{cursor:pointer}.cm-chessboard .coordinates,.cm-chessboard .markers-layer,.cm-chessboard .pieces-layer,.cm-chessboard .markers-top-layer{pointer-events:none}.cm-chessboard-content .list-inline{padding-left:0;list-style:none}.cm-chessboard-content .list-inline-item{display:inline-block}.cm-chessboard-content .list-inline-item:not(:last-child){margin-right:1rem}.cm-chessboard-accessibility.visually-hidden{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cm-chessboard-accessibility button:disabled,.cm-chessboard-accessibility button:disabled:hover{opacity:.5;cursor:not-allowed;pointer-events:none}.cm-chessboard.default .board .square.white{fill:#ecdab9}.cm-chessboard.default .board .square.black{fill:#c5a076}.cm-chessboard.default.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default .coordinates .coordinate{fill:#b5936d;font-size:7px;cursor:default}.cm-chessboard.default .coordinates .coordinate.black{fill:#eeddbf}.cm-chessboard.default .coordinates .coordinate.white{fill:#b5936d}.cm-chessboard.default-contrast .board .square.white{fill:#ecdab9}.cm-chessboard.default-contrast .board .square.black{fill:#c5a076}.cm-chessboard.default-contrast.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default-contrast.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default-contrast.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default-contrast.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default-contrast .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default-contrast .coordinates .coordinate{fill:#b5936d;font-size:7px;cursor:default}.cm-chessboard.default-contrast .coordinates .coordinate.black,.cm-chessboard.default-contrast .coordinates .coordinate.white{fill:#333}.cm-chessboard.green .board .square.white{fill:#e0ddcc}.cm-chessboard.green .board .square.black{fill:#4c946a}.cm-chessboard.green.border-type-thin .board .border{stroke:#4c946a;stroke-width:.7%;fill:#4c946a}.cm-chessboard.green.border-type-none .board .border{stroke:#4c946a;stroke-width:0;fill:#4c946a}.cm-chessboard.green.border-type-frame .board .border{fill:#e0ddcc;stroke:none}.cm-chessboard.green.border-type-frame .board .border-inner{fill:#4c946a;stroke:#4c946a;stroke-width:.7%}.cm-chessboard.green .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.green .coordinates .coordinate{fill:#468862;font-size:7px;cursor:default}.cm-chessboard.green .coordinates .coordinate.black{fill:#e2e0d0}.cm-chessboard.green .coordinates .coordinate.white{fill:#468862}.cm-chessboard.blue .board .square.white{fill:#d8ecfb}.cm-chessboard.blue .board .square.black{fill:#86afcf}.cm-chessboard.blue.border-type-thin .board .border{stroke:#86afcf;stroke-width:.7%;fill:#86afcf}.cm-chessboard.blue.border-type-none .board .border{stroke:#86afcf;stroke-width:0;fill:#86afcf}.cm-chessboard.blue.border-type-frame .board .border{fill:#d8ecfb;stroke:none}.cm-chessboard.blue.border-type-frame .board .border-inner{fill:#86afcf;stroke:#86afcf;stroke-width:.7%}.cm-chessboard.blue .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.blue .coordinates .coordinate{fill:#7ba1be;font-size:7px;cursor:default}.cm-chessboard.blue .coordinates .coordinate.black{fill:#dbeefb}.cm-chessboard.blue .coordinates .coordinate.white{fill:#7ba1be}.cm-chessboard.chess-club .board .square.white{fill:#e6d3b1}.cm-chessboard.chess-club .board .square.black{fill:#af6b3f}.cm-chessboard.chess-club.border-type-thin .board .border{stroke:#692e2b;stroke-width:.7%;fill:#af6b3f}.cm-chessboard.chess-club.border-type-none .board .border{stroke:#692e2b;stroke-width:0;fill:#af6b3f}.cm-chessboard.chess-club.border-type-frame .board .border{fill:#692e2b;stroke:none}.cm-chessboard.chess-club.border-type-frame .board .border-inner{fill:#af6b3f;stroke:#692e2b;stroke-width:.7%}.cm-chessboard.chess-club .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chess-club .coordinates .coordinate{fill:#e6d3b1;font-size:7px;cursor:default}.cm-chessboard.chess-club .coordinates .coordinate.black{fill:#e6d3b1}.cm-chessboard.chess-club .coordinates .coordinate.white{fill:#af6b3f}.cm-chessboard.chessboard-js .board .square.white{fill:#f0d9b5}.cm-chessboard.chessboard-js .board .square.black{fill:#b58863}.cm-chessboard.chessboard-js.border-type-thin .board .border{stroke:#404040;stroke-width:.7%;fill:#b58863}.cm-chessboard.chessboard-js.border-type-none .board .border{stroke:#404040;stroke-width:0;fill:#b58863}.cm-chessboard.chessboard-js.border-type-frame .board .border{fill:#f0d9b5;stroke:none}.cm-chessboard.chessboard-js.border-type-frame .board .border-inner{fill:#b58863;stroke:#404040;stroke-width:.7%}.cm-chessboard.chessboard-js .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chessboard-js .coordinates .coordinate{fill:#404040;font-size:7px;cursor:default}.cm-chessboard.chessboard-js .coordinates .coordinate.black{fill:#f0d9b5}.cm-chessboard.chessboard-js .coordinates .coordinate.white{fill:#b58863}.cm-chessboard.black-and-white .board .square.white{fill:#fff}.cm-chessboard.black-and-white .board .square.black{fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-thin .board .border{stroke:#9c9c9c;stroke-width:.7%;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-none .board .border{stroke:#9c9c9c;stroke-width:0;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-frame .board .border{fill:#fff;stroke:none}.cm-chessboard.black-and-white.border-type-frame .board .border-inner{fill:#9c9c9c;stroke:#9c9c9c;stroke-width:.7%}.cm-chessboard.black-and-white .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.black-and-white .coordinates .coordinate{fill:#909090;font-size:7px;cursor:default}.cm-chessboard.black-and-white .coordinates .coordinate.black{fill:#fff}.cm-chessboard.black-and-white .coordinates .coordinate.white{fill:#909090}.cm-chessboard .keyboard-focus-indicator .keyboard-focus{fill:none;stroke:#06c;stroke-width:3px;pointer-events:none}.cm-chessboard .keyboard-focus-indicator .keyboard-from-square{fill:#0066cc4d;stroke:#06c;stroke-width:2px;pointer-events:none}.cm-chessboard:focus{outline:2px solid #0066cc;outline-offset:2px}.cg-wrap{box-sizing:content-box;position:relative;display:block}cg-container{position:absolute;width:100%;height:100%;display:block;top:0}cg-board{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:0;background-size:cover}.cg-wrap.manipulable cg-board{cursor:pointer}cg-board square{position:absolute;top:0;left:0;width:12.5%;height:12.5%;pointer-events:none}cg-board square.move-dest{pointer-events:auto}cg-board square.last-move{will-change:transform}.cg-wrap piece{position:absolute;top:0;left:0;width:12.5%;height:12.5%;background-size:cover;z-index:2;will-change:transform;pointer-events:none}cg-board piece.dragging{cursor:move;z-index:11!important}piece.anim{z-index:8}piece.fading{z-index:1;opacity:.5}.cg-wrap piece.ghost{opacity:.3}.cg-wrap piece svg{overflow:hidden;position:relative;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;opacity:.6}.cg-wrap cg-auto-pieces,.cg-wrap .cg-shapes,.cg-wrap .cg-custom-svgs{overflow:visible;position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.cg-wrap cg-auto-pieces{z-index:2}.cg-wrap cg-auto-pieces piece{opacity:.3}.cg-wrap .cg-shapes{overflow:hidden;opacity:.6;z-index:2}.cg-wrap .cg-custom-svgs{z-index:9}.cg-wrap .cg-custom-svgs svg{overflow:visible}.cg-wrap coords{position:absolute;display:flex;pointer-events:none;opacity:.8;font-family:sans-serif;font-size:9px}.cg-wrap coords.ranks{left:4px;top:-20px;flex-flow:column-reverse;height:100%;width:12px}.cg-wrap coords.ranks.black{flex-flow:column}.cg-wrap coords.ranks.left{left:-15px;align-items:flex-end}.cg-wrap coords.files{bottom:-4px;left:24px;flex-flow:row;width:100%;height:16px;text-transform:uppercase;text-align:center}.cg-wrap coords.files.black{flex-flow:row-reverse}.cg-wrap coords coord{flex:1 1 auto}.cg-wrap coords.ranks coord{transform:translateY(39%)}cg-board{background-color:#f0d9b5;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4PSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogICAgIHZpZXdCb3g9IjAgMCA4IDgiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyI+CjxnIGlkPSJhIj4KICA8ZyBpZD0iYiI+CiAgICA8ZyBpZD0iYyI+CiAgICAgIDxnIGlkPSJkIj4KICAgICAgICA8cmVjdCB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZSIgb3BhY2l0eT0iMCIvPgogICAgICAgIDx1c2UgeD0iMSIgeT0iMSIgaHJlZj0iI2UiIHg6aHJlZj0iI2UiLz4KICAgICAgICA8cmVjdCB5PSIxIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZiIgb3BhY2l0eT0iMC4yIi8+CiAgICAgICAgPHVzZSB4PSIxIiB5PSItMSIgaHJlZj0iI2YiIHg6aHJlZj0iI2YiLz4KICAgICAgPC9nPgogICAgICA8dXNlIHg9IjIiIGhyZWY9IiNkIiB4OmhyZWY9IiNkIi8+CiAgICA8L2c+CiAgICA8dXNlIHg9IjQiIGhyZWY9IiNjIiB4OmhyZWY9IiNjIi8+CiAgPC9nPgogIDx1c2UgeT0iMiIgaHJlZj0iI2IiIHg6aHJlZj0iI2IiLz4KPC9nPgo8dXNlIHk9IjQiIGhyZWY9IiNhIiB4OmhyZWY9IiNhIi8+Cjwvc3ZnPg==)}cg-board square.move-dest{background:radial-gradient(#14551e80 22%,#208530 0,#0000004d,#0000 0)}cg-board square.premove-dest{background:radial-gradient(#141e5580 22%,#203085 0,#0000004d,#0000 0)}cg-board square.oc.move-dest{background:radial-gradient(transparent 0%,transparent 80%,rgba(20,85,0,.3) 80%)}cg-board square.oc.premove-dest{background:radial-gradient(transparent 0%,transparent 80%,rgba(20,30,85,.2) 80%)}cg-board square.move-dest:hover{background:#14551e4d}cg-board square.premove-dest:hover{background:#141e5533}cg-board square.last-move{background-color:#9bc70069}cg-board square.selected{background-color:#14551e80}cg-board square.check{background:radial-gradient(ellipse at center,red,#e70000 25%,#a9000000 89%,#9e000000)}cg-board square.current-premove{background-color:#141e5580}.cg-wrap.orientation-white coords.ranks coord:nth-child(2n),.cg-wrap.orientation-white coords.files coord:nth-child(2n),.cg-wrap.orientation-black coords.ranks coord:nth-child(odd),.cg-wrap.orientation-black coords.files coord:nth-child(odd){color:#484848cc}.cg-wrap.orientation-black coords.ranks coord:nth-child(2n),.cg-wrap.orientation-black coords.files coord:nth-child(2n),.cg-wrap.orientation-white coords.ranks coord:nth-child(odd),.cg-wrap.orientation-white coords.files coord:nth-child(odd){color:#fffc}:root{--bg: #1a1a2e;--fg: #eee;--board-light: #f0d9b5;--board-dark: #b58863;--highlight: #7ecfff;--gold: #ffd700;--muted: #888}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}.app{display:flex;flex-direction:column;min-height:100vh;max-width:1200px;margin:0 auto;width:100%;padding:1rem}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;background:#ffffff0d;border-radius:8px}.header h1{margin:0;font-size:1.5rem}.status{display:flex;gap:1rem;align-items:center;font-size:.9rem}.status-item{display:flex;align-items:center;gap:.5rem}.turn-indicator{width:12px;height:12px;border-radius:50%;background:var(--muted)}.turn-indicator.white{background:#fff}.turn-indicator.black{background:#333;border:2px solid #666}.main-content{display:flex;gap:1rem;flex:1}@media (max-width: 900px){.main-content{flex-direction:column;align-items:center}.sidebar{width:min(100%,calc(100svh - 96px));align-self:center}}@media (max-width: 900px){.app{padding:0;max-width:none}.header{padding:.35rem .5rem}.status{font-size:.72rem;gap:.4rem}.main-content{gap:.35rem;padding:0 .25rem}.board-outer{width:min(100%,calc(100svh - 96px));height:min(100%,calc(100svh - 96px));margin:0 auto;padding:3px;border-radius:4px}.sidebar{min-width:0;gap:.4rem}.setup-cell{width:1.55rem;height:1.55rem;font-size:.95rem}}@supports (height: 100dvh){@media (max-width: 900px){.board-outer{width:min(100%,calc(100dvh - 96px));height:min(100%,calc(100dvh - 96px))}}}.board-outer{flex:0 0 auto;width:min(600px,92vw,calc(100svh - 190px));height:min(600px,92vw,calc(100svh - 190px));max-width:100%;background:var(--board-dark);border-radius:8px;padding:8px;box-sizing:border-box;position:relative;box-shadow:0 4px 20px #0000004d}.board-container{width:100%!important;height:100%!important;position:relative}.board-container cg-board{background-image:repeating-conic-gradient(#f0d9b5,#f0d9b5 25%,#b58863 0%,#b58863 50%);background-size:25% 25%;background-position:0 0;background-color:#f0d9b5;aspect-ratio:1 / 1;width:100%;height:auto}.board-container cg-board square{box-sizing:border-box}.board-container cg-board square.white{background-color:transparent}.board-container cg-board square.black{background-color:transparent}.board-container coords{font-size:11px;opacity:.75}.board-container coords.files{left:0;bottom:-18px;width:100%;height:16px;justify-content:space-around;align-items:center}.board-container coords.ranks{left:-18px;top:0;height:100%;width:16px;flex-flow:column-reverse;justify-content:space-around;align-items:center}.board-container coords coord{flex:1 1 12.5%;display:flex;align-items:center;justify-content:center;line-height:1}.board-container coords.ranks coord{transform:none}.board-container piece{background-image:none!important;display:flex!important;align-items:center;justify-content:center;font-weight:700;line-height:1;font-size:inherit;overflow:hidden;white-space:pre;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.75);box-sizing:border-box}.board-container piece.white{color:#fff}.board-container piece.black{color:#111;text-shadow:0 1px 2px rgba(255,255,255,.3)}.sidebar{flex:0 0 auto;width:min(600px,92vw,calc(100svh - 190px));min-width:0;display:flex;flex-direction:column;gap:1rem}.waiting-panel{border:1px solid #7ecfff;background:#7ecfff14}.catalogue-content{max-width:960px;margin:0 auto;width:100%}.catalogue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;width:100%}.catalogue-loading{opacity:.7}.game-card{display:block;padding:1.1rem 1.2rem;border:1px solid #2f3b55;border-radius:10px;background:#22243c;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}.game-card:hover{border-color:#7ecfff;transform:translateY(-2px)}.game-card.disabled{opacity:.55;cursor:not-allowed}.game-card.disabled:hover{border-color:#2f3b55;transform:none}.game-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.game-card-head h2{margin:0;font-size:1.15rem}.game-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.game-badge.live{background:#7effa826;color:#7effa8;border:1px solid rgba(126,255,168,.4)}.game-badge.planned{background:#ffffff12;color:#aab;border:1px solid rgba(255,255,255,.15)}.game-tagline{margin:.6rem 0 .9rem;font-size:.9rem;line-height:1.5;opacity:.85}.game-meta{display:flex;gap:.9rem;font-size:.78rem;opacity:.7}.panel{background:#ffffff0d;border-radius:8px;padding:1rem}.panel h3{margin:0 0 .5rem;font-size:1rem;color:var(--gold)}.move-list{max-height:300px;overflow-y:auto;font-family:monospace;font-size:.85rem;line-height:1.8}.move-row{display:flex;gap:1rem}.move-number{color:var(--muted);min-width:2.5rem}.move-white,.move-black{flex:1}.move-black{color:var(--muted)}.legend{display:flex;flex-direction:column;gap:.5rem;font-size:.8rem}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-swatch{width:16px;height:16px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.7rem}.legend-swatch.own{background:var(--board-light);color:#333}.legend-swatch.unknown{background:#444;color:#888}.legend-swatch.deduced{background:#444;color:var(--highlight)}.legend-swatch.revealed{background:#444;color:var(--gold);border:1px solid var(--gold)}.roster-row{display:flex;align-items:center;gap:.6rem;padding:.25rem 0}.roster-label{flex:0 0 6.5rem;font-size:.8rem;opacity:.7}.roster-pieces{display:flex;flex-wrap:wrap;gap:.15rem;align-items:center;min-height:1.4rem}.roster-piece{font-size:1.15rem;line-height:1}.roster-pieces.taken{color:var(--highlight)}.roster-pieces.lost{color:#b06a6a}.roster-claims{align-items:flex-start;border-top:1px solid #2a3946;margin-top:.35rem;padding-top:.45rem}.claim-list{gap:.25rem}.claim-chip{display:inline-flex;align-items:center;gap:.15rem;padding:.12rem .3rem;font-family:inherit;font-size:.72rem;line-height:1.3;color:#c8d4e0;background:transparent;border:1px solid #33475a;border-radius:4px;cursor:pointer}.claim-chip:hover{border-color:#7ecfff}.claim-chip.open{border-color:#7ecfff;background:#16293a}.claim-chip.claimed{color:#9be3a1;border-color:#3f6b48;background:#16261a}.claim-chip-sq{letter-spacing:.02em;opacity:.85}.claim-chip-glyph{font-size:1rem;line-height:1}.setup-panel{margin-bottom:.75rem}.setup-title{font-weight:600;margin-bottom:.35rem}.setup-note{font-weight:400;font-size:.75rem;opacity:.55}.setup-owner{font-size:.72rem;opacity:.65;margin:.35rem 0 .15rem}.setup-block{display:flex;flex-direction:column;gap:2px}.setup-line{display:flex;gap:2px}.setup-cell{width:1.7rem;height:1.7rem;display:flex;align-items:center;justify-content:center;font-size:1.05rem;line-height:1;border-radius:3px;color:#cfd6e4}.setup-cell.light{background:color-mix(in srgb,var(--board-light) 26%,transparent)}.setup-cell.dark{background:color-mix(in srgb,var(--board-dark) 34%,transparent)}.setup-cell.empty{background:transparent}.setup-cell.empty.light{background:color-mix(in srgb,var(--board-light) 7%,transparent)}.setup-cell.empty.dark{background:color-mix(in srgb,var(--board-dark) 10%,transparent)}.setup-cell.known{color:var(--gold, #d4a72c)}.setup-cell.captured{opacity:1}.setup-anchor{font-size:.58rem;letter-spacing:-.02em;color:#7d879a;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.setup-cell.claimed .setup-anchor{display:none}.setup-cell.captured .setup-glyph{color:transparent;-webkit-text-stroke:1px currentColor;text-stroke:1px currentColor;opacity:.55}.material-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.15rem 0}.material-pieces{display:flex;flex-wrap:wrap;gap:.05rem;font-size:1.1rem;line-height:1}.material-piece.outlined{color:transparent;-webkit-text-stroke:1px currentColor;text-stroke:1px currentColor;opacity:.5}.material-total{display:flex;align-items:baseline;gap:.3rem;white-space:nowrap}.material-total-label{font-size:.7rem;opacity:.6}.material-total-value{font-size:.95rem;font-weight:600;color:var(--highlight, #e8c05a)}.setup-cell.claimable{padding:0;border:1px solid transparent;font-family:inherit;cursor:pointer;position:relative}.setup-cell.claimable:hover{border-color:#7ecfff}.setup-cell.claimable.open{border-color:#7ecfff;box-shadow:0 0 0 1px #7ecfff inset}.setup-cell.claimed{color:#9be3a1}.setup-claim-mark{position:absolute;right:1px;bottom:1px;width:3px;height:3px;border-radius:50%;background:#9be3a1}.roster-toggle{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;padding:0;font:inherit;font-size:.72rem;color:inherit;opacity:.8;cursor:pointer}.roster-toggle:hover{opacity:1}.roster-caret{font-size:.65rem;opacity:.7}.setup-cell:not(.captured){position:relative}.howto{max-width:34rem;margin:0 auto 1.25rem;padding:1rem 1.25rem;border:1px solid rgba(212,167,44,.35);border-radius:6px;background:#d4a72c0f;height:auto;min-height:0;align-self:flex-start;flex:0 0 auto;overflow-anchor:none}.howto-rules{display:block}.howto-hint{display:block;margin:0;line-height:1.3}.howto-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.howto h2{margin:0;font-size:1.15rem;color:var(--gold)}.howto-close{background:transparent;border:none;color:#9aa3b2;font-size:1rem;cursor:pointer;padding:0 .25rem;line-height:1}.howto-close:hover{color:#fff}.howto-lede{margin:.5rem 0 .75rem;font-size:.95rem;opacity:.9}.howto-list{margin:0;padding-left:1.1rem;font-size:.85rem;line-height:1.65;opacity:.92}.howto-list li{margin-bottom:.4rem}.howto-list>li>strong{display:block;margin-bottom:.1rem}.howto-para{margin:0 0 .75rem;font-size:.85rem;line-height:1.65;opacity:.92}.howto-sublist{margin:.3rem 0 0;padding-left:1rem;font-size:.82rem;line-height:1.55;opacity:.88;list-style:circle}.howto-sublist li{margin-bottom:.2rem}.howto-sublist .howto-sublist{margin-top:.25rem;padding-left:.9rem;opacity:1;list-style:square;font-size:.79rem}.howto-sublist>li>strong{display:inline}.howto-foot{display:grid;grid-template-columns:1fr auto;grid-template-areas:"buttons close" "hint    hint";align-items:center;gap:.6rem .75rem;margin-top:.9rem}.howto-foot>button:not(:last-of-type){grid-area:buttons;justify-self:start}.howto-foot>button:last-of-type{grid-area:close}.howto-foot>.howto-hint{grid-area:hint}.howto-foot button{padding:.45rem 1.1rem;font-size:.85rem;background:var(--gold);color:#1a1a2e;border:none;border-radius:4px;font-weight:700;cursor:pointer}.howto-hint{font-size:.75rem;opacity:.55;font-style:italic}.lobby-main{flex-direction:column}.game-modes{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}.game-mode{display:flex;flex-direction:column;gap:.1rem;padding-left:.6rem;border-left:2px solid rgba(212,167,44,.4)}.game-mode-label{font-size:.82rem;font-weight:600}.game-mode-note{font-size:.75rem;opacity:.6;line-height:1.35}.roster-empty{font-size:.75rem;opacity:.45;font-style:italic}.capture-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:1rem 1.6rem;border-radius:12px;background:#0c121cf5;border:2px solid var(--gold, #d4a72c);color:var(--gold, #d4a72c);box-shadow:0 8px 32px #0009;pointer-events:none;animation:capture-toast-fade 5.5s ease forwards}.capture-toast-mine{border-color:#7fe08a;color:#7fe08a;box-shadow:0 8px 32px #0009,0 0 20px #7fe08a59}.capture-toast-glyph{font-size:2.6rem;line-height:1}.capture-toast-text{font-size:1rem;font-weight:600;letter-spacing:.02em}.capture-toast-more{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7}@keyframes capture-toast-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}8%{opacity:1;transform:translate(-50%,-50%) scale(1)}82%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.collapsible-heading{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:.4rem}.collapsible-heading .chev{opacity:.7;font-size:.9em}.connection-status{padding:.5rem;border-radius:4px;font-size:.85rem;text-align:center}.connection-status.connected{background:#2ecc7133;color:#2ecc71}.connection-status.disconnected{background:#e74c3c33;color:#e74c3c}.connection-status.connecting{background:#f1c40f33;color:#f1c40f}.game-over{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;gap:1rem}.game-over h2{margin:0;font-size:2rem;color:var(--gold)}.game-over-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.game-over button.secondary{background:transparent;color:var(--gold);border:1px solid var(--gold)}.game-over button.secondary:hover{background:#d4a72c26}.review-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.5rem 0 .75rem;padding:.5rem .75rem;border-left:3px solid var(--gold);background:#d4a72c14;border-radius:3px;font-size:.85rem}.review-banner button{padding:.3rem .7rem;font-size:.8rem;background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:3px;cursor:pointer}.game-over button{padding:.75rem 2rem;font-size:1rem;background:var(--gold);color:#1a1a2e;border:none;border-radius:4px;cursor:pointer;font-weight:700}.game-over button:hover{background:#e6c200}.join-form{display:flex;flex-direction:column;gap:1rem;max-width:400px;width:100%}.join-form input,.join-form select{padding:.75rem;border:1px solid #444;background:#ffffff1a;color:var(--fg);border-radius:4px;font-size:1rem}.join-form button{padding:.75rem;background:var(--highlight);color:#1a1a2e;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:1rem}.join-form button:hover{background:#6ec4f0}.error{color:#e74c3c;padding:.5rem;background:#e74c3c1a;border-radius:4px}.app .header .tagline{margin:.25rem 0 0;color:#9aa4b2;font-size:.9rem}.lobby{display:flex;flex-direction:column;gap:1rem;max-width:620px;width:100%;margin:0 auto}.lobby-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.lobby-actions input{flex:1 1 160px;min-width:140px;padding:.65rem;border:1px solid #444;background:#ffffff1a;color:var(--fg);border-radius:4px;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}.lobby-actions select,.lobby-actions button{padding:.65rem .9rem;border-radius:4px;font-size:.95rem}.lobby-actions select{border:1px solid #444;background:#ffffff1a;color:var(--fg)}.lobby-actions button{background:var(--highlight);color:#1a1a2e;border:none;cursor:pointer;font-weight:700}.lobby-actions button:disabled{opacity:.5;cursor:not-allowed}.lobby-actions .or{color:#7a8494;font-size:.85rem}.share{padding:.75rem;background:#6ec4f01f;border:1px solid rgba(110,196,240,.35);border-radius:4px;font-size:.9rem}.share code{display:block;margin-top:.35rem;word-break:break-all;color:var(--highlight)}.lobby h3{margin:.5rem 0 0;font-size:1rem;font-weight:600}.lobby .muted{color:#7a8494;margin:0}.open-games{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.open-games li{display:flex;align-items:center;gap:.75rem;padding:.55rem .75rem;background:#ffffff0f;border:1px solid #333;border-radius:4px}.open-games .code{font-family:monospace;font-size:1rem;letter-spacing:.1em;color:var(--highlight)}.open-games .seat{flex:1;color:#9aa4b2;font-size:.85rem}.open-games button,.lobby .link{padding:.4rem .8rem;border-radius:4px;border:none;cursor:pointer;font-size:.85rem;background:var(--highlight);color:#1a1a2e;font-weight:700}.lobby .link{align-self:flex-start;background:transparent;color:var(--highlight);text-decoration:underline;font-weight:400}.vs-computer{background:linear-gradient(180deg,#7ecfff,#4a9fd8);color:#0b1620;font-weight:600}.vs-computer:hover{filter:brightness(1.08)}.cg-piece.box{font-size:9px;line-height:1;letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;color:#cfe6ff;opacity:.9;display:flex;align-items:center;justify-content:center;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.cg-piece.box.minus{color:#9fb6cc;font-style:italic}.setup-box{font-size:8px;line-height:1;letter-spacing:.03em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;color:#cfe6ff;white-space:nowrap}.setup-box.minus{color:#9fb6cc;font-style:italic}.setup-panel{width:100%}.setup-line{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.setup-cell{width:auto;aspect-ratio:1 / 1;min-width:0}.howto-more,.howto-less{background:none;border:1px solid rgba(212,167,44,.5);color:inherit;padding:.28rem .7rem;border-radius:4px;cursor:pointer;font:inherit;font-size:.82rem}.howto-more:hover,.howto-less:hover{background:#d4a72c1f}.howto-foot{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.main-content>.howto{flex:0 0 auto;width:100%}.main-content:has(>.howto){flex-wrap:wrap}.howto-subhead{margin:1rem 0 .4rem;font-size:.86rem;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.howto abbr{font-variant:small-caps;letter-spacing:.02em;font-weight:600;text-decoration:none;border-bottom:none;color:#e8c07a}.howto-showme{margin-right:.5rem}.landing{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:46rem}.landing-block{border:1px solid rgba(212,167,44,.25);border-radius:6px;padding:.9rem 1.1rem;background:#d4a72c0a}.landing-head{margin:0 0 .55rem;font-size:.86rem;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.landing-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.landing-row input{flex:1 1 12rem;min-width:8rem;padding:.45rem .6rem;border-radius:4px;border:1px solid rgba(255,255,255,.18);background:#00000040;color:inherit}.landing-row .seed-input{flex:0 1 10rem}.landing-note{margin:.4rem 0 0;font-size:.82rem;opacity:.72;line-height:1.4}.landing-row .on,.mode-pick.on{outline:2px solid rgba(212,167,44,.7)}.linkish{background:none;border:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font-size:inherit}.mode-pick{display:flex;align-items:flex-start;gap:.4rem;flex:1 1 14rem;padding:.45rem .55rem;border-radius:4px;border:1px solid rgba(255,255,255,.12);cursor:pointer;font-size:.86rem}.resume-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.7rem}.resume-item{display:flex;gap:.6rem;align-items:baseline;text-align:left;padding:.45rem .6rem;border-radius:4px;border:1px solid rgba(255,255,255,.12);background:#0003;color:inherit;cursor:pointer}.resume-code{font-family:monospace;font-size:.9rem}.resume-meta{font-size:.8rem;opacity:.75}.scramble-view{margin-top:.8rem}.scramble-notation{margin:.6rem 0 0;padding:.6rem .75rem;background:#0000004d;border-radius:4px;font-family:monospace;font-size:.86rem;line-height:1.5;overflow-x:auto}.scramble-facts{margin-top:.6rem;font-size:.84rem;line-height:1.5}.scramble-facts p{margin:.25rem 0}
