/* Shared Online/Offline refinement. Existing CI roles and screen-only layout;
   print, measurement geometry and training/status colors remain authoritative. */
@media screen {
  html:root[data-fliq-ci="8.1"] body:has(#appShell),
  html:root[data-fliq-ci="8.1"] body:has(.app-shell) {
    background: var(--fliq8-muted);
  }
  html:root[data-fliq-ci="8.1"] #mainContent {
    background: var(--fliq8-muted);
  }
  html:root[data-fliq-ci="8.1"] :is(.page-heading,.page-header) {
    margin-bottom: 12px;
    gap: 12px;
  }
  html:root[data-fliq-ci="8.1"] :is(.athlete-home-shell,.coach-center-shell) {
    gap: 12px;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent :is(.athlete-home-hero,.daily-check-in-card,.role-dashboard-metric,.home-daily-state,.role-dashboard-card) {
    min-height: 0;
    padding: 16px;
    border-radius: 8px;
    box-shadow: none;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero {
    grid-template-columns: minmax(0,1fr) auto;
    gap: 16px;
    background: var(--fliq8-surface);
    color: var(--fliq8-text);
    border: 1px solid var(--fliq8-divider);
    border-inline-start: 4px solid var(--fliq-training-type-accent,var(--fliq81-plan-accent));
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero :is(h2,.role-dashboard-meta) {
    color: var(--fliq8-text);
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero .eyebrow {
    color: var(--fliq81-plan-accent);
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero h2 {
    font-size: 18px;
    margin-block: 4px 8px;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    max-width: 440px;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero-actions .button {
    width: auto;
    flex: 1 1 auto;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .daily-check-in-card > header {
    gap: 12px;
    align-items: center;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .home-daily-state {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    background: var(--fliq8-surface);
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .home-daily-state .daily-training-state {
    margin: 0;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .home-daily-state .daily-training-state-context {
    flex: 1 1 240px;
    min-width: 0;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-metrics {
    gap: 0;
    border: 1px solid var(--fliq8-divider);
    border-radius: 8px;
    background: var(--fliq8-surface);
    overflow: hidden;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-metrics .role-dashboard-metric {
    padding: 12px 16px;
    border: 0;
    border-inline-end: 1px solid var(--fliq8-divider);
    border-radius: 0;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-metrics .role-dashboard-metric:last-child {
    border-inline-end: 0;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-grid {
    gap: 12px;
    align-items: stretch;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-card :is(header,footer) {
    margin: 0;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-card footer {
    margin-top: 12px;
  }
  html:root[data-fliq-ci="8.1"] :is(#calendarKpis,.calendar-kpis) {
    margin-block: 12px;
    gap: 8px;
  }
  html:root[data-fliq-ci="8.1"] :is(#calendarKpis,.calendar-kpis) > article {
    min-height: 0;
    padding: 8px 12px;
  }
  html:root[data-fliq-ci="8.1"] :is(.profile-detail-section,.provider-connection-card) {
    box-shadow: none;
    border-radius: 8px;
  }
  html:root[data-fliq-ci="8.1"] .provider-connection-card {
    padding: 16px;
  }
  html:root[data-fliq-ci="8.1"] #calendar .offline-session-trigger {
    grid-template-columns: minmax(0,1fr);
  }
  html:root[data-fliq-ci="8.1"] .session-card-title {
    overflow-wrap: anywhere;
  }
  /* Keep the overview a single quiet strip, with straight internal dividers. */
  html:root[data-fliq-ci="8.1"] #dashboardContent .coach-center-hero-stats {
    overflow: hidden;
    background: var(--fliq8-surface);
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .coach-center-hero-stats .role-dashboard-metric {
    padding: 12px 16px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .coach-center-hero-stats .role-dashboard-metric strong {
    font-variant-numeric: tabular-nums;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent .coach-athlete-card:focus-within {
    border-color: var(--fliq8-control);
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent [data-dashboard-plan-athlete] {
    border-color: var(--fliq81-plan-accent);
    color: var(--fliq81-plan-accent);
    background: var(--fliq81-plan-tint);
    font-weight: 600;
  }
  html:root[data-fliq-ci="8.1"] #dashboardContent [data-dashboard-plan-athlete]:hover {
    background: var(--fliq8-surface);
  }
  @media (max-width: 600px) {
    html:root[data-fliq-ci="8.1"] #mainContent .page-heading .planiq-page-brand {
      width: 160px;
      max-width: 100%;
    }
    html:root[data-fliq-ci="8.1"] #primaryNav > a,
    html:root[data-fliq-ci="8.1"] #primaryNav > details > summary {
      padding: 8px 4px;
      gap: 4px;
      word-break: normal;
      overflow-wrap: normal;
    }
  }
  @media (max-width: 767px) {
    html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero {
      grid-template-columns: minmax(0,1fr);
    }
    html:root[data-fliq-ci="8.1"] #dashboardContent .athlete-home-hero-actions {
      max-width: none;
    }
    html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-metrics .role-dashboard-metric:nth-child(2) {
      border-inline-end: 0;
    }
    html:root[data-fliq-ci="8.1"] #dashboardContent .role-dashboard-metrics .role-dashboard-metric:nth-child(-n+2) {
      border-bottom: 1px solid var(--fliq8-divider);
    }
  }
}
