/* ============================================================
   SMYSLIT UI-SYSTEM — дизайн-система личного кабинета
   Источник: дизайн-система new.smyslit.com (пакет smyslit_2)
   Структура: 1.Токены · 2.База · 3.Типографика · 4.Кнопки/бейджи ·
   5.Каркас кабинета · 6.Навигация · 7.Карточки · 8.Календарь ·
   9.Аналитика · 10.Согласования · 11.Формы · 12.Хелпер ·
   13.Адаптив · 14.Motion/доступность
   ============================================================ */

/* ---------- 1. ТОКЕНЫ ---------- */
:root{
  --violet:#652efc;        /* акцент: действия, активные состояния, ссылки */
  --violet-hover:#5820db;  /* hover основной кнопки */
  --violet-soft:#eee6ff;   /* подложка иконок/тегов */
  --violet-soft-2:#eae1ff; /* активный пункт меню */
  --violet-line:#c6afff;   /* бордер акцентной карточки */
  --ink:#12131b;           /* основной текст */
  --ink-dark:#171520;      /* тёмная секция */
  --card-dark:#202033;     /* тёмная карточка */
  --card-dark-line:#565076;
  --muted:#696978;         /* вторичный текст */
  --muted-2:#898195;       /* подписи/метки */
  --line:#e7e4ec;          /* бордеры карточек */
  --line-soft:#f0edf4;     /* разделители */
  --ivory:#faf9f6;         /* тёплый светлый фон */
  --bg:#fff;
  --ok:#99cb39;            /* статус-точка */
  --ok-bg:#edf7df;  --ok-text:#618b30;
  --lime:#b5e542;          /* лаймовый акцент (диаграммы, мелкие искры) */
  --warn-bg:#fff0e2; --warn-text:#a66b25;
  --err:#c0392b;           /* ошибки форм */
  --focus:#a88cff;         /* focus-visible кольцо */
  /* тени — hex8 с фиолетовым подтоном (фирменный признак) */
  --sh-btn:0 8px 20px #652efc20;
  --sh-card:0 14px 40px #31154415;
  --sh-panel:0 20px 70px #45267e0b;
  /* геометрия */
  --r-tag:6px; --r-item:8px; --r-post:9px; --r-box:13px; --r-btn:12px;
  --r-card:16px; --r-panel:20px; --r-app:22px;
  --cab-side:240px;        /* ширина сайдбара кабинета (моб: лента) */
}

/* ---------- 2. БАЗА ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.5}
button,a,input,select{font:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
img{max-width:100%}

/* ---------- 3. ТИПОГРАФИКА ---------- */
h1,h2,h3,h4{margin:0}
h3{font-size:20px;line-height:1.3;letter-spacing:-.5px;font-weight:700}
p{margin-top:0}
.eyebrow{font-size:11px;letter-spacing:2px;font-weight:650;color:var(--muted);text-transform:uppercase}
.micro{font-size:12px;color:var(--muted)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}

/* ---------- 4. КНОПКИ / БЕЙДЖИ ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--violet);
  color:#fff;border:1px solid var(--violet);border-radius:var(--r-btn);padding:14px 22px;
  font-weight:600;font-size:14px;box-shadow:var(--sh-btn);transition:transform .2s,background .2s}
.btn:hover{background:var(--violet-hover);transform:translateY(-2px)}
.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:none}
.btn.small{padding:10px 16px;font-size:13px}
.btn.ghost{background:none;border:1px solid var(--line);color:var(--ink);box-shadow:none}
.pill{border:1px solid #e8e0f5;border-radius:var(--r-item);background:#fff;padding:7px 12px;color:#625b78;font-size:11px}
.tag{display:inline-block;padding:3px 7px;background:var(--violet-soft);color:var(--violet);border-radius:var(--r-tag);font-size:10px;font-weight:600}
.tag.green{background:var(--ok-bg);color:var(--ok-text)}
.tag.peach{background:var(--warn-bg);color:var(--warn-text)}
.dot{display:inline-block;width:7px;height:7px;background:var(--ok);border-radius:50%;margin-right:8px}

/* ---------- 5. КАРКАС КАБИНЕТА ---------- */
.cab{display:grid;grid-template-columns:var(--cab-side) 1fr;min-height:100vh}
.cab-side{background:#faf9fd;border-right:1px solid #eeeaf4;padding:22px 14px;position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column}
.cab-main{padding:0 30px 40px;min-width:0}
.cab-top{display:flex;justify-content:space-between;align-items:center;gap:16px;height:68px;border-bottom:1px solid var(--line-soft);margin-bottom:26px}
.cab-title{font-size:17px;font-weight:700;letter-spacing:-.3px;display:flex;align-items:center;gap:10px}
.cab-user{display:flex;align-items:center;gap:12px}
.cab-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;object-position:top;background:#e8dfff;border:1px solid #e2dced}
.cab-name{font-size:12px;font-weight:600}
.cab-name small{display:block;color:var(--muted-2);font-weight:400}
.cab-burger{display:none}

/* ---------- 6. НАВИГАЦИЯ (сайдбар) ---------- */
.side-logo{display:block;margin:0 10px 25px}
.side-logo img{height:26px;width:auto;display:block}
.side{display:flex;gap:10px;align-items:center;width:100%;border:0;background:none;color:#6a667a;
  font-size:13px;padding:12px 10px;border-radius:var(--r-item);margin-bottom:4px;text-align:left}
.side:hover{background:#f1edf8}
.side[aria-selected="true"],.side.active{background:var(--violet-soft-2);color:var(--violet);font-weight:600}
.side i{font-style:normal;font-size:15px;width:20px;text-align:center}
.side .count{margin-left:auto;background:#fff;border:1px solid #e2dced;border-radius:20px;padding:1px 8px;font-size:11px;color:var(--muted)}
.side-gap{height:20px}
.side-foot{margin-top:auto;padding-top:16px}

/* ---------- 7. КАРТОЧКИ ---------- */
.dash-box{border:1px solid #ece8f2;border-radius:var(--r-box);padding:18px;font-size:13px;background:#fff}
.dash-box h4{margin:0 0 14px;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--muted-2)}
.status-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f3f0f6;font-size:12px}
.status-row:last-child{border-bottom:0}
.status-row b{font-weight:600;color:var(--ink)}
.view-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.view-title .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.demo-note{font-size:11px;color:var(--muted-2);margin:16px 0 0}

/* ---------- 8. КАЛЕНДАРЬ (Контент-план) ---------- */
.plan-grid{display:grid;grid-template-columns:1.9fr 1fr;gap:16px;align-items:start}
.calendar{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.day-label{font-size:11px;color:#847e92;margin-bottom:12px;letter-spacing:1px}
.post{min-height:85px;border-radius:var(--r-post);padding:12px;background:var(--violet-soft);
  border-left:3px solid #a471ff;font-size:11px;margin-bottom:10px}
.post b{display:block;margin-bottom:5px}
.post small{font-size:10px;color:#7b728f;display:block}
.post.green{background:#eff7e8;border-color:#a0ce64}
.post.peach{background:#fff1e9;border-color:#ffb285}

/* ---------- 9. АНАЛИТИКА ---------- */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.kpi{border:1px solid #ece8f2;border-radius:14px;padding:15px;background:#fff}
.kpi small{display:block;font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted-2)}
.kpi b{display:block;font-size:23px;letter-spacing:-.5px;margin-top:8px}
.kpi span{display:block;font-size:11.5px;color:var(--muted-2);margin-top:4px}
.funnel{display:grid;gap:10px;border-top:1px solid #f1edf6;padding-top:16px;margin-bottom:16px}
.funnel-row{display:grid;gap:6px}
.funnel-row .fl{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}
.funnel-row .fl b{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--ink)}
.funnel-bar{height:9px;border-radius:30px;background:#f1edf6;overflow:hidden}
.funnel-bar i{display:block;height:100%;border-radius:30px;background:var(--violet)}
.funnel-conv{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:var(--ok-text);padding-left:4px}
.bars{display:flex;align-items:end;height:130px;gap:14px;margin:14px 0 8px}
.bars i{background:linear-gradient(#b18bff,#652efc);border-radius:6px 6px 0 0;flex:1}
.bars i.plan{background:none;border:1.5px dashed var(--ok)}
.chart-note{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10.5px;color:var(--muted-2)}
.metric-rows{display:grid;gap:9px;align-content:center}
.metric-rows .mr{display:flex;justify-content:space-between;gap:12px;border:1px solid #ece8f2;background:#fff;border-radius:var(--r-item);padding:10px 15px;font-size:13px;color:var(--muted)}
.metric-rows .mr b{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--ok-text)}
.dash-2col{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;border-top:1px solid #f1edf6;padding-top:16px}

/* ---------- 10. СОГЛАСОВАНИЯ ---------- */
.appr-card{margin-bottom:16px}
.appr-card>p{font-size:13.5px;line-height:1.7;color:#575768;margin:10px 0 0}
.appr-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.appr-result{margin:14px 0 0;font-size:13px;color:var(--violet);background:#f6f1ff;border-radius:var(--r-item);padding:12px 14px}
.appr-result[hidden]{display:none}

/* ---------- 11. ФОРМЫ ---------- */
.field{display:grid;gap:6px;font-size:13px;font-weight:600;color:#575768}
.field input,.field select{width:100%;border:1px solid #daceed;border-radius:var(--r-item);padding:12px;font-size:14px;color:var(--ink);background:#fff;transition:border-color .2s}
.field input:focus,.field select:focus{outline:3px solid var(--focus);outline-offset:1px;border-color:var(--violet)}
.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;color:#575768}
.check input{width:16px;height:16px;margin-top:2px;accent-color:var(--violet);flex:0 0 auto}

/* ---------- 12. ХЕЛПЕР (маскот) ---------- */
.side-foot{position:relative;min-height:190px}
.helper{position:absolute;width:150px;height:160px;object-fit:contain;left:-24px;bottom:-26px}
.helper-bubble{position:absolute;background:#eae0ff;border-radius:10px 10px 10px 0;padding:9px;color:var(--violet);font-size:10px;bottom:120px;right:8px}

/* ---------- 12а. БРЕНД-КИТ / ПЕРСОНАЖИ / ЛИДЫ ---------- */
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none}
.chip-row li{background:var(--violet-soft);color:var(--violet);border-radius:var(--r-item);padding:8px 14px;font-size:12px;font-weight:600}
.chip-row li.ban{background:var(--warn-bg);color:var(--warn-text);text-decoration:line-through}
.chip-row li.ok{background:var(--ok-bg);color:var(--ok-text)}
.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:12px 0 0;padding:0;list-style:none}
.swatches li{border:1px solid var(--line);border-radius:var(--r-item);overflow:hidden;font-size:10px;color:var(--muted-2);text-align:center}
.swatches i{display:block;height:38px;font-style:normal}
.swatches b{display:block;padding:6px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:500}
.brand-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;align-items:start}
.char-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.char-grid .dash-box{display:flex;flex-direction:column;gap:12px}
.char-grid .dash-box p{font-size:13px;line-height:1.7;color:#575768;margin:0}
.char-head{display:flex;align-items:center;gap:12px}
.char-ava{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:top;background:var(--violet-soft);border:1px solid #e2dced;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--violet);font-size:16px}
.char-head .tag{margin-left:auto}
.lead-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #f3f0f6;font-size:13px}
.lead-row:last-child{border-bottom:0}
.lead-row b{display:block;font-weight:600}
.lead-row small{color:var(--muted-2)}
.lead-row .right{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.lead-row .right small{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
@media(max-width:1050px){.brand-grid{grid-template-columns:1fr}.char-grid{grid-template-columns:1fr}.swatches{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.swatches{grid-template-columns:repeat(2,1fr)}}

/* ---------- 13. АДАПТИВ ---------- */
@media(max-width:1050px){
  :root{--cab-side:190px}
  .cab-main{padding:0 20px 32px}
  .kpi-grid{grid-template-columns:1fr 1fr}
  .dash-2col{grid-template-columns:1fr}
}
@media(max-width:760px){
  .cab{grid-template-columns:1fr}
  .cab-side{position:static;height:auto;border-right:0;border-bottom:1px solid #eeeaf4;padding:12px}
  .side-logo{display:none}
  .side{width:auto;font-size:12px;padding:9px 8px;margin:0}
  .side .count,.side-gap,.side-foot{display:none}  .cab-burger{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r-item);font-size:18px;padding:6px 12px}
  .cab-main{padding:0 14px 28px}
  .kpi-grid{grid-template-columns:1fr 1fr;gap:8px}
  .plan-grid{grid-template-columns:1fr}
  .calendar{gap:8px}
  .post{font-size:10px;padding:8px}
}

/* ---------- 14. MOTION / ДОСТУПНОСТЬ ---------- */
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
