.game-ai-backgammon-game{--game-ai-action:#945027}.game-ai-backgammon-game .game-ai-board-column,.game-ai-backgammon-game .game-ai-play-controls{width:100%;max-width:900px;margin-inline:auto}.game-ai-backgammon-game .game-ai-main{display:block;padding-top:.85rem!important}.backgammon-setup{display:block}.backgammon-options{display:grid;grid-column:1/-1;grid-template-columns:9rem 8rem minmax(20rem,1fr) auto;gap:.8rem 1rem}.backgammon-options label{width:auto!important;min-width:0;flex-basis:auto!important}.backgammon-options select{width:100%}.backgammon-options.is-pass-and-play{grid-template-columns:9rem minmax(0,1fr) auto}.backgammon-options.is-pass-and-play .backgammon-new-game{grid-column:3}.backgammon-new-game{align-self:end;white-space:nowrap}.backgammon-turn-marker{display:block;width:1rem;aspect-ratio:1;border-radius:50%}.backgammon-turn-marker.is-white{border:1px solid #8e8478;background:#f2eadb}.backgammon-turn-marker.is-black{border:1px solid #1f1c1a;background:#302c29}.backgammon-turnbar{display:flex;min-height:4.7rem;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #c9c3b8}.backgammon-turn-copy{display:flex;min-width:0;align-items:center;gap:.7rem}.backgammon-turn-copy p{max-width:36rem;margin:0;color:#3e3a36;font-size:.94rem;font-weight:620;line-height:1.35}.backgammon-turn-marker{flex:0 0 auto;box-shadow:0 0 0 4px rgb(148 80 39/0)}.backgammon-turn-marker.is-thinking{animation:backgammon-thinking .9s ease-in-out infinite alternate}@keyframes backgammon-thinking{to{box-shadow:0 0 0 5px rgb(148 80 39/.22);transform:scale(.9)}}.backgammon-roll-and-actions{display:flex;flex:0 0 auto;min-height:2.9rem;align-items:center;justify-content:flex-end;gap:.45rem}.backgammon-main-action{min-width:5.4rem;min-height:2.9rem;padding:.68rem 1rem;font-size:.7rem;font-weight:700}.backgammon-die-choice{display:flex;min-height:3.2rem;align-items:center;justify-content:flex-end;gap:.45rem;border-bottom:1px solid #c9c3b8}.backgammon-die-choice>span{margin-right:.2rem;color:#625d55;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.63rem;font-weight:650;letter-spacing:.05em;text-transform:uppercase}.backgammon-die-choice button{min-width:3.25rem;min-height:2.55rem;border:1px solid #98612f;padding:.45rem .7rem;background:#f0dfbd;color:#53361f;font-size:.76rem;font-weight:700;cursor:pointer}.backgammon-board{--backgammon-edge:clamp(5px,0.8vw,8px);position:relative;isolation:isolate;display:grid;width:100%;aspect-ratio:1.72;margin:.75rem auto 0;grid-template-columns:repeat(6,minmax(0,1fr)) minmax(1.9rem,.74fr) repeat(6,minmax(0,1fr)) minmax(1.8rem,.68fr);grid-template-rows:repeat(2,minmax(0,1fr));overflow:hidden;border:var(--backgammon-edge) solid #362920;background:#765039;box-shadow:inset 0 0 0 1px rgb(244 218 178/.16),0 3px 10px rgb(46 35 28/.22),0 16px 34px rgb(46 35 28/.08);touch-action:manipulation;transform-origin:center;transition:transform .28s cubic-bezier(.2,.7,.2,1);user-select:none}.backgammon-board:after{position:absolute;z-index:0;top:50%;right:0;left:0;height:1px;background:rgb(48 34 26/.2);content:"";pointer-events:none}.backgammon-board.is-flipped{transform:rotate(180deg)}.backgammon-bar-slot,.backgammon-off-slot,.backgammon-point{position:relative;z-index:1;min-width:0;min-height:0;border:0;padding:0;background:transparent;color:inherit}.backgammon-point-shape{position:absolute;z-index:-1;top:0;right:3%;left:3%;height:82%;background:#c69647;clip-path:polygon(0 0,100% 0,50% 100%);transition:filter .13s ease}.backgammon-point.is-bottom .backgammon-point-shape{top:auto;bottom:0;clip-path:polygon(50% 0,100% 100%,0 100%)}.backgammon-point.is-brick .backgammon-point-shape{background:#aa4f39}.backgammon-bar-slot[aria-disabled=false],.backgammon-off-slot[aria-disabled=false],.backgammon-point[aria-disabled=false]{cursor:pointer}.backgammon-bar-slot.is-source .backgammon-checker:last-child,.backgammon-point.is-source .backgammon-checker:last-child{outline:3px solid #f8edca;outline-offset:-2px;box-shadow:0 0 0 3px #315d72,0 0 0 6px rgb(232 241 239/.72),0 4px 8px rgb(35 25 19/.48)}.backgammon-bar-slot.is-selected .backgammon-checker:last-child,.backgammon-point.is-selected .backgammon-checker:last-child{outline:4px solid #fff1bd;outline-offset:-2px;box-shadow:0 0 0 4px #b95f22,0 0 0 7px rgb(255 235 174/.8),0 5px 9px rgb(35 25 19/.5);transform:translateY(-5%) scale(1.08)}.backgammon-bar-slot:focus-visible,.backgammon-off-slot:focus-visible,.backgammon-point:focus-visible{z-index:8;outline:3px solid #f5d58b;outline-offset:-4px}@media (hover:hover) and (pointer:fine){.backgammon-bar-slot[aria-disabled=false]:hover .backgammon-checker:last-child,.backgammon-point[aria-disabled=false]:hover .backgammon-checker:last-child{transform:translateY(-5%) scale(1.04)}.backgammon-point.is-destination:hover .backgammon-point-shape{filter:brightness(1.13)}}.backgammon-target{position:absolute;z-index:4;left:50%;width:min(60%,2.15rem);aspect-ratio:1;border:3px solid #f8edca;border-radius:50%;transform:translateX(-50%);background:#315d72;box-shadow:0 0 0 2px rgb(35 28 23/.72),0 2px 7px rgb(35 28 23/.45);pointer-events:none}.backgammon-point.is-top .backgammon-target{bottom:9%}.backgammon-point.is-bottom .backgammon-target{top:9%}.backgammon-bar-slot.is-black .backgammon-target,.backgammon-off-slot.is-black .backgammon-target{bottom:8%}.backgammon-bar-slot.is-white .backgammon-target,.backgammon-off-slot.is-white .backgammon-target{top:8%}.backgammon-checker-stack{position:absolute;z-index:2;inset:2% 0;display:grid;grid-template-rows:repeat(5,minmax(0,1fr));place-items:start center;pointer-events:none}.backgammon-checker-stack.is-up{place-items:end center}.backgammon-checker{display:grid;width:88%;max-width:3.75rem;aspect-ratio:1;grid-column:1;place-items:center;border-radius:50%;box-shadow:inset 0 1px 1px rgb(255 255 255/.23),0 1px 3px rgb(31 24 20/.46);font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:clamp(.52rem,1.35vw,.75rem);font-style:normal;font-weight:750;transition:box-shadow .13s ease,transform .13s ease}.backgammon-checker:first-child{grid-row:1}.backgammon-checker:nth-child(2){grid-row:2}.backgammon-checker:nth-child(3){grid-row:3}.backgammon-checker:nth-child(4){grid-row:4}.backgammon-checker-stack.is-up .backgammon-checker:first-child,.backgammon-checker:nth-child(5){grid-row:5}.backgammon-checker-stack.is-up .backgammon-checker:nth-child(2){grid-row:4}.backgammon-checker-stack.is-up .backgammon-checker:nth-child(3){grid-row:3}.backgammon-checker-stack.is-up .backgammon-checker:nth-child(4){grid-row:2}.backgammon-checker-stack.is-up .backgammon-checker:nth-child(5){grid-row:1}.backgammon-checker.is-white,.backgammon-drag-ghost.is-white,.backgammon-flying-checker.is-white{border:1px solid #95897b;background:#f2eadb;color:#423b35}.backgammon-checker.is-black,.backgammon-drag-ghost.is-black,.backgammon-flying-checker.is-black{border:1px solid #171513;background:#302d2a;color:#f4e9d7}.backgammon-board.is-flipped .backgammon-checker>span,.backgammon-board.is-flipped .backgammon-double-count{transform:rotate(180deg)}.backgammon-drag-ghost,.backgammon-flying-checker{position:fixed;z-index:1000;display:grid;width:44px;height:44px;margin:0;place-items:center;border-radius:50%;box-shadow:inset 0 1px 1px rgb(255 255 255/.24),0 7px 14px rgb(31 24 20/.3);pointer-events:none}.backgammon-drag-ghost{top:-100px;left:-100px}.backgammon-flying-checker{transform-origin:top left;will-change:transform}.backgammon-checker.is-arriving{animation:backgammon-checker-arrive .16s ease-out both}.backgammon-checker.is-flight-target{opacity:0!important;animation:none!important}@keyframes backgammon-checker-arrive{0%{opacity:.4;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.backgammon-bar{z-index:2;display:grid;grid-column:7;grid-row:1/3;grid-template-rows:repeat(2,minmax(0,1fr));border-inline:1px solid rgb(42 29 22/.48);background:#4d392f}.backgammon-bar-slot.is-black{grid-row:1}.backgammon-bar-slot.is-white{grid-row:2}.backgammon-off{z-index:2;display:grid;grid-column:14;grid-row:1/3;grid-template-rows:repeat(2,minmax(0,1fr));border-left:1px solid rgb(42 29 22/.55);background:#49352b}.backgammon-off-slot.is-black{grid-row:1}.backgammon-off-slot.is-white{grid-row:2}.backgammon-off-slot .backgammon-checker{width:76%}.backgammon-board-dice{position:absolute;z-index:6;top:50%;left:68%;display:flex;align-items:center;gap:clamp(.25rem,.7vw,.45rem);transform:translate(-50%,-50%);pointer-events:none}.backgammon-board-dice.is-black{left:32%}.backgammon-board-dice.is-opening{left:68%}.backgammon-die{display:grid;width:clamp(2.05rem,5.3vw,3.1rem);aspect-ratio:1;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);place-items:center;border:1px solid #8d8173;border-radius:12%;padding:10%;background:#f0e7d8;box-shadow:0 3px 7px rgb(31 24 20/.42);transition:opacity .15s ease,transform .15s ease}.backgammon-die.is-black{border-color:#171513;background:#302d2a}.backgammon-die i{display:block;width:110%;aspect-ratio:1;border-radius:50%;background:transparent}.backgammon-die.is-white i.has-pip{background:#332e2a}.backgammon-die.is-black i.has-pip{background:#f1e6d5}.backgammon-die.is-used{opacity:.42;transform:scale(.84)}.backgammon-die.is-rolling{animation:backgammon-die-roll .68s cubic-bezier(.16,.76,.22,1) both}.backgammon-die.is-rolling:nth-child(2){animation-delay:55ms}@keyframes backgammon-die-roll{0%{opacity:0;transform:translate3d(-1rem,-2.2rem,0) rotate(-70deg) scale(.72)}45%{opacity:1;transform:translate3d(.35rem,.18rem,0) rotate(24deg) scale(1.06)}72%{transform:translate3d(-.1rem,-.2rem,0) rotate(-7deg) scale(.96)}to{opacity:1;transform:translateZ(0) rotate(0) scale(1)}}.backgammon-double-count{position:absolute;top:calc(100% + .18rem);left:50%;color:#f4ead9;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:clamp(.46rem,1vw,.58rem);font-weight:700;letter-spacing:.04em;text-shadow:0 1px 2px rgb(32 24 19/.7);text-transform:uppercase;transform:translateX(-50%);white-space:nowrap}.backgammon-board-actions{display:flex;align-items:flex-start!important;justify-content:space-between;gap:1rem}.backgammon-board-actions p{max-width:35rem;margin:0;color:#625d55;font-family:var(--font-newsreader),serif;font-size:.95rem;line-height:1.45}.backgammon-board-actions>div{display:flex;flex:0 0 auto;gap:.45rem}.backgammon-search-readout{margin-top:1.6rem;border-block:1px solid #c9c3b8;padding-block:1.15rem 1.25rem}.backgammon-search-heading{display:grid;grid-template-columns:minmax(10rem,.8fr) minmax(0,1.6fr);gap:1rem;align-items:end}.backgammon-search-heading h2{margin:0;color:#292524;font-size:1rem;font-weight:680}.backgammon-search-heading p{margin:.2rem 0 0;color:#6b655c;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.65rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.backgammon-search-heading code{overflow:hidden;color:#574f48;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.72rem;line-height:1.5;text-align:right;text-overflow:ellipsis;white-space:nowrap}.backgammon-search-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:1.05rem 0 0}.backgammon-search-stats dt{color:#736c63;font-size:.64rem;font-weight:650;letter-spacing:.04em;line-height:1.25;text-transform:uppercase}.backgammon-search-stats dd,.backgammon-search-stats dt{font-family:var(--font-geist-mono),ui-monospace,monospace}.backgammon-search-stats dd{margin:.22rem 0 0;color:#292524;font-size:.82rem;font-variant-numeric:tabular-nums}.backgammon-equity{margin-top:1rem}.backgammon-equity-bar{display:flex;height:.55rem;overflow:hidden;background:#ded8cc}.backgammon-equity-bar i{min-width:0}.backgammon-equity ol{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.7rem;margin:.65rem 0 0;padding:0;list-style:none}.backgammon-equity li{display:grid;grid-template-columns:auto 1fr;gap:.15rem .35rem;align-items:center;color:#6b655c;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.62rem;line-height:1.25}.backgammon-equity li i{width:.5rem;height:.5rem;grid-row:1/3}.backgammon-equity li strong{color:#393532;font-size:.72rem;font-variant-numeric:tabular-nums}.is-outcome-0{background:#b25b31}.is-outcome-1{background:#ca8138}.is-outcome-2{background:#d9aa5a}.is-outcome-3{background:#81796f}.is-outcome-4{background:#5e5852}.is-outcome-5{background:#34312e}.backgammon-error{width:100%;max-width:900px;margin:1rem auto 0;border-block:1px solid #d5a098;padding-block:.6rem;color:#9f3f31;font-size:.85rem}@media (max-width:720px){.backgammon-setup{display:block}.backgammon-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .75rem}.backgammon-strength{grid-column:1/-1}.backgammon-setup label{width:100%!important}.backgammon-new-game{grid-column:2;margin-left:0}.backgammon-options.is-pass-and-play{grid-template-columns:repeat(2,minmax(0,1fr))}.backgammon-options.is-pass-and-play .backgammon-new-game{grid-column:2}.backgammon-turnbar{display:grid;min-height:5.8rem;grid-template-columns:1fr;gap:.5rem;padding-block:.62rem}.backgammon-turnbar:not(:has(.backgammon-roll-and-actions)){min-height:4rem}.backgammon-roll-and-actions{justify-content:flex-start}.backgammon-board{--backgammon-edge:4px;width:100%}.backgammon-checker{width:91%;border-width:.5px;font-size:.48rem}.backgammon-target{border-width:1.5px}.backgammon-board-dice{left:69%;gap:.18rem}.backgammon-board-dice.is-black{left:31%}.backgammon-board-dice.is-opening{left:69%}.backgammon-die{width:clamp(1.8rem,8.3vw,2.1rem);border-width:.5px;box-shadow:0 2px 4px rgb(31 24 20/.4)}.backgammon-board-actions{display:grid}.backgammon-board-actions>div{grid-row:1}.backgammon-board-actions p{grid-row:2}.backgammon-result{align-items:flex-start}.backgammon-result strong{font-size:1rem}.backgammon-search-heading{grid-template-columns:1fr;gap:.55rem}.backgammon-search-heading code{overflow:visible;text-align:left;text-overflow:clip;white-space:normal}.backgammon-search-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.backgammon-equity ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem .8rem}}@media (prefers-reduced-motion:reduce){.backgammon-board,.backgammon-checker,.backgammon-die{transition:none}.backgammon-checker.is-arriving,.backgammon-die.is-rolling,.backgammon-turn-marker.is-thinking{animation:none}}