/* ============================================================
   СИЛА·ДОМ — общ стил (Кехлибар × Атлас)
   ============================================================ */
:root{
  --bg:#14171c;--card:#1d222b;--card2:#232a35;--line:#2e3642;
  --text:#e8ebf0;--muted:#a3aebb;--accent:#ffb454;--ok:#4cc38a;
  --m1:#ff5252;--m2:#ffa94d;--m3:#51cf66;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --serif:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--text);line-height:1.6;padding:0 0 90px;font-size:16px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  background-image:radial-gradient(900px 400px at 85% -10%, rgba(255,180,84,.07), transparent 60%);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px;}

/* ---- меню ---- */
.top{border-bottom:1px solid var(--line);background:rgba(20,23,28,.92);backdrop-filter:blur(6px);
  position:sticky;top:0;z-index:20;}
.top .in{max-width:1100px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;gap:18px;}
.brand{font-family:var(--serif);font-size:18px;font-weight:700;font-style:normal;letter-spacing:.3px;}
.brand b{color:var(--accent);}
.nav{display:flex;gap:4px;margin-left:8px;flex-wrap:wrap;}
.nav a{font-size:14px;font-weight:600;color:var(--muted);padding:6px 11px;border-radius:9px;}
.nav a:hover{color:var(--text);background:var(--card2);}
.nav a.on{color:var(--accent);background:rgba(255,180,84,.1);}
.prof{cursor:pointer;font-family:var(--mono);font-size:13px;color:var(--accent);
  background:rgba(255,180,84,.1);border:1px solid rgba(255,180,84,.3);border-radius:9px;
  padding:5px 10px;white-space:nowrap;margin-left:auto;}
.prof .ed{opacity:.75;margin-left:4px;}
.mobile-nav{display:none;}

/* ---- заглавия ---- */
.eyebrow{font-family:var(--mono);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin:30px 0 8px;}
h1{font-family:var(--serif);font-size:32px;font-weight:700;font-style:normal;}
.lead{color:var(--muted);font-size:16px;margin:8px 0 18px;max-width:80ch;}
h3.sec{font-family:var(--serif);font-size:20px;font-weight:700;font-style:normal;margin:26px 0 12px;}
h3.sec .§{color:var(--accent);font-family:var(--mono);font-size:13px;margin-right:8px;}

/* ---- карти, чипове, таблици ---- */
.grid{display:grid;gap:14px;}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;}
.tag{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--accent);background:rgba(255,180,84,.1);border:1px solid rgba(255,180,84,.3);
  border-radius:7px;padding:3px 8px;white-space:nowrap;display:inline-block;}
.badge{font-family:var(--mono);font-size:12px;color:var(--accent);background:rgba(255,180,84,.1);border-radius:8px;padding:4px 9px;white-space:nowrap;}
.mono{font-family:var(--mono);}
.legend{display:flex;gap:18px;align-items:center;font-size:14px;color:var(--muted);margin:6px 0 18px;flex-wrap:wrap;}
.legend .sw{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:6px;vertical-align:-1px;}
.s1{background:var(--m1);} .s2{background:var(--m2);} .s3{background:var(--m3);}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chips span{font-size:13px;font-weight:650;padding:4px 11px;border-radius:8px;}
.c1{background:rgba(255,82,82,.12);border:1px solid rgba(255,82,82,.35);color:#ffb0b0;}
.c2{background:rgba(255,169,77,.1);border:1px solid rgba(255,169,77,.3);color:#ffd0a0;}
.c3{background:rgba(81,207,102,.09);border:1px solid rgba(81,207,102,.3);color:#a9e8b8;}
table{width:100%;border-collapse:collapse;font-size:15px;}
th{font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);
  text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);}
td{padding:9px 10px;border-bottom:1px solid rgba(46,54,66,.5);vertical-align:top;}

.sub{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid rgba(46,54,66,.45);}
.sub:last-child{border-bottom:none;}
.sub .n{font-family:var(--mono);font-size:11px;color:var(--accent);border:1px solid rgba(255,180,84,.35);
  border-radius:6px;padding:1px 6px;margin-top:2px;flex-shrink:0;}
.sub b{font-size:16px;font-weight:700;}
.sub p{font-size:14px;color:var(--muted);}
.note{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--ok);
  border-radius:14px;padding:16px 20px;font-size:15.5px;color:#cdeeda;margin-top:22px;}

.btn{display:inline-block;background:var(--accent);color:#14171c;border:none;border-radius:11px;
  padding:11px 20px;font-size:14.5px;font-weight:750;cursor:pointer;}
.btn:hover{filter:brightness(1.07);}
.btn.ghost{background:var(--card2);color:var(--text);border:1px solid var(--line);}
a.btn{font-family:inherit;}
.workout-start{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0 22px;padding:16px 18px;background:linear-gradient(100deg,rgba(255,180,84,.16),rgba(255,180,84,.045)),var(--card);border:1px solid rgba(255,180,84,.38);border-radius:16px;}
.workout-start p{margin-top:5px;color:var(--muted);font-size:14px;}
.workout-start .btn{white-space:nowrap;font-size:15px;padding:13px 19px;box-shadow:0 8px 20px rgba(255,180,84,.16);}

/* ---- анатомични плочи (SVG) ---- */
.plate .rg{
  fill:var(--rg,#4a5563); fill-opacity:.9; cursor:pointer;
  transition:fill .18s, fill-opacity .18s, filter .18s;
  stroke:var(--plate-line,#12161c); stroke-width:1.2;
}
.plate .rg:hover{
  fill:var(--rg-hi,var(--accent,#ffb454)); fill-opacity:.95;
  filter:drop-shadow(0 0 6px var(--rg-hi,var(--accent,#ffb454)));
}
.plate .rg:focus{outline:none;stroke:var(--accent);stroke-width:3;filter:drop-shadow(0 0 6px var(--accent));}
.plate .rg.lit, .plate .rg.cat-lit{
  fill:var(--rg-hi,var(--accent,#ffb454)); fill-opacity:.95;
  filter:drop-shadow(0 0 6px var(--rg-hi,var(--accent,#ffb454)));
}
.plate .rg.m1{ fill:var(--m1,#ff5252); fill-opacity:1; stroke:#fff3;
  filter:drop-shadow(0 0 5px rgba(255,68,68,.55)); }
.plate .rg.m2{ fill:var(--m2,#ffa94d); fill-opacity:.95; stroke:#fff2;
  filter:drop-shadow(0 0 4px rgba(255,169,77,.45)); }
.plate .rg.m3{ fill:var(--m3,#51cf66); fill-opacity:.85; stroke:#fff2;
  filter:drop-shadow(0 0 4px rgba(81,207,102,.4)); }
.map-tip{position:fixed;z-index:60;display:none;pointer-events:none;max-width:210px;
  background:#0e1116;border:1px solid var(--line);border-radius:10px;padding:8px 11px;
  font-size:12.5px;line-height:1.45;box-shadow:0 8px 26px rgba(0,0,0,.45);}
.map-tip small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px;}
.cat{transition:border-color .15s, box-shadow .15s, transform .15s;cursor:pointer;display:block;}
.cat.hl{border-color:rgba(255,180,84,.6);box-shadow:0 0 0 1px rgba(255,180,84,.35),0 6px 22px rgba(255,180,84,.1);transform:translateY(-1px);}

/* ============================================================
   ФОРМАТ НА УПРАЖНЕНИЕ (одобрен)
   ============================================================ */
.ex-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 18px 16px;}
.ex-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.ex-head h2{font-family:var(--serif);font-size:23px;font-weight:700;font-style:normal;}
.ex-head .sub{border:none;padding:0;display:block;color:var(--muted);font-size:13.5px;}
.ex-head .badge{margin-left:auto;}
.media{display:grid;grid-template-columns:minmax(0,1fr) 500px;gap:14px;align-items:stretch;}
.anim-box{background:#0e1116;border:1px solid var(--line);border-radius:14px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;}
.anim-box img{width:100%;height:auto;display:block;}
.map-box{background:var(--card2);border:1px solid var(--line);border-radius:14px;padding:12px 10px 8px;display:flex;flex-direction:column;}
.map-box .tab{font-family:var(--mono);font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:6px;}
.map-box .plates{display:flex;gap:10px;justify-content:center;align-items:flex-start;}
.map-box .pl{width:222px;}
.map-box .pl svg{width:100%;height:auto;}
.steps{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;font-size:15px;color:#c7cdd6;list-style:none;counter-reset:st;}
.steps li{padding-left:22px;position:relative;margin-top:4px;}
.steps li::before{content:counter(st);counter-increment:st;position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:5px;
  background:rgba(255,180,84,.13);border:1px solid rgba(255,180,84,.4);color:var(--accent);
  font-family:var(--mono);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.why{margin-top:14px;font-size:14.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:10px;}
.why b{color:var(--accent);font-weight:700;}
.adapt{margin-top:14px;font-size:14.5px;color:#c7cdd6;background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:11px 14px;}
.adapt b{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:4px;}
.rest-tag{font-family:var(--mono);font-size:12px;color:var(--muted);}
.favorite{font:inherit;font-size:12px;font-weight:700;color:var(--accent);background:rgba(255,180,84,.1);border:1px solid rgba(255,180,84,.35);border-radius:8px;padding:5px 9px;cursor:pointer;}
.favorite[aria-pressed="true"]{background:rgba(255,180,84,.18);}
@media (max-width:860px){
  .media{grid-template-columns:minmax(0,1fr);}
  .media>*{min-width:0;}
  .anim-box{max-width:100%;}
  .anim-box img{max-width:100%;}
  .map-box .pl{width:150px;}
  .steps{grid-template-columns:1fr;}
}
@media (max-width:400px){ .map-box .pl{width:140px;} }

/* ============================================================
   БИБЛИОТЕКА
   ============================================================ */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.filters .f{font-size:13.5px;font-weight:650;padding:7px 13px;border-radius:10px;cursor:pointer;
  border:1px solid var(--line);color:var(--muted);background:var(--card);font-family:inherit;}
.filters .f.on{color:var(--accent);border-color:rgba(255,180,84,.45);background:rgba(255,180,84,.1);}
.favorite-filter{font:inherit;font-size:13.5px;font-weight:650;padding:7px 13px;border-radius:10px;cursor:pointer;border:1px solid var(--line);color:var(--muted);background:var(--card);margin:-6px 0 16px;}
.favorite-filter.on{color:var(--accent);border-color:rgba(255,180,84,.45);background:rgba(255,180,84,.1);}
.filters .lbl{font-family:var(--mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);align-self:center;margin-right:2px;}
.lib{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.lib .card{padding:14px;}
.lib .thumb{border-radius:10px;background:#0e1116;border:1px solid var(--line);overflow:hidden;margin-bottom:10px;}
.lib .thumb img{width:100%;display:block;}
.lib h4{font-size:16px;font-weight:750;}
.lib .en{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.5px;margin:1px 0 7px;}
.lib .meta{font-size:13.5px;color:var(--muted);}
.lib .card{transition:transform .15s, border-color .15s;cursor:pointer;}
.lib .card:hover{transform:translateY(-2px);border-color:rgba(255,180,84,.4);}
@media (max-width:960px){ .lib{grid-template-columns:1fr 1fr;} }
@media (max-width:640px){ .lib{grid-template-columns:1fr;} }

/* ============================================================
   ДЕН / ТРЕНИРОВКА
   ============================================================ */
.day-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.day-head .d{font-family:var(--mono);font-size:13px;color:var(--accent);border:1px solid rgba(255,180,84,.35);
  border-radius:9px;padding:4px 10px;}
.stats{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 4px;}
.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 16px;text-align:center;min-width:110px;}
.stat b{display:block;font-family:var(--mono);font-size:19px;color:var(--accent);}
.stat span{font-size:12px;color:var(--muted);letter-spacing:.6px;text-transform:uppercase;}
.ex-big{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;background:var(--card);
  border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:12px;}
.ex-big .anim{background:#0e1116;border:1px solid var(--line);border-radius:12px;overflow:hidden;cursor:pointer;}
.ex-big .anim img{width:100%;display:block;}
.ex-big h4{font-family:var(--serif);font-size:19px;font-weight:700;font-style:normal;}
.ex-big h4 .no{font-family:var(--mono);font-size:12px;color:var(--accent);border:1px solid rgba(255,180,84,.4);border-radius:7px;padding:2px 7px;margin-right:10px;vertical-align:2px;}
.rx{font-family:var(--mono);font-size:12.5px;color:var(--accent);background:rgba(255,180,84,.1);
  border-radius:8px;padding:4px 9px;white-space:nowrap;}
.ex-big .row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap;}
.steps-inline{margin:10px 0 0;font-size:14.5px;color:#c7cdd6;list-style:none;}
.steps-inline li{padding-left:18px;position:relative;margin-top:4px;}
.steps-inline li::before{content:"–";position:absolute;left:2px;color:var(--accent);}
.mini{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.mini .card{display:flex;gap:12px;align-items:flex-start;cursor:pointer;transition:transform .15s,border-color .15s;}
.mini .card:hover{transform:translateY(-2px);border-color:rgba(255,180,84,.4);}
.mini .thumb{width:86px;height:86px;border-radius:11px;background:#0e1116;border:1px solid var(--line);overflow:hidden;flex-shrink:0;}
.mini .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.mini .desc{font-size:13.5px;color:var(--muted);margin-top:5px;line-height:1.45;}
.timer{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);
  border-radius:14px;padding:12px 18px;margin:16px 0;flex-wrap:wrap;}
.timer .t{font-family:var(--mono);font-size:22px;color:var(--accent);}
.assistant-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;}
.assistant{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:18px;position:relative;overflow:hidden;}
.assistant-progress{grid-column:1/-1;height:5px;background:var(--line);border-radius:99px;overflow:hidden;margin:-18px -18px 0;}
.assistant-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit;}
.assistant .thumb{align-self:start;background:#0e1116;border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.assistant .thumb img{display:block;width:100%;}
.assistant-copy h2{font-family:var(--serif);font-size:28px;margin:10px 0 2px;}
.assistant .steps{grid-template-columns:1fr;margin-top:18px;}
.rest-panel{grid-column:1/-1;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--card2);}
.rest-panel.finished{border-color:rgba(76,195,138,.7);background:rgba(76,195,138,.09);}
.rest-readout{display:flex;align-items:baseline;gap:12px;}
.rest-panel output{font-family:var(--mono);font-size:26px;color:var(--accent);}
.rest-panel.finished output{color:var(--ok);}
.timer-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto;}
.sound-toggle{font:inherit;font-size:13px;font-weight:700;cursor:pointer;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:10px;padding:10px 12px;}
.sound-toggle[aria-pressed="true"]{color:var(--accent);border-color:rgba(255,180,84,.45);background:rgba(255,180,84,.1);}
.assistant-actions{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;}
button:disabled{opacity:.45;cursor:not-allowed;}
@media (max-width:860px){ .ex-big{grid-template-columns:1fr;} .mini{grid-template-columns:1fr;} }

/* ============================================================
   ПРОГРАМА
   ============================================================ */
.tabs{display:flex;gap:8px;margin:6px 0 20px;flex-wrap:wrap;}
.tabs .t{font-family:var(--mono);font-size:14px;font-weight:700;padding:8px 16px;border-radius:11px;cursor:pointer;
  border:1px solid var(--line);color:var(--muted);background:var(--card);}
.tabs .t.on{color:#14171c;background:var(--accent);border-color:var(--accent);}
.week{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.day{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;position:relative;}
.day.today{border-color:rgba(255,180,84,.55);box-shadow:0 0 0 1px rgba(255,180,84,.35), 0 6px 24px rgba(255,180,84,.08);}
.day .dn{font-family:var(--mono);font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);}
.day h3{font-family:var(--serif);font-size:17.5px;font-weight:700;font-style:normal;margin:3px 0 8px;}
.day .lbl-today{position:absolute;top:12px;right:12px;font-family:var(--mono);font-size:9.5px;letter-spacing:1.2px;
  color:#14171c;background:var(--accent);border-radius:6px;padding:2px 7px;font-weight:700;}
.day ul{font-size:14px;color:#c7cdd6;list-style:none;}
.day li{padding:4px 0 4px 16px;position:relative;border-bottom:1px solid rgba(46,54,66,.4);}
.day li:last-child{border-bottom:none;}
.day li::before{content:"·";position:absolute;left:2px;color:var(--accent);font-weight:800;}
.day.rest{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;color:var(--muted);text-align:center;gap:8px;}
.day a.card-link{display:block;}
.rules .card{font-size:15px;color:#c7cdd6;}
.rules li{list-style:none;padding:7px 0 7px 24px;position:relative;border-bottom:1px solid rgba(46,54,66,.45);}
.rules li:last-child{border-bottom:none;}
.rules li::before{content:counter(rl);counter-increment:rl;position:absolute;left:0;top:8px;width:18px;height:18px;
  border-radius:5px;background:rgba(255,180,84,.13);border:1px solid rgba(255,180,84,.4);color:var(--accent);
  font-family:var(--mono);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.rules ol{counter-reset:rl;}
@media (max-width:960px){ .week{grid-template-columns:1fr 1fr;} }
@media (max-width:640px){ .week{grid-template-columns:1fr;} }

/* ============================================================
   МУСКУЛИ / МУСКУЛ
   ============================================================ */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start;}
.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.cat h2{font-family:var(--serif);font-size:18.5px;font-weight:700;font-style:normal;margin:6px 0 2px;}
.cat .en{font-size:11px;color:var(--muted);font-family:var(--mono);letter-spacing:.5px;}
.cat .cnt{font-family:var(--mono);font-size:12.5px;color:var(--muted);margin-top:8px;}
.mapcard{position:sticky;top:74px;padding-top:0;}
.layout > div > h3.sec:first-child{margin-top:0;}
.mapcard h3.sec{margin-top:0;padding:0 16px;}
.mapcard .plates{display:flex;gap:10px;justify-content:center;background:var(--card2);
  border:1px solid var(--line);border-radius:14px;padding:12px 8px;}
.mapcard .pl{width:158px;} .mapcard .pl svg{width:100%;height:auto;}
.hint{font-size:13.5px;color:var(--muted);text-align:center;margin-top:8px;}
.mus-head{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start;}
.mus-head .plates{display:flex;gap:8px;justify-content:center;background:var(--card2);
  border:1px solid var(--line);border-radius:14px;padding:10px 6px;}
.mus-head .pl{width:142px;} .mus-head .pl svg{width:100%;height:auto;}
.ex-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(46,54,66,.5);cursor:pointer;}
.ex-row:hover h4{color:var(--accent);}
.ex-row:last-child{border-bottom:none;}
.ex-row .thumb{width:84px;height:84px;border-radius:10px;background:#0e1116;border:1px solid var(--line);
  flex-shrink:0;overflow:hidden;}
.ex-row .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.ex-row h4{font-size:16px;font-weight:750;}
.ex-row .meta{font-size:13.5px;color:var(--muted);margin:2px 0 6px;}
.pair{display:flex;gap:10px;flex-wrap:wrap;}
.pair .p{background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:13px;}
.pair .p b{color:var(--accent);}
@media (max-width:960px){ .layout{grid-template-columns:1fr;} .cats{grid-template-columns:1fr 1fr;} .mapcard{position:static;} .mus-head{grid-template-columns:1fr;} }
@media (max-width:640px){
  .cats{grid-template-columns:1fr;}
  .mapcard .pl{width:150px;}
  .mus-head .pl{width:140px;}
  .ex-big{grid-template-columns:1fr;}
  .ex-big .anim{max-width:100%;}
}

/* ============================================================
   ДНЕС (начална)
   ============================================================ */
.today-hero{background:linear-gradient(120deg,rgba(255,180,84,.12),rgba(255,180,84,.03) 55%),var(--card);
  border:1px solid rgba(255,180,84,.35);border-radius:20px;padding:24px 26px;margin-bottom:20px;
  display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.today-hero h2{font-family:var(--serif);font-size:27px;font-weight:700;font-style:normal;}
.today-hero .when{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:6px;}
.today-hero p{color:var(--muted);font-size:15px;margin-top:6px;max-width:60ch;}
.today-hero .right{margin-left:auto;text-align:center;}
.today-hero .right .big{font-family:var(--mono);font-size:34px;color:var(--accent);line-height:1;}
.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.quick .card{text-align:center;padding:18px 12px;transition:transform .15s,border-color .15s;cursor:pointer;}
.quick .card:hover{transform:translateY(-2px);border-color:rgba(255,180,84,.4);}
.quick .ico{font-size:26px;margin-bottom:8px;}
.quick b{font-size:15px;display:block;}
.quick span{font-size:13px;color:var(--muted);}
@media (max-width:860px){ .quick{grid-template-columns:1fr 1fr;} }

/* ---- футер ---- */
footer{border-top:1px solid var(--line);margin-top:50px;padding:26px 0 0;}
footer .in{max-width:1100px;margin:0 auto;padding:0 22px;display:flex;gap:18px;flex-wrap:wrap;
  font-size:12px;color:var(--muted);align-items:center;}
footer .src{font-family:var(--mono);font-size:11px;letter-spacing:.5px;}

@media (max-width:860px){
  .top .in{flex-wrap:wrap;gap:8px;padding:10px 16px;}
  .nav{width:100%;margin-left:0;overflow-x:auto;}
  .prof{margin-left:auto;}
}
@media (max-width:640px){
  body{padding-bottom:84px;overflow-x:hidden;}
  .wrap{padding:0 16px;}
  .top .in{padding:10px 16px;min-height:52px;}
  .top .nav{display:none;}
  .prof{max-width:calc(100vw - 145px);overflow:hidden;text-overflow:ellipsis;font-size:11px;padding:6px 8px;}
  .mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;left:0;right:0;bottom:0;z-index:90;padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:rgba(20,23,28,.97);border-top:1px solid var(--line);backdrop-filter:blur(8px);}
  .mobile-nav a{min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center;padding:6px 2px;border-radius:8px;font-size:10px;font-weight:700;text-align:center;color:var(--muted);}
  .mobile-nav a.on{color:var(--accent);background:rgba(255,180,84,.1);}
  h1{font-size:29px;line-height:1.2;}
  .eyebrow{margin-top:22px;letter-spacing:1.4px;}
  .lead{font-size:15px;}
  .workout-start{align-items:stretch;flex-direction:column;padding:15px;}
  .workout-start .btn{text-align:center;width:100%;}
  .today-hero{padding:18px;}
  .today-hero .right{margin:0;display:flex;gap:8px;align-items:baseline;text-align:left;}
  .today-hero .right .big{font-size:24px;}
  .layout .mapcard{order:-1;}
  .mapcard .plates{max-width:100%;}
  .mapcard .pl{width:min(42vw,150px);}
  .ex-card{padding:14px;}
  .ex-head .badge{margin-left:0;}
  .media{gap:12px;}
  .assistant{grid-template-columns:1fr;padding:14px;gap:14px;}
  .assistant-progress{margin:-14px -14px 0;}
  .assistant-copy h2{font-size:25px;}
  .rest-panel{gap:10px;}
  .timer-actions{margin-left:0;width:100%;}
  .timer-actions .btn{flex:1;text-align:center;padding:10px 6px;}
  .sound-toggle{width:100%;}
  .assistant-actions .btn{flex:1;text-align:center;padding:11px 8px;}
}
@media (prefers-reduced-motion:reduce){ *{animation-duration:.01s !important;} }

/* ============================================================
   ПРОФИЛ — бутон + модален редактор
   ============================================================ */
.prof-modal{position:fixed;inset:0;background:rgba(10,12,16,.72);backdrop-filter:blur(3px);
  display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;}
.prof-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;
  width:min(560px,100%);max-height:88vh;overflow:auto;}
.prof-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px;}
.prof-head h3{font-family:var(--serif);font-size:19px;font-weight:700;font-style:normal;}
.prof-head .x{background:none;border:none;color:var(--muted);font-size:16px;cursor:pointer;padding:4px 8px;border-radius:8px;}
.prof-head .x:hover{color:var(--text);background:var(--card2);}
.prof-head .sub{font-size:12.5px;color:var(--muted);margin-top:3px;}
.prof-modal.onboarding{background:rgba(10,12,16,.9);}
.prof-modal.onboarding .prof-card{border-color:rgba(255,180,84,.4);box-shadow:0 18px 60px rgba(0,0,0,.5);}
.prof-card .lbl{display:block;font-family:var(--mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;
  color:var(--muted);margin:14px 0 6px;}
.prof-card .inp{width:100%;background:#141920;border:1px solid var(--line);color:var(--text);
  border-radius:10px;padding:9px 12px;font-size:14px;outline:none;font-family:inherit;}
.prof-card .inp:focus{border-color:var(--accent);}
.plist{display:grid;gap:6px;}
.popt{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;cursor:pointer;
  background:var(--card2);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:8px 12px;font-size:13.5px;font-weight:650;}
.popt small{color:var(--muted);font-weight:400;font-size:11.5px;}
.popt.on{border-color:rgba(255,180,84,.55);background:rgba(255,180,84,.1);}
.popt.add{color:var(--accent);justify-content:center;}
.goals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.gopt,.dopt{cursor:pointer;background:var(--card2);border:1px solid var(--line);color:var(--muted);
  border-radius:10px;padding:9px 8px;font-size:13px;font-weight:650;font-family:inherit;
  text-align:center;}
.dopt{font-size:13px;}
@media (max-width:430px){ .gopt{font-size:11.5px;line-height:1.3;} }
.gopt.on,.dopt.on{color:#14171c;background:var(--accent);border-color:var(--accent);}
.save{width:100%;margin-top:18px;background:var(--accent);color:#14171c;border:none;border-radius:11px;
  padding:11px;font-size:14.5px;font-weight:750;cursor:pointer;font-family:inherit;}
.save:hover{filter:brightness(1.07);}
.del{width:100%;margin-top:8px;background:none;border:none;color:#ff8585;font-size:12px;cursor:pointer;padding:6px;font-family:inherit;}
.prof-card .hint{font-size:11.5px;color:var(--muted);margin-top:10px;line-height:1.5;}
