/* ФИТЭКО — Подборщик препаратов. Namespaced .fith- to avoid theme clashes. */
.fith-root{
  /* deep herbal green + warm walnut accent, chosen sage neutrals, flat fills */
  --fith-primary:#006826; --fith-primary-d:#004d1c; --fith-primary-t:#2f8f46;
  --fith-accent:#7a5230;                 /* чёрный орех / walnut */
  --fith-leaf:#8fbf6e;
  --fith-ink:#22271f; --fith-muted:#697066; --fith-line:#e2e8dc;
  --fith-bg:#ffffff; --fith-panel:#f5f7f2; --fith-tint:#eaf1e4;
  --fith-shadow:0 16px 40px rgba(12,45,22,.16);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--fith-ink);
}
.fith-root *{box-sizing:border-box;}
.fith-ic{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;display:block;}

/* ---------- launcher (bottom-left) ---------- */
.fith-launcher{position:fixed;left:26px;bottom:26px;z-index:2147483000;
  display:flex;align-items:center;gap:11px;cursor:pointer;background:none;border:0;padding:0;}
.fith-fab{width:60px;height:60px;border-radius:16px;flex:0 0 auto;background:var(--fith-primary);
  box-shadow:0 8px 22px rgba(0,77,28,.34);position:relative;display:flex;align-items:center;justify-content:center;
  color:#fff;transition:transform .25s ease,background .25s ease;}
.fith-fab .fith-ic{width:30px;height:30px;stroke-width:1.6;}
.fith-launcher:hover .fith-fab{transform:translateY(-2px);background:var(--fith-primary-d);}
.fith-fab::after{content:"";position:absolute;inset:0;border-radius:16px;
  box-shadow:0 0 0 0 rgba(0,104,38,.35);animation:fith-pulse 3s ease-out infinite;}
.fith-fab .fith-leaf-a{transform-origin:50% 70%;animation:fith-sway 4s ease-in-out infinite;}
.fith-bubble{background:#fff;color:var(--fith-ink);font-weight:600;font-size:13.5px;padding:9px 14px;
  border-radius:12px;box-shadow:var(--fith-shadow);white-space:nowrap;position:relative;animation:fith-fadein .5s .6s both;}
.fith-bubble::after{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);
  border:6px solid transparent;border-right-color:#fff;}
.fith-bubble b{color:var(--fith-primary);}
/* ≤767px — виден нижний мобильный бар (~69px): поднимаем помощник над ним */
@media(max-width:767px){.fith-bubble{display:none;}.fith-launcher{left:16px;bottom:86px;}.fith-fab{width:54px;height:54px;border-radius:15px;}}
@keyframes fith-pulse{0%{box-shadow:0 0 0 0 rgba(0,104,38,.32)}70%{box-shadow:0 0 0 16px rgba(0,104,38,0)}100%{box-shadow:0 0 0 0 rgba(0,104,38,0)}}
@keyframes fith-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes fith-fadein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- overlay + modal ---------- */
.fith-overlay{position:fixed;inset:0;z-index:2147483001;display:none;background:rgba(18,34,16,.5);
  backdrop-filter:blur(2px);align-items:center;justify-content:center;padding:18px;opacity:0;transition:opacity .26s ease;}
.fith-overlay.fith-open{display:flex;opacity:1;}
.fith-modal{width:100%;max-width:560px;max-height:92vh;overflow:hidden;background:var(--fith-bg);
  border-radius:14px;box-shadow:var(--fith-shadow);display:flex;flex-direction:column;
  transform:translateY(16px);transition:transform .3s cubic-bezier(.2,.8,.2,1);}
.fith-overlay.fith-open .fith-modal{transform:none;}

.fith-head{padding:16px 18px;display:flex;align-items:center;gap:12px;background:var(--fith-primary);color:#fff;}
.fith-head .fith-hlogo{width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.14);
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.fith-head .fith-hlogo .fith-ic{width:20px;height:20px;}
.fith-head h3{margin:0;font-size:15.5px;font-weight:700;line-height:1.2;letter-spacing:.1px;}
.fith-head p{margin:2px 0 0;font-size:11.5px;opacity:.8;}
.fith-close{margin-left:auto;background:rgba(255,255,255,.14);border:0;color:#fff;width:32px;height:32px;
  border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.fith-close .fith-ic{width:18px;height:18px;}
.fith-close:hover{background:rgba(255,255,255,.28);}

.fith-progress{height:3px;background:var(--fith-panel);}
.fith-progress i{display:block;height:100%;background:var(--fith-primary);width:0;transition:width .4s ease;}

.fith-body{padding:22px;overflow-y:auto;}
.fith-step{animation:fith-slide .32s ease both;}
@keyframes fith-slide{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}

.fith-q{font-size:19px;font-weight:700;margin:0 0 4px;letter-spacing:-.2px;}
.fith-sub{font-size:13px;color:var(--fith-muted);margin:0 0 16px;line-height:1.5;}

/* goal grid */
.fith-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;}
@media(min-width:500px){.fith-grid{grid-template-columns:repeat(3,1fr);}}
.fith-chip{position:relative;border:1.5px solid var(--fith-line);background:#fff;border-radius:11px;padding:13px 8px;
  cursor:pointer;text-align:center;transition:border-color .16s,background .16s;font-size:12.5px;font-weight:600;
  display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--fith-ink);user-select:none;}
.fith-chip .fith-ic{width:25px;height:25px;color:var(--fith-primary-t);transition:color .16s;}
.fith-chip:hover{border-color:var(--fith-primary-t);}
.fith-chip.fith-on{border-color:var(--fith-primary);background:var(--fith-tint);}
.fith-chip.fith-on .fith-ic{color:var(--fith-primary);}
.fith-chip .fith-check{position:absolute;top:6px;right:6px;width:16px;height:16px;border-radius:50%;
  background:var(--fith-primary);color:#fff;display:none;align-items:center;justify-content:center;}
.fith-chip .fith-check .fith-ic{width:10px;height:10px;color:#fff;stroke-width:2.6;}
.fith-chip.fith-on .fith-check{display:flex;}

/* option rows (gender/form) */
.fith-opts{display:flex;flex-direction:column;gap:9px;}
.fith-opt{border:1.5px solid var(--fith-line);background:#fff;border-radius:11px;padding:13px 15px;cursor:pointer;
  display:flex;align-items:center;gap:13px;font-size:14.5px;font-weight:600;transition:border-color .16s,background .16s;
  text-align:left;color:var(--fith-ink);}
.fith-opt .fith-ic{width:22px;height:22px;color:var(--fith-primary-t);flex:0 0 auto;}
.fith-opt:hover{border-color:var(--fith-primary-t);}
.fith-opt.fith-on{border-color:var(--fith-primary);background:var(--fith-tint);}
.fith-opt.fith-on .fith-ic{color:var(--fith-primary);}

/* footer nav */
.fith-foot{padding:13px 18px;border-top:1px solid var(--fith-line);display:flex;align-items:center;gap:10px;background:#fff;}
.fith-dots{display:flex;gap:6px;margin-right:auto;}
.fith-dots i{width:6px;height:6px;border-radius:50%;background:var(--fith-line);transition:background .3s;}
.fith-dots i.fith-a{background:var(--fith-primary);}
.fith-btn{border:0;border-radius:10px;padding:11px 20px;font-size:14px;font-weight:700;cursor:pointer;
  transition:background .18s,transform .18s;background:var(--fith-primary);color:#fff;}
.fith-btn:hover{background:var(--fith-primary-d);transform:translateY(-1px);}
.fith-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;}
.fith-btn.fith-ghost{background:none;color:var(--fith-primary);padding:11px 12px;}
.fith-btn.fith-ghost:hover{background:var(--fith-panel);transform:none;}

/* disclaimer */
.fith-legal{font-size:11.5px;line-height:1.55;color:var(--fith-muted);background:var(--fith-panel);
  border:1px solid var(--fith-line);border-left:3px solid var(--fith-accent);border-radius:8px;padding:11px 13px;margin-top:14px;}
.fith-legal b{color:var(--fith-ink);}
.fith-legal a{color:var(--fith-primary);}

/* loading */
.fith-loading{text-align:center;padding:34px 10px;}
.fith-spinner{width:50px;height:50px;margin:0 auto 16px;border-radius:50%;
  border:4px solid var(--fith-panel);border-top-color:var(--fith-primary);animation:fith-spin 1s linear infinite;}
@keyframes fith-spin{to{transform:rotate(360deg)}}

/* results */
.fith-rhead{font-size:19px;font-weight:700;margin:0 0 3px;letter-spacing:-.2px;}
.fith-rsub{font-size:12.5px;color:var(--fith-muted);margin:0 0 14px;line-height:1.5;}
.fith-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;}
.fith-tag{font-size:11px;background:var(--fith-tint);color:var(--fith-primary-d);border:1px solid var(--fith-line);
  border-radius:7px;padding:3px 10px;font-weight:600;display:inline-flex;align-items:center;gap:5px;}
.fith-tag .fith-ic{width:13px;height:13px;color:var(--fith-primary);}
.fith-results{display:flex;flex-direction:column;gap:10px;}
.fith-card{display:flex;gap:13px;border:1px solid var(--fith-line);border-radius:12px;padding:11px;background:#fff;
  transition:border-color .18s,box-shadow .18s;animation:fith-pop .4s both;}
.fith-card:hover{border-color:var(--fith-primary-t);box-shadow:0 10px 22px rgba(12,45,22,.09);}
@keyframes fith-pop{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.fith-thumb{width:74px;height:74px;flex:0 0 auto;border-radius:9px;object-fit:cover;background:var(--fith-panel);}
.fith-thumb-ph{display:flex;align-items:center;justify-content:center;color:var(--fith-leaf);}
.fith-thumb-ph .fith-ic{width:34px;height:34px;}
.fith-cbody{flex:1;min-width:0;}
.fith-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;
  color:var(--fith-accent);background:#f4efe9;border-radius:5px;padding:2px 7px;margin-bottom:5px;}
.fith-cname{font-size:13.5px;font-weight:700;margin:0 0 3px;line-height:1.3;}
.fith-why{font-size:12px;color:var(--fith-muted);line-height:1.45;margin:0 0 7px;}
.fith-crow{display:flex;align-items:center;gap:10px;}
.fith-price{font-size:15px;font-weight:800;color:var(--fith-ink);font-variant-numeric:tabular-nums;}
.fith-link{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--fith-primary);text-decoration:none;
  border:1.5px solid var(--fith-primary);padding:6px 13px;border-radius:8px;transition:background .18s,color .18s;}
.fith-link:hover{background:var(--fith-primary);color:#fff;}

/* lead form */
.fith-lead{margin-top:16px;border:1px solid var(--fith-line);border-radius:11px;padding:15px;background:var(--fith-panel);}
.fith-lead h4{margin:0 0 3px;font-size:14.5px;}
.fith-lead p{margin:0 0 11px;font-size:12px;color:var(--fith-muted);line-height:1.45;}
.fith-field{width:100%;border:1.5px solid var(--fith-line);border-radius:9px;padding:11px 13px;font-size:14px;
  margin-bottom:9px;background:#fff;color:var(--fith-ink);}
.fith-field:focus{outline:none;border-color:var(--fith-primary-t);}
.fith-consent{display:flex;gap:8px;align-items:flex-start;font-size:11px;color:var(--fith-muted);line-height:1.45;margin-bottom:11px;}
.fith-consent input{margin-top:1px;accent-color:var(--fith-primary);}
.fith-consent a{color:var(--fith-primary);}
.fith-send{width:100%;}
.fith-ok{text-align:center;padding:16px;color:var(--fith-primary);font-weight:700;}
