/* RT Football Core – frontend UI
   Scoped by .rtf-* class names (no global element selectors).
*/

.rt-ui{
  /* Default accent (can be overridden inline by PHP) */
  --rtf-accent:#0f5f2d; /* even darker green */
  --rtf-accent-dark:#0a451f;
  --rtf-accent-rgb:15,95,45;
  --rtf-bg:#ffffff;
  --rtf-text:#0f172a;
  --rtf-muted:#64748b;
  --rtf-border:rgba(15,23,42,.14);
  --rtf-shadow:0 10px 30px rgba(15,23,42,.10);
}

.rt-ui .rtf-wrap{max-width:1100px;margin:18px auto;padding:0 14px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";color:var(--rtf-text);}
.rt-ui .rtf-wrap *{box-sizing:border-box;}

.rt-ui .rtf-card{
  background:var(--rtf-bg);
  border:1px solid var(--rtf-border);
  border-radius:16px;
  box-shadow:var(--rtf-shadow);
  padding:16px;
  margin:0 0 16px 0;
}

.rt-ui .rtf-card h2{margin:0 0 12px 0;font-size:22px;line-height:1.2;}
.rt-ui .rtf-card h3{margin:0 0 12px 0;font-size:18px;line-height:1.25;}

.rt-ui .rtf-hint{color:var(--rtf-muted);font-size:13px;line-height:1.35;margin-top:6px;}

/* B5C-5: small helper note inside standings cards */
.rt-ui .rtf-standings-note{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(15,23,42,.18);background:rgba(15,23,42,.02);}
.rt-ui.rtf-theme-portal .rtf-standings-note{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.06);}

.rt-ui .rtf-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.rt-ui .rtf-row label{font-weight:700;font-size:13px;color:#111;}

.rt-ui .rtf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}

/* Force 1-column grid where requested (used for “Rækker” + “Puljer” stacking) */
.rt-ui .rtf-grid.rtf-grid-stack{grid-template-columns:1fr;}
.rt-ui .rtf-grid.rtf-grid-stack > .rtf-card{width:100%;justify-self:stretch;}

.rt-ui .rtf-form label{display:block;font-weight:700;font-size:13px;margin:0 0 6px 0;color:#111;}

.rt-ui .rtf-form input[type="text"],
.rt-ui .rtf-form input[type="email"],
.rt-ui .rtf-form input[type="url"],
.rt-ui .rtf-form input[type="number"],
.rt-ui .rtf-form input[type="date"],
.rt-ui .rtf-form input[type="time"],
.rt-ui .rtf-form select,
.rt-ui .rtf-form textarea,
.rt-ui .rtf-row input[type="text"],
.rt-ui .rtf-row input[type="email"],
.rt-ui .rtf-row input[type="url"],
.rt-ui .rtf-row input[type="number"],
.rt-ui .rtf-row input[type="date"],
.rt-ui .rtf-row input[type="time"],
.rt-ui .rtf-row select,
.rt-ui .rtf-row textarea{
  width:100%;
  border:1px solid rgba(15,23,42,.18);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}

.rt-ui .rtf-form textarea{min-height:92px;resize:vertical;}

.rt-ui .rtf-form input:focus,
.rt-ui .rtf-form select:focus,
.rt-ui .rtf-form textarea:focus,
.rt-ui .rtf-row input:focus,
.rt-ui .rtf-row select:focus,
.rt-ui .rtf-row textarea:focus{
  border-color:rgba(var(--rtf-accent-rgb),.55);
  box-shadow:0 0 0 4px rgba(var(--rtf-accent-rgb),.14);
}

.rt-ui .rtf-input{
  width:100%;
  border:1px solid rgba(15,23,42,.18);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}

.rt-ui .rtf-input:focus{
  border-color:rgba(var(--rtf-accent-rgb),.55);
  box-shadow:0 0 0 4px rgba(var(--rtf-accent-rgb),.14);
}

.rt-ui .rtf-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:12px;
  padding:10px 14px;
  font-weight:800;
  font-size:14px;
  border:1px solid rgba(var(--rtf-accent-rgb),.55);
  background:var(--rtf-accent);
  color:#fff;
  cursor:pointer;
  text-decoration:none;
  user-select:none;
}

.rt-ui .rtf-btn:hover{background:var(--rtf-accent-dark);}
.rt-ui .rtf-btn:active{transform:translateY(1px);}
.rt-ui .rtf-btn.secondary{background:#fff;color:#111;border-color:rgba(15,23,42,.18);}
.rt-ui .rtf-btn.secondary:hover{background:rgba(15,23,42,.04);}
.rt-ui .rtf-btn.small{padding:7px 10px;font-size:13px;border-radius:10px;}

.rt-ui .rtf-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}

.rt-ui .rtf-notice{border-radius:14px;padding:12px 12px;border:1px solid rgba(15,23,42,.14);background:rgba(71,85,105,.06);}
.rt-ui .rtf-notice.success{border-color:rgba(var(--rtf-accent-rgb),.35);background:rgba(var(--rtf-accent-rgb),.10);}
.rt-ui .rtf-notice.error{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.10);}

.rt-ui .rtf-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(15,23,42,.18);font-size:12px;font-weight:800;background:rgba(15,23,42,.03);color:#111;}
.rt-ui .rtf-pill-click{cursor:pointer;}

/* I-1: Internal/External tournament mode */
.rt-ui .rtf-pill-external{border-color:rgba(var(--rtf-accent-rgb),.35);background:rgba(var(--rtf-accent-rgb),.10);} 
.rt-ui .rtf-pill-internal{border-color:rgba(234,179,8,.50);background:rgba(234,179,8,.12);color:#7c4a00;}
.rt-ui.rtf-theme-portal .rtf-pill-external,
.rt-ui.rtf-theme-portal .rtf-pill-internal{color:#fff;}

.rt-ui .rtf-radio{display:flex;flex-direction:column;gap:8px;}
.rt-ui .rtf-radio-opt{display:flex;gap:10px;align-items:flex-start;font-weight:900;font-size:13px;line-height:1.35;color:inherit;}
.rt-ui .rtf-radio-opt input{margin-top:2px;}

.rt-ui .rtf-callout{border:1px solid rgba(15,23,42,.14);background:rgba(15,23,42,.03);border-radius:14px;padding:12px;}

.rt-ui .rtf-public-link{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid rgba(15,23,42,.14);border-radius:14px;background:#fff;margin:0 0 10px 0;}
.rt-ui .rtf-public-link span{font-weight:800;font-size:13px;color:#111;}
.rt-ui .rtf-public-link a{color:#0f172a;text-decoration:none;word-break:break-all;}
.rt-ui .rtf-public-link a:hover{color:var(--rtf-accent-dark);}

/* B5E-4: Deling / QR */
.rt-ui .rtf-sharebox{margin:0 0 14px 0; padding:12px; border:1px solid rgba(15,23,42,.14); border-radius:14px; background:#fff;}
.rt-ui .rtf-sharebox > summary{list-style:none;}
.rt-ui .rtf-sharebox > summary::-webkit-details-marker{display:none;}
.rt-ui .rtf-qr-grid{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px;}
.rt-ui .rtf-qr-item{border:1px solid rgba(15,23,42,.14); border-radius:14px; padding:12px; background:#fff;}
.rt-ui .rtf-qr-title{font-weight:900; margin:0 0 10px 0; color:#0f172a;}
.rt-ui .rtf-qr-imgwrap{background:#ffffff; border-radius:12px; padding:10px; border:1px solid rgba(15,23,42,.12); display:flex; justify-content:center;}
.rt-ui .rtf-qr-img{max-width:190px; width:100%; height:auto; display:block; border-radius:8px;}
.rt-ui .rtf-qr-link{margin:10px 0 10px 0; font-size:12px; line-height:1.35; word-break:break-all;}
.rt-ui .rtf-qr-link a{text-decoration:none; color:#0f172a;}
.rt-ui .rtf-qr-link a:hover{color:var(--rtf-accent-dark);}
.rt-ui .rtf-qr-actions{display:flex; gap:8px; align-items:center; flex-wrap:wrap;}

@media (max-width: 900px){
  .rt-ui .rtf-qr-grid{grid-template-columns:1fr;}
}

.rt-ui .rtf-table-wrap{overflow:auto;border:1px solid rgba(15,23,42,.12);border-radius:14px;}
.rt-ui .rtf-table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px;background:#fff;}
.rt-ui .rtf-table thead th{position:sticky;top:0;background:rgba(15,23,42,.03);border-bottom:1px solid rgba(15,23,42,.12);font-size:12px;text-align:left;padding:10px 10px;color:#111;}
.rt-ui .rtf-table td{border-bottom:1px solid rgba(15,23,42,.08);padding:10px 10px;font-size:13px;vertical-align:top;}
.rt-ui .rtf-table tr:hover td{background:rgba(15,23,42,.02);}

.rt-ui .rtf-inline-edit{border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:12px;background:rgba(15,23,42,.02);}

/* Tabs */
.rt-ui .rtf-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 12px 0;}
.rt-ui .rtf-tab{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;border:1px solid rgba(15,23,42,.18);background:#fff;color:#111;text-decoration:none;font-weight:900;font-size:13px;}
.rt-ui .rtf-tab:hover{background:rgba(15,23,42,.04);}
.rt-ui .rtf-tab.active{border-color:rgba(var(--rtf-accent-rgb),.55);background:rgba(var(--rtf-accent-rgb),.10);color:var(--rtf-accent-dark);}
.rt-ui .rtf-tab.active{border-color:rgba(var(--rtf-accent-rgb),.55);background:rgba(var(--rtf-accent-rgb),.10);color:var(--rtf-accent-dark);}

/* Check style */
.rt-ui .rtf-check{display:flex;gap:10px;align-items:flex-start;line-height:1.35;font-weight:800;font-size:13px;color:#111;}
.rt-ui .rtf-check input{margin-top:2px;}

@media (max-width: 860px){
  .rt-ui .rtf-grid{grid-template-columns:1fr;}
  .rt-ui .rtf-wrap{padding:0 10px;}
  .rt-ui .rtf-card{padding:14px;}
  .rt-ui .rtf-table{min-width:760px;}
}

@media (max-width: 520px){
  .rt-ui .rtf-card h2{font-size:20px;}
  .rt-ui .rtf-btn{width:100%;}
  .rt-ui .rtf-actions .rtf-btn{width:auto;}
}

/* =====================================================
   Portal theme (green cards, dark inputs) – add .rtf-theme-portal
   ===================================================== */
.rt-ui.rtf-theme-portal{
  --rtf-bg:transparent;
  --rtf-text:#ffffff;
  --rtf-muted:rgba(255,255,255,.65);
  --rtf-border:rgba(var(--rtf-accent-rgb),.35);
  --rtf-shadow:0 12px 35px rgba(0,0,0,.45);
}


/* Safety: if markup ever escapes .rtf-wrap, keep the same max width */
.rt-ui.rtf-theme-portal > .rtf-grid,
.rt-ui.rtf-theme-portal > .rtf-card,
.rt-ui.rtf-theme-portal > .rtf-admin-box{
  max-width:1100px;
  margin-left:auto;
  margin-right:auto;
}
.rt-ui.rtf-theme-portal > .rtf-grid{padding:0 14px;}
.rt-ui .rtf-brandbar{
  max-width:1100px;
  margin:0 auto 10px auto;
  padding:12px 14px 0 14px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
}
.rt-ui .rtf-brandbar-logo{height:44px;width:auto;display:block;object-fit:contain;}

.rt-ui.rtf-theme-portal .rtf-card{
  border:1px solid rgba(var(--rtf-accent-rgb),.35);
  border-radius:18px;
  box-shadow:0 12px 35px rgba(0,0,0,.45);
  background:
    radial-gradient(120% 120% at 50% 20%, rgba(var(--rtf-accent-rgb),.18), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0)),
    #061f12;
}

.rt-ui.rtf-theme-portal .rtf-row label,
.rt-ui.rtf-theme-portal .rtf-form label{color:var(--rtf-accent);}

.rt-ui.rtf-theme-portal .rtf-input,
.rt-ui.rtf-theme-portal .rtf-form input[type="text"],
.rt-ui.rtf-theme-portal .rtf-form input[type="email"],
.rt-ui.rtf-theme-portal .rtf-form input[type="url"],
.rt-ui.rtf-theme-portal .rtf-form input[type="number"],
.rt-ui.rtf-theme-portal .rtf-form input[type="date"],
.rt-ui.rtf-theme-portal .rtf-form input[type="time"],
.rt-ui.rtf-theme-portal .rtf-form select,
.rt-ui.rtf-theme-portal .rtf-form textarea,
.rt-ui.rtf-theme-portal .rtf-row input[type="text"],
.rt-ui.rtf-theme-portal .rtf-row input[type="email"],
.rt-ui.rtf-theme-portal .rtf-row input[type="url"],
.rt-ui.rtf-theme-portal .rtf-row input[type="number"],
.rt-ui.rtf-theme-portal .rtf-row input[type="date"],
.rt-ui.rtf-theme-portal .rtf-row input[type="time"],
.rt-ui.rtf-theme-portal .rtf-row select,
.rt-ui.rtf-theme-portal .rtf-row textarea{
  background:#000000 !important;
  color:#ffffff !important;
  border:1px solid rgba(var(--rtf-accent-rgb),.55) !important;
}

.rt-ui.rtf-theme-portal .rtf-input::placeholder,
.rt-ui.rtf-theme-portal .rtf-form input::placeholder,
.rt-ui.rtf-theme-portal .rtf-row input::placeholder,
.rt-ui.rtf-theme-portal .rtf-form textarea::placeholder,
.rt-ui.rtf-theme-portal .rtf-row textarea::placeholder{color:rgba(255,255,255,.50);}

.rt-ui.rtf-theme-portal .rtf-form select,
.rt-ui.rtf-theme-portal .rtf-row select{color:var(--rtf-accent) !important;}

.rt-ui.rtf-theme-portal .rtf-btn.secondary{background:transparent;color:#ffffff;border-color:rgba(var(--rtf-accent-rgb),.55);} 
.rt-ui.rtf-theme-portal .rtf-btn.secondary:hover{background:rgba(var(--rtf-accent-rgb),.06);} 

/* Markup in plugin uses rtf-btn-outline – support it */
.rt-ui .rtf-btn.rtf-btn-outline{background:transparent;color:var(--rtf-text);border-color:rgba(var(--rtf-accent-rgb),.55);} 
.rt-ui .rtf-btn.rtf-btn-outline:hover{background:rgba(var(--rtf-accent-rgb),.06);} 

/* Admin helper box (scoped) */
.rt-ui .rtf-admin-box{
  padding:12px;
  border:1px dashed rgba(var(--rtf-accent-rgb), .35);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb), .10), rgba(0,0,0,0));
}

/* Portal: make admin helper box fully opaque (no transparency) */
.rt-ui.rtf-theme-portal .rtf-admin-box{
  background:
    radial-gradient(120% 120% at 50% 20%, rgba(var(--rtf-accent-rgb), .14), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,0)),
    #061f12 !important;
  border-color:rgba(var(--rtf-accent-rgb), .25) !important;
  opacity:1 !important;
}

/* Portal: details blocks (fx Række-indstillinger) should be opaque */
.rt-ui.rtf-theme-portal .rtf-details{
  border:1px solid rgba(var(--rtf-accent-rgb), .25);
  border-radius:16px;
  background:#061f12 !important;
  overflow:hidden;
}
.rt-ui.rtf-theme-portal .rtf-details > summary{
  padding:12px 14px;
  font-weight:900;
  color:#ffffff;
  cursor:pointer;
  background:
    linear-gradient(180deg, rgba(var(--rtf-accent-rgb), .14), rgba(0,0,0,0)),
    #061f12 !important;
  border-bottom:1px solid rgba(var(--rtf-accent-rgb), .18);
}
.rt-ui.rtf-theme-portal .rtf-details[open] > summary{
  border-bottom-color:rgba(var(--rtf-accent-rgb), .25);
}
.rt-ui.rtf-theme-portal .rtf-details > summary::-webkit-details-marker{display:none;}
.rt-ui .rtf-admin-title{
  font-weight:800;
  margin-bottom:8px;
  color:var(--rtf-accent);
}

/* Embedded variants */
.rt-ui.rtf-embed{margin:0; padding:0;}
.rt-ui.rtf-embed .rtf-wrap{max-width:none; margin:0; padding:0;}

/* Embedded preview iframes */
.rt-ui .rtf-embed-frame{
  width:100%;
  height:520px;
  border:1px solid rgba(var(--rtf-accent-rgb), .30);
  border-radius:12px;
  background:#fff;
}

/* Watermark background on portal cards */
.rt-ui.rtf-theme-portal .rtf-card{position:relative; overflow:hidden;}
.rt-ui.rtf-theme-portal .rtf-card > *{position:relative;}

/* Card header with logo */
.rt-ui .rtf-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.rt-ui .rtf-card-header-logo{height:34px;width:auto;display:block;flex:0 0 auto;}
.rt-ui .rtf-card-header h2{margin:0;}
.rt-ui .rtf-card-header .rtf-hint{margin:4px 0 0 0;}

/* =====================================================
   Public events list + filters
   ===================================================== */
.rt-ui .rtf-meta{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:13px;color:var(--rtf-muted);}
.rt-ui .rtf-meta span{white-space:nowrap;}

.rt-ui .rtf-public-filters{
  margin-top:12px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.14);
  background:linear-gradient(180deg, rgba(15,23,42,.04), rgba(0,0,0,0));
  padding:14px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.rt-ui .rtf-public-filters input[type="text"],
.rt-ui .rtf-public-filters input[type="email"],
.rt-ui .rtf-public-filters input[type="url"],
.rt-ui .rtf-public-filters input[type="number"],
.rt-ui .rtf-public-filters input[type="date"],
.rt-ui .rtf-public-filters input[type="time"],
.rt-ui .rtf-public-filters select,
.rt-ui .rtf-public-filters textarea{
  width:100%;
  border:1px solid rgba(15,23,42,.18);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}
.rt-ui .rtf-public-filters input:focus,
.rt-ui .rtf-public-filters select:focus,
.rt-ui .rtf-public-filters textarea:focus{
  border-color:rgba(var(--rtf-accent-rgb),.55);
  box-shadow:0 0 0 4px rgba(var(--rtf-accent-rgb),.14);
}
.rt-ui .rtf-filter-row{display:flex;flex-direction:column;gap:6px;min-width:170px;flex:1;}
.rt-ui .rtf-filter-row label{font-weight:800;font-size:12px;letter-spacing:.2px;color:#111;}
.rt-ui .rtf-filter-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}

.rt-ui .rtf-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.rt-ui .rtf-event-card{
  border:1px solid rgba(15,23,42,.14);
  border-radius:16px;
  background:#fff;
  padding:14px;
}
.rt-ui .rtf-event-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.rt-ui .rtf-event-head h3{margin:0;font-size:16px;line-height:1.25;}
.rt-ui .rtf-event-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px;}

.rt-ui .rtf-pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.rt-ui .rtf-page{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  height:34px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.18);
  background:#fff;
  color:#111;
  text-decoration:none;
  font-weight:900;
  font-size:13px;
}
.rt-ui .rtf-page:hover{background:rgba(15,23,42,.04);}
.rt-ui .rtf-page.is-active{border-color:rgba(var(--rtf-accent-rgb),.55);background:rgba(var(--rtf-accent-rgb),.10);color:var(--rtf-accent-dark);}

@media (max-width: 980px){
  .rt-ui .rtf-event-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 640px){
  .rt-ui .rtf-event-grid{grid-template-columns:1fr;}
  .rt-ui .rtf-filter-row{min-width:100%;}
  .rt-ui .rtf-filter-actions{width:100%;}
}

/* Portal variants of the blocks above */
.rt-ui.rtf-theme-portal .rtf-meta{color:rgba(255,255,255,.70);}
.rt-ui.rtf-theme-portal .rtf-public-filters{
  border-color:rgba(var(--rtf-accent-rgb),.35);
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb),.14), rgba(0,0,0,0));
}
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="text"],
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="email"],
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="url"],
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="number"],
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="date"],
.rt-ui.rtf-theme-portal .rtf-public-filters input[type="time"],
.rt-ui.rtf-theme-portal .rtf-public-filters select,
.rt-ui.rtf-theme-portal .rtf-public-filters textarea{
  background:#000000 !important;
  color:#ffffff !important;
  border:1px solid rgba(var(--rtf-accent-rgb),.55) !important;
}
.rt-ui.rtf-theme-portal .rtf-public-filters input::placeholder,
.rt-ui.rtf-theme-portal .rtf-public-filters textarea::placeholder{color:rgba(255,255,255,.50);}
.rt-ui.rtf-theme-portal .rtf-public-filters select{color:var(--rtf-accent) !important;}
.rt-ui.rtf-theme-portal .rtf-filter-row label{color:var(--rtf-accent);}
.rt-ui.rtf-theme-portal .rtf-event-card{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:
    radial-gradient(120% 120% at 50% 20%, rgba(var(--rtf-accent-rgb),.12), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0)),
    #041a0f;
}
.rt-ui.rtf-theme-portal .rtf-event-head h3{color:#fff;}
.rt-ui.rtf-theme-portal .rtf-page{background:transparent;color:#fff;border-color:rgba(var(--rtf-accent-rgb),.35);}
.rt-ui.rtf-theme-portal .rtf-page:hover{background:rgba(var(--rtf-accent-rgb),.06);}
.rt-ui.rtf-theme-portal .rtf-page.is-active{border-color:rgba(var(--rtf-accent-rgb),.55);background:rgba(var(--rtf-accent-rgb),.14);color:#ffffff;}

/* =====================================================
   Landing (premium dark) – used by [rtf_portal_frontpage]
   NOTE: scoped to .rt-ui.rtf-landing so portal theme is unaffected.
   ===================================================== */
.rt-ui.rtf-landing{
  --rtf-landing-bg:#070708;
  --rtf-landing-card:#0f0f12;
  --rtf-landing-card2:#0b0b0e;
  --rtf-landing-muted:rgba(255,255,255,.72);
  --rtf-landing-border:rgba(var(--rtf-accent-rgb),.30);
  /* Stabil base-size så Elementor/tema ikke “puster” teksten op i sidepanelet */
  font-size:15px;
  line-height:1.45;
}

.rt-ui.rtf-landing .rtf-landing-shell{
  max-width:1100px;
  margin:0 auto;
  padding:22px;
  border-radius:18px;
  border:1px solid var(--rtf-landing-border);
  box-shadow:0 22px 70px rgba(0,0,0,.55);
  background:
    radial-gradient(120% 120% at 50% 20%, rgba(var(--rtf-accent-rgb),.18), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0)),
    var(--rtf-landing-bg);
}

.rt-ui.rtf-landing .rtf-landing-grid{
  display:grid;
  grid-template-columns:1.65fr .95fr;
  gap:16px;
  align-items:start;
}

@media (max-width: 980px){
  .rt-ui.rtf-landing .rtf-landing-grid{grid-template-columns:1fr;}
}

.rt-ui.rtf-landing .rtf-landing-main,
.rt-ui.rtf-landing .rtf-landing-aside{color:#fff;}

.rt-ui.rtf-landing .rtf-badge{
  font-weight:900;
  font-size:13px;
  letter-spacing:.8px;
  text-transform:uppercase;
  /* Use same green tone as the page/sides */
  color:rgba(var(--rtf-accent-rgb),.95);
}

/* Hero: logo + title */
.rt-ui.rtf-landing .rtf-hero-title-row{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin:12px 0 10px 0;
}

.rt-ui.rtf-landing .rtf-hero-title-logo{
  width:72px;
  height:auto;
  flex:0 0 auto;
  display:block;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.45));
}

.rt-ui.rtf-landing .rtf-hero-title{
  margin:0;
  font-size:40px; /* 4px smaller */
  line-height:1.06;
  font-weight:900;
  letter-spacing:.2px;
  text-transform:uppercase;
}

@media (max-width: 520px){
  .rt-ui.rtf-landing .rtf-hero-title-row{gap:10px; margin:10px 0 10px 0;}
  .rt-ui.rtf-landing .rtf-hero-title-logo{width:54px;}
  .rt-ui.rtf-landing .rtf-hero-title{font-size:28px;}
}

.rt-ui.rtf-landing .rtf-hero-sub{
  margin:0 0 14px 0;
  color:var(--rtf-landing-muted);
  font-size:15px;
  line-height:1.45;
}

.rt-ui.rtf-landing .rtf-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;}

/* Fix: outline button must be readable on dark landing */
.rt-ui.rtf-landing .rtf-btn.rtf-btn-outline{
  color:#ffffff;
  background:transparent;
  border-color:rgba(var(--rtf-accent-rgb),.60);
}
.rt-ui.rtf-landing .rtf-btn.rtf-btn-outline:hover{background:rgba(var(--rtf-accent-rgb),.12);}

.rt-ui.rtf-landing .rtf-section-title{
  margin:18px 0 6px 0;
  font-size:26px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.2px;
}

.rt-ui.rtf-landing .rtf-section-sub{
  margin:0 0 10px 0;
  color:var(--rtf-landing-muted);
  font-size:13px;
}

.rt-ui.rtf-landing .rtf-steps{display:grid !important;gap:12px;margin-top:12px;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.rt-ui.rtf-landing .rtf-step{min-height:84px;}
.rt-ui.rtf-landing .rtf-step{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(var(--rtf-accent-rgb),.24);
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb),.16), rgba(0,0,0,0));
}
.rt-ui.rtf-landing .rtf-step-num{
  width:28px;
  height:28px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:var(--rtf-accent);
  border:1px solid rgba(var(--rtf-accent-rgb),.40);
  background:rgba(var(--rtf-accent-rgb),.14);
}
.rt-ui.rtf-landing .rtf-step-title{font-weight:900;letter-spacing:.2px;}
.rt-ui.rtf-landing .rtf-step-desc{margin-top:2px;color:var(--rtf-landing-muted);font-size:13px;}

/* Packages card (dark) */
.rt-ui.rtf-landing .rtf-card.rtf-card-dark{
  border:1px solid rgba(var(--rtf-accent-rgb),.35);
  border-radius:18px;
  box-shadow:0 12px 35px rgba(0,0,0,.45);
  background:
    radial-gradient(120% 120% at 50% 20%, rgba(var(--rtf-accent-rgb),.18), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,0)),
    var(--rtf-landing-card);
  color:#ffffff;
}

.rt-ui.rtf-landing .rtf-card-title{margin:0 0 8px 0;font-weight:900;letter-spacing:.2px;color:var(--rtf-accent);}
.rt-ui.rtf-landing .rtf-card-sub{margin:0 0 12px 0;color:var(--rtf-landing-muted);font-size:13px;}

/* Keep right-side column (login / mine stævner / admin tools) compact */
.rt-ui.rtf-landing .rtf-landing-aside h3,
.rt-ui.rtf-landing .rtf-landing-aside .rtf-card-title{font-size:14px;line-height:1.15;}
.rt-ui.rtf-landing .rtf-landing-aside p,
.rt-ui.rtf-landing .rtf-landing-aside .rtf-landing-login-hint,
.rt-ui.rtf-landing .rtf-landing-aside .rtf-card-sub{font-size:13px;line-height:1.45;}
.rt-ui.rtf-landing .rtf-landing-aside .rtf-mini-title{font-size:14px;line-height:1.2;}
.rt-ui.rtf-landing .rtf-landing-aside .rtf-quick-link-title{font-size:13px;line-height:1.2;}
.rt-ui.rtf-landing .rtf-landing-aside .rtf-quick-link-desc{font-size:11px;}
.rt-ui.rtf-landing .rtf-landing-aside .rtf-btn{font-size:13px;}

.rt-ui.rtf-landing .rtf-package-list{display:grid;gap:10px;margin-top:10px;}
.rt-ui.rtf-landing .rtf-package{
  border:1px solid rgba(var(--rtf-accent-rgb),.22);
  border-radius:14px;
  padding:12px;
  background:rgba(var(--rtf-accent-rgb),.08);
}
.rt-ui.rtf-landing .rtf-package-name{font-weight:900;letter-spacing:.2px;font-size:16px;line-height:1.15;}
.rt-ui.rtf-landing .rtf-package-price{margin-top:4px;color:var(--rtf-landing-muted);font-size:13px;}
.rt-ui.rtf-landing .rtf-btn.rtf-btn-wide{width:100%;margin-top:10px;}

/* Logged-in "Mine stævner" list */
.rt-ui.rtf-landing .rtf-mini-list{display:grid;gap:10px;margin-top:10px;}
.rt-ui.rtf-landing .rtf-mini-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:10px 10px;
  border-radius:14px;
  border:1px solid rgba(var(--rtf-accent-rgb),.22);
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb),.10), rgba(0,0,0,0));
}
.rt-ui.rtf-landing .rtf-mini-title{font-weight:900;letter-spacing:.2px;}
.rt-ui.rtf-landing .rtf-mini-meta{margin-top:4px;color:var(--rtf-landing-muted);font-size:12px;font-weight:700;}
.rt-ui.rtf-landing .rtf-mini-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end;}
.rt-ui.rtf-landing .rtf-btn.rtf-btn-sm{padding:7px 10px;font-size:13px;border-radius:10px;}

/* Landing help section */
.rt-ui.rtf-landing .rtf-help{margin-top:18px;}
.rt-ui.rtf-landing .rtf-help-card{padding:14px;}
.rt-ui.rtf-landing .rtf-help-list{
  margin:0;
  padding-left:18px;
  color:rgba(255,255,255,.86);
  font-size:13px;
  line-height:1.5;
}
.rt-ui.rtf-landing .rtf-help-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}

@media (max-width: 720px){
  .rt-ui.rtf-landing .rtf-steps{grid-template-columns:1fr !important;}
}

/* Landing login: match the dark/green theme */
.rt-ui.rtf-landing .rtf-landing-login{margin-top:14px;}
.rt-ui.rtf-landing .rtf-landing-login .rtf-hint{color:var(--rtf-landing-muted);} 
.rt-ui.rtf-landing .rtf-landing-login a:not(.rtf-btn) {color:#ffffff;text-decoration:underline;text-decoration-color:rgba(var(--rtf-accent-rgb),.35);} 
.rt-ui.rtf-landing .rtf-landing-login a:not(.rtf-btn):hover{color:rgba(var(--rtf-accent-rgb),.95);} 
/* Ensure secondary buttons (Log ud) are readable + green */
.rt-ui.rtf-landing .rtf-btn.secondary{
  background:#ffffff;
  color:rgba(var(--rtf-accent-rgb),.95) !important;
  border:1px solid rgba(var(--rtf-accent-rgb),.55);
}
.rt-ui.rtf-landing .rtf-btn.secondary:hover{
  background:rgba(var(--rtf-accent-rgb),.08);
}


.rt-ui.rtf-landing .rtf-landing-login .rtf-login-card{width:100%;}
.rt-ui.rtf-landing .rtf-landing-login .rtf-login-card.rtf-card-dark{
  border-color:rgba(var(--rtf-accent-rgb),.26);
  background:
    radial-gradient(110% 120% at 50% 0%, rgba(var(--rtf-accent-rgb),.22), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,0));
  box-shadow:0 18px 55px rgba(0,0,0,.55);
}

.rt-ui.rtf-landing .rtf-landing-login label,
.rt-ui.rtf-landing .rtf-landing-login .rtf-label{
  color:rgba(var(--rtf-accent-rgb),.95);
  font-weight:900;
  font-size:12px;
  letter-spacing:.2px;
}

.rt-ui.rtf-landing .rtf-landing-login .rtf-input,
.rt-ui.rtf-landing .rtf-landing-login input[type="text"],
.rt-ui.rtf-landing .rtf-landing-login input[type="password"],
.rt-ui.rtf-landing .rtf-landing-login input[type="email"]{
  width:100%;
  background:#000000 !important;
  color:#ffffff !important;
  border:1px solid rgba(var(--rtf-accent-rgb),.55) !important;
  border-radius:12px;
  padding:10px 12px;
  outline:none;
}
.rt-ui.rtf-landing .rtf-landing-login .rtf-input:focus,
.rt-ui.rtf-landing .rtf-landing-login input[type="text"]:focus,
.rt-ui.rtf-landing .rtf-landing-login input[type="password"]:focus,
.rt-ui.rtf-landing .rtf-landing-login input[type="email"]:focus{
  box-shadow:0 0 0 3px rgba(var(--rtf-accent-rgb),.18);
}

.rt-ui.rtf-landing .rtf-landing-login input[type="submit"],
.rt-ui.rtf-landing .rtf-landing-login button,
.rt-ui.rtf-landing .rtf-landing-login .button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:var(--rtf-accent);
  color:#ffffff;
  border:1px solid rgba(var(--rtf-accent-rgb),.55);
  border-radius:12px;
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(0,0,0,.45);
}
.rt-ui.rtf-landing .rtf-landing-login input[type="submit"]:hover,
.rt-ui.rtf-landing .rtf-landing-login button:hover,
.rt-ui.rtf-landing .rtf-landing-login .button:hover{
  filter:brightness(1.06);
  box-shadow:0 16px 38px rgba(0,0,0,.55);
}

/* Landing: topbar + helpers */
.rt-ui.rtf-landing .rtf-landing-topbar{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  margin:0 0 14px;
}

.rt-ui.rtf-landing .rtf-card-corner-logo{
  position:absolute;
  top:12px;
  right:12px;
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  opacity:.92;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.35));
}
.rt-ui.rtf-landing .rtf-card-corner-logo img{
  width:38px;
  height:auto;
  display:block;
}

.rt-ui.rtf-landing .rtf-card-linkline{margin:6px 0 12px;}
.rt-ui.rtf-landing .rtf-link{
  color:var(--rtf-accent);
  font-weight:900;
  text-decoration:none;
  border-bottom:1px solid rgba(var(--rtf-accent-rgb),.55);
  padding-bottom:1px;
}
.rt-ui.rtf-landing .rtf-link:hover{
  color:var(--rtf-accent-dark);
  border-bottom-color:rgba(var(--rtf-accent-rgb),.85);
}

.rt-ui.rtf-landing .rtf-quick-links{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}
@media (min-width: 780px){
  .rt-ui.rtf-landing .rtf-quick-links{grid-template-columns:1fr 1fr;}
}
.rt-ui.rtf-landing .rtf-quick-link{
  display:block;
  padding:12px 12px;
  border-radius:14px;
  text-decoration:none;
  color:#ffffff;
  border:1px solid rgba(var(--rtf-accent-rgb),.25);
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb),.10), rgba(0,0,0,0));
}
.rt-ui.rtf-landing .rtf-quick-link:hover{
  border-color:rgba(var(--rtf-accent-rgb),.55);
  background:linear-gradient(180deg, rgba(var(--rtf-accent-rgb),.14), rgba(0,0,0,0));
}
.rt-ui.rtf-landing .rtf-quick-link-title{font-weight:1000;letter-spacing:.4px;}
.rt-ui.rtf-landing .rtf-quick-link-desc{opacity:.78;font-size:12px;margin-top:3px;}

/* Disabled / placeholder links (non-clickable) */
.rt-ui a[aria-disabled="true"],
.rt-ui .rtf-quick-link[aria-disabled="true"],
.rt-ui .rtf-btn[aria-disabled="true"]{
  cursor:default;
  opacity:.72;
}
.rt-ui a[aria-disabled="true"]:hover,
.rt-ui .rtf-quick-link[aria-disabled="true"]:hover,
.rt-ui .rtf-btn[aria-disabled="true"]:hover{
  filter:none;
  transform:none;
  box-shadow:none;
}



/* Subpage back button */
.rt-ui .rtf-subnav{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:0 0 14px;}
.rt-ui .rtf-subnav .rtf-btn{padding:8px 12px;font-size:13px;border-radius:12px;}


/* =====================================================
   Dark UI overrides for portal/landing components
   Fixes: white tables + dark text inside dark cards
   ===================================================== */

/* Pills / callouts */
.rt-ui.rtf-theme-portal .rtf-pill,
.rt-ui.rtf-landing .rtf-pill{
  background:rgba(0,0,0,.28);
  border-color:rgba(var(--rtf-accent-rgb),.28);
  color:rgba(255,255,255,.92);
}

.rt-ui.rtf-theme-portal .rtf-callout,
.rt-ui.rtf-landing .rtf-callout{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.18);
}

/* Notices */
.rt-ui.rtf-theme-portal .rtf-notice,
.rt-ui.rtf-landing .rtf-notice{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.16);
  color:rgba(255,255,255,.92);
}
.rt-ui.rtf-theme-portal .rtf-notice.success,
.rt-ui.rtf-landing .rtf-notice.success{
  border-color:rgba(var(--rtf-accent-rgb),.38);
  background:rgba(var(--rtf-accent-rgb),.12);
}
.rt-ui.rtf-theme-portal .rtf-notice.error,
.rt-ui.rtf-landing .rtf-notice.error{
  border-color:rgba(239,68,68,.45);
  background:rgba(239,68,68,.14);
}

/* Inline blocks */
.rt-ui.rtf-theme-portal .rtf-inline-edit,
.rt-ui.rtf-landing .rtf-inline-edit{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.14);
}

/* Tables */
.rt-ui.rtf-theme-portal .rtf-table-wrap,
.rt-ui.rtf-landing .rtf-table-wrap{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.10);
}
.rt-ui.rtf-theme-portal .rtf-table,
.rt-ui.rtf-landing .rtf-table{
  background:rgba(0,0,0,.22);
  color:rgba(255,255,255,.92);
}
.rt-ui.rtf-theme-portal .rtf-table thead th,
.rt-ui.rtf-landing .rtf-table thead th{
  background:rgba(var(--rtf-accent-rgb),.10);
  border-bottom-color:rgba(var(--rtf-accent-rgb),.22);
  color:rgba(255,255,255,.92);
}
.rt-ui.rtf-theme-portal .rtf-table td,
.rt-ui.rtf-landing .rtf-table td{
  border-bottom-color:rgba(255,255,255,.10);
  color:rgba(255,255,255,.88);
}
.rt-ui.rtf-theme-portal .rtf-table tr:hover td,
.rt-ui.rtf-landing .rtf-table tr:hover td{
  background:rgba(var(--rtf-accent-rgb),.08);
}

/* Tabs (avoid white pills on dark) */
.rt-ui.rtf-theme-portal .rtf-tab,
.rt-ui.rtf-landing .rtf-tab{
  background:rgba(0,0,0,.18);
  border-color:rgba(var(--rtf-accent-rgb),.28);
  color:rgba(255,255,255,.90);
}
.rt-ui.rtf-theme-portal .rtf-tab:hover,
.rt-ui.rtf-landing .rtf-tab:hover{background:rgba(var(--rtf-accent-rgb),.10);}
.rt-ui.rtf-theme-portal .rtf-tab.active,
.rt-ui.rtf-landing .rtf-tab.active{
  background:rgba(var(--rtf-accent-rgb),.16);
  border-color:rgba(var(--rtf-accent-rgb),.55);
  color:#ffffff;
}

/* Checkboxes labels */
.rt-ui.rtf-theme-portal .rtf-check,
.rt-ui.rtf-landing .rtf-check{color:rgba(255,255,255,.90);}



/* =====================================================
   Status pills + portal table styling
   ===================================================== */
.rt-ui .rtf-teamname{font-weight:900;letter-spacing:.1px;}

.rt-ui .rtf-tb{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:99px;border:1px solid var(--rtf-border);color:var(--rtf-muted);font-size:12px;line-height:1;cursor:help;opacity:.85;transform:translateY(-1px);}
.rt-ui .rtf-tb:hover{opacity:1;color:var(--rtf-text);}

/* Slightly tighter table for small lists */
.rt-ui .rtf-table.rtf-table-compact{min-width:520px;}
.rt-ui .rtf-table.rtf-table-compact thead th{padding:9px 10px;}
.rt-ui .rtf-table.rtf-table-compact td{padding:9px 10px;}

/* Variant pills */
.rt-ui .rtf-pill--good{border-color:rgba(16,185,129,.45);background:rgba(16,185,129,.12);color:#065f46;}
.rt-ui .rtf-pill--warn{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.12);color:#7c2d12;}
.rt-ui .rtf-pill--bad{border-color:rgba(239,68,68,.45);background:rgba(239,68,68,.12);color:#7f1d1d;}
.rt-ui .rtf-pill--neutral{border-color:rgba(15,23,42,.18);background:rgba(15,23,42,.03);color:#111;}

/* Signup: row pick highlights (MR-5) */
.rt-ui .rtf-rowpick-item.is-selected{border-color:rgba(var(--rtf-accent-rgb),.45) !important;}
.rt-ui .rtf-rowpick-item.is-assigned{border-color:rgba(var(--rtf-accent-rgb),.22) !important;background:rgba(var(--rtf-accent-rgb),.04) !important;}
.rt-ui .rtf-rowpick-item.is-missing{border-color:rgba(245,158,11,.55) !important;background:rgba(245,158,11,.08) !important;}
.rt-ui.rtf-theme-portal .rtf-rowpick-item.is-missing{background:rgba(245,158,11,.12) !important;border-color:rgba(245,158,11,.45) !important;}


/* Portal: make pills readable on dark cards */
.rt-ui.rtf-theme-portal .rtf-pill{color:#fff;background:rgba(0,0,0,.25);border-color:rgba(var(--rtf-accent-rgb),.30);}
.rt-ui.rtf-theme-portal .rtf-pill--good{background:rgba(16,185,129,.18);border-color:rgba(16,185,129,.40);color:#d1fae5;}
.rt-ui.rtf-theme-portal .rtf-pill--warn{background:rgba(245,158,11,.18);border-color:rgba(245,158,11,.45);color:#ffedd5;}
.rt-ui.rtf-theme-portal .rtf-pill--bad{background:rgba(239,68,68,.18);border-color:rgba(239,68,68,.45);color:#fee2e2;}
.rt-ui.rtf-theme-portal .rtf-pill--neutral{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.92);}

/* Portal: table should not be white */
.rt-ui.rtf-theme-portal .rtf-table-wrap{border-color:rgba(var(--rtf-accent-rgb),.25);background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,0)), #041a0f;}
.rt-ui.rtf-theme-portal .rtf-table{background:transparent;}
.rt-ui.rtf-theme-portal .rtf-table thead th{background:rgba(0,0,0,.40);color:rgba(255,255,255,.86);border-bottom:1px solid rgba(var(--rtf-accent-rgb),.25);}
.rt-ui.rtf-theme-portal .rtf-table td{color:rgba(255,255,255,.92);border-bottom:1px solid rgba(255,255,255,.08);}
.rt-ui.rtf-theme-portal .rtf-table tr:hover td{background:rgba(var(--rtf-accent-rgb),.06);}


/* =====================================================
   Pool team pills + match preview (B3C)
   ===================================================== */
.rt-ui .rtf-team-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.rt-ui .rtf-team-pill{font-weight:900;}

.rt-ui .rtf-details{border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:10px 12px;background:rgba(15,23,42,.02);}
.rt-ui .rtf-details > summary{cursor:pointer;font-weight:900;list-style:none;}
.rt-ui .rtf-details > summary::-webkit-details-marker{display:none;}

.rt-ui .rtf-match-list{margin-top:10px;display:flex;flex-direction:column;gap:8px;}
.rt-ui .rtf-match-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.70);}
.rt-ui .rtf-match-no{font-weight:900;font-size:12px;opacity:.85;}
.rt-ui .rtf-match-team{font-weight:900;}
.rt-ui .rtf-match-vs{opacity:.70;font-weight:800;}

/* Portal variant */
.rt-ui.rtf-theme-portal .rtf-details{border-color:rgba(var(--rtf-accent-rgb),.22);background:#061f12;}
.rt-ui.rtf-theme-portal .rtf-match-item{border-color:rgba(var(--rtf-accent-rgb),.22);background:rgba(0,0,0,.22);}

/* =====================================================
   Schedule (B4) – grid/list views
   ===================================================== */
.rt-ui .rtf-schedule-tabs{margin-top:12px;}
.rt-ui .rtf-schedule-table--grid td{vertical-align:top;}
.rt-ui .rtf-schedule-time{white-space:nowrap;}
.rt-ui .rtf-schedule-empty{text-align:center;opacity:.65;font-weight:900;}

.rt-ui .rtf-schedule-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 10px;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.70);
  min-height:54px;
}

.rt-ui .rtf-schedule-teams{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rt-ui .rtf-schedule-vs{opacity:.70;font-weight:900;font-size:12px;}
.rt-ui .rtf-schedule-meta{font-size:12px;opacity:.75;font-weight:800;}

/* Portal + landing variants */
.rt-ui.rtf-theme-portal .rtf-schedule-cell,
.rt-ui.rtf-landing .rtf-schedule-cell{border-color:rgba(var(--rtf-accent-rgb),.22);background:rgba(0,0,0,.22);}
.rt-ui.rtf-theme-portal .rtf-schedule-empty,
.rt-ui.rtf-landing .rtf-schedule-empty{opacity:.55;}
.rt-ui.rtf-theme-portal .rtf-schedule-meta,
.rt-ui.rtf-landing .rtf-schedule-meta{opacity:.78;}

/* =====================================================
   Results + standings (B5A)
   ===================================================== */
.rt-ui .rtf-scoreline{display:flex;align-items:center;gap:6px;margin-top:6px;}
.rt-ui .rtf-score-sep{opacity:.80;font-weight:900;}
.rt-ui .rtf-score-input{
  width:46px;
  padding:6px 8px;
  border-radius:10px;
  text-align:center;
  font-weight:900;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.85);
}
.rt-ui .rtf-score-input:disabled{opacity:.45;cursor:not-allowed;}

/* Score badge + inline editor (B5A UX)
   - Badge shows current score without opening inputs
   - Details summary toggles compact edit UI in grid view
*/
.rt-ui .rtf-score-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  width:fit-content;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.75);
}
.rt-ui.rtf-theme-portal .rtf-score-badge,
.rt-ui.rtf-landing .rtf-score-badge{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.92);
}

.rt-ui .rtf-score-edit{margin-top:6px;}
.rt-ui .rtf-score-edit summary{
  cursor:pointer;
  list-style:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-weight:900;
  font-size:12px;
  opacity:.90;
}
.rt-ui .rtf-score-edit summary::-webkit-details-marker{display:none;}
.rt-ui .rtf-score-edit summary:after{content:'▾';font-weight:900;opacity:.75;}
.rt-ui .rtf-score-edit[open] summary:after{content:'▴';}
.rt-ui .rtf-score-edit .rtf-scoreline{margin-top:6px;}


.rt-ui.rtf-theme-portal .rtf-score-input,
.rt-ui.rtf-landing .rtf-score-input{
  border-color:rgba(var(--rtf-accent-rgb),.22);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.92);
}

.rt-ui .rtf-standings-wrap{display:flex;flex-direction:column;gap:12px;}
.rt-ui .rtf-standings-card{padding:12px 12px;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.70);}
.rt-ui.rtf-theme-portal .rtf-standings-card,
.rt-ui.rtf-landing .rtf-standings-card{border-color:rgba(var(--rtf-accent-rgb),.22);background:rgba(0,0,0,.22);}

/* B5B – Kampafvikling (hurtig indtastning) */
.rt-ui .rtf-status-select{min-width:150px;}
.rt-ui .rtf-updated{opacity:.85;font-size:12px;white-space:nowrap;}
.rt-ui .rtf-play-match{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.rt-ui .rtf-schedule-table--play .rtf-scoreline{margin-top:0;}
.rt-ui .rtf-schedule-table--play tbody tr.rtf-is-dirty td:first-child{border-left:3px solid rgba(var(--rtf-accent-rgb),.70);}
.rt-ui .rtf-schedule-table--play tbody tr.rtf-is-invalid td:first-child{border-left:3px solid rgba(255,90,90,.70);}
.rt-ui .rtf-play-validation{white-space:nowrap;}

/* B6A.2 – Slutspil: score + status */
.rt-ui .rtf-playoff-table tbody tr.rtf-is-dirty td:first-child{border-left:3px solid rgba(var(--rtf-accent-rgb),.70);}
.rt-ui .rtf-playoff-table tbody tr.rtf-is-invalid td:first-child{border-left:3px solid rgba(255,90,90,.70);}
.rt-ui .rtf-playoff-table tbody tr.rtf-flash-invalid td{animation:rtfFlashInvalid .65s ease;}

/* B5B.3 – Kampafvikling: quick status + tastatur */
.rt-ui .rtf-status-cell{display:flex;flex-direction:column;gap:6px;}
.rt-ui .rtf-status-quick{display:flex;gap:6px;flex-wrap:wrap;}
.rt-ui .rtf-btn.xs{padding:5px 8px;font-size:12px;border-radius:10px;line-height:1;}
.rt-ui .rtf-status-btn.is-active{background:rgba(var(--rtf-accent-rgb),.12);border-color:rgba(var(--rtf-accent-rgb),.85);}
.rt-ui .rtf-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:none;}
.rt-ui .rtf-schedule-table--play tbody tr.rtf-flash-invalid td{animation:rtfFlashInvalid .65s ease;}
@keyframes rtfFlashInvalid{0%{background:rgba(255,90,90,.10);}50%{background:rgba(255,90,90,.18);}100%{background:transparent;}}

/* B5B.4 – Kampafvikling: "Næste åbne" navigation */
.rt-ui .rtf-schedule-table--play tbody tr.rtf-nav-focus td{animation:rtfNavFocus .9s ease;}
@keyframes rtfNavFocus{0%{background:rgba(var(--rtf-accent-rgb),.06);}50%{background:rgba(var(--rtf-accent-rgb),.12);}100%{background:transparent;}}

/* Dan turnering – simple accordions (cards) */
.rt-ui .rtf-card.rtf-collapsible .rtf-collapsible-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  user-select:none;
}
.rt-ui .rtf-card.rtf-collapsible .rtf-collapsible-head h3{
  margin:0;
}
.rt-ui .rtf-team-headtext{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.rt-ui .rtf-team-summary{
  font-size:12px;
  opacity:.8;
  line-height:1.3;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
.rt-ui .rtf-card.rtf-collapsible .rtf-caret::before{
  content:'▾';
  display:inline-block;
  transform:rotate(-90deg);
  transition:transform .15s ease;
  opacity:.85;
}
.rt-ui .rtf-card.rtf-collapsible.is-open .rtf-caret::before{
  transform:rotate(0deg);
}
.rt-ui .rtf-card.rtf-collapsible .rtf-collapsible-body{
  margin-top:10px;
}
.rt-ui .rtf-card.rtf-collapsible .rtf-collapsible-body[hidden]{display:none !important;}

/* v0.3.60 – portal tweaks: public links + payment info */
.rt-ui.rtf-theme-portal .rtf-public-link{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
}
.rt-ui.rtf-theme-portal .rtf-public-link span{color:#ffffff;}
.rt-ui.rtf-theme-portal .rtf-public-link a{color:rgba(255,255,255,.90);}
.rt-ui.rtf-theme-portal .rtf-public-link a:hover{color:#ffffff;}

/* B5E-4: QR in portal theme (avoid transparency issues) */
.rt-ui.rtf-theme-portal .rtf-sharebox{
  background:#061f12;
  border-color:rgba(var(--rtf-accent-rgb),.35);
}
.rt-ui.rtf-theme-portal .rtf-qr-item{
  background:#061f12;
  border-color:rgba(255,255,255,.14);
}
.rt-ui.rtf-theme-portal .rtf-qr-title{color:#ffffff;}
.rt-ui.rtf-theme-portal .rtf-qr-link a{color:rgba(255,255,255,.92);}
.rt-ui.rtf-theme-portal .rtf-qr-link a:hover{color:#ffffff;}
.rt-ui.rtf-theme-portal .rtf-qr-imgwrap{background:#ffffff; border-color:rgba(255,255,255,.18);}

.rt-ui.rtf-theme-portal .rtf-payment-info{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
}
.rt-ui.rtf-theme-portal .rtf-payment-info .rtf-hint{color:rgba(255,255,255,.70);}
.rt-ui.rtf-theme-portal .rtf-payment-info .rtf-mp-number{font-weight:800;letter-spacing:.04em;}

/* v0.3.71 – B5B-4: lock label for confirmed matches (club/"se som klub") */
.rt-ui .rtf-lock{font-size:12px;opacity:.85;white-space:nowrap}
.rt-ui .rtf-status-cell .rtf-lock{margin-top:4px}

/* v0.3.74 – tooltips */
.rt-ui{
  --rtf-tip-surface: rgba(255,255,255,.98);
  --rtf-tip-text: #0f172a;
  --rtf-tip-border: rgba(15,23,42,.16);
  --rtf-tip-shadow: 0 18px 40px rgba(15,23,42,.18);
}
.rt-ui.rtf-theme-portal{
  --rtf-tip-surface: rgba(7, 24, 14, .98);
  --rtf-tip-text: rgba(255,255,255,.92);
  --rtf-tip-border: rgba(255,255,255,.18);
  --rtf-tip-shadow: 0 18px 40px rgba(0,0,0,.55);
}
.rt-ui .rtf-tip{display:inline-flex;align-items:center;position:relative;margin-left:6px;vertical-align:middle;}
.rt-ui .rtf-tip-btn{
  width:18px;height:18px;min-width:18px;min-height:18px;
  border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:900;font-size:12px;line-height:1;
  cursor:pointer;
  border:1px solid rgba(15,23,42,.2);
  background:rgba(255,255,255,.9);
  color:#0f172a;
  padding:0;
}
.rt-ui.rtf-theme-portal .rtf-tip-btn{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.92);
}
.rt-ui .rtf-tip-btn:hover{transform:translateY(-1px);}
.rt-ui .rtf-tip-pop{
  position:absolute;
  z-index:50;
  left:0;
  top:calc(100% + 8px);
  min-width:240px;
  max-width:360px;
  padding:10px 12px;
  border-radius:12px;
  background:var(--rtf-tip-surface);
  color:var(--rtf-tip-text);
  border:1px solid var(--rtf-tip-border);
  box-shadow:var(--rtf-tip-shadow);
}
.rt-ui .rtf-tip-pop .rtf-hint{color:inherit;opacity:.80;}
.rt-ui .rtf-tip-pop[hidden]{display:none !important;}


/* v0.3.98 – B5E-3: Public scoreboard (skærmvisning) */
.rt-ui .rtf-scoreboard-kpis{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.rt-ui .rtf-kpi{
  border:1px solid rgba(15,23,42,.12);
  background:rgba(15,23,42,.03);
  border-radius:14px;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.rt-ui.rtf-theme-portal .rtf-kpi{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
}
.rt-ui .rtf-kpi-num{
  font-size:28px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1;
}
.rt-ui .rtf-kpi-label{
  font-size:12px;
  opacity:.8;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.rt-ui .rtf-scoreboard-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
@media (min-width: 820px){
  .rt-ui .rtf-scoreboard-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
}
@media (min-width: 1180px){
  .rt-ui .rtf-scoreboard-grid{grid-template-columns:repeat(3, minmax(0, 1fr));}
}

.rt-ui .rtf-scoreboard-col h3{font-size:16px;}
.rt-ui .rtf-scoreboard-list{display:flex;flex-direction:column;gap:10px;}

.rt-ui .rtf-sb-item{
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.02);
  border-radius:14px;
  padding:10px 10px;
}
.rt-ui.rtf-theme-portal .rtf-sb-item{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
}

.rt-ui .rtf-sb-meta{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  align-items:center;
}
.rt-ui .rtf-sb-main{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-top:8px;
}
.rt-ui .rtf-sb-teams{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:10px;
  align-items:center;
  min-width:0;
  flex:1;
}
.rt-ui .rtf-sb-team{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rt-ui .rtf-sb-vs{
  font-size:12px;
  opacity:.75;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rt-ui .rtf-sb-score{
  font-size:22px;
  font-weight:900;
  letter-spacing:.02em;
  padding:4px 10px;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.14);
  background:rgba(15,23,42,.04);
}
.rt-ui.rtf-theme-portal .rtf-sb-score{
  border-color:rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);
}
.rt-ui .rtf-sb-status{white-space:nowrap;}

.rt-ui .rtf-sb-pool{
  border:1px solid rgba(15,23,42,.10);
  border-radius:14px;
  padding:10px 10px;
  background:rgba(255,255,255,.02);
}
.rt-ui.rtf-theme-portal .rtf-sb-pool{
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
}

.rt-ui .rtf-sb-toplist{display:flex;flex-direction:column;gap:8px;}
.rt-ui .rtf-sb-toprow{
  display:flex;
  gap:10px;
  align-items:center;
}
.rt-ui .rtf-sb-rank{
  width:22px;
  height:22px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
  border:1px solid rgba(15,23,42,.14);
  background:rgba(15,23,42,.04);
}
.rt-ui.rtf-theme-portal .rtf-sb-rank{
  border-color:rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);
}
.rt-ui .rtf-sb-topteam{
  flex:1;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rt-ui .rtf-sb-topstats{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}


/* B5F-3: Public view – toggle referee column */
.rt-ui .rtf-public-toggle{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.rt-ui .rtf-switch{
  display:inline-flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  user-select:none;
  padding:6px 10px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:999px;
  background:rgba(15,23,42,.03);
  font-weight:800;
  font-size:13px;
  color:var(--rtf-text);
}
.rt-ui.rtf-theme-portal .rtf-switch{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#ffffff;
}

.rt-ui .rtf-switch-ui{
  width:42px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.16);
  background:rgba(15,23,42,.06);
  position:relative;
  flex:0 0 auto;
}
.rt-ui.rtf-theme-portal .rtf-switch-ui{
  border-color:rgba(255,255,255,.18);
  background:rgba(0,0,0,.25);
}

.rt-ui .rtf-switch-ui:after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid rgba(15,23,42,.18);
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}
.rt-ui.rtf-theme-portal .rtf-switch-ui:after{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.95);
}

.rt-ui #rtf-public-show-ref:checked ~ .rtf-public-controls .rtf-switch-ui{
  border-color:rgba(var(--rtf-accent-rgb), .55);
  background:rgba(var(--rtf-accent-rgb), .18);
}
.rt-ui #rtf-public-show-ref:checked ~ .rtf-public-controls .rtf-switch-ui:after{
  transform:translateX(18px);
  background:var(--rtf-accent);
  border-color:rgba(var(--rtf-accent-rgb), .8);
}

/* Hide referee column by default (toggle shows it) */
.rt-ui #rtf-public-show-ref:not(:checked) ~ #rtf-public-program .rtf-col-ref{
  display:none;
}
.rt-ui #rtf-public-show-ref:checked ~ #rtf-public-program .rtf-col-ref{
  display:table-cell;
}

