/* Backgammon — scoped to #sdb-game-root. spieldb.de pastel tokens. */
#sdb-game-root{
  --cream:#FDFBF7;--paper:#fff;--rose:#E5989B;--mustard:#FFB347;--deep:#4A4E69;--ink:#22223B;
  --felt:#EDE7DC;--ptA:#D9C9AE;--ptB:#C2B59B;--line:rgba(74,78,105,.14);
  font-family:'Be Vietnam Pro',system-ui,sans-serif;color:var(--ink);max-width:640px;margin:0 auto;
}
#sdb-game-root *{box-sizing:border-box;}
.bg-bar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:space-between;margin-bottom:.9rem;}
.bg-status{font-weight:700;font-size:1.0rem;min-height:1.4rem;flex:1 1 auto;}
.bg-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;}
.bg-select{font:inherit;font-weight:600;padding:.5rem .85rem;border:2px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;}
.bg-btn{font:inherit;font-weight:700;padding:.55rem 1.15rem;border:0;border-radius:999px;background:var(--deep);color:#fff;cursor:pointer;transition:transform .25s cubic-bezier(.34,1.56,.64,1);}
.bg-btn.alt{background:var(--mustard);color:var(--ink);}
.bg-btn:disabled{opacity:.45;cursor:default;}
.bg-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.03);}
.bg-dice{display:inline-flex;gap:.45rem;align-items:center;}
.bg-die{width:2.6rem;height:2.6rem;border-radius:.55rem;background:var(--paper);border:2px solid var(--line);box-shadow:inset 0 -3px 0 rgba(74,78,105,.18),0 2px 6px rgba(0,0,0,.1);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:.3rem;gap:.18rem;}
.bg-pip{border-radius:50%;background:var(--deep);width:100%;height:100%;}
.bg-die.used{opacity:.35;}
.bg-die.roll{animation:bgroll .6s cubic-bezier(.22,.68,0,1.15);}
@keyframes bgroll{
  0%  {transform:perspective(130px) rotateX(-50deg) rotateY(35deg) scale(.68);opacity:.45;}
  22% {transform:perspective(130px) rotateX(25deg)  rotateY(-20deg) scale(.85);opacity:.85;}
  50% {transform:perspective(130px) rotateX(-12deg) rotateY(10deg)  scale(.93);}
  72% {transform:perspective(130px) rotateX(6deg)   rotateY(-4deg)  scale(.97);}
  88% {transform:perspective(130px) rotateX(-2deg)  rotateY(1deg)   scale(.99);}
  100%{transform:perspective(130px) rotateX(0)      rotateY(0)      scale(1);opacity:1;}
}
.bg-board{background:var(--felt);border-radius:1rem;border:6px solid var(--deep);padding:.5rem;}
.bg-row{display:grid;grid-template-columns:repeat(12,1fr) 0;gap:0;}
.bg-quad{display:grid;grid-template-columns:repeat(12,1fr);}
.bg-pt{min-height:120px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:3px 0;cursor:pointer;position:relative;}
.bg-pt.bottom{flex-direction:column-reverse;}
.bg-pt:nth-child(odd){background:linear-gradient(var(--ptA),var(--ptA));}
.bg-pt:nth-child(even){background:var(--ptB);}
.bg-chk{width:78%;max-width:26px;aspect-ratio:1;border-radius:50%;box-shadow:0 1px 0 rgba(0,0,0,.2);}
.bg-h{background:var(--rose);} .bg-a{background:var(--mustard);}
.bg-pt.legal{outline:3px solid var(--deep);outline-offset:-3px;}
.bg-pt.sel{outline:3px solid var(--mustard);outline-offset:-3px;}
.bg-mid{display:flex;justify-content:space-between;align-items:center;padding:.3rem .6rem;font-weight:700;font-size:.85rem;color:var(--ink);}
.bg-tray{font-weight:700;font-size:.85rem;}
.bg-barzone{display:flex;gap:.5rem;align-items:center;}
.bg-num{font-size:.6rem;opacity:.5;}
@media (prefers-reduced-motion:reduce){.bg-die.roll{animation:none!important;}}
