/* Modo claro de la app. GENERADO por scripts/tema-claro.mjs a partir de visual-refresh.css y extras.css: no editar a mano. */
html[data-theme="light"] {
  color-scheme: light;
  --ink: #12201b;
  --muted: #55675f;
  --paper: #f3f6f4;
  --line: rgba(20, 60, 45, .14);
  --accent: #0f9f55;
  --accent-dark: #0b7e43;
  --success: #0f9f55;
  --warning: #9a6a00;
  --coral: #c4452f;
  --deep: #e8efeb;
  --panel: rgba(255, 255, 255, .86);
  --panel-strong: rgba(255, 255, 255, .96);
  background: var(--paper);
}
html[data-theme="light"] body { color: var(--ink); background: var(--paper); }
html[data-theme="light"] body::before { opacity: .55; }
html[data-theme="light"] body::after { opacity: .5; background-image: radial-gradient(rgba(16, 50, 38, .12) .7px, transparent .7px); }

/* ---------- visual-refresh.css ---------- */
html[data-theme="light"] body { background: #fbfcfc; }
html[data-theme="light"] body::before { background: radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(16, 170, 88, 0.243), transparent 19rem),
    radial-gradient(circle at 12% 18%, rgba(108, 99, 255, 0.238), transparent 24rem),
    radial-gradient(circle at 86% 82%, rgba(255, 104, 82, 0.168), transparent 25rem); }
html[data-theme="light"] body::after { background-image: radial-gradient(rgba(41, 41, 41, 0.184) .7px, transparent .7px); }
html[data-theme="light"] .boot { background: #fbfcfc; }
html[data-theme="light"] .app-layout::before { background-image: linear-gradient(rgba(16, 170, 88, 0.121) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16, 170, 88, 0.121) 1px, transparent 1px); }
html[data-theme="light"] .app-layout::after { border: 1px solid rgba(16, 170, 88, 0.162); box-shadow: 0 0 0 28px rgba(57, 245, 139, 0.011), 0 0 0 56px rgba(57, 245, 139, 0.009); }
html[data-theme="light"] .sidebar,
html[data-theme="light"] .topbar,
html[data-theme="light"] .card,
html[data-theme="light"] .metric,
html[data-theme="light"] .exercise-row,
html[data-theme="light"] .editor-row,
html[data-theme="light"] .planning-toolbar,
html[data-theme="light"] .students-card,
html[data-theme="light"] .history-item,
html[data-theme="light"] .week-control,
html[data-theme="light"] .save-bar,
html[data-theme="light"] .login-form { box-shadow: 0 18px 48px rgba(18, 44, 34, 0.077), inset 0 1px rgba(18, 44, 34, 0.018); }
html[data-theme="light"] .sidebar { background: linear-gradient(180deg, rgba(248, 251, 250, 0.96), rgba(248, 251, 250, 0.82)); box-shadow: 12px 0 36px rgba(18, 44, 34, 0.083); }
html[data-theme="light"] .brand { color: #171717; }
html[data-theme="light"] .brand small { color: #60766f; }
html[data-theme="light"] .brand img { filter: drop-shadow(0 0 12px rgba(16, 170, 88, 0.378)); }
html[data-theme="light"] .workspace-label { color: #60766f; }
html[data-theme="light"] .nav-item { color: #50635d; }
html[data-theme="light"] .nav-item:hover { background: rgba(16, 170, 88, 0.095); border-color: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .nav-item.active { background: linear-gradient(100deg, rgba(16, 170, 88, 0.23), rgba(16, 170, 88, 0.047)); border-color: rgba(16, 170, 88, 0.243); box-shadow: inset 3px 0 var(--accent), 0 8px 20px rgba(18, 44, 34, 0.038); }
html[data-theme="light"] .sidebar-coach { color: #111d17; }
html[data-theme="light"] .sidebar-coach>.avatar { background: linear-gradient(135deg, #e5f2ec, #1fd674); color: #05110b; box-shadow: 0 0 26px rgba(57, 245, 139, 0.09); }
html[data-theme="light"] .sidebar-coach>span,
html[data-theme="light"] .sidebar-coach p { color: #5f756e; }
html[data-theme="light"] .topbar { background: rgba(249, 251, 251, 0.72); }
html[data-theme="light"] .breadcrumb { color: #5d716a; }
html[data-theme="light"] .mobile-brand { color: #171717; }
html[data-theme="light"] .avatar { background: #e7f4ef; }
html[data-theme="light"] .user-chip:hover { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .user-chip small { color: #5d726b; }
html[data-theme="light"] .demo-banner { color: #819929; background: rgba(229, 234, 212, 0.34); border-bottom-color: rgba(255, 209, 102, 0.252); }
html[data-theme="light"] .page-heading h1 { text-shadow: 0 0 24px rgba(57, 245, 139, 0.036); }
html[data-theme="light"] .page-footer { color: #667b74; }
html[data-theme="light"] .button,
html[data-theme="light"] .icon-button { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.253); }
html[data-theme="light"] .button:hover,
html[data-theme="light"] .icon-button:hover { background: rgba(16, 170, 88, 0.108); border-color: rgba(16, 170, 88, 0.567); }
html[data-theme="light"] .button.primary,
html[data-theme="light"] .button.dark { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); border-color: #1fd674; box-shadow: 0 8px 24px rgba(57, 245, 139, 0.09); }
html[data-theme="light"] .button.primary:hover,
html[data-theme="light"] .button.dark:hover { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); border-color: #1fd674; box-shadow: 0 10px 30px rgba(57, 245, 139, 0.135); }
html[data-theme="light"] .button.ghost { color: #42564f; }
html[data-theme="light"] .theme-button[aria-pressed="true"] { color: #03110a; }
html[data-theme="light"] .pill { background: rgba(16, 170, 88, 0.135); border: 1px solid rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .pill.success { background: rgba(16, 170, 88, 0.149); }
html[data-theme="light"] .pill.neutral { color: #966600; background: rgba(255, 209, 102, 0.154); border-color: rgba(255, 209, 102, 0.252); }
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea { background: rgba(250, 253, 252, 0.7); border-color: rgba(31, 50, 44, 0.276); box-shadow: inset 0 1px 2px rgba(18, 44, 34, 0.077); }
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder { color: #657b73; }
html[data-theme="light"] input:disabled { background: rgba(41, 41, 41, 0.057); color: #5d6d68; }
html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus { box-shadow: 0 0 0 4px rgba(57, 245, 139, 0.063), 0 0 20px rgba(57, 245, 139, 0.036); }
html[data-theme="light"] label { color: #2d3d37; }
html[data-theme="light"] label small { color: #60746e; }
html[data-theme="light"] .card:hover,
html[data-theme="light"] .student-card:hover,
html[data-theme="light"] .exercise-row:hover { border-color: rgba(16, 170, 88, 0.378); box-shadow: 0 18px 42px rgba(18, 44, 34, 0.09), 0 0 0 1px rgba(57, 245, 139, 0.023); }
html[data-theme="light"] .metric>div,
html[data-theme="light"] .metric>small { color: #4f635c; }
html[data-theme="light"] .metric>strong { color: #171717; }
html[data-theme="light"] .week-control { background: rgba(248, 251, 250, 0.75); }
html[data-theme="light"] .week-picker-copy small { color: #60746e; }
html[data-theme="light"] .week-heading>.muted { color: #60746e; }
html[data-theme="light"] .day-tab { color: #3e4f49; background: rgba(246, 250, 249, 0.68); border-color: rgba(31, 50, 44, 0.207); }
html[data-theme="light"] .day-tab:hover { background: rgba(16, 170, 88, 0.095); border-color: rgba(16, 170, 88, 0.405); }
html[data-theme="light"] .day-tab.selected { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); border-color: #1fd674; box-shadow: 0 10px 24px rgba(57, 245, 139, 0.081); }
html[data-theme="light"] .training-hero { background: linear-gradient(120deg, rgba(244, 250, 247, 0.98), rgba(235, 245, 241, 0.92) 58%, rgba(223, 240, 233, 0.86)); border-color: rgba(16, 170, 88, 0.324); box-shadow: 0 24px 55px rgba(18, 44, 34, 0.109), inset 0 1px rgba(18, 44, 34, 0.03); }
html[data-theme="light"] .training-hero::before { border: 1px solid rgba(16, 170, 88, 0.297); box-shadow: 0 0 0 34px rgba(57, 245, 139, 0.016), 0 0 0 68px rgba(57, 245, 139, 0.011); }
html[data-theme="light"] .training-hero::after { border: 38px solid rgba(16, 170, 88, 0.176); }
html[data-theme="light"] .training-hero h2 { color: #171717; }
html[data-theme="light"] .training-hero p,
html[data-theme="light"] .hero-helper { color: #3a5146; }
html[data-theme="light"] .training-hero .dark-pill { background: rgba(16, 170, 88, 0.135); border-color: rgba(16, 170, 88, 0.324); }
html[data-theme="light"] .training-hero .button { color: #03110a; }
html[data-theme="light"] .training-hero .button:hover { color: #03110a; background: #1fd674; }
html[data-theme="light"] .hero-art { color: rgba(23, 23, 23, 0.075); }
html[data-theme="light"] main .training-hero { background: linear-gradient(120deg, rgba(244, 250, 247, 0.98), rgba(235, 245, 241, 0.92) 58%, rgba(223, 240, 233, 0.86)); border-color: rgba(16, 170, 88, 0.324); box-shadow: 0 24px 55px rgba(18, 44, 34, 0.109), inset 0 1px rgba(18, 44, 34, 0.03); }
html[data-theme="light"] main .training-hero .button { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); border-color: #1fd674; box-shadow: 0 8px 24px rgba(57, 245, 139, 0.09); }
html[data-theme="light"] main .training-hero .button:hover { color: #03110a; background: #1fd674; }
html[data-theme="light"] .exercise-card-heading h3,
html[data-theme="light"] .exercise-prescription dd { color: #171717; }
html[data-theme="light"] .exercise-card-heading .eyebrow,
html[data-theme="light"] .exercise-kind,
html[data-theme="light"] .exercise-card-footer>span { color: #5a6d66; }
html[data-theme="light"] .exercise-number { background: rgba(16, 170, 88, 0.135); border: 1px solid rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .exercise-prescription>div,
html[data-theme="light"] .exercise-prescription>div:nth-child(3) { background: rgba(41, 41, 41, 0.04); border: 1px solid rgba(31, 50, 44, 0.115); }
html[data-theme="light"] main .exercise-prescription>div,
html[data-theme="light"] main .exercise-prescription>div:nth-child(3) { color: #172720; background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.115); }
html[data-theme="light"] .exercise-prescription dt { color: #5b6f68; }
html[data-theme="light"] .exercise-prescription dd small { color: #536b64; }
html[data-theme="light"] .guide-button { color: #364640; }
html[data-theme="light"] .coach-note { background: linear-gradient(135deg, rgba(228, 242, 237, 0.8), rgba(241, 248, 246, 0.82)); border-color: rgba(16, 170, 88, 0.23); }
html[data-theme="light"] main .coach-note { background: linear-gradient(135deg, rgba(228, 242, 237, 0.8), rgba(241, 248, 246, 0.82)); border-color: rgba(16, 170, 88, 0.23); }
html[data-theme="light"] .coach-note>.eyebrow,
html[data-theme="light"] .coach-note>p { color: #375847; }
html[data-theme="light"] .coach-person .avatar { background: rgba(16, 170, 88, 0.176); }
html[data-theme="light"] .coach-person span:not(.avatar) { color: #527064; }
html[data-theme="light"] .weekly-card,
html[data-theme="light"] .goal-card { background: rgba(246, 249, 248, 0.72); }
html[data-theme="light"] .week-progress>strong { color: #171717; }
html[data-theme="light"] .week-progress small,
html[data-theme="light"] .week-progress>span,
html[data-theme="light"] .weekly-card>p,
html[data-theme="light"] .goal-card p { color: #536861; }
html[data-theme="light"] .progress-track { background: rgba(41, 41, 41, 0.115); }
html[data-theme="light"] .progress-track>span { background: linear-gradient(90deg, #1fd674, #1fd674); box-shadow: 0 0 14px rgba(57, 245, 139, 0.203); }
html[data-theme="light"] main .day-tab.selected { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); border-color: #1fd674; box-shadow: 0 10px 24px rgba(57, 245, 139, 0.081); }
html[data-theme="light"] .student-facts dt,
html[data-theme="light"] .student-facts dd,
html[data-theme="light"] .table-person p { color: #5a6d66; }
html[data-theme="light"] .table-person h3 { color: #171717; }
html[data-theme="light"] .editor-day-tab { color: #40524b; background: rgba(246, 250, 249, 0.7); border-color: rgba(31, 50, 44, 0.207); }
html[data-theme="light"] .editor-day-tab.selected { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .editor-summary { color: #375847; background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .add-exercise { background: rgba(16, 170, 88, 0.081); border-color: rgba(16, 170, 88, 0.486); }
html[data-theme="light"] .save-bar { background: rgba(242, 249, 246, 0.88); border-color: rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .save-bar #save-status { color: #365346; }
html[data-theme="light"] .history-item[open] { border-color: rgba(16, 170, 88, 0.486); box-shadow: 0 14px 36px rgba(18, 44, 34, 0.09), 0 0 24px rgba(57, 245, 139, 0.027); }
html[data-theme="light"] .history-check { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .empty { background: rgba(243, 246, 245, 0.7); border-color: rgba(16, 170, 88, 0.297); }
html[data-theme="light"] #toast { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); box-shadow: 0 12px 30px rgba(57, 245, 139, 0.09); }
html[data-theme="light"] .progress-overview { background: linear-gradient(120deg, #eef7f3, #e6f3ee 60%, #e0f0ea); border: 1px solid rgba(16, 170, 88, 0.27); box-shadow: 0 22px 48px rgba(18, 44, 34, 0.09); }
html[data-theme="light"] .progress-overview h2,
html[data-theme="light"] .progress-overview p,
html[data-theme="light"] .progress-overview .eyebrow { color: #171717; }
html[data-theme="light"] .analysis-icon { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .progress-period { background: rgba(41, 41, 41, 0.081); }
html[data-theme="light"] .progress-period .button { color: #4a5e56; }
html[data-theme="light"] .progress-period .button[aria-pressed="true"] { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .weekly-summary-grid>div { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.161); box-shadow: inset 0 1px rgba(18, 44, 34, 0.013); }
html[data-theme="light"] .weekly-summary-grid strong { color: #171717; }
html[data-theme="light"] .weekly-summary-grid span { color: #50645c; }
html[data-theme="light"] .achievement-card { color: #4f615a; background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.161); box-shadow: inset 0 1px rgba(18, 44, 34, 0.013); }
html[data-theme="light"] .achievement-card strong { color: #192821; }
html[data-theme="light"] .achievement-card p { color: #50645c; }
html[data-theme="light"] .achievement-icon { color: #4f615a; background: rgba(31, 50, 44, 0.115); }
html[data-theme="light"] .achievement-status { color: #5a6d66; }
html[data-theme="light"] .achievement-card.earned { background: linear-gradient(145deg, rgba(16, 170, 88, 0.189), rgba(16, 170, 88, 0.074)); border-color: rgba(16, 170, 88, 0.405); }
html[data-theme="light"] .achievement-card.earned strong { color: #111d16; }
html[data-theme="light"] .achievement-card.earned p { color: #335042; }
html[data-theme="light"] .achievement-card.earned .achievement-icon { color: #03110a; }
html[data-theme="light"] main .progress-exercise-label select,
html[data-theme="light"] main .progress-mode-label select { background-color: rgba(250, 253, 252, 0.78); border-color: rgba(31, 50, 44, 0.276); box-shadow: inset 0 1px 2px rgba(18, 44, 34, 0.077); }
html[data-theme="light"] main .progress-exercise-label select:hover,
html[data-theme="light"] main .progress-mode-label select:hover { border-color: rgba(16, 170, 88, 0.567); }
html[data-theme="light"] main .progress-exercise-label select option,
html[data-theme="light"] main .progress-mode-label select option { background: #f5faf7; }
html[data-theme="light"] .metric-toggle { background: rgba(41, 41, 41, 0.063); border: 1px solid rgba(31, 50, 44, 0.138); }
html[data-theme="light"] .metric-toggle button { color: #465852; }
html[data-theme="light"] .metric-toggle button:hover { background: rgba(16, 170, 88, 0.095); }
html[data-theme="light"] .metric-toggle button[aria-pressed="true"] { color: #03110a; box-shadow: 0 5px 14px rgba(57, 245, 139, 0.081); }
html[data-theme="light"] .progress-highlights>div,
html[data-theme="light"] .progress-empty,
html[data-theme="light"] .point-detail,
html[data-theme="light"] .record-chips>span,
html[data-theme="light"] .activity-track { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.138); }
html[data-theme="light"] .progress-highlights>div span,
html[data-theme="light"] .progress-highlights>div p,
html[data-theme="light"] .point-detail,
html[data-theme="light"] .chart-dates,
html[data-theme="light"] .chart-scale { color: #50645c; }
html[data-theme="light"] .progress-highlights>div strong { color: #171717; }
html[data-theme="light"] .progress-highlights .change-highlight { background: rgba(16, 170, 88, 0.121); border-color: rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .chart-point>span { background: #f5faf7; }
html[data-theme="light"] .chart-point:hover>span,
html[data-theme="light"] .chart-point[aria-pressed="true"]>span { box-shadow: 0 0 0 6px rgba(57, 245, 139, 0.063); }
html[data-theme="light"] .activity-track>span { background: linear-gradient(180deg, #1fd674, #1fd674); }
html[data-theme="light"] .history-detail,
html[data-theme="light"] .history-exercise { color: #1d2b26; }
html[data-theme="light"] .history-sets>div { background: rgba(41, 41, 41, 0.052); }
html[data-theme="light"] main .exercise-visual,
html[data-theme="light"] main .exercise-visual.has-media { color: #172720; background: linear-gradient(135deg, rgba(239, 247, 244, 0.96), rgba(248, 251, 250, 0.96)); border-color: rgba(16, 170, 88, 0.338); box-shadow: inset 0 0 36px rgba(57, 245, 139, 0.016); }
html[data-theme="light"] main .exercise-visual:hover { background: linear-gradient(135deg, rgba(230, 243, 237, 0.96), rgba(246, 251, 249, 0.96)); border-color: rgba(16, 170, 88, 0.702); }
html[data-theme="light"] .visual-fallback { color: #172720; }
html[data-theme="light"] .visual-fallback > .icon { filter: drop-shadow(0 0 10px rgba(16, 170, 88, 0.432)); }
html[data-theme="light"] .visual-fallback small { color: #577065; }
html[data-theme="light"] .exercise-visual img,
html[data-theme="light"] .exercise-visual video { background: #f5faf7; }
html[data-theme="light"] .exercise-visual.compact img,
html[data-theme="light"] .exercise-visual.compact video { background: #f5faf7; }
html[data-theme="light"] .visual-caption { background: linear-gradient(180deg, transparent, rgba(250, 252, 251, 0.94) 34%); }
html[data-theme="light"] .video-badge { background: rgba(248, 252, 250, 0.86); border-color: rgba(16, 170, 88, 0.405); }
html[data-theme="light"] main .movement-art,
html[data-theme="light"] main .movement-1,
html[data-theme="light"] main .movement-2,
html[data-theme="light"] main .movement-3 { color: #172720; background: linear-gradient(135deg, rgba(239, 247, 244, 0.96), rgba(247, 251, 250, 0.96)); }
html[data-theme="light"] .movement-art>.icon { filter: drop-shadow(0 0 10px rgba(16, 170, 88, 0.338)); }
html[data-theme="light"] .movement-art>span:first-child { color: #3f554b; }
html[data-theme="light"] .movement-art>.pill { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .library-body h2 { color: #171717; }
html[data-theme="light"] .next-training { background: rgba(16, 170, 88, 0.108); border: 1px solid rgba(16, 170, 88, 0.243); }
html[data-theme="light"] .calendar-cell { color: #20322b; background: rgba(243, 248, 246, 0.84); border-color: rgba(31, 50, 44, 0.172); }
html[data-theme="light"] .calendar-cell[aria-current],
html[data-theme="light"] .calendar-cell[aria-pressed="true"] { outline-color: rgba(16, 170, 88, 0.472); }
html[data-theme="light"] .status-completed { background: rgba(16, 170, 88, 0.243); }
html[data-theme="light"] .status-pending { background: rgba(93, 151, 255, 0.238); color: #1d51a5; }
html[data-theme="light"] .status-partial { background: rgba(255, 209, 102, 0.224); color: #966600; }
html[data-theme="light"] .status-active { background: rgba(154, 128, 255, 0.238); color: #341da5; }
html[data-theme="light"] .status-rest,
html[data-theme="light"] .status-none { background: rgba(41, 41, 41, 0.052); color: #50645c; }
html[data-theme="light"] .status-moved { background: rgba(177, 217, 204, 0.14); color: #0a8a46; }
html[data-theme="light"] .calendar-legend span { border: 1px solid rgba(31, 50, 44, 0.138); }
html[data-theme="light"] .attention-card,
html[data-theme="light"] .simple-details,
html[data-theme="light"] .preference-sample { background: rgba(243, 248, 246, 0.8); border-color: rgba(31, 50, 44, 0.172); }
html[data-theme="light"] .attention-card h3,
html[data-theme="light"] .simple-details summary { color: #171717; }
html[data-theme="light"] .attention-card p { color: #50645c; }
html[data-theme="light"] .alternative-picker { background: rgba(249, 252, 250, 0.7); border-color: rgba(31, 50, 44, 0.184); }
html[data-theme="light"] .alternative-picker label,
html[data-theme="light"] .alternative-option { color: #1a2a23; background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.172); }
html[data-theme="light"] .alternative-picker label small,
html[data-theme="light"] .alternative-note span,
html[data-theme="light"] .alternative-option small { color: #536861; }
html[data-theme="light"] .alternative-note { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .alternative-option.selected { background: rgba(16, 170, 88, 0.162); border-color: rgba(16, 170, 88, 0.54); }
html[data-theme="light"] .feedback-summary > span { color: #1a2a23; background: rgba(16, 170, 88, 0.108); border-color: rgba(16, 170, 88, 0.23); }
html[data-theme="light"] .technique-list article { border-color: rgba(31, 50, 44, 0.172); }
html[data-theme="light"] .technique-thumb > .icon { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .rating-scale label span { color: #1a2a23; background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.23); }
html[data-theme="light"] .rating-scale input:checked + span { color: #03110a; box-shadow: inset 0 0 0 2px rgba(18, 44, 34, 0.224); }
html[data-theme="light"] dialog { background: rgba(245, 250, 248, 0.97); border-color: rgba(16, 170, 88, 0.297); box-shadow: 0 24px 90px rgba(18, 44, 34, 0.198), 0 0 0 1px rgba(57, 245, 139, 0.027); }
html[data-theme="light"] dialog::backdrop { background: rgba(250, 253, 251, 0.78); }
html[data-theme="light"] dialog>p { color: #495d55; }
html[data-theme="light"] .modal-header h2 { color: #171717; }
html[data-theme="light"] .student-pulse { border: 1px solid rgba(16, 170, 88, 0.338); background: linear-gradient(115deg, rgba(243, 249, 247, 0.98), rgba(235, 245, 241, 0.92) 54%, rgba(242, 248, 246, 0.95)),
    radial-gradient(circle at 90% 10%, rgba(16, 170, 88, 0.27), transparent 18rem); box-shadow: 0 24px 60px rgba(18, 44, 34, 0.102), inset 0 1px rgba(18, 44, 34, 0.035); }
html[data-theme="light"] .student-pulse::before { background-image: linear-gradient(115deg, transparent 25%, rgba(16, 170, 88, 0.243), transparent 65%); }
html[data-theme="light"] .pulse-orbit { border: 1px solid rgba(16, 170, 88, 0.297); box-shadow: 0 0 0 28px rgba(57, 245, 139, 0.016), 0 0 0 56px rgba(57, 245, 139, 0.011); }
html[data-theme="light"] .pulse-copy h2 { color: #171717; }
html[data-theme="light"] .pulse-copy p { color: #365343; }
html[data-theme="light"] .pulse-link { color: #2b4338; border-color: rgba(41, 41, 41, 0.184); }
html[data-theme="light"] .pulse-ring { background: conic-gradient(var(--accent) var(--progress), rgba(41, 41, 41, 0.115) 0); box-shadow: 0 0 34px rgba(57, 245, 139, 0.054); }
html[data-theme="light"] .pulse-ring::before { background: #eef7f3; box-shadow: inset 0 0 0 1px rgba(18, 44, 34, 0.03); }
html[data-theme="light"] .pulse-ring strong { color: #171717; }
html[data-theme="light"] .pulse-ring span { color: #446454; }
html[data-theme="light"] .pulse-stat { border: 1px solid rgba(41, 41, 41, 0.115); background: rgba(249, 252, 251, 0.32); }
html[data-theme="light"] .pulse-stat:hover { border-color: rgba(16, 170, 88, 0.513); background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .pulse-stat>span { color: #385748; }
html[data-theme="light"] .pulse-stat>strong { color: #171717; }
html[data-theme="light"] .pulse-stat>small { color: #5e796e; }
html[data-theme="light"] .pulse-stat-green { border-color: rgba(16, 170, 88, 0.297); background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .login-story { background: linear-gradient(140deg, #f8fbfa, #eef7f3 64%, #eff7f4); color: #171717; }
html[data-theme="light"] .login-story::before { background: rgba(16, 170, 88, 0.216); box-shadow: 0 0 100px rgba(57, 245, 139, 0.081); }
html[data-theme="light"] .login-story::after { border-color: rgba(16, 170, 88, 0.216); }
html[data-theme="light"] .login-story h1 { color: #171717; }
html[data-theme="light"] .login-story p { color: #395146; }
html[data-theme="light"] .login-bottom { color: #5d796c; }
html[data-theme="light"] .login-form-wrap { background: rgba(251, 252, 252, 0.78); }
html[data-theme="light"] .login-form { background: rgba(245, 249, 247, 0.82); border-color: rgba(16, 170, 88, 0.216); }
html[data-theme="light"] .login-form h2 { color: #171717; }
html[data-theme="light"] .login-form .button.primary { color: #03110a; }
html[data-theme="light"] .login-form .pill { color: #966600; background: rgba(255, 209, 102, 0.154); }
html[data-theme="light"] .login-signature { color: #60746e; }
@media (max-width: 760px), (pointer: coarse) and (max-width: 1000px) {
  html[data-theme="light"] .sidebar { background: rgba(249, 251, 251, 0.88); border-top-color: rgba(16, 170, 88, 0.203); }
  html[data-theme="light"] .nav-item { color: #50635c; }
  html[data-theme="light"] .nav-item.active { background: rgba(16, 170, 88, 0.135); }
  html[data-theme="light"] .topbar { background: rgba(249, 251, 251, 0.78); }
  html[data-theme="light"] .card,
  html[data-theme="light"] .exercise-row,
  html[data-theme="light"] .editor-row { box-shadow: 0 12px 28px rgba(18, 44, 34, 0.064), inset 0 1px rgba(18, 44, 34, 0.018); }
}
html[data-theme="light"] .error { color: #c43e2a; }
html[data-theme="light"] .button.ghost:hover { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"][data-contrast="high"] { --ink: #171717; --muted: #1a2a23; --line: #567365; --accent: #1fd674; }
html[data-theme="light"][data-contrast="high"] :is(main, dialog) :is(p, small, dt, .muted, .eyebrow) { color: #1a2a23; }
html[data-theme="light"][data-contrast="high"] :is(main, dialog) :is(.card, input, select, textarea, .button, .attention-card, .calendar-cell) { border-color: #567365; }
html[data-theme="light"][data-contrast="high"] :is(.button.primary, .button.dark, [aria-pressed="true"].button) { background: #1fd674; color: #03110a; }
html[data-theme="light"] .readiness-scale label span,
html[data-theme="light"] .discomfort-field label span { color: #1a2a23; background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.23); }
html[data-theme="light"] .readiness-scale input:checked + span,
html[data-theme="light"] .discomfort-field input:checked + span { color: #03110a; box-shadow: inset 0 0 0 2px rgba(18, 44, 34, 0.224); }
html[data-theme="light"] .readiness-note { color: #2f433b; background: rgba(41, 41, 41, 0.052); }
html[data-theme="light"] .readiness-summary { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.184); }
html[data-theme="light"] .readiness-summary > div > span { color: #1a2a23; background: rgba(41, 41, 41, 0.069); }
html[data-theme="light"] .previous-suggestion { background: rgba(16, 170, 88, 0.095); border-color: rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .previous-suggestion p { color: #2f433b; }
html[data-theme="light"] .previous-suggestion small { color: #4f635c; }
html[data-theme="light"] .template-card { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.184); }
html[data-theme="light"] .template-preview { background: rgba(250, 253, 252, 0.55); }
html[data-theme="light"] .template-preview section+section { border-top-color: rgba(31, 50, 44, 0.184); }
html[data-theme="light"] .template-preview p { color: #3e4f49; }
html[data-theme="light"] .number-stepper { background: rgba(250, 253, 252, 0.7); border-color: rgba(31, 50, 44, 0.276); }
html[data-theme="light"] .number-stepper>button { background: rgba(41, 41, 41, 0.069); }
html[data-theme="light"] .number-stepper>button:hover { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .working-label { color: #2f433b; background: rgba(41, 41, 41, 0.052); }
html[data-theme="light"] .finish-icon { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .video-placeholder { background: rgba(41, 41, 41, 0.046); }
html[data-theme="light"] .video-source { background: rgba(16, 170, 88, 0.162); }
html[data-theme="light"] .video-disclaimer { color: #495d55; background: rgba(41, 41, 41, 0.046); }
html[data-theme="light"] .demonstration-image { background: rgba(41, 41, 41, 0.057); }
html[data-theme="light"] .sound-on { color: #03110a; }
html[data-theme="light"] .visual-goal { background: rgba(41, 41, 41, 0.04); border-color: rgba(31, 50, 44, 0.184); }
html[data-theme="light"] .visual-goal.achieved { background: rgba(16, 170, 88, 0.121); border-color: rgba(16, 170, 88, 0.405); }
html[data-theme="light"] .goal-ring { background: conic-gradient(var(--accent) var(--goal), rgba(41, 41, 41, 0.115) 0); }
html[data-theme="light"] .goal-ring::after { background: #f5faf7; }
html[data-theme="light"] .change-list > div { background: rgba(41, 41, 41, 0.046); }
html[data-theme="light"] .skip-link { color: #03110a; }
html[data-theme="light"] select option,
html[data-theme="light"] select optgroup { background: #f5faf7; }
html[data-theme="light"] .view-tabs { background: rgba(248, 251, 250, 0.9); box-shadow: 0 10px 28px rgba(18, 44, 34, 0.09); }
html[data-theme="light"] .view-tab { color: #465852; }
html[data-theme="light"] .view-tab:hover { background: rgba(16, 170, 88, 0.095); }
html[data-theme="light"] .view-tab[aria-selected="true"] { color: #03110a; background: linear-gradient(135deg, #1fd674, #1fd674); box-shadow: 0 6px 16px rgba(57, 245, 139, 0.09); }
html[data-theme="light"] .view-tab b { background: rgba(41, 41, 41, 0.115); }
html[data-theme="light"] .view-tab[aria-selected="true"] b { background: rgba(249, 252, 251, 0.18); }
html[data-theme="light"][data-contrast="high"] .view-tab { color: #1a2a23; }
html[data-theme="light"][data-contrast="high"] .view-tab[aria-selected="true"] { background: #1fd674; color: #03110a; }
html[data-theme="light"] .today-badge { color: #03110a; }
html[data-theme="light"] .day-tab.is-today:not(.selected) { border-color: rgba(16, 170, 88, 0.608); }
html[data-theme="light"] .editor-row-toggle:hover { background: rgba(16, 170, 88, 0.081); }
html[data-theme="light"] .filter-chip { border: 1px solid rgba(31, 50, 44, 0.253); background: rgba(41, 41, 41, 0.04); color: #3e4f49; }
html[data-theme="light"] .filter-chip:hover { border-color: rgba(16, 170, 88, 0.567); }
html[data-theme="light"] .filter-chip[aria-pressed="true"] { color: #03110a; }
html[data-theme="light"] .repetition-target { background: rgba(16, 170, 88, 0.095) !important; border: 1px solid rgba(16, 170, 88, 0.27); }
html[data-theme="light"] .timer-circle strong { color: #171717; }
html[data-theme="light"] .timer-track { stroke: rgba(23, 23, 23, 0.1); }
html[data-theme="light"] .resting .timer-ring { stroke: #9fc4ff; }
html[data-theme="light"] .training-hero .button.quick-start,
html[data-theme="light"] .training-hero .button.quick-start:hover { background: rgba(16, 170, 88, 0.108); border-color: rgba(16, 170, 88, 0.608); }
html[data-theme="light"] .training-hero .button.quick-start:hover { background: rgba(16, 170, 88, 0.216); }
html[data-theme="light"] .quick-check[aria-pressed="true"] { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .quick-finish { border-color: rgba(16, 170, 88, 0.472); }

/* ---------- extras.css ---------- */
html[data-theme="light"] .x-nav-badge { background: var(--coral, #ff806d); color: #171717; }
html[data-theme="light"] .x-warning { border-color: rgba(255, 209, 102, 0.63) !important; }
html[data-theme="light"] .pill.warning { background: rgba(255, 209, 102, 0.224); color: var(--warning, #966600); }
html[data-theme="light"] .pill.danger { background: rgba(255, 128, 109, 0.224); color: var(--coral, #c43e2a); }
html[data-theme="light"] .x-tile { background: var(--panel, #1f1f1f); }
html[data-theme="light"] .x-badge { background: var(--coral, #ff806d); color: #171717; }
html[data-theme="light"] .x-banner { background: rgba(255, 209, 102, 0.196); border: 1px solid rgba(255, 209, 102, 0.49); }
html[data-theme="light"] .x-banner.danger { background: rgba(255, 128, 109, 0.196); border-color: rgba(255, 128, 109, 0.56); }
html[data-theme="light"] .x-banner.info { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .x-thread-item.active,
html[data-theme="light"] .x-thread-item:hover { background: rgba(198, 198, 198, 0.06); }
html[data-theme="light"] .x-msg { background: rgba(198, 198, 198, 0.12); }
html[data-theme="light"] .x-msg.mine { color: var(--on-accent, #03110a); }
html[data-theme="light"] .x-day.done { color: var(--on-accent, #03110a); }
html[data-theme="light"] .x-compare-pair img { background: rgba(198, 198, 198, 0.1); }
html[data-theme="light"] .x-photo-delete { background: rgba(251, 251, 251, 0.55); color: #171717; }
html[data-theme="light"] .x-scale input:checked + span { color: var(--on-accent, #03110a); }
html[data-theme="light"] .x-board li.me { background: rgba(198, 198, 198, 0.1); }
html[data-theme="light"] .x-lock { background: rgba(41, 41, 41, 0.092); }
html[data-theme="light"] .x-upsell-strip { background: linear-gradient(120deg, rgba(16, 170, 88, 0.162), rgba(16, 170, 88, 0.027)); }
html[data-theme="light"] .x-step { color: #07110c; }
html[data-theme="light"] .x-chips span { background: rgba(41, 41, 41, 0.034); }
html[data-theme="light"] .x-chips input:checked + span { background: rgba(16, 170, 88, 0.189); }
html[data-theme="light"] .x-track { background: rgba(41, 41, 41, 0.034); }
html[data-theme="light"] .x-track:has(input:checked) { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .x-daypick input:checked + span { color: #07110c; }
html[data-theme="light"] .x-note { background: rgba(41, 41, 41, 0.046); }
html[data-theme="light"] .x-program-hero { background: linear-gradient(135deg, rgba(16, 170, 88, 0.189), rgba(41, 41, 41, 0.023)) !important; }
html[data-theme="light"] .x-prog-list li > .icon { background: rgba(41, 41, 41, 0.069); }
html[data-theme="light"] .x-prog-list li.up > .icon { background: rgba(16, 170, 88, 0.216); }
html[data-theme="light"] .x-prog-list li.down > .icon { background: rgba(255, 209, 102, 0.224); color: var(--warning, #966600); }
html[data-theme="light"] .x-prog-list li.start > .icon { background: rgba(130, 170, 255, 0.224); color: #1d42a5; }
html[data-theme="light"] .x-week-chips b { background: rgba(41, 41, 41, 0.069); }
html[data-theme="light"] .x-week-chips b.down { color: var(--warning, #966600); }
html[data-theme="light"] .x-medal.earned { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .x-pr-list li { background: rgba(16, 170, 88, 0.135); }
html[data-theme="light"] .x-guide-track.mine { background: rgba(16, 170, 88, 0.108); }
html[data-theme="light"] .program-strip { background: linear-gradient(120deg, rgba(16, 170, 88, 0.189), rgba(16, 170, 88, 0.027)); }
html[data-theme="light"] .prog-note { background: rgba(41, 41, 41, 0.057); }
html[data-theme="light"] .prog-note.down > span { color: var(--warning, #966600); }
html[data-theme="light"] .prog-note.start > span { color: #1d42a5; }
html[data-theme="light"] .rating-chips input:checked + span { background: rgba(16, 170, 88, 0.216); }
html[data-theme="light"] .tier-chip { background: rgba(41, 41, 41, 0.069); }
html[data-theme="light"] .tier-chip.coach { background: rgba(16, 170, 88, 0.189); }
