/* GRAVUSS shared dark theme. Legacy tone aliases preserve component compatibility. */
:root {
 color-scheme:dark;
 --font-body:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
 --font-heading:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
 --bg:#101211; --surface:#1a1e1c; --surface-raised:#242a27; --text:#f4f6f4;
 --muted:#b5beb8; --line:#424d46; --on-action:#ffffff;
 --theme-accent:#9cd8b3; --theme-hover:#b5e5c6; --theme-soft:#1d3327;
 --theme-border:#48745a; --theme-wash:#17231c; --theme-deep:#131a16; --theme-nav:#254934;
 --action:#28734f; --action-hover:#32835c;
 --accent:var(--theme-accent); --green:var(--accent); --ink:var(--bg);
 --focus:#c6eed3; --danger:#ffafba; --success:#98e2bd;
 --shadow:0 8px 28px #03091430;
 --tone-e8f0ff:var(--text);
 --tone-070d19:var(--bg);
 --tone-090f1d:var(--bg);
 --tone-0b1423:var(--bg);
 --tone-101b2c:var(--surface);
 --tone-122036:var(--surface);
 --tone-0e1828:var(--surface);
 --tone-0b1525:var(--surface);
 --tone-0d1d31:var(--surface);
 --tone-0b1627:var(--surface);
 --tone-071321:var(--on-action);
 --tone-f3f8ff:var(--surface);
 --tone-eff7ff:var(--surface);
 --tone-e8f4ff:var(--surface);
 --tone-c7e5ff:var(--surface);
 --tone-edf6ff:var(--surface);
 --tone-041019:var(--on-action);
 --tone-9bacc5:var(--muted);
 --tone-8198b8:var(--muted);
 --tone-91a6c3:var(--muted);
 --tone-8194af:var(--muted);
 --tone-91afd1:var(--muted);
 --tone-a9bdd6:var(--muted);
 --tone-263750:var(--line);
 --tone-23344b:var(--line);
 --tone-263f5e:var(--line);
 --tone-29425f:var(--line);
 --tone-1d2d44:var(--line);
 --tone-14243b:var(--surface-raised);
 --tone-16263a:var(--surface-raised);
 --tone-93a9c7:var(--muted);
 --tone-64b5ff:var(--theme-accent);
 --tone-a9d5ff:var(--theme-accent);
 --tone-d7edff:var(--theme-accent);
 --tone-8dd0ff:var(--theme-accent);
 --tone-baddff:var(--theme-accent);
 --tone-b6dbff:var(--theme-accent);
 --tone-c1e3ff:var(--theme-accent);
 --tone-8dceff:var(--theme-accent);
 --tone-c7e4ff:var(--theme-accent);
 --tone-2a6dc6:var(--theme-accent);
 --tone-4aa6ff:var(--theme-accent);
 --tone-4b99f2:var(--theme-accent);
 --tone-75c8ff:var(--theme-accent);
 --tone-4b9fff:var(--theme-accent);
 --tone-8bd1ff:var(--theme-accent);
 --tone-1b3b60:var(--theme-accent);
 --tone-244c77:var(--theme-accent);
 --tone-214f7d:var(--theme-accent);
 --tone-193653:var(--theme-accent);
 --tone-10233a:var(--theme-soft);
 --tone-112941:var(--theme-soft);
 --tone-14314a:var(--theme-soft);
 --tone-10263b:var(--theme-soft);
 --tone-112a47:var(--theme-soft);
 --tone-0b1527:var(--theme-soft);
 --tone-153a60:var(--theme-soft);
 --tone-101f34:var(--theme-soft);
 --tone-183554:var(--theme-soft);
 --tone-16375b:var(--theme-soft);
 --tone-1c3a58:var(--theme-soft);
 --tone-142a44:var(--theme-soft);
 --tone-365e85:var(--theme-border);
 --tone-2c4c6f:var(--theme-border);
 --tone-3e6f96:var(--theme-border);
 --tone-37668e:var(--theme-border);
 --tone-3d6488:var(--theme-border);
 --tone-12335955:transparent;
 --tone-309eff50:transparent;
 --tone-228aff20:transparent;
 --tone-76caff18:transparent;
 --tone-319aff25:transparent;
 --tone-2370cb44:transparent;
 --tone-030813bb:#030812b8;
 --tone-0b171c88:#030812b8;
}
/* Preserve the existing optional accent preference without changing stored settings. */
:root[data-theme="pink"]{--theme-accent:#eab3ce;--theme-hover:#f3ccdf;--theme-soft:#352a3b;--theme-border:#785b77;--theme-nav:#46364e}
:root{font-family:var(--font-body)}
h1,h2,h3,.brand,.mode-brand,.stat strong,.rest-countdown,.objective-value strong,.workout-letter,.timer,.hero .metric,.mobile-brand,.load-history-head strong,.assessment-metrics strong{font-family:var(--font-heading)}
body{background:radial-gradient(ellipse at 85% 0,#ffffff04,transparent 45%),linear-gradient(155deg,var(--theme-wash),var(--bg) 560px);color:var(--text);background-attachment:fixed}
.card,.item,.execution-row,dialog{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow)}
.main{margin:0 auto}
.card{border-radius:20px}.item{border-radius:15px}
h1,h2,h3{color:var(--text)}.heading{border-left:3px solid var(--accent);padding-left:16px}.heading h1{letter-spacing:-.8px}
.hero{background:linear-gradient(120deg,var(--theme-wash),var(--surface));border-color:var(--theme-border);box-shadow:var(--shadow);color:var(--text)}
button.primary,.student-shortcuts>button.primary{background:var(--action);color:var(--on-action);border-color:var(--action);box-shadow:0 3px 14px #9cd8b314}
button.primary:hover,.student-shortcuts>button.primary:hover{background:var(--action-hover);color:var(--on-action);filter:none}
button.outline{background:var(--surface);color:var(--text);border-color:var(--line)}
button.outline:hover{background:var(--surface-raised);border-color:var(--theme-border)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
input,textarea,select{background:var(--bg);color:var(--text);border-color:var(--line);accent-color:var(--accent)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
button:disabled{opacity:.55;box-shadow:none}
button.danger,.negative{color:var(--danger)}
.execution-row .done-button{background:var(--surface-raised);color:var(--text);border:1px solid var(--line);filter:none}
.execution-row .done-button:not(:disabled):hover{border-color:var(--accent)}
.execution-row .done-button[aria-pressed="true"]{background:var(--action);color:var(--on-action);border-color:var(--accent)}
.execution-row .done-button:disabled{background:var(--bg);color:var(--muted);opacity:.65}
.execution-row.done{background:var(--theme-soft);border-color:var(--theme-border)}
.execution-row.done .set-objective,.weight-moved{background:var(--theme-soft);border-color:var(--theme-border)}
.sidebar{background:var(--theme-deep);color:var(--text);border-color:var(--line)}
.sidebar .brandmark{color:var(--accent);filter:none}
.nav button{color:var(--muted)}.nav button.active{background:var(--theme-nav);color:var(--text);box-shadow:inset 3px 0 var(--accent);font-weight:700}
.view-switch{background:var(--bg);border-color:var(--line)}
.tabs button.selected,.view-switch button.selected,.student-mode .view-switch button.selected{background:var(--theme-soft);color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.theme-switch button[aria-pressed="true"]{background:var(--theme-soft);color:var(--accent)}
.theme-switch button::before{background:#9cd8b3}.theme-switch button[data-id="pink"]::before{background:#eab3ce}
.badge,.workout-letter{background:var(--theme-soft);color:var(--accent)}.workout-letter{border:1px solid var(--theme-border)}
.student-shortcuts>button{background:linear-gradient(145deg,var(--surface),var(--surface-raised));border-color:var(--line);box-shadow:var(--shadow);color:var(--text)}
.rest-panel{background:var(--surface);border-color:var(--theme-border);box-shadow:0 12px 40px #03091480}
.rest-buttons button.outline{background:var(--surface-raised);color:var(--text)}
.summary-mark{color:var(--on-action)}.save-error{background:#3a3020;color:#ffdda0;border-color:#856c3d}
.set-load-history,.delivery-controls{background:var(--bg);border-color:var(--line)}
#toast{background:var(--surface-raised);color:var(--text);border-color:var(--theme-border)}
dialog{color:var(--text);box-shadow:0 24px 80px #03081299}dialog::backdrop{background:#030812b8;backdrop-filter:blur(4px)}
.editor-head{border-bottom:1px solid transparent}details[open]>.editor-head{border-bottom-color:var(--line);padding-bottom:14px}
.section-title h2{color:var(--text)}
[id^="session-exercise-"],#session-finish-ready{scroll-margin-top:16px}
.completed-exercise{border-color:var(--theme-border)}.completed-exercise summary{cursor:pointer}
@media(max-width:700px){.nav button.active{background:var(--theme-nav);color:var(--text);box-shadow:inset 0 3px var(--accent)}.card{border-radius:18px}.heading{padding-left:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

.exercise-volume{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;padding:14px 16px;border:1px solid var(--theme-border);border-radius:12px;background:var(--theme-soft);color:var(--accent)}.exercise-volume strong{font-size:22px;font-variant-numeric:tabular-nums}.exercise-volume small{flex-basis:100%;font-size:14px;color:var(--muted)}

.test-send-notice{display:block;font-size:14px;line-height:1.4;font-weight:700;margin-top:5px;color:inherit}

.share-steps{padding-left:24px;line-height:1.6;margin:18px 0}.share-steps li+li{margin-top:10px}.share-thanks{color:var(--accent);text-align:center}

.brand{font-size:24px;letter-spacing:.4px}.brand-word small{display:block;font-size:12px;letter-spacing:0;font-weight:400;white-space:nowrap;color:inherit;margin-top:5px}.mode-brand{font-size:22px;letter-spacing:.6px}.brand-signature{color:var(--accent);margin:6px 0 20px}.completion-phrase{margin:0 0 20px;padding:12px 16px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--theme-soft);color:var(--accent);font-size:16px;line-height:1.5;font-weight:500}
