@font-face{font-family:"Source Serif 4";src:url(/source-serif.otf) format("opentype");font-style:normal;font-weight:700;font-display:swap}:root{color-scheme:dark;--background: #14110e;--backdrop: #0e0c0a;--surface: #1f1a14;--raised: #2a241b;--overlay: #342c21;--text: #f6efe0;--muted: #cbbfa9;--quiet: #a89c86;--brass: #d6ab5c;--line: #6a5a44;--danger: #e9806a;--display-font: "Source Serif 4", Georgia, serif;--body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--control-radius: 10px;--panel-radius: 14px;--control-height: 3rem;--page-inset: 16px;font:100%/1.45 var(--body-font);color:var(--text);background:var(--background);accent-color:var(--brass)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;background:radial-gradient(ellipse 850px 750px at top,var(--raised),transparent)}:where(h1,h2,h3,p,figure){margin:0}:where(h1,h2,h3){font-family:var(--display-font);line-height:1.15}h1{font-size:1.875rem}h2{font-size:1.375rem}h3{font-size:1.125rem}:where(p,small,legend,figcaption){color:var(--muted)}a{color:var(--brass);text-underline-offset:.18em}:where(button,input,select,textarea){font:inherit;color:inherit}:where(button){padding:0;border:0;background:transparent;cursor:pointer}:where(button:disabled,input:disabled,select:disabled,textarea:disabled){cursor:default;opacity:.42}:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--brass);outline-offset:3px}:where(img,svg){max-width:100%}:where(hr,.divider){width:100%;height:1px;margin:0;border:0;background:#6a5a448c}.shell{width:min(100%,1280px);margin-inline:auto;padding:var(--page-inset);min-height:100vh;min-height:100dvh}.stack{display:flex;flex-direction:column;gap:12px;min-width:0}.row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.eyebrow{color:var(--brass);font-size:.6875rem;font-weight:600;letter-spacing:.118em;text-transform:uppercase}.panel,.card{min-width:0;padding:16px;border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface)}.card{border-radius:12px}.panel.accent,.card.accent{border-color:#d6ab5ca6}:where(button.card,a.card){color:var(--text);text-align:start;text-decoration:none}:where(button.card,a.card):active{background:var(--raised)}.button{display:inline-flex;min-height:var(--control-height);align-items:center;justify-content:center;gap:8px;padding:8px 15px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--raised);color:var(--text);font-size:.875rem;font-weight:600;line-height:1.25;text-align:center;text-decoration:none}.button.primary{background:var(--brass);color:var(--background)}.button.quiet{border-color:transparent;background:transparent;color:var(--muted)}.button:active:not(:disabled){opacity:.8}.button.full{width:100%}.notice{padding:12px 14px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--raised);color:var(--text)}.notice.error,.notice[role=alert]{border-color:var(--danger);color:var(--danger)}:where(.field){display:grid;min-width:0;gap:6px;color:var(--muted);font-size:.875rem;font-weight:600}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden]),select,textarea){width:100%;min-width:0;min-height:var(--control-height);padding:8px 14px;border:1px solid var(--line);border-radius:var(--control-radius);background:#0e0c0a8c;color:var(--text);font-size:1rem;font-weight:400}:where(input,select,textarea):focus-visible{border-color:var(--brass)}:where(input,textarea)::placeholder{color:var(--quiet)}:where(input[type=checkbox],input[type=radio]){width:1.15rem;height:1.15rem;flex:none;margin:0}:where(textarea){min-height:6rem;resize:vertical}:where(dialog){width:min(calc(100% - 32px),920px);max-height:calc(100% - 32px);padding:22px var(--page-inset);overflow:auto;border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--background);color:var(--text)}:where(dialog)::backdrop{background:#0e0c0ac2}.lobby{display:grid;grid-template-columns:minmax(0,560px);justify-content:center;align-items:center;gap:28px;min-height:calc(100vh - 2 * var(--page-inset));min-height:calc(100dvh - 2 * var(--page-inset))}.lobby-menu{display:grid;gap:19px;min-width:0}.lobby-menu>header{display:grid;gap:5px}.lobby-menu .play-actions,.lobby-menu .library-grid{display:grid;gap:8px}.lobby-menu .play-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.lobby-menu .play-actions .card{display:grid;align-content:start;gap:5px;min-height:116px;padding:11px}.lobby-menu .library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lobby-menu .library-rows{padding:0 10px}.lobby-menu .library-rows :where(button,a){display:flex;width:100%;min-height:var(--control-height);align-items:center;gap:7px;color:var(--text);font-size:.8125rem;font-weight:500;text-align:start;text-decoration:none}.lobby-art{display:none;width:100%;aspect-ratio:3 / 2;border-radius:8px;background:url(/board.jpg) center / 100% 100% no-repeat;box-shadow:0 9px 16px #00000085;object-fit:cover}@media(min-width:720px){:root{--page-inset: 28px}.lobby{grid-template-columns:minmax(0,min(450px,49%)) minmax(0,720px)}.lobby-menu h1{font-size:2.25rem}.lobby-art{display:block}}@media(max-width:360px){.lobby-menu .library-grid{grid-template-columns:1fr;gap:14px}}@media(max-width:342px){.lobby-menu .play-actions{grid-template-columns:1fr}}@media(max-height:439px){.lobby-menu{gap:10px}.lobby-menu h1{font-size:1.625rem}}.screen-header,.lobby-header{justify-content:space-between;align-items:start}.online-columns{display:grid;gap:14px;min-width:0}.online-columns>*{min-width:0}.button.destructive{color:var(--danger)}.lobby-tile{display:grid;align-content:start;gap:4px;min-height:72px}.lobby-tile>span:first-child{color:var(--brass);font-size:1.125rem}.lobby-tile small{font-size:.75rem}.library-rows .card{display:flex;justify-content:space-between;min-height:48px;align-items:center}.library-rows .card span{color:var(--brass)}.lobby-art.lobby-picture{background-image:linear-gradient(0deg,#0e0c0a77,transparent 55%),url(/play-art.png)}.lobby-art.seasonal-lobby{background:none;box-shadow:none;aspect-ratio:auto}.seasonal-board{display:block;width:100%;height:auto}.seasonal-phone{width:min(100%,340px);margin:0 auto}.score-table{border-collapse:collapse;width:100%;text-align:start}.score-table th,.score-table td{border-bottom:1px solid var(--line);padding:8px;text-align:start}.player-scores .eyebrow{display:flex;gap:5px;align-items:center}details>summary{cursor:pointer;color:var(--brass);padding-block:8px}@media(min-width:720px){.seasonal-phone{display:none}.online-columns{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}}.board-frame{display:grid;gap:12px;min-width:0;align-self:center}.felt-board{display:block;width:100%;aspect-ratio:3 / 2;border-radius:8px;box-shadow:0 16px 38px #0009;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.felt-board.movement-drag{touch-action:none}.board-target{fill:transparent;stroke:transparent;outline:none}.board-target.source{cursor:pointer}.movement-drag .board-target.source{cursor:grab}.movement-drag .board-target.selected{cursor:grabbing}.board-target.destination{stroke:#ecc578;fill:#e7b96437;stroke-width:4px;cursor:pointer}.board-target:focus-visible{stroke:#fff2c9;stroke-width:5px}.checker-art,.point-number,.board-inscription{pointer-events:none}.board-inscription{fill:#e0bb76;opacity:.78;font:700 23px Georgia,serif;letter-spacing:6px;text-anchor:middle}.point-number{fill:#e0bb76;font-size:22px;text-anchor:middle}.theme-slate .board-image{filter:saturate(.52) hue-rotate(44deg) brightness(.88)}.theme-honey .board-image{filter:sepia(.43) saturate(1.2) brightness(1.15)}.theme-dusk .board-image{filter:hue-rotate(100deg) saturate(.7) brightness(.87)}.off-trays{display:grid;grid-template-columns:1fr 1fr;gap:10px}.off-tray{display:flex;align-items:center;gap:8px;border:1px solid #6a5a44;background:#1f1a14;color:#f6efe0;border-radius:10px;padding:10px;text-align:left}.off-tray strong{margin-left:auto;font-size:.85rem;white-space:nowrap}.off-tray.destination{border-color:#ecc578;background:#524023}.piece-chip{width:18px;height:18px;flex:none;border-radius:50%;box-shadow:inset 0 0 0 2px #32281777}.piece-chip.ivory{background:#f0e7d3}.piece-chip.umber{background:#6b3418}.table-layout{display:grid;gap:20px;align-items:start}.table-controls{display:grid;gap:12px}.table-controls .button{justify-content:center}.player-scores{display:grid;grid-template-columns:1fr 1fr;gap:8px}.player-scores .card{padding:9px;display:grid;gap:4px}.player-scores .active{border-color:#d6ab5c}.tab-strip{display:flex;gap:8px;overflow:auto;padding-bottom:4px}.tab-strip .button{flex:0 0 auto;min-width:0;white-space:nowrap}.theme-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.theme-sample{display:grid;gap:8px}.theme-sample .board-frame{pointer-events:none}.theme-sample .off-trays{display:none}.face-to-face{transform:rotate(180deg)}@media(min-width:880px){.table-layout{grid-template-columns:minmax(0,1fr) minmax(235px,286px)}}.paired-table{grid-template-columns:1fr}.paired-controls{justify-content:center}.paired-table .board-frame{width:min(100%,950px);justify-self:center}.paired-table .table-controls{width:min(100%,550px);justify-self:center}@media(max-width:600px)and (orientation:portrait){.table-layout .felt-board{aspect-ratio:1.22}.table-layout .checker-art{transform-box:fill-box;transform-origin:center;transform:scaleY(.81)}}@media(min-width:721px){.table-layout .board-frame{grid-template-columns:minmax(0,1fr) minmax(50px,7%);gap:5px}.table-layout .off-trays{grid-template-columns:1fr;gap:5px}.table-layout .off-tray{justify-content:center;flex-direction:column;padding:5px;gap:5px}.table-layout .off-tray span:nth-child(2){font-size:.65rem}.table-layout .off-tray strong{margin-left:0;font-size:.7rem}}@media(orientation:landscape)and (max-height:540px)and (min-width:640px){.table-layout:not(.paired-table){grid-template-columns:minmax(0,1fr) minmax(140px,24%);gap:8px}.shell:has(.table-layout){padding:8px}.shell:has(.table-layout)>.panel{padding:10px;gap:8px}.shell:has(.table-layout) .screen-header h1{font-size:1.375rem}.table-layout .board-frame{width:min(100%,calc(150dvh - 112px))}.table-layout .table-controls{max-height:calc(100dvh - 112px);overflow:auto}}.board-target.destination.hit{stroke:#e9806a;fill:#e9806a4d}
