/* ============================================================
   F3 · Каркас ЛК тенанта (#6) — оболочка кабинета: топбар + боковое
   меню (drawer на мобайле) + контент-зона. Классы scoped под .cab.
   Артборд — мобильный 440 (vision B0: на мобайле меню = burger/drawer).
   Дизайн — ДС childhood360. ЛК специалиста (#7) переиспользует оболочку.
   ============================================================ */

.cab { height: 100dvh; min-height: 100dvh; overflow: hidden; display: flex; flex-direction: column; background: var(--bg); }

/* ── Топбар ── */
.cab .cab-top { flex: none; display: flex; align-items: center; gap: 8px; height: 58px; padding: 0 12px; background: color-mix(in srgb, var(--surface) 92%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); }
.cab .cab-burger { flex: none; }
.cab .cab-tenant { display: flex; align-items: center; gap: 9px; min-width: 0; }
.cab .cab-tenant__ava { width: 34px; height: 34px; flex: none; border-radius: 10px; display: grid; place-items: center; color: var(--fg-on-brand); font-size: 15px; font-weight: var(--fw-extra); background: linear-gradient(150deg, var(--primary), color-mix(in srgb, var(--primary) 55%, var(--brand-navy) 60%)); }
.cab .cab-tenant__id { min-width: 0; line-height: 1.15; }
.cab .cab-tenant__name { display: block; font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 40vw; }
.cab .cab-tenant__plan { display: inline-flex; align-items: center; gap: 4px; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); }
.cab .cab-tenant__plan svg { width: 11px; height: 11px; }
.cab .cab-top__sp { flex: 1; }
.cab .cab-top__act { flex: none; display: flex; align-items: center; gap: 6px; }
/* баланс вверху */
.cab .cab-bal { display: inline-flex; align-items: center; gap: 5px; padding: 6px 11px; border-radius: var(--r-pill); background: var(--surface-2); border: 1px solid var(--border); text-decoration: none; color: var(--fg); font-size: var(--fs-sm); white-space: nowrap; }
.cab .cab-bal svg { width: 16px; height: 16px; color: var(--primary); }
.cab .cab-bal b { font-weight: var(--fw-extra); }
.cab .cab-bal span { color: var(--fg-3); }

/* ── Контент-зона ── */
.cab .cab-scroll { flex: 1; min-height: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.cab .cab-content { padding: 16px var(--gutter) 28px; display: flex; flex-direction: column; gap: 20px; }

/* ── Нижнее меню (мобильная панель) — flex-сосед под скроллом ── */
.cab .cab-bottom { flex: none; z-index: 30; display: flex; align-items: stretch; height: calc(60px + env(safe-area-inset-bottom,0)); padding-bottom: env(safe-area-inset-bottom,0);
  background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 1px solid var(--border); }
.cab .cab-bottom__i { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 6px 2px; text-decoration: none; background: none; border: none; cursor: pointer; color: var(--fg-3); font: inherit; }
.cab .cab-bottom__i.is-active { color: var(--primary); }
.cab .cab-bottom__ic { position: relative; display: grid; place-items: center; }
.cab .cab-bottom__ic svg { width: 22px; height: 22px; }
.cab .cab-bottom__badge { position: absolute; top: -5px; right: -8px; min-width: 15px; height: 15px; padding: 0 4px; border-radius: 8px; background: var(--danger); color: #fff; font-size: 10px; font-weight: var(--fw-bold); display: grid; place-items: center; }
.cab .cab-bottom__l { font-size: 10.5px; font-weight: var(--fw-semibold); }

/* тема в боковом меню */
.cab .cab-theme { width: 100%; display: flex; align-items: center; gap: 10px; padding: 11px 12px; margin-bottom: 8px; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--border); cursor: pointer; font: inherit; color: var(--fg); }
.cab .cab-theme svg { width: 18px; height: 18px; flex: none; color: var(--primary); }
.cab .cab-theme > span:first-of-type { font-size: var(--fs-sm); font-weight: var(--fw-semibold); }
.cab .cab-theme__val { margin-left: auto; font-size: var(--fs-xs); color: var(--fg-3); }

/* виджет поддержки не перекрывает нижнее меню */
.cab .sw-fab { bottom: calc(74px + env(safe-area-inset-bottom,0)); }
.cab .sw-panel { bottom: calc(138px + env(safe-area-inset-bottom,0)); }

/* ── Боковое меню (drawer) ── */
.cab .cab-scrim { position: fixed; inset: 0; z-index: 60; background: var(--overlay); opacity: 0; pointer-events: none; transition: opacity var(--dur); }
.cab .cab-scrim.is-open { opacity: 1; pointer-events: auto; }
.cab .cab-drawer { position: fixed; top: 0; bottom: 0; left: 0; z-index: 61; width: 84%; max-width: 312px; background: var(--surface); border-right: 1px solid var(--border); display: flex; flex-direction: column; transform: translateX(-102%); transition: transform var(--dur) var(--ease-out); box-shadow: var(--shadow-lg); }
.cab .cab-drawer.is-open { transform: none; }
.cab .cab-drawer__head { flex: none; display: flex; align-items: center; gap: 10px; padding: 14px var(--gutter); border-bottom: 1px solid var(--border); }
.cab .cab-drawer__id { flex: 1; min-width: 0; line-height: 1.2; }
.cab .cab-drawer__name { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-drawer__sub { display: flex; align-items: center; gap: 5px; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-drawer__sub svg { width: 12px; height: 12px; color: var(--primary); }
.cab .cab-nav { flex: 1; min-height: 0; overflow-y: auto; padding: 10px var(--gutter) 14px; }

.cab .cab-home { display: flex; align-items: center; gap: 11px; width: 100%; padding: 11px 12px; border-radius: var(--r-md); border: none; background: transparent; color: var(--fg); font-family: inherit; font-size: var(--fs-body); font-weight: var(--fw-bold); cursor: pointer; text-align: left; }
.cab .cab-home svg { width: 19px; height: 19px; flex: none; }
.cab .cab-home.is-active { background: var(--primary-soft); color: var(--primary-on-soft, var(--primary)); }

.cab .cab-grp { margin-top: 12px; }
.cab .cab-grp__t { padding: 0 12px; margin-bottom: 4px; font-size: var(--fs-label); letter-spacing: var(--ls-label); text-transform: uppercase; font-weight: var(--fw-bold); color: var(--fg-3); }
.cab .cab-link { display: flex; align-items: center; gap: 11px; padding: 10px 12px; border-radius: var(--r-md); color: var(--fg-2); font-size: var(--fs-sm); font-weight: var(--fw-semibold); }
.cab .cab-link:hover { background: var(--surface-2); color: var(--fg); }
.cab .cab-link.is-active { background: var(--primary-soft); color: var(--primary-on-soft, var(--primary)); font-weight: var(--fw-bold); }
.cab .cab-link svg { width: 18px; height: 18px; flex: none; }
.cab .cab-link__t { flex: 1; min-width: 0; }
.cab .cab-link__badge { flex: none; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; display: grid; place-items: center; background: var(--primary); color: var(--fg-on-brand); font-size: 11px; font-weight: var(--fw-extra); }
.cab .cab-drawer__foot { flex: none; padding: 10px var(--gutter) calc(12px + env(safe-area-inset-bottom,0)); border-top: 1px solid var(--border); }

/* ── Мета-вкладки (на дашборде) ── */
.cab .cab-meta { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)); padding: 0 var(--gutter) 2px; }
.cab .cab-meta::-webkit-scrollbar { display: none; }
.cab .cab-mtab { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: var(--r-pill); border: 1px solid var(--border-2); background: var(--surface); font-family: inherit; font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg-2); white-space: nowrap; cursor: pointer; }
.cab .cab-mtab svg { width: 15px; height: 15px; }
.cab .cab-mtab.is-active { background: var(--fg); border-color: var(--fg); color: var(--bg); font-weight: var(--fw-bold); }

/* ── Дашборд ── */
.cab .cab-dash { display: flex; flex-direction: column; gap: 16px; }
.cab .cab-dash__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cab .cab-dash__title { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-extra); letter-spacing: -0.01em; color: var(--fg); }
.cab .cab-period { display: inline-flex; gap: 2px; padding: 3px; border-radius: var(--r-pill); background: var(--surface-2); }
.cab .cab-period button { padding: 5px 11px; border: none; background: transparent; border-radius: var(--r-pill); font-family: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); cursor: pointer; white-space: nowrap; }
.cab .cab-period button.is-active { background: var(--surface); color: var(--fg); box-shadow: var(--shadow-sm); }

.cab .cab-metrics { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.cab .cab-metric { padding: 14px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
.cab .cab-metric__top { display: flex; align-items: center; gap: 7px; margin-bottom: 8px; }
.cab .cab-metric__ic { width: 28px; height: 28px; flex: none; border-radius: 8px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary); }
.cab .cab-metric__ic svg { width: 15px; height: 15px; }
.cab .cab-metric__l { font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); }
.cab .cab-metric__trend { margin-left: auto; display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 6px; }
.cab .cab-metric__trend svg { width: 14px; height: 14px; }
.cab .cab-metric__trend.up { background: color-mix(in srgb, var(--success) 16%, transparent); color: var(--success); }
.cab .cab-metric__trend.down { background: color-mix(in srgb, var(--danger) 16%, transparent); color: var(--danger); }
.cab .cab-metric__trend.flat { background: var(--surface-2); color: var(--fg-3); }
.cab .cab-metric__v { font-size: 28px; font-weight: var(--fw-extra); letter-spacing: -0.02em; color: var(--fg); line-height: 1; }
.cab .cab-metric__sub { margin-top: 5px; font-size: var(--fs-xs); color: var(--fg-3); }

.cab .cab-fill { padding: 15px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
.cab .cab-fill__row { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 9px; }
.cab .cab-fill__l { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .cab-fill__v { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--primary); }
.cab .cab-fill__bar { height: 8px; border-radius: 99px; background: var(--surface-2); overflow: hidden; }
.cab .cab-fill__bar > span { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--primary), var(--teal)); }

.cab .cab-roi { padding: 16px; border-radius: var(--r-md); color: var(--fg-on-brand); box-shadow: var(--shadow-md);
  background: radial-gradient(120% 100% at 84% -14%, color-mix(in srgb, var(--primary) 60%, #fff 10%), transparent 56%), linear-gradient(150deg, var(--brand-plum), var(--brand-navy)); }
.cab .cab-roi__t { display: inline-flex; align-items: center; gap: 7px; font-size: var(--fs-xs); font-weight: var(--fw-extra); text-transform: uppercase; letter-spacing: .04em; color: rgba(255,255,255,0.84); }
.cab .cab-roi__t svg { width: 15px; height: 15px; }
.cab .cab-roi__row { display: flex; gap: 8px; margin-top: 12px; }
.cab .cab-roi__cell { flex: 1; min-width: 0; }
.cab .cab-roi__v { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--fg-on-brand); white-space: nowrap; }
.cab .cab-roi__l { margin-top: 2px; font-size: var(--fs-xs); color: rgba(255,255,255,0.78); }

.cab .cab-cta { display: inline-flex; align-items: center; justify-content: center; gap: 7px; width: 100%; padding: 12px; border-radius: var(--r-md); border: 1px solid var(--border-2); background: var(--surface); color: var(--fg); font-family: inherit; font-size: var(--fs-sm); font-weight: var(--fw-bold); cursor: pointer; }
.cab .cab-cta svg { width: 16px; height: 16px; color: var(--star); }

/* мета-заглушка (Конкуренты/Точки роста/Практика) */
.cab .cab-mstub { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 32px 18px; border-radius: var(--r-lg); background: var(--surface); border: 1px dashed var(--border-2); }
.cab .cab-mstub__ic { width: 52px; height: 52px; border-radius: 15px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary); }
.cab .cab-mstub__ic svg { width: 24px; height: 24px; }
.cab .cab-mstub h3 { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-mstub p { margin: 0; max-width: 44ch; font-size: var(--fs-sm); line-height: 1.55; color: var(--fg-2); }

/* ── Чаты (инбокс квалифицированных) + переписка ── */
.cab .cab-sech { margin-bottom: 14px; }
.cab .cab-sech h1 { margin: 0; font-family: var(--font-display); font-weight: var(--fw-extra); font-size: var(--fs-h3); color: var(--fg); }
.cab .cab-sech p { margin: 4px 0 0; font-size: var(--fs-sm); color: var(--fg-2); }
/* Telegram-стиль: сплошной компактный список, тонкие разделители, 2 строки */
.cab .cab-chatlist { border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--surface); box-shadow: var(--shadow-sm); overflow: hidden; }
.cab .cab-chat-row { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 10px 13px; background: none; border: none; cursor: pointer; font: inherit; }
.cab .cab-chat-row + .cab-chat-row { border-top: 1px solid var(--border); }
.cab .cab-chat-row:hover { background: var(--surface-2); }
.cab .cab-chat-row.is-active { background: var(--primary-soft); }
.cab .cab-chat-row__av { width: 48px; height: 48px; flex: none; border-radius: 50%; display: grid; place-items: center; color: var(--fg-on-brand); font-size: var(--fs-sm); font-weight: var(--fw-extra); background: linear-gradient(150deg, var(--primary), color-mix(in srgb, var(--primary) 55%, var(--brand-navy) 60%)); }
.cab .cab-chat-row__b { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.cab .cab-chat-row__top { display: flex; align-items: center; gap: 6px; }
.cab .cab-chat-row__nm { font-size: var(--fs-body); font-weight: var(--fw-bold); color: var(--fg); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-flex; align-items: center; gap: 5px; min-width: 0; }
.cab .cab-chat-row__heat { width: 14px; height: 14px; flex: none; }
.cab .cab-chat-row__heat.hot { color: var(--danger); }
.cab .cab-chat-row__heat.warm { color: var(--warning); }
.cab .cab-chat-row__time { margin-left: auto; flex: none; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-chat-row__bottom { display: flex; align-items: center; gap: 8px; }
.cab .cab-chat-row__last { flex: 1; min-width: 0; font-size: var(--fs-sm); color: var(--fg-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cab .cab-heat { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: var(--r-pill); font-size: 10.5px; font-weight: var(--fw-extra); text-transform: uppercase; letter-spacing: .03em; }
.cab .cab-heat svg { width: 11px; height: 11px; }
.cab .cab-heat.hot { background: color-mix(in srgb, var(--danger) 16%, transparent); color: var(--danger); }
.cab .cab-heat.warm { background: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }
.cab .cab-chat-row__unread { flex: none; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; display: grid; place-items: center; background: var(--primary); color: var(--fg-on-brand); font-size: 11px; font-weight: var(--fw-extra); }

/* переписка */
.cab .cab-thread { border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--surface); padding: 14px; box-shadow: var(--shadow-sm); }
.cab .cab-thread__hd { display: flex; align-items: center; gap: 10px; padding-bottom: 12px; border-bottom: 1px solid var(--border); margin-bottom: 12px; }
.cab .cab-thread__close { flex: none; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--surface-2); border: 1px solid var(--border); color: var(--fg-2); cursor: pointer; }
.cab .cab-thread__close svg { width: 17px; height: 17px; }
.cab .cab-thread__nm { font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-thread__topic { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-thread__log { display: flex; flex-direction: column; gap: 8px; }
.cab .cab-bubble { max-width: 86%; padding: 9px 12px; border-radius: 14px; font-size: var(--fs-sm); line-height: 1.45; }
.cab .cab-bubble.them { align-self: flex-start; background: var(--surface-2); color: var(--fg); border-bottom-left-radius: 4px; }
.cab .cab-bubble.me { align-self: flex-end; background: var(--primary); color: var(--fg-on-brand); border-bottom-right-radius: 4px; }
.cab .cab-bubble.agent { align-self: stretch; max-width: 100%; background: var(--primary-soft); color: var(--primary-on-soft); font-size: var(--fs-xs); display: flex; gap: 7px; align-items: flex-start; }
.cab .cab-bubble.agent svg { flex: none; width: 14px; height: 14px; margin-top: 1px; }
.cab .cab-thread__acts { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.cab .cab-thread__bar { display: flex; gap: 8px; align-items: center; margin-top: 12px; }
.cab .cab-thread__bar input { flex: 1; min-width: 0; height: 40px; padding: 0 12px; border-radius: var(--r-pill); border: 1px solid var(--border-2); background: var(--surface); font: inherit; font-size: var(--fs-sm); outline: none; }
.cab .cab-thread__send { width: 40px; height: 40px; flex: none; border: none; border-radius: 50%; background: var(--primary); color: var(--fg-on-brand); display: grid; place-items: center; cursor: pointer; }
.cab .cab-thread__send svg { width: 18px; height: 18px; }
.cab .cab-back { display: inline-flex; align-items: center; gap: 5px; font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--primary); background: none; border: none; cursor: pointer; padding: 0; margin-bottom: 12px; }
.cab .cab-back svg { width: 16px; height: 16px; }

/* лиды/клиенты — статусы */
.cab .cab-lead { display: flex; align-items: center; gap: 11px; padding: 12px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); margin-bottom: 8px; }
.cab .cab-lead__av { width: 38px; height: 38px; flex: none; border-radius: 11px; display: grid; place-items: center; color: var(--fg-on-brand); font-size: var(--fs-xs); font-weight: var(--fw-extra); background: linear-gradient(150deg, var(--primary), color-mix(in srgb, var(--primary) 55%, var(--brand-navy) 60%)); }
.cab .cab-lead__b { flex: 1; min-width: 0; }
.cab .cab-lead__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); display: flex; align-items: center; gap: 7px; }
.cab .cab-lead__sub { font-size: var(--fs-xs); color: var(--fg-3); margin-top: 2px; }
.cab .cab-status { flex: none; font-size: 10.5px; font-weight: var(--fw-extra); padding: 4px 9px; border-radius: var(--r-pill); white-space: nowrap; }
.cab .cab-status.new { background: var(--primary-soft); color: var(--primary-on-soft); }
.cab .cab-status.progress { background: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }
.cab .cab-status.won { background: var(--success-soft); color: var(--success); }
.cab .cab-status.lost { background: var(--surface-2); color: var(--fg-3); }
/* лид как кнопка (открывает карточку) */
.cab .cab-lead--btn { width: 100%; text-align: left; cursor: pointer; font: inherit; }
.cab .cab-lead--btn.is-open { border-color: var(--primary); box-shadow: 0 0 0 2px var(--primary-soft); }
.cab .cab-lead__chev { width: 17px; height: 17px; flex: none; color: var(--fg-3); }

/* ── Bottom-sheet (карточка лида / клиента) ── */
.cab .cab-sheet { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; max-height: 88dvh; overflow-y: auto;
  background: var(--surface); border-top-left-radius: 22px; border-top-right-radius: 22px; box-shadow: var(--shadow-lg);
  padding: 8px 16px calc(20px + env(safe-area-inset-bottom,0)); transform: translateY(100%); transition: transform var(--dur) var(--ease-out); }
.cab .cab-sheet.is-open { transform: translateY(0); }
.cab .cab-sheet__grip { width: 38px; height: 4px; border-radius: 2px; background: var(--border); margin: 4px auto 12px; }
.cab .cab-sheet__hd { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; }
.cab .cab-sheet__id { flex: 1; min-width: 0; }
.cab .cab-sheet__nm { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--fg); display: flex; align-items: center; gap: 7px; }
.cab .cab-sheet__sub { font-size: var(--fs-sm); color: var(--fg-3); margin-top: 2px; }
.cab .cab-sheet__rows { border: 1px solid var(--border); border-radius: var(--r-md); overflow: hidden; margin-bottom: 12px; }
.cab .cab-sheet__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 13px; font-size: var(--fs-sm); color: var(--fg); }
.cab .cab-sheet__row + .cab-sheet__row { border-top: 1px solid var(--border); }
.cab .cab-sheet__k { color: var(--fg-3); }
.cab .cab-sheet__note { display: flex; gap: 10px; padding: 12px 13px; border-radius: var(--r-md); background: var(--surface-2); margin-bottom: 16px; }
.cab .cab-sheet__note svg { width: 17px; height: 17px; flex: none; color: var(--primary); margin-top: 1px; }
.cab .cab-sheet__note b { font-size: var(--fs-xs); text-transform: uppercase; letter-spacing: var(--ls-label); color: var(--fg-3); }
.cab .cab-sheet__note p { margin: 4px 0 0; font-size: var(--fs-sm); color: var(--fg); line-height: 1.5; }
.cab .cab-sheet__lbl { margin: 0 0 8px; font-size: var(--fs-xs); font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: var(--ls-label); color: var(--fg-3); }
.cab .cab-sheet__status { display: flex; gap: 7px; margin-bottom: 10px; }
.cab .cab-stbtn { flex: 1; display: inline-flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 4px; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--border); cursor: pointer; font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-semibold); color: var(--fg-2); }
.cab .cab-stbtn svg { width: 18px; height: 18px; }
.cab .cab-stbtn.is-on { background: var(--primary-soft); border-color: var(--primary); color: var(--primary-on-soft); }
.cab .cab-sheet__act { display: flex; flex-wrap: wrap; gap: 8px; }
.cab .cab-sheet__act .btn { flex: 1 1 110px; min-width: 0; }
.cab .cab-segrow { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin-bottom: 12px; }
.cab .cab-segrow::-webkit-scrollbar { display: none; }

/* ── Финансы: тарифы / баланс / докупка / история ── */
.cab .fin-block { margin-bottom: 22px; }
.cab .fin-bt { margin: 0 0 4px; font-size: var(--fs-xs); font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: var(--ls-label); color: var(--fg-3); }
.cab .fin-bsub { margin: 0 0 12px; font-size: var(--fs-sm); color: var(--fg-2); }

.cab .fin-tariffs { display: flex; flex-direction: column; gap: 10px; }
.cab .fin-tar { width: 100%; text-align: left; padding: 15px; border-radius: var(--r-lg); background: var(--surface); border: 1.5px solid var(--border); box-shadow: var(--shadow-sm); cursor: pointer; font: inherit; }
.cab .fin-tar.is-sel { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary), var(--shadow-md); }
.cab .fin-tar__top { display: flex; align-items: baseline; gap: 8px; }
.cab .fin-tar__nm { font-family: var(--font-display); font-size: var(--fs-h3); font-weight: var(--fw-extra); color: var(--fg); }
.cab .fin-tar__badge { font-size: 10px; font-weight: var(--fw-extra); text-transform: uppercase; letter-spacing: .04em; color: var(--primary-on-soft); background: var(--primary-soft); padding: 2px 8px; border-radius: var(--r-pill); }
.cab .fin-tar__cur { margin-left: auto; font-size: 10.5px; font-weight: var(--fw-extra); text-transform: uppercase; color: var(--success); background: var(--success-soft); padding: 3px 9px; border-radius: var(--r-pill); }
.cab .fin-tar__price { margin-top: 6px; font-size: var(--fs-h2); font-family: var(--font-display); font-weight: var(--fw-extra); color: var(--fg); letter-spacing: -.02em; }
.cab .fin-tar__price small { font-size: var(--fs-sm); font-weight: var(--fw-medium); color: var(--fg-3); }
.cab .fin-tar__tag { margin: 4px 0 0; font-size: var(--fs-sm); color: var(--fg-2); line-height: 1.4; }
.cab .fin-feats { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.cab .fin-feats li { display: flex; align-items: flex-start; gap: 8px; font-size: var(--fs-sm); line-height: 1.35; }
.cab .fin-feats li.on { color: var(--fg); }
.cab .fin-feats li.off { color: var(--fg-3); }
.cab .fin-feats li svg { flex: none; width: 16px; height: 16px; margin-top: 1px; }
.cab .fin-feats li.on svg { color: var(--success); }
.cab .fin-feats li.off svg { color: var(--fg-3); }
.cab .fin-tar__cta { margin-top: 14px; }
.cab .fin-note { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .fin-note svg { width: 13px; height: 13px; color: var(--primary); }

.cab .fin-balance { border-radius: var(--r-lg); padding: 18px; color: var(--fg-on-brand); box-shadow: var(--shadow-md);
  background: radial-gradient(120% 100% at 84% -14%, color-mix(in srgb, var(--primary) 60%, #fff 10%), transparent 56%), linear-gradient(150deg, var(--brand-plum), var(--brand-navy)); }
.cab .fin-balance__l { font-size: var(--fs-xs); font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: .04em; color: rgba(255,255,255,0.8); }
.cab .fin-balance__v { font-family: var(--font-display); font-size: 32px; font-weight: var(--fw-extra); letter-spacing: -.02em; margin: 4px 0 12px; }
.cab .fin-balance__sub { font-size: var(--fs-xs); color: rgba(255,255,255,0.78); margin-bottom: 12px; }
.cab .fin-balance .btn--white { background: #fff; color: var(--brand-plum); border: none; }

.cab .fin-buy { border-radius: var(--r-lg); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 16px; }
.cab .fin-row { display: flex; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--border); }
.cab .fin-row__l { flex: 1; min-width: 0; }
.cab .fin-row__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .fin-row__sub { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .fin-step { display: inline-flex; align-items: center; gap: 12px; flex: none; }
.cab .fin-step button { width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--border-2); background: var(--surface); font: inherit; font-size: 18px; color: var(--fg); cursor: pointer; }
.cab .fin-step b { min-width: 18px; text-align: center; font-weight: var(--fw-extra); }
.cab .fin-total { display: flex; align-items: baseline; justify-content: space-between; padding: 14px 0 4px; }
.cab .fin-total__l { font-size: var(--fs-sm); color: var(--fg-2); }
.cab .fin-total__v { font-family: var(--font-display); font-size: var(--fs-h2); font-weight: var(--fw-extra); color: var(--primary); letter-spacing: -.02em; }

.cab .fin-txn { display: flex; align-items: center; gap: 11px; padding: 12px 0; border-bottom: 1px solid var(--border); }
.cab .fin-txn:last-child { border-bottom: none; }
.cab .fin-txn__ic { width: 34px; height: 34px; flex: none; border-radius: 10px; display: grid; place-items: center; }
.cab .fin-txn__ic.in { background: var(--success-soft); color: var(--success); }
.cab .fin-txn__ic.out { background: var(--surface-2); color: var(--fg-2); }
.cab .fin-txn__ic svg { width: 17px; height: 17px; }
.cab .fin-txn__b { flex: 1; min-width: 0; }
.cab .fin-txn__nm { font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg); }
.cab .fin-txn__dt { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .fin-txn__am { font-size: var(--fs-sm); font-weight: var(--fw-extra); }
.cab .fin-txn__am.in { color: var(--success); }
.cab .fin-txn__am.out { color: var(--fg); }

/* ── Разделы кабинета: профиль/посты/настройки — общие элементы ── */
.cab .cab-card { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 16px; margin-bottom: 12px; }
.cab .cab-card__t { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--fg); margin: 0 0 4px; }
.cab .cab-card__sub { font-size: var(--fs-xs); color: var(--fg-3); margin: 0 0 12px; }
.cab .cab-field { margin-bottom: 12px; }
.cab .cab-field:last-child { margin-bottom: 0; }
.cab .cab-field label { display: block; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); margin-bottom: 5px; }
.cab .cab-field input, .cab .cab-field textarea, .cab .cab-field select { width: 100%; padding: 10px 12px; border-radius: var(--r-md); border: 1px solid var(--border-2); background: var(--surface); color: var(--fg); font: inherit; font-size: var(--fs-body); outline: none; }
.cab .cab-field input:focus, .cab .cab-field textarea:focus { border-color: var(--primary); }
.cab .cab-field textarea { min-height: 84px; resize: vertical; line-height: 1.5; }
.cab .cab-meter { display: flex; align-items: center; gap: 10px; }
.cab .cab-meter__bar { flex: 1; height: 7px; border-radius: 99px; background: var(--surface-2); overflow: hidden; }
.cab .cab-meter__bar > span { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--primary), var(--teal)); }
.cab .cab-meter__v { font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--primary); }

/* список «строк раздела» (управление субстраницами) */
.cab .cab-erow { display: flex; align-items: center; gap: 11px; padding: 12px 0; border-bottom: 1px solid var(--border); }
.cab .cab-erow:last-child { border-bottom: none; }
.cab .cab-erow__ic { width: 34px; height: 34px; flex: none; border-radius: 10px; display: grid; place-items: center; background: var(--surface-2); color: var(--fg-2); }
.cab .cab-erow__ic svg { width: 17px; height: 17px; }
.cab .cab-erow__b { flex: 1; min-width: 0; }
.cab .cab-erow__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .cab-erow__sub { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-erow > svg:last-child { width: 18px; height: 18px; flex: none; color: var(--fg-3); }

/* менеджер веб-сторис (отдельный, B9) */
/* ── Хайлайты (постоянные подборки сторис) ── */
.cab .cab-hlrail { display: flex; gap: 14px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; margin-bottom: 14px; }
.cab .cab-hlrail::-webkit-scrollbar { display: none; }
.cab .cab-hl { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 5px; width: 72px; background: none; border: none; cursor: pointer; font: inherit; position: relative; }
.cab .cab-hl__ring { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; padding: 3px; background: linear-gradient(150deg, var(--c, var(--primary)), color-mix(in srgb, var(--c, var(--primary)) 50%, var(--brand-coral, var(--rose)) 70%)); opacity: .55; transition: opacity var(--dur); }
.cab .cab-hl.is-sel .cab-hl__ring { opacity: 1; }
.cab .cab-hl__ic { width: 100%; height: 100%; border-radius: 50%; display: grid; place-items: center; background: var(--surface); color: var(--c, var(--primary)); border: 2px solid var(--surface); }
.cab .cab-hl__ic svg { width: 24px; height: 24px; }
.cab .cab-hl__nm { font-size: var(--fs-xs); font-weight: var(--fw-semibold); color: var(--fg-2); max-width: 72px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cab .cab-hl.is-sel .cab-hl__nm { color: var(--fg); }
.cab .cab-hl__n { position: absolute; top: -2px; right: 8px; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px; background: var(--primary); color: var(--fg-on-brand); font-size: 10px; font-weight: var(--fw-bold); display: grid; place-items: center; border: 2px solid var(--bg); }
.cab .cab-hl--add .cab-hl__ring { background: var(--border-2); opacity: 1; }
.cab .cab-hl--add .cab-hl__ic { color: var(--primary); border-style: dashed; }
.cab .cab-hlinner { border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--surface-2); padding: 12px; margin-bottom: 16px; }
.cab .cab-hlinner__hd { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 10px; }
.cab .cab-hlinner__hd b { font-size: var(--fs-sm); color: var(--fg); }
.cab .cab-hlinner__hd span { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-hlinner .cab-smgr { margin-bottom: 0; }

.cab .cab-smgr { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-bottom: 16px; }
.cab .cab-smgr-add { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; aspect-ratio: 3/4; border-radius: var(--r-lg); border: 1.5px dashed var(--border-2); background: var(--surface-2); color: var(--primary); cursor: pointer; font: inherit; font-size: var(--fs-sm); font-weight: var(--fw-bold); }
.cab .cab-smgr-add span { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--primary-soft); }
.cab .cab-smgr-add span svg { width: 22px; height: 22px; }
.cab .cab-scard { position: relative; aspect-ratio: 3/4; border-radius: var(--r-lg); overflow: hidden; box-shadow: var(--shadow-sm); color: var(--fg-on-brand); display: flex; flex-direction: column; justify-content: space-between; padding: 10px;
  background: linear-gradient(155deg, var(--c, var(--primary)), color-mix(in srgb, var(--c, var(--primary)) 50%, var(--brand-navy) 62%)); }
.cab .cab-scard__top { display: flex; align-items: center; gap: 6px; }
.cab .cab-scard__type { font-size: 10px; font-weight: var(--fw-extra); text-transform: uppercase; letter-spacing: .03em; padding: 3px 8px; border-radius: var(--r-pill); background: rgba(255,255,255,0.22); }
.cab .cab-scard__st { margin-left: auto; width: 8px; height: 8px; border-radius: 50%; }
.cab .cab-scard__st.published { background: var(--success); }
.cab .cab-scard__st.moderation { background: var(--warning); }
.cab .cab-scard__ic { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); opacity: .85; }
.cab .cab-scard__ic svg { width: 30px; height: 30px; }
.cab .cab-scard__b { position: relative; z-index: 1; }
.cab .cab-scard__t { font-size: var(--fs-sm); font-weight: var(--fw-extra); line-height: 1.2; text-shadow: 0 1px 6px rgba(20,10,30,.4); }
.cab .cab-scard__meta { display: flex; align-items: center; gap: 8px; margin-top: 4px; font-size: 10.5px; opacity: .92; }
.cab .cab-scard__meta span { display: inline-flex; align-items: center; gap: 3px; }
.cab .cab-scard__meta svg { width: 11px; height: 11px; }
.cab .cab-scard__acts { display: flex; gap: 6px; margin-top: 8px; }
.cab .cab-scard__acts button { flex: 1; height: 30px; border-radius: var(--r-sm); border: none; background: rgba(255,255,255,0.2); color: var(--fg-on-brand); display: grid; place-items: center; cursor: pointer; }
.cab .cab-scard__acts button svg { width: 15px; height: 15px; }

/* посты и сторис */
.cab .cab-stories { display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; margin-bottom: 14px; }
.cab .cab-stories::-webkit-scrollbar { display: none; }
.cab .cab-story { flex: none; width: 64px; text-align: center; cursor: pointer; background: none; border: none; font: inherit; }
.cab .cab-story__ring { width: 60px; height: 60px; border-radius: 50%; display: grid; place-items: center; color: var(--fg-on-brand); background: linear-gradient(150deg, var(--primary), var(--teal)); }
.cab .cab-story__ring.add { background: var(--surface-2); color: var(--primary); border: 1.5px dashed var(--border-2); }
.cab .cab-story__ring svg { width: 22px; height: 22px; }
.cab .cab-story__l { font-size: 10.5px; color: var(--fg-2); margin-top: 4px; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cab .cab-composer { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 14px; margin-bottom: 14px; }
.cab .cab-composer__bar { display: flex; gap: 8px; margin-top: 10px; }
.cab .cab-post { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 14px; margin-bottom: 10px; }
.cab .cab-post__hd { display: flex; align-items: center; gap: 9px; margin-bottom: 9px; }
.cab .cab-post__av { width: 34px; height: 34px; flex: none; border-radius: 10px; display: grid; place-items: center; color: var(--fg-on-brand); font-size: var(--fs-xs); font-weight: var(--fw-extra); background: linear-gradient(150deg, var(--primary), color-mix(in srgb, var(--primary) 55%, var(--brand-navy) 60%)); }
.cab .cab-post__meta { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-post__st { margin-left: auto; font-size: 10.5px; font-weight: var(--fw-extra); padding: 3px 9px; border-radius: var(--r-pill); }
.cab .cab-post__st.published { background: var(--success-soft); color: var(--success); }
.cab .cab-post__st.moderation { background: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }
.cab .cab-post__st.draft { background: var(--surface-2); color: var(--fg-3); }

/* статьи (лонгриды) — карточка списком */
.cab .cab-artnew { display: inline-flex; align-items: center; gap: 7px; padding: 9px 14px; border-radius: var(--r-md); border: 1.5px dashed var(--border-2); background: var(--surface-2); color: var(--primary); cursor: pointer; font: inherit; font-size: var(--fs-sm); font-weight: var(--fw-bold); margin-bottom: 10px; }
.cab .cab-artnew svg { width: 17px; height: 17px; }
.cab .cab-art { display: flex; gap: 12px; padding: 12px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); margin-bottom: 8px; }
.cab .cab-art__cover { width: 56px; height: 56px; flex: none; border-radius: var(--r-md); display: grid; place-items: center; color: var(--fg-on-brand); background: linear-gradient(150deg, var(--c, var(--primary)), color-mix(in srgb, var(--c, var(--primary)) 55%, var(--brand-navy) 60%)); }
.cab .cab-art__cover svg { width: 24px; height: 24px; }
.cab .cab-art__b { flex: 1; min-width: 0; }
.cab .cab-art__title { font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); line-height: 1.3; }
.cab .cab-art__ex { font-size: var(--fs-xs); color: var(--fg-2); margin-top: 3px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.cab .cab-art__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 7px; }
.cab .cab-art__meta .cab-post__st { margin-left: 0; }
.cab .cab-art__date, .cab .cab-art__views { font-size: 10.5px; color: var(--fg-3); display: inline-flex; align-items: center; gap: 3px; }
.cab .cab-art__views svg { width: 12px; height: 12px; }
.cab .cab-art__acts { display: flex; flex-direction: column; gap: 4px; flex: none; }
.cab .cab-art__acts button { width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; background: var(--surface-2); border: 1px solid var(--border); color: var(--fg-2); cursor: pointer; }
.cab .cab-art__acts svg { width: 15px; height: 15px; }
.cab .cab-post__tx { font-size: var(--fs-sm); line-height: 1.5; color: var(--fg); }
.cab .cab-post__foot { display: flex; gap: 16px; margin-top: 9px; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-post__foot span { display: inline-flex; align-items: center; gap: 4px; }
.cab .cab-post__foot svg { width: 13px; height: 13px; }

/* настройки — переключатели/строки */
.cab .cab-set { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--border); }
.cab .cab-set:last-child { border-bottom: none; }
.cab .cab-set__b { flex: 1; min-width: 0; }
.cab .cab-set__nm { font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg); }
.cab .cab-set__sub { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-toggle { flex: none; width: 44px; height: 26px; border-radius: 99px; border: none; background: var(--surface-2); position: relative; cursor: pointer; transition: background var(--dur); }
.cab .cab-toggle.on { background: var(--primary); }
.cab .cab-toggle::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: var(--fg-on-brand); box-shadow: var(--shadow-sm); transition: transform var(--dur); }
.cab .cab-toggle.on::after { transform: translateX(18px); }
.cab .cab-seg2 { display: inline-flex; gap: 2px; padding: 3px; border-radius: var(--r-pill); background: var(--surface-2); flex: none; }
.cab .cab-seg2 button { padding: 5px 12px; border: none; background: transparent; border-radius: var(--r-pill); font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); cursor: pointer; }
.cab .cab-seg2 button.on { background: var(--surface); color: var(--fg); box-shadow: var(--shadow-sm); }

/* ── Медиатека ── */
.cab .cab-media-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.cab .cab-mtile { position: relative; aspect-ratio: 1; border-radius: var(--r-md); overflow: hidden; display: grid; place-items: center; color: var(--fg-on-brand);
  background: linear-gradient(150deg, var(--c, var(--primary)), color-mix(in srgb, var(--c, var(--primary)) 50%, var(--brand-navy) 62%)); }
.cab .cab-mtile svg { width: 24px; height: 24px; opacity: .9; }
.cab .cab-mtile__st { position: absolute; top: 5px; right: 5px; width: 8px; height: 8px; border-radius: 50%; }
.cab .cab-mtile__st.published { background: var(--success); } .cab .cab-mtile__st.moderation { background: var(--warning); }
.cab .cab-mtile__doc { background: var(--surface-2); color: var(--fg-2); }
.cab .cab-mupload { aspect-ratio: 1; border-radius: var(--r-md); border: 1.5px dashed var(--border-2); background: var(--surface-2); color: var(--primary); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); cursor: pointer; }
.cab .cab-mupload svg { width: 22px; height: 22px; }

/* ── Агент-ассистент: быстрые запросы ── */
.cab .cab-quick { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 12px; }
.cab .cab-agent-hero { border-radius: var(--r-lg); padding: 18px; color: var(--fg-on-brand); margin-bottom: 14px; box-shadow: var(--shadow-md);
  background: radial-gradient(120% 100% at 84% -14%, color-mix(in srgb, var(--primary) 60%, #fff 10%), transparent 56%), linear-gradient(150deg, var(--brand-plum), var(--brand-navy)); }
.cab .cab-agent-hero__t { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-display); font-size: var(--fs-h3); font-weight: var(--fw-extra); }
.cab .cab-agent-hero p { margin: 6px 0 0; font-size: var(--fs-sm); color: rgba(255,255,255,0.85); }

/* ── Пустое состояние / лиды-воронка ── */
.cab .cab-funnel { display: flex; gap: 8px; margin-bottom: 14px; }
.cab .cab-funnel__col { flex: 1; text-align: center; padding: 12px 6px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
.cab .cab-funnel__n { font-family: var(--font-display); font-size: var(--fs-h2); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-funnel__l { font-size: 10.5px; color: var(--fg-3); margin-top: 2px; }

/* ── CRM: переключатель видов ── */
.cab .cab-vsw { display: flex; gap: 4px; padding: 4px; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--border); margin-bottom: 14px; }
.cab .cab-vsw button { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 9px 6px; border: none; background: none; cursor: pointer; font: inherit; font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg-2); border-radius: var(--r-sm); }
.cab .cab-vsw button svg { width: 16px; height: 16px; }
.cab .cab-vsw button.is-active { background: var(--surface); color: var(--primary); box-shadow: var(--shadow-sm); }
.cab .cab-hint { display: flex; align-items: center; gap: 7px; font-size: var(--fs-xs); color: var(--fg-3); margin: 0 0 12px; }
.cab .cab-hint svg { width: 14px; height: 14px; flex: none; }

/* ── CRM: канбан ── */
.cab .cab-kanban { display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; margin: 0 calc(-1 * var(--gutter)); padding-left: var(--gutter); padding-right: var(--gutter); }
.cab .cab-kanban::-webkit-scrollbar { display: none; }
.cab .cab-kcol { flex: 0 0 230px; display: flex; flex-direction: column; gap: 8px; }
.cab .cab-kcol__hd { display: flex; align-items: center; justify-content: space-between; padding: 8px 11px; border-radius: var(--r-md); font-size: var(--fs-sm); font-weight: var(--fw-bold); background: var(--surface-2); color: var(--fg); border-left: 3px solid var(--border); }
.cab .cab-kcol__hd.info { border-left-color: var(--primary); }
.cab .cab-kcol__hd.warn { border-left-color: var(--warning); }
.cab .cab-kcol__hd.ok { border-left-color: var(--success); }
.cab .cab-kcol__hd.muted { border-left-color: var(--fg-3); }
.cab .cab-kcol__n { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px; background: var(--surface); display: grid; place-items: center; font-size: var(--fs-xs); color: var(--fg-2); }
.cab .cab-kcol__body { display: flex; flex-direction: column; gap: 8px; }
.cab .cab-kcard { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); overflow: hidden; }
.cab .cab-kcard__main { width: 100%; text-align: left; padding: 11px 12px; background: none; border: none; cursor: pointer; font: inherit; }
.cab .cab-kcard__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); display: flex; align-items: center; gap: 6px; }
.cab .cab-kcard__nm .cab-heat svg { width: 12px; height: 12px; }
.cab .cab-kcard__sub { font-size: var(--fs-xs); color: var(--fg-3); margin-top: 3px; }
.cab .cab-kcard__move { display: flex; border-top: 1px solid var(--border); }
.cab .cab-kcard__move button { flex: 1; display: grid; place-items: center; padding: 7px; background: none; border: none; cursor: pointer; color: var(--fg-2); }
.cab .cab-kcard__move button + button { border-left: 1px solid var(--border); }
.cab .cab-kcard__move button:disabled { opacity: .3; cursor: default; }
.cab .cab-kcard__move svg { width: 16px; height: 16px; }

/* ── CRM: компактный заголовок + компактный переключатель ── */
.cab .cab-sech--tight { margin-bottom: 10px; }
.cab .cab-vsw--sm { margin-bottom: 12px; }
.cab .cab-vsw--sm button { padding: 7px 6px; }

/* ── CRM: табличный вид (Excel-стиль, горизонтальный скролл) ── */
.cab .cab-tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--border); border-radius: var(--r-md); background: var(--surface); box-shadow: var(--shadow-sm); }
.cab .cab-tablewrap::-webkit-scrollbar { height: 7px; }
.cab .cab-tablewrap::-webkit-scrollbar-thumb { background: var(--border-2); border-radius: 4px; }
.cab .cab-table { border-collapse: collapse; width: max-content; min-width: 100%; font-size: var(--fs-sm); }
.cab .cab-table th { text-align: left; padding: 9px 12px; font-size: var(--fs-xs); font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: var(--ls-label); color: var(--fg-3); background: var(--surface-2); border-bottom: 1px solid var(--border); white-space: nowrap; position: sticky; top: 0; }
.cab .cab-table td { padding: 9px 12px; border-bottom: 1px solid var(--border); color: var(--fg); white-space: nowrap; }
.cab .cab-table tr:last-child td { border-bottom: none; }
.cab .cab-table__nm { font-weight: var(--fw-bold); }
.cab .cab-table__open { display: inline-flex; align-items: center; gap: 6px; background: none; border: none; padding: 0; font: inherit; font-weight: var(--fw-bold); color: var(--fg); cursor: pointer; }
.cab .cab-table__open:hover { color: var(--primary); }
.cab .cab-table__tel a { color: var(--fg-2); text-decoration: none; }
.cab .cab-table__tel a:hover { color: var(--primary); }
.cab .cab-table__empty { text-align: center; color: var(--fg-3); padding: 20px; }
/* select стадии в таблице, тонирован по статусу */
.cab .cab-stsel { font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); padding: 5px 24px 5px 9px; border-radius: var(--r-pill); border: 1px solid transparent; cursor: pointer; -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3'><path d='M6 9l6 6 6-6'/></svg>"); background-repeat: no-repeat; background-position: right 7px center; }
.cab .cab-stsel.new { background-color: var(--primary-soft); color: var(--primary-on-soft); }
.cab .cab-stsel.progress { background-color: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }
.cab .cab-stsel.won { background-color: var(--success-soft); color: var(--success); }
.cab .cab-stsel.lost { background-color: var(--surface-2); color: var(--fg-3); }

/* ── Карточка: телефон, история, комментарии ── */
.cab .cab-sheet__tel { display: inline-flex; align-items: center; gap: 5px; color: var(--primary); font-weight: var(--fw-bold); text-decoration: none; }
.cab .cab-timeline { list-style: none; margin: 0 0 16px; padding: 0; }
.cab .cab-timeline li { position: relative; display: flex; gap: 11px; padding: 0 0 13px 0; }
.cab .cab-timeline li:not(:last-child)::before { content: ''; position: absolute; left: 4px; top: 12px; bottom: 0; width: 1px; background: var(--border); }
.cab .cab-timeline__dot { flex: none; width: 9px; height: 9px; margin-top: 4px; border-radius: 50%; background: var(--primary); }
.cab .cab-timeline li div { display: flex; flex-direction: column; gap: 1px; }
.cab .cab-timeline li b { font-size: var(--fs-xs); color: var(--fg-3); font-weight: var(--fw-semibold); }
.cab .cab-timeline li span { font-size: var(--fs-sm); color: var(--fg); }
.cab .cab-comments { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }
.cab .cab-comments__empty { font-size: var(--fs-sm); color: var(--fg-3); margin: 0; }
.cab .cab-comment { padding: 9px 12px; border-radius: var(--r-md); background: var(--surface-2); }
.cab .cab-comment__t { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-comment p { margin: 3px 0 0; font-size: var(--fs-sm); color: var(--fg); line-height: 1.45; }
.cab .cab-commentbar { display: flex; gap: 8px; margin-bottom: 16px; }
.cab .cab-commentbar input { flex: 1; min-width: 0; height: 38px; padding: 0 13px; border-radius: var(--r-md); border: 1px solid var(--border); background: var(--surface); color: var(--fg); font: inherit; font-size: var(--fs-sm); }
.cab .cab-commentbar .btn { flex: none; }

/* ── CRM: календарь ── */
.cab .cab-cal { border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--surface); box-shadow: var(--shadow-sm); padding: 14px; margin-bottom: 16px; }
.cab .cab-cal__hd { text-align: center; font-family: var(--font-display); font-weight: var(--fw-extra); font-size: var(--fs-body); color: var(--fg); margin-bottom: 12px; text-transform: capitalize; }
.cab .cab-cal__wd { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-bottom: 6px; }
.cab .cab-cal__wd span { text-align: center; font-size: 10.5px; font-weight: var(--fw-bold); color: var(--fg-3); }
.cab .cab-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.cab .cab-cal__blank { aspect-ratio: 1; }
.cab .cab-cal__day { position: relative; aspect-ratio: 1; display: grid; place-items: center; border-radius: var(--r-sm); border: 1px solid transparent; background: var(--surface-2); cursor: pointer; font: inherit; font-size: var(--fs-sm); color: var(--fg); }
.cab .cab-cal__day.is-today { border-color: var(--primary); color: var(--primary); font-weight: var(--fw-bold); }
.cab .cab-cal__day.is-sel { background: var(--primary); color: var(--fg-on-brand); }
.cab .cab-cal__dot { position: absolute; bottom: 3px; min-width: 14px; height: 14px; padding: 0 3px; border-radius: 7px; background: var(--warning); color: #fff; font-size: 9px; font-weight: var(--fw-bold); display: grid; place-items: center; line-height: 1; }
.cab .cab-cal__day.is-sel .cab-cal__dot { background: var(--surface); color: var(--primary); }

/* ── CRM: занятия дня ── */
.cab .cab-sess { display: flex; align-items: center; gap: 11px; padding: 11px 12px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); margin-bottom: 8px; }
.cab .cab-sess__t { flex: none; width: 44px; font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-sess__ic { flex: none; width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--surface-2); color: var(--fg-2); }
.cab .cab-sess__ic.ok { background: var(--success-soft); color: var(--success); }
.cab .cab-sess__ic.info { background: var(--primary-soft); color: var(--primary-on-soft); }
.cab .cab-sess__ic.warn { background: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }
.cab .cab-sess__ic svg { width: 17px; height: 17px; }
.cab .cab-sess__b { flex: 1; min-width: 0; }
.cab .cab-sess__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .cab-sess__sub { font-size: var(--fs-xs); color: var(--fg-3); margin-top: 2px; }
.cab .cab-sess__tag { flex: none; font-size: 10.5px; font-weight: var(--fw-bold); padding: 3px 8px; border-radius: var(--r-pill); background: var(--surface-2); color: var(--fg-2); }
.cab .cab-sess__tag.ok { background: var(--success-soft); color: var(--success); }
.cab .cab-sess__tag.info { background: var(--primary-soft); color: var(--primary-on-soft); }
.cab .cab-sess__tag.warn { background: color-mix(in srgb, var(--warning) 18%, transparent); color: var(--warning); }

/* ── Заглушка разделов (#6.2–#6.18) ── */
.cab .cab-stub { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 40px 18px; border-radius: var(--r-lg); background: var(--surface); border: 1px dashed var(--border-2); }
.cab .cab-stub__ic { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary); }
.cab .cab-stub__ic svg { width: 26px; height: 26px; }
.cab .cab-stub__kicker { font-size: var(--fs-label); letter-spacing: var(--ls-label); text-transform: uppercase; font-weight: var(--fw-bold); color: var(--primary); }
.cab .cab-stub__title { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-extra); color: var(--fg); }
.cab .cab-stub__body { margin: 0; max-width: 46ch; font-size: var(--fs-sm); line-height: 1.55; color: var(--fg-2); }

/* ============================================================
   #6.7 / #7.6 · Управление контентом профиля (Facebook-style) — хаб + редактор.
   Блоки: pm-хаб, gallery, video, items(erow2), reviews, docs, fakesel, cap-чипы.
   ============================================================ */

/* секция с «назад» */
.cab .cab-sech--back { padding-top: 2px; }
.cab .cab-back2 { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 8px; padding: 5px 11px 5px 8px; border-radius: var(--r-pill); background: var(--surface-2); color: var(--fg-2); font-size: var(--fs-xs); font-weight: var(--fw-bold); text-decoration: none; }
.cab .cab-back2 svg { width: 14px; height: 14px; }
.cab .cab-sech h1 { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }

/* капабилити-чип */
.cab .cab-cap { display: inline-flex; align-items: center; gap: 3px; padding: 2px 8px; border-radius: var(--r-pill); font-size: 10.5px; font-weight: var(--fw-bold); white-space: nowrap; }
.cab .cab-cap--edit { background: var(--primary-soft); color: var(--primary-on-soft, var(--primary)); }
.cab .cab-cap--moderate { background: var(--warning-soft); color: var(--warning); }
.cab .cab-cap--admin { background: var(--surface-2); color: var(--fg-2); }

/* хаб разделов */
.cab .cab-pmlist { display: flex; flex-direction: column; gap: 6px; margin-top: 4px; }
.cab .cab-pmrow { display: flex; align-items: center; gap: 8px; padding: 6px; border-radius: var(--r-md); border: 1px solid var(--border); background: var(--surface); }
.cab .cab-pmrow__main { flex: 1; min-width: 0; display: flex; align-items: center; gap: 11px; color: var(--fg); text-decoration: none; }
.cab .cab-pmrow__b { flex: 1; min-width: 0; }
.cab .cab-pmrow__nm { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); line-height: 1.25; }
.cab .cab-pmrow__sub { display: block; margin-top: 2px; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-pmrow__chev { width: 17px; height: 17px; flex: none; color: var(--fg-3); }
.cab .cab-pmrow__pin { width: 42px; flex: none; display: grid; place-items: center; color: var(--fg-3); }

/* открыть раздел публично / save-hint */
.cab .cab-openpub { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); text-decoration: none; }
.cab .cab-savehint { margin: 8px 0 0; text-align: center; font-size: var(--fs-xs); color: var(--fg-3); }

/* note */
.cab .cab-enote { display: flex; gap: 9px; padding: 11px 13px; border-radius: var(--r-md); background: var(--primary-soft); border: 1px solid color-mix(in srgb, var(--primary) 22%, transparent); font-size: var(--fs-sm); line-height: 1.45; color: var(--fg-2); }
.cab .cab-enote svg { width: 17px; height: 17px; flex: none; color: var(--primary); margin-top: 1px; }

/* card head with action */
.cab .cab-card__hd { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cab .cab-addbtn { flex: none; display: inline-flex; align-items: center; gap: 4px; padding: 6px 11px; border-radius: var(--r-pill); border: 1px dashed var(--border-2); background: var(--surface); font-family: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); cursor: pointer; }
.cab .cab-addbtn svg { width: 14px; height: 14px; }

/* fake select / field hint */
.cab .cab-fakesel { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; border-radius: var(--r-md); border: 1px solid var(--border-2); background: var(--surface); font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg); cursor: pointer; }
.cab .cab-fakesel svg { width: 16px; height: 16px; color: var(--fg-3); flex: none; }
.cab .cab-field__hint { display: block; margin-top: 4px; font-size: var(--fs-xs); color: var(--fg-3); }

/* editable item rows */
.cab .cab-elist { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.cab .cab-erow2 { display: flex; align-items: center; gap: 8px; padding: 9px 8px; border-radius: var(--r-md); border: 1px solid var(--border); background: var(--surface); }
.cab .cab-erow2__drag { flex: none; border: none; background: none; color: var(--fg-3); cursor: grab; padding: 2px; display: grid; place-items: center; }
.cab .cab-erow2__drag svg { width: 16px; height: 16px; }
.cab .cab-erow2__b { flex: 1; min-width: 0; }
.cab .cab-erow2__top { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.cab .cab-erow2__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); line-height: 1.25; }
.cab .cab-erow2__sub { display: flex; align-items: center; gap: 5px; margin-top: 2px; font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-erow2__meta { flex: none; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); white-space: nowrap; }
.cab .cab-iconmini { flex: none; width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; border: 1px solid var(--border-2); background: var(--surface); color: var(--fg-2); cursor: pointer; }
.cab .cab-iconmini svg { width: 15px; height: 15px; }
.cab .cab-iconmini--danger { color: var(--danger); }

/* chips */
.cab .cab-chip2 { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: var(--r-pill); background: var(--success-soft); color: var(--success); font-size: 10.5px; font-weight: var(--fw-bold); }
.cab .cab-chip2--warn { background: var(--warning-soft); color: var(--warning); }
.cab .cab-chip2--danger { background: var(--danger-soft); color: var(--danger); }

/* status dot */
.cab .cab-dot { width: 7px; height: 7px; border-radius: 50%; flex: none; }
.cab .cab-dot.ok { background: var(--success); } .cab .cab-dot.warn { background: var(--warning); } .cab .cab-dot.muted { background: var(--fg-3); }

/* gallery editor */
.cab .cab-gal { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 10px; }
.cab .cab-gal__cell { position: relative; aspect-ratio: 1 / 1; border-radius: var(--r-md); overflow: hidden; background: linear-gradient(150deg, var(--surface-2), color-mix(in srgb, var(--primary) 14%, var(--surface-2))); display: flex; align-items: flex-end; }
.cab .cab-gal__cell.is-cover { outline: 2px solid var(--primary); outline-offset: -2px; }
.cab .cab-gal__cover { position: absolute; top: 5px; left: 5px; display: inline-flex; align-items: center; gap: 3px; padding: 2px 7px; border-radius: var(--r-pill); background: var(--primary); color: var(--fg-on-brand); font-size: 9.5px; font-weight: var(--fw-extra); }
.cab .cab-gal__cap { position: relative; z-index: 1; width: 100%; padding: 5px 7px; font-size: 10px; font-weight: var(--fw-bold); color: var(--fg); background: color-mix(in srgb, var(--surface) 70%, transparent); }
.cab .cab-gal__ovl { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 6px; background: var(--overlay); opacity: 0; transition: opacity var(--dur); }
.cab .cab-gal__cell:hover .cab-gal__ovl, .cab .cab-gal__cell:focus-within .cab-gal__ovl { opacity: 1; }
.cab .cab-gal__btn { width: 30px; height: 30px; border-radius: 8px; border: none; background: var(--surface); color: var(--fg); display: grid; place-items: center; cursor: pointer; }
.cab .cab-gal__btn svg { width: 15px; height: 15px; }
.cab .cab-gal__add { aspect-ratio: 1 / 1; border-radius: var(--r-md); border: 1px dashed var(--border-2); background: var(--surface-2); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; color: var(--primary); font-family: inherit; font-size: 10.5px; font-weight: var(--fw-bold); cursor: pointer; }
.cab .cab-gal__add svg { width: 20px; height: 20px; }

/* video editor */
.cab .cab-vid { display: flex; gap: 11px; margin-top: 10px; align-items: stretch; }
.cab .cab-vid__prev { flex: none; width: 96px; border-radius: var(--r-md); background: linear-gradient(150deg, var(--brand-plum), var(--brand-navy)); display: grid; place-items: center; color: var(--fg-on-brand); }
.cab .cab-vid__prev svg { width: 30px; height: 30px; }
.cab .cab-vid__b { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }

/* reviews moderation */
.cab .cab-rvlist { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.cab .cab-rv { padding: 12px; border-radius: var(--r-md); border: 1px solid var(--border); background: var(--surface); }
.cab .cab-rv.is-flagged { border-color: color-mix(in srgb, var(--danger) 40%, var(--border)); background: color-mix(in srgb, var(--danger) 5%, var(--surface)); }
.cab .cab-rv__hd { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cab .cab-rv__au { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .cab-rv__stars { display: inline-flex; gap: 1px; color: var(--border-2); }
.cab .cab-rv__stars svg.on { color: var(--star); fill: currentColor; }
.cab .cab-rv__tx { margin: 7px 0 0; font-size: var(--fs-sm); line-height: 1.45; color: var(--fg-2); }
.cab .cab-rv__reply { margin-top: 8px; padding: 9px 11px; border-radius: var(--r-sm); background: var(--surface-2); font-size: var(--fs-sm); line-height: 1.45; color: var(--fg); border-left: 3px solid var(--primary); }
.cab .cab-rv__rl { font-weight: var(--fw-bold); color: var(--primary); }
.cab .cab-rv__compose { display: flex; gap: 7px; margin-top: 9px; }
.cab .cab-rv__compose input { flex: 1; min-width: 0; padding: 9px 12px; border-radius: var(--r-pill); border: 1px solid var(--border-2); background: var(--surface-2); font-family: inherit; font-size: var(--fs-sm); color: var(--fg); }
.cab .cab-rv__send { flex: none; width: 38px; height: 38px; border-radius: 50%; border: none; background: var(--primary); color: var(--fg-on-brand); display: grid; place-items: center; cursor: pointer; }
.cab .cab-rv__send svg { width: 17px; height: 17px; }
.cab .cab-rv__act { display: flex; gap: 6px; margin-top: 8px; }
.cab .cab-act2 { display: inline-flex; align-items: center; gap: 4px; padding: 5px 10px; border-radius: var(--r-pill); border: 1px solid var(--border-2); background: var(--surface); font-family: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); cursor: pointer; }
.cab .cab-act2 svg { width: 13px; height: 13px; }
.cab .cab-act2--danger { color: var(--danger); border-color: color-mix(in srgb, var(--danger) 35%, var(--border-2)); }

/* ============================================================
   #6.10/#6.13/#6.14/#6.16 · Углублённые разделы кабинета — банк знаний (чеклист),
   сотрудничество (рефералка), мини-апп (аватар), премиум (сравнение тарифов).
   ============================================================ */

/* поиск-тулбар */
.cab .cab-toolbar2 { display: flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--border); }
.cab .cab-toolbar2 svg { width: 16px; height: 16px; flex: none; color: var(--fg-3); }
.cab .cab-toolbar2 input { flex: 1; min-width: 0; border: none; background: none; font: inherit; font-size: var(--fs-sm); color: var(--fg); outline: none; }

/* мини-аватар */
.cab .cab-ava { width: 38px; height: 38px; flex: none; border-radius: 11px; display: grid; place-items: center; color: var(--fg-on-brand); font-size: 15px; font-weight: var(--fw-extra); background: linear-gradient(150deg, var(--primary), color-mix(in srgb, var(--primary) 55%, var(--brand-navy) 60%)); }

/* чип-тоны (дополнение) */
.cab .cab-chip2--ok { background: var(--success-soft); color: var(--success); }
.cab .cab-chip2--muted { background: var(--surface-2); color: var(--fg-3); }

/* банк знаний — чеклист */
.cab .cab-kb-check { display: flex; flex-direction: column; gap: 4px; margin-top: 12px; }
.cab .cab-kb-ck { display: flex; align-items: center; gap: 10px; padding: 9px 4px; }
.cab .cab-kb-ck + .cab-kb-ck { border-top: 1px solid var(--border); }
.cab .cab-kb-ck__box { width: 24px; height: 24px; flex: none; border-radius: 50%; display: grid; place-items: center; background: var(--surface-2); color: var(--fg-3); }
.cab .cab-kb-ck__box svg { width: 14px; height: 14px; }
.cab .cab-kb-ck.is-done .cab-kb-ck__box { background: var(--success); color: var(--fg-on-brand); }
.cab .cab-kb-ck__l { flex: 1; min-width: 0; font-size: var(--fs-sm); font-weight: var(--fw-semibold); color: var(--fg); }
.cab .cab-kb-ck.is-done .cab-kb-ck__l { color: var(--fg-3); text-decoration: line-through; }

/* сотрудничество — реф-ссылка */
.cab .cab-reflink { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding: 9px 11px; border-radius: var(--r-md); border: 1px dashed var(--border-2); background: var(--surface-2); }
.cab .cab-reflink span { flex: 1; min-width: 0; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* премиум — сравнение тарифов */
.cab .cab-cmp { display: flex; flex-direction: column; }
.cab .cab-cmp__row { display: grid; grid-template-columns: 1.5fr repeat(var(--n), 1fr); align-items: center; }
.cab .cab-cmp__row + .cab-cmp__row { border-top: 1px solid var(--border); }
.cab .cab-cmp__row--head { background: var(--surface-2); }
.cab .cab-cmp__corner { padding: 11px 12px; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-3); }
.cab .cab-cmp__plan { padding: 11px 6px; text-align: center; font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); display: flex; flex-direction: column; align-items: center; gap: 2px; }
.cab .cab-cmp__plan.is-cur { background: var(--primary-soft); color: var(--primary-on-soft, var(--primary)); }
.cab .cab-cmp__cur { font-size: 9px; font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: .03em; padding: 1px 6px; border-radius: var(--r-pill); background: var(--primary); color: var(--fg-on-brand); }
.cab .cab-cmp__feat { display: flex; align-items: center; gap: 7px; padding: 11px 12px; font-size: var(--fs-xs); font-weight: var(--fw-semibold); color: var(--fg); }
.cab .cab-cmp__feat svg { width: 15px; height: 15px; flex: none; color: var(--fg-2); }
.cab .cab-cmp__cell { padding: 11px 6px; display: grid; place-items: center; }
.cab .cab-cmp__cell.is-cur { background: color-mix(in srgb, var(--primary) 6%, transparent); }
.cab .cab-cmp__cell svg { width: 17px; height: 17px; }

/* key-value (мини-апп биллинг и пр.) */
.cab .cab-kv { border-radius: var(--r-md); border: 1px solid var(--border); overflow: hidden; }
.cab .cab-kv__row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 10px 12px; }
.cab .cab-kv__row + .cab-kv__row { border-top: 1px solid var(--border); }
.cab .cab-kv__k { font-size: var(--fs-xs); color: var(--fg-3); }
.cab .cab-kv__v { font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg); text-align: right; }

/* ── #6.1/#6.6/#7.5 · Конкуренты / Точки роста / Практика ── */
.cab .ins-self { display: flex; align-items: center; gap: 10px; padding: 11px 13px; border-radius: var(--r-md); background: var(--primary-soft); }
.cab .ins-self__l { flex: none; font-size: var(--fs-xs); font-weight: var(--fw-extra); color: var(--primary-on-soft, var(--primary)); text-transform: uppercase; letter-spacing: .03em; }
.cab .ins-self__m { font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg); }
.cab .ins-self__m b { font-size: var(--fs-sm); }
.cab .ins-comp { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 12px; }
.cab .ins-comp__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.cab .ins-comp__nm { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .ins-track { display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px; border-radius: var(--r-pill); border: 1px solid var(--border-2); background: var(--surface); font: inherit; font-size: 11px; font-weight: var(--fw-bold); color: var(--fg-2); cursor: pointer; }
.cab .ins-track.on { background: var(--primary-soft); border-color: transparent; color: var(--primary-on-soft, var(--primary)); }
.cab .ins-cmp { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.cab .ins-cmp__c { text-align: center; padding: 8px 4px; border-radius: var(--r-sm); background: var(--surface-2); }
.cab .ins-cmp__v { display: inline-flex; align-items: center; gap: 3px; font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); }
.cab .ins-cmp__v svg { width: 13px; height: 13px; }
.cab .ins-cmp__l { display: block; margin-top: 2px; font-size: 10px; color: var(--fg-3); }
.cab .t-trending-up { color: var(--danger); }
.cab .t-trending-down { color: var(--success); }
.cab .t-minus { color: var(--fg-3); }

.cab .ins-grow { display: flex; gap: 11px; padding: 13px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
.cab .ins-grow__ic { width: 38px; height: 38px; flex: none; border-radius: 11px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary); }
.cab .ins-grow__ic svg { width: 19px; height: 19px; }
.cab .ins-grow__b { flex: 1; min-width: 0; }
.cab .ins-grow__top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cab .ins-grow__t { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .ins-grow__body { margin: 5px 0 9px; font-size: var(--fs-xs); line-height: 1.45; color: var(--fg-2); }
.cab .ins-grow__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cab .ins-scope { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: var(--fw-bold); color: var(--fg-3); }

.cab .ins-case { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 13px; }
.cab .ins-case__hd { display: flex; align-items: center; gap: 7px; font-size: var(--fs-sm); font-weight: var(--fw-extra); color: var(--fg); margin-bottom: 9px; }
.cab .ins-case__hd svg { width: 16px; height: 16px; color: var(--star); }
.cab .ins-case__row { display: flex; gap: 10px; padding: 7px 0; font-size: var(--fs-xs); line-height: 1.45; color: var(--fg-2); }
.cab .ins-case__row + .ins-case__row { border-top: 1px solid var(--border); }
.cab .ins-case__k { flex: none; width: 80px; font-weight: var(--fw-bold); color: var(--fg-3); }
.cab .ins-case__row--res span:last-child { display: inline-flex; align-items: center; gap: 5px; font-weight: var(--fw-bold); color: var(--success); }
/* кликабельный кейс практики → деталь */
.cab .ins-case--btn { width: 100%; text-align: left; cursor: pointer; font: inherit; display: block; transition: transform .15s ease, box-shadow .15s ease; }
.cab .ins-case--btn:hover { transform: translateY(-1px); box-shadow: var(--shadow-md); }
.cab .ins-case__chev { margin-left: auto; width: 18px !important; height: 18px !important; color: var(--fg-3) !important; }
.cab .ins-case__more { display: inline-flex; align-items: center; gap: 4px; margin-top: 10px; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); }
.cab .cab-sheet__caseic { flex: none; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary-on-soft); }
.cab .cab-sheet__caseic svg { width: 20px; height: 20px; }
.cab .ins-case__res2 { display: inline-flex; align-items: center; gap: 5px; font-weight: var(--fw-extra); color: var(--success); }
.cab .ins-steps { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.cab .ins-steps li { display: flex; align-items: flex-start; gap: 10px; font-size: var(--fs-sm); color: var(--fg); line-height: 1.45; }
.cab .ins-steps__n { flex: none; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary-on-soft); font-size: var(--fs-xs); font-weight: var(--fw-extra); }

/* ════════════════ 6.7 · Редактор профиля (FB-style) ════════════════ */
.cab .ed { display: flex; flex-direction: column; }
.cab .ed-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.cab .ed-h2 { margin: 0; font-family: var(--font-display); font-weight: var(--fw-extra); font-size: var(--fs-h3); color: var(--fg); }
.cab .eb-text { margin: 0; font-size: var(--fs-sm); color: var(--fg-2); line-height: 1.5; }
.cab .ds-strong { margin: 0; font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .ed-mode { display: inline-flex; align-items: center; gap: 6px; flex: none; border: 1px solid var(--border-2); background: var(--surface); color: var(--fg-2); font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); border-radius: var(--r-pill); padding: 7px 11px; cursor: pointer; }
.cab .ed-mode svg { width: 15px; height: 15px; }
.cab .ed-mode.on { background: var(--primary-soft); color: var(--primary-on-soft); border-color: transparent; }
.cab .ed-pages { display: flex; gap: 7px; overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)) 4px; padding: 0 var(--gutter) 10px; }
.cab .ed-pages::-webkit-scrollbar { display: none; }
.cab .ed-page { flex: none; display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--border); background: var(--surface); color: var(--fg-2); font: inherit; font-size: var(--fs-sm); font-weight: var(--fw-semibold); border-radius: var(--r-pill); padding: 7px 12px; cursor: pointer; white-space: nowrap; }
.cab .ed-page svg { width: 14px; height: 14px; }
.cab .ed-page.is-active { background: var(--primary); color: var(--fg-on-brand); border-color: transparent; }
.cab .ed-blocks { display: flex; flex-direction: column; gap: 12px; margin-top: 4px; }

/* блок-карточка */
.cab .eb { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); overflow: hidden; }
.cab .eb--tenant { border-left: 3px solid var(--primary); }
.cab .eb--pull { border-left: 3px solid var(--violet); }
.cab .eb--link { border-left: 3px solid var(--warning); }
.cab .eb--system { border-left: 3px solid var(--border-2); }
.cab .eb.is-clean { border-left-color: var(--border); }
.cab .eb-head { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid var(--border); }
.cab .eb-ic { width: 28px; height: 28px; flex: none; display: grid; place-items: center; border-radius: 8px; background: var(--bg-soft); color: var(--fg-2); }
.cab .eb-ic svg { width: 16px; height: 16px; }
.cab .eb-name { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .eb-edit { display: inline-flex; align-items: center; gap: 5px; flex: none; border: none; background: var(--primary-soft); color: var(--primary-on-soft); font: inherit; font-size: var(--fs-xs); font-weight: var(--fw-bold); border-radius: var(--r-pill); padding: 6px 11px; cursor: pointer; }
.cab .eb-edit svg { width: 13px; height: 13px; }
.cab .eb-hint { display: inline-flex; align-items: center; gap: 4px; flex: none; border: none; font: inherit; font-size: 11px; font-weight: var(--fw-bold); border-radius: var(--r-pill); padding: 5px 9px; cursor: pointer; }
.cab .eb-hint svg { width: 13px; height: 13px; }
.cab .eb-hint.pull { background: var(--violet-soft); color: var(--violet); }
.cab .eb-hint.link { background: var(--warning-soft); color: var(--warning); }
.cab .eb-hint.sys { background: var(--bg-soft); color: var(--fg-3); cursor: default; }
.cab .eb-body { padding: 12px; }

/* превью-контент в блоках */
.cab .ed-logo { width: 42px; height: 42px; flex: none; border-radius: 12px; background: var(--primary); color: var(--fg-on-brand); display: grid; place-items: center; font-family: var(--font-display); font-weight: var(--fw-extra); font-size: 18px; }
.cab .ed-logo.sm { width: 34px; height: 34px; border-radius: 50%; font-size: 14px; background: var(--violet); }
.cab .ed-name { display: flex; align-items: center; gap: 5px; font-size: 16px; font-weight: var(--fw-extra); color: var(--fg); }
.cab .ed-name svg { width: 15px; height: 15px; color: var(--primary); }
.cab .ed-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.cab .ed-chip { font-size: var(--fs-xs); font-weight: var(--fw-semibold); color: var(--fg-2); background: var(--bg-soft); border-radius: var(--r-pill); padding: 5px 10px; }
.cab .ed-chip.soft { background: var(--primary-soft); color: var(--primary-on-soft); }
.cab .ph-strip { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.cab .ph-strip::-webkit-scrollbar { display: none; }
.cab .ph-tile { flex: none; width: 96px; height: 64px; border-radius: 10px; background: var(--bg-soft); border: 1px solid var(--border); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; color: var(--fg-3); font-size: 11px; }
.cab .ph-tile svg { width: 16px; height: 16px; }
.cab .ph-tile.sm { width: 76px; height: 52px; }
.cab .ph-tile.reel { width: 54px; height: 84px; }
.cab .ed-qalist { display: flex; flex-direction: column; gap: 6px; }
.cab .ed-qa { background: var(--surface-2); border: 1px solid var(--border); border-radius: 10px; padding: 9px 11px; }
.cab .ed-qa b { display: block; font-size: var(--fs-sm); color: var(--fg); }
.cab .ed-qa span { display: block; font-size: var(--fs-xs); color: var(--fg-2); margin-top: 2px; }
.cab .ed-seo { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.cab .ed-seo::-webkit-scrollbar { display: none; }
.cab .ed-seo-card { flex: none; width: 200px; background: var(--surface-2); border: 1px solid var(--border); border-radius: 10px; padding: 11px; }
.cab .ed-seo-card b { display: block; font-size: var(--fs-sm); margin-bottom: 4px; color: var(--fg); }
.cab .ed-seo-card span { font-size: var(--fs-xs); color: var(--fg-2); line-height: 1.45; }
.cab .ed-video { display: flex; flex-direction: column; gap: 8px; }
.cab .ed-video-main { height: 84px; border-radius: 10px; background: var(--bg-soft); border: 1px solid var(--border); display: flex; align-items: center; gap: 8px; justify-content: center; color: var(--fg-2); font-size: var(--fs-sm); font-weight: var(--fw-semibold); }
.cab .ed-cards { display: flex; flex-direction: column; gap: 6px; }
.cab .ed-card-row { display: flex; align-items: center; gap: 10px; background: var(--surface-2); border: 1px solid var(--border); border-radius: 10px; padding: 9px 11px; }
.cab .ed-card-row b { font-size: var(--fs-sm); color: var(--fg); }
.cab .ed-price-row { display: flex; align-items: center; gap: 10px; background: var(--surface-2); border: 1px solid var(--border); border-radius: 10px; padding: 9px 11px; font-size: var(--fs-sm); color: var(--fg); }
.cab .ed-feat { display: flex; align-items: center; gap: 8px; font-size: var(--fs-sm); color: var(--fg); }
.cab .ed-feat svg { width: 14px; height: 14px; color: var(--success); flex: none; }

/* лист-редактор (на базе .cab-sheet) */
.cab .pe-sheet { max-height: 86dvh; display: flex; flex-direction: column; }
.cab .pe-sheet__hd { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.cab .pe-sheet__hd h2 { margin: 0; font-family: var(--font-display); font-weight: var(--fw-extra); font-size: var(--fs-h3); color: var(--fg); }
.cab .pe-scroll { overflow-y: auto; flex: 1; display: flex; flex-direction: column; gap: 8px; padding-right: 2px; }
.cab .pe-sheet__act { display: flex; gap: 10px; margin-top: 14px; }
.cab .pe-sheet__act .btn { flex: 1; }
.cab .ef-field { display: flex; flex-direction: column; gap: 6px; }
.cab .ef-field > span { font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--fg-2); }
.cab .ef-input { width: 100%; border: 1px solid var(--border-2); background: var(--surface-2); color: var(--fg); font: inherit; font-size: var(--fs-sm); border-radius: 10px; padding: 10px 12px; outline: none; }
.cab .ef-input:focus { border-color: var(--primary); }
.cab .ef-input--num { width: 90px; flex: none; }
.cab .ef-area { min-height: 64px; resize: vertical; line-height: 1.45; }
.cab .ef-row { display: flex; align-items: center; gap: 8px; }
.cab .ef-ph { width: 34px; height: 34px; flex: none; border-radius: 9px; background: var(--bg-soft); display: grid; place-items: center; color: var(--fg-3); }
.cab .ef-ph svg { width: 15px; height: 15px; }
.cab .ef-del { width: 36px; height: 36px; flex: none; border: none; background: color-mix(in srgb, var(--danger) 14%, transparent); color: var(--danger); border-radius: 9px; cursor: pointer; display: grid; place-items: center; }
.cab .ef-del svg { width: 15px; height: 15px; }
.cab .ef-add { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 1px dashed var(--border-2); background: transparent; color: var(--primary); font: inherit; font-size: var(--fs-sm); font-weight: var(--fw-bold); border-radius: 10px; padding: 10px; cursor: pointer; }
.cab .ef-add svg { width: 15px; height: 15px; }
.cab .ef-card { border: 1px solid var(--border); background: var(--surface-2); border-radius: 12px; padding: 11px; display: flex; flex-direction: column; gap: 8px; }
.cab .ef-card-head { display: flex; align-items: center; justify-content: space-between; }
.cab .ef-label { font-size: var(--fs-xs); letter-spacing: var(--ls-label); text-transform: uppercase; font-weight: var(--fw-bold); color: var(--fg-3); }
.cab .ef-check { display: flex; align-items: center; gap: 10px; cursor: pointer; padding: 4px 0; width: 100%; background: none; border: none; font: inherit; color: var(--fg); text-align: left; }
.cab .ef-box { width: 22px; height: 22px; flex: none; border-radius: 7px; border: 1.5px solid var(--border-2); display: grid; place-items: center; color: #fff; }
.cab .ef-box svg { width: 13px; height: 13px; }
.cab .ef-box.on { background: var(--primary); border-color: var(--primary); }
.cab .ef-note { font-size: var(--fs-xs); color: var(--fg-3); margin: 2px 0 0; }

/* ── FIRST-RUN онбординг нового тенанта (чек-лист запуска) ── */
.cab .cab-onb { border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm); padding: 16px; margin-bottom: 12px; }
.cab .cab-onb__hd { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.cab .cab-onb__ic { width: 40px; height: 40px; flex: none; border-radius: 12px; display: grid; place-items: center; background: var(--primary-soft); color: var(--primary); }
.cab .cab-onb__ic svg { width: 20px; height: 20px; }
.cab .cab-onb__t { font-size: var(--fs-body); font-weight: var(--fw-extra); color: var(--fg); margin: 0; }
.cab .cab-onb__sub { font-size: var(--fs-xs); color: var(--fg-3); margin: 2px 0 0; }
.cab .cab-onb__steps { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.cab .cab-onb__step { display: flex; align-items: center; gap: 11px; padding: 11px 12px; border-radius: 12px; border: 1px solid var(--border); background: var(--surface-2); }
.cab .cab-onb__step.is-cur { border-color: var(--primary); background: var(--primary-soft); }
.cab .cab-onb__step.is-done { opacity: .72; }
.cab .cab-onb__n { width: 26px; height: 26px; flex: none; border-radius: 50%; display: grid; place-items: center; background: var(--surface); border: 1.5px solid var(--border-2); color: var(--fg-3); font-size: var(--fs-sm); font-weight: var(--fw-extra); }
.cab .cab-onb__step.is-cur .cab-onb__n { background: var(--primary); border-color: var(--primary); color: var(--fg-on-brand); }
.cab .cab-onb__step.is-done .cab-onb__n { background: var(--success-soft); border-color: var(--success); color: var(--success); }
.cab .cab-onb__n svg { width: 14px; height: 14px; }
.cab .cab-onb__b { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cab .cab-onb__st { font-size: var(--fs-sm); font-weight: var(--fw-bold); color: var(--fg); }
.cab .cab-onb__sd { font-size: var(--fs-xs); color: var(--fg-3); line-height: 1.35; margin-top: 1px; }
.cab .cab-onb__step .btn { flex: none; }
.cab .cab-onb__foot { display: flex; align-items: flex-start; gap: 7px; margin: 13px 0 0; font-size: var(--fs-xs); color: var(--fg-3); line-height: 1.4; }
.cab .cab-onb__foot svg { width: 14px; height: 14px; flex: none; margin-top: 1px; color: var(--primary); }
/* компактная подсказка «первый шаг» в пустых состояниях разделов */
.cab .cab-onblink { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; font-size: var(--fs-xs); font-weight: var(--fw-bold); color: var(--primary); text-decoration: none; }
.cab .cab-onblink svg { width: 14px; height: 14px; }
