:root {
  color-scheme: dark;
  --bg: #060b16;
  --panel: #10192b;
  --panel-2: #17243c;
  --text: #f4f7ff;
  --muted: #8fa3c2;
  --accent: #4de1a8;
  --accent-2: #4aa3ff;
  --border: rgba(255,255,255,0.08);
  --danger: #ff6b6b;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; color: var(--text); background: linear-gradient(135deg, #071120 0%, #09172a 55%, #0a1730 100%); }
.shell { max-width: 1250px; margin: 0 auto; padding: 22px 16px 80px; }
.hero { display: flex; justify-content: space-between; gap: 18px; align-items: start; padding: 22px 24px; border-radius: 24px; background: linear-gradient(135deg, rgba(77,225,168,0.15), rgba(74,163,255,0.14)); border: 1px solid var(--border); margin-bottom: 16px; }
.hero h1 { margin: 6px 0; font-size: clamp(1.7rem, 3vw, 2.35rem); }
.hero-copy { color: var(--muted); line-height: 1.55; max-width: 720px; margin: 0; }
.eyebrow { text-transform: uppercase; letter-spacing: .25em; font-size: .76rem; color: var(--accent); margin: 0 0 8px; }
.hero-card { min-width: 200px; border: 1px solid var(--border); border-radius: 16px; padding: 14px; background: rgba(12,20,34,0.82); text-align: center; }
.hero-card span { display: block; font-size: .8rem; color: var(--accent-2); margin-bottom: 4px; }
.hero-mini { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 20px; border-radius: 20px; background: rgba(16,25,43,0.92); border: 1px solid var(--border); margin-bottom: 16px; }
.primary-cta { display: inline-block; text-decoration: none; padding: 12px 16px; border-radius: 999px; font-weight: 700; background: linear-gradient(135deg, var(--accent), var(--accent-2)); color: #05111c; }
.top-nav { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 16px; padding: 12px 14px; border-radius: 999px; background: rgba(16,25,43,0.95); border: 1px solid var(--border); }
.nav-link { text-decoration: none; color: var(--muted); padding: 8px 12px; border-radius: 999px; }
.nav-link.active { background: rgba(77,225,168,0.15); color: var(--accent); }
.inline-form { margin-left: auto; }
.alert { padding: 12px 14px; border-radius: 12px; margin-bottom: 12px; }
.alert.success { background: rgba(77,225,168,0.15); color: #aef8d4; border: 1px solid rgba(77,225,168,0.24); }
.alert.danger { background: rgba(255,107,107,0.16); color: #ffb6b6; border: 1px solid rgba(255,107,107,0.25); }
.stats-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.stat-card, .panel { background: rgba(16,25,43,0.95); border: 1px solid var(--border); border-radius: 18px; padding: 16px; box-shadow: 0 14px 35px rgba(0,0,0,0.22); }
.stat-card h3 { margin: 0 0 8px; color: var(--muted); font-size: .95rem; }
.stat-card strong { font-size: 1.8rem; color: var(--accent); }
.layout-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.panel-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.panel h2, .panel h3 { margin: 0; }
.chip { background: rgba(77,225,168,0.16); color: var(--accent); padding: 7px 10px; border-radius: 999px; font-size: .8rem; }
.stack { display: grid; gap: 12px; }
.row-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
label { display: flex; flex-direction: column; gap: 6px; color: var(--muted); font-size: .92rem; }
input, textarea, button, .secondary-btn { font: inherit; border-radius: 12px; border: 1px solid var(--border); padding: 10px 12px; background: #0d1525; color: var(--text); }
textarea { min-height: 90px; resize: vertical; }
button, .secondary-btn { cursor: pointer; font-weight: 700; border: none; }
button { background: linear-gradient(135deg, var(--accent), var(--accent-2)); color: #02131d; }
button.secondary, .secondary-btn { background: linear-gradient(135deg, #36445f, #223249); color: var(--text); text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.exercise-list { display: grid; gap: 10px; }
.exercise-row { display: grid; grid-template-columns: 1.2fr .8fr .7fr .7fr .8fr .8fr .6fr 1fr; gap: 8px; }
.inline-actions { display: flex; justify-content: space-between; gap: 10px; }
.plain-list { padding-left: 16px; color: var(--muted); line-height: 1.7; }
.muted { color: var(--muted); }
.plan-row { border: 1px solid var(--border); border-radius: 14px; padding: 12px; background: rgba(255,255,255,0.02); margin-bottom: 10px; }
.admin-card { display: grid; gap: 12px; margin-bottom: 16px; }
.admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.library-list { display: grid; gap: 12px; }
.library-item { display: grid; gap: 8px; border: 1px solid var(--border); border-radius: 14px; padding: 12px; background: rgba(255,255,255,0.03); }
.library-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.library-actions form { display: inline-flex; }
.search-row { display: flex; gap: 10px; margin-bottom: 12px; }
.search-row input { flex: 1; }
.chip-row { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; margin-bottom: 14px; }
.chip-link { text-decoration: none; color: var(--muted); border: 1px solid var(--border); border-radius: 999px; padding: 8px 12px; white-space: nowrap; }
.chip-link.active { background: rgba(77,225,168,0.16); color: var(--accent); }
.equipment-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.equipment-chip { border-radius: 14px; padding: 10px 12px; display: flex; align-items: center; gap: 8px; white-space: normal; }
.equipment-chip input { margin: 0; accent-color: var(--accent); }
.section-note { color: var(--muted); font-size: .95rem; margin: 0 0 12px; }
@media (max-width: 960px) { .equipment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .equipment-grid { grid-template-columns: 1fr; } }
.exercise-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.exercise-card { display: grid; gap: 12px; border: 1px solid var(--border); border-radius: 18px; padding: 16px; background: linear-gradient(135deg, rgba(16,25,43,0.95), rgba(24,37,59,0.9)); }
.exercise-card-top { display: flex; justify-content: space-between; gap: 10px; align-items: start; }
.exercise-card-top h3 { margin: 0 0 4px; font-size: 1.05rem; }
.exercise-card-meta { display: grid; gap: 6px; color: var(--muted); }
.status-pill { display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; border-radius: 999px; font-size: .78rem; font-weight: 700; }
.status-pill.ok { background: rgba(77,225,168,0.16); color: var(--accent); }
.status-pill.pending { background: rgba(74,163,255,0.16); color: var(--accent-2); }
.status-pill.neutral { background: rgba(255,255,255,0.08); color: var(--muted); }
.sheet { border: 1px solid var(--border); border-radius: 20px; padding: 16px; background: rgba(255,255,255,0.03); }
.sheet-head { display: flex; justify-content: space-between; gap: 10px; align-items: start; margin-bottom: 10px; }
.sheet-head h3 { margin: 0; }
.exercise-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.exercise-detail-card { border: 1px solid var(--border); border-radius: 14px; padding: 12px; background: rgba(255,255,255,0.03); }
.week-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.week-card { display: grid; gap: 8px; border: 1px solid var(--border); border-radius: 18px; padding: 16px; background: linear-gradient(135deg, rgba(16,25,43,0.95), rgba(20,33,54,0.92)); text-decoration: none; color: var(--text); }
.week-card h3 { margin: 0; }
.week-card-top { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.day-pill { display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; border-radius: 999px; background: rgba(74,163,255,0.16); color: var(--accent-2); font-weight: 700; font-size: .78rem; }
.card-subtext { margin: 0; color: var(--accent); font-size: .9rem; }
.routine-list { display: grid; gap: 10px; }
.routine-item { border: 1px solid var(--border); border-radius: 16px; padding: 12px; background: rgba(255,255,255,0.03); }
.routine-item-head { display: flex; justify-content: space-between; gap: 10px; align-items: start; }
.routine-item-head h4 { margin: 0 0 4px; }
@media (max-width: 960px) { .exercise-grid, .week-grid, .exercise-detail-grid { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .search-row { flex-direction: column; } .sheet-head { flex-direction: column; } .exercise-card-top, .routine-item-head, .week-card-top { flex-direction: column; align-items: flex-start; } }
.training-card { display: grid; gap: 14px; }
.training-head { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.timer-box { min-width: 90px; text-align: center; padding: 12px; border-radius: 14px; background: rgba(77,225,168,0.16); color: var(--accent); font-weight: 800; font-size: 1.15rem; }
.progress-bar { height: 10px; border-radius: 999px; overflow: hidden; background: rgba(255,255,255,0.08); }
.progress-bar span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--accent), var(--accent-2)); }
.suggestion-box { padding: 12px; border-radius: 14px; border: 1px solid var(--border); background: rgba(255,255,255,0.03); }
.timer-controls { display: flex; gap: 10px; flex-wrap: wrap; }
.summary-row { display: flex; gap: 10px; flex-wrap: wrap; }
.summary-pill { padding: 8px 10px; border-radius: 999px; background: rgba(77,225,168,0.14); color: var(--accent); font-weight: 600; }
.exercise-card { border: 1px solid var(--border); border-radius: 14px; padding: 12px; background: rgba(255,255,255,0.03); }
.exercise-card summary { cursor: pointer; font-weight: 700; }
.history-list { display: grid; gap: 12px; }
.history-item { background: #121d30; border: 1px solid var(--border); border-radius: 16px; padding: 14px; }
.history-top { display: flex; justify-content: space-between; gap: 10px; align-items: start; margin-bottom: 8px; }
.meta-pill { background: rgba(74,163,255,0.16); color: var(--accent-2); padding: 7px 10px; border-radius: 999px; font-size: .8rem; white-space: nowrap; }
.export-box { width: 100%; }
@media (max-width: 960px) { .layout-grid { grid-template-columns: 1fr; } .exercise-row { grid-template-columns: 1fr 1fr; } .admin-grid { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .hero, .hero-mini { flex-direction: column; align-items: flex-start; } .stats-grid { grid-template-columns: 1fr; } .row-grid { grid-template-columns: 1fr; } .top-nav { border-radius: 18px; } .inline-actions { flex-direction: column; } .library-actions { flex-direction: column; } }
