/* Шрифти — локально, без Google Fonts (RODO: жодних запитів до третіх сторін). */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url(f/mr-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url(f/mr-latin-ext-400.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url(f/mr-cyrillic-400.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url(f/mr-cyrillic-ext-400.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url(f/mr-latin-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url(f/mr-latin-ext-600.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url(f/mr-cyrillic-600.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url(f/mr-cyrillic-ext-600.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(f/mr-latin-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(f/mr-latin-ext-700.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(f/mr-cyrillic-700.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(f/mr-cyrillic-ext-700.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url(f/mr-latin-800.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url(f/mr-latin-ext-800.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url(f/mr-cyrillic-800.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url(f/mr-cyrillic-ext-800.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:400;font-display:swap;src:url(f/dm-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:400;font-display:swap;src:url(f/dm-latin-ext-400.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:500;font-display:swap;src:url(f/dm-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:500;font-display:swap;src:url(f/dm-latin-ext-500.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* MRS Fit — темна тема в дусі Polestar: чорне тло, один акцент, плоскі плитки з гострими кутами. */
:root{
  color-scheme:dark;
  --bg:#0A0A0B; --panel:#161719; --panel2:#1E2024; --fg:#fff; --mut:#868D96; --line:#25272B;
  --accent:#FF5A1F; --accent-ink:#140600; --done:#35C759; --warn:#F5A623; --bad:#FF3B30;
  --f:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fn:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:14px;
}
[data-t="orange"]{--accent:#FF5A1F;--accent-ink:#140600}
[data-t="green"] {--accent:#35C759;--accent-ink:#052611}
[data-t="blue"]  {--accent:#2F6BFF;--accent-ink:#fff}
[data-t="pink"]  {--accent:#FF4D8D;--accent-ink:#2A0A16}
[data-t="lime"]  {--accent:#C6FF3A;--accent-ink:#0A0E00}
[data-t="teal"]  {--accent:#00C2B8;--accent-ink:#042019}
[data-t="red"]   {--accent:#FF3B30;--accent-ink:#fff}
[data-t="violet"]{--accent:#8B5CF6;--accent-ink:#fff}
[data-t="gold"]  {--accent:#F5A623;--accent-ink:#241700}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#000;min-height:100%}
body{font-family:var(--f);color:var(--fg);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain}
#app{max-width:460px;margin:0 auto;background:var(--bg);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.pad{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
.body{flex:1;padding-bottom:16px}
img{max-width:100%}
button,input,select,textarea{font-family:inherit;font-size:16px}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[hidden]{display:none!important}

h1{font-weight:800;font-size:28px;margin:0;letter-spacing:-.01em;text-wrap:balance}
h2{font-weight:700;font-size:21px;margin:0}
.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--mut);font-weight:600}
.mut{color:var(--mut)}
.num{font-family:var(--fn);font-variant-numeric:tabular-nums}
.small{font-size:13px;line-height:1.5}
.row{display:flex;align-items:center;gap:10px}
.between{justify-content:space-between}
.wrap{flex-wrap:wrap}
.sp{margin-top:18px}

.sec{display:flex;justify-content:space-between;align-items:baseline;margin:22px 0 10px}
.sec h3{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--mut);font-weight:700;margin:0}
.sec a,.link{color:var(--accent);font-size:13px;font-weight:600;background:none;border:0;padding:0;cursor:pointer}

.card{background:var(--panel);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:12px}
.btn{display:block;width:100%;border:0;border-radius:var(--r);background:var(--accent);color:var(--accent-ink);
     font-weight:700;font-size:16px;padding:16px;text-align:center}
.btn.ghost{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn.bad{background:var(--bad);color:#fff}
.btn.sm{padding:9px 14px;width:auto;font-size:14px;border-radius:10px}
.btn:disabled{opacity:.45}
.inp{width:100%;background:var(--panel2);border:1.5px solid var(--line);border-radius:12px;padding:13px 14px;color:var(--fg)}
.inp::placeholder{color:#5c636b}
label.fld{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--mut);font-weight:600}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;color:var(--fg);font-weight:400}
.chk input{width:22px;height:22px;flex:none;accent-color:var(--accent);margin:0}
.err{background:#2b1111;color:#ff9c94;border-radius:10px;padding:10px 12px;font-size:14px}

.chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;
      letter-spacing:.03em;white-space:nowrap}
.chip.up{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.chip.same{color:var(--mut);box-shadow:inset 0 0 0 1px var(--line)}
.chip.hold{color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn)}
.chip.down{color:var(--bad);box-shadow:inset 0 0 0 1px var(--bad)}
.chip.new{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.chip.ok{background:var(--done);color:#052611}

/* ---- сплеш ---- */
#splash{position:fixed;inset:0;z-index:90;background:var(--bg);display:flex;flex-direction:column;
        align-items:center;justify-content:center;gap:14px}
#splash .logo{font-weight:800;font-size:19vw;line-height:1;letter-spacing:-.02em}
@media(min-width:440px){#splash .logo{font-size:84px}}
#splash .tag{font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-weight:600;text-align:center}
#splash .by{position:absolute;bottom:calc(40px + env(safe-area-inset-bottom));font-size:12px;letter-spacing:.12em;
            color:var(--mut);text-transform:uppercase}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
#splash.go .logo{animation:rise .6s ease both}
#splash.go .tag{animation:rise .6s ease .3s both}
#splash.go .by{animation:rise .6s ease .5s both}
#splash.out{opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s}
@media(prefers-reduced-motion:reduce){#splash *{animation:none!important}}

/* ---- шапка дашборда ---- */
.hd{display:flex;justify-content:space-between;align-items:flex-end;margin-top:14px;gap:12px}
.icbtn{background:none;border:0;padding:6px}
.icbtn svg{width:24px;height:24px;stroke:var(--mut);fill:none;stroke-width:1.8}

.prog{position:relative;border-radius:16px;overflow:hidden;min-height:160px;display:flex;align-items:flex-end;background:#111}
.prog img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.prog .ov{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,11,.96),rgba(10,10,11,.2))}
.prog .in{position:relative;padding:16px;z-index:1}
.prog h2{margin:0 0 4px;font-size:22px;font-weight:800;line-height:1.05}
.bar{height:6px;background:#ffffff22;border-radius:3px;margin-top:10px;max-width:220px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--accent)}

.nx{display:flex;flex-direction:column;gap:6px}
.day{display:flex;align-items:center;gap:12px;background:var(--panel);border-radius:12px;padding:10px 12px;
     border:0;width:100%;text-align:left;color:var(--fg)}
.day.cur{background:var(--accent);color:var(--accent-ink)}
.day .th{width:52px;height:52px;border-radius:9px;object-fit:cover;flex:none;background:#000}
.day .k{font-size:11px;opacity:.72;font-weight:700;letter-spacing:.06em}
.day .n{font-weight:700;font-size:16px}
.day .tx{flex:1;min-width:0}
.day svg{width:26px;height:26px;flex:none;fill:none;stroke-width:2;stroke:currentColor;opacity:.8}

/* ---- календар ---- */
.cal{background:var(--panel);border-radius:16px;padding:16px 14px}
.cmon{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;margin-bottom:14px}
.cmon b{text-align:center;font-weight:700;font-size:16px}
.cmon button{background:none;border:0;color:var(--mut);font-size:22px;line-height:1;padding:4px}
.wk{display:grid;grid-template-columns:repeat(7,1fr)}
.wk span{text-align:center;font-size:11px;color:var(--mut);font-weight:600;padding-bottom:8px}
.dd{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px}
.cd{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.cd b{font-family:var(--fn);font-size:14px;font-weight:500;line-height:1;width:30px;height:30px;
      display:flex;align-items:center;justify-content:center;border-radius:50%}
.cd.out b{color:#3A3E44}
.cd.today b{background:var(--accent);color:var(--accent-ink);font-weight:600}
.dot{width:5px;height:5px;border-radius:50%;display:block}
.dot.done{background:var(--done)}
.dot.plan{box-shadow:inset 0 0 0 1.5px var(--mut)}
.leg{display:flex;gap:18px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--mut)}
.leg b{display:inline-flex;align-items:center;gap:7px;font-weight:500}

/* ---- список вправ у тренуванні ---- */
.list{display:flex;flex-direction:column;background:var(--panel);border-radius:var(--r);overflow:hidden}
.ex{display:grid;grid-template-columns:46px 1fr auto;gap:4px 12px;align-items:center;padding:12px 14px;
    border:0;border-top:1px solid var(--line);background:none;text-align:left;width:100%;color:var(--fg)}
.ex:first-child{border-top:0}
.ex .th{width:46px;height:46px;border-radius:8px;object-fit:cover;background:#000;grid-row:span 2}
.ex .nm{font-weight:600;font-size:15px;line-height:1.2}
.ex .tg{font-family:var(--fn);font-weight:500;font-size:16px;text-align:right;white-space:nowrap}
.ex .sub{grid-column:2/4;font-size:12px;color:var(--mut);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ex.done .nm{color:var(--mut)}

/* ---- екран вправи ---- */
.hero{position:relative;border-radius:16px;overflow:hidden;background:#000;aspect-ratio:16/9}
.hero img{width:100%;height:100%;object-fit:cover;display:block}
.bign{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.bign .v{font-family:var(--fn);font-weight:500;font-size:54px;line-height:.95;color:var(--accent);letter-spacing:-.03em}
.bign .u{font-family:var(--fn);font-size:20px}
.bign .x{font-family:var(--fn);font-size:19px;color:var(--mut)}
.sets{display:flex;flex-direction:column;gap:6px}
.set{display:grid;grid-template-columns:28px 1fr 38px;align-items:center;gap:10px;padding:9px 11px;
     background:var(--panel2);border-radius:10px}
.set .i{font-family:var(--fn);font-weight:600;color:var(--mut)}
.set .v{font-family:var(--fn);font-size:18px;font-weight:600}
.set.wu .v{color:var(--mut);font-size:16px}
.set button{border:0;background:none;color:var(--mut);font-size:20px;width:36px;height:36px;border-radius:8px}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.step .lab{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mut);margin-bottom:6px;font-weight:600}
.ctl{display:grid;grid-template-columns:54px 1fr 54px;background:var(--panel2);border-radius:12px;overflow:hidden;
     box-shadow:inset 0 0 0 1.5px var(--line)}
.ctl button{border:0;background:transparent;color:var(--fg);font-size:26px;height:58px}
.ctl button:active{background:var(--accent);color:var(--accent-ink)}
.ctl input{border:0;background:transparent;text-align:center;font-family:var(--fn);font-size:25px;font-weight:600;
           width:100%;min-width:0;color:var(--fg)}
.toggle{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--mut)}
.toggle input{width:20px;height:20px;accent-color:var(--accent)}
.banner{border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45;display:flex;flex-direction:column;gap:5px}
.banner.warn{background:#2a2214;color:#f0d9a8}
.banner.stop{background:#2e1715;color:#ffb3ad}
.banner.info{background:var(--panel2);color:var(--mut)}
.banner b{color:var(--fg)}
.sym{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sym button{background:var(--panel2);border:0;box-shadow:inset 0 0 0 1.5px var(--line);border-radius:10px;
            padding:12px;font-size:14px;text-align:left;color:var(--fg)}

/* ---- таймери ---- */
.timer{font-family:var(--fn);font-size:15px;color:var(--mut);font-variant-numeric:tabular-nums}
.restbar{position:sticky;bottom:0;z-index:5;background:var(--panel);border-radius:14px;padding:12px 14px;
         display:flex;align-items:center;gap:12px;margin-top:12px}
.restbar .t{font-family:var(--fn);font-size:28px;font-weight:600;color:var(--accent);min-width:74px}
.restbar .tip{flex:1;font-size:13px;line-height:1.4;color:var(--mut)}

/* ---- історія ---- */
.hist{display:flex;flex-direction:column;gap:8px}
details.h{background:var(--panel);border-radius:var(--r)}
details.h summary{padding:12px 14px;display:flex;gap:10px;align-items:center;list-style:none}
details.h summary::-webkit-details-marker{display:none}
.dtag{font-family:var(--fn);font-weight:700;font-size:17px;width:30px;height:30px;border-radius:8px;
      background:var(--accent);color:var(--accent-ink);display:inline-flex;align-items:center;justify-content:center;flex:none}
.dtag.l{background:var(--line);color:var(--fg);font-size:13px}
.hbody{padding:0 14px 14px;display:flex;flex-direction:column;gap:10px}
table{border-collapse:collapse;width:100%;font-size:14px}
td,th{text-align:left;padding:6px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:11px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
td.n{font-family:var(--fn);white-space:nowrap}
.tbl{overflow-x:auto}
pre.md{margin:0;padding:12px;background:var(--panel2);border-radius:10px;font-size:12px;line-height:1.5;
       overflow-x:auto;white-space:pre}
.chart{width:100%;height:auto;display:block}
select.inp{appearance:none}

/* ---- налаштування ---- */
.grp{margin-top:22px}
.grp .gt{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--mut);font-weight:700;margin-bottom:8px}
.lst{background:var(--panel);border-radius:14px;overflow:hidden}
.lrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;
      border-top:1px solid var(--line);font-size:15px;width:100%;background:none;border-left:0;border-right:0;border-bottom:0;
      color:var(--fg);text-align:left}
.lrow:first-child{border-top:0}
.lrow .v{color:var(--mut);font-size:14px}
.swr{display:flex;align-items:center;gap:12px}
.sd{width:22px;height:22px;border-radius:50%;flex:none}
.sc{color:var(--accent);font-weight:800;opacity:0}
.swr.on .sc{opacity:1}
.seg{display:flex;gap:4px;background:var(--panel2);border-radius:10px;padding:3px}
.seg button{border:0;background:none;color:var(--mut);font-weight:600;font-size:13px;padding:7px 13px;border-radius:8px}
.seg button.on{background:var(--accent);color:var(--accent-ink)}
.swt{width:46px;height:28px;border-radius:999px;background:var(--panel2);position:relative;border:0;flex:none}
.swt i{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--mut);transition:.15s}
.swt.on{background:var(--accent)} .swt.on i{left:21px;background:var(--accent-ink)}

/* ---- вкладки ---- */
.tabs{position:sticky;bottom:0;display:flex;justify-content:space-around;border-top:1px solid var(--line);
      background:var(--bg);padding:11px 0 calc(11px + env(safe-area-inset-bottom));z-index:6}
.tabs button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;color:var(--mut);
             font-weight:600;background:none;border:0}
.tabs svg{width:22px;height:22px;stroke:var(--mut);fill:none;stroke-width:2}
.tabs button.on{color:var(--accent)} .tabs button.on svg{stroke:var(--accent)}

/* ---- аркуш і тост ---- */
.sheet-bg{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:60;opacity:0;pointer-events:none;transition:.2s}
.sheet-bg.open{opacity:1;pointer-events:auto}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;max-width:460px;margin:0 auto;background:var(--bg);
       border-top:1px solid var(--line);border-radius:18px 18px 0 0;transform:translateY(100%);
       transition:transform .26s cubic-bezier(.3,.9,.3,1);max-height:88vh;overflow:auto}
.sheet.open{transform:none}
.grip{width:40px;height:4px;background:var(--line);border-radius:2px;margin:10px auto 6px}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(74px + env(safe-area-inset-bottom));
       background:var(--fg);color:var(--bg);padding:11px 17px;border-radius:999px;font-size:14px;z-index:80;
       max-width:calc(100% - 32px);font-weight:600}
@media(prefers-reduced-motion:no-preference){.btn:active{transform:scale(.985)}}

/* «Сьогодні щадити» — контурні перемикачі, а не кольорові чипи */
.avoid{gap:6px;margin:0 0 10px;align-items:center}
.avoid button{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:transparent;
  color:var(--mut);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.avoid button.on{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.lrow.col{flex-direction:column;align-items:stretch;gap:8px}
.lrow.col .seg{width:100%}
.lrow.col .seg button{flex:1;white-space:nowrap}
