/*
 * ARA PowerLab visual system
 * This file is loaded after the legacy PowerLab styles so controls retain
 * accessible contrast even when the shared shell supplies global button rules.
 */

/* The application starts in light mode unless data-theme="dark" is explicit. */
body.powerlab-page,
body.powerlab-coach-page,
body.powerlab-athlete-page,
body.powerlab-history-page {
  --pl-surface: #ffffff;
  --pl-surface-soft: #f4f8fc;
  --pl-ink: #102238;
  --pl-ink-muted: #486074;
  --pl-border: #b7cadc;
  --pl-accent: #7b4b00;
  --pl-accent-hover: #593600;
  --pl-accent-ink: #ffffff;
  --pl-focus: #096f9e;
  --pl-danger-ink: #a6142b;
}

body[data-theme="dark"].powerlab-page,
body[data-theme="dark"].powerlab-coach-page,
body[data-theme="dark"].powerlab-athlete-page,
body[data-theme="dark"].powerlab-history-page {
  --pl-surface: #101e2d;
  --pl-surface-soft: #0b1724;
  --pl-ink: #f3f7fc;
  --pl-ink-muted: #bfd0e0;
  --pl-border: #476178;
  --pl-accent: #f3c65b;
  --pl-accent-hover: #ffe49b;
  --pl-accent-ink: #142235;
  --pl-focus: #7fd0f0;
  --pl-danger-ink: #ff9ca9;
}

body.powerlab-page .pl-wrap,
body.powerlab-coach-page .plc-wrap,
body.powerlab-athlete-page .pla,
body.powerlab-history-page .plh-wrap {
  color: var(--pl-ink);
}

body.powerlab-page .pl-card,
body.powerlab-page .pl-hero,
body.powerlab-coach-page .plc-card {
  color: var(--pl-ink) !important;
  background: var(--pl-surface) !important;
  border-color: var(--pl-border) !important;
  box-shadow: 0 10px 28px rgba(19, 45, 70, .08);
}
body.powerlab-page .pl-grid { align-items:start; }
body.powerlab-page .pl-setup-screens { display:block !important; margin-top:10px; }
body.powerlab-page .pl-setup-screens > .pl-card { width:100%; min-height:calc(100vh - 210px); }
body.powerlab-page .pl-setup-screens > .pl-card[hidden] { display:none !important; }
body.powerlab-page .pl-setup-screen-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0 0; }
body.powerlab-page .pl-setup-screen-nav button { display:grid; grid-template-columns:30px minmax(0,1fr); column-gap:9px; align-items:center; min-height:64px; padding:11px 13px; border:1px solid var(--pl-border); border-radius:14px; color:var(--pl-ink); background:var(--pl-surface); font:inherit; text-align:left; cursor:pointer; }
body.powerlab-page .pl-setup-screen-nav button > span { display:grid; width:28px; height:28px; grid-row:1 / span 2; place-items:center; border-radius:9px; color:var(--pl-accent-ink); background:var(--pl-accent); font-weight:900; }
body.powerlab-page .pl-setup-screen-nav button b { font-size:14px; }
body.powerlab-page .pl-setup-screen-nav button small { margin-top:2px; color:var(--pl-ink-muted); font-size:11px; }
body.powerlab-page .pl-setup-screen-nav button.is-active { border-color:var(--pl-accent); box-shadow:0 0 0 2px color-mix(in srgb,var(--pl-accent) 18%,transparent); }
body.powerlab-page .pl-setup-screen-nav button.is-active b { color:var(--pl-accent); }
/* Preparation console: compact, structured, and visually scannable. */
body.powerlab-page .pl-prep-console { max-width:1240px; margin-inline:auto; }
body.powerlab-page .pl-prep-console > h2 { margin-bottom:2px; font-size:22px; }
body.powerlab-page .pl-prep-subtitle { margin:0 0 16px; color:var(--pl-ink-muted); font-size:13px; line-height:1.45; }
body.powerlab-page .pl-console-label { display:flex; align-items:center; gap:9px; margin:17px 0 9px; }
body.powerlab-page .pl-console-label > span { display:grid; width:26px; height:26px; flex:0 0 26px; place-items:center; border-radius:8px; color:var(--pl-accent-ink); background:var(--pl-accent); font-size:11px; font-weight:950; }
body.powerlab-page .pl-console-label b,body.powerlab-page .pl-console-label small { display:block; }
body.powerlab-page .pl-console-label b { color:var(--pl-ink); font-size:13px; }
body.powerlab-page .pl-console-label small { margin-top:1px; color:var(--pl-ink-muted); font-size:11px; }
body.powerlab-page .pl-console-label-compact { margin-top:14px; }
body.powerlab-page .pl-console-form { padding:13px; border:1px solid var(--pl-border); border-radius:14px; background:var(--pl-surface-soft); gap:11px; }
body.powerlab-page .pl-console-form label { padding:0; }
body.powerlab-page .pl-console-form :is(input,select,textarea) { min-height:42px !important; background:var(--pl-surface) !important; }
body.powerlab-page .pl-protocol-preview { max-height:136px !important; padding:11px !important; color:var(--pl-ink) !important; background:var(--pl-surface-soft) !important; }
body.powerlab-page .pl-preflight-console { padding:13px !important; border-left:4px solid var(--pl-accent) !important; background:color-mix(in srgb,var(--pl-accent) 7%,var(--pl-surface-soft)) !important; }
body.powerlab-page .pl-action-caption { display:block; margin:14px 0 7px; color:var(--pl-ink-muted); font-size:11px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
body.powerlab-page .pl-main-actions { margin-top:0; padding:10px; border:1px solid var(--pl-border); border-radius:14px; background:var(--pl-surface-soft); }
body.powerlab-page .pl-device-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:16px; }
body.powerlab-page .pl-device-heading { grid-column:1 / -1; margin:0; }
body.powerlab-page .pl-device-grid .pl-status { margin-top:0 !important; min-height:0; padding:13px; }
body.powerlab-page .pl-device-grid .pl-status b { display:block; margin-bottom:4px; }
body.powerlab-page .pl-device-grid .pl-status .pl-actions { margin-top:10px; }
body.powerlab-page .pl-trainer-management { grid-column:1 / -1; margin-top:2px; padding:15px; border:1px solid var(--pl-border); border-radius:14px; background:var(--pl-surface-soft); }
body.powerlab-page .pl-trainer-management-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
body.powerlab-page .pl-trainer-management-head > div > span { color:var(--pl-accent); font-size:10px; font-weight:950; letter-spacing:.09em; }
body.powerlab-page .pl-trainer-management h3 { margin:3px 0; font-size:15px; }
body.powerlab-page .pl-trainer-management p { max-width:670px; margin:0; color:var(--pl-ink-muted); font-size:12px; line-height:1.4; }
body.powerlab-page .pl-trainer-management-state { padding:6px 8px; border:1px solid #c99c45; border-radius:999px; color:#795000; background:#fff6dc; font-size:11px; font-weight:900; white-space:nowrap; }
body.powerlab-page .pl-trainer-management-state[data-tone="ok"] { border-color:#4fa980; color:#075e3d; background:#ebfaf3; }
body.powerlab-page .pl-trainer-management-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:13px; }
body.powerlab-page .pl-trainer-management-grid label { display:grid; gap:5px; color:var(--pl-ink); font-size:12px; font-weight:850; }
body.powerlab-page .pl-trainer-management-grid :is(input,select,textarea) { min-height:40px; padding:8px 9px; border:1px solid var(--pl-border); border-radius:9px; color:var(--pl-ink); background:var(--pl-surface); font:inherit; }
body.powerlab-page .pl-trainer-management-note { grid-column:1 / -1; }
body.powerlab-page .pl-trainer-management-note textarea { min-height:58px; resize:vertical; }
body.powerlab-page .pl-trainer-management-safety { display:flex; gap:8px; margin-top:11px; padding:9px 10px; border-left:3px solid var(--pl-accent); border-radius:8px; color:var(--pl-ink-muted); background:color-mix(in srgb,var(--pl-accent) 8%,var(--pl-surface)); font-size:12px; line-height:1.4; }
body.powerlab-page .pl-trainer-management-safety b { color:var(--pl-ink); white-space:nowrap; }
/* Action language: color and icon identify the operation before reading the label. */
body.powerlab-page .pl-action-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:8px !important; min-height:44px !important; padding:9px 13px !important; border:1px solid var(--pl-border) !important; border-radius:10px !important; color:var(--pl-ink) !important; background:var(--pl-surface) !important; box-shadow:none !important; font-size:13px !important; font-weight:800 !important; }
body.powerlab-page .pl-action-button .pl-action-icon { display:inline-grid; width:18px; height:18px; flex:0 0 18px; color:#546d82; }
body.powerlab-page .pl-action-button .pl-action-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
body.powerlab-page .pl-action-button:hover:not(:disabled) { transform:translateY(-1px); border-color:#7897b0 !important; background:var(--pl-surface-soft) !important; }
body.powerlab-page .pl-action-button.pl-action-verify .pl-action-icon { color:#1473a5; }
body.powerlab-page .pl-action-button.pl-action-trainer .pl-action-icon { color:#1473a5; }
body.powerlab-page .pl-action-button.pl-action-hr .pl-action-icon { color:#c23851; }
body.powerlab-page .pl-action-button.pl-action-simulate .pl-action-icon { color:#6950a5; }
body.powerlab-page .pl-action-button.pl-action-queue .pl-action-icon { color:#147b58; }
body.powerlab-page .pl-action-button.pl-action-unlink { color:#9c1530 !important; border-color:#d9a5af !important; }
body.powerlab-page .pl-action-button.pl-action-unlink .pl-action-icon { color:#b4233a; }
body.powerlab-page .pl-action-button.pl-action-start { color:#fff !important; border-color:#9d6200 !important; background:#a66a00 !important; box-shadow:0 5px 12px rgba(126,80,0,.18) !important; }
body.powerlab-page .pl-action-button.pl-action-start .pl-action-icon { color:#fff !important; }
body.powerlab-page .pl-action-button.pl-action-start:hover:not(:disabled) { background:#815100 !important; border-color:#815100 !important; }
body.powerlab-page .pl-action-button.pl-action-start:disabled { color:#788998 !important; border-color:#c3d0db !important; background:#e7edf3 !important; box-shadow:none !important; cursor:not-allowed; }
body.powerlab-page .pl-action-button.pl-action-start:disabled .pl-action-icon { color:#788998 !important; }
body[data-theme="dark"].powerlab-page .pl-action-button { color:var(--pl-ink) !important; background:var(--pl-surface) !important; border-color:var(--pl-border) !important; }
body[data-theme="dark"].powerlab-page .pl-action-button.pl-action-unlink { color:#ffb9c4 !important; border-color:#7e4150 !important; }

body.powerlab-page .pl-hero {
  background: linear-gradient(135deg, #ffffff 0%, #e9f4ff 100%) !important;
}

body[data-theme="dark"].powerlab-page .pl-hero {
  background: linear-gradient(135deg, #101e2d 0%, #163a52 100%) !important;
}

body.powerlab-coach-page .plc-hero {
  color: #ffffff !important;
  background: linear-gradient(135deg, #103b59 0%, #155270 100%) !important;
  border-color: #256280 !important;
}

body.powerlab-page .pl-muted,
body.powerlab-page .pl-progress-text,
body.powerlab-page .pl-kpi span,
body.powerlab-coach-page .plc-muted,
body.powerlab-coach-page .plc-live-row small {
  color: var(--pl-ink-muted) !important;
}

/* Preparation: an explicit, touch-friendly journey without hiding safety data. */
body.powerlab-page .pl-journey {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 18px;
  padding: 10px;
  border: 1px solid var(--pl-border);
  border-radius: 15px;
  background: var(--pl-surface-soft);
}
body.powerlab-page .pl-journey button {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 8px;
  border: 0;
  border-radius: 10px;
  color: var(--pl-ink);
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}
body.powerlab-page .pl-journey button:hover { background: rgba(35, 111, 151, .10); }
body.powerlab-page .pl-journey b {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  border: 1px solid var(--pl-border);
  border-radius: 50%;
  background: var(--pl-surface);
}
body.powerlab-page .pl-journey button.is-complete b { color: #fff; background: #087d4d; border-color: #087d4d; }
body.powerlab-page .pl-journey button.is-complete b::after { content: '✓'; }
body.powerlab-page .pl-journey button.is-complete b { font-size: 0; }
body.powerlab-page .pl-journey button.is-complete b::after { font-size: 15px; }

/* Clear live-test hierarchy and data provenance. */
body.powerlab-page .pl-live-context {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: -2px 0 16px;
  padding: 10px 12px;
  border: 1px solid var(--pl-border);
  border-radius: 12px;
  color: var(--pl-ink);
  background: var(--pl-surface-soft);
}

/* Compact connection health: technical telemetry is available, not always expanded. */
body.powerlab-page .pl-diagnostic-compact { padding:18px; }
body.powerlab-page .pl-diagnostic-compact h2 { margin-bottom:12px; }
body.powerlab-page .pl-signal-board { display:grid; gap:10px; padding:12px; border:1px solid var(--pl-border); border-radius:14px; background:var(--pl-surface-soft); }
body.powerlab-page .pl-signal-main { display:flex; align-items:center; gap:9px; }
body.powerlab-page .pl-signal-main b,body.powerlab-page .pl-signal-main small { display:block; }
body.powerlab-page .pl-signal-main small { margin-top:2px; color:var(--pl-ink-muted); font-size:12px; }
body.powerlab-page .pl-signal-dot { width:13px; height:13px; border-radius:50%; background:#b7791f; box-shadow:0 0 0 4px rgba(183,121,31,.14); }
body.powerlab-page .pl-diagnostic-compact[data-connection-tone="ok"] .pl-signal-dot { background:#087d4d; box-shadow:0 0 0 4px rgba(8,125,77,.14); }
body.powerlab-page .pl-diagnostic-compact[data-connection-tone="danger"] .pl-signal-dot { background:#bd2738; box-shadow:0 0 0 4px rgba(189,39,56,.14); }
body.powerlab-page .pl-signal-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
body.powerlab-page .pl-signal-items > span { display:grid; grid-template-columns:10px minmax(0,1fr); column-gap:6px; align-items:center; padding:7px; border:1px solid var(--pl-border); border-radius:9px; color:var(--pl-ink); font-size:11px; font-weight:800; }
body.powerlab-page .pl-signal-items i { width:8px; height:8px; border-radius:50%; background:#b7791f; }
body.powerlab-page .pl-signal-items i.is-ok { background:#087d4d; }
body.powerlab-page .pl-signal-items small { grid-column:2; color:var(--pl-ink-muted); font-size:10px; font-weight:600; line-height:1.25; }
body.powerlab-page .pl-diagnostic-compact #connectionStatus { margin-top:10px; padding:8px 10px; font-size:13px; }
body.powerlab-page .pl-diagnostic-details { margin-top:10px; border-top:1px solid var(--pl-border); }
body.powerlab-page .pl-diagnostic-details summary { padding:11px 2px 2px; color:var(--pl-ink-muted); font-size:12px; font-weight:850; cursor:pointer; }
body.powerlab-page .pl-diagnostic-details[open] summary { color:var(--pl-ink); }
body.powerlab-page .pl-diagnostic-details .pl-detail { margin-top:10px; }
body.powerlab-page .pl-diagnostic-details > .pl-actions { margin:10px 0 0; }
body.powerlab-page .pl-live-context b,
body.powerlab-page .pl-live-context small { display: block; }
body.powerlab-page .pl-live-context small { margin-top: 2px; color: var(--pl-ink-muted); font-size: 12px; }
body.powerlab-page .pl-live-context-state { margin-left: auto; color: var(--pl-ink-muted); font-size: 12px; font-weight: 850; white-space: nowrap; }
body.powerlab-page .pl-pulse { width: 10px; height: 10px; border-radius: 50%; background: #087d4d; box-shadow: 0 0 0 0 rgba(8,125,77,.4); animation: pl-pulse 1.8s infinite; }
@keyframes pl-pulse { 65% { box-shadow: 0 0 0 8px rgba(8,125,77,0); } 100% { box-shadow: 0 0 0 0 rgba(8,125,77,0); } }
body.powerlab-page .pl-test-mode .pl-live-context { margin-top: 0; }
body.powerlab-page .pl-live-kpis .pl-kpi { transition: border-color .18s ease, background .18s ease, transform .18s ease; }
body.powerlab-page .pl-live-kpis .pl-kpi:hover { transform: translateY(-2px); }

/* Result scanability: the full report remains printable, with concise on-screen navigation. */
body.powerlab-page .pl-report-nav { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin: 14px 0 4px; }
body.powerlab-page .pl-report-nav [data-report-target="all"] { border-width:2px !important; }
body.powerlab-page .pl-report-nav .pl-btn { display:grid !important; justify-content:start !important; min-height:52px !important; padding:8px 11px !important; font-size:12px; text-align:left; white-space:normal; }
body.powerlab-page .pl-report-nav .pl-btn span { display:block; color:var(--pl-ink) !important; font-weight:900; }
body.powerlab-page .pl-report-nav .pl-btn small { display:block; margin-top:3px; color:var(--pl-ink-muted) !important; opacity:1; font-size:10px; font-weight:750; }
body.powerlab-page .pl-report-nav .pl-btn.primary span,
body.powerlab-page .pl-report-nav .pl-btn.primary small { color:var(--pl-accent-ink) !important; opacity:1 !important; }
body.powerlab-page .pl-report-section[hidden] { display: none !important; }
body.powerlab-page .pl-result:has(.pl-report) { background: linear-gradient(180deg, var(--pl-surface) 0%, var(--pl-surface-soft) 100%) !important; }
body.powerlab-page .pl-result-full { width:100%; max-width:none; margin-top:16px; }
body.powerlab-page.powerlab-report-mode .pl-hero,
body.powerlab-page.powerlab-report-mode #offlineBanner,
body.powerlab-page.powerlab-report-mode .pl-setup-screen-nav,
body.powerlab-page.powerlab-report-mode .pl-setup { display:none !important; }
body.powerlab-page.powerlab-report-mode .pl-wrap { max-width:1400px; padding-top:18px; }
body.powerlab-page.powerlab-report-mode .pl-result-full { margin-top:0; min-height:calc(100vh - 160px); }
body.powerlab-page .pl-result-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; padding-bottom:14px; border-bottom:1px solid var(--pl-border); }
body.powerlab-page .pl-result-toolbar h2 { margin:3px 0 0; font-size:20px; }
body.powerlab-page .pl-result-quick-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
body.powerlab-page #printReport { min-height:44px !important; color:var(--pl-accent-ink) !important; background:var(--pl-accent) !important; border-color:var(--pl-accent) !important; }
body.powerlab-page .pl-report-head,
body.powerlab-page .pl-report-head * { text-shadow:none !important; }
body.powerlab-page .pl-report-head h2 { color:#fff !important; font-weight:900 !important; }
body.powerlab-page .pl-report-head p { color:#d9edf8 !important; font-weight:600 !important; }
body.powerlab-page .pl-report-head .pl-report-brand { color:#ffd45c !important; }
body.powerlab-page .pl-report-head .pl-report-badge { color:#12364f !important; background:#fff !important; }

/* Dedicated history workspace: records do not compete with the full report. */
body.powerlab-history-page .plh-wrap { max-width:1180px; margin:0 auto; padding:22px 18px 64px; }
body.powerlab-history-page .plh-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:24px; border:1px solid #256280; border-radius:20px; color:#fff; background:linear-gradient(135deg,#103b59,#155270); }
body.powerlab-history-page .plh-hero h1 { margin:5px 0; font-size:clamp(28px,4vw,42px); }
body.powerlab-history-page .plh-hero p { max-width:700px; margin:0; color:#d8ebf7; line-height:1.5; }
body.powerlab-history-page .plh-back { display:inline-flex; align-items:center; min-height:44px; padding:10px 14px; border:1px solid rgba(255,255,255,.5); border-radius:11px; color:#fff; font-weight:850; text-decoration:none; white-space:nowrap; }
body.powerlab-history-page .plh-back:hover { background:rgba(255,255,255,.12); }
body.powerlab-history-page .plh-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; }
body.powerlab-history-page .plh-back.primary { color:#172235; border-color:#ffcf55; background:#ffcf55; }
body.powerlab-history-page .plh-card { margin-top:16px; padding:18px; border:1px solid var(--pl-border); border-radius:18px; background:var(--pl-surface); box-shadow:0 10px 28px rgba(19,45,70,.08); }
body.powerlab-history-page .plh-filters { display:grid; grid-template-columns:1.2fr .8fr 1fr; gap:12px; }
body.powerlab-history-page .plh-filters label { display:grid; gap:6px; color:var(--pl-ink); font-size:13px; font-weight:850; }
body.powerlab-history-page .plh-filters input,body.powerlab-history-page .plh-filters select { min-height:44px; padding:9px 10px; border:1px solid var(--pl-border); border-radius:10px; color:var(--pl-ink); background:var(--pl-surface); font:inherit; }
body.powerlab-history-page .plh-muted { color:var(--pl-ink-muted); }
body.powerlab-history-page .plh-list { display:grid; gap:9px; }
body.powerlab-history-page .plh-row { display:grid; grid-template-columns:34px minmax(0,1fr) auto 24px; align-items:center; gap:12px; padding:12px; border:1px solid var(--pl-border); border-radius:14px; color:var(--pl-ink); background:var(--pl-surface-soft); text-decoration:none; transition:transform .15s ease,border-color .15s ease,background .15s ease; }
body.powerlab-history-page .plh-row:hover { transform:translateY(-1px); border-color:var(--pl-accent); background:color-mix(in srgb,var(--pl-accent) 8%,var(--pl-surface)); }
body.powerlab-history-page .plh-row-icon { display:grid; width:30px; height:30px; place-items:center; border-radius:50%; color:var(--pl-accent-ink); background:var(--pl-accent); }
body.powerlab-history-page .plh-row b,body.powerlab-history-page .plh-row small { display:block; }
body.powerlab-history-page .plh-row small { margin-top:3px; color:var(--pl-ink-muted); font-size:12px; }
body.powerlab-history-page .plh-row-metrics { text-align:right; }
body.powerlab-history-page .plh-row-metrics em { display:inline-block; margin-right:6px; padding:3px 6px; border-radius:999px; color:#765000; background:#fff2c8; font-size:10px; font-style:normal; font-weight:900; text-transform:uppercase; }
body.powerlab-history-page .plh-row-metrics strong { font-size:18px; }
body.powerlab-history-page .plh-arrow { color:var(--pl-accent); font-size:20px; font-weight:900; }
body.powerlab-history-page .plh-empty { padding:44px 12px; color:var(--pl-ink-muted); text-align:center; }
body.powerlab-history-page .plh-empty span { display:grid; width:42px; height:42px; margin:0 auto 8px; place-items:center; border-radius:50%; color:var(--pl-accent); background:color-mix(in srgb,var(--pl-accent) 12%,transparent); font-size:24px; }
body.powerlab-history-page .plh-empty b { display:block; color:var(--pl-ink); }
body.powerlab-history-page .plh-empty p { margin:6px 0 0; }

/* Empty and loading states make absence of data understandable and actionable. */
body.powerlab-page .pl-empty-state { display: grid; place-items: center; min-height: 160px; text-align: center; }
body.powerlab-page .pl-empty-copy { max-width: 380px; color: var(--pl-ink-muted); }
body.powerlab-page .pl-empty-copy > span { display: grid; width: 42px; height: 42px; margin: 0 auto 10px; place-items: center; border-radius: 50%; color: var(--pl-accent); background: color-mix(in srgb, var(--pl-accent) 12%, transparent); font-size: 25px; }
body.powerlab-page .pl-empty-copy b { display: block; color: var(--pl-ink); }
body.powerlab-page .pl-empty-copy p { margin: 7px 0 0; font-size: 13px; line-height: 1.5; }
body.powerlab-page .pl-history { gap:9px; }
body.powerlab-page .pl-history-row { justify-content:space-between !important; text-align:left; }
body.powerlab-page .pl-history-row small { display:block; margin-top:2px; color:var(--pl-ink-muted); font-size:11px; font-weight:650; }
body.powerlab-page .pl-history-extra { display:grid; gap:9px; }
body.powerlab-page .pl-history-toggle { align-self:start; min-height:38px !important; padding:7px 11px !important; font-size:12px; }

/* Coach cards and protocol blocks are surfaced as a deliberate configuration workspace. */
body.powerlab-coach-page .plc-module-nav { color: var(--pl-ink); background: var(--pl-surface) !important; border-color: var(--pl-border) !important; box-shadow: 0 10px 28px rgba(19,45,70,.08); }
body.powerlab-coach-page .plc-module-nav button,
body.powerlab-coach-page .plc-module-nav a { color: var(--pl-ink) !important; }
body.powerlab-coach-page .plc-module-nav p,
body.powerlab-coach-page .plc-nav-brand small { color: var(--pl-ink-muted) !important; }
body.powerlab-coach-page .plc-module-nav button:hover,
body.powerlab-coach-page .plc-module-nav a:hover,
body.powerlab-coach-page .plc-module-nav button.is-active { color: var(--pl-ink) !important; background: color-mix(in srgb, var(--pl-accent) 15%, var(--pl-surface)) !important; border-color: color-mix(in srgb, var(--pl-accent) 40%, var(--pl-border)) !important; }
body.powerlab-coach-page .plc-kpi { color: #fff; border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.10); }
body.powerlab-coach-page .plc-kpi span { color: #d6e8f5; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
body.powerlab-coach-page .plc-block { border-left: 4px solid var(--pl-accent) !important; }
body.powerlab-coach-page .plc-block-head { padding-bottom: 9px; border-bottom: 1px solid var(--pl-border); }
body.powerlab-coach-page .plc-table tbody tr { transition: background .15s ease; }
body.powerlab-coach-page .plc-table tbody tr:hover { background: color-mix(in srgb, var(--pl-accent) 8%, transparent); }
body.powerlab-coach-page .plc-queue-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
body.powerlab-coach-page .plc-queue-item { display:grid; grid-template-columns:30px minmax(0,1fr) auto; gap:9px; align-items:center; padding:9px; border:1px solid var(--pl-border); border-radius:12px; background:var(--pl-surface-soft); }
body.powerlab-coach-page .plc-queue-order { display:grid; width:26px; height:26px; place-items:center; border-radius:50%; color:var(--pl-accent-ink); background:var(--pl-accent); font-size:12px; font-weight:900; }
body.powerlab-coach-page .plc-queue-item > div { display:flex; gap:6px; flex-wrap:wrap; }
body.powerlab-coach-page .plc-queue-item .btn { min-height:34px !important; padding:6px 9px !important; font-size:12px; }
body.powerlab-coach-page .plc-empty { padding:18px 10px; text-align:center; color:var(--pl-ink-muted); }
body.powerlab-coach-page .plc-empty span { display:grid; width:36px; height:36px; margin:0 auto 7px; place-items:center; border-radius:50%; color:var(--pl-accent); background:color-mix(in srgb,var(--pl-accent) 12%,transparent); font-size:22px; }
body.powerlab-coach-page .plc-empty b { display:block; color:var(--pl-ink); }
body.powerlab-coach-page .plc-empty p { margin:5px 0 0; font-size:13px; }

@media (prefers-reduced-motion: reduce) {
  body.powerlab-page *, body.powerlab-coach-page * { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

body.powerlab-page .pl-form input,
body.powerlab-page .pl-form select,
body.powerlab-page .pl-form textarea,
body.powerlab-coach-page .plc-form input,
body.powerlab-coach-page .plc-form select,
body.powerlab-coach-page .plc-form textarea {
  color: var(--pl-ink) !important;
  background: var(--pl-surface) !important;
  border-color: var(--pl-border) !important;
  box-shadow: none !important;
}

body.powerlab-page .pl-form input::placeholder,
body.powerlab-page .pl-form textarea::placeholder,
body.powerlab-coach-page .plc-form input::placeholder,
body.powerlab-coach-page .plc-form textarea::placeholder {
  color: var(--pl-ink-muted) !important;
  opacity: 1 !important;
}

/* Standard controls: a neutral surface with dark, readable type. */
body.powerlab-page .pl-btn,
body.powerlab-page a.pl-btn,
body.powerlab-coach-page .plc-wrap .btn,
body.powerlab-coach-page .plc-wrap a.btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 44px !important;
  padding: 10px 14px !important;
  color: var(--pl-ink) !important;
  background: var(--pl-surface) !important;
  border: 1px solid var(--pl-border) !important;
  border-radius: 11px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  box-shadow: 0 1px 1px rgba(20, 40, 60, .05) !important;
}

body.powerlab-page .pl-btn:hover:not(:disabled),
body.powerlab-coach-page .plc-wrap .btn:hover:not(:disabled) {
  color: var(--pl-ink) !important;
  background: var(--pl-surface-soft) !important;
  border-color: #6f92af !important;
}

/* Primary action and the coach entry are deliberately separate from generic .btn rules. */
body.powerlab-page .pl-btn.primary,
body.powerlab-page a.pl-btn.primary,
body.powerlab-coach-page .plc-wrap .btn.primary,
body.powerlab-coach-page .plc-wrap a.btn.primary,
body.powerlab-page #openCoachPowerLab.pl-coach-cta {
  color: var(--pl-accent-ink) !important;
  background: var(--pl-accent) !important;
  border-color: var(--pl-accent) !important;
  text-shadow: none !important;
}

body.powerlab-page .pl-btn.primary:hover:not(:disabled),
body.powerlab-coach-page .plc-wrap .btn.primary:hover:not(:disabled),
body.powerlab-page #openCoachPowerLab.pl-coach-cta:hover {
  color: var(--pl-accent-ink) !important;
  background: var(--pl-accent-hover) !important;
  border-color: var(--pl-accent-hover) !important;
}

/* Highest specificity for the prominent route shown in the PowerLab header. */
body.powerlab-page #openCoachPowerLab.pl-coach-cta,
body.powerlab-page #openCoachPowerLab.pl-coach-cta:visited {
  min-height: 48px !important;
  padding: 12px 18px !important;
  font-size: 14px !important;
  letter-spacing: .01em !important;
  color: var(--pl-accent-ink) !important;
  background: var(--pl-accent) !important;
  border-color: var(--pl-accent) !important;
}

body.powerlab-page .pl-btn.danger {
  color: var(--pl-danger-ink) !important;
  background: var(--pl-surface) !important;
  border-color: currentColor !important;
}

body.powerlab-page .pl-btn:focus-visible,
body.powerlab-coach-page .plc-wrap .btn:focus-visible,
body.powerlab-page .pl-form :is(input, select, textarea):focus-visible,
body.powerlab-coach-page .plc-form :is(input, select, textarea):focus-visible {
  outline: 3px solid var(--pl-focus) !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

body.powerlab-page .pl-status,
body.powerlab-page .pl-log,
body.powerlab-page .pl-kpi,
body.powerlab-page .pl-live-instruction,
body.powerlab-page .pl-live-action,
body.powerlab-page .pl-live-quality span,
body.powerlab-page .pl-live-safety,
body.powerlab-page .pl-hardware-gate,
body.powerlab-coach-page .plc-block,
body.powerlab-coach-page .plc-target-note,
body.powerlab-coach-page .plc-live-row {
  color: var(--pl-ink) !important;
  background: var(--pl-surface-soft) !important;
  border-color: var(--pl-border) !important;
}

body.powerlab-page .pl-live-action {
  border-color: var(--pl-accent) !important;
}

body.powerlab-page .pl-live-action > span,
body.powerlab-page .pl-eyebrow,
body.powerlab-coach-page .plc-tag {
  color: var(--pl-accent) !important;
}

body.powerlab-coach-page .plc-hero .plc-tag {
  color: #ffe091 !important;
}

body.powerlab-page .pl-kpi.is-cadence-low {
  color: #8f1026 !important;
  background: #fff2f4 !important;
  border-color: #c61f3c !important;
}

/* PowerLab is opened from the coach shell as well; retain readable navigation
 * inside this module even if an older shared sidebar stylesheet is cached. */
body.powerlab-page .coach-float-sidebar {
  background: linear-gradient(180deg, #111f31 0%, #081321 100%) !important;
}

body.powerlab-page .coach-float-sidebar .coach-sidebar-link,
body.powerlab-page .coach-float-sidebar .coach-sidebar-sub {
  color: #f7fbff !important;
  background: rgba(255, 255, 255, .055) !important;
  border-color: rgba(255, 255, 255, .14) !important;
}

body.powerlab-page .coach-float-sidebar .coach-sidebar-link-title,
body.powerlab-page .coach-float-sidebar .coach-sidebar-copy b {
  color: #f7fbff !important;
}

body.powerlab-page .coach-float-sidebar .coach-sidebar-link-sub,
body.powerlab-page .coach-float-sidebar .coach-sidebar-copy small {
  color: #c7d7e7 !important;
}

body.powerlab-page .coach-float-sidebar .coach-sidebar-link.active {
  color: #102238 !important;
  background: #f3c65b !important;
  border-color: #f3c65b !important;
}

body.powerlab-page .coach-float-sidebar .coach-sidebar-link.active .coach-sidebar-link-title,
body.powerlab-page .coach-float-sidebar .coach-sidebar-link.active .coach-sidebar-copy b {
  color: #102238 !important;
}

body[data-theme="dark"].powerlab-page .pl-kpi.is-cadence-low {
  color: #ffd7dd !important;
  background: #421925 !important;
  border-color: #ff7185 !important;
}

@media (max-width: 820px) {
  body.powerlab-page .pl-wrap,
  body.powerlab-coach-page .plc-wrap { padding: 16px 12px 48px; }
  body.powerlab-page #openCoachPowerLab.pl-coach-cta { width: 100%; }
  body.powerlab-page .pl-actions > .pl-btn,
  body.powerlab-page .pl-actions > a.pl-btn { flex: 1 1 190px; }
  body.powerlab-page .pl-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.powerlab-page .pl-live-context { align-items: flex-start; }
  body.powerlab-page .pl-live-context-state { margin-left: 0; margin-top: 2px; }
  body.powerlab-page .pl-report-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.powerlab-page .pl-signal-items { grid-template-columns:1fr; }
  body.powerlab-page .pl-setup-screens > .pl-card { min-height:0; }
  body.powerlab-page .pl-device-grid { grid-template-columns:1fr; }
  body.powerlab-page .pl-trainer-management-grid { grid-template-columns:1fr; }
  body.powerlab-page .pl-trainer-management-head { flex-direction:column; }
  body.powerlab-history-page .plh-filters { grid-template-columns:1fr; }
  body.powerlab-history-page .plh-hero { align-items:flex-start; flex-direction:column; }
  body.powerlab-history-page .plh-actions { width:100%; justify-content:stretch; }
  body.powerlab-history-page .plh-actions .plh-back { justify-content:center; flex:1 1 160px; }
}

@media (max-width: 420px) {
  body.powerlab-page .pl-btn,
  body.powerlab-coach-page .plc-wrap .btn { width: 100%; }
  body.powerlab-page .pl-actions,
  body.powerlab-coach-page .plc-wrap p:has(.btn) { display: grid; }
  body.powerlab-page .pl-journey { grid-template-columns: 1fr; }
  body.powerlab-page .pl-live-context { display: grid; grid-template-columns: auto 1fr; }
  body.powerlab-page .pl-live-context-state { grid-column: 2; }
  body.powerlab-page .pl-setup-screen-nav { grid-template-columns:1fr; }
  body.powerlab-page .pl-report-nav { grid-template-columns: 1fr; }
  body.powerlab-coach-page .plc-queue-item { grid-template-columns:28px 1fr; }
  body.powerlab-coach-page .plc-queue-item > div { grid-column:2; }
  body.powerlab-page .pl-result-toolbar { align-items:flex-start; flex-direction:column; }
  body.powerlab-page .pl-result-toolbar .pl-result-quick-actions { width:100%; }
  body.powerlab-page .pl-result-toolbar .pl-btn { flex:1 1 190px; }
  body.powerlab-history-page .plh-wrap { padding:16px 12px 48px; }
  body.powerlab-history-page .plh-row { grid-template-columns:30px minmax(0,1fr) 20px; }
  body.powerlab-history-page .plh-row-metrics { grid-column:2; text-align:left; }
}

@media (max-width: 620px) {
  body.powerlab-athlete-page .pla { padding:16px 12px 48px; }
  body.powerlab-athlete-page .pla-grid { grid-template-columns:1fr; }
}

@media print {
  body.powerlab-page .pl-card,
  body.powerlab-page .pl-hero { box-shadow: none !important; }
}

/* Software readiness tools: intentionally local and independent from hardware control. */
body.powerlab-page .pl-equipment-profile,
body.powerlab-page .pl-safety-checklist {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--pl-border);
  border-radius: 14px;
  color: var(--pl-ink);
  background: var(--pl-surface-soft);
}
body.powerlab-page .pl-equipment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:10px; }
body.powerlab-page .pl-equipment-grid label { display:grid; gap:6px; color:var(--pl-ink); font-size:12px; font-weight:850; }
body.powerlab-page .pl-equipment-grid input,
body.powerlab-page .pl-equipment-grid textarea { min-height:42px; padding:9px 10px; border:1px solid var(--pl-border); border-radius:10px; color:var(--pl-ink); background:var(--pl-surface); font:inherit; }
body.powerlab-page .pl-equipment-grid textarea { min-height:68px; resize:vertical; }
body.powerlab-page .pl-equipment-note { grid-column:1 / -1; }
body.powerlab-page .pl-equipment-profile > p { margin:9px 0 0; color:var(--pl-ink-muted); font-size:12px; line-height:1.4; }
body.powerlab-page .pl-protocol-library-link { display:inline-flex; margin-top:10px; color:var(--pl-accent-ink); font-size:13px; font-weight:900; text-decoration:none; }
body.powerlab-page .pl-protocol-library-link:hover { text-decoration:underline; }
body.powerlab-page .pl-safety-checklist { display:grid; grid-template-columns:minmax(220px, .75fr) 1.5fr; gap:12px; align-items:center; }
body.powerlab-page .pl-safety-checklist small { display:block; margin-top:3px; color:var(--pl-ink-muted); line-height:1.35; }
body.powerlab-page .pl-safety-checks { display:flex; flex-wrap:wrap; gap:7px; }
body.powerlab-page .pl-safety-checks label { display:inline-flex; align-items:center; gap:6px; min-height:34px; padding:7px 9px; border:1px solid var(--pl-border); border-radius:999px; color:var(--pl-ink); background:var(--pl-surface); font-size:12px; font-weight:750; }
body.powerlab-page .pl-safety-checks input { accent-color:var(--pl-ok); }
body.powerlab-page .pl-safety-checklist p { grid-column:1 / -1; margin:0; color:var(--pl-ink-muted); font-size:12px; }
body.powerlab-page .pl-safety-checklist.is-complete { border-color:var(--pl-ok); }
body.powerlab-page .pl-safety-checklist.is-complete #plSafetyState { color:var(--pl-ok); font-weight:850; }
body.powerlab-page .pl-live-guidance-alert { display:grid; gap:3px; margin:12px 0 2px; padding:12px 14px; border:1px solid var(--pl-border); border-left:4px solid var(--pl-accent); border-radius:12px; color:var(--pl-ink); background:var(--pl-surface-soft); line-height:1.4; }
body.powerlab-page .pl-live-guidance-alert b { color:var(--pl-accent-ink); font-size:11px; letter-spacing:.09em; text-transform:uppercase; }
body.powerlab-page .pl-live-guidance-alert[data-tone="warn"] { border-left-color:var(--pl-warn); background:color-mix(in srgb,var(--pl-warn) 9%,var(--pl-surface-soft)); }

/* Vector report chart: generated exclusively from persisted test samples and printable in PDF. */
body.powerlab-page .pl-capture-chart { margin:0; overflow:hidden; border:1px solid var(--pl-border); border-radius:14px; color:var(--pl-ink); background:var(--pl-surface-soft); }
body.powerlab-page .pl-capture-chart figcaption { display:flex; flex-wrap:wrap; gap:12px; align-items:center; padding:10px 12px; border-bottom:1px solid var(--pl-border); font-size:12px; font-weight:800; }
body.powerlab-page .pl-capture-chart figcaption b { margin-left:auto; color:var(--pl-ink-muted); font-size:11px; }
body.powerlab-page .pl-capture-chart figcaption span { display:inline-flex; align-items:center; gap:5px; }
body.powerlab-page .pl-capture-chart figcaption i { width:9px; height:9px; border-radius:50%; }
body.powerlab-page .pl-chart-scale { display:flex; flex-wrap:wrap; gap:8px; padding:9px 12px; border-bottom:1px solid var(--pl-border); background:color-mix(in srgb,var(--pl-surface-soft) 72%,var(--pl-surface)); font-size:11px; font-weight:850; }
body.powerlab-page .pl-chart-scale span { padding:4px 7px; border-radius:7px; background:var(--pl-surface); }
body.powerlab-page .pl-chart-power { color:#7a5100; border-left:3px solid #c58a08; }
body.powerlab-page .pl-chart-heart { color:#a82438; border-left:3px solid #d34c5d; }
body.powerlab-page .pl-chart-cadence { color:#086987; border-left:3px solid #1c91bf; }
body.powerlab-page .pl-capture-chart svg { display:block; width:100%; min-width:560px; height:auto; background:var(--pl-surface); }
body.powerlab-page .pl-capture-chart p { margin:0; padding:8px 12px 11px; color:var(--pl-ink-muted); font-size:11px; line-height:1.4; }

body[data-theme="dark"].powerlab-page .pl-capture-chart svg { background:#142131; }
body[data-theme="dark"].powerlab-page .pl-chart-power { color:#ffda86; }
body[data-theme="dark"].powerlab-page .pl-chart-heart { color:#ffb5c0; }
body[data-theme="dark"].powerlab-page .pl-chart-cadence { color:#9edfff; }
body[data-theme="dark"].powerlab-page .pl-live-guidance-alert[data-tone="warn"] { background:#3c2b12; }

@media (max-width: 820px) {
  body.powerlab-page .pl-equipment-grid { grid-template-columns:1fr; }
  body.powerlab-page .pl-equipment-note { grid-column:auto; }
  body.powerlab-page .pl-safety-checklist { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  body.powerlab-page .pl-capture-chart { overflow-x:auto; }
  body.powerlab-page .pl-capture-chart figcaption b { width:100%; margin-left:0; }
}
@media print {
  body.powerlab-page .pl-capture-chart { break-inside:avoid; }
  body.powerlab-page .pl-capture-chart svg { min-width:0; }
}

/* Unified PowerLab shell: the global coach shell is intentionally contained here
 * so all PowerLab pages remain legible and aligned in either application theme. */
body.powerlab-page,
body.powerlab-coach-page,
body.powerlab-athlete-page,
body.powerlab-history-page {
  background: #edf3f8 !important;
  color: var(--pl-ink) !important;
}
body[data-theme="dark"].powerlab-page,
body[data-theme="dark"].powerlab-coach-page,
body[data-theme="dark"].powerlab-athlete-page,
body[data-theme="dark"].powerlab-history-page { background:#07111c !important; }

body.powerlab-page :is(h1,h2,h3,h4,p,li,th,td,label,small),
body.powerlab-coach-page :is(h1,h2,h3,h4,p,li,th,td,label,small),
body.powerlab-athlete-page :is(h1,h2,h3,h4,p,li,th,td,label,small),
body.powerlab-history-page :is(h1,h2,h3,h4,p,li,th,td,label,small) { color:inherit; }

body.powerlab-coach-page .plc-card,
body.powerlab-athlete-page .pla-card,
body.powerlab-athlete-page .pla-hero,
body.powerlab-history-page .plh-card {
  color:var(--pl-ink) !important;
  background:var(--pl-surface) !important;
  border-color:var(--pl-border) !important;
  box-shadow:0 12px 28px rgba(20,45,70,.09);
}
body.powerlab-athlete-page .pla-hero { background:linear-gradient(135deg,var(--pl-surface),color-mix(in srgb,var(--pl-accent) 9%,var(--pl-surface))) !important; }
body.powerlab-coach-page .plc-wrap,
body.powerlab-athlete-page .pla,
body.powerlab-history-page .plh-wrap { color:var(--pl-ink) !important; }
body.powerlab-coach-page .plc-card :is(input,select,textarea),
body.powerlab-athlete-page :is(input,select,textarea),
body.powerlab-history-page :is(input,select,textarea) { color:var(--pl-ink) !important; background:var(--pl-surface-soft) !important; border-color:var(--pl-border) !important; }
body.powerlab-coach-page .plc-table,
body.powerlab-athlete-page .pla-table { color:var(--pl-ink) !important; }
body.powerlab-coach-page .plc-table th,
body.powerlab-athlete-page .pla-table th { color:var(--pl-ink-muted) !important; background:var(--pl-surface-soft); font-size:11px; letter-spacing:.05em; text-transform:uppercase; }
body.powerlab-coach-page .plc-table td,
body.powerlab-athlete-page .pla-table td { border-color:var(--pl-border) !important; }
body.powerlab-coach-page .plc-table tbody tr:nth-child(even),
body.powerlab-athlete-page .pla-table tbody tr:nth-child(even) { background:color-mix(in srgb,var(--pl-surface-soft) 72%,transparent); }
body.powerlab-coach-page .plc-card .btn,
body.powerlab-athlete-page .pla .btn { color:var(--pl-ink) !important; background:var(--pl-surface-soft) !important; border-color:var(--pl-border) !important; }
body.powerlab-coach-page .plc-card .btn.primary,
body.powerlab-athlete-page .pla .btn.primary { color:var(--pl-accent-ink) !important; background:var(--pl-accent) !important; border-color:var(--pl-accent) !important; }

/* Sidebar uses a stable dark navigation surface in both themes: contrast is
 * deliberate, while the active module is highlighted by shape, icon and text. */
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-float-sidebar {
  width:232px !important;
  top:86px !important;
  bottom:14px !important;
  left:14px !important;
  padding:13px 11px 16px !important;
  gap:9px !important;
  border:1px solid rgba(175,205,233,.20) !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#11263c 0%,#081523 100%) !important;
  box-shadow:0 16px 38px rgba(2,12,24,.32) !important;
}
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-head { min-height:64px !important; padding:4px 7px 12px !important; border-bottom:1px solid rgba(211,228,244,.14) !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-title { color:#f7fbff !important; font-size:15px !important; line-height:1.1 !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-title span { display:block !important; margin-top:3px !important; color:#b7cce0 !important; font-size:10px !important; font-weight:700 !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-nav { display:grid !important; gap:6px !important; padding-top:3px !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-link {
  display:grid !important; grid-template-columns:31px minmax(0,1fr) !important; align-items:center !important; gap:9px !important;
  min-height:50px !important; padding:8px 9px !important; border:1px solid rgba(219,235,248,.13) !important; border-radius:12px !important;
  color:#f7fbff !important; background:rgba(255,255,255,.045) !important; text-decoration:none !important;
}
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-link:hover { border-color:rgba(243,198,91,.58) !important; background:rgba(255,255,255,.10) !important; transform:none !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-icon { display:grid !important; width:30px !important; height:30px !important; place-items:center !important; border-radius:9px !important; background:rgba(255,255,255,.10) !important; font-size:16px !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-copy { min-width:0 !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-copy b { display:block !important; overflow:hidden !important; color:#f7fbff !important; font-size:12px !important; font-weight:900 !important; line-height:1.15 !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-copy small { display:block !important; overflow:hidden !important; margin-top:3px !important; color:#b7cce0 !important; font-size:10px !important; line-height:1.1 !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-link.active { color:#142235 !important; border-color:#f3c65b !important; background:#f3c65b !important; box-shadow:0 5px 14px rgba(243,198,91,.22) !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-link.active :is(b,small) { color:#142235 !important; }
body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-sidebar-link.active .coach-sidebar-icon { background:rgba(20,34,53,.14) !important; }

@media (min-width:861px) {
  body.ara-coach-sidebar-visible.powerlab-page .pl-wrap,
  body.ara-coach-sidebar-visible.powerlab-coach-page .plc-wrap,
  body.ara-coach-sidebar-visible.powerlab-athlete-page .pla,
  body.ara-coach-sidebar-visible.powerlab-history-page .plh-wrap { box-sizing:border-box; width:calc(100% - 270px) !important; max-width:1440px !important; margin-left:258px !important; margin-right:12px !important; }
  body.ara-coach-sidebar-visible.ara-coach-sidebar-collapsed.powerlab-page .pl-wrap,
  body.ara-coach-sidebar-visible.ara-coach-sidebar-collapsed.powerlab-coach-page .plc-wrap,
  body.ara-coach-sidebar-visible.ara-coach-sidebar-collapsed.powerlab-athlete-page .pla,
  body.ara-coach-sidebar-visible.ara-coach-sidebar-collapsed.powerlab-history-page .plh-wrap { width:calc(100% - 104px) !important; margin-left:92px !important; }
}
@media (max-width:860px) {
  body:is(.powerlab-page,.powerlab-coach-page,.powerlab-athlete-page,.powerlab-history-page) .coach-float-sidebar { display:none !important; }
}

/* Flujo operativo reducido: la captura real se concentra en tres acciones. */
.pl-simple-operational-flow { margin-top:16px; padding:18px; border:1px solid #b9cde4; border-radius:16px; background:linear-gradient(135deg,#f7fbff,#eef6ff); box-shadow:0 8px 22px rgba(29,63,99,.08); }
.pl-simple-flow-head { display:flex; gap:18px; align-items:flex-start; justify-content:space-between; }
.pl-simple-flow-head span { color:#a66a00; font-size:11px; font-weight:900; letter-spacing:.1em; }
.pl-simple-flow-head h3 { margin:4px 0; color:#10233c; font-size:20px; }
.pl-simple-flow-head p { margin:0; color:#48627f; }
.pl-simple-flow-state { max-width:360px; padding:10px 12px; border:1px solid #9fc2e9; border-radius:10px; background:#fff; color:#23466c !important; font-weight:800; line-height:1.35; }
.pl-simple-operational-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.pl-simple-operational-actions .pl-btn { min-height:56px; margin:0; border-radius:12px; font-size:15px; font-weight:900; }
.pl-simple-operational-actions .pl-btn::before { display:inline-grid; width:24px; height:24px; margin-right:8px; border-radius:50%; place-items:center; color:#fff; background:#365d86; content:attr(data-simple-step); font-size:12px; }
.pl-simple-operational-actions .pl-btn.primary { border-color:#a66a00; background:#a66a00; color:#fff; box-shadow:0 8px 16px rgba(166,106,0,.22); }
.pl-simple-operational-actions .pl-btn.primary::before { color:#754800; background:#fff; }
.pl-simple-secondary-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:12px; padding:12px 0 0; border-top:1px solid #d5e2ef; }
.pl-simple-secondary-label { display:inline-flex; align-items:center; min-height:40px; padding:0 4px; color:#607994; font-size:12px; font-weight:850; }
.pl-simple-secondary-actions .pl-btn { min-height:44px; margin:0; border-radius:11px; padding-inline:16px; font-size:14px; font-weight:850; }
.pl-simple-secondary-actions .pl-action-hr { border-color:#e5b9c0; background:#fff8f9; color:#9a2335; }
.pl-simple-secondary-actions .pl-action-simulate { border-color:#b6a8e8; background:#f8f6ff; color:#5b3fa5; }
.pl-simple-operational-flow[data-ready="true"] .pl-simple-flow-state { border-color:#3ca875; background:#f0fbf5; color:#17633f !important; }
.pl-simple-operational-flow .pl-preflight-console { margin:14px 0 0 !important; padding:12px 14px; border-radius:12px; background:#fff; }
.pl-simple-operational-flow .pl-preflight-console b { color:#183a60; }
.pl-advanced-options { margin-top:12px; border:1px solid #c4d4e5; border-radius:12px; background:#fff; }
.pl-advanced-options summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 15px; cursor:pointer; color:#284662; font-weight:850; }
.pl-advanced-options summary small { color:#647b93; font-weight:650; }
.pl-advanced-options-content { display:grid; gap:12px; padding:0 14px 14px; }
.pl-advanced-options .pl-device-grid { grid-template-columns:1fr; margin:0; }
.pl-advanced-options .pl-device-heading { display:none; }
.pl-advanced-options .pl-trainer-management { margin:0; }
.pl-advanced-tool-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
body[data-theme="dark"] .pl-simple-operational-flow { border-color:#36597c; background:linear-gradient(135deg,#132841,#102136); box-shadow:none; }
body[data-theme="dark"] .pl-simple-flow-head h3 { color:#f4f8fc; }
body[data-theme="dark"] .pl-simple-flow-head p { color:#b8cbe0; }
body[data-theme="dark"] .pl-simple-flow-state, body[data-theme="dark"] .pl-simple-operational-flow .pl-preflight-console, body[data-theme="dark"] .pl-advanced-options { border-color:#3d5d7f; background:#12263d; color:#e8f1fa !important; }
body[data-theme="dark"] .pl-simple-operational-flow .pl-preflight-console b, body[data-theme="dark"] .pl-advanced-options summary { color:#f4f8fc; }
body[data-theme="dark"] .pl-advanced-options summary small { color:#b7c9db; }
body[data-theme="dark"] .pl-simple-secondary-actions { border-color:#36536f; }
body[data-theme="dark"] .pl-simple-secondary-label { color:#b7c9db; }
body[data-theme="dark"] .pl-simple-secondary-actions .pl-action-hr { border-color:#7d4651; background:#311d29; color:#ffd7dd; }
body[data-theme="dark"] .pl-simple-secondary-actions .pl-action-simulate { border-color:#62538e; background:#29213f; color:#e1d9ff; }
@media (max-width:720px) { .pl-simple-flow-head { display:block; } .pl-simple-flow-state { max-width:none; margin-top:12px !important; } .pl-simple-operational-actions { grid-template-columns:1fr; } .pl-simple-operational-actions .pl-btn { min-height:52px; } .pl-advanced-options summary { align-items:flex-start; flex-direction:column; } .pl-simple-secondary-actions { display:grid; grid-template-columns:1fr; } .pl-simple-secondary-label { min-height:auto; padding:0; } .pl-simple-secondary-actions .pl-btn { width:100%; min-height:48px; } }

/* Cuenta regresiva inmersiva y lectura explícita de métricas no transmitidas. */
body.pl-countdown-active { overflow:hidden; }
.pl-countdown-overlay { position:fixed; z-index:10050; inset:0; display:none; place-items:center; padding:24px; color:#f8fbff; }
.pl-countdown-overlay.is-open { display:grid; }
.pl-countdown-backdrop { position:absolute; inset:0; background:radial-gradient(circle at 50% 44%,rgba(43,97,146,.94),rgba(5,15,29,.98) 64%); }
.pl-countdown-stage { position:relative; z-index:1; width:min(760px,100%); min-height:min(700px,calc(100vh - 48px)); display:grid; align-content:center; justify-items:center; overflow:hidden; padding:42px; border:1px solid rgba(243,198,91,.52); border-radius:32px; background:linear-gradient(145deg,rgba(14,39,64,.92),rgba(8,18,34,.86)); box-shadow:0 28px 80px rgba(0,0,0,.45); text-align:center; }
.pl-countdown-brand,.pl-live-brand { display:flex; gap:10px; align-items:center; text-align:left; }
.pl-countdown-brand { position:absolute; top:28px; left:30px; }
.pl-countdown-brand b,.pl-live-brand b { display:block; color:#fff; font-size:13px; letter-spacing:.12em; }
.pl-countdown-brand small,.pl-live-brand small { display:block; margin-top:3px; color:#bfd1e3; font-size:11px; }
.pl-countdown-mark,.pl-live-brand-mark { display:grid; width:36px; height:36px; place-items:center; border-radius:11px; background:#fff; color:#10253d; font-size:20px; font-weight:950; box-shadow:inset 0 -3px 0 #f3c65b; }
.pl-countdown-kicker { margin:0; color:#f3c65b; font-size:13px; font-weight:950; letter-spacing:.2em; }
.pl-countdown-number { position:relative; z-index:2; margin:10px 0 4px; color:#fff; font-size:clamp(130px,28vw,300px); font-weight:950; font-variant-numeric:tabular-nums; line-height:.9; text-shadow:0 12px 30px rgba(0,0,0,.32); animation:pl-countdown-pop .82s cubic-bezier(.2,.9,.25,1) both; }
.pl-countdown-message { position:relative; z-index:2; max-width:520px; margin:16px 0 0; color:#dbe9f5; font-size:clamp(18px,2.2vw,25px); line-height:1.4; }
.pl-countdown-orbit { position:absolute; width:min(72vw,520px); aspect-ratio:1; border:2px solid rgba(243,198,91,.72); border-radius:50%; box-shadow:0 0 0 18px rgba(243,198,91,.08),0 0 0 52px rgba(255,255,255,.035); animation:pl-countdown-orbit 1s linear infinite; }
.pl-countdown-cancel { position:absolute; right:28px; bottom:26px; border:1px solid rgba(255,255,255,.38); border-radius:10px; padding:10px 14px; background:rgba(255,255,255,.08); color:#fff; font:inherit; font-weight:850; cursor:pointer; }
.pl-countdown-cancel:hover,.pl-countdown-cancel:focus-visible { background:rgba(255,255,255,.18); outline:2px solid #f3c65b; outline-offset:3px; }
@keyframes pl-countdown-pop { from { opacity:.15; transform:scale(.62); } to { opacity:1; transform:scale(1); } }
@keyframes pl-countdown-orbit { to { transform:rotate(360deg); } }
body.powerlab-page .pl-live-brand { display:none; }
body.powerlab-page.pl-test-mode .pl-live-brand { display:flex; margin-bottom:10px; }
body.powerlab-page .pl-kpi.is-unavailable { border-style:dashed; opacity:.78; }
body.powerlab-page .pl-kpi.is-unavailable b { color:var(--pl-muted); font-size:clamp(15px,2.3vw,22px); }
body[data-theme="light"] .pl-countdown-stage { background:linear-gradient(145deg,#174467,#0c243b); }
@media (max-width:720px) { .pl-countdown-overlay { padding:12px; } .pl-countdown-stage { min-height:calc(100vh - 24px); padding:28px 22px; border-radius:22px; } .pl-countdown-brand { top:22px; left:22px; } .pl-countdown-number { font-size:min(50vw,210px); } .pl-countdown-orbit { width:82vw; } .pl-countdown-cancel { right:18px; bottom:18px; } }
@media (prefers-reduced-motion:reduce) { .pl-countdown-number,.pl-countdown-orbit { animation:none; } }

/* Modo concentracion: durante la prueba solo queda visible el tablero activo. */
html.pl-test-mode-active { height:100%; }
body.powerlab-page.pl-test-mode { height:100%; overflow:hidden; }
body.powerlab-page.pl-test-mode { background:#061522!important; color:#f5f9ff!important; }
body.powerlab-page.pl-test-mode #araAthleteMobileBottom,
body.powerlab-page.pl-test-mode .ara-athlete-desktop-sidebar,
body.powerlab-page.pl-test-mode .ara-athlete-mobile-more,
body.powerlab-page.pl-test-mode #topbarMount { display:none!important; }
body.powerlab-page.pl-test-mode.ara-athlete-shell-ready { padding-bottom:0!important; }
body.powerlab-page.pl-test-mode .pl-wrap { box-sizing:border-box; width:100%; max-width:none; height:100dvh; min-height:100dvh; padding:clamp(10px,2vw,24px); overflow:hidden; display:grid; place-items:center; }
body.powerlab-page.pl-test-mode #livePanel { box-sizing:border-box; width:min(1180px,100%); max-height:calc(100dvh - 20px); margin:0; overflow:hidden; border:1px solid rgba(141,204,255,.24); border-radius:24px; background:radial-gradient(circle at 85% 0%,rgba(31,117,164,.34),transparent 34%),linear-gradient(145deg,#102d46 0%,#091c2d 55%,#061522 100%); box-shadow:0 28px 70px rgba(0,0,0,.3); color:#f5f9ff; }
body.powerlab-page.pl-test-mode .pl-live-brand { margin:0 0 10px; padding-bottom:10px; border-bottom:1px solid rgba(196,224,249,.15); }
body.powerlab-page.pl-test-mode .pl-live-brand small { color:#b9d4e8; }
body.powerlab-page .pl-live-launch { display:grid; gap:10px; max-width:620px; margin:28px auto; padding:26px; border:1px solid rgba(143,205,250,.3); border-radius:20px; background:rgba(3,16,28,.56); color:#f5f9ff; text-align:center; box-shadow:0 18px 42px rgba(0,0,0,.24); }
body.powerlab-page .pl-live-launch[hidden] { display:none!important; }
body.powerlab-page .pl-live-launch-kicker { color:#ffd36d; font-size:11px; font-weight:900; letter-spacing:.12em; }
body.powerlab-page .pl-live-launch strong { color:#fff; font-size:clamp(22px,3vw,34px); }
body.powerlab-page .pl-live-launch p { margin:0; color:#d9e9f5; line-height:1.45; }
body.powerlab-page .pl-live-launch small { color:#ffcad2; font-weight:800; }
body.powerlab-page .pl-live-launch[data-state="loading"]::before { content:""; width:32px; height:32px; margin:auto; border:3px solid rgba(255,255,255,.2); border-top-color:#ffd36d; border-radius:50%; animation:pl-launch-spin .75s linear infinite; }
body.powerlab-page .pl-live-launch-actions { display:flex; justify-content:center; margin-top:4px; }
body.powerlab-page .pl-live-launch[data-state="error"] { border-color:rgba(255,118,139,.78); background:rgba(97,31,44,.58); }
body.powerlab-page.pl-test-mode #livePanel.is-launching > :not(.pl-live-brand):not(.pl-live-launch) { display:none!important; }
@keyframes pl-launch-spin { to { transform:rotate(360deg); } }
body.powerlab-page.pl-test-mode #segmentLabel { display:inline-flex; width:max-content; margin:0 0 3px; padding:5px 9px; border:1px solid rgba(243,198,91,.52); border-radius:999px; background:rgba(243,198,91,.11); color:#ffd36d; font-size:11px; letter-spacing:.1em; }
body.powerlab-page.pl-test-mode .pl-live-hero-row { grid-template-columns:minmax(220px,.78fr) minmax(320px,1.22fr); gap:14px; margin:0 0 14px; }
body.powerlab-page.pl-test-mode .pl-live-timing { min-height:132px; padding:11px 15px; border:1px solid rgba(150,207,249,.2); border-radius:18px; background:rgba(3,16,28,.42); }
body.powerlab-page.pl-test-mode .pl-timer { color:#fff; font-size:clamp(58px,7vw,104px); line-height:.9; letter-spacing:-.055em; text-shadow:0 10px 28px rgba(0,0,0,.28); }
body.powerlab-page.pl-test-mode .pl-progress-wrap { margin:6px 0 0; gap:8px; }
body.powerlab-page.pl-test-mode .pl-progress-wrap progress { height:10px; accent-color:#f3c65b; }
body.powerlab-page.pl-test-mode .pl-progress-text { color:#b9d4e8; font-weight:750; }
body.powerlab-page.pl-test-mode .pl-live-action { min-height:132px; padding:17px 20px; border-color:rgba(243,198,91,.72); background:linear-gradient(135deg,rgba(243,198,91,.2),rgba(21,72,106,.42)); box-shadow:inset 0 1px 0 rgba(255,255,255,.1); }
body.powerlab-page.pl-test-mode .pl-live-action>span { color:#ffd36d; }
body.powerlab-page.pl-test-mode .pl-live-action strong { color:#fff; font-size:clamp(24px,3vw,38px); }
body.powerlab-page.pl-test-mode .pl-live-action p { color:#d9e9f5; }
body.powerlab-page.pl-test-mode .pl-live-kpis { grid-template-columns:repeat(7,minmax(0,1fr)); gap:10px; }
body.powerlab-page.pl-test-mode .pl-kpi { min-height:108px; padding:15px 58px 15px 15px; border-color:rgba(158,207,244,.22); background:linear-gradient(155deg,rgba(27,68,98,.96),rgba(13,39,60,.96)); box-shadow:inset 0 1px 0 rgba(255,255,255,.06); }
body.powerlab-page.pl-test-mode .pl-kpi span { color:#a9c6dc; }
body.powerlab-page.pl-test-mode .pl-kpi b { color:#fff; font-size:clamp(24px,3vw,40px); }
body.powerlab-page.pl-test-mode .pl-kpi:nth-child(1) { border-color:rgba(255,202,93,.5); background:linear-gradient(155deg,rgba(99,69,20,.55),rgba(29,46,55,.96)); }
body.powerlab-page.pl-test-mode .pl-kpi:nth-child(2) { border-color:rgba(255,120,143,.48); background:linear-gradient(155deg,rgba(104,40,57,.5),rgba(38,37,54,.96)); }
body.powerlab-page.pl-test-mode .pl-kpi:nth-child(3) { border-color:rgba(78,214,195,.46); background:linear-gradient(155deg,rgba(23,90,83,.48),rgba(14,48,61,.96)); }
body.powerlab-page.pl-test-mode .pl-kpi:nth-child(4) { border-color:rgba(102,187,255,.5); background:linear-gradient(155deg,rgba(25,76,117,.55),rgba(14,42,67,.96)); }
body.powerlab-page.pl-test-mode .pl-kpi-icon { color:#ffd36d; opacity:1; filter:drop-shadow(0 5px 12px rgba(0,0,0,.22)); }
body.powerlab-page.pl-test-mode .pl-kpi.is-cadence-low { border-color:#ff6f85; background:linear-gradient(155deg,rgba(117,37,54,.78),rgba(63,27,41,.96)); }
body.powerlab-page.pl-test-mode .pl-kpi.is-cadence-low b, body.powerlab-page.pl-test-mode .pl-kpi.is-cadence-low .pl-kpi-icon { color:#ff9cac; }
body.powerlab-page.pl-test-mode .pl-live > .pl-muted,
body.powerlab-page.pl-test-mode #targetGuide,
body.powerlab-page.pl-test-mode #liveHrZone,
body.powerlab-page.pl-test-mode #liveQuality,
body.powerlab-page.pl-test-mode #plLiveAlerts,
body.powerlab-page.pl-test-mode #liveTrendChart,
body.powerlab-page.pl-test-mode #liveSafety[data-tone="ok"] { display:none!important; }
body.powerlab-page.pl-test-mode .pl-live-safety[data-tone="warn"], body.powerlab-page.pl-test-mode .pl-live-safety[data-tone="danger"] { margin:9px 0; border-radius:12px; background:rgba(107,35,45,.45); color:#ffd9de; }
body.powerlab-page.pl-test-mode .pl-live .pl-actions { display:flex; justify-content:flex-end; margin:12px 0 0; }
body.powerlab-page.pl-test-mode .pl-live .pl-btn { min-height:44px; border-color:rgba(208,228,244,.35)!important; background:rgba(255,255,255,.08)!important; color:#f4f9fd!important; }
body.powerlab-page.pl-test-mode .pl-live .pl-btn.danger { border-color:rgba(255,116,137,.72)!important; color:#ffbdc8!important; }

/* La cuenta regresiva permanece por encima de cualquier navegacion movil. */
.pl-countdown-overlay { z-index:2147483000; }
.pl-countdown-stage { border-color:rgba(255,211,109,.66); background:radial-gradient(circle at 50% 36%,rgba(39,112,158,.76),transparent 32%),linear-gradient(145deg,rgba(9,37,62,.98),rgba(4,15,28,.99)); }
.pl-countdown-brand b { color:#fff!important; text-shadow:0 2px 12px rgba(0,0,0,.38); }
.pl-countdown-brand small { color:#d5eaff!important; text-shadow:0 2px 12px rgba(0,0,0,.48); }
.pl-countdown-status { position:absolute; top:31px; right:31px; display:inline-flex; align-items:center; gap:7px; color:#e8f5ff!important; font-size:10px; font-weight:900; letter-spacing:.1em; text-shadow:0 2px 12px rgba(0,0,0,.5); }
.pl-countdown-status i { width:8px; height:8px; border-radius:50%; background:#61dfa0; box-shadow:0 0 0 5px rgba(97,223,160,.13); animation:pl-countdown-pulse 1.4s ease-in-out infinite; }
.pl-countdown-kicker { position:relative; z-index:2; padding:7px 11px; border:1px solid rgba(255,216,124,.76); border-radius:999px; background:rgba(5,23,39,.72); color:#ffe498!important; font-weight:950; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.pl-countdown-message { padding:12px 16px; border:1px solid rgba(205,231,251,.26); border-radius:14px; background:rgba(4,21,36,.74); color:#f1f8ff!important; font-weight:700; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.pl-countdown-number.is-ticking { animation:pl-countdown-impact-centered .82s cubic-bezier(.18,.89,.25,1.18) both; }
.pl-countdown-track { position:relative; z-index:2; width:min(430px,78%); height:6px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.15); }
.pl-countdown-track span { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,#f3c65b,#fff0ae); box-shadow:0 0 16px rgba(243,198,91,.7); transition:width .55s ease; }
@keyframes pl-countdown-impact { 0% { opacity:.08; transform:scale(.48); } 70% { opacity:1; transform:scale(1.08); } 100% { opacity:1; transform:scale(1); } }
@keyframes pl-countdown-impact-centered { 0% { opacity:.08; transform:translateX(-50%) scale(.48); } 70% { opacity:1; transform:translateX(-50%) scale(1.08); } 100% { opacity:1; transform:translateX(-50%) scale(1); } }
@keyframes pl-countdown-pulse { 50% { transform:scale(1.25); box-shadow:0 0 0 9px rgba(97,223,160,0); } }
@media (max-width:820px) {
  body.powerlab-page.pl-test-mode .pl-wrap { padding:8px; }
  body.powerlab-page.pl-test-mode #livePanel { max-height:calc(100dvh - 16px); padding:13px; border-radius:19px; }
  body.powerlab-page.pl-test-mode .pl-live-brand { margin-bottom:6px; padding-bottom:7px; }
  body.powerlab-page .pl-live-launch { margin:12px auto; padding:18px 14px; border-radius:16px; }
  body.powerlab-page.pl-test-mode #segmentLabel { margin-bottom:1px; padding:4px 8px; font-size:10px; }
  body.powerlab-page.pl-test-mode .pl-live-hero-row { grid-template-columns:112px minmax(0,1fr); gap:8px; margin-bottom:8px; }
  body.powerlab-page.pl-test-mode .pl-live-timing, body.powerlab-page.pl-test-mode .pl-live-action { min-height:94px; padding:10px; border-radius:14px; }
  body.powerlab-page.pl-test-mode .pl-timer { padding:2px 0; font-size:clamp(48px,14vw,72px); }
  body.powerlab-page.pl-test-mode .pl-progress-text { font-size:10px; }
  body.powerlab-page.pl-test-mode .pl-live-action { gap:4px; }
  body.powerlab-page.pl-test-mode .pl-live-action>span { font-size:9px; }
  body.powerlab-page.pl-test-mode .pl-live-action strong { font-size:clamp(17px,5.4vw,25px); }
  body.powerlab-page.pl-test-mode .pl-live-action p { font-size:12px; line-height:1.22; }
  body.powerlab-page.pl-test-mode .pl-live-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  body.powerlab-page.pl-test-mode .pl-kpi { min-height:58px; padding:9px 48px 8px 10px; border-radius:13px; }
  body.powerlab-page.pl-test-mode .pl-kpi b { margin-top:1px; font-size:clamp(22px,6.6vw,31px); line-height:1.02; }
  body.powerlab-page.pl-test-mode .pl-kpi span { font-size:9px; }
  body.powerlab-page.pl-test-mode .pl-kpi-icon { right:10px; font-size:32px; }
  body.powerlab-page.pl-test-mode .pl-live .pl-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; }
  body.powerlab-page.pl-test-mode .pl-live .pl-btn { width:100%; min-height:40px; padding:8px; font-size:13px; }
  .pl-countdown-status { top:24px; right:22px; font-size:9px; }
  .pl-countdown-track { width:82%; }
}
@media (max-height:700px) and (max-width:820px) {
  body.powerlab-page.pl-test-mode .pl-live-brand small, body.powerlab-page.pl-test-mode .pl-live-action p { display:none; }
  body.powerlab-page.pl-test-mode .pl-live-brand { padding-bottom:4px; }
  body.powerlab-page.pl-test-mode .pl-kpi { min-height:51px; }
}
@media (prefers-reduced-motion:reduce) { .pl-countdown-number.is-ticking,.pl-countdown-status i { animation:none; } }

/* Composición premium de salida: anillos, oro y jerarquía legible. */
.pl-countdown-stage { isolation:isolate; display:block; padding:0; border:1px solid rgba(240,184,71,.7); background:radial-gradient(circle at 50% 40%,rgba(33,102,151,.52),transparent 28%),radial-gradient(circle at 50% 78%,rgba(7,42,73,.72),transparent 34%),linear-gradient(145deg,#061526,#020b15); }
.pl-countdown-brand { top:34px; left:40px; z-index:4; }
.pl-countdown-brand b { font-size:clamp(16px,2vw,24px); letter-spacing:.055em; }
.pl-countdown-brand small { margin-top:5px; font-size:clamp(12px,1.25vw,17px); }
.pl-countdown-brand small em { color:#22a6ea!important; font-style:normal; }
.pl-countdown-mark { width:52px; height:52px; border-radius:15px; font-size:28px; box-shadow:inset 0 -4px 0 #f3c65b,0 10px 28px rgba(0,0,0,.38); }
.pl-countdown-status { z-index:4; top:34px; right:40px; min-height:45px; padding:0 19px; border:1px solid rgba(191,218,245,.3); border-radius:999px; background:rgba(3,15,27,.6); font-size:13px; letter-spacing:.045em; }
.pl-countdown-status i { width:13px; height:13px; background:#53e99a; box-shadow:0 0 0 5px rgba(83,233,154,.12),0 0 18px rgba(83,233,154,.78); }
.pl-countdown-rings { position:absolute; z-index:0; top:44%; left:50%; width:min(80vw,540px); aspect-ratio:1; transform:translate(-50%,-50%); border:1px solid rgba(95,160,221,.46); border-radius:50%; box-shadow:0 0 44px rgba(24,104,171,.3),inset 0 0 44px rgba(22,99,166,.18); }
.pl-countdown-rings::before,.pl-countdown-rings::after { position:absolute; content:""; border-radius:50%; pointer-events:none; }
.pl-countdown-rings::before { inset:7%; border:2px solid rgba(255,208,102,.93); box-shadow:0 0 13px rgba(255,191,51,.72),inset 0 0 13px rgba(255,191,51,.18); }
.pl-countdown-rings::after { inset:11%; border:1px solid rgba(124,180,234,.46); }
.pl-countdown-rings span { position:absolute; inset:4%; border-radius:50%; background-image:radial-gradient(circle,rgba(228,244,255,.72) 0 1.2px,transparent 1.8px); background-size:26px 26px; opacity:.48; mask:radial-gradient(transparent 0 69%,#000 70% 84%,transparent 85%); }
.pl-countdown-rings span:nth-child(2) { inset:0; opacity:.22; transform:rotate(17deg); background-size:36px 36px; }
.pl-countdown-orbit { display:none; }
.pl-countdown-kicker { position:absolute; z-index:3; top:29%; left:50%; margin:0; padding:10px 18px; border-color:#e7a82d; background:rgba(4,19,34,.9); color:#fff!important; font-size:clamp(13px,1.5vw,18px); font-weight:950; letter-spacing:.23em; text-shadow:0 2px 12px rgba(0,0,0,.7); transform:translateX(-50%); white-space:nowrap; }
.pl-countdown-number { position:absolute; z-index:3; top:36%; left:50%; margin:0; color:#fff!important; font-size:clamp(170px,28vw,350px); line-height:.9; text-shadow:0 0 6px rgba(255,255,255,.74),0 18px 42px rgba(0,0,0,.52); transform:translateX(-50%); }
.pl-countdown-message { position:absolute; z-index:3; top:73%; left:50%; width:min(720px,82%); margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#fff!important; font-size:clamp(18px,2.35vw,29px); font-weight:700; line-height:1.42; opacity:1!important; text-align:center; text-shadow:0 3px 16px rgba(0,0,0,.86); transform:translateX(-50%); }
.pl-countdown-message strong { color:#ffc85b!important; font-weight:900; }
.pl-countdown-track { position:absolute; z-index:3; top:84%; left:50%; width:min(760px,82%); height:16px; margin:0; border:1px solid rgba(177,207,235,.35); background:linear-gradient(180deg,rgba(130,163,196,.45),rgba(34,55,80,.6)); box-shadow:inset 0 2px 4px rgba(0,0,0,.36); transform:translateX(-50%); }
.pl-countdown-track span { background:linear-gradient(90deg,#d5911d,#ffc84f 48%,#fff1a3 78%,#d89721); box-shadow:0 0 17px rgba(255,190,56,.95),8px 0 18px rgba(255,212,105,.7); }
.pl-countdown-cancel { z-index:4; right:40px; bottom:34px; display:inline-flex; align-items:center; gap:12px; min-height:64px; padding:12px 24px; border:1px solid #f1ba49; border-radius:18px; background:linear-gradient(145deg,rgba(10,35,56,.96),rgba(3,18,31,.96)); box-shadow:inset 0 0 0 2px rgba(255,205,93,.12),0 12px 28px rgba(0,0,0,.3); color:#ffd26c!important; font-size:clamp(16px,1.6vw,22px); }
.pl-countdown-cancel span { display:grid; width:34px; height:34px; place-items:center; border:2px solid currentColor; border-radius:50%; font-size:28px; font-weight:400; line-height:1; }
.pl-countdown-cancel:hover,.pl-countdown-cancel:focus-visible { transform:translateY(-2px); border-color:#ffe5a0; background:#123b5b; color:#fff0b8!important; }
@media (max-width:720px) {
  .pl-countdown-stage { padding:0; }
  .pl-countdown-brand { top:22px; left:22px; }
  .pl-countdown-brand b { font-size:15px; }
  .pl-countdown-brand small { max-width:180px; font-size:10px; }
  .pl-countdown-mark { width:38px; height:38px; border-radius:11px; font-size:20px; }
  .pl-countdown-status { top:24px; right:20px; min-height:34px; padding:0 10px; font-size:8px; }
  .pl-countdown-status i { width:8px; height:8px; }
  .pl-countdown-rings { top:44%; width:min(80vw,540px); transform:translate(-50%,-50%); }
  .pl-countdown-kicker { top:31%; padding:7px 11px; font-size:12px; color:#fff!important; }
  .pl-countdown-number { top:39%; font-size:min(48vw,230px); }
  .pl-countdown-message { top:80%; width:88%; color:#fff!important; font-size:17px; }
  .pl-countdown-track { top:76%; width:84%; height:10px; }
  .pl-countdown-cancel { right:22px; bottom:22px; min-height:48px; padding:8px 14px; border-radius:14px; font-size:15px; }
  .pl-countdown-cancel span { width:26px; height:26px; border-width:1px; font-size:21px; }
}
@media (prefers-reduced-motion:reduce) { .pl-countdown-cancel { transition:none; } }

/* PowerLab v10: una pantalla de lectura estable, sin desplazamiento ni contenido superpuesto. */
body.powerlab-page.pl-test-mode,
html.pl-test-mode-active { overflow:hidden !important; }
body.powerlab-page.pl-test-mode .pl-wrap { position:fixed; inset:0; width:100%; height:100dvh; min-height:100dvh; padding:clamp(8px,1.5vw,18px); overflow:hidden; }
body.powerlab-page.pl-test-mode #livePanel { display:block!important; width:min(1120px,100%); height:auto; max-height:calc(100dvh - 16px); margin:0; overflow:hidden; }
body.powerlab-page.pl-test-mode .pl-live-kpis { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
body.powerlab-page.pl-test-mode .pl-live-kpis .pl-kpi:nth-child(n+5) { display:none!important; }
body.powerlab-page.pl-test-mode .pl-live .pl-actions { display:flex; justify-content:flex-end; margin:10px 0 0; }
body.powerlab-page.pl-test-mode .pl-live #finish { display:none!important; }
body.powerlab-page.pl-test-mode .pl-live .pl-actions .pl-btn { min-width:132px; }

/* El anillo no invade el mensaje: la información de salida queda en tres bandas separadas. */
.pl-countdown-stage { box-sizing:border-box; }
.pl-countdown-rings { top:42%; width:min(52vh,430px); }
.pl-countdown-kicker { top:27%; color:#fff!important; }
.pl-countdown-number { top:35%; font-size:clamp(150px,24vw,270px); }
.pl-countdown-message { top:74%; color:#fff!important; }
.pl-countdown-track { top:84%; }
.pl-countdown-cancel { color:#ffd26c!important; }
@media (max-width:720px) {
  body.powerlab-page.pl-test-mode #livePanel { max-height:calc(100dvh - 12px); padding:12px; }
  body.powerlab-page.pl-test-mode .pl-live-brand { margin-bottom:4px; padding-bottom:5px; }
  body.powerlab-page.pl-test-mode .pl-live-hero-row { grid-template-columns:108px minmax(0,1fr); gap:7px; margin-bottom:7px; }
  body.powerlab-page.pl-test-mode .pl-live-timing,
  body.powerlab-page.pl-test-mode .pl-live-action { min-height:84px; padding:8px; }
  body.powerlab-page.pl-test-mode .pl-live-action strong { font-size:18px; }
  body.powerlab-page.pl-test-mode .pl-live-action p { display:none; }
  body.powerlab-page.pl-test-mode .pl-live-kpis { gap:7px; }
  body.powerlab-page.pl-test-mode .pl-kpi { min-height:60px; padding:9px 42px 8px 10px; }
  body.powerlab-page.pl-test-mode .pl-kpi b { font-size:clamp(23px,7vw,32px); }
  body.powerlab-page.pl-test-mode .pl-live .pl-actions { margin-top:7px; }
  body.powerlab-page.pl-test-mode .pl-live .pl-actions .pl-btn { width:100%; min-height:39px; }
  .pl-countdown-rings { top:41%; width:min(52vh,360px); }
  .pl-countdown-kicker { top:25%; }
  .pl-countdown-number { top:34%; font-size:min(44vw,220px); }
  .pl-countdown-message { top:72%; width:84%; color:#fff!important; font-size:16px; }
  .pl-countdown-track { top:81%; width:82%; }
}

/* PowerLab v11: countdown with real rows, no overlapping text, and a reliable live handoff. */
.pl-countdown-overlay { padding:16px; }
.pl-countdown-stage {
  width:min(780px,calc(100vw - 32px));
  height:min(760px,calc(100dvh - 32px));
  min-height:620px;
  display:grid!important;
  grid-template-rows:82px minmax(300px,1fr) 16px auto 74px;
  row-gap:12px;
  align-items:center;
  justify-items:center;
  padding:30px 40px 28px!important;
}
.pl-countdown-brand { top:30px!important; left:40px!important; z-index:5; }
.pl-countdown-brand b,
.pl-countdown-brand small,
.pl-countdown-status,
.pl-countdown-kicker { letter-spacing:0!important; }
.pl-countdown-brand b { color:#fff!important; }
.pl-countdown-brand small { color:#dceeff!important; opacity:1!important; }
.pl-countdown-status { top:32px!important; right:40px!important; z-index:5; color:#fff!important; }
.pl-countdown-rings {
  top:43%!important;
  left:50%!important;
  width:min(430px,50dvh)!important;
  z-index:1!important;
}
.pl-countdown-kicker {
  position:relative!important;
  z-index:4!important;
  grid-row:2;
  align-self:start;
  top:auto!important;
  left:auto!important;
  width:max-content;
  margin:44px 0 0!important;
  transform:none!important;
  color:#fff!important;
}
.pl-countdown-number {
  position:relative!important;
  z-index:3!important;
  grid-row:2;
  align-self:center;
  top:auto!important;
  left:auto!important;
  margin:0!important;
  transform:none!important;
  font-size:clamp(118px,20dvh,220px)!important;
  color:#fff!important;
}
.pl-countdown-number.is-ticking { animation:pl-countdown-impact .82s cubic-bezier(.18,.89,.25,1.18) both!important; }
.pl-countdown-track {
  position:relative!important;
  z-index:4!important;
  grid-row:3;
  top:auto!important;
  left:auto!important;
  width:min(620px,86%)!important;
  height:14px!important;
  margin:0!important;
  transform:none!important;
}
.pl-countdown-message {
  position:relative!important;
  z-index:4!important;
  grid-row:4;
  top:auto!important;
  left:auto!important;
  width:min(640px,88%)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  transform:none!important;
  color:#fff!important;
  opacity:1!important;
  font-size:clamp(17px,2.2dvh,23px)!important;
  line-height:1.32!important;
  font-weight:800!important;
  text-align:center!important;
  text-shadow:0 3px 14px rgba(0,0,0,.86)!important;
}
.pl-countdown-message strong { color:#ffd36d!important; }
.pl-countdown-cancel {
  position:relative!important;
  z-index:4!important;
  grid-row:5;
  align-self:end;
  justify-self:end;
  right:auto!important;
  bottom:auto!important;
  min-height:58px!important;
  margin:0!important;
}
@media (max-width:720px) {
  .pl-countdown-overlay { padding:10px; }
  .pl-countdown-stage {
    width:calc(100vw - 20px);
    height:calc(100dvh - 20px);
    min-height:0;
    grid-template-rows:66px minmax(250px,1fr) 10px auto 56px;
    row-gap:9px;
    padding:22px!important;
    border-radius:24px;
  }
  .pl-countdown-brand { top:22px!important; left:22px!important; }
  .pl-countdown-brand small { max-width:150px; font-size:11px!important; }
  .pl-countdown-status { top:24px!important; right:22px!important; min-height:32px!important; padding:0 10px!important; font-size:9px!important; }
  .pl-countdown-rings { top:42%!important; width:min(78vw,360px)!important; }
  .pl-countdown-kicker { margin-top:34px!important; padding:7px 11px!important; font-size:12px!important; }
  .pl-countdown-number { font-size:clamp(100px,18dvh,170px)!important; }
  .pl-countdown-track { width:86%!important; height:10px!important; }
  .pl-countdown-message { width:90%!important; font-size:15px!important; line-height:1.28!important; }
  .pl-countdown-cancel { min-height:48px!important; padding:8px 14px!important; border-radius:14px!important; font-size:15px!important; }
}
@media (max-height:620px) {
  .pl-countdown-stage {
    min-height:0;
    grid-template-rows:52px minmax(180px,1fr) 8px auto 50px;
    row-gap:7px;
    padding:18px 24px!important;
  }
  .pl-countdown-brand { top:18px!important; left:24px!important; }
  .pl-countdown-mark { width:40px!important; height:40px!important; font-size:21px!important; }
  .pl-countdown-brand b { font-size:14px!important; }
  .pl-countdown-brand small { font-size:10px!important; }
  .pl-countdown-status { top:20px!important; right:24px!important; min-height:31px!important; font-size:9px!important; }
  .pl-countdown-rings { width:min(300px,54dvh)!important; }
  .pl-countdown-kicker { margin-top:18px!important; font-size:11px!important; padding:6px 10px!important; }
  .pl-countdown-number { font-size:clamp(82px,18dvh,132px)!important; }
  .pl-countdown-message { font-size:13px!important; line-height:1.2!important; }
  .pl-countdown-cancel { min-height:42px!important; padding:7px 12px!important; font-size:13px!important; }
  .pl-countdown-cancel span { width:24px!important; height:24px!important; font-size:18px!important; }
}

/* PowerLab v12: hard live handoff after countdown. The live board must own the
   viewport, keep its own scroll, and never fall back visually to preparation. */
body.powerlab-page.pl-live-dashboard-active {
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#061522!important;
}
body.powerlab-page.pl-live-dashboard-active :is(#topbarMount,.pl-hero,.pl-setup-screen-nav,.pl-setup,.pl-lower,#offlineBanner,#araAthleteMobileBottom,.ara-athlete-desktop-sidebar,.ara-athlete-mobile-more,.coach-float-sidebar) {
  display:none!important;
}
body.powerlab-page.pl-live-dashboard-active .pl-wrap {
  position:fixed!important;
  inset:0!important;
  box-sizing:border-box!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  min-height:100dvh!important;
  padding:clamp(10px,1.6vw,22px)!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:
    radial-gradient(circle at 70% 8%,rgba(39,112,158,.24),transparent 28%),
    linear-gradient(145deg,#061522,#03101d)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  box-sizing:border-box!important;
  width:min(1220px,100%)!important;
  height:auto!important;
  max-height:calc(100dvh - 22px)!important;
  margin:0!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  color:#f7fbff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel.is-launching > :not(.pl-live-brand):not(.pl-live-launch) {
  display:initial!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel :is(.pl-live-context,.pl-live-brand,.pl-live-action,.pl-live-timing,.pl-kpi,.pl-live-instruction,.pl-live-safety) {
  color:#f7fbff;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-context small,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-progress-text,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-muted {
  color:#cfe3f4!important;
  opacity:1!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
  grid-template-columns:repeat(7,minmax(118px,1fr))!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi,
body.powerlab-page.pl-test-mode #livePanel .pl-kpi {
  border-color:rgba(158,207,244,.32)!important;
  background:linear-gradient(155deg,rgba(27,68,98,.98),rgba(13,39,60,.98))!important;
  color:#f7fbff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi span,
body.powerlab-page.pl-test-mode #livePanel .pl-kpi span {
  color:#b9d4e8!important;
  opacity:1!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi b,
body.powerlab-page.pl-test-mode #livePanel .pl-kpi b {
  color:#fff!important;
  text-shadow:0 4px 14px rgba(0,0,0,.28)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi:nth-child(n+5) {
  display:grid!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi[hidden],
body.powerlab-page.pl-test-mode #livePanel .pl-kpi[hidden],
body.powerlab-page #livePanel .pl-kpi.is-live-kpi-hidden {
  display:none!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel #finish {
  display:inline-flex!important;
}

/* PowerLab v14: contador centrado, tarjetas configurables y reporte con perfil. */
body.powerlab-page .pl-countdown-stage {
  width:min(780px,calc(100vw - 28px))!important;
  height:min(760px,calc(100dvh - 28px))!important;
  min-height:560px!important;
}
body.powerlab-page .pl-countdown-rings {
  top:45%!important;
  left:50%!important;
  width:min(430px,58vw,54dvh)!important;
  transform:translate(-50%,-50%)!important;
}
body.powerlab-page .pl-countdown-number {
  top:45%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  font-size:clamp(118px,18vw,245px)!important;
  line-height:.86!important;
  color:#fff!important;
  opacity:1!important;
  z-index:5!important;
}
body.powerlab-page .pl-countdown-number.is-ticking {
  animation:pl-countdown-impact-center-v14 .72s cubic-bezier(.18,.89,.25,1.18) both!important;
}
body.powerlab-page .pl-countdown-kicker {
  top:25%!important;
  color:#fff!important;
  opacity:1!important;
}
body.powerlab-page .pl-countdown-track {
  top:73%!important;
}
body.powerlab-page .pl-countdown-message {
  top:77%!important;
  width:min(620px,84%)!important;
  color:#fff!important;
  opacity:1!important;
  font-weight:900!important;
  text-shadow:0 4px 20px rgba(0,0,0,.82)!important;
}
body.powerlab-page .pl-countdown-cancel {
  bottom:28px!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-backdrop {
  background:radial-gradient(circle at 50% 42%,rgba(211,235,255,.94),rgba(235,243,252,.98) 66%)!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-stage {
  background:radial-gradient(circle at 50% 42%,rgba(47,126,183,.25),transparent 33%),linear-gradient(145deg,#f8fcff,#dfefff)!important;
  color:#102235!important;
  border-color:#bc8321!important;
  box-shadow:0 26px 72px rgba(23,62,96,.24)!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-brand b,
body[data-theme="light"].powerlab-page .pl-countdown-status,
body[data-theme="light"].powerlab-page .pl-countdown-kicker,
body[data-theme="light"].powerlab-page .pl-countdown-message {
  color:#102235!important;
  text-shadow:none!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-number {
  color:#102235!important;
  text-shadow:0 0 6px rgba(255,255,255,.92),0 14px 32px rgba(50,88,122,.3)!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-message strong,
body[data-theme="light"].powerlab-page .pl-countdown-kicker {
  color:#9b6500!important;
}
@keyframes pl-countdown-impact-center-v14 {
  0% { opacity:.08; transform:translate(-50%,-50%) scale(.5); }
  72% { opacity:1; transform:translate(-50%,-50%) scale(1.08); }
  100% { opacity:1; transform:translate(-50%,-50%) scale(1); }
}
body.powerlab-page .pl-kpi-dialog {
  max-width:min(620px,calc(100vw - 28px));
  border:1px solid var(--pl-line);
  border-radius:22px;
  padding:20px;
  background:var(--pl-card);
  color:var(--pl-text);
  box-shadow:0 30px 80px rgba(0,0,0,.38);
}
body.powerlab-page .pl-kpi-dialog::backdrop { background:rgba(3,14,26,.72); }
body.powerlab-page .pl-kpi-dialog h3 { margin:.25rem 0; font-size:22px; }
body.powerlab-page .pl-kpi-dialog p { color:var(--pl-muted); margin:.25rem 0 1rem; }
body.powerlab-page .pl-kpi-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.powerlab-page .pl-kpi-choice {
  display:flex; gap:10px; align-items:flex-start;
  border:1px solid var(--pl-line); border-radius:14px;
  padding:12px; background:var(--pl-card2); cursor:pointer;
}
body.powerlab-page .pl-kpi-choice input { width:20px; height:20px; accent-color:var(--pl-gold); }
body.powerlab-page .pl-kpi-choice b { display:block; color:var(--pl-text); }
body.powerlab-page .pl-kpi-choice small { display:block; color:var(--pl-muted); line-height:1.35; }
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}
body.powerlab-page .pl-power-category {
  display:grid; gap:6px; padding:16px; border:1px solid var(--pl-line);
  border-left:5px solid var(--pl-gold); border-radius:15px; background:var(--pl-card2);
}
body.powerlab-page .pl-power-category b { font-size:22px; color:var(--pl-text); }
body.powerlab-page .pl-power-category span { color:var(--pl-gold); font-weight:900; }
body.powerlab-page .pl-power-category p { margin:0; color:var(--pl-text); }
body.powerlab-page .pl-power-category small { color:var(--pl-muted); }
body.powerlab-page .pl-mmp-chart {
  margin:12px 0 0; padding:12px; border:1px solid var(--pl-line);
  border-radius:14px; background:var(--pl-card2); color:var(--pl-text);
}
body.powerlab-page .pl-mmp-chart figcaption { display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; color:var(--pl-muted); }
body.powerlab-page .pl-mmp-chart figcaption b { color:var(--pl-text); }
body.powerlab-page .pl-mmp-chart svg { width:100%; height:auto; min-height:180px; overflow:visible; }
@media (max-width:720px) {
  body.powerlab-page .pl-countdown-stage { min-height:min(680px,calc(100dvh - 20px))!important; }
  body.powerlab-page .pl-countdown-rings { top:43%!important; width:min(360px,78vw,48dvh)!important; }
  body.powerlab-page .pl-countdown-number { top:43%!important; font-size:clamp(98px,32vw,180px)!important; }
  body.powerlab-page .pl-countdown-kicker { top:24%!important; }
  body.powerlab-page .pl-countdown-track { top:72%!important; width:82%!important; }
  body.powerlab-page .pl-countdown-message { top:76%!important; font-size:15px!important; line-height:1.28!important; }
  body.powerlab-page .pl-countdown-cancel { right:18px!important; bottom:18px!important; }
  body.powerlab-page .pl-kpi-choice-grid { grid-template-columns:1fr; }
}

/* PowerLab v15: geometría final de salida + KPIs limpios en claro/oscuro. */
body.powerlab-page .pl-countdown-stage {
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
}
body.powerlab-page .pl-countdown-rings {
  position:absolute!important;
  top:45%!important;
  left:50%!important;
  width:min(430px,56vw,53dvh)!important;
  transform:translate(-50%,-50%)!important;
}
body.powerlab-page .pl-countdown-kicker {
  position:absolute!important;
  top:23%!important;
  left:50%!important;
  transform:translateX(-50%)!important;
}
body.powerlab-page .pl-countdown-number {
  position:absolute!important;
  top:45%!important;
  left:50%!important;
  width:auto!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  font-size:clamp(128px,15vw,218px)!important;
  letter-spacing:-.045em!important;
  text-align:center!important;
}
body.powerlab-page .pl-countdown-number.is-ticking {
  animation:pl-countdown-impact-center-v15 .72s cubic-bezier(.18,.89,.25,1.18) both!important;
}
body.powerlab-page .pl-countdown-track {
  position:absolute!important;
  top:72%!important;
  left:50%!important;
  width:min(560px,72%)!important;
  transform:translateX(-50%)!important;
}
body.powerlab-page .pl-countdown-message {
  position:absolute!important;
  top:76%!important;
  left:50%!important;
  width:min(620px,82%)!important;
  transform:translateX(-50%)!important;
  padding:0!important;
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 4px 18px rgba(0,0,0,.86)!important;
}
body.powerlab-page .pl-countdown-message strong { color:#ffd36d!important; }
body[data-theme="light"].powerlab-page .pl-countdown-message {
  color:#102235!important;
  text-shadow:0 1px 0 rgba(255,255,255,.75)!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-message strong { color:#9b6500!important; }
body.powerlab-page .pl-live-kpis .pl-kpi[hidden],
body.powerlab-page .pl-live-kpis .pl-kpi.is-live-kpi-hidden {
  display:none!important;
}
body.powerlab-page.pl-test-mode #livePanel .pl-live-kpis,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}
@keyframes pl-countdown-impact-center-v15 {
  0% { opacity:.08; transform:translate(-50%,-50%) scale(.52); }
  72% { opacity:1; transform:translate(-50%,-50%) scale(1.06); }
  100% { opacity:1; transform:translate(-50%,-50%) scale(1); }
}
@media (max-width:720px) {
  body.powerlab-page .pl-countdown-rings { top:42%!important; width:min(350px,78vw,48dvh)!important; }
  body.powerlab-page .pl-countdown-kicker { top:21%!important; }
  body.powerlab-page .pl-countdown-number { top:42%!important; font-size:clamp(104px,28vw,168px)!important; }
  body.powerlab-page .pl-countdown-track { top:70%!important; width:82%!important; height:10px!important; }
  body.powerlab-page .pl-countdown-message { top:74%!important; width:86%!important; font-size:15px!important; line-height:1.24!important; }
}
@media (max-width:920px) {
  body.powerlab-page.pl-live-dashboard-active .pl-wrap {
    padding:8px!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel {
    width:100%!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:18px!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-height:700px) {
  body.powerlab-page.pl-live-dashboard-active #livePanel {
    max-height:calc(100dvh - 12px)!important;
  }
}

/* PowerLab v16: salida limpia, datos en vivo a pantalla completa y gráficas interactivas. */
body.powerlab-page.pl-countdown-active {
  overflow:hidden!important;
}
body.powerlab-page .pl-countdown-overlay {
  position:fixed!important;
  inset:0!important;
  display:none;
  place-items:center!important;
  padding:clamp(12px,2.6vw,36px)!important;
  z-index:2147482600!important;
}
body.powerlab-page .pl-countdown-overlay.is-open {
  display:grid!important;
}
body.powerlab-page .pl-countdown-backdrop {
  position:absolute!important;
  inset:0!important;
  background:radial-gradient(circle at 50% 42%,rgba(18,68,103,.62),rgba(2,12,22,.92) 62%,rgba(1,8,16,.98))!important;
  backdrop-filter:blur(10px)!important;
}
body.powerlab-page .pl-countdown-stage {
  width:min(920px,calc(100vw - 28px))!important;
  min-height:min(760px,calc(100dvh - 28px))!important;
  max-height:calc(100dvh - 28px)!important;
  border-radius:32px!important;
  background:radial-gradient(circle at 50% 42%,rgba(30,91,136,.58),transparent 33%),linear-gradient(145deg,#051326,#020a14)!important;
  color:#fff!important;
  box-shadow:0 34px 110px rgba(0,0,0,.58)!important;
}
body.powerlab-page .pl-countdown-brand,
body.powerlab-page .pl-countdown-status,
body.powerlab-page .pl-countdown-kicker,
body.powerlab-page .pl-countdown-number,
body.powerlab-page .pl-countdown-message {
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 6px 22px rgba(0,0,0,.78)!important;
}
body.powerlab-page .pl-countdown-brand small {
  color:#dcecff!important;
  opacity:.94!important;
}
body.powerlab-page .pl-countdown-brand em {
  color:#35b9ff!important;
  font-style:normal!important;
}
body.powerlab-page .pl-countdown-kicker {
  top:24%!important;
  padding:10px 24px!important;
  border:1px solid rgba(255,194,74,.95)!important;
  border-radius:999px!important;
  background:rgba(2,13,25,.72)!important;
  letter-spacing:.18em!important;
  font-size:clamp(14px,1.3vw,18px)!important;
}
body.powerlab-page .pl-countdown-rings {
  top:43%!important;
  width:min(500px,58vw,55dvh)!important;
}
body.powerlab-page .pl-countdown-number {
  top:43%!important;
  font-size:clamp(132px,16vw,240px)!important;
  filter:drop-shadow(0 6px 16px rgba(255,255,255,.28))!important;
}
body.powerlab-page .pl-countdown-track {
  top:auto!important;
  bottom:126px!important;
  width:min(620px,78%)!important;
  height:13px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.07))!important;
  border:1px solid rgba(216,232,248,.36)!important;
}
body.powerlab-page .pl-countdown-track span {
  background:linear-gradient(90deg,#e99d19,#ffe68d,#f0a725)!important;
  box-shadow:0 0 18px rgba(255,211,109,.82)!important;
}
body.powerlab-page .pl-countdown-message {
  top:auto!important;
  bottom:150px!important;
  width:min(650px,82%)!important;
  font-size:clamp(18px,2.2vw,28px)!important;
  line-height:1.25!important;
  font-weight:900!important;
}
body.powerlab-page .pl-countdown-message strong {
  color:#ffd36d!important;
}
body.powerlab-page .pl-countdown-footer {
  position:absolute!important;
  left:clamp(22px,4vw,54px)!important;
  right:clamp(22px,4vw,54px)!important;
  bottom:34px!important;
  display:flex!important;
  justify-content:flex-end!important;
  z-index:10!important;
}
body.powerlab-page .pl-countdown-cancel {
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  min-height:58px!important;
  padding:0 28px!important;
  border:1px solid rgba(255,203,93,.92)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(6,19,34,.94),rgba(12,38,62,.96))!important;
  color:#ffd36d!important;
  box-shadow:0 10px 28px rgba(0,0,0,.32), inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
body.powerlab-page .pl-countdown-cancel span {
  color:#fff!important;
  border-color:rgba(255,255,255,.8)!important;
}
body[data-theme="light"].powerlab-page .pl-countdown-stage,
body[data-theme="light"].powerlab-page .pl-countdown-backdrop {
  color:#fff!important;
}

body.powerlab-page.pl-live-dashboard-active,
body.powerlab-page.pl-test-mode {
  overflow:hidden!important;
  background:#061522!important;
}
body.powerlab-page.pl-test-mode .pl-result-full,
body.powerlab-page.pl-live-dashboard-active .pl-result-full {
  display:none!important;
}
body.powerlab-page.pl-live-dashboard-active .pl-wrap {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  background:radial-gradient(circle at 50% 0%,rgba(28,86,127,.42),transparent 48%),#061522!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:clamp(16px,2vw,34px)!important;
  border:0!important;
  border-radius:0!important;
  overflow:auto!important;
  background:radial-gradient(circle at 50% 0%,rgba(33,103,151,.36),transparent 45%),linear-gradient(145deg,#102d46 0%,#071a2b 58%,#04111f 100%)!important;
  color:#f7fbff!important;
  box-shadow:none!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-eyebrow,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-timer,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-progress-wrap,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-live-instruction,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-live-kpis,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-muted,
body.powerlab-page.pl-live-dashboard-active #livePanel > .pl-actions {
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-hero-row {
  max-width:1440px!important;
  margin:10px auto 20px!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-timer {
  font-size:clamp(72px,12vw,172px)!important;
  line-height:.94!important;
  color:#fff!important;
  text-shadow:0 12px 34px rgba(0,0,0,.42)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action {
  background:rgba(5,18,31,.74)!important;
  border-color:#ffd36d!important;
  color:#fff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action strong {
  color:#fff!important;
  font-size:clamp(28px,4.2vw,58px)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action p,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-muted,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-instruction {
  color:#e7f2ff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:clamp(12px,1.4vw,20px)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi {
  min-height:150px!important;
  padding:22px 72px 22px 24px!important;
  border-color:rgba(139,185,225,.42)!important;
  background:linear-gradient(145deg,rgba(23,77,111,.94),rgba(15,55,84,.9))!important;
  color:#fff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi span {
  color:#dbeaff!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi b {
  color:#fff!important;
  font-size:clamp(34px,4vw,58px)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi-icon {
  color:#ffd36d!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi.is-cadence-low {
  border-color:#ff6b7c!important;
  background:linear-gradient(145deg,rgba(87,19,36,.96),rgba(42,20,35,.94))!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-actions {
  justify-content:flex-end!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-btn {
  min-height:52px!important;
  padding:13px 22px!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel {
  background:radial-gradient(circle at 50% 0%,rgba(221,241,255,.95),transparent 44%),linear-gradient(145deg,#f6fbff,#eaf3fb)!important;
  color:#102235!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action {
  background:#fff!important;
  color:#102235!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action strong,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-timer,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi b {
  color:#102235!important;
  text-shadow:none!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action p,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-muted,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-instruction {
  color:#31495f!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi {
  background:#fff!important;
  color:#102235!important;
  border-color:#a8c4dc!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi span {
  color:#526779!important;
}

body.powerlab-page .pl-chart-hotspot {
  fill:transparent!important;
  stroke:transparent!important;
  pointer-events:all!important;
  cursor:crosshair!important;
}
body.powerlab-page .pl-mmp-point {
  fill:#ffd36d!important;
  fill-opacity:.95!important;
  stroke:#102235!important;
  stroke-width:2!important;
}
.pl-chart-tooltip {
  position:fixed;
  z-index:2147483000;
  pointer-events:none;
  max-width:min(320px,calc(100vw - 24px));
  padding:10px 12px;
  border:1px solid rgba(255,211,109,.72);
  border-radius:12px;
  background:#061522;
  color:#fff;
  box-shadow:0 14px 36px rgba(0,0,0,.36);
  font:800 13px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;
}
body[data-theme="light"] .pl-chart-tooltip {
  background:#102235;
  color:#fff;
}
body.powerlab-page .pl-countdown-kicker {
  top:19%!important;
  transform:translate(-50%,-50%)!important;
  z-index:5!important;
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 2px 12px rgba(0,0,0,.55)!important;
}
body.powerlab-page .pl-countdown-number {
  top:47%!important;
  transform:translate(-50%,-50%)!important;
  z-index:4!important;
}
body.powerlab-page .pl-chart-dot {
  pointer-events:all!important;
  cursor:crosshair!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.28));
}
body.powerlab-page .pl-chart-axis-title {
  fill:currentColor;
  font-size:12px;
  font-weight:900;
}
body.powerlab-page .pl-chart-axis-value {
  fill:currentColor;
  font-size:10px;
  font-weight:800;
  opacity:.78;
}
body.powerlab-page .pl-chart-value-label {
  fill:currentColor;
  font-size:10px;
  font-weight:900;
  paint-order:stroke;
  stroke:rgba(6,21,34,.78);
  stroke-width:3px;
  stroke-linejoin:round;
}
body[data-theme="light"].powerlab-page .pl-chart-value-label {
  stroke:rgba(255,255,255,.88);
}
body.powerlab-page .pl-hr-signal-panel {
  margin-top:12px;
  padding:12px;
  border:1px solid var(--pl-line);
  border-radius:14px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--pl-card2) 88%,transparent),color-mix(in srgb,var(--pl-card) 94%,transparent));
  display:grid;
  gap:5px;
}
body.powerlab-page .pl-hr-signal-panel span {
  color:var(--pl-muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.powerlab-page .pl-hr-signal-panel b {
  color:var(--pl-text);
  font-size:clamp(24px,4vw,34px);
  font-variant-numeric:tabular-nums;
}
body.powerlab-page .pl-hr-signal-panel small {
  color:var(--pl-muted);
  line-height:1.35;
}
body.powerlab-page .pl-hr-signal-panel[data-tone="ok"] {
  border-color:var(--pl-ok);
  box-shadow:inset 4px 0 0 var(--pl-ok);
}
body.powerlab-page .pl-hr-signal-panel[data-tone="warn"] {
  border-color:var(--pl-warn);
  box-shadow:inset 4px 0 0 var(--pl-warn);
}
body.powerlab-page .pl-hr-signal-panel[data-tone="danger"] {
  border-color:var(--pl-danger);
  box-shadow:inset 4px 0 0 var(--pl-danger);
}

/* Final UX layer: visible FC validation before the test. */
body.powerlab-page .pl-hr-signal-card {
  margin:14px 0 0;
  padding:16px;
  border:1px solid color-mix(in srgb,var(--pl-line) 80%,#38bdf8);
  border-radius:20px;
  background:
    radial-gradient(circle at top left,rgba(56,189,248,.14),transparent 36%),
    linear-gradient(135deg,color-mix(in srgb,var(--pl-card2) 92%,transparent),color-mix(in srgb,var(--pl-card) 96%,transparent));
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(190px,260px) auto;
  gap:14px;
  align-items:center;
  box-shadow:0 16px 30px rgba(11,31,52,.08);
}
body.powerlab-page .pl-hr-signal-card[data-tone="ok"] {
  border-color:color-mix(in srgb,var(--pl-ok) 70%,var(--pl-line));
  box-shadow:0 16px 30px rgba(8,125,77,.12), inset 0 0 0 1px color-mix(in srgb,var(--pl-ok) 20%,transparent);
}
body.powerlab-page .pl-hr-signal-card[data-tone="warn"] {
  border-color:color-mix(in srgb,var(--pl-warn) 70%,var(--pl-line));
}
body.powerlab-page .pl-hr-signal-card[data-tone="danger"] {
  border-color:color-mix(in srgb,var(--pl-danger) 70%,var(--pl-line));
}
body.powerlab-page .pl-hr-signal-copy h3 {
  margin:4px 0 4px;
  color:var(--pl-text);
  font-size:clamp(18px,2vw,24px);
}
body.powerlab-page .pl-hr-signal-copy p {
  margin:0;
  color:var(--pl-muted);
  line-height:1.4;
}
body.powerlab-page .pl-hr-signal-card .pl-hr-signal-panel {
  margin:0;
  min-height:96px;
  border-width:2px;
  background:color-mix(in srgb,var(--pl-card) 86%,#fff 8%);
}
body.powerlab-page .pl-hr-signal-card .pl-actions {
  margin:0;
  justify-content:flex-end;
}
body.powerlab-page .pl-hr-signal-card .pl-actions .pl-btn {
  min-height:46px;
}
body[data-theme="dark"].powerlab-page .pl-hr-signal-card {
  background:
    radial-gradient(circle at top left,rgba(56,189,248,.18),transparent 38%),
    linear-gradient(135deg,rgba(18,38,61,.96),rgba(7,18,31,.98));
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
body[data-theme="light"].powerlab-page .pl-hr-signal-card {
  background:
    radial-gradient(circle at top left,rgba(2,132,199,.09),transparent 35%),
    linear-gradient(135deg,#f8fbff,#ffffff);
}
@media (max-width:980px) {
  body.powerlab-page .pl-hr-signal-card {
    grid-template-columns:1fr;
    align-items:stretch;
  }
  body.powerlab-page .pl-hr-signal-card .pl-actions {
    justify-content:stretch;
  }
  body.powerlab-page .pl-hr-signal-card .pl-actions .pl-btn {
    flex:1 1 180px;
  }
}
@media (max-width:920px) {
  body.powerlab-page .pl-countdown-stage {
    width:calc(100vw - 22px)!important;
    min-height:calc(100dvh - 22px)!important;
    border-radius:24px!important;
  }
  body.powerlab-page .pl-countdown-rings {
    top:42%!important;
    width:min(390px,76vw,46dvh)!important;
  }
  body.powerlab-page .pl-countdown-number {
    top:46%!important;
    font-size:clamp(108px,32vw,190px)!important;
  }
  body.powerlab-page .pl-countdown-kicker {
    top:18%!important;
  }
  body.powerlab-page .pl-countdown-track {
    bottom:118px!important;
    width:82%!important;
  }
  body.powerlab-page .pl-countdown-message {
    bottom:142px!important;
    width:86%!important;
    font-size:clamp(16px,4.2vw,24px)!important;
  }
  body.powerlab-page .pl-countdown-footer {
    bottom:26px!important;
    justify-content:center!important;
  }
  body.powerlab-page .pl-countdown-cancel {
    width:min(360px,100%)!important;
    justify-content:center!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel {
    padding:14px 12px 20px!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-hero-row {
    grid-template-columns:1fr!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-kpi {
    min-height:132px!important;
    padding:18px 60px 18px 18px!important;
  }
}
@media (max-width:520px) {
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis {
    grid-template-columns:1fr!important;
  }
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-timer {
    font-size:clamp(62px,22vw,104px)!important;
  }
  body.powerlab-page .pl-countdown-brand {
    left:20px!important;
    top:18px!important;
  }
  body.powerlab-page .pl-countdown-status {
    right:18px!important;
    top:20px!important;
    transform:scale(.88);
    transform-origin:top right;
  }
}

/* PowerLab guided test wizard: simple, modal, responsive */
body.powerlab-page.pl-wizard-open {
  overflow:hidden;
}
body.powerlab-page .pl-guided-launch {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0;
  padding:20px;
  border:1px solid var(--pl-border);
  border-radius:22px;
  color:var(--pl-ink);
  background:
    radial-gradient(circle at top left, color-mix(in srgb,var(--pl-accent) 16%,transparent), transparent 32%),
    linear-gradient(135deg, var(--pl-surface), var(--pl-surface-soft));
  box-shadow:0 18px 46px rgba(15,35,55,.10);
}
body.powerlab-page .pl-guided-launch h2 {
  margin:4px 0 6px;
  color:var(--pl-ink);
  font-size:clamp(22px,2.3vw,34px);
  line-height:1.05;
}
body.powerlab-page .pl-guided-launch p {
  max-width:760px;
  margin:0;
  color:var(--pl-ink-muted);
  line-height:1.45;
}
body.powerlab-page .pl-guided-launch-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
body.powerlab-page .pl-compact-connection {
  min-height:0!important;
}
body.powerlab-page .pl-wizard-card[hidden] {
  display:none!important;
}
body.powerlab-page .pl-wizard-overlay[hidden] {
  display:none!important;
}
body.powerlab-page .pl-wizard-overlay {
  position:fixed;
  inset:0;
  z-index:2147481200;
  display:grid;
  place-items:center;
  padding:22px;
}
body.powerlab-page .pl-wizard-backdrop {
  position:absolute;
  inset:0;
  background:rgba(3,14,26,.72);
  backdrop-filter:blur(10px);
}
body.powerlab-page .pl-wizard-modal {
  position:relative;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  width:min(1020px,calc(100vw - 28px));
  max-height:min(900px,calc(100dvh - 28px));
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--pl-border) 78%,var(--pl-accent));
  border-radius:28px;
  color:var(--pl-ink);
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb,var(--pl-accent) 13%,transparent), transparent 32%),
    linear-gradient(145deg,var(--pl-surface),var(--pl-surface-soft));
  box-shadow:0 34px 95px rgba(0,0,0,.42);
}
body.powerlab-page .pl-wizard-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:24px 26px 18px;
  border-bottom:1px solid var(--pl-border);
}
body.powerlab-page .pl-wizard-head h2 {
  margin:4px 0 3px;
  color:var(--pl-ink);
  font-size:clamp(24px,2.5vw,38px);
  line-height:1.05;
}
body.powerlab-page .pl-wizard-head p {
  margin:0;
  color:var(--pl-ink-muted);
}
body.powerlab-page .pl-wizard-close {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid var(--pl-border);
  border-radius:14px;
  color:var(--pl-ink);
  background:var(--pl-surface);
  font-size:24px;
  font-weight:900;
  cursor:pointer;
}
body.powerlab-page .pl-wizard-steps {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  padding:14px 18px;
  border-bottom:1px solid var(--pl-border);
  background:color-mix(in srgb,var(--pl-surface-soft) 78%,transparent);
}
body.powerlab-page .pl-wizard-steps button {
  display:flex;
  align-items:center;
  gap:9px;
  min-height:48px;
  padding:9px 10px;
  border:1px solid var(--pl-border);
  border-radius:14px;
  color:var(--pl-ink);
  background:var(--pl-surface);
  font:inherit;
  font-weight:900;
  text-align:left;
  cursor:pointer;
}
body.powerlab-page .pl-wizard-steps button span {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  flex:0 0 28px;
  border:1px solid var(--pl-border);
  border-radius:999px;
  color:var(--pl-accent);
  background:color-mix(in srgb,var(--pl-accent) 8%,var(--pl-surface));
  font-size:12px;
}
body.powerlab-page .pl-wizard-steps button.active {
  border-color:var(--pl-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--pl-accent) 18%,transparent);
}
body.powerlab-page .pl-wizard-steps button.done span {
  color:#fff;
  border-color:#0f8f61;
  background:#0f8f61;
}
body.powerlab-page .pl-wizard-body {
  min-height:0;
  overflow:auto;
  padding:22px 26px;
}
body.powerlab-page .pl-wizard-step[hidden] {
  display:none!important;
}
body.powerlab-page .pl-wizard-step {
  display:grid;
  gap:16px;
}
body.powerlab-page .pl-wizard-step-copy {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid var(--pl-border);
  border-radius:18px;
  background:var(--pl-surface-soft);
}
body.powerlab-page .pl-wizard-step-copy > span {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:13px;
  color:var(--pl-accent-ink);
  background:var(--pl-accent);
  font-weight:950;
}
body.powerlab-page .pl-wizard-step-copy h3 {
  margin:0 0 3px;
  color:var(--pl-ink);
}
body.powerlab-page .pl-wizard-step-copy p {
  margin:0;
  color:var(--pl-ink-muted);
  line-height:1.4;
}
body.powerlab-page .pl-wizard-modal label,
body.powerlab-page .pl-wizard-modal .pl-status,
body.powerlab-page .pl-wizard-modal .pl-preflight,
body.powerlab-page .pl-wizard-modal .pl-readiness,
body.powerlab-page .pl-wizard-modal .pl-hr-signal-card {
  width:100%;
}
body.powerlab-page .pl-wizard-modal label {
  display:grid;
  gap:7px;
  color:var(--pl-ink);
  font-weight:900;
}
body.powerlab-page .pl-wizard-modal :is(input,select,textarea) {
  min-height:48px;
  padding:11px 13px;
  border:1px solid var(--pl-border);
  border-radius:12px;
  color:var(--pl-ink);
  background:var(--pl-surface);
  font:inherit;
  font-weight:850;
}
body.powerlab-page .pl-wizard-modal :is(input,select,textarea)::placeholder {
  color:var(--pl-ink-muted);
  opacity:1;
}
body.powerlab-page .pl-wizard-action-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid var(--pl-border);
  border-radius:16px;
  background:var(--pl-surface-soft);
}
body.powerlab-page .pl-wizard-row-label {
  flex:1 1 180px;
  color:var(--pl-accent);
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.powerlab-page .pl-wizard-action-row .pl-btn {
  min-height:46px;
}
body.powerlab-page .pl-wizard-start-row .pl-btn.primary {
  min-width:190px;
}
body.powerlab-page .pl-wizard-queue {
  padding:12px;
  border:1px solid var(--pl-border);
  border-radius:16px;
  background:var(--pl-surface-soft);
}
body.powerlab-page .pl-wizard-queue summary {
  color:var(--pl-ink);
  font-weight:950;
  cursor:pointer;
}
body.powerlab-page .pl-wizard-footer {
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:16px 26px 22px;
  border-top:1px solid var(--pl-border);
  background:color-mix(in srgb,var(--pl-surface) 88%,transparent);
}
body.powerlab-page .pl-wizard-modal .pl-btn,
body.powerlab-page .pl-guided-launch .pl-btn {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:46px!important;
  padding:10px 16px!important;
  border-radius:13px!important;
  border:1px solid var(--pl-border)!important;
  color:var(--pl-ink)!important;
  background:var(--pl-surface)!important;
  box-shadow:0 10px 22px rgba(15,35,55,.08)!important;
  font-size:14px!important;
  font-weight:950!important;
  text-decoration:none!important;
}
body.powerlab-page .pl-wizard-modal .pl-btn.primary,
body.powerlab-page .pl-guided-launch .pl-btn.primary {
  border-color:color-mix(in srgb,var(--pl-accent) 85%,#7b4f00)!important;
  color:var(--pl-accent-ink)!important;
  background:linear-gradient(135deg,var(--pl-accent),#d69416)!important;
}
body.powerlab-page .pl-wizard-modal .pl-btn:disabled {
  opacity:.55;
  cursor:not-allowed;
}
body[data-theme="dark"].powerlab-page .pl-guided-launch,
body[data-theme="dark"].powerlab-page .pl-wizard-modal {
  box-shadow:0 34px 95px rgba(0,0,0,.56);
}
body[data-theme="dark"].powerlab-page .pl-wizard-backdrop {
  background:rgba(2,10,18,.82);
}
@media (max-width:920px) {
  body.powerlab-page .pl-guided-launch {
    align-items:stretch;
    flex-direction:column;
  }
  body.powerlab-page .pl-guided-launch-actions {
    justify-content:stretch;
  }
  body.powerlab-page .pl-guided-launch-actions .pl-btn {
    flex:1 1 180px;
  }
  body.powerlab-page .pl-wizard-overlay {
    padding:10px;
    align-items:stretch;
  }
  body.powerlab-page .pl-wizard-modal {
    width:100%;
    max-height:calc(100dvh - 20px);
    border-radius:22px;
  }
  body.powerlab-page .pl-wizard-head {
    padding:18px 18px 14px;
  }
  body.powerlab-page .pl-wizard-steps {
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding:12px;
  }
  body.powerlab-page .pl-wizard-steps button {
    min-height:44px;
    font-size:12px;
  }
  body.powerlab-page .pl-wizard-body {
    padding:16px;
  }
  body.powerlab-page .pl-wizard-footer {
    padding:13px 16px 16px;
  }
}
@media (max-width:560px) {
  body.powerlab-page .pl-wizard-steps {
    grid-template-columns:1fr;
  }
  body.powerlab-page .pl-wizard-head {
    gap:10px;
  }
  body.powerlab-page .pl-wizard-close {
    width:40px;
    height:40px;
    flex-basis:40px;
  }
  body.powerlab-page .pl-wizard-footer {
    position:sticky;
    bottom:0;
  }
  body.powerlab-page .pl-wizard-footer .pl-btn {
    flex:1 1 0;
  }
}

/* PowerLab v23: flujo guiado, contraste claro/oscuro y grafica viva */
body.powerlab-page .pl-wizard-alert {
  flex:1 1 100%;
  margin:0 0 4px;
  padding:11px 14px;
  border:1px solid #ef4444;
  border-radius:14px;
  background:#fff1f2;
  color:#991b1b;
  font-weight:900;
  line-height:1.35;
}
body[data-theme="dark"].powerlab-page .pl-wizard-alert {
  background:rgba(239,68,68,.14);
  color:#fecdd3;
  border-color:rgba(248,113,113,.66);
}
body.powerlab-page .pl-field-invalid {
  border-color:#ef4444!important;
  box-shadow:0 0 0 4px rgba(239,68,68,.15)!important;
  background:#fffafa!important;
}
body[data-theme="dark"].powerlab-page .pl-field-invalid {
  background:#1e0f16!important;
}
body.powerlab-page .pl-wizard-footer {
  flex-wrap:wrap;
  align-items:center;
}
body.powerlab-page.pl-live-dashboard-active {
  overflow:auto!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  overflow:auto!important;
  padding:clamp(14px,2.5vw,34px)!important;
}
body.powerlab-page.pl-live-dashboard-active #livePanel > * {
  max-width:1480px;
  margin-left:auto;
  margin-right:auto;
}
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-brand,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-context,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis .pl-kpi,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action-panel,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card {
  color:#f8fbff;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel {
  background:linear-gradient(180deg,#eaf6ff 0%,#f7fbff 55%,#ffffff 100%)!important;
  color:#0c1d31!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-brand,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-context,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis .pl-kpi,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-action-panel,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card {
  color:#0c1d31!important;
  background:#ffffff!important;
  border-color:#9fc1df!important;
  box-shadow:0 20px 52px rgba(22,54,88,.12)!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis .pl-kpi b,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-kpis .pl-kpi span,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel h2,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel h3,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #timer {
  color:#07192d!important;
}
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-context small,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-brand small,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card small {
  color:#395875!important;
}
body.powerlab-page .pl-live-chart-card {
  display:block;
  margin:18px 0 0;
  padding:14px 16px 12px;
  border:1px solid rgba(124,162,196,.42);
  border-radius:22px;
  background:rgba(9,25,42,.78);
  box-shadow:0 22px 58px rgba(0,0,0,.18);
}
body.powerlab-page .pl-live-chart-card figcaption {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 10px;
}
body.powerlab-page .pl-live-chart-card b {
  display:block;
  font-size:15px;
  letter-spacing:.02em;
}
body.powerlab-page .pl-live-chart-card small,
body.powerlab-page .pl-live-chart-scale {
  display:block;
  color:rgba(226,240,255,.78);
  font-size:12px;
  font-weight:800;
}
body.powerlab-page #liveTrendChart {
  display:block;
  width:100%;
  height:190px;
  border:1px solid rgba(151,186,218,.34);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(4,17,31,.58),rgba(9,25,42,.86));
}
body[data-theme="light"].powerlab-page #liveTrendChart {
  border-color:#a6c5df;
  background:linear-gradient(180deg,#ffffff,#edf6ff);
}
body[data-theme="light"].powerlab-page .pl-live-chart-card small,
body[data-theme="light"].powerlab-page .pl-live-chart-scale {
  color:#46647f!important;
}
@media (max-width:780px) {
  body.powerlab-page .pl-live-chart-card {
    padding:12px;
    border-radius:18px;
  }
  body.powerlab-page .pl-live-chart-card figcaption {
    flex-direction:column;
    gap:5px;
  }
  body.powerlab-page #liveTrendChart {
    height:170px;
  }
}

/* PowerLab live telemetry v24: gráfica real en vivo con puntos y objetivo */
body.powerlab-page #livePanel .pl-live-chart-card,
body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card,
body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card {
  display:block!important;
  width:100%!important;
  min-height:316px!important;
  margin:clamp(14px,2vw,22px) 0 0!important;
  padding:16px!important;
  grid-column:1 / -1!important;
  border:1px solid rgba(119,166,207,.48)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(7,22,38,.88),rgba(10,31,50,.95))!important;
  box-shadow:0 20px 56px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.06)!important;
}

body.powerlab-page #livePanel .pl-live-chart-card figcaption,
body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card figcaption {
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0 0 12px!important;
  color:#edf7ff!important;
}

body.powerlab-page #livePanel .pl-live-chart-card b,
body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card b {
  color:#ffffff!important;
  font-size:16px!important;
  letter-spacing:.02em!important;
}

body.powerlab-page #livePanel .pl-live-chart-card small,
body.powerlab-page #livePanel .pl-live-chart-scale,
body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card small,
body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-scale {
  color:#c9def0!important;
  font-size:12px!important;
  font-weight:850!important;
}

body.powerlab-page #liveTrendChart,
body.powerlab-page.pl-test-mode #liveTrendChart,
body.powerlab-page.pl-live-dashboard-active #liveTrendChart {
  display:block!important;
  width:100%!important;
  height:260px!important;
  min-height:260px!important;
  border:1px solid rgba(151,186,218,.44)!important;
  border-radius:18px!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(5,18,31,.92),rgba(10,30,48,.98))!important;
  background-size:25% 100%,100% 25%,100% 100%!important;
}

body[data-theme="light"].powerlab-page #livePanel .pl-live-chart-card,
body[data-theme="light"].powerlab-page.pl-test-mode #livePanel .pl-live-chart-card,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card {
  border-color:#9dc2df!important;
  background:linear-gradient(180deg,#ffffff,#eef7ff)!important;
  box-shadow:0 18px 48px rgba(20,68,112,.12), inset 0 1px 0 rgba(255,255,255,.9)!important;
}

body[data-theme="light"].powerlab-page #livePanel .pl-live-chart-card figcaption,
body[data-theme="light"].powerlab-page.pl-test-mode #livePanel .pl-live-chart-card figcaption,
body[data-theme="light"].powerlab-page #livePanel .pl-live-chart-card b,
body[data-theme="light"].powerlab-page.pl-test-mode #livePanel .pl-live-chart-card b {
  color:#07192d!important;
}

body[data-theme="light"].powerlab-page #livePanel .pl-live-chart-card small,
body[data-theme="light"].powerlab-page #livePanel .pl-live-chart-scale,
body[data-theme="light"].powerlab-page.pl-test-mode #livePanel .pl-live-chart-card small,
body[data-theme="light"].powerlab-page.pl-test-mode #livePanel .pl-live-chart-scale {
  color:#365875!important;
}

body[data-theme="light"].powerlab-page #liveTrendChart,
body[data-theme="light"].powerlab-page.pl-test-mode #liveTrendChart,
body[data-theme="light"].powerlab-page.pl-live-dashboard-active #liveTrendChart {
  border-color:#9fc3df!important;
  background:
    linear-gradient(90deg,rgba(22,76,121,.12) 1px,transparent 1px),
    linear-gradient(180deg,rgba(22,76,121,.12) 1px,transparent 1px),
    linear-gradient(180deg,#ffffff,#f1f8ff)!important;
  background-size:25% 100%,100% 25%,100% 100%!important;
}

@media (max-width:900px) {
  body.powerlab-page #livePanel .pl-live-chart-card,
  body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card,
  body.powerlab-page.pl-live-dashboard-active #livePanel .pl-live-chart-card {
    min-height:274px!important;
    padding:12px!important;
    border-radius:20px!important;
  }
  body.powerlab-page #livePanel .pl-live-chart-card figcaption,
  body.powerlab-page.pl-test-mode #livePanel .pl-live-chart-card figcaption {
    flex-direction:column!important;
    gap:6px!important;
  }
  body.powerlab-page #liveTrendChart,
  body.powerlab-page.pl-test-mode #liveTrendChart,
  body.powerlab-page.pl-live-dashboard-active #liveTrendChart {
    height:226px!important;
    min-height:226px!important;
  }
}

/* PowerLab atleta v25: hub de test, resultados e historial */
body.powerlab-athlete-page {
  min-height:100vh;
  color:#f6fbff;
  background:
    radial-gradient(circle at top left,rgba(255,198,61,.14),transparent 28rem),
    radial-gradient(circle at bottom right,rgba(43,149,224,.18),transparent 32rem),
    #071523;
}

body[data-theme="light"].powerlab-athlete-page {
  color:#07192d;
  background:
    radial-gradient(circle at top left,rgba(255,198,61,.18),transparent 28rem),
    radial-gradient(circle at bottom right,rgba(40,135,208,.16),transparent 34rem),
    #eef6ff;
}

.pla {
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:112px 0 56px;
}

.pla-hero,
.pla-card,
.pla-kpi {
  border:1px solid rgba(143,185,221,.35);
  background:linear-gradient(180deg,rgba(14,34,54,.92),rgba(8,23,38,.94));
  box-shadow:0 26px 80px rgba(0,0,0,.22);
}

body[data-theme="light"].powerlab-athlete-page .pla-hero,
body[data-theme="light"].powerlab-athlete-page .pla-card,
body[data-theme="light"].powerlab-athlete-page .pla-kpi {
  border-color:#b8d2ea;
  background:linear-gradient(180deg,#ffffff,#f4f9ff);
  box-shadow:0 22px 64px rgba(31,77,116,.13);
}

.pla-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:34px;
  border-radius:30px;
}

.pla-hero h1 {
  margin:8px 0 8px;
  font-size:clamp(36px,5vw,64px);
  line-height:.95;
  letter-spacing:-.05em;
}

.pla-hero p,
.pla-card p,
.pla-kpi small,
.pla-table small {
  color:#b7c9db;
}

body[data-theme="light"].powerlab-athlete-page .pla-hero p,
body[data-theme="light"].powerlab-athlete-page .pla-card p,
body[data-theme="light"].powerlab-athlete-page .pla-kpi small,
body[data-theme="light"].powerlab-athlete-page .pla-table small {
  color:#41617d;
}

.pla-hero-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:12px;
}

.pla-main-cta {
  min-width:190px;
}

.pla-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}

.pla-kpi {
  min-height:122px;
  padding:20px;
  border-radius:22px;
}

.pla-kpi span,
.pla-table th {
  display:block;
  color:#f7c84f;
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body[data-theme="light"].powerlab-athlete-page .pla-kpi span,
body[data-theme="light"].powerlab-athlete-page .pla-table th {
  color:#9b6400;
}

.pla-kpi b {
  display:block;
  margin-top:10px;
  font-size:clamp(26px,3vw,38px);
  line-height:1;
}

.pla-kpi small {
  display:block;
  margin-top:10px;
  font-weight:750;
}

.pla-card {
  margin-top:18px;
  padding:24px;
  border-radius:26px;
}

.pla-action-card,
.pla-section-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.pla-card h2 {
  margin:6px 0 6px;
  font-size:clamp(23px,3vw,34px);
  letter-spacing:-.03em;
}

.pla-table-wrap {
  overflow:auto;
  border:1px solid rgba(143,185,221,.28);
  border-radius:20px;
}

body[data-theme="light"].powerlab-athlete-page .pla-table-wrap {
  border-color:#c4d9ee;
}

.pla-table {
  width:100%;
  min-width:760px;
  border-collapse:collapse;
}

.pla-table th,
.pla-table td {
  padding:16px;
  border-bottom:1px solid rgba(143,185,221,.18);
  text-align:left;
}

body[data-theme="light"].powerlab-athlete-page .pla-table th,
body[data-theme="light"].powerlab-athlete-page .pla-table td {
  border-bottom-color:#d9e8f5;
}

.pla-table td {
  font-weight:850;
}

.pla-table td:first-child b,
.pla-table small {
  display:block;
}

.pla-empty {
  text-align:center!important;
  padding:34px!important;
}

.pla-empty b,
.pla-empty span {
  display:block;
  margin-bottom:10px;
}

.pla-skeleton {
  grid-column:1/-1;
  padding:24px;
  border:1px dashed rgba(143,185,221,.5);
  border-radius:22px;
  color:#bdd4e9;
}

body[data-theme="light"].powerlab-athlete-page .pla-skeleton {
  color:#41617d;
}

.pla-bars {
  display:grid;
  gap:12px;
  margin-top:18px;
}

.pla-bar {
  display:grid;
  grid-template-columns:120px minmax(160px,1fr) 76px;
  align-items:center;
  gap:12px;
  font-weight:850;
}

.pla-bar i {
  display:block;
  width:var(--w,8%);
  height:16px;
  border-radius:999px;
  background:linear-gradient(90deg,#b17900,#ffd15b);
  box-shadow:0 8px 20px rgba(255,193,55,.18);
}

@media (max-width:980px) {
  .pla {
    width:min(100% - 24px,760px);
    padding:94px 0 92px;
  }
  .pla-hero,
  .pla-action-card,
  .pla-section-head {
    align-items:stretch;
    flex-direction:column;
  }
  .pla-hero-actions {
    justify-content:stretch;
  }
  .pla-hero-actions .pl-btn,
  .pla-action-card .pl-btn,
  .pla-section-head .pl-btn {
    justify-content:center;
    width:100%;
  }
  .pla-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:560px) {
  .pla {
    width:100%;
    padding:78px 12px 96px;
  }
  .pla-hero,
  .pla-card,
  .pla-kpi {
    border-radius:20px;
    padding:18px;
  }
  .pla-grid {
    grid-template-columns:1fr;
  }
  .pla-bar {
    grid-template-columns:1fr;
    gap:6px;
  }
  .pla-bar i {
    max-width:100%;
  }
}
