@property --tile-unit{syntax:"<length>";inherits:true;initial-value:46px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}html{background:#1e5631}body{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:#1e5631;min-width:320px;min-height:100dvh;margin:0;overflow-x:hidden}.domino-tile{background:var(--tile-bg,#1a1512);border:1px solid var(--tile-border,#4a3f30);border-radius:calc(var(--tile-unit,46px) * .12);cursor:default;flex-shrink:0;padding:0;transition:transform .15s,box-shadow .15s,width .25s,height .25s,border-radius .25s;display:flex;position:relative;box-shadow:0 2px 4px #00000040}.domino-tile:not(.face-down):after{content:"";width:calc(var(--tile-unit,46px) * .11);height:calc(var(--tile-unit,46px) * .11);pointer-events:none;background:radial-gradient(circle at 35% 35%,#f5d576,#b8860b 70%,#7a5c0a 100%);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 1px #0006}.domino-tile.horizontal{width:calc(var(--tile-unit,46px) * 2);height:var(--tile-unit,46px);flex-direction:row}.domino-tile.vertical{width:var(--tile-unit,46px);height:calc(var(--tile-unit,46px) * 2);flex-direction:column}.domino-tile.clickable{cursor:pointer}.domino-tile.clickable:hover{transform:translateY(-4px);box-shadow:0 6px 10px #0000004d}.domino-tile.selected{outline-offset:1px;outline:3px solid #e2b13c}.domino-tile.disabled{opacity:.8;filter:saturate(.4)}.domino-half{flex:1;justify-content:center;align-items:center;display:flex}.pip-grid{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:6%;width:78%;height:78%;display:grid}.pip{aspect-ratio:1;border-radius:50%}.pip-on{background:var(--pip-color,#faf1dc)}.domino-divider{background:var(--tile-border,#4a3f30)}.horizontal .domino-divider{align-self:center;width:1px;height:82%}.vertical .domino-divider{align-self:center;width:82%;height:1px}.domino-back{border-radius:inherit;background:linear-gradient(135deg, var(--tile-back-start,#241d17), var(--tile-back-end,#120e0b));width:100%;height:100%}.board{--board-inset:1rem;padding:var(--board-inset);box-sizing:border-box;min-height:calc(var(--tile-unit,46px) * 2 + var(--board-inset) * 2);flex:1;position:relative;overflow:hidden}@media (width<=480px){.board{--board-inset:.4rem}}.board-empty{color:#fff;justify-content:center;align-items:center;font-size:1rem;font-style:italic;font-weight:500;display:flex}.board-canvas{inset:var(--board-inset);position:absolute}.end-zone{width:var(--tile-unit,46px);height:var(--tile-unit,46px);color:#ffe8a3;cursor:pointer;background:#e2b13c2e;border:2px dashed #e2b13c;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;transition:width .25s,height .25s;animation:1.4s ease-in-out infinite end-zone-pulse;display:flex}.end-zone-value{font-size:1.1rem;font-weight:700}@keyframes end-zone-pulse{0%,to{box-shadow:0 0 #e2b13c80}50%{box-shadow:0 0 0 6px #e2b13c00}}.game-over-banner{color:#fff;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.6rem 1.25rem;padding:.75rem 1.25rem;display:flex}.game-over-scores{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.game-over-winners-tag{color:#fff;margin-left:.4rem;font-weight:700}.game-over-teams{background:#ffffff14;border-radius:8px;grid-template-columns:auto auto auto auto auto;align-items:center;gap:.4rem .6rem;max-width:100%;padding:.5rem .75rem;display:grid}.game-over-team-block{display:contents}@media (width<=480px){.game-over-teams:not(.game-over-teams--simple){flex-direction:column;align-items:stretch;row-gap:0;display:flex}.game-over-teams--simple{flex-wrap:wrap;justify-content:center;display:flex}.game-over-team-block{flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .6rem;padding:.5rem 0;display:flex}.game-over-team-block+.game-over-team-block{border-top:1px solid #ffffff2e}.game-over-winners-slot{min-width:0}}.game-over-op-group{align-items:center;gap:.5rem;display:flex}.game-over-teams--simple{grid-template-columns:auto auto}.game-over-team-name{white-space:nowrap;font-weight:700}.game-over-player-pill{white-space:nowrap;background:#00000026;border-radius:6px;align-items:center;gap:.3rem;padding:.3rem .5rem;font-size:1rem;display:flex}.game-over-op{text-align:center;font-weight:700}.game-over-team-total{white-space:nowrap;font-weight:700}.game-over-winners-slot{min-width:3.5rem}.hand{flex-direction:column;gap:.4rem;padding:.6rem 1rem;display:flex}.hand-top-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:.6rem;display:grid}.hand-top-row--no-banner{grid-template-columns:auto;justify-content:flex-start}.hand-copyright{color:#ffffffb3;white-space:nowrap;grid-column:3;justify-self:end;font-size:.8rem;font-weight:600;text-decoration:none}.hand-copyright:hover{color:#fff;text-decoration:underline}@media (width<=480px){.hand-copyright{grid-column:1/-1;margin-top:.15rem}}.hand-label{color:#fff;white-space:nowrap;background:#ffffff14;border-radius:6px;justify-self:start;align-items:center;gap:.5rem;padding-block:.35rem;padding-inline:.6rem;font-size:1rem;font-weight:700;display:flex}.hand-count{color:#fff;font-weight:400}.hand-turn-banner{color:#fff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:999px;justify-self:center;padding-block:.45rem;padding-inline:.9rem;font-family:inherit;font-size:1rem;font-weight:700}.hand-turn-banner-action{cursor:pointer;border-radius:6px;animation:2s ease-in-out infinite hand-turn-banner-pulse}.hand-turn-banner-own{color:#1e5631;background-color:#fff;border-color:#fff}.hand-turn-banner-action:hover{background:#ffffff38}.hand-turn-banner-own.hand-turn-banner-action{animation:2s ease-in-out infinite hand-turn-banner-pulse-own}.hand-turn-banner-own.hand-turn-banner-action:hover{background-color:#e6e6e6;animation-play-state:paused}@keyframes hand-turn-banner-pulse{0%,to{box-shadow:0 0 #ffffff59}50%{box-shadow:0 0 0 6px #fff0}}@keyframes hand-turn-banner-pulse-own{0%,to{background-color:#fff;border-color:#fff}50%{background-color:#ffffff8c;border-color:#ffffff8c}}.hand-tiles{flex-wrap:wrap;gap:6px;display:flex}.hand-tiles-column{flex-flow:column;align-items:center;min-height:0;overflow-y:auto}.hand-side{flex-direction:row;align-items:stretch;gap:.5rem}.hand-side-left{flex-direction:row-reverse}.hand-side-header{flex-direction:column;flex-shrink:0;justify-content:flex-start;align-items:center;gap:.5rem;min-width:2.75rem;padding-top:.2rem;display:flex}.hand-side-header .hand-label,.hand-side-header .hand-turn-banner{writing-mode:vertical-rl;text-orientation:sideways;white-space:nowrap}.hand-side-right .hand-side-header .hand-label,.hand-side-right .hand-side-header .hand-turn-banner{transform:rotate(180deg)}.rules-overlay{z-index:1500;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.rules-card{color:#fff;background:#1e5631;border:1px solid #fff3;border-radius:12px;width:480px;max-width:100%;max-height:90vh;padding:1.75rem;overflow-y:auto;box-shadow:0 12px 32px #0006}.rules-card h2{color:#fff;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.rules-variant-name{color:#fff;margin:0 0 1.25rem;font-size:1rem;font-weight:500}.rules-section{margin-bottom:1.25rem}.rules-section h3{color:#fff;margin:0 0 .5rem;font-size:1rem;font-weight:700}.rules-section p{color:#fff;margin:0 0 .6rem;font-size:1rem;font-weight:400;line-height:1.5}.rules-section p:last-child{margin-bottom:0}.rules-section ul{flex-direction:column;gap:.4rem;margin:0 0 .6rem;padding-left:1.2rem;display:flex}.rules-section li{color:#fff;font-size:1rem;font-weight:400;line-height:1.5}.rules-actions{justify-content:center;display:flex}.rules-buttons{background:#ffffff14;border-radius:8px;gap:.5rem;padding:.4rem .6rem;display:flex}.rules-close-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.45rem .9rem;font-size:1rem;font-weight:700}.rules-close-button:hover{background:#ffffff1f}.setup-overlay{z-index:1500;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.setup-card{color:#fff;background:#1e5631;border:1px solid #fff3;border-radius:12px;width:420px;max-width:100%;max-height:90vh;padding:1.75rem;overflow-y:auto;box-shadow:0 12px 32px #0006}.setup-card h2{color:#fff;margin:0 0 1.25rem;font-size:1.5rem;font-weight:700}.setup-section{margin-bottom:1.25rem}.setup-section h3{color:#fff;margin:0 0 .5rem;font-size:1rem;font-weight:700}.setup-options{flex-direction:column;gap:.5rem;display:flex}.setup-option{text-align:left;color:#fff;cursor:pointer;background:#00000026;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.6rem .8rem;display:flex}.setup-option:disabled{opacity:.5;cursor:not-allowed}.setup-option:hover:not(:disabled){background:#ffffff1f}.setup-option.selected{background:#ffffff14;border-color:#fff}.setup-option.selected:hover{background:#ffffff1f}.setup-option-label{font-size:1rem;font-weight:700}.setup-option-description{color:#fff;font-size:1rem;font-weight:500}.setup-section-note{color:#fff;margin:0 0 .6rem;font-size:1rem;font-weight:500}.setup-difficulty-row{gap:.5rem;display:flex}.setup-difficulty{text-align:center;flex:1;align-items:center}.setup-difficulty-description{margin-top:.5rem;display:block}.setup-actions{justify-content:center;display:flex}.setup-buttons{background:#ffffff14;border-radius:8px;gap:.5rem;padding:.4rem .6rem;display:flex}.setup-cancel-button,.setup-start-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.45rem .9rem;font-size:1rem;font-weight:700}.setup-cancel-button:hover,.setup-start-button:hover{background:#ffffff1f}.game-board{color:#fff;--tile-bg:#1a1512;--tile-border:#4a3f30;--pip-color:#faf1dc;--tile-back-start:#241d17;--tile-back-end:#120e0b;background:linear-gradient(135deg,#1e5631 0%,#2d7a4a 100%);flex-direction:column;height:100dvh;display:flex}.game-board[data-tile-theme=light]{--tile-bg:#f8f4ec;--tile-border:#8a7a5c;--pip-color:#24211c;--tile-back-start:#fff;--tile-back-end:#e4d9bd}.game-header{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.75rem 1.25rem;display:flex}.game-header h1{flex-wrap:wrap;flex:1;align-items:baseline;gap:.3rem .6rem;min-width:0;margin:0;font-size:1.3rem;display:flex}.game-variant-name{min-width:0;font-size:1rem;font-weight:400}.game-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;max-width:100%;display:flex}.game-header-controls{background:#ffffff14;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;max-width:100%;padding:.4rem .6rem;display:flex}.game-header-controls button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.45rem .9rem;font-size:1rem;font-weight:700}.game-header-controls button:hover:not(:disabled){background:#ffffff1f}.game-header-controls button:disabled{opacity:.4;cursor:not-allowed}.game-header-controls button.new-game-button{color:#1e5631;background:#fff}.game-header-controls button.new-game-button:hover{background:#e6e6e6}.game-header-controls button.turn-alert-toggle{padding:.45rem .55rem;font-size:1.05rem;line-height:1}.toggle-switch{align-items:center;gap:.5rem;margin-left:.25rem;display:flex}.toggle-switch span{color:#fff;white-space:nowrap;cursor:pointer;font-size:1rem;font-weight:400;transition:font-weight .2s}.toggle-switch span.active{font-weight:700}.switch{flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#ffffff14;border-radius:22px;transition:all .2s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;bottom:3px;left:3px}.switch input:checked+.slider:before{transform:translate(18px)}.game-board>.hand{flex-shrink:0}.table-middle{flex:1;align-items:stretch;min-height:0;display:flex}.table-middle .hand{flex:none;justify-content:center;max-width:30%;min-height:0}.boneyard-count{color:#fff;font-size:1rem}#root{min-height:100vh}
