.rt-ui{
  --rt-gold:#9a7e10;
  --rt-bg:#070708;
  --rt-card:#0f0f12;
  --rt-card2:#0b0b0e;
  --rt-text:#ffffff;
  --rt-muted:rgba(255,255,255,.65);

  color:var(--rt-text);
  background:var(--rt-bg);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  min-height:100vh;
  height:100vh;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:22px 0;
}

.rt-ui *{ box-sizing:border-box; }

/* === Core card system (Regions Turnering dark/gold) === */
.rt-ui .rt-card{
  border-radius:18px;
  border:1px solid rgba(154,126,16,.35);
  box-shadow:0 12px 35px rgba(0,0,0,.45);
  background-color:var(--rt-card);
  background-image:
    radial-gradient(120% 120% at 50% 20%, rgba(154,126,16,.14), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0));
}

.rt-ui .rt-tabletspil-inner{
  max-width:1100px;
  margin:0 auto;
  padding:0 16px;
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* === Header === */
.rt-ui .rt-tabletspil-header{
  text-align:center;
  padding:18px 18px 16px 18px;
}

.rt-ui .rt-tabletspil-teams{
  color:var(--rt-gold);
  font-weight:900;
  letter-spacing:.45px;
  text-transform:uppercase;
  font-size:34px;
  line-height:1.2;
}

.rt-ui .rt-tabletspil-score{
  margin-top:8px;
  font-weight:900;
  font-size:44px;
  line-height:1.15;
}

.rt-ui .rt-tabletspil-pool-standing{
  margin-top:10px;
}

.rt-ui .rt-pool-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(154,126,16,.45);
  background:rgba(154,126,16,.06);
  color:var(--rt-gold);
  font-weight:900;
  font-size:12px;
  letter-spacing:.25px;
  text-transform:uppercase;
}

/* === Debug (field-test) === */
.rt-ui .rt-tabletspil-debug{
  max-width:1100px;
  margin:0 auto 14px auto;
  padding:12px 14px;
  border-radius:14px;
  border:1px dashed rgba(154,126,16,.35);
  background:linear-gradient(180deg, rgba(154,126,16,.12), rgba(0,0,0,0));
  color:var(--rt-text);
}

.rt-ui .rt-tabletspil-debug-line{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  align-items:center;
  font-size:13px;
  line-height:1.35;
}

.rt-ui .rt-tabletspil-debug-line strong{ color:var(--rt-gold); }

.rt-ui .rt-tabletspil-debug-tip{
  margin-top:8px;
  color:var(--rt-muted);
  font-size:12px;
}

.rt-ui .rt-tabletspil-debug-tip code{
  padding:2px 6px;
  border-radius:8px;
  border:1px solid rgba(154,126,16,.35);
  background:rgba(154,126,16,.06);
  color:var(--rt-gold);
}

/* === Errors === */
.rt-ui .rt-tabletspil-errors{
  padding:14px 16px;
  background-color:var(--rt-card2);
}

.rt-ui .rt-tabletspil-errors p{
  margin:0;
  color:rgba(255,255,255,.85);
}

.rt-ui .rt-tabletspil-errors p + p{ margin-top:8px; }

/* === Table (inside card) === */
.rt-ui .rt-tabletspil-table-wrap{
  padding:12px;
}

.rt-ui .rt-tabletspil-table-frame{
  border-radius:12px;
  overflow:auto;
  border:1px solid rgba(154,126,16,.22);
  background:rgba(0,0,0,0.15);
  overscroll-behavior:contain;
}

.rt-ui .rt-tabletspil-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  /* +8px på alt tekstindhold i kampprogram-tabellen (knapper har egen font-size) */
  font-size:calc(1em + 8px);
}

.rt-ui .rt-tabletspil-table thead th{
  background:rgba(154,126,16,.10);
  color:var(--rt-gold);
  font-size:17px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.35px;
  border-bottom:1px solid rgba(154,126,16,.16);
}

.rt-ui .rt-tabletspil-table th,
.rt-ui .rt-tabletspil-table td{
  padding:12px 10px;
  text-align:center;
  color:var(--rt-text);
  border-bottom:1px solid rgba(154,126,16,.16);
}

.rt-ui .rt-tabletspil-table tbody tr:hover{
  background:rgba(154,126,16,.06);
}

.rt-ui .rt-tabletspil-col-home,
.rt-ui .rt-tabletspil-col-away{
  text-align:left;
  vertical-align:top;
}

.rt-ui .rt-tabletspil-player-name{
  font-size:21px;
  line-height:1.35;
  text-align:left;
  font-weight:800;
}

.rt-ui .rt-tabletspil-scorer{
  margin-top:6px;
  font-size:20px;
  color:var(--rt-muted);
}

/* Knapper i kampprogram-tabellen: ændr kun vægt (ikke størrelse) */
.rt-ui .rt-tabletspil-table .rt-tabletspil-btn{
  font-weight:600;
}

.rt-ui .rt-tabletspil-scorer-label{
  color:var(--rt-gold);
  font-weight:800;
  margin-right:6px;
}

/* Column sizing to avoid horizontal scroll where possible */
.rt-ui .rt-tabletspil-col-kamp{ width:62px; }
.rt-ui .rt-tabletspil-col-bane,
.rt-ui .rt-tabletspil-col-lv,
.rt-ui .rt-tabletspil-col-lt{ width:72px; }
.rt-ui .rt-tabletspil-col-spil{ width:92px; }
.rt-ui .rt-tabletspil-col-tavle{ width:102px; }

/* Inputs (guld ramme + sort fyld) */
.rt-ui .rt-tabletspil-score-input{
  width:72px;
  max-width:100%;
  padding:10px 12px;
  border-radius:10px;
  text-align:center;
  background:#000000 !important;
  color:#ffffff !important;
  border:1px solid rgba(154,126,16,.5) !important;
  outline:none;
}

.rt-ui .rt-tabletspil-score-input::placeholder{
  color:rgba(255,255,255,.5);
}

.rt-ui .rt-tabletspil-score-input:focus{
  border-color:rgba(154,126,16,.55) !important;
  box-shadow:0 0 0 3px rgba(154,126,16,.12);
}

.rt-ui .rt-tabletspil-score-input-locked{
  opacity:0.85;
}

/* === Buttons === */
.rt-ui .rt-tabletspil-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid rgba(154,126,16,.55);
  background:var(--rt-gold);
  color:#000;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(0,0,0,.35);
  transition:filter .15s ease, box-shadow .15s ease, transform .15s ease, background-color .15s ease, color .15s ease;
}

.rt-ui .rt-tabletspil-btn:hover{
  filter:brightness(.92);
  box-shadow:0 14px 34px rgba(0,0,0,.48);
  transform:translateY(-1px);
}

.rt-ui .rt-tabletspil-btn:active{
  transform:translateY(0);
  filter:brightness(.88);
}

/* Secondary/outline (used by confirm-cancel) */
.rt-ui .rt-tabletspil-confirm-cancel{
  background:transparent;
  color:var(--rt-text);
}

.rt-ui .rt-tabletspil-confirm-cancel:hover{
  background:rgba(154,126,16,.06);
  filter:none;
  transform:translateY(-1px);
}

.rt-ui .rt-tabletspil-btn-spil{ min-width:64px; }
.rt-ui .rt-tabletspil-btn-tavle{ min-width:86px; }

/* Footer */
.rt-ui .rt-tabletspil-footer{
  text-align:center;
  padding:16px;
}

.rt-ui .rt-tabletspil-btn-approve{
  padding:12px 18px;
  border-radius:12px;
  font-size:16px;
}

.rt-ui .rt-tabletspil-footer-msg{
  margin-top:10px;
  color:var(--rt-muted);
  font-size:14px;
}

.rt-ui .rt-tabletspil-build{
  margin-top:10px;
  font-size:12px;
  color:rgba(255,255,255,.55);
}

/* === Modals (rendered inside wrapper) === */
.rt-ui.rt-tabletspil-modal-open,
.rt-ui.rt-tabletspil-history-open{
  overflow:hidden;
}

.rt-ui .rt-tabletspil-modal-overlay{
  position:fixed;
  inset:0;
  z-index:999999;
  background:rgba(0,0,0,0.85);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
}

.rt-ui .rt-tabletspil-hidden{ display:none !important; }

.rt-ui .rt-tabletspil-modal{
  position:relative;
  width:min(560px, 100%);
  max-height:calc(100vh - 24px);
  overflow:auto;
  border-radius:18px;
  border:1px solid rgba(154,126,16,.35);
  box-shadow:0 22px 70px rgba(0,0,0,.55);
  background-color:var(--rt-card);
  background-image:
    radial-gradient(120% 120% at 50% 20%, rgba(154,126,16,.14), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0));
}

.rt-ui .rt-tabletspil-modal-body{ padding:18px; }

.rt-ui .rt-tabletspil-modal-close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(154,126,16,.55);
  background:rgba(0,0,0,0.55);
  color:var(--rt-text);
  font-size:28px;
  line-height:40px;
  cursor:pointer;
}

.rt-ui .rt-tabletspil-modal-close:hover{
  background:rgba(154,126,16,.06);
}

/* Fullscreen layout */
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen{
  align-items:stretch;
  justify-content:stretch;
  padding:0;
}

.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen .rt-tabletspil-modal{
  width:100%;
  height:100%;
  max-height:none;
  max-width:none;
  border-radius:0;
  border:0;
}

/* Confirm step */
.rt-ui .rt-tabletspil-confirm{ text-align:center; }

.rt-ui .rt-tabletspil-confirm-text{
  font-size:28px;
  font-weight:900;
  margin:10px 0 18px 0;
  color:var(--rt-gold);
  text-transform:uppercase;
  letter-spacing:.4px;
}

.rt-ui .rt-tabletspil-confirm-actions{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
}

.rt-ui .rt-tabletspil-confirm-actions .rt-tabletspil-btn{
  padding:12px 22px;
  font-size:16px;
}

/* === Historik modal (read-only stats) === */
.rt-ui #rt-tabletspil-history-modal.rt-dart-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.70);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:999999;
  padding:12px;
}

.rt-ui #rt-tabletspil-history-modal.rt-dart-hidden{ display:none; }

.rt-ui #rt-tabletspil-history-modal .rt-dart-modal-content{
  width:min(560px, 94vw);
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(154,126,16,.35);
  box-shadow:0 22px 70px rgba(0,0,0,.55);
  color:var(--rt-text);
  background-color:var(--rt-card);
  background-image:
    radial-gradient(120% 120% at 50% 20%, rgba(154,126,16,.14), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0));
  text-align:center;
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin-top:12px;
  overflow:hidden;
  border-radius:12px;
  border:1px solid rgba(154,126,16,.22);
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-table th,
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-table td{
  padding:10px 8px;
  border-bottom:1px solid rgba(154,126,16,.16);
  font-size:13px;
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-table th{
  background:rgba(154,126,16,.10);
  color:var(--rt-gold);
  text-transform:uppercase;
  font-size:12px;
  font-weight:800;
  letter-spacing:.25px;
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-modal-buttons{
  margin-top:18px;
  display:flex;
  justify-content:center;
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:min(320px, 100%);
  height:56px;
  padding:12px 32px;
  font-size:18px;
  font-weight:900;
  border-radius:14px;
  cursor:pointer;
  border:1px solid rgba(154,126,16,.55);
  background:var(--rt-gold);
  color:#000;
  box-shadow:0 10px 25px rgba(0,0,0,.35);
  transition:filter .15s ease, box-shadow .15s ease, transform .15s ease;
}

.rt-ui #rt-tabletspil-history-modal .rt-dart-btn:hover{
  filter:brightness(.92);
  box-shadow:0 14px 34px rgba(0,0,0,.48);
  transform:translateY(-1px);
}

/* === Responsive === */
@media (max-width: 820px) {
  .rt-ui{ padding:18px 0; }
  .rt-ui .rt-tabletspil-teams{ font-size:28px; }
  .rt-ui .rt-tabletspil-score{ font-size:38px; }
  .rt-ui .rt-tabletspil-table th,
  .rt-ui .rt-tabletspil-table td{ padding:10px 8px; }
  .rt-ui .rt-tabletspil-score-input{ padding:9px 10px; width:70px; }
}

/* === Responsive: store mobiler + portrait tablets (kun disse) === */
@media (max-width: 1024px) and (orientation: portrait) {
  /* Fjern BANE-kolonne for bedre plads */
  .rt-ui .rt-tabletspil-col-bane{ display:none; }

  /* Knapper: roligere udtryk */
  .rt-ui .rt-tabletspil-btn{
    font-weight:400;
    padding:8px 12px;
  }

  /* Mere plads i tabellen */
  .rt-ui .rt-tabletspil-table th,
  .rt-ui .rt-tabletspil-table td{
    padding:9px 6px;
  }

  .rt-ui .rt-tabletspil-score-input{
    width:62px;
    padding:8px 8px;
	    font-size:19px;
  }

  .rt-ui .rt-tabletspil-btn-spil{ min-width:60px; }
  .rt-ui .rt-tabletspil-btn-tavle{ min-width:76px; }
}

/* === Responsive: små mobiler (kun ≤380px) === */
@media (max-width: 380px) {
  /* Vis kun: kampnr + navne + LV/LT + Tavle */
  /* NOTE: Vi skjuler både SPIL og BANE. Dette skal også vinde over de generelle
     small-mobile regler der sætter tbody td til display:block (Safari). */
  .rt-ui .rt-tabletspil-col-spil,
  .rt-ui .rt-tabletspil-col-bane{ display:none; }

  /* NOTE: På nogle små mobiler (især Safari) kan grid på <tr> opføre sig ustabilt.
     Derfor bruger vi en simpel flex-wrap "card" pr. række, så kolonnerne aldrig flyder sammen. */
  .rt-ui .rt-tabletspil-table-frame{
    overflow:visible;
    border:none;
    background:transparent;
  }

  .rt-ui .rt-tabletspil-table{ display:block; }
  .rt-ui .rt-tabletspil-table thead{ display:none; }

  .rt-ui .rt-tabletspil-table tbody{
    display:flex;
    flex-direction:column;
    gap:12px;
  }

  .rt-ui .rt-tabletspil-table tbody tr{
    display:flex;
    flex-wrap:wrap;
    gap:8px 10px;
    align-items:flex-start;
    padding:12px 10px;
    border:1px solid rgba(154,126,16,.22);
    border-radius:16px;
    background:rgba(0,0,0,0.20);
  }

  .rt-ui .rt-tabletspil-table tbody td{
    border:none !important;
    padding:0 !important;
    background:transparent !important;
    display:block;
    min-width:0;
  }

  /* Force-hide (skal komme EFTER tbody td display:block) */
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-spil,
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-bane,
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-spil *{
    display:none !important;
  }

  /* Kampnr: ultra-smal kolonne, ikke-fed */
  .rt-ui .rt-tabletspil-col-kamp{
    order:1;
    flex:0 0 22px;
    text-align:center;
	    font-size:24px;
    font-weight:400;
    line-height:1.1;
    padding-top:2px;
  }

  /* Hjemme (inkl. Tavle: navn) */
  .rt-ui .rt-tabletspil-col-home{
    order:2;
    flex:1 1 auto;
    min-width:130px;
  }

  .rt-ui .rt-tabletspil-player-name{
	    font-size:23px;
    line-height:1.15;
  }

  /* Tavleføreren (Tavle: Navn) */
  .rt-ui .rt-tabletspil-scorer{
    display:block;
    margin-top:5px;
	    font-size:19px;
    color:rgba(255,255,255,.70);
  }

  /* Resultater + Tavle-knap i højre side på første linje */
  .rt-ui .rt-tabletspil-col-lv{
    order:3;
    flex:0 0 44px;
    margin-left:auto;
    align-self:center;
  }
  .rt-ui .rt-tabletspil-col-lt{
    order:4;
    flex:0 0 44px;
    align-self:center;
  }
  .rt-ui .rt-tabletspil-col-tavle{
    /* Tavle-knappen skal ligge under LV/LT (2. linje) */
    order:7;
    flex:0 0 98px; /* 44 + 44 + gap ≈ samme bredde som LV/LT */
    margin-left:auto;
    align-self:flex-start;
    text-align:right;
  }

  /* Ude: under hjemme og indrykket så det flugter med navne */
  .rt-ui .rt-tabletspil-col-away{
    order:6;
    /*
      Ude-navne skal ligge pænt til venstre på 2. linje.
      På nogle små mobiler kan flex ellers forsøge at placere dem i 1. linje
      (efter LV/LT), hvilket giver højre-stillet/afklippet tekst.
    */
    flex:1 1 calc(100% - 120px); /* tving wrap til 2. linje sammen med Tavle */
    min-width:0;
    margin-left:0;
    /* OBS: Vi kan ikke stole på padding på td her, fordi vi sætter tbody td{padding:0 !important;}
       og den regel kan vinde på specifitet i nogle browsere. Indryk derfor via en mere specifik selector
       (se længere nede) der altid vinder. */
    padding-left:0 !important;
    text-align:left !important;
  }

  /* Indryk UDE-navne så de flugter med HJEMME-navnet (efter kampnr-kolonnen).
     Vi bruger margin på indholdet (ikke padding på td), fordi td-padding nulstilles globalt i small-mobile layoutet. */
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-away{
    padding-left:0 !important;
  }
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-away .rt-tabletspil-players{
    margin-left:32px !important; /* 22px kampnr + gap */
  }

  .rt-ui .rt-tabletspil-col-away .rt-tabletspil-player-name{
    text-align:left !important;
    overflow-wrap:anywhere;
  }

  .rt-ui .rt-tabletspil-score-input{
    width:44px;
    padding:8px 8px;
	    font-size:19px;
  }

  /* Tavle-knap: 50% mindre side-padding + 2px mindre top/bund */
  .rt-ui .rt-tabletspil-btn-tavle{
    padding:8px 7px;
    min-width:68px;
    font-weight:400;
    width:100%;
  }
}

/* === Tema: sørg for at modal-knapper matcher plugin-theme (ingen røde/pink farver) === */
.rt-ui #rt-tabletspil-modal-overlay .rt-tabletspil-modal-close{
  border-color:rgba(154,126,16,.55) !important;
  background:rgba(0,0,0,0.55) !important;
  color:var(--rt-text) !important;
  /* Flyt lukke-X til midten, så det ikke kolliderer med andre lukke-ikoner */
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%);
}

.rt-ui #rt-tabletspil-modal-overlay button.rt-tabletspil-btn,
.rt-ui #rt-tabletspil-modal-overlay button.rt-tabletspil-btn-approve,
.rt-ui #rt-tabletspil-modal-overlay .rt-tabletspil-confirm-actions .rt-tabletspil-btn{
  border-color:rgba(154,126,16,.55) !important;
  background:var(--rt-gold) !important;
  color:#000 !important;
}

.rt-ui #rt-tabletspil-modal-overlay button.rt-tabletspil-btn:focus,
.rt-ui #rt-tabletspil-modal-overlay button.rt-tabletspil-btn-approve:focus{
  outline:2px solid rgba(154,126,16,.45) !important;
  outline-offset:2px;
}

/* === Tema-fix: Tavle/Dart modaler fra andre plugins (undgå røde/pink knapper) === */
.rt-ui .rt-tabletspil-wrap .rt-dart-modal button,
.rt-ui .rt-tabletspil-wrap .rt-dart-modal .rt-dart-btn{
  border-color:rgba(154,126,16,.55) !important;
}

.rt-ui .rt-tabletspil-wrap .rt-dart-modal .rt-dart-btn,
.rt-ui .rt-tabletspil-wrap .rt-dart-modal .rt-dart-btn-gold,
.rt-ui .rt-tabletspil-wrap .rt-dart-modal button.rt-dart-btn,
.rt-ui .rt-tabletspil-wrap .rt-dart-modal button.rt-dart-btn-gold{
  background:var(--rt-gold) !important;
  color:#000 !important;
  font-weight:400 !important;
}

.rt-ui .rt-tabletspil-wrap .rt-dart-modal .rt-dart-modal-close,
.rt-ui .rt-tabletspil-wrap .rt-dart-modal button.rt-dart-modal-close{
  border-color:rgba(154,126,16,.55) !important;
  background:rgba(0,0,0,0.55) !important;
  color:var(--rt-text) !important;
}

/* === Visuelt tweak: Tavleføreren-linje ===
   - "Tavle:" skal være normal (ikke fed)
   - Tavleførerens navn skal være kursiv
   - Hold "Tavle: Navn" på én linje (ingen linjeskift mellem label og navn)
*/
.rt-ui .rt-tabletspil-scorer{
  text-align:left;
  white-space:nowrap;
}

.rt-ui .rt-tabletspil-scorer-label{
  font-weight:400;
  font-style:normal;
}

.rt-ui .rt-tabletspil-scorer-name{
  font-style:italic;
  font-weight:400;
}

/* Mikro-step UX1: sikker manuel resultatgemning */
.rt-ui .rt-tabletspil-row-incomplete-result{
  outline:2px solid rgba(190,45,45,.55);
  outline-offset:-2px;
  background:rgba(190,45,45,.08);
}

.rt-ui .rt-tabletspil-row-warning{
  margin-top:8px;
  padding:7px 9px;
  border-radius:9px;
  border:1px solid rgba(190,45,45,.45);
  background:rgba(190,45,45,.12);
  color:#fff;
  font-size:12px;
  line-height:1.3;
  font-weight:700;
}

.rt-ui .rt-tabletspil-footer-msg{
  color:rgba(255,255,255,.86);
  font-weight:700;
}


/* Mikro-step UX2: Mobilvenlig kampplan + skjul tomme valideringsfelter */
.rt-ui .rt-tabletspil-row-warning:empty{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.rt-ui .rt-tabletspil-row-decided .rt-tabletspil-row-warning{
  display:none !important;
}

/* Mobil-kortvisning: på telefoner/tablets i smal bredde skal kampplanen ikke presses som tabel. */
@media (max-width: 760px) {
  .rt-ui{
    padding:10px 0 18px 0;
    min-height:100vh;
  }

  .rt-ui .rt-tabletspil-inner{
    max-width:100%;
    padding:0 8px;
    gap:10px;
  }

  .rt-ui .rt-tabletspil-header{
    padding:14px 10px 12px 10px;
    border-radius:14px;
  }

  .rt-ui .rt-tabletspil-teams{
    font-size:clamp(22px, 7vw, 30px);
    line-height:1.12;
    letter-spacing:.2px;
  }

  .rt-ui .rt-tabletspil-score{
    font-size:clamp(36px, 11vw, 46px);
    line-height:1.05;
    margin-top:6px;
  }

  .rt-ui .rt-tabletspil-table-wrap{
    padding:8px;
    border-radius:14px;
  }

  .rt-ui .rt-tabletspil-table-frame{
    overflow:visible;
    border:0;
    background:transparent;
  }

  .rt-ui .rt-tabletspil-table,
  .rt-ui .rt-tabletspil-table tbody{
    display:block;
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    table-layout:auto;
    font-size:16px;
  }

  .rt-ui .rt-tabletspil-table thead{
    display:none;
  }

  .rt-ui .rt-tabletspil-table tbody tr{
    display:grid;
    grid-template-columns:42px minmax(0, 1fr) 48px 48px;
    grid-template-areas:
      "kamp home lv lt"
      "bane away spil tavle";
    gap:7px 8px;
    align-items:center;
    width:100%;
    margin:0 0 10px 0;
    padding:11px 10px;
    border:1px solid rgba(154,126,16,.28);
    border-radius:14px;
    background:rgba(0,0,0,.22);
    box-shadow:0 8px 22px rgba(0,0,0,.28);
  }

  .rt-ui .rt-tabletspil-table tbody tr:last-child{
    margin-bottom:0;
  }

  .rt-ui .rt-tabletspil-table tbody td{
    display:block;
    width:auto !important;
    min-width:0;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:var(--rt-text);
    text-align:left;
    vertical-align:middle;
  }

  .rt-ui .rt-tabletspil-col-kamp{
    grid-area:kamp;
    align-self:start;
    justify-self:center;
    width:34px !important;
    height:34px;
    border-radius:999px !important;
    border:1px solid rgba(154,126,16,.35) !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
    font-size:15px;
    font-weight:800;
    color:#fff;
    background:rgba(154,126,16,.10) !important;
  }

  .rt-ui .rt-tabletspil-col-bane{
    grid-area:bane;
    align-self:end;
    justify-self:center;
    display:flex !important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:34px !important;
    min-height:34px;
    font-size:16px;
    line-height:1.1;
    color:#fff;
  }

  .rt-ui .rt-tabletspil-col-bane::before{
    content:"Bane";
    display:block;
    margin-bottom:2px;
    font-size:9px;
    line-height:1;
    color:var(--rt-gold);
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.2px;
  }

  .rt-ui .rt-tabletspil-col-home{
    grid-area:home;
    align-self:center;
  }

  .rt-ui .rt-tabletspil-col-away{
    grid-area:away;
    align-self:center;
  }

  .rt-ui .rt-tabletspil-col-lv{
    grid-area:lv;
    align-self:center;
    justify-self:center;
    text-align:center;
  }

  .rt-ui .rt-tabletspil-col-lt{
    grid-area:lt;
    align-self:center;
    justify-self:center;
    text-align:center;
  }

  .rt-ui .rt-tabletspil-col-lv::before,
  .rt-ui .rt-tabletspil-col-lt::before{
    display:block;
    margin-bottom:3px;
    font-size:9px;
    line-height:1;
    color:var(--rt-gold);
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.2px;
  }

  .rt-ui .rt-tabletspil-col-lv::before{ content:"LV"; }
  .rt-ui .rt-tabletspil-col-lt::before{ content:"LT"; }

  .rt-ui .rt-tabletspil-col-spil{
    grid-area:spil;
    align-self:center;
    justify-self:center;
    text-align:center;
  }

  .rt-ui .rt-tabletspil-col-tavle{
    grid-area:tavle;
    align-self:center;
    justify-self:center;
    text-align:center;
  }

  .rt-ui .rt-tabletspil-player-name{
    font-size:18px;
    line-height:1.15;
    font-weight:850;
    text-align:left;
    overflow-wrap:anywhere;
  }

  .rt-ui .rt-tabletspil-players .rt-tabletspil-player-name + .rt-tabletspil-player-name{
    margin-top:2px;
  }

  .rt-ui .rt-tabletspil-scorer{
    margin-top:4px;
    font-size:14px;
    line-height:1.15;
    white-space:normal;
    color:rgba(255,255,255,.68);
  }

  .rt-ui .rt-tabletspil-score-input{
    width:44px;
    height:42px;
    padding:5px 4px;
    border-radius:10px;
    font-size:18px;
    line-height:1;
  }

  .rt-ui .rt-tabletspil-btn{
    min-width:0;
    width:100%;
    min-height:40px;
    padding:8px 8px;
    border-radius:11px;
    font-size:13px;
    font-weight:700;
    box-shadow:none;
  }

  .rt-ui .rt-tabletspil-btn-spil,
  .rt-ui .rt-tabletspil-btn-tavle{
    min-width:44px;
    width:44px;
  }

  .rt-ui .rt-tabletspil-row-decided{
    background:rgba(154,126,16,.08) !important;
    opacity:.96;
  }

  .rt-ui .rt-tabletspil-row-incomplete-result{
    outline:1px solid rgba(190,45,45,.65);
    outline-offset:0;
  }

  .rt-ui .rt-tabletspil-row-warning{
    grid-column:1 / -1;
    margin-top:6px;
    font-size:11px;
    font-weight:600;
  }

  .rt-ui .rt-tabletspil-footer{
    border-radius:14px;
    padding:12px 10px;
  }

  .rt-ui .rt-tabletspil-build{
    font-size:11px;
  }
}

/* UX2 skal vinde over den gamle ultra-small-mobile flex-regel. */
@media (max-width: 380px) {
  .rt-ui .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:36px minmax(0, 1fr) 42px 42px !important;
    grid-template-areas:
      "kamp home lv lt"
      "bane away spil tavle" !important;
    gap:6px 7px !important;
  }

  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-spil,
  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-bane{
    display:block !important;
  }

  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-spil *{
    display:inline-flex !important;
  }

  .rt-ui .rt-tabletspil-table tbody td.rt-tabletspil-col-away .rt-tabletspil-players{
    margin-left:0 !important;
  }

  .rt-ui .rt-tabletspil-col-kamp,
  .rt-ui .rt-tabletspil-col-bane{
    width:30px !important;
    height:30px;
    font-size:13px;
  }

  .rt-ui .rt-tabletspil-player-name{
    font-size:16px;
  }

  .rt-ui .rt-tabletspil-scorer{
    font-size:12px;
  }

  .rt-ui .rt-tabletspil-score-input{
    width:40px;
    height:38px;
    font-size:16px;
  }

  .rt-ui .rt-tabletspil-btn-spil,
  .rt-ui .rt-tabletspil-btn-tavle{
    width:40px;
    min-width:40px;
    min-height:36px;
    padding:6px 5px;
    font-size:12px;
  }
}


/* Mikro-step UX2B: Mobil kampkort polish
   Ægte mobilkort: resultater og handlinger flyttes væk fra spillernavnene.
   Desktop/tablet layout bevares uændret. */
@media (max-width: 760px) {
  .rt-ui{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    padding:8px 0 18px 0 !important;
  }

  .rt-ui .rt-tabletspil-wrap,
  .rt-ui .rt-tabletspil-inner,
  .rt-ui .rt-tabletspil-table-wrap,
  .rt-ui .rt-tabletspil-table-frame,
  .rt-ui .rt-tabletspil-table,
  .rt-ui .rt-tabletspil-table tbody{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }

  .rt-ui .rt-tabletspil-inner{
    padding-left:6px !important;
    padding-right:6px !important;
  }

  .rt-ui .rt-tabletspil-header{
    padding:13px 8px 12px !important;
    margin:0 !important;
  }

  .rt-ui .rt-tabletspil-teams{
    font-size:clamp(21px, 7.4vw, 28px) !important;
    line-height:1.08 !important;
    letter-spacing:.12px !important;
  }

  .rt-ui .rt-tabletspil-score{
    font-size:clamp(38px, 13vw, 52px) !important;
    line-height:1 !important;
    margin-top:5px !important;
  }

  .rt-ui .rt-tabletspil-table-wrap{
    padding:6px !important;
    border-radius:14px !important;
  }

  .rt-ui .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:
      "meta meta"
      "home home"
      "away away"
      "lv lt"
      "spil tavle" !important;
    gap:8px 10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 10px 0 !important;
    padding:12px 12px !important;
    border-radius:15px !important;
    align-items:stretch !important;
  }

  .rt-ui .rt-tabletspil-table tbody td{
    min-width:0 !important;
    max-width:100% !important;
  }

  .rt-ui .rt-tabletspil-col-kamp{
    grid-area:meta !important;
    display:flex !important;
    justify-self:start !important;
    align-self:center !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    font-size:13px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui .rt-tabletspil-col-kamp::before{
    content:"Kamp";
    color:var(--rt-gold);
    text-transform:uppercase;
    font-size:10px;
    letter-spacing:.2px;
    font-weight:900;
  }

  .rt-ui .rt-tabletspil-col-bane{
    grid-area:meta !important;
    justify-self:end !important;
    align-self:center !important;
    display:flex !important;
    flex-direction:row !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    border:1px solid rgba(154,126,16,.35) !important;
    background:rgba(154,126,16,.08) !important;
    font-size:13px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui .rt-tabletspil-col-bane::before{
    content:"Bane" !important;
    display:inline !important;
    margin:0 !important;
    color:var(--rt-gold);
    font-size:10px;
    line-height:1.1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.2px;
  }

  .rt-ui .rt-tabletspil-col-home{
    grid-area:home !important;
    padding-top:2px !important;
  }
  .rt-ui .rt-tabletspil-col-away{
    grid-area:away !important;
    padding-top:3px !important;
    border-top:1px solid rgba(154,126,16,.16) !important;
  }

  .rt-ui .rt-tabletspil-col-home::before,
  .rt-ui .rt-tabletspil-col-away::before{
    display:block;
    color:var(--rt-gold);
    font-size:10px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.25px;
    margin-bottom:4px;
  }
  .rt-ui .rt-tabletspil-col-home::before{ content:"Hjemme"; }
  .rt-ui .rt-tabletspil-col-away::before{ content:"Ude"; }

  .rt-ui .rt-tabletspil-player-name{
    font-size:17px !important;
    line-height:1.18 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui .rt-tabletspil-scorer{
    margin-top:5px !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:normal !important;
  }

  .rt-ui .rt-tabletspil-col-lv,
  .rt-ui .rt-tabletspil-col-lt{
    align-self:center !important;
    justify-self:stretch !important;
    text-align:center !important;
    padding:8px 8px !important;
    border-radius:12px !important;
    border:1px solid rgba(154,126,16,.22) !important;
    background:rgba(0,0,0,.20) !important;
  }
  .rt-ui .rt-tabletspil-col-lv{ grid-area:lv !important; }
  .rt-ui .rt-tabletspil-col-lt{ grid-area:lt !important; }

  .rt-ui .rt-tabletspil-col-lv::before,
  .rt-ui .rt-tabletspil-col-lt::before{
    display:block !important;
    margin:0 0 5px 0 !important;
    font-size:10px !important;
    line-height:1 !important;
    color:var(--rt-gold) !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.25px !important;
  }

  .rt-ui .rt-tabletspil-score-input{
    width:52px !important;
    height:42px !important;
    max-width:52px !important;
    padding:4px !important;
    margin:0 auto !important;
    display:block !important;
    border-radius:10px !important;
    font-size:18px !important;
    line-height:1 !important;
  }

  .rt-ui .rt-tabletspil-col-spil{
    grid-area:spil !important;
    align-self:stretch !important;
    justify-self:stretch !important;
  }
  .rt-ui .rt-tabletspil-col-tavle{
    grid-area:tavle !important;
    align-self:stretch !important;
    justify-self:stretch !important;
  }

  .rt-ui .rt-tabletspil-btn-spil,
  .rt-ui .rt-tabletspil-btn-tavle{
    width:100% !important;
    min-width:0 !important;
    min-height:38px !important;
    padding:8px 8px !important;
    font-size:13px !important;
  }

  .rt-ui .rt-tabletspil-row-warning{
    grid-column:1 / -1 !important;
    margin-top:2px !important;
  }
}

@media (max-width: 380px) {
  .rt-ui .rt-tabletspil-inner{ padding-left:4px !important; padding-right:4px !important; }
  .rt-ui .rt-tabletspil-table-wrap{ padding:5px !important; }
  .rt-ui .rt-tabletspil-table tbody tr{
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:
      "meta meta"
      "home home"
      "away away"
      "lv lt"
      "spil tavle" !important;
    padding:11px 10px !important;
    gap:7px 8px !important;
  }
  .rt-ui .rt-tabletspil-player-name{ font-size:16px !important; }
  .rt-ui .rt-tabletspil-score-input{ width:48px !important; max-width:48px !important; height:40px !important; font-size:17px !important; }
}


/* Mikro-step UX2C: Mobil full-width / breakpoint fix
   Retter Elementor/theme-wrapper margin på mobil og starter kortlayout tidligere i smalle portrait-visninger.
   Desktop/tablet-landscape bevares uændret. */
@media (max-width: 900px) {
  html,
  body{
    overflow-x:hidden !important;
  }

  /* Root-elementet har begge klasser: .rt-ui.rt-tabletspil-wrap.
     Tidligere regler ramte kun en indre .rt-tabletspil-wrap og kunne derfor ikke bryde ud af theme/Elementor margins. */
  .rt-ui.rt-tabletspil-wrap{
    width:100vw !important;
    max-width:100vw !important;
    min-width:0 !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }
}

@media (max-width: 900px) and (orientation: portrait) {
  .rt-ui.rt-tabletspil-wrap{
    padding-top:8px !important;
    padding-bottom:18px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    gap:10px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-header{
    padding:13px 8px 12px !important;
    margin:0 !important;
    border-radius:15px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-teams{
    font-size:clamp(20px, 7vw, 28px) !important;
    line-height:1.08 !important;
    letter-spacing:.12px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score{
    font-size:clamp(38px, 12vw, 52px) !important;
    line-height:1 !important;
    margin-top:5px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:6px !important;
    border-radius:14px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    display:block !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    table-layout:auto !important;
    font-size:16px !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead{
    display:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:
      "meta meta"
      "home home"
      "away away"
      "lv lt"
      "spil tavle" !important;
    gap:8px 10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 10px 0 !important;
    padding:12px 12px !important;
    border:1px solid rgba(154,126,16,.28) !important;
    border-radius:15px !important;
    background:rgba(0,0,0,.22) !important;
    box-shadow:0 8px 22px rgba(0,0,0,.28) !important;
    align-items:stretch !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody td{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    text-align:left !important;
    vertical-align:middle !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp{
    grid-area:meta !important;
    display:flex !important;
    justify-self:start !important;
    align-self:center !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    border:1px solid rgba(154,126,16,.35) !important;
    background:rgba(154,126,16,.08) !important;
    font-size:13px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before{
    content:"Kamp" !important;
    color:var(--rt-gold) !important;
    text-transform:uppercase !important;
    font-size:10px !important;
    letter-spacing:.2px !important;
    font-weight:900 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    grid-area:meta !important;
    justify-self:end !important;
    align-self:center !important;
    display:flex !important;
    flex-direction:row !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    border:1px solid rgba(154,126,16,.35) !important;
    background:rgba(154,126,16,.08) !important;
    font-size:13px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    content:"Bane" !important;
    display:inline !important;
    margin:0 !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.2px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home{ grid-area:home !important; padding-top:2px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{ grid-area:away !important; padding-top:3px !important; border-top:1px solid rgba(154,126,16,.16) !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    display:block !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.25px !important;
    margin-bottom:4px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before{ content:"Hjemme" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{ content:"Ude" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:17px !important;
    line-height:1.18 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    margin-top:5px !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:normal !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{
    align-self:center !important;
    justify-self:stretch !important;
    text-align:center !important;
    padding:8px 8px !important;
    border-radius:12px !important;
    border:1px solid rgba(154,126,16,.22) !important;
    background:rgba(0,0,0,.20) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv{ grid-area:lv !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{ grid-area:lt !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    display:block !important;
    margin:0 0 5px 0 !important;
    font-size:10px !important;
    line-height:1 !important;
    color:var(--rt-gold) !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.25px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before{ content:"LV" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{ content:"LT" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:52px !important;
    height:42px !important;
    max-width:52px !important;
    padding:4px !important;
    margin:0 auto !important;
    display:block !important;
    border-radius:10px !important;
    font-size:18px !important;
    line-height:1 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil{ grid-area:spil !important; align-self:stretch !important; justify-self:stretch !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{ grid-area:tavle !important; align-self:stretch !important; justify-self:stretch !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    width:100% !important;
    min-width:0 !important;
    min-height:38px !important;
    padding:8px 8px !important;
    font-size:13px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    grid-column:1 / -1 !important;
    margin-top:2px !important;
  }
}

@media (max-width: 420px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    padding-left:5px !important;
    padding-right:5px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:5px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    padding:11px 10px !important;
    gap:7px 8px !important;
  }
}


/* ==========================================================
   D51A / v0.3.6.58 – Spil responsive foundation
   ----------------------------------------------------------
   Gør fullscreen dartspil-modalen til et rent viewport-canvas,
   så Dartspil v0.1.140 kan styre layoutet uden ekstra padding,
   scroll eller klipning fra Tabletspil View.
   ========================================================== */
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen{
  padding:0 !important;
  overflow:hidden !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
}
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen .rt-tabletspil-modal{
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  max-width:100vw !important;
  max-height:100vh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
  background:#000 !important;
}
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen .rt-tabletspil-modal-body{
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  background:#000 !important;
}
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen .rt-dart-game-wrapper{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  min-height:100vh !important;
  min-height:100dvh !important;
}
.rt-ui .rt-tabletspil-modal-overlay.rt-tabletspil-modal-fullscreen .rt-tabletspil-modal-close{
  z-index:1000001 !important;
}


/* ==========================================================
   D58K / v0.3.6.66 — Dagens kampe mobile scroll fix
   ----------------------------------------------------------
   Denne rettelse ligger bevidst i Tabletspil View-pluginet,
   fordi PWA-wrapperen ikke kan gennemtvinge vandret scroll, når
   Tabletspil Views egne mobilregler sætter overflow-x:hidden og
   ombygger tabellen til kort/grid. På mobil vises kampkortet derfor
   som en reel scroll-tabel inde i egen frame, så højresiden kan nås
   med swipe uden at hele app-siden bliver bredere.
   ========================================================== */
@media (max-width: 900px) {
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap{
    width:100vw !important;
    max-width:100vw !important;
    min-width:0 !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-left:6px !important;
    padding-right:6px !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:6px !important;
    overflow:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
    border:1px solid rgba(154,126,16,.22) !important;
    border-radius:14px !important;
    background:rgba(0,0,0,.16) !important;
    touch-action:pan-x pan-y !important;
    scrollbar-width:thin;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::-webkit-scrollbar{
    height:8px;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::-webkit-scrollbar-track{
    background:rgba(255,255,255,.06);
    border-radius:999px;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::-webkit-scrollbar-thumb{
    background:rgba(154,126,16,.65);
    border-radius:999px;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table{
    display:table !important;
    width:760px !important;
    min-width:760px !important;
    max-width:none !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    table-layout:fixed !important;
    font-size:15px !important;
    overflow:visible !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead{
    display:table-header-group !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    display:table-row-group !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    overflow:visible !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    display:table-row !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table th,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table td{
    display:table-cell !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    padding:10px 8px !important;
    border-bottom:1px solid rgba(154,126,16,.16) !important;
    text-align:center !important;
    vertical-align:middle !important;
    background:transparent !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead th{
    background:rgba(154,126,16,.10) !important;
    color:var(--rt-gold) !important;
    font-size:12px !important;
    font-weight:900 !important;
    letter-spacing:.25px !important;
    text-transform:uppercase !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp{ width:58px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil{ width:96px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{ width:60px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{ width:150px !important; text-align:left !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{ width:58px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{ width:128px !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    content:none !important;
    display:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:15px !important;
    line-height:1.2 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    margin-top:4px !important;
    font-size:12px !important;
    line-height:1.2 !important;
    white-space:normal !important;
    text-align:left !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:48px !important;
    max-width:48px !important;
    height:40px !important;
    padding:4px !important;
    margin:0 auto !important;
    display:block !important;
    font-size:16px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    width:auto !important;
    min-width:78px !important;
    min-height:38px !important;
    padding:8px 10px !important;
    font-size:13px !important;
    white-space:nowrap !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    display:block !important;
    margin-top:6px !important;
    white-space:normal !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::after{
    content:'Swipe vandret for at se hele kampkortet';
    display:block;
    position:sticky;
    left:0;
    padding:7px 9px 8px;
    color:rgba(255,255,255,.72);
    font-size:11px;
    line-height:1.2;
    background:linear-gradient(90deg, rgba(0,0,0,.70), rgba(0,0,0,.20));
  }
}

@media (max-width: 380px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table{
    width:720px !important;
    min-width:720px !important;
  }
}

/* ==========================================================
   D58L / v0.3.6.67 — FORLADT i D58Q
   ----------------------------------------------------------
   Inline "Bekræft kamp" i kamp-rækken var forkert kampflow og skjules
   hårdt i D58Q. Kun footer-knappen må bekræfte hele holdkampen.
   ========================================================== */
.rt-ui .rt-tabletspil-btn-approve-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:6px;
  min-width:112px;
  padding:10px 14px;
  border-radius:999px;
  font-size:14px;
  line-height:1.1;
  white-space:nowrap;
}

@media (max-width: 900px){
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve-inline{
    width:auto !important;
    min-width:116px !important;
    max-width:150px !important;
    min-height:40px !important;
    padding:9px 12px !important;
    font-size:13px !important;
    white-space:nowrap !important;
  }
}



/* ==========================================================
   D58M / v0.3.6.68 — Dagens kampe mobil single-column card
   ----------------------------------------------------------
   D58K/D58L forsøgte først sidescroll/inline bekræftelse, men
   praksis viste at mobil/landscape stadig kunne vise den gamle brede
   højreside. Denne rettelse fjerner behovet for at nå højresiden ved
   at tvinge Dagens kampe til et kompakt én-kolonne kampkort på mobil
   og mobil-landscape. Ingen callbacks, kampflow eller resultatlogik
   ændres.
   ========================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    padding-left:6px !important;
    padding-right:6px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:6px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    display:block !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    touch-action:pan-y !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    table-layout:auto !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    overflow:visible !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead{
    display:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-areas:
      "kamp"
      "bane"
      "home"
      "away"
      "lv"
      "lt"
      "spil"
      "tavle" !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 12px 0 !important;
    padding:14px 12px !important;
    gap:9px !important;
    border:1px solid rgba(154,126,16,.24) !important;
    border-radius:18px !important;
    background:linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.34) !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table th,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table td{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    text-align:left !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp{
    grid-area:kamp !important;
    display:block !important;
    color:rgba(255,255,255,.92) !important;
    font-size:14px !important;
    line-height:1.22 !important;
    font-weight:900 !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    grid-area:bane !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:max-content !important;
    align-items:center !important;
    justify-content:flex-start !important;
    justify-self:start !important;
    gap:6px !important;
    padding:6px 10px !important;
    border:1px solid rgba(154,126,16,.36) !important;
    border-radius:999px !important;
    background:rgba(154,126,16,.08) !important;
    color:rgba(255,255,255,.92) !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:850 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    content:"Kampstart kl." !important;
    display:inline !important;
    color:var(--rt-gold) !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    margin:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    padding-top:2px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home{ grid-area:home !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    grid-area:away !important;
    padding-top:10px !important;
    border-top:1px solid rgba(154,126,16,.14) !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    display:block !important;
    color:rgba(255,255,255,.82) !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.18em !important;
    margin:0 0 5px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before{ content:"Hjemmehold" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{ content:"Udehold" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:18px !important;
    line-height:1.22 !important;
    font-weight:900 !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    margin-top:5px !important;
    font-size:13px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    text-align:left !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:8px 10px !important;
    border:1px solid rgba(154,126,16,.22) !important;
    border-radius:12px !important;
    background:rgba(0,0,0,.20) !important;
    color:rgba(255,255,255,.9) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv{ grid-area:lv !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{ grid-area:lt !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    display:inline-block !important;
    min-width:34px !important;
    margin:0 !important;
    color:var(--rt-gold) !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before{ content:"H:" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{ content:"U:" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:64px !important;
    max-width:64px !important;
    height:38px !important;
    padding:4px !important;
    margin:0 !important;
    display:block !important;
    font-size:16px !important;
    line-height:1 !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{
    display:block !important;
    align-self:stretch !important;
    justify-self:stretch !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil{ grid-area:spil !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{ grid-area:tavle !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve-inline{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 12px !important;
    font-size:14px !important;
    line-height:1.1 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    grid-column:1 / -1 !important;
    display:block !important;
    margin-top:2px !important;
    white-space:normal !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::after{
    content:none !important;
    display:none !important;
  }
}

@media (max-width: 430px){
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{ padding-left:4px !important; padding-right:4px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{ padding:4px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{ padding:12px 10px !important; border-radius:16px !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{ font-size:17px !important; }
}

/* ==========================================================
   D58O / v0.3.6.69 — Bekræftelsesmodal fast i viewport-top
   ----------------------------------------------------------
   Kun den lille "Klar til puljespillet"-bekræftelse body-mountes
   midlertidigt, så den altid ses i toppen af den aktuelle viewport,
   uanset hvor langt brugeren er scrollet ned på kampsiden.
   Selve dartspillet flyttes fortsat tilbage i plugin-root før fullscreen,
   så scorelayout, gemmeflow og D51A/D51C game-canvas bevares.
   ========================================================== */
#rt-tabletspil-modal-overlay.rt-tabletspil-hidden{
  display:none !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  padding:calc(env(safe-area-inset-top, 0px) + 14px) 12px 12px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  background:rgba(0,0,0,.86) !important;
  box-sizing:border-box !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-modal{
  position:relative !important;
  width:min(560px, calc(100vw - 24px)) !important;
  max-width:calc(100vw - 24px) !important;
  max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 28px) !important;
  overflow:auto !important;
  margin:0 auto !important;
  border-radius:18px !important;
  border:1px solid rgba(154,126,16,.42) !important;
  background:#15140d !important;
  color:#f7f0d7 !important;
  box-shadow:0 22px 70px rgba(0,0,0,.72) !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-modal-body{
  padding:18px !important;
  background:transparent !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-modal-close{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  z-index:2 !important;
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  border:1px solid rgba(154,126,16,.6) !important;
  background:rgba(0,0,0,.62) !important;
  color:#f7f0d7 !important;
  font-size:28px !important;
  line-height:40px !important;
  cursor:pointer !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-confirm{
  text-align:center !important;
  padding-top:8px !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-confirm-text{
  color:#d9b337 !important;
  font-size:clamp(22px, 4.8vw, 30px) !important;
  font-weight:900 !important;
  margin:18px 48px 22px !important;
  text-transform:uppercase !important;
  letter-spacing:.4px !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-confirm-actions{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  align-items:stretch !important;
  justify-content:center !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-btn{
  width:100% !important;
  min-height:52px !important;
  border-radius:14px !important;
  border:1px solid rgba(154,126,16,.58) !important;
  background:linear-gradient(180deg,#f1d263,#a98908) !important;
  color:#000 !important;
  font-size:16px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:0 10px 24px rgba(0,0,0,.35) !important;
}
#rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-confirm-cancel{
  background:rgba(0,0,0,.18) !important;
  color:#f7f0d7 !important;
}
@media (max-width: 640px){
  #rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport{
    padding:calc(env(safe-area-inset-top, 0px) + 10px) 10px 10px !important;
  }
  #rt-tabletspil-modal-overlay.rt-tabletspil-confirm-viewport .rt-tabletspil-modal{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
  }
}


/* ==========================================================
   D58P / v0.3.6.70 — Tabletspil fuld bredde i PWA-visning
   ----------------------------------------------------------
   D58O fik bekræftelsesboksen op i den synlige viewport, men
   efter de tidligere mobilkort-forsøg kunne selve kampvisningen
   fremstå som en smal centreret kolonne i PWA/Dagens kampe.
   Denne rettelse ændrer kun layoutbredden for Tabletspil View:
   wrapper, inner, scorekort og kampkort skal bruge hele den
   tilgængelige PWA-/browserbredde på mobil og tablet-landscape.
   Scorelogik, modalflow, callbacks og resultatgemning ændres ikke.
   ========================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap[data-view-version]{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-inner{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:clamp(6px, 1.8vw, 16px) !important;
    padding-right:clamp(6px, 1.8vw, 16px) !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-footer{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-table-frame,
  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-table tbody{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap[data-view-version] .rt-tabletspil-table tbody tr{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
}

/* Når Tabletspil View ligger i en PWA/iframe-embed, skal den ikke
   holde fast i en smal indholdsbredde. 100vw måles kun i embed'et og
   bruges derfor som sikker full-width fallback. */
@media (max-width: 1180px) {
  body.rt-pwa-embed-page .rt-ui.rt-tabletspil-wrap[data-view-version],
  body .rt-ui.rt-tabletspil-wrap[data-view-version]{
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
  }
}


/* ==========================================================
   D58Q / v0.3.6.71 — Rollback inline-bekræft + full-width reflow
   ----------------------------------------------------------
   Bekræft kamp må kun findes som én footer-knap, og kun når alle
   enkeltkampe er færdige. Den tidligere D58L inline-knap i kamp-
   rækken skjules hårdt, også hvis gammel markup ligger i cache.
   Samtidig får Tabletspil View en layout-ready/full-width tilstand,
   som aktiveres af JS-reflow efter første render, så kampvisningen
   ikke bliver en smal centreret kolonne før brugeren trykker noget.
   ========================================================== */
.rt-ui .rt-tabletspil-btn-approve-inline,
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve-inline{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready,
  body .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready[data-view-version]{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-inner{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:clamp(6px, 1.5vw, 14px) !important;
    padding-right:clamp(6px, 1.5vw, 14px) !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-footer{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-table-frame,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-table tbody,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-table tbody tr{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
}


/* ==========================================================
   D58R / v0.3.6.72 — Kampkort mobil layout reset + navnestørrelse
   ----------------------------------------------------------
   Samlet rettelse efter test: de tidligere D58M/D58Q mobile card-
   regler lagde hjemme/ude over hinanden og skiftede Bane-label til
   Kampstart kl. D58R genindfører den ønskede kampkortmodel på mobil
   og tablet-landscape: hjemme- og ude-spillere står ved siden af
   hinanden, Bane-label bevares, og spiller-/tavlefører-navne øges
   med 3px i mobilkortet. Kampflow, scorelogik, Dartspil, Bridge og
   Bekræft kamp-validering ændres ikke.
   ========================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body .rt-ui.rt-tabletspil-wrap,
  body .rt-ui.rt-tabletspil-wrap[data-view-version],
  .rt-ui.rt-tabletspil-wrap,
  .rt-ui.rt-tabletspil-wrap[data-view-version],
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready,
  body .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready[data-view-version]{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  body.rt-pwa-embed-page .rt-ui.rt-tabletspil-wrap,
  body.rt-pwa-embed-page .rt-ui.rt-tabletspil-wrap[data-view-version]{
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-inner{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:clamp(6px, 1.6vw, 14px) !important;
    padding-right:clamp(6px, 1.6vw, 14px) !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:6px !important;
    border-radius:16px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    table-layout:auto !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead{
    display:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-areas:
      "kamp bane"
      "home away"
      "lv lt"
      "spil tavle" !important;
    gap:10px 12px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 12px 0 !important;
    padding:14px 12px !important;
    border:1px solid rgba(154,126,16,.26) !important;
    border-radius:18px !important;
    background:linear-gradient(135deg, rgba(255,255,255,.052), rgba(255,255,255,.018)) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.34) !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table th,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table td{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    text-align:left !important;
    vertical-align:middle !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp{
    grid-area:kamp !important;
    justify-self:start !important;
    align-self:center !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:5px 10px !important;
    border:1px solid rgba(154,126,16,.34) !important;
    border-radius:999px !important;
    background:rgba(154,126,16,.08) !important;
    color:rgba(255,255,255,.94) !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before{
    content:"Kamp" !important;
    display:inline !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    margin:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    grid-area:bane !important;
    justify-self:end !important;
    align-self:center !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:5px 10px !important;
    border:1px solid rgba(154,126,16,.34) !important;
    border-radius:999px !important;
    background:rgba(154,126,16,.08) !important;
    color:rgba(255,255,255,.94) !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    content:"Bane" !important;
    display:inline !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    margin:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    align-self:start !important;
    padding:9px 9px 10px !important;
    border:1px solid rgba(154,126,16,.16) !important;
    border-radius:14px !important;
    background:rgba(0,0,0,.16) !important;
    min-height:92px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home{ grid-area:home !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{ grid-area:away !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    display:block !important;
    color:rgba(255,255,255,.82) !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.18em !important;
    margin:0 0 6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before{ content:"Hjemmehold" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{ content:"Udehold" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-players{
    margin:0 !important;
    padding:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:21px !important; /* D58R: +3px fra D58M mobilkort */
    line-height:1.18 !important;
    font-weight:900 !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-players .rt-tabletspil-player-name + .rt-tabletspil-player-name{
    margin-top:3px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    margin-top:7px !important;
    font-size:16px !important; /* D58R: +3px fra D58M mobilkort */
    line-height:1.25 !important;
    white-space:normal !important;
    text-align:left !important;
    color:rgba(255,255,255,.72) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer-label{
    color:var(--rt-gold) !important;
    font-weight:400 !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer-name{
    font-style:italic !important;
    font-weight:400 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:8px 10px !important;
    border:1px solid rgba(154,126,16,.22) !important;
    border-radius:12px !important;
    background:rgba(0,0,0,.20) !important;
    color:rgba(255,255,255,.9) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv{ grid-area:lv !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{ grid-area:lt !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    display:inline-block !important;
    min-width:34px !important;
    margin:0 !important;
    color:var(--rt-gold) !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before{ content:"H:" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{ content:"U:" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:64px !important;
    max-width:64px !important;
    height:38px !important;
    padding:4px !important;
    margin:0 !important;
    display:block !important;
    font-size:16px !important;
    line-height:1 !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{
    display:block !important;
    align-self:stretch !important;
    justify-self:stretch !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil{ grid-area:spil !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{ grid-area:tavle !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 12px !important;
    font-size:14px !important;
    line-height:1.1 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve-inline{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    grid-column:1 / -1 !important;
    display:block !important;
    margin-top:2px !important;
    white-space:normal !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::after{
    content:none !important;
    display:none !important;
  }
}

@media (max-width: 430px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    padding-left:4px !important;
    padding-right:4px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:4px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    gap:8px 8px !important;
    padding:12px 10px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    padding:8px 7px 9px !important;
    min-height:86px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:20px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    font-size:15px !important;
  }
}

/* ==========================================================
   D58U / v0.3.6.73 — Full-width cleanup + layout root fix
   ----------------------------------------------------------
   Samlet oprydning efter D58K-D58T: de gamle sidescroll-,
   single-column- og reflow-lag må ikke længere låse kampkortet
   til en fast/smal px-bredde. Tabletspil View bruger nu én
   mobil/tablet-landscape strategi: fuld synlig bredde, hjemme- og
   udehold side om side, Bane-label, +3px navnestørrelse og kun én
   footer-Bekræft kamp-knap når hele holdkampen er færdig.
   ========================================================== */
.rt-ui .rt-tabletspil-btn-approve-inline,
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve-inline{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

html.rt-tabletspil-full-width-unlocked,
body.rt-tabletspil-full-width-unlocked{
  max-width:100% !important;
  overflow-x:hidden !important;
}

@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  body .rt-ui.rt-tabletspil-wrap,
  body .rt-ui.rt-tabletspil-wrap[data-view-version],
  body .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready,
  body .rt-ui.rt-tabletspil-wrap.rt-tabletspil-full-width-root{
    position:relative !important;
    display:block !important;
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  body.rt-pwa-embed-page .rt-ui.rt-tabletspil-wrap,
  body.rt-pwa-embed-page .rt-ui.rt-tabletspil-wrap[data-view-version],
  body.rt-tabletspil-full-width-unlocked .rt-ui.rt-tabletspil-wrap{
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-layout-ready .rt-tabletspil-inner,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-full-width-root .rt-tabletspil-inner{
    width:100vw !important;
    max-width:100vw !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:8px !important;
    padding-right:8px !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-full-width-root .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-full-width-root .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap.rt-tabletspil-full-width-root .rt-tabletspil-footer{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:6px !important;
    border-radius:16px !important;
    overflow:visible !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
    box-sizing:border-box !important;
    touch-action:pan-y !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    table-layout:auto !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead{
    display:none !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-areas:
      "kamp bane"
      "home away"
      "lv lt"
      "spil tavle" !important;
    gap:10px 12px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 0 12px 0 !important;
    padding:14px 12px !important;
    border:1px solid rgba(154,126,16,.26) !important;
    border-radius:18px !important;
    background:linear-gradient(135deg, rgba(255,255,255,.052), rgba(255,255,255,.018)) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.34) !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table th,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table td{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    text-align:left !important;
    vertical-align:middle !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp{
    grid-area:kamp !important;
    justify-self:start !important;
    align-self:center !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    padding:5px 10px !important;
    border:1px solid rgba(154,126,16,.34) !important;
    border-radius:999px !important;
    background:rgba(154,126,16,.08) !important;
    color:rgba(255,255,255,.94) !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before{
    content:"Kamp" !important;
    display:inline !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    margin:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    grid-area:bane !important;
    justify-self:end !important;
    align-self:center !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    padding:5px 10px !important;
    border:1px solid rgba(154,126,16,.34) !important;
    border-radius:999px !important;
    background:rgba(154,126,16,.08) !important;
    color:rgba(255,255,255,.94) !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    gap:6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    content:"Bane" !important;
    display:inline !important;
    color:var(--rt-gold) !important;
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    margin:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    align-self:start !important;
    padding:9px 9px 10px !important;
    border:1px solid rgba(154,126,16,.16) !important;
    border-radius:14px !important;
    background:rgba(0,0,0,.16) !important;
    min-height:92px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home{ grid-area:home !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{ grid-area:away !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    display:block !important;
    color:rgba(255,255,255,.82) !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.18em !important;
    margin:0 0 6px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before{ content:"Hjemmehold" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{ content:"Udehold" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-players{
    margin:0 !important;
    padding:0 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:21px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-players .rt-tabletspil-player-name + .rt-tabletspil-player-name{
    margin-top:3px !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    margin-top:7px !important;
    font-size:16px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    text-align:left !important;
    color:rgba(255,255,255,.72) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer-label{
    color:var(--rt-gold) !important;
    font-weight:400 !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer-name{
    font-style:italic !important;
    font-weight:400 !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:8px 10px !important;
    border:1px solid rgba(154,126,16,.22) !important;
    border-radius:12px !important;
    background:rgba(0,0,0,.20) !important;
    color:rgba(255,255,255,.9) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv{ grid-area:lv !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt{ grid-area:lt !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    display:inline-block !important;
    min-width:34px !important;
    margin:0 !important;
    color:var(--rt-gold) !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before{ content:"H:" !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{ content:"U:" !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:64px !important;
    max-width:64px !important;
    height:38px !important;
    padding:4px !important;
    margin:0 !important;
    display:block !important;
    font-size:16px !important;
    line-height:1 !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{
    display:block !important;
    align-self:stretch !important;
    justify-self:stretch !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-spil{ grid-area:spil !important; }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-tavle{ grid-area:tavle !important; }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:10px 12px !important;
    font-size:14px !important;
    line-height:1.1 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    grid-column:1 / -1 !important;
    display:block !important;
    margin-top:2px !important;
    white-space:normal !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-frame::after{
    content:none !important;
    display:none !important;
  }
}

@media (max-width: 430px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-inner{
    padding-left:4px !important;
    padding-right:4px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-header,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer{
    width:calc(100vw - 8px) !important;
    max-width:calc(100vw - 8px) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table-wrap{
    padding:4px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr{
    gap:8px 8px !important;
    padding:12px 10px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    padding:8px 7px 9px !important;
    min-height:86px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:20px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    font-size:15px !important;
  }
}

/* ==========================================================
   D58V / v0.3.6.74 — Tabletspil tekststørrelse +3px polish
   ----------------------------------------------------------
   Rent visuelt polish-step oven på D58U: synlige bogstaver og
   tal i kampkort/tabletspilvisningen øges ca. 3px. Bredden,
   hjemme/ude side om side, Bane-label, D58O modalplacering,
   Dartspil, Bridge, callbacks, scorelogik, database og
   resultatgemning ændres ikke.
   ========================================================== */
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-teams{
  font-size:37px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-score{
  font-size:47px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-pool-label{
  font-size:15px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-table{
  font-size:calc(1em + 11px) !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-table thead th{
  font-size:20px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
  font-size:24px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
  font-size:23px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
  font-size:19px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn{
  font-size:17px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-approve{
  font-size:19px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer-msg{
  font-size:17px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-build{
  font-size:15px !important;
}
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
  font-size:15px !important;
}

@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-teams{
    font-size:clamp(34px, 7.8vw, 40px) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score{
    font-size:clamp(50px, 13.5vw, 58px) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-pool-label{
    font-size:15px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody{
    font-size:19px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    font-size:16px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    font-size:13px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away{
    min-height:98px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    font-size:15px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:24px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    font-size:19px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lv::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-lt::before{
    min-width:40px !important;
    font-size:15px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:68px !important;
    max-width:68px !important;
    height:43px !important;
    font-size:19px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    min-height:45px !important;
    font-size:17px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-footer-msg{
    font-size:17px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-build{
    font-size:15px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-row-warning{
    font-size:14px !important;
  }
}

@media (max-width: 430px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-teams{
    font-size:clamp(31px, 8vw, 36px) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score{
    font-size:clamp(48px, 13.5vw, 55px) !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane{
    font-size:16px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-kamp::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-bane::before{
    font-size:13px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-col-away::before{
    font-size:15px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:23px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-scorer{
    font-size:18px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-score-input{
    width:66px !important;
    max-width:66px !important;
    height:42px !important;
    font-size:19px !important;
  }
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-spil,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-btn-tavle{
    min-height:44px !important;
    font-size:17px !important;
  }
}



/* ==========================================================
   D58W / v0.3.6.75 — Hjemmehold/Udehold label-swap på lige kampnumre
   ----------------------------------------------------------
   Rent visuelt label-step oven på D58V: i kampkort/tabletspil-
   visningen byttes kun ordene "Hjemmehold" og "Udehold" på
   kamp 2, 4, 6, 8, 10 og 12. Spillere, hold, bane, tavlefører,
   first_side, resultater, Bridge-data, Dartspil, callbacks,
   scorelogik, database og resultatgemning ændres ikke.
   ========================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="2"] .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="4"] .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="6"] .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="8"] .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="10"] .rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="12"] .rt-tabletspil-col-home::before{
    content:"Udehold" !important;
  }

  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="2"] .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="4"] .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="6"] .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="8"] .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="10"] .rt-tabletspil-col-away::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no="12"] .rt-tabletspil-col-away::before{
    content:"Hjemmehold" !important;
  }
}


/* ==========================================================
   D58Z / v0.3.6.77 — Tabletspil spillernavne +5px
   ----------------------------------------------------------
   Rent visuelt polish-step oven på D58X/D58Y: kun synlige
   spillernavne i kampkort/tabletspilvisningen øges med 5px.
   Labels, tavlefører, Bane, resultattal, knapper, label-swap,
   kampflow, Bridge, Dartspil, PWA, database og resultatgemning
   ændres ikke.
   ========================================================== */
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
  font-size:29px !important;
  line-height:1.12 !important;
}

@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:29px !important;
    line-height:1.12 !important;
  }
}

@media (max-width: 430px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:28px !important;
    line-height:1.12 !important;
  }
}

/* ==========================================================
   D58AA / v0.3.6.78 — Tabletspil spillernavne +10px ekstra
   ----------------------------------------------------------
   Rent visuelt polish-step oven på D58Z: kun synlige
   spillernavne i kampkort/tabletspilvisningen øges med
   yderligere 10px. Labels, tavlefører, Bane, resultattal,
   knapper, label-swap, kampflow, Bridge, Dartspil, PWA,
   database og resultatgemning ændres ikke.
   ========================================================== */
.rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
  font-size:39px !important;
  line-height:1.08 !important;
}

@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:39px !important;
    line-height:1.08 !important;
  }
}

@media (max-width: 430px) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-player-name{
    font-size:38px !important;
    line-height:1.08 !important;
  }
}



/* ========================================================================
   D58AE / v0.3.6.79 — Tavle UI/input polish

   Rent UI/input-step for tavlefladen åbnet via kampkortets "Tavle"-knap.
   Rører ikke resultatgemning, scorelogik, Bridge, Dartspil eller statistik.
   JS tilføjer klasserne defensivt til relevante Tavle-knapper og Pile/Luk-
   felter, så styling og inputbegrænsning kan virke også når tavle-HTML
   kommer fra et andet plugin og indsættes dynamisk.
   ======================================================================== */
.rt-tabletspil-tavle-theme-button,
.rt-tabletspil-tavle-save-button,
.rt-ui .rt-tabletspil-tavle-theme-button,
.rt-ui .rt-tabletspil-tavle-save-button,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-theme-button,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-save-button{
  background:linear-gradient(180deg, #d9bd4f 0%, #b99722 52%, #8f7313 100%) !important;
  color:#050505 !important;
  border:1px solid rgba(217,189,79,.92) !important;
  border-radius:10px !important;
  box-shadow:0 10px 24px rgba(154,126,16,.28), inset 0 1px 0 rgba(255,255,255,.28) !important;
  text-shadow:none !important;
  font-weight:800 !important;
}

.rt-tabletspil-tavle-theme-button:hover,
.rt-tabletspil-tavle-theme-button:focus,
.rt-tabletspil-tavle-save-button:hover,
.rt-tabletspil-tavle-save-button:focus,
.rt-ui .rt-tabletspil-tavle-theme-button:hover,
.rt-ui .rt-tabletspil-tavle-theme-button:focus,
.rt-ui .rt-tabletspil-tavle-save-button:hover,
.rt-ui .rt-tabletspil-tavle-save-button:focus,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-theme-button:hover,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-theme-button:focus,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-save-button:hover,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-save-button:focus{
  background:#050505 !important;
  color:#d9bd4f !important;
  border-color:#d9bd4f !important;
  outline:2px solid rgba(217,189,79,.38) !important;
  outline-offset:2px !important;
}

.rt-tabletspil-tavle-close-button,
.rt-ui .rt-tabletspil-tavle-close-button,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-close-button{
  background:rgba(0,0,0,.78) !important;
  color:#d9bd4f !important;
  border:1px solid rgba(217,189,79,.85) !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

.rt-tabletspil-tavle-close-button:hover,
.rt-tabletspil-tavle-close-button:focus,
.rt-ui .rt-tabletspil-tavle-close-button:hover,
.rt-ui .rt-tabletspil-tavle-close-button:focus,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-close-button:hover,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-close-button:focus{
  background:#d9bd4f !important;
  color:#050505 !important;
  border-color:#d9bd4f !important;
}

.rt-tabletspil-tavle-numeric-field,
.rt-ui .rt-tabletspil-tavle-numeric-field,
#rt-tabletspil-modal-overlay .rt-tabletspil-tavle-numeric-field{
  text-align:center !important;
  appearance:textfield;
  -moz-appearance:textfield;
}

.rt-tabletspil-tavle-numeric-field::-webkit-outer-spin-button,
.rt-tabletspil-tavle-numeric-field::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}


/* ========================================================================
   D58AH / v0.3.6.80 — Faktiske holdnavne på kampkort-rækker
   ------------------------------------------------------------------------
   Erstatter de faste mobile labels "Hjemmehold"/"Udehold" med det
   faktiske holdnavn for den kolonne, spilleren står i. Rækker, hvor Bridge
   har byttet visningsside, følger kolonnens faktiske team_id.
   ======================================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody td.rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody td.rt-tabletspil-col-away::before{
    content:attr(data-team-label) !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
}

/* ========================================================================
   D58AI / v0.3.6.81 — Holdnavne override på lige kampnumre
   ------------------------------------------------------------------------
   Hotfix oven på D58AH: ældre D58W-regler for kamp 2, 4, 6, 8, 10 og 12
   havde højere CSS-specificitet og kunne derfor stadig vise "Hjemmehold" /
   "Udehold". Denne regel er bevidst mere specifik og ligger sidst, så alle
   kampnumre viser det faktiske data-team-label uden at ændre data, spillere,
   tavlefører, resultater, Tavle, Spil eller kampflow.
   ======================================================================== */
@media (max-width: 1180px), (max-height: 620px) and (pointer: coarse) {
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no] td.rt-tabletspil-col-home::before,
  .rt-ui.rt-tabletspil-wrap .rt-tabletspil-table tbody tr[data-game-no] td.rt-tabletspil-col-away::before{
    content:attr(data-team-label) !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
}


/* D58AM: Færdigspillet Spil-kamp bruger samme spillerkort-modal som Dartspil-slutmodalen. */
.rt-ui #rt-tabletspil-history-modal .rt-dart-modal-content{
  width:min(760px, 94vw);
  max-width:760px;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-modal-content > p{
  font-size:calc(1rem + 3px) !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  margin:0 0 14px !important;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-table{
  display:none !important;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-cards{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  gap:14px;
  margin:14px 0 18px;
  align-items:start;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-player-card{
  border:1px solid rgba(212,175,55,.55);
  border-radius:14px;
  overflow:hidden;
  background:rgba(0,0,0,.24);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
  text-align:left;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-player-header{
  padding:12px 14px;
  background:rgba(212,175,55,.16);
  color:#fff;
  font-weight:900;
  font-size:19px;
  line-height:1.25;
  letter-spacing:.02em;
  border-bottom:1px solid rgba(212,175,55,.45);
  word-break:break-word;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-match-winner .rt-dart-stats-player-header{
  color:#fff;
  background:linear-gradient(180deg, rgba(212,175,55,.32), rgba(212,175,55,.15));
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-box{
  padding:12px 14px 13px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-box:last-child{
  border-bottom:0;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-title{
  color:var(--rt-gold);
  font-weight:900;
  font-size:16px;
  line-height:1.3;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:8px;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-value-line{
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:16px;
  line-height:1.45;
  color:#fff;
  padding:2px 0;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-value-line strong{
  color:var(--rt-gold);
  font-weight:800;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-value-line span{
  color:#fff;
  font-weight:700;
  text-align:right;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-winner{
  background:rgba(212,175,55,.055);
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-winner .rt-dart-stats-leg-title,
.rt-ui #rt-tabletspil-history-modal .rt-dart-stats-luk-line span{
  color:#fff;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-modal-buttons{
  margin-top:14px !important;
}
.rt-ui #rt-tabletspil-history-modal .rt-dart-btn{
  width:auto !important;
  max-width:190px !important;
  min-width:130px !important;
  height:auto !important;
  min-height:42px !important;
  padding:8px 18px !important;
  font-size:16px !important;
  line-height:1.15 !important;
  border-radius:14px !important;
}
@media (max-width:560px){
  .rt-ui #rt-tabletspil-history-modal .rt-dart-modal-content{
    width:94vw;
    padding:14px 10px;
  }
  .rt-ui #rt-tabletspil-history-modal .rt-dart-stats-cards{
    grid-template-columns:1fr;
    gap:12px;
  }
  .rt-ui #rt-tabletspil-history-modal .rt-dart-stats-player-header{
    font-size:18px;
  }
  .rt-ui #rt-tabletspil-history-modal .rt-dart-stats-leg-title,
  .rt-ui #rt-tabletspil-history-modal .rt-dart-stats-value-line{
    font-size:16px;
  }
}


/* ========================================================================
   D58AT / v0.3.6.88 — Scrollbar i spillerkort-modal på mobil/tablet
   ------------------------------------------------------------------------
   Den færdigspillede kamp/historikmodal kan blive højere end viewporten på
   mobil og tablet, især når begge spilleres leg-for-leg data vises i store
   spillerkort. Dette step gør kun modalens egen indholdsboks scroll-bar og
   bevarer kampkort, scoredata, Dartspil, Tavle, Bridge, PWA og database.
   ======================================================================== */
#rt-tabletspil-history-modal.rt-dart-hidden{
  display:none !important;
}

.rt-ui.rt-tabletspil-wrap #rt-tabletspil-history-modal.rt-dart-modal,
#rt-tabletspil-history-modal.rt-dart-modal.rt-tabletspil-history-playercards{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior:contain !important;
  touch-action:pan-y !important;
  box-sizing:border-box !important;
}

.rt-ui.rt-tabletspil-wrap #rt-tabletspil-history-modal .rt-dart-modal-content,
#rt-tabletspil-history-modal.rt-tabletspil-history-playercards .rt-dart-modal-content{
  max-height:calc(100dvh - 32px) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior:contain !important;
  touch-action:pan-y !important;
  box-sizing:border-box !important;
}

.rt-ui.rt-tabletspil-wrap #rt-tabletspil-history-modal .rt-dart-modal-buttons,
#rt-tabletspil-history-modal.rt-tabletspil-history-playercards .rt-dart-modal-buttons{
  position:sticky !important;
  bottom:0 !important;
  z-index:5 !important;
  padding:10px 0 2px !important;
  background:linear-gradient(180deg, rgba(15,15,12,0), rgba(15,15,12,.96) 32%, rgba(15,15,12,1)) !important;
}

@media (max-width:900px), (max-height:620px) and (pointer:coarse){
  .rt-ui.rt-tabletspil-wrap #rt-tabletspil-history-modal.rt-dart-modal,
  #rt-tabletspil-history-modal.rt-dart-modal.rt-tabletspil-history-playercards{
    align-items:flex-start !important;
    justify-content:center !important;
    padding:calc(env(safe-area-inset-top, 0px) + 10px) 10px calc(env(safe-area-inset-bottom, 0px) + 10px) !important;
  }

  .rt-ui.rt-tabletspil-wrap #rt-tabletspil-history-modal .rt-dart-modal-content,
  #rt-tabletspil-history-modal.rt-tabletspil-history-playercards .rt-dart-modal-content{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    max-height:calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 20px) !important;
    margin:0 auto !important;
  }
}

/* D58AT safety: hidden state must win over the visible flex rules above. */
#rt-tabletspil-history-modal.rt-dart-hidden.rt-dart-modal,
#rt-tabletspil-history-modal.rt-dart-hidden.rt-dart-modal.rt-tabletspil-history-playercards{
  display:none !important;
}
