/* Backgammon: træ-bordet (brætspil, se docs/DESIGNMANUAL-SPIL.md). Skrift, filt og bjælke kommer fra Solitaire.css og kabale-kort.css */
:root {
  --bord: #6D4020;
  --bjaelke: #372417;
  --knap: #6A452B;
  --ramme: #372417;      /* brættets kant og midterbar */
  --bakke: rgba(24,17,13,.38);
  --tunge-a: rgba(252,247,238,.20);   /* creme, dæmpet af træet */
  --tunge-b: rgba(198,63,40,.42);     /* rød, dæmpet af træet */
  --creme: #FCF7EE;
  --kul: #1E2421;
  --roed: #C63F28;
  --kant-creme: rgba(30,36,33,.62);
  --kant-kul: rgba(252,247,238,.42);
  --tal: rgba(252,247,238,.86);
}
html.kabale-mork {
  --bord: #402613;
  --bjaelke: #18110D;
  --knap: #4A2F1C;
  --ramme: #18110D;
  --bakke: rgba(0,0,0,.34);
  --tunge-a: rgba(252,247,238,.15);
  --tunge-b: rgba(198,63,40,.38);
}
body { background: var(--filt), var(--bord); color: var(--creme); font-variant-numeric: tabular-nums; }
button, select { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }

/* Bjælken: samme knapper som kabalerne, niveauvælgeren ligner en knap */
#kk-bar { align-items: center; }
#kk-bar select {
  font: 600 15px/1.2 Poppins, system-ui, sans-serif; min-height: 44px; padding: 0 34px 0 14px; border: 1px solid rgba(252,247,238,.22); border-radius: 8px;
  background: var(--knap) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23FCF7EE' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 12px center;
  color: var(--creme); cursor: pointer; -webkit-appearance: none; appearance: none;
}
#kk-bar select option { background: #FCF7EE; color: #1E2421; }
#kk-bar button:focus-visible, #kk-bar select:focus-visible, #styr button:focus-visible, #kk-besked button:focus-visible { outline: 3px solid var(--creme); outline-offset: 2px; }
@media (max-width: 420px) {
  #kk-bar { gap: 6px; padding: 6px; flex-wrap: nowrap; }
  #kk-bar button, #kk-bar select { flex: 1 1 auto; font-size: 14px; padding-left: 8px; padding-right: 8px; }
  #kk-bar select { padding-right: 26px; background-position: right 8px center; }
}

/* Spilleområdet: brættet øverst, info og knapper i en række under det (tommelfingeren i portræt) */
#spil { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; padding: 6px 6px 8px; box-sizing: border-box; gap: 6px; }
#boks { flex: 1 1 0; min-height: 0; overflow: hidden; display: flex; align-items: center; justify-content: center; }
#braet { display: block; background: none; touch-action: none; -webkit-user-select: none; user-select: none; overflow: visible; }
#styr { flex: none; min-height: 52px; display: flex; align-items: center; gap: 8px; width: var(--styr-b, 100%); max-width: 100%; margin: 0 auto; box-sizing: border-box; }
#info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; justify-content: center; font: 400 14px/1.35 Poppins, system-ui, sans-serif; }
#status { font-weight: 600; font-size: 14px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
#detaljer { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--tal); }
#knapper { flex: none; display: flex; gap: 6px; }
#styr button {
  font: 600 15px/1.2 Poppins, system-ui, sans-serif; min-height: 44px; min-width: 44px; padding: 0 14px; border-radius: 8px; cursor: pointer;
  border: 1px solid rgba(252,247,238,.22); background: var(--knap); color: var(--creme);
}
#styr button.primaer { background: var(--creme); color: var(--bjaelke); border-color: var(--creme); min-width: 92px; }
#styr button:disabled { opacity: .45; cursor: default; }
#styr button[hidden] { display: none; }
@media (max-width: 420px) {
  #styr { gap: 6px; }
  #styr button { padding: 0 10px; font-size: 14px; }
  #styr button.primaer { min-width: 78px; }
  /* Info på egen linje over knapperne, så teksten kan læses (mindst 14 px) */
  #styr { flex-wrap: wrap; }
  #info { flex: 1 1 100%; font-size: 14px; line-height: 1.3; }
  #knapper { flex: 1 1 100%; }
  #knapper button { flex: 1 1 0; }
}

/* Brættet (SVG). Mål sættes i script; farverne her, så mørk tilstand kun skifter variabler */
.flade { fill: var(--bord); }
.ramme { fill: var(--ramme); }
.bakke { fill: var(--bakke); }
.tunge-a { fill: var(--tunge-a); }
.tunge-b { fill: var(--tunge-b); }
.nr { fill: var(--tal); font-family: Poppins, system-ui, sans-serif; font-weight: 600; text-anchor: middle; dominant-baseline: central; pointer-events: none; }
.brik { pointer-events: none; }
.brik.c circle.yder { fill: var(--creme); stroke: var(--kant-creme); }
.brik.k circle.yder { fill: var(--kul); stroke: var(--kant-kul); }
.brik.c circle.inder { fill: none; stroke: rgba(30,36,33,.16); }
.brik.k circle.inder { fill: none; stroke: rgba(252,247,238,.14); }
.brik text { font-family: Poppins, system-ui, sans-serif; font-weight: 600; text-anchor: middle; dominant-baseline: central; }
.brik.c text { fill: var(--kul); }
.brik.k text { fill: var(--creme); }
.skive.c { fill: var(--creme); stroke: var(--kant-creme); }
.skive.k { fill: var(--kul); stroke: var(--kant-kul); }
.brik.valgt circle.yder { stroke: var(--roed); }
.terning rect { fill: var(--creme); stroke: rgba(30,36,33,.5); }
.terning circle { fill: var(--kul); }
.terning.brugt { opacity: .38; }
.terning.slaa { cursor: pointer; }
.terning.vent rect { fill: none; stroke: var(--creme); stroke-dasharray: 4 4; opacity: .7; }
.kube rect { fill: var(--creme); stroke: rgba(30,36,33,.6); }
.kube text { fill: var(--kul); font-family: Poppins, system-ui, sans-serif; font-weight: 600; text-anchor: middle; dominant-baseline: central; }
/* Lovlige mål: en stiplet rød ring, hvor brikken vil lande, og en lys kant om tungen (form og farve) */
.maal-ring { fill: rgba(252,247,238,.22); stroke: var(--roed); stroke-dasharray: 5 4; pointer-events: none; }
.maal-tunge { fill: none; stroke: var(--creme); stroke-opacity: .85; pointer-events: none; }
.maal-bakke { fill: rgba(252,247,238,.16); stroke: var(--roed); stroke-dasharray: 6 5; pointer-events: none; }
.kilde { fill: none; stroke: var(--creme); stroke-opacity: .5; stroke-dasharray: 2 4; pointer-events: none; }
.felt { fill: transparent; outline: none; }
.felt:focus-visible { stroke: var(--creme); stroke-width: 3; }
.spoegelse { pointer-events: none; }

/* Beskeden: flere linjer til reglerne, rød primærknap */
#kk-besked { width: max-content; max-width: min(calc(100vw - 32px), 460px); box-sizing: border-box; max-height: calc(100% - 24px); overflow: auto; }
#kk-besked p { margin: 0 0 6px; font-size: 15px; }
#kk-besked.regler p { text-align: left; font-size: 14px; }
#kk-besked .knapper { display: flex; justify-content: center; gap: 10px; margin-top: 10px; flex-wrap: wrap; }
#kk-besked .knapper button { margin: 0; }
#kk-besked button.primaer { background: var(--roed); color: var(--creme); }
#kk-besked .valg { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 8px 0; text-align: left; font-size: 15px; }
#kk-besked .valg div { display: flex; gap: 6px; }
#kk-besked .valg button { margin: 0; min-width: 48px; background: transparent; color: var(--creme); border: 1px solid rgba(252,247,238,.4); }
#kk-besked .valg button[aria-pressed="true"] { background: var(--creme); color: var(--bjaelke); box-shadow: inset 0 -3px 0 var(--roed); }
#kk-besked .lille { font-size: 14px; opacity: .85; }
