/* Host isolation only. All page/card/table/filter typography is original CSS. */
.platform-ui{font-family:var(--font-ui);font-size:14px;color:var(--text);background:var(--bg);min-width:0}
.platform-ui.original-public{padding-top:var(--asol-site-header-offset,80px);--platform-host-z:1030}
.platform-ui.original-public .sitePopupLayer{z-index:calc(var(--platform-host-z) + 50)}
.platform-ui.original-public .slipSheetRoot{z-index:calc(var(--platform-host-z) + 94)}
.platform-ui.original-public :is(.nvOverlay,.nenetvModal){z-index:calc(var(--platform-host-z) + 120)}
.platform-ui.original-public .nvToastStack{z-index:calc(var(--platform-host-z) + 130)}
.platform-ui.original-public .userCardLayer{z-index:calc(var(--platform-host-z) + 140)}
.platform-ui .nvBtn.primary{background:linear-gradient(180deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 82%,#000));box-shadow:0 6px 14px var(--accent-primary-soft)}
.platform-ui .opsApp{--admin-primary:var(--accent-primary);--admin-primary-hover:var(--accent-primary-hover);--admin-primary-soft:var(--accent-primary-soft);--admin-link:var(--accent)}
/* Operator controls share the fixed host header, unlike the original standalone shell. */
.platform-ui .opsApp{padding-top:var(--asol-site-header-offset,80px)}
.platform-ui .opsTop{top:var(--asol-site-header-offset,80px)}
.platform-ui .opsSide{top:var(--asol-site-header-offset,80px);height:calc(100dvh - var(--asol-site-header-offset,80px))}
@media(max-width:1100px){
  .platform-ui .opsSide{top:0;height:100dvh;z-index:1150}
  .platform-ui .opsNavBackdrop{z-index:1149}
}
.platform-ui .signupWelcomeButton{background:var(--accent-primary)}
.platform-ui .signupWelcomeButton:hover{background:var(--accent-primary-hover)}
.platform-ui .signupWelcomeEyebrow{color:var(--accent-primary)}
.platform-ui .platform-pending{margin-left:auto;font-size:10px;opacity:.65}
.platform-ui .onlive-logo{display:inline-flex}
.platform-ui .opsBrand .onlive-logo{font-size:22px}
.platform-ui .platform-service-status{width:min(1660px,calc(100% - 64px));margin:12px auto;font-size:12px;color:var(--muted)}
.platform-ui .platform-settings{display:grid;gap:18px;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.platform-ui .platform-settings h2{margin:0;font-size:18px}
.platform-ui .platform-settings p{margin:0;font-size:13px;line-height:1.7}
.platform-ui .platform-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.platform-ui .platform-palette label{display:flex;align-items:center;gap:10px;font-size:13px}
.platform-ui .platform-palette input{width:42px;height:36px;padding:2px;border:1px solid var(--line);border-radius:6px}
.platform-ui .platform-toolbar{display:flex;flex-wrap:wrap;gap:8px}
.platform-ui .platform-preview{padding:24px;border:1px solid var(--line);border-radius:12px}
.platform-ui .platform-preview a{text-decoration:underline}
.platform-ui .platform-preview button{padding:10px 18px;border:0;border-radius:9px;color:white}
@media(max-width:760px){.platform-ui .platform-palette{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-ui .platform-service-status{width:calc(100% - 24px)}}

/* Host tokens replace only presentation colors; status/team/tier tokens stay original. */
.platform-ui[data-theme] {
  --hd-bg:var(--bg); --hd-surface:var(--surface); --hd-soft:var(--soft);
  --hd-text:var(--text); --hd-secondary:var(--text-secondary); --hd-muted:var(--muted);
  --hd-line:var(--line); --hd-border:var(--border-soft); --hd-blue:var(--accent);
}
.platform-ui.original-public {
  --onlive-content-width:calc(100% - 44px);
}
.platform-ui.original-public :is(.wrap,.authPage,.platform-service-status) {
  width:var(--onlive-content-width);
  max-width:100%;
  margin-inline:auto;
}
.platform-ui.original-public .wrap .wrap { width:100%; }
.platform-ui.original-public .authPage { padding-inline:0; }
.platform-ui.original-public :is(.pageWrap,.pageBody,.shopMain,.shopBody,.sportsScoreTableWrap) {
  min-width:0;
}
.platform-ui.original-public .bcStage .bcPlayer {
  max-width:100%;
  width:100%;
  max-height:none;
}
.platform-ui.original-public .shopDesk.is-gift .shopCatalog {
  grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));
}
.platform-ui.original-public .partnerGrid {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}
.platform-ui.original-public[data-theme] .pageHero {
  --ph-ice-0:var(--surface); --ph-ice-1:var(--surface-soft); --ph-ice-2:var(--surface-elevated);
  --ph-tile-0:var(--surface); --ph-tile-1:var(--soft); --ph-tile-line:var(--line);
  --ph-title:var(--text-primary); --ph-body:var(--text-secondary); --ph-eyebrow:var(--text-muted);
  --ph-icon:var(--accent); --ph-accent:var(--accent);
}
.platform-ui.original-public[data-theme] .playerWaiting {
  --pw-bg:var(--bg); --pw-bg-glow:var(--accent-primary-soft);
  --pw-grid:color-mix(in srgb,var(--accent) 8%,transparent);
  --pw-ring:color-mix(in srgb,var(--accent) 22%,transparent);
  --pw-ring-mid:color-mix(in srgb,var(--accent) 30%,transparent);
  --pw-ring-inner:color-mix(in srgb,var(--accent) 40%,transparent);
  --pw-mark-bg:var(--surface); --pw-mark-border:var(--line);
  --pw-mark-glow:var(--accent-primary-soft); --pw-play-glow:var(--accent-primary-soft);
  --pw-signal-bg:var(--surface); --pw-signal-border:var(--line);
  --pw-signal-fg:var(--text); --pw-word:var(--text);
  --pw-kicker:var(--muted); --pw-title:var(--text); --pw-hint:var(--text-secondary);
  background:radial-gradient(ellipse at 50% 42%,var(--pw-bg-glow),transparent 46%),
    linear-gradient(180deg,var(--surface),var(--bg));
}
.platform-ui.original-public .playerWaitingWordmark .onlive-logo {
  color:inherit;
  gap:.35em;
}
.platform-ui.original-public .playerWaitingWordmark .onlive-text { font-size:inherit; }
.platform-ui.original-public .playerWaitingWordmark .onlive-logo-dots { gap:.18em; }
.platform-ui.original-public .playerWaitingWordmark .onlive-logo-dot {
  width:.25em;
  height:.25em;
}
@container (max-height:220px) {
  .platform-ui.original-public .playerWaitingInner {
    width:calc(100% - 16px);
    gap:4px;
  }
  .platform-ui.original-public .playerWaitingStage { width:min(30cqmin,60px); }
  .platform-ui.original-public :is(.playerWaitingKicker,.playerWaitingWaves) { display:none; }
  .platform-ui.original-public .playerWaitingTitle { margin-top:4px; }
}
.platform-ui[data-theme] .opsApp {
  --admin-bg:var(--bg); --admin-surface:var(--surface); --admin-surface-2:var(--soft);
  --admin-text:var(--text); --admin-muted:var(--muted); --admin-line:var(--line);
}
/* SSR fallback mirrors Bootstrap's existing header max widths and inner gutter. */
@media(min-width:992px) {
  .platform-ui.original-public { --onlive-content-width:934px; }
}
@media(min-width:1200px) {
  .platform-ui.original-public { --onlive-content-width:1114px; }
}
@media(min-width:1400px) {
  .platform-ui.original-public { --onlive-content-width:1294px; }
}
@media(max-width:760px) {
  .platform-ui.original-public .shopDesk.is-gift .shopCatalog {
    grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));
  }
  .platform-ui.original-public .attSummary .attAction {
    flex-direction:column;
    align-items:stretch;
  }
  .platform-ui.original-public .attActionMain {
    width:100%;
    align-items:center;
  }
  .platform-ui.original-public .attActionControls,
  .platform-ui.original-public .attSummary .attActionBtn {
    width:100%;
    min-width:0;
  }
  .platform-ui.original-public .attSummaryStat {
    flex-direction:column;
    align-items:flex-start;
  }
  .platform-ui.original-public .attSummaryCopy { width:100%; }
  .platform-ui.original-public :is(.attActionCopy,.attSummaryCopy) {
    word-break:keep-all;
    overflow-wrap:normal;
  }
  .platform-ui.original-public .attCalHead {
    display:grid;
    grid-template-columns:var(--rect-h-sm) minmax(0,1fr) var(--rect-h-sm);
  }
  .platform-ui.original-public .attCalTitle {
    grid-column:1 / -1;
    grid-row:1;
  }
  .platform-ui.original-public .attCalTitle h2 { white-space:nowrap; }
  .platform-ui.original-public .attCalHead > a {
    grid-column:1;
    grid-row:2;
  }
  .platform-ui.original-public .attCalNav {
    grid-column:2 / -1;
    grid-row:2;
    justify-content:flex-end;
  }
  .platform-ui.original-public .attBenefitCards {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));
  }
}
