    :root { color-scheme: light; --bg: #f5f5f5; --surface: #ffffff; --surface-main: #fafafa; --surface-soft: #f5f5f5; --ink: #111827; --muted: #5b6270; --brand: #fe6219; --brand-strong: #fe6219; --brand-btn: #fe6219; --brand-btn-hover: #df5010; --brand-ink: #c2410c; --line: #e5e7eb; --shadow-soft: 0 20px 70px rgba(15, 23, 42, .06); }
    *, *::before, *::after { box-sizing: border-box; min-width: 0; }
    html, body { max-width: 100%; overflow-x: hidden; }
    body { width: 100%; margin: 0; font-family: "Gilroy", sans-serif; background: var(--bg); color: var(--ink); }
    body[data-theme="dark"] { color-scheme: dark; --bg: #050505; --surface: #101010; --surface-main: #080808; --surface-soft: #181818; --ink: #f5f5f5; --muted: #a3a3a3; --brand: #fe6219; --brand-strong: #fe6219; --brand-btn: #fe6219; --brand-btn-hover: #df5010; --brand-ink: #ff8a5c; --line: #262626; --shadow-soft: 0 22px 80px rgba(0, 0, 0, .42); }
    a { color: inherit; text-decoration: none; }
    input, textarea, select, button { max-width: 100%; font: inherit; }
    /* В личном кабинете кнопки без объёмных теней, во всех состояниях. */
    .dashboard button,
    .dashboard .primary,
    .dashboard .secondary,
    .dashboard .ghost,
    .dashboard [role="button"] { box-shadow: none !important; }
    img, svg, video, canvas { max-width: 100%; }
    .hero { min-height: 100vh; padding: 28px clamp(20px, 5vw, 72px); background: radial-gradient(circle at 80% 12%, #dbeafe 0, transparent 34%), linear-gradient(135deg, #ffffff 0%, #f5f7fb 52%, #eef2ff 100%); }
    .nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
    .brand { font-weight: 900; letter-spacing: -0.04em; font-size: 24px; }
    .nav-actions, .cta-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
    .primary, .secondary, .ghost { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border-radius: 14px; border: 0; cursor: pointer; font-weight: 600; }
    .primary { background: var(--brand-btn); color: #fff; box-shadow: 0 14px 35px rgba(209, 72, 26, 0.28); }
    .primary:hover { background: var(--brand-btn-hover); }
    .secondary { background: var(--surface); color: var(--ink); border: 1px solid var(--line); }
    .ghost { background: transparent; color: var(--muted); }
    .small { min-height: 40px; padding: 0 16px; border-radius: 12px; }
    .wide { width: 100%; }
    .create-widget-button { gap: 8px; }
    .create-widget-plus { display: grid; place-items: center; width: 20px; height: 20px; color: #fff; font-size: 18px; line-height: 1; font-weight: 800; }
    .hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr); gap: clamp(28px, 6vw, 88px); align-items: center; max-width: 1180px; min-height: calc(100vh - 88px); margin: 0 auto; }
    .badge, .eyebrow, .pill { display: inline-flex; width: fit-content; border-radius: 999px; background: color-mix(in srgb, var(--brand) 12%, var(--surface-soft)); color: var(--brand-ink); padding: 8px 12px; font-size: 14px; font-weight: 600; }
    h1 { margin: 18px 0; font-size: clamp(40px, 6vw, 76px); line-height: 0.94; letter-spacing: -0.07em; }
    h2 { margin: 10px 0 8px; font-size: 24px; letter-spacing: -0.04em; }
    p { color: var(--muted); line-height: 1.6; }
    .lead { max-width: 680px; font-size: 20px; }
    .mini-metrics { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 28px; color: #475467; font-weight: 700; }
    .mini-metrics span { padding: 10px 12px; border: 1px solid var(--line); background: rgba(255,255,255,.7); border-radius: 999px; }
    .demo-card, .auth-card, .panel { background: color-mix(in srgb, var(--surface) 92%, transparent); border: 1px solid var(--line); border-radius: 30px; box-shadow: var(--shadow-soft); }
    .panel { border-radius: 20px; }
    .demo-card { padding: 28px; transform: rotate(1deg); }
    .browser-dots { display: flex; gap: 7px; margin-bottom: 28px; }
    .browser-dots i { width: 12px; height: 12px; border-radius: 99px; background: #d1d5db; }
    .sample-button { min-height: 54px; padding: 0 24px; border: 0; border-radius: 14px; background: var(--brand-btn); color: white; font-weight: 600; cursor: pointer; }
    .bot-link { width: fit-content; margin-top: 10px; }
    .section-actions { margin-top: 14px; }
    a.primary { text-decoration: none; }
    .app-banner { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; padding: 12px 16px; border: 1px solid color-mix(in srgb, var(--brand) 40%, var(--line)); border-radius: 14px; background: color-mix(in srgb, var(--brand) 8%, var(--surface)); text-decoration: none; }
    .app-banner.hidden { display: none; }
    .app-banner-dot { width: 9px; height: 9px; flex: 0 0 auto; border-radius: 50%; background: var(--brand); box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand) 20%, transparent); }
    .app-banner-text { flex: 1; min-width: 0; font-size: 13px; font-weight: 600; color: var(--muted); }
    .app-banner-text strong { color: var(--ink); font-weight: 800; }
    .app-banner-cta { flex: 0 0 auto; font-size: 13px; font-weight: 700; color: var(--brand-ink); white-space: nowrap; }
    .settings-status { margin: 8px 0 14px; }
    .settings-manual { margin-top: 16px; display: grid; gap: 4px; }
    .settings-manual > summary { width: fit-content; cursor: pointer; color: var(--muted); font-size: 13px; font-weight: 600; }
    .cta-row .emp2-copy { margin-top: 0; }
    .telegram-card { margin-top: 22px; padding: 18px; border-radius: 18px; background: #111827; color: white; font-weight: 700; }
    .auth-layout { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
    .auth-logo { position: fixed; top: 28px; left: 32px; display: inline-flex; align-items: center; }
    .auth-logo img { width: 120px; height: auto; display: block; }
    .auth-card { width: min(460px, 100%); padding: 32px; }
    .auth-card h1 { font-size: 42px; }
    label { display: grid; gap: 8px; margin: 14px 0; color: color-mix(in srgb, var(--ink) 82%, var(--muted)); font-weight: 600; }
    input, textarea, select { width: 100%; max-width: 100%; border: 1px solid var(--line); border-radius: 14px; min-height: 50px; padding: 12px 14px; background: var(--surface); color: var(--ink); transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
    input:focus, textarea:focus, select:focus { outline: 0; border-color: color-mix(in srgb, var(--brand) 58%, var(--line)); box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand) 15%, transparent); }
    input.is-invalid, textarea.is-invalid, select.is-invalid { border-color: #ef4444; box-shadow: 0 0 0 4px rgba(239, 68, 68, .12); }
    select { appearance: none; padding: 0 44px 0 14px; cursor: pointer; background-color: var(--surface); background-image: linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%); background-position: calc(100% - 21px) 50%, calc(100% - 15px) 50%; background-size: 7px 7px, 7px 7px; background-repeat: no-repeat; }
    select[multiple], select[size] { height: auto; padding: 12px 14px; background-image: none; cursor: default; }
    textarea { min-height: 190px; resize: vertical; font-family: "Gilroy", sans-serif; font-size: 13px; }
    .form-error { min-height: 24px; margin-top: 12px; color: #dc2626; font-weight: 600; }
    .success { color: #059669; }
    .text-link { display: block; margin-top: 12px; color: var(--brand-ink); font-weight: 600; text-align: center; }
    .dashboard { width: 100%; max-width: 100%; min-height: 100vh; display: grid; grid-template-columns: 286px minmax(0, 1fr); gap: 14px; padding: 14px; background: var(--bg); transition: grid-template-columns .22s ease; }
    .mobile-topbar, .mobile-burger, .sidebar-backdrop { display: none; }
    .sidebar { position: sticky; z-index: 30; top: 14px; min-height: calc(100vh - 28px); padding: 18px; background: var(--surface); border: 1px solid color-mix(in srgb, var(--line) 76%, transparent); border-radius: 26px; box-shadow: var(--shadow-soft); display: flex; flex-direction: column; gap: 16px; overflow: visible; }
    .sidebar-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; }
    .sidebar-logo { display: inline-flex; align-items: center; min-width: 0; padding: 7px 0 7px 14px; }
    .sidebar-logo img { height: auto; }
    .sidebar-logo-full { display: block !important; width: 85px; max-width: 85px; }
    .sidebar-logo-loop { display: none !important; width: 42px; height: 42px; }
    body[data-theme="dark"] .sidebar-logo { padding: 8px 10px; border-radius: 14px; background: #fff; }
    .sidebar-collapse { position: relative; width: 38px; height: 38px; min-height: 38px; display: grid; place-items: center; flex: 0 0 auto; padding: 0; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--muted); cursor: pointer; }
    .sidebar-collapse:hover { background: var(--surface-soft); color: var(--ink); }
    .sidebar-collapse svg, .side-link svg, .logout svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
    .sidebar-collapse svg { transition: transform .16s ease; }
    body.sidebar-collapsed .sidebar-collapse svg { transform: scaleX(-1); }
    .sidebar-collapse span { position: absolute; left: calc(100% + 10px); top: 50%; z-index: 60; transform: translateY(-50%) translateX(-4px); width: max-content; max-width: 220px; padding: 8px 10px; border-radius: 10px; background: #111827; color: #fff; font-size: 12px; line-height: 1; font-weight: 600; opacity: 0; pointer-events: none; transition: opacity .16s ease, transform .16s ease; box-shadow: 0 12px 30px rgba(15, 23, 42, .18); }
    .sidebar-collapse:hover span { opacity: 1; transform: translateY(-50%) translateX(0); }
    .sidebar-nav { display: grid; gap: 6px; }
    .side-link { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 12px 14px; border-radius: 14px; color: var(--muted); font-weight: 600; transition: background .16s ease, color .16s ease, transform .16s ease; }
    .side-link:hover { background: var(--surface-soft); color: var(--ink); transform: translateX(2px); }
    .side-link.active { background: #e9e9e9; color: #171717; }
    body[data-theme="dark"] .side-link.active { background: #242424; color: #fff; }
    .sidebar-bottom { margin-top: auto; display: grid; gap: 12px; }
    .sidebar-plan { display:grid; gap:10px; padding:15px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,var(--surface-soft) 84%,var(--surface)),var(--surface)); }
    .sidebar-plan-trigger{display:grid;gap:10px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.sidebar-plan-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:12px}
    .sidebar-plan-head { display:flex; align-items:center; justify-content:space-between; color:var(--muted); font-size:11px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }.sidebar-plan-head b{color:var(--ink);font-size:13px;letter-spacing:0;text-transform:none}.sidebar-plan-body{display:flex;align-items:center;gap:11px}.sidebar-plan-ring{position:relative;display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px}.sidebar-plan-ring svg{position:absolute;inset:0;width:54px;height:54px;transform:rotate(-90deg)}.sidebar-plan-ring circle{fill:none;stroke:color-mix(in srgb,var(--line) 82%,transparent);stroke-width:3}.sidebar-plan-progress{stroke:#7c3aed!important;stroke-linecap:round;stroke-dasharray:113;stroke-dashoffset:var(--plan-offset);transition:stroke-dashoffset .35s ease,stroke .35s ease}.sidebar-plan-ring.is-limit .sidebar-plan-progress{stroke:var(--brand)!important}.sidebar-plan-ring>b{position:relative;display:inline-block;min-width:2ch;text-align:center;font-size:18px;line-height:1;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:.01em}.sidebar-plan-body strong,.sidebar-plan-body small{display:block}.sidebar-plan-body strong{font-size:13px}.sidebar-plan-body small{margin-top:3px;color:var(--muted);font-size:11px;font-weight:700}
    .theme-switcher { display: grid; gap: 8px; padding: 10px; border-radius: 18px; background: var(--surface-soft); }
    .theme-switcher > span { color: var(--muted); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; }
    .theme-switcher > div { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
    .theme-button { min-height: 36px; padding: 0 10px; border: 0; border-radius: 12px; background: transparent; color: var(--muted); font-weight: 600; cursor: pointer; }
    .theme-button.active { background: var(--surface); color: var(--ink); box-shadow: 0 8px 22px rgba(15, 23, 42, .08); }
    .logout { justify-content: flex-start; gap: 12px; min-height: 46px; padding: 0 14px; color: var(--muted); border-radius: 14px; }
    .logout:hover { background: var(--surface-soft); color: var(--ink); }
    .workspace { min-width: 0; max-width: 100%; overflow: hidden; min-height: calc(100vh - 28px); padding: clamp(24px, 4vw, 48px); background: var(--surface-main); border: 1px solid color-mix(in srgb, var(--line) 70%, transparent); border-radius: 26px; box-shadow: var(--shadow-soft); }
    body.sidebar-collapsed .dashboard { grid-template-columns: 88px minmax(0, 1fr); }
    body.sidebar-collapsed .sidebar { padding: 14px; align-items: center; }
    body.sidebar-collapsed .sidebar-head { width: 100%; justify-content: center; flex-direction: column; }
    body.sidebar-collapsed .sidebar-logo { width: 46px; height: 46px; overflow: visible; justify-content: center; padding: 2px; border-radius: 999px; background: transparent; }
    body.sidebar-collapsed .sidebar-logo-full { display: none !important; }
    body.sidebar-collapsed .sidebar-logo-loop { display: block !important; width: 42px; height: 42px; max-width: none; transform: none; }
    body.sidebar-collapsed .side-link, body.sidebar-collapsed .logout { width: 46px; justify-content: center; padding: 0; }
    body.sidebar-collapsed .side-link span, body.sidebar-collapsed .logout span, body.sidebar-collapsed .theme-switcher > span, body.sidebar-collapsed .theme-button { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    body.sidebar-collapsed .sidebar-bottom { width: 46px; justify-items: center; }
    body.sidebar-collapsed .sidebar-plan { width: 54px; height: 54px; padding: 0; place-items: center; border-radius: 50%; background: var(--surface-soft); }
    body.sidebar-collapsed .sidebar-plan-trigger, body.sidebar-collapsed .sidebar-plan-body { width: 100%; height: 100%; display: grid; place-items: center; }
    body.sidebar-collapsed .sidebar-plan-head, body.sidebar-collapsed .sidebar-plan-body > span:last-child { display: none; }
    body.sidebar-collapsed .sidebar-plan-ring, body.sidebar-collapsed .sidebar-plan-ring svg { width: 50px; height: 50px; }
    body.sidebar-collapsed .sidebar-plan-ring > b { min-width: 2ch; font-size: 17px; line-height: 1; letter-spacing: .01em; }
    body.sidebar-collapsed .theme-switcher { width: 46px; height: 46px; display: grid; place-items: center; padding: 0; }
    body.sidebar-collapsed .theme-switcher::before { content: "◐"; color: var(--muted); font-size: 18px; font-weight: 700; }
    body.sidebar-collapsed .theme-switcher > div { display: none; }
    .topline { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
    .topline h1 { margin: 8px 0 0; font-size: clamp(34px, 4vw, 54px); }
    .manager-status-card { width: min(100%, 300px); display: grid; gap: 7px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 18px; background: color-mix(in srgb, var(--surface) 82%, transparent); }
    .manager-status-card > span { color: var(--muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
    .manager-status-card .form-error { min-height: 14px; margin: 0; font-size: 11px; }
    .manager-status-switch { display: flex; grid-template-columns: none; align-items: center; gap: 10px; margin: 0; color: var(--ink); cursor: pointer; }
    .manager-status-switch input { position: absolute; width: 1px; min-height: 1px; opacity: 0; pointer-events: none; }
    .manager-status-switch strong { font-size: 13px; font-weight: 600; color: color-mix(in srgb, var(--ink) 78%, var(--muted)); }
    .manager-switch-track { position: relative; width: 48px; height: 28px; flex: 0 0 auto; border-radius: 999px; background: #d1d5db; transition: background .18s ease; }
    .manager-switch-track::after { content: ""; position: absolute; top: 3px; left: 3px; width: 22px; height: 22px; border-radius: 50%; background: #fff; transition: transform .18s ease; }
    .manager-status-switch input:checked + .manager-switch-track { background: #2bed4a; }
    .manager-status-switch input:checked + .manager-switch-track::after { transform: translateX(20px); }
    .widget-switcher { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: 16px; margin: 0 0 24px; max-width: 1040px; }
    .widget-card { min-height: 150px; display: grid; align-content: end; gap: 8px; padding: 22px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line); box-shadow: 0 18px 60px rgba(15, 23, 42, 0.06); }
    .widget-card.active { outline: 3px solid color-mix(in srgb, var(--brand) 30%, transparent); }
    .widget-card span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #111827; color: #fff; font-weight: 700; }
    .widget-card strong { font-size: 24px; letter-spacing: -0.04em; }
    .widget-card small { color: var(--muted); font-weight: 500; }
    .steps { display: grid; gap: 16px; min-width: 0; max-width: 100%; }
    .panel { min-width: 0; max-width: 100%; overflow: hidden; padding: 24px; }
    .panel > h2:first-child, .section-head-row h2, .settings-section-head h2 { margin-top: 0; }
    .panel h2 + p { margin-top: 6px; }
    .section-head-row > div > p { margin-bottom: 0; max-width: 760px; }
    .section-head-row > .primary, .section-head-row > .secondary, .settings-section-head > .secondary { flex: 0 0 auto; white-space: nowrap; }
    .step-num { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #111827; color: white; font-weight: 700; }
    .controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; align-items: stretch; }
    .controls > label, .call-block-image-row > label, .review-source-input { min-width: 0; margin: 0; align-self: stretch; }
    .controls > label { grid-template-rows: auto 1fr; }
    .controls > label > input, .controls > label > select { align-self: end; }
    .workday-grid { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
    .chip-check { margin: 0; display: block; font-weight: 600; cursor: pointer; }
    .chip-check input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .chip-check span { display: inline-flex; align-items: center; justify-content: center; min-width: 54px; min-height: 42px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); transition: background .16s ease, color .16s ease, border-color .16s ease; }
    .chip-check input:checked + span { background: var(--brand-btn); border-color: var(--brand-btn); color: #fff; }
    .worktime-controls { grid-template-columns: repeat(3, minmax(240px, 1fr)); margin-top: 12px; max-width: 980px; }
    .analytics-controls { position: relative; grid-template-columns: repeat(4, minmax(180px, 1fr)); margin-top: 18px; }
    .analytics-period-action { display: grid; align-content: end; }
    .analytics-period-action button { width: 100%; min-height: 50px; }
    .analytics-date-field { position: relative; }
    .analytics-date-trigger { width: 100%; min-height: 50px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 15px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); color: var(--ink); font: 750 15px/1 "Gilroy", sans-serif; text-align: left; cursor: pointer; transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
    .analytics-date-trigger:hover, .analytics-date-trigger[aria-expanded="true"] { border-color: color-mix(in srgb, var(--brand) 55%, var(--line)); background: color-mix(in srgb, var(--brand) 4%, var(--surface)); }
    .analytics-date-trigger[aria-expanded="true"] { box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 12%, transparent); }
    .analytics-date-trigger-icon { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 9px; background: color-mix(in srgb, var(--brand) 11%, var(--surface-soft)); color: var(--brand); }
    .analytics-date-trigger-icon svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
    .analytics-date-picker { position: absolute; z-index: 55; top: calc(100% + 10px); width: 316px; max-width: calc(100vw - 32px); padding: 14px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: 0 22px 56px rgba(15, 23, 42, .18); }
    .analytics-date-picker.hidden { display: none; }
    .analytics-date-picker-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
    .analytics-date-picker-title { color: var(--ink); font-size: 15px; font-weight: 900; text-transform: capitalize; }
    .analytics-date-picker-nav { display: flex; gap: 5px; }
    .analytics-date-picker-nav button { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--ink); font: 900 21px/1 sans-serif; cursor: pointer; }
    .analytics-date-picker-nav button:hover { border-color: color-mix(in srgb, var(--brand) 55%, var(--line)); color: var(--brand); }
    .analytics-date-picker-weekdays, .analytics-date-picker-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; }
    .analytics-date-picker-weekdays { margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 850; text-align: center; text-transform: uppercase; }
    .analytics-date-picker-day { position: relative; width: 100%; aspect-ratio: 1; display: grid; place-items: center; border: 0; border-radius: 10px; background: transparent; color: var(--ink); font: 750 13px/1 "Gilroy", sans-serif; cursor: pointer; }
    .analytics-date-picker-day:hover { background: color-mix(in srgb, var(--brand) 11%, var(--surface-soft)); color: var(--brand); }
    .analytics-date-picker-day.is-outside { color: color-mix(in srgb, var(--muted) 42%, transparent); }
    .analytics-date-picker-day.is-today::after { content: ""; position: absolute; bottom: 4px; width: 4px; height: 4px; border-radius: 50%; background: var(--brand); }
    .analytics-date-picker-day.is-in-range { border-radius: 0; background: color-mix(in srgb, var(--brand) 12%, var(--surface-soft)); }
    .analytics-date-picker-day.is-range-start { border-radius: 10px 0 0 10px; }
    .analytics-date-picker-day.is-range-end { border-radius: 0 10px 10px 0; }
    .analytics-date-picker-day.is-selected { border-radius: 10px; background: var(--brand-btn); color: #fff; box-shadow: 0 5px 12px color-mix(in srgb, var(--brand) 26%, transparent); }
    .analytics-date-picker-day.is-selected::after { display: none; }
    .analytics-grid { display: grid; grid-template-columns: repeat(3, minmax(180px, 1fr)); gap: 12px; margin-top: 18px; }
    .analytics-card { min-height: 150px; display: grid; align-content: space-between; gap: 18px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .analytics-card span { color: var(--muted); font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
    .analytics-card strong { font-size: clamp(34px, 6vw, 58px); line-height: 1; letter-spacing: -.06em; }
    .analytics-grid--loss { grid-template-columns: repeat(2, minmax(180px, 1fr)); margin-top: 12px; }
    .analytics-card--loss { min-height: 0; gap: 10px; background: color-mix(in srgb, #f59e0b 7%, var(--surface)); border-color: color-mix(in srgb, #f59e0b 24%, var(--line)); }
    .analytics-card--loss strong { font-size: clamp(28px, 4.5vw, 44px); color: #b45309; }
    .analytics-card--loss em { color: var(--muted); font-size: 12.5px; font-style: normal; font-weight: 600; letter-spacing: -.01em; }
    input[type="date"] { min-height: 50px; color-scheme: light; }
    body[data-theme="dark"] input[type="date"] { color-scheme: dark; }
    .analytics-charts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 16px; }
    .analytics-chart-card { min-height: 300px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); overflow: hidden; }
    .analytics-chart-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
    .analytics-chart-head strong { font-size: 18px; letter-spacing: -.03em; }
    .analytics-chart-head span { color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
    .analytics-line-chart { min-height: 280px; height: 280px; width: 100%; }
    .analytics-sources { margin-top: 16px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: var(--surface); }
    .analytics-sources-head { padding: 14px 16px; font-size: 14px; font-weight: 800; }
    .analytics-sources-scroll { overflow-x: auto; }
    .analytics-sources-table { width: 100%; border-collapse: collapse; font-size: 13px; }
    .analytics-sources-table th { text-align: left; padding: 10px 16px; border-top: 1px solid var(--line); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; white-space: nowrap; }
    .analytics-sources-table td { padding: 11px 16px; border-top: 1px solid var(--line); white-space: nowrap; }
    .analytics-sources-table tbody tr:hover { background: var(--surface-soft); }
    .analytics-sources-table th:nth-child(n+3), .analytics-sources-table td:nth-child(n+3) { text-align: right; }
    .lead2-utm { display: inline-flex; width: fit-content; margin-top: 6px; padding: 4px 10px; border-radius: 999px; background: color-mix(in srgb, var(--brand) 12%, var(--surface-soft)); color: var(--brand-ink); font-size: 12px; font-weight: 700; }
    .lead2-fields { display: grid; gap: 3px; margin-top: 7px; }
    .lead2-field { font-size: 13px; color: var(--muted); }
    .lead2-field span { font-weight: 600; }
    .lead2-field b { color: var(--ink); font-weight: 700; margin-left: 5px; }
    /* CRM-список заявок: карточки с быстрым считыванием контакта и источника. */
    .lead2-list .lead2-row { display:grid; grid-template-columns:46px minmax(0,1fr) auto; gap:14px; align-items:start; padding:16px 18px; border-top:1px solid var(--line); background:var(--surface); transition:background .16s ease,box-shadow .16s ease; }
    .lead2-list .lead2-row:hover { background:color-mix(in srgb,var(--brand) 3%,var(--surface)); box-shadow:inset 3px 0 0 color-mix(in srgb,var(--brand) 65%,transparent); }
    .lead2-list .lead2-row.is-clickable { cursor:pointer; }
    .lead2-list .lead2-ic { width:46px; height:46px; border-radius:15px; box-shadow:inset 0 1px 0 rgba(255,255,255,.72); }
    .lead2-list .lead2-ic svg { width:22px; height:22px; }
    .lead2-list .lead2-main { display:grid; gap:9px; min-width:0; padding-top:1px; }
    .lead2-title-row { display:flex; align-items:start; justify-content:space-between; gap:12px; min-width:0; }
    .lead2-list .lead2-name { display:block; max-width:100%; width:fit-content; padding:0; border:0; background:none; text-align:left; font-family:inherit; cursor:pointer; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ink); font-size:17px; font-weight:800; letter-spacing:-.025em; }.lead2-list .lead2-name:focus-visible { outline:2px solid var(--brand-ink); outline-offset:3px; border-radius:5px; }
    .lead2-list .lead2-meta { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:4px; color:var(--muted); font-size:12px; font-weight:650; }
    .lead2-reason { display:inline-flex; align-items:center; min-height:21px; padding:0 8px; border-radius:999px; background:var(--surface-soft); color:color-mix(in srgb,var(--ink) 70%,var(--muted)); font-weight:750; }
    .lead2-source { display:inline-flex; width:fit-content; align-items:center; min-height:22px; padding:0 8px; border-radius:999px; background:color-mix(in srgb,var(--brand) 10%,var(--surface-soft)); color:#9a3412; font-size:11px; font-weight:800; }
    .lead2-manager { color:var(--muted); font-size:12px; font-weight:600; }.lead2-manager b { color:var(--ink); font-weight:750; }
    .lead2-list .lead2-contacts { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:0; }
    .lead2-list .lead2-compact-contacts { gap:10px; color:var(--ink); font-size:13px; font-weight:750; }.lead2-list .lead2-compact-contacts span + span { padding-left:10px; border-left:1px solid var(--line); }
    .lead2-list .messenger-icon-link { width:34px; height:34px; min-height:34px; flex-basis:34px; background:var(--surface-soft); }.lead2-list .messenger-icon-link img,.lead2-list .messenger-icon-link svg { width:17px; height:17px; }
    .lead2-list .contact-text { min-height:34px; padding:0 2px; color:var(--ink); font-size:13px; font-weight:750; }
    .lead2-list .lead2-msg { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin:0; max-width:720px; padding:9px 11px; border:1px solid color-mix(in srgb,var(--line) 80%,transparent); border-radius:11px; background:var(--surface-soft); color:var(--muted); font-size:12.5px; line-height:1.45; }
    .lead2-list .lead2-page { margin-top:0; color:var(--muted); font-weight:700; }.lead2-list .lead2-page:hover { color:var(--brand-ink); }
    .lead2-list .lead2-side { display:grid; grid-template-columns:auto; justify-items:end; align-content:center; gap:8px; padding-top:1px; }
    .lead2-list .lead2-deal { min-height:34px; padding:0 12px; border-radius:10px; font-size:12px; font-weight:800; background:var(--brand-btn); color:#fff; border-color:var(--brand-btn); box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 22%,transparent); }.lead2-list .lead2-deal:hover { background:var(--brand-btn-hover); }
    .lead2-list .lead2-deal.done { background:color-mix(in srgb,#1d9e75 9%,var(--surface)); color:#0f6e56; border-color:color-mix(in srgb,#1d9e75 18%,var(--line)); box-shadow:none; }
    .lead2-list .lead2-del { width:34px; height:34px; display:grid; place-items:center; border-radius:9px; color:var(--muted); transition:background .14s ease,color .14s ease,opacity .14s ease; }.lead2-list .lead2-del:hover { color:#ef4444; background:color-mix(in srgb,#ef4444 10%,transparent); }@media (hover:hover) { .lead2-list .lead2-del { opacity:0; }.lead2-list .lead2-row:hover .lead2-del, .lead2-list .lead2-row:focus-within .lead2-del { opacity:1; } }
    @media (max-width:720px) { .lead2-list .lead2-row { grid-template-columns:42px minmax(0,1fr); padding:14px; }.lead2-list .lead2-ic { width:42px; height:42px; border-radius:13px; }.lead2-list .lead2-side { grid-column:2; grid-row:2; grid-template-columns:auto auto; justify-content:start; justify-items:start; }.lead2-title-row { align-items:flex-start; flex-direction:column; gap:7px; }.lead2-list .lead2-name { font-size:16px; } }
    .chart-empty,
    .chart-loading { display: grid; place-items: center; min-height: 220px; color: var(--muted); border: 1px dashed var(--line); border-radius: 18px; }
    .chart-loading { border-style: solid; background: color-mix(in srgb, var(--surface-soft) 72%, transparent); }
    .call-widgets-panel { overflow: visible; }
    .widget-create-panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 28px 0 30px; transform-origin: top center; }
    .widget-create-panel.is-opening { animation: widgetCreatePanelIn .22s ease; }
    .widget-create-panel.hidden { display: none; }
    .widget-create-card { position: relative; display: block; min-height: 320px; overflow: hidden; padding: 28px 28px 30px; border: 1px solid color-mix(in srgb, var(--line) 72%, transparent); border-radius: 20px; color: var(--ink); text-align: left; cursor: pointer; isolation: isolate; box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 20px 54px rgba(15,23,42,.06); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
    .widget-create-panel.is-opening .widget-create-card { animation: widgetCreateCardIn .24s ease; }
    .widget-create-panel.is-opening .widget-create-card:nth-child(2) { animation-delay: .04s; }
    .widget-create-card::before { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 74% 18%, rgba(255,255,255,.95), transparent 28%), radial-gradient(circle at 48% 70%, rgba(255,255,255,.62), transparent 35%); }
    .widget-create-card::after { content: ""; position: absolute; inset: 1px; z-index: -1; border-radius: 19px; pointer-events: none; }
    .widget-create-card:hover { transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 26px 68px rgba(15,23,42,.10); }
    .widget-create-card-online { background: linear-gradient(142deg, #fff7f3 0%, #fff1eb 48%, #ffe9dd 100%); border-color: #ffd5c8; }
    .widget-create-card-online::after { background: linear-gradient(135deg, rgba(255,112,67,.13), rgba(255,255,255,.06) 58%); }
    .widget-create-card-online:hover { border-color: #ffbca9; }
    .widget-create-card-booking { background: linear-gradient(145deg, #f8fbff 0%, #f2f7ff 52%, #eaf2ff 100%); border-color: #dfe9f9; }
    .widget-create-card-booking::after { background: linear-gradient(135deg, rgba(40,132,255,.10), rgba(255,255,255,.08) 58%); }
    .widget-create-card-booking:hover { border-color: #cbdcf7; }
    .widget-create-icon { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 18px; background: rgba(255,255,255,.58); box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 18px 36px rgba(15,23,42,.08); }
    .widget-create-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
    .widget-create-card-booking .widget-create-icon { color: #2185f5; }
    .widget-create-card-online .widget-create-icon { color: var(--brand); }
    .widget-create-copy { position: relative; z-index: 2; display: grid; gap: 10px; max-width: 285px; margin-top: 28px; padding-bottom: 58px; }
    .widget-create-copy strong { color: var(--ink); font-size: 24px; line-height: 1.08; letter-spacing: -.045em; font-weight: 900; }
    .widget-create-copy em { font-style: normal; font-size: 17px; line-height: 1.1; font-weight: 900; }
    .widget-create-card-online .widget-create-copy em { color: var(--brand); }
    .widget-create-card-booking .widget-create-copy em { color: #2387f5; }
    .widget-create-copy span { margin-top: 16px; color: color-mix(in srgb, var(--ink) 74%, var(--muted)); font-size: 16px; line-height: 1.42; font-weight: 500; }
    .widget-create-pill { position: absolute; left: 28px; bottom: 28px; z-index: 3; display: inline-flex; align-items: center; gap: 9px; min-height: 38px; padding: 0 17px; border-radius: 999px; font-size: 15px; font-weight: 900; line-height: 1; }
    .widget-create-pill svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
    .widget-create-card-online .widget-create-pill { background: rgba(255,112,67,.13); color: var(--brand); }
    .widget-create-card-booking .widget-create-pill { background: rgba(40,132,255,.13); color: #2387f5; }
    .widget-create-art { position: absolute; z-index: 1; display: block; pointer-events: none; user-select: none; filter: drop-shadow(0 18px 24px rgba(15,23,42,.08)); }
    .widget-create-art-online { right: 8px; bottom: 18px; width: min(42%, 320px); }
    .widget-create-art-booking { right: 10px; bottom: 22px; width: min(39%, 300px); }
    .widget-create-check { position: absolute; right: 26px; bottom: 26px; z-index: 3; display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: linear-gradient(135deg, #36a8ff, #2777f2); color: #fff; box-shadow: 0 16px 28px rgba(39,119,242,.26); }
    .widget-create-check svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 3.1; stroke-linecap: round; stroke-linejoin: round; }
    .call-widgets-list, .departments-list { display: grid; gap: 0; margin-top: 14px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: var(--surface); }
    .call-widgets-list { overflow: visible; }
    .call-widget-card, .department-card { display: grid; grid-template-columns: 14px minmax(180px, 1fr) auto minmax(250px, .62fr) auto auto auto; gap: 14px; align-items: center; min-height: 74px; padding: 14px 16px; border-bottom: 1px solid var(--line); background: var(--surface); cursor: pointer; transition: background .16s ease; }
    .department-card { grid-template-columns: minmax(180px, 1fr) auto; }
    .call-widget-card:last-child, .department-card:last-child { border-bottom: 0; }
    .call-widget-card:first-child { border-top-left-radius: 15px; border-top-right-radius: 15px; }
    .call-widget-card:last-child { border-bottom-left-radius: 15px; border-bottom-right-radius: 15px; }
    .call-widget-card.active, .department-card.active { background: color-mix(in srgb, var(--brand) 7%, var(--surface)); }
    .call-widget-dot { width: 9px; height: 9px; border-radius: 50%; background: #cbd5e1; }
    .call-widget-dot.active { background: #22c55e; box-shadow: 0 0 0 4px rgba(34, 197, 94, .12); }
    .call-widget-dot.muted { background: #94a3b8; }
    .call-widget-main strong, .department-card strong { display: block; font-size: 15px; font-weight: 800; }
    .call-widget-main small, .department-card span { display: block; margin-top: 3px; color: var(--muted); font-size: 13px; font-weight: 600; }
    .call-widget-badge { justify-self: start; padding: 5px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; }
    .call-widget-badge.on { background: color-mix(in srgb, #16a34a 14%, var(--surface-soft)); color: #15803d; }
    .call-widget-badge.off { background: color-mix(in srgb, var(--muted) 16%, var(--surface-soft)); color: var(--muted); }
    body[data-theme="dark"] .call-widget-badge.on { color: #4ade80; }
    .call-widget-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; min-width: 0; }
    .call-widget-category, .call-widget-target { display: inline-flex; align-items: center; gap: 7px; min-height: 30px; max-width: 100%; padding: 0; color: var(--muted); background: transparent; font-size: 13px; font-weight: 700; white-space: nowrap; }
    .call-widget-category svg, .call-widget-target svg { width: 16px; height: 16px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; }
    .call-widget-category { color: var(--muted); }
    .call-widget-target { color: color-mix(in srgb, var(--ink) 82%, var(--muted)); }
    .call-widget-avatar-stack { display: inline-flex; align-items: center; margin-left: 2px; }
    .call-widget-avatar { width: 26px; height: 26px; display: grid; place-items: center; overflow: hidden; border: 2px solid var(--surface); border-radius: 50%; object-fit: cover; font-size: 11px; font-weight: 900; box-shadow: 0 0 0 1px color-mix(in srgb, var(--line) 70%, transparent); }
    .call-widget-avatar + .call-widget-avatar { margin-left: -7px; }
    .call-widget-avatar.more { background: var(--surface-soft); color: var(--muted); }
    .call-widget-menu-wrap { position: relative; justify-self: end; }
    .call-widget-menu { min-width: 34px; padding-inline: 0; font-size: 18px; }
    .call-widget-menu-popover { position: absolute; right: 0; top: calc(100% + 8px); z-index: 10; min-width: 190px; padding: 6px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 18px 40px rgba(15, 23, 42, .14); }
    .call-widget-menu-popover button { width: 100%; min-height: 38px; border: 0; border-radius: 10px; background: transparent; color: var(--ink); text-align: left; font-weight: 700; cursor: pointer; }
    .call-widget-menu-popover button:hover { background: var(--surface-soft); }
    .widget-editor-shell { min-height: calc(100vh - 48px); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; background: color-mix(in srgb, var(--surface) 86%, var(--surface-soft)); }
    .widget-editor-topbar { position: sticky; top: 0; z-index: 6; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; min-height: 74px; padding: 14px 18px; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(14px); }
    .widget-back-button { min-height: 42px; padding-inline: 14px; }
    .widget-editor-title { min-width: 0; }
    .widget-editor-title span { display: block; margin-bottom: 2px; color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
    .widget-editor-title h2 { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: clamp(22px, 3vw, 30px); letter-spacing: -.04em; }
    .widget-editor-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; min-width: 0; }
    .widget-header-status { min-height: 0; margin: 0; white-space: nowrap; }
    .widget-editor-content { display: grid; grid-template-columns: 172px minmax(0, 1fr); min-height: calc(100vh - 122px); }
    .widget-editor-side-nav { position: sticky; top: 74px; align-self: start; display: grid; align-content: start; gap: 6px; min-height: calc(100vh - 122px); padding: 18px 10px; border-right: 1px solid var(--line); background: color-mix(in srgb, var(--surface-soft) 64%, var(--surface)); }
    .widget-editor-side-nav > span { padding: 0 10px 8px; color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
    .widget-editor-side-nav button { min-height: 38px; display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 0; border-radius: 12px; background: transparent; color: var(--muted); font-weight: 700; text-align: left; cursor: pointer; }
    .widget-editor-side-nav button.active,
    .widget-editor-side-nav button:hover { background: var(--surface); color: var(--ink); }
    .widget-editor-side-nav svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .widget-editor-content .widget-settings-layout { width: 100%; min-width: 0; margin: 0; padding: 18px; grid-template-columns: minmax(0, 1fr); align-content: start; }
    .widget-editor-content .widget-editor-section { width: 100%; min-width: 0; max-width: none; overflow: visible; }
    .widget-editor-section { animation: sectionEnter .18s ease both; }
    @keyframes sectionEnter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
    .widget-settings-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); gap: 18px; align-items: start; margin-top: 18px; }
    .widget-main-controls { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
    .ws-section { display: grid; grid-template-columns: minmax(200px, 250px) minmax(0, 1fr); gap: 16px 26px; margin: 14px 0 0; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--surface) 70%, var(--surface-soft)); }
    .ws-side { display: grid; gap: 8px; align-content: start; justify-items: start; }
    .ws-icon { flex: 0 0 auto; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); }
    .ws-icon svg { flex: 0 0 auto; width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .ws-icon--blue { background: rgba(37, 99, 235, .10); color: #2563eb; }
    .ws-side strong { font-size: 16px; }
    .ws-side p { margin: 0; font-size: 13px; color: var(--muted); line-height: 1.45; }
    .ws-fields { display: grid; gap: 0; align-content: start; }
    .ws-fields label { margin: 6px 0 10px; }
    .ws-fields .widget-inherited-note { margin-top: 2px; }
    .ws-hint { margin: -4px 0 4px; font-size: 12px; color: var(--muted); }
    .widget-header-switch { display: inline-flex; align-items: center; margin: 0; }
    @media (max-width: 760px) { .ws-section { grid-template-columns: 1fr; } }
    .widget-design-panel { position: static; }
    .widget-inherited-note,
    .department-worktime-box { margin-top: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
    .widget-inherited-note { display: grid; gap: 6px; }
    .widget-inherited-note strong,
    .department-worktime-box > strong { font-weight: 800; }
    .widget-inherited-note span,
    .department-worktime-box p { margin: 0; color: var(--muted); font-weight: 600; line-height: 1.55; }
    .widget-code-box textarea { width: 100%; max-width: 100%; overflow: auto; font-size: 12px; }
    .call-block-settings { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
    .widget-visual-select { max-width: none; margin: 4px 0 18px; }
    .ws-subtitle { margin: 0 0 18px; color: var(--muted); font-size: 14px; font-weight: 600; }
    .widget-type-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0 0 22px; }
    .widget-type-card { position: relative; display: grid; align-content: start; gap: 6px; padding: 22px 22px 24px; border: 1px solid var(--line); border-radius: 22px; background: var(--surface); text-align: left; cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
    .widget-type-card:hover { border-color: color-mix(in srgb, var(--brand) 40%, var(--line)); box-shadow: 0 16px 40px rgba(15, 23, 42, .08); transform: translateY(-2px); }
    .widget-type-card.selected { border-color: var(--brand); box-shadow: 0 18px 46px rgba(255, 112, 67, .16); }
    .wtc-radio { position: absolute; top: 18px; right: 18px; width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--line); background: var(--surface); transition: border-color .16s ease, background .16s ease; }
    .widget-type-card.selected .wtc-radio { border-color: var(--brand); background: radial-gradient(circle, var(--brand) 0 42%, transparent 47%); }
    .wtc-art { display: block; margin-bottom: 12px; }
    .wtc-art svg { width: 100%; height: auto; display: block; }
    .wtc-art .wtc-win { filter: drop-shadow(0 10px 20px rgba(15, 23, 42, .10)); }
    .wtc-art .wtc-fab { filter: drop-shadow(0 8px 16px rgba(255, 112, 67, .35)); }
    .wtc-name { font-size: 17px; font-weight: 800; letter-spacing: -.02em; }
    .wtc-desc { color: var(--muted); font-size: 13px; font-weight: 600; line-height: 1.4; }
    @media (max-width: 900px) { .widget-type-cards { grid-template-columns: 1fr; } }
    .scenario-block { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
    .scenario-block:first-of-type { margin-top: 8px; padding-top: 0; border-top: 0; }
    .scenario-block h3 { margin: 0 0 12px; font-size: 17px; letter-spacing: -.02em; }
    .scenario-options { display: grid; gap: 10px; max-width: 560px; }
    .scenario-option { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); text-align: left; font-size: 15px; font-weight: 700; color: var(--ink); cursor: pointer; transition: border-color .16s ease, background .16s ease; }
    .scenario-option:hover { border-color: color-mix(in srgb, var(--brand) 40%, var(--line)); }
    .scenario-option.active { border-color: var(--brand); background: color-mix(in srgb, var(--brand) 6%, var(--surface)); }
    .scenario-check { flex: 0 0 auto; width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--line); background: var(--surface); display: grid; place-items: center; transition: border-color .16s ease, background .16s ease; }
    .scenario-option.active .scenario-check { border-color: var(--brand); background: var(--brand); }
    .scenario-option.active .scenario-check::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; }
    .scenario-delay { margin-top: 14px; max-width: 560px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); font-size: 14px; font-weight: 600; color: var(--ink); line-height: 1.5; }
    .scenario-delay input { width: 76px; margin: 0 6px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: var(--ink); font: inherit; font-weight: 800; text-align: center; }
    .scenario-delay-hint { margin: 8px 0 0; max-width: 560px; font-size: 12.5px; color: var(--muted); }
    .scenario-calendar { margin-top: 14px; max-width: 560px; }
    .scenario-calendar .field-label { display: block; margin-bottom: 8px; font-size: 13px; font-weight: 800; color: var(--muted); }
    .calendar-picker.department-picker-empty, .calendar-picker .department-picker-empty { min-height: 58px; }
    .calendar-picker .department-picker-menu { position: static; display: none; margin-top: 8px; opacity: 1; visibility: visible; pointer-events: auto; transform: none; box-shadow: 0 10px 30px rgba(15, 23, 42, .08); }
    .calendar-picker.open .department-picker-menu { display: grid; }
    #callWidgetTarget { display: none; }
    .department-picker { position: relative; width: 100%; }
    .department-picker-button { width: 100%; min-height: 58px; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto auto; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: var(--ink); text-align: left; cursor: pointer; box-shadow: 0 10px 28px rgba(15, 23, 42, .04); transition: border-color .18s ease, box-shadow .18s ease, background .18s ease; }
    .department-picker-button:hover { border-color: color-mix(in srgb, var(--brand) 40%, var(--line)); background: color-mix(in srgb, var(--surface) 88%, var(--surface-soft)); }
    .department-picker.open .department-picker-button { border-color: color-mix(in srgb, var(--brand) 58%, var(--line)); box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand) 14%, transparent); }
    .department-picker-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 13px; background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); }
    .department-picker-icon svg { width: 20px; height: 20px; }
    .department-picker-copy { min-width: 0; display: grid; gap: 3px; }
    .department-picker-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink); font-size: 14px; font-weight: 900; }
    .department-picker-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); font-size: 12px; font-weight: 700; }
    .department-picker-stack { display: flex; align-items: center; justify-content: flex-end; min-width: 0; padding-left: 6px; }
    .department-picker-avatar { width: 30px; height: 30px; display: grid; place-items: center; overflow: hidden; border: 2px solid var(--surface); border-radius: 50%; object-fit: cover; font-size: 12px; font-weight: 900; box-shadow: 0 0 0 1px color-mix(in srgb, var(--line) 70%, transparent); }
    .department-picker-avatar + .department-picker-avatar { margin-left: -8px; }
    .department-picker-avatar.more { background: var(--surface-soft); color: var(--muted); }
    .department-picker-chevron { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 12px; background: var(--surface-soft); color: var(--muted); line-height: 1; transition: transform .2s ease, color .18s ease, background .18s ease; }
    .department-picker-chevron svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.7; stroke-linecap: round; stroke-linejoin: round; }
    .department-picker.open .department-picker-chevron { background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); }
    .department-picker.open .department-picker-chevron { transform: rotate(180deg); }
    .department-picker-menu { position: absolute; left: 0; right: 0; top: calc(100% + 8px); z-index: 40; display: grid; gap: 6px; max-height: 320px; overflow: auto; padding: 8px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: 0 24px 70px rgba(15, 23, 42, .16); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-6px) scale(.985); transform-origin: top center; transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
    .department-picker.open .department-picker-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0) scale(1); }
    .department-picker-option { width: 100%; min-height: 62px; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 11px; padding: 9px 10px; border: 0; border-radius: 14px; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
    .department-picker-option:hover, .department-picker-option.active { background: var(--surface-soft); }
    .department-picker-option.active .department-picker-icon { background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); }
    .calendar-picker-create { margin-top: 4px; border: 1px dashed color-mix(in srgb, var(--brand) 48%, var(--line)); background: color-mix(in srgb, var(--brand) 6%, var(--surface)); }
    .calendar-picker-create:hover { border-color: var(--brand); background: color-mix(in srgb, var(--brand) 11%, var(--surface)); }
    .calendar-picker-create .department-picker-icon,
    .calendar-picker-create-button .department-picker-icon { background: var(--brand); color: #fff; box-shadow: 0 8px 18px color-mix(in srgb, var(--brand) 24%, transparent); }
    .calendar-picker-create .department-picker-copy strong,
    .calendar-picker-create-button .department-picker-copy strong { color: var(--brand); }
    .calendar-picker-create-label { padding: 7px 10px; border-radius: 999px; background: color-mix(in srgb, var(--brand) 13%, var(--surface)); color: var(--brand); font-size: 11px; font-weight: 900; }
    .calendar-picker-create-button { border-style: dashed; border-color: color-mix(in srgb, var(--brand) 58%, var(--line)); background: linear-gradient(135deg, color-mix(in srgb, var(--brand) 8%, var(--surface)), var(--surface)); box-shadow: none; }
    .calendar-picker-create-button:hover { border-color: var(--brand); background: color-mix(in srgb, var(--brand) 11%, var(--surface)); }
    .calendar-picker-create-button .department-picker-chevron { background: var(--brand); color: #fff; }
    .department-picker-empty { min-height: 58px; display: flex; align-items: center; gap: 12px; padding: 12px; border: 1px dashed var(--line); border-radius: 16px; background: var(--surface-soft); color: var(--muted); font-size: 13px; font-weight: 700; }
    .widget-visual-select .field-label { display: block; font-size: 13px; font-weight: 800; color: var(--muted); margin-bottom: 8px; }
    .seg-control { display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 4px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); }
    .seg-control button { border: 0; background: transparent; padding: 10px 18px; border-radius: 10px; font-weight: 700; font-size: 14px; color: var(--muted); cursor: pointer; transition: background .15s, color .15s; }
    .seg-control button:hover { color: var(--ink); }
    .seg-control button.active { background: var(--surface); color: var(--ink); box-shadow: 0 1px 4px rgba(15,23,42,.10); }
    .appearance-code-box { margin-top: 18px; }
    .booking-appearance-settings { display: grid; gap: 14px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
    .booking-settings-tabs { display: flex; gap: 8px; width: fit-content; max-width: 100%; margin: 0 0 16px; padding: 5px; overflow: auto; border-radius: 14px; background: var(--surface-soft); }
    .booking-settings-tab { min-height: 36px; padding: 0 14px; border: 0; border-radius: 11px; background: transparent; color: var(--muted); font-weight: 800; white-space: nowrap; cursor: pointer; }
    .booking-settings-tab.active { background: var(--surface); color: var(--ink); box-shadow: 0 2px 8px rgba(16, 24, 40, .06); }
    .booking-settings-step { display: none; }
    .booking-settings-step.active { display: block; }
    .booking-settings-layout { display: grid; grid-template-columns: minmax(310px, .68fr) minmax(0, 1.32fr); gap: 16px; align-items: start; width: 100%; min-width: 0; }
    .booking-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-content: start; }
    .booking-settings-card { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .booking-settings-card.full { grid-column: 1 / -1; }
    .booking-settings-card h3 { margin: 0 0 10px; font-size: 16px; line-height: 1.18; letter-spacing: -.03em; }
    .booking-settings-card p { margin: 0 0 12px; }
    .booking-settings-card label { gap: 7px; margin-bottom: 10px; font-size: 13px; line-height: 1.25; }
    .booking-settings-card input, .booking-settings-card select, .booking-settings-card textarea { min-height: 42px; padding: 0 12px; border-radius: 13px; font-size: 14px; }
    .booking-settings-card textarea { min-height: 126px; padding: 12px; line-height: 1.35; resize: vertical; }
    .booking-scenario-layout { display: grid; gap: 14px; max-width: 920px; }
    .booking-scenario-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
    .booking-scenario-card { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: 0 12px 28px rgba(15, 23, 42, .045); }
    .booking-scenario-card.full { grid-column: 1 / -1; }
    .booking-scenario-card h3 { margin: 0 0 8px; font-size: 17px; line-height: 1.2; letter-spacing: -.03em; }
    .booking-scenario-card p { margin: 0; color: var(--muted); font-size: 13px; font-weight: 700; line-height: 1.45; }
    .booking-scenario-head { display: flex; gap: 12px; align-items: flex-start; margin-bottom: 14px; }
    .booking-scenario-choice { width: fit-content; max-width: 100%; }
    .booking-scenario-choice button.active { background: var(--brand-btn); color: #fff; box-shadow: 0 8px 20px rgba(209, 72, 26, .22); }
    .booking-scenario-card .booking-scenario-note { margin: 14px 0 0; padding: 0 0 0 12px; border-left: 2px solid color-mix(in srgb, var(--brand) 45%, var(--line)); color: var(--muted); font-size: 13px; font-weight: 600; line-height: 1.45; }
    .booking-external-note { border-color: color-mix(in srgb, var(--brand) 24%, var(--line)); background: color-mix(in srgb, var(--brand) 6%, var(--surface)); }
    .booking-duration-grid { display: grid; gap: 12px; margin-top: 12px; }
    .booking-duration-field { display: grid; gap: 7px; color: var(--ink); font-size: 13px; font-weight: 900; }
    .booking-duration-control { display: grid; grid-template-columns: minmax(74px, 1fr) 112px; gap: 8px; align-items: center; }
    .booking-duration-control input, .booking-duration-control select { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font: 800 14px/1.2 "Gilroy", sans-serif; }
    .booking-photo-row { display: flex; align-items: stretch; gap: 10px; }
    .booking-photo-preview { width: 58px; height: 58px; flex: 0 0 auto; border: 3px solid var(--surface-soft); border-radius: 16px; background: linear-gradient(145deg, var(--brand), #d81308); background-position: center; background-size: cover; }
    .booking-photo-preview.has-photo { background-color: var(--surface); background-repeat: no-repeat; background-size: contain; }
    .booking-upload { min-height: 58px; flex: 1; display: grid; place-items: center; min-width: 0; margin: 0; padding: 0 10px; border: 1px dashed color-mix(in srgb, var(--muted) 45%, var(--line)); border-radius: 14px; background: var(--surface-soft); color: var(--muted); font-size: 13px; font-weight: 800; text-align: center; overflow-wrap: anywhere; cursor: pointer; }
    .booking-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .booking-check { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 9px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
    .booking-check span { display: grid; gap: 3px; }
    .booking-check strong { font-size: 13px; }
    .booking-check small { color: var(--muted); font-size: 12px; font-weight: 600; }
    .booking-check input { width: 20px; min-height: 20px; flex: 0 0 auto; }
    .booking-field-builder { display: grid; gap: 10px; }
    .booking-field-item { display: grid; gap: 10px; padding: 14px; border: 0; border-radius: 16px; background: color-mix(in srgb, var(--surface-soft) 55%, var(--surface)); box-shadow: none; }
    .booking-field-main { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(135px, .75fr) auto 32px; gap: 8px; align-items: end; }
    .booking-field-main label { min-width: 0; margin: 0; }
    .booking-field-main label > span { color: var(--muted); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
    .booking-field-item input:not([type="checkbox"]), .booking-field-item select { min-height: 38px; padding: 7px 11px; border-radius: 11px; background: var(--surface); font-size: 13px; }
    .booking-field-required { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 38px; margin: 0; padding: 0 10px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface-soft); color: var(--muted); font-size: 11px; font-weight: 900; text-transform: uppercase; white-space: nowrap; }
    .booking-field-required input { appearance: none; width: 18px; height: 18px; min-height: 18px; display: grid; place-items: center; flex: 0 0 auto; margin: 0; padding: 0; border: 1px solid color-mix(in srgb, var(--muted) 40%, var(--line)); border-radius: 6px; background: var(--surface); }
    .booking-field-required input:checked { border-color: var(--brand); background: var(--brand); }
    .booking-field-required input:checked::after { content: ""; width: 5px; height: 10px; margin-top: -2px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
    .booking-field-main > .icon-btn { width: 32px; height: 32px; min-height: 32px; align-self: center; padding: 0; border: 0; border-radius: 10px; background: var(--surface-soft); color: var(--muted); font-size: 18px; font-weight: 900; line-height: 1; cursor: pointer; }
    .booking-field-main > .icon-btn:hover { background: color-mix(in srgb, var(--brand) 12%, var(--surface-soft)); color: var(--brand); }
    .booking-field-options { display: grid; gap: 9px; padding: 12px; border: 0; border-radius: 13px; background: color-mix(in srgb, var(--brand) 7%, var(--surface)); }
    .booking-field-options-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    .booking-field-options-head strong { font-size: 13px; letter-spacing: -.01em; }
    .booking-option-row { display: grid; grid-template-columns: minmax(0, 1fr) 34px; gap: 8px; align-items: center; }
    .booking-field-options small { color: var(--muted); font-weight: 600; }
    .booking-field-head { display: flex; align-items: center; gap: 10px; }
    .booking-field-tag { font-size: 11px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; color: var(--muted); }
    .booking-field-head .booking-field-required { margin-left: auto; }
    .booking-field-head .icon-btn { width: 30px; height: 30px; min-height: 30px; flex: 0 0 auto; padding: 0; border: 0; border-radius: 9px; background: var(--surface-soft); color: var(--muted); font-size: 17px; font-weight: 900; line-height: 1; cursor: pointer; }
    .booking-field-head .icon-btn:hover { background: color-mix(in srgb, #ef4444 14%, var(--surface-soft)); color: #ef4444; }
    .booking-field-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 10px; }
    .booking-field-grid .bfield { display: grid; gap: 6px; margin: 0; min-width: 0; }
    .booking-field-grid .bfield > span { font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
    .booking-field-item select[data-booking-field-type], .booking-field-item select[data-lead-field-type] { appearance: none; -webkit-appearance: none; padding-right: 30px; 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='%23667085' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>"); background-repeat: no-repeat; background-position: right 11px center; cursor: pointer; }
    .booking-field-item .bfield-full { display: grid; gap: 6px; margin: 0; min-width: 0; }
    .booking-field-item .bfield-full > span { font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
    .lead-edit-tabs { margin: 0 0 16px; }
    .lead-add-field { position: relative; margin-top: 12px; }
    .lead-add-menu { position: absolute; z-index: 30; left: 0; bottom: calc(100% + 6px); max-height: min(300px, 52vh); min-width: 220px; display: none; flex-direction: column; overflow-y: auto; padding: 6px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 22px 60px rgba(15,23,42,.16); }
    .lead-add-field.open .lead-add-menu { display: flex; }
    .lead-add-menu button { min-height: 40px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; color: var(--ink); font: 600 14px/1 "Gilroy", sans-serif; text-align: left; cursor: pointer; }
    .lead-add-menu button:hover { background: var(--surface-soft); }
    .lead-form-button-label { display: grid; gap: 6px; margin-top: 16px; color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-form-button-label input { width: 100%; min-height: 44px; padding: 0 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font: 500 14px/1.2 "Gilroy", sans-serif; }
    .lead-design-controls { position: relative; display: grid; gap: 14px; max-width: 560px; }
    .lead-color-card { display: grid; gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: 0 14px 34px rgba(15,23,42,.05); }
    .call-block-controls .lead-color-card { height: 100%; box-shadow: none; }
    .booking-settings-card .lead-color-card { height: auto; box-shadow: none; }
    .booking-settings-card .lead-color-card + .lead-color-card { margin-top: 12px; }
    .call-block-controls .block-classic-only { min-width: 0; }
    .lead-color-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .lead-color-card-head strong { color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-color-card-head select, .custom-color-head select { min-height: 36px; padding: 0 34px 0 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); color: var(--ink); font: 800 13px/1 "Gilroy", sans-serif; appearance: none; -webkit-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='%23667085' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>"); background-repeat: no-repeat; background-position: right 12px center; cursor: pointer; }
    .lead-color-input-row { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 10px; align-items: center; }
    .lead-color-dot { width: 48px; height: 48px; padding: 0; border: 3px solid var(--surface); border-radius: 50%; background: #ff7043; box-shadow: 0 0 0 1px var(--line), 0 10px 24px rgba(15,23,42,.12); cursor: pointer; }
    .lead-color-dot:hover { box-shadow: 0 0 0 1px var(--line), 0 0 0 4px color-mix(in srgb, var(--accent) 20%, transparent), 0 12px 28px rgba(15,23,42,.16); }
    .lead-color-input-row input { width: 100%; min-height: 44px; padding: 0 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font: 800 14px/1.2 "Gilroy", sans-serif; }
    .lead-radius-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .lead-radius-grid label { display: grid; gap: 8px; min-width: 0; color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-radius-grid input { width: 100%; min-height: 44px; padding: 0 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font: 800 14px/1.2 "Gilroy", sans-serif; }
    .custom-color-popover { position: fixed; z-index: 3000; width: min(300px, calc(100vw - 24px)); padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: 0 24px 60px rgba(15,23,42,.24); }
    .custom-color-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px; border-bottom: 1px solid var(--line); }
    .custom-color-head select { min-height: 32px; font-size: 12px; }
    .custom-color-close { width: 32px; height: 32px; min-height: 32px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: var(--muted); font-size: 24px; line-height: 1; cursor: pointer; }
    .custom-color-close:hover { background: var(--surface-soft); color: var(--ink); }
    .gradient-editor-row { display: grid; grid-template-columns: 24px minmax(0, 1fr) 24px 76px; gap: 8px; align-items: center; padding: 10px; border-bottom: 1px solid var(--line); }
    .gradient-stop { width: 24px; height: 24px; min-height: 24px; padding: 0; border: 3px solid var(--surface); border-radius: 50%; background: #ff7043; box-shadow: 0 0 0 1px var(--line); cursor: pointer; }
    .gradient-stop.active { box-shadow: 0 0 0 2px #2563eb, 0 0 0 5px color-mix(in srgb, #2563eb 12%, transparent); }
    .gradient-line { height: 14px; border-radius: 999px; background: linear-gradient(90deg, #ff7043, #ffb199); box-shadow: inset 0 0 0 1px rgba(15,23,42,.08); }
    .gradient-editor-row label { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 900; }
    .gradient-editor-row input { width: 46px; min-height: 30px; padding: 0 7px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: var(--ink); font: 800 12px/1 "Gilroy", sans-serif; }
    .custom-color-plane { position: relative; height: 138px; background: linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(var(--picker-hue, 16), 100%, 50%)); cursor: crosshair; }
    .custom-color-plane span { position: absolute; left: var(--picker-sat, 100%); top: var(--picker-val, 50%); width: 16px; height: 16px; border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px rgba(15,23,42,.35), 0 6px 18px rgba(15,23,42,.24); transform: translate(-50%, -50%); pointer-events: none; }
    .custom-hue-slider { display: block; width: calc(100% - 24px); height: 14px; margin: 12px 12px 11px; appearance: none; -webkit-appearance: none; border-radius: 999px; background: linear-gradient(90deg, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00); box-shadow: inset 0 0 0 1px rgba(15,23,42,.08); outline: none; cursor: pointer; }
    .custom-hue-slider::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 18px; height: 18px; border: 3px solid #fff; border-radius: 50%; background: hsl(var(--picker-hue, 16), 100%, 50%); box-shadow: 0 0 0 1px rgba(15,23,42,.22), 0 8px 18px rgba(15,23,42,.2); }
    .custom-hue-slider::-moz-range-thumb { width: 18px; height: 18px; border: 3px solid #fff; border-radius: 50%; background: hsl(var(--picker-hue, 16), 100%, 50%); box-shadow: 0 0 0 1px rgba(15,23,42,.22), 0 8px 18px rgba(15,23,42,.2); }
    .custom-color-code-row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: center; padding: 0 12px 11px; }
    .custom-color-code-row span { color: var(--muted); font-size: 12px; font-weight: 900; letter-spacing: .04em; }
    .custom-color-code-row input { min-height: 36px; padding: 0 10px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface); color: var(--ink); font: 900 14px/1 "Gilroy", sans-serif; text-transform: uppercase; }
    .custom-saved-colors { display: flex; flex-wrap: wrap; gap: 8px; padding: 10px 12px 11px; border-top: 1px solid var(--line); }
    .custom-saved-colors button { width: 24px; height: 24px; min-height: 24px; padding: 0; border: 3px solid var(--surface); border-radius: 50%; box-shadow: 0 0 0 1px var(--line); cursor: pointer; }
    .booking-option-row { display: grid; grid-template-columns: 1fr 30px; gap: 8px; align-items: center; }
    .booking-option-row .icon-btn { width: 30px; height: 30px; min-height: 30px; padding: 0; border: 0; border-radius: 9px; background: var(--surface); color: var(--muted); font-size: 16px; font-weight: 900; line-height: 1; cursor: pointer; }
    .inline-calendar-settings .booking-field-grid { grid-template-columns: 1fr; }
    .secondary.tiny { min-height: 30px; padding: 0 10px; border-radius: 10px; font-size: 12px; }
    .booking-settings-preview-wide { position: sticky; top: 22px; min-width: 0; max-width: 100%; padding: 14px; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: var(--shadow-soft); }
    .booking-preview-label { margin-bottom: 12px; color: var(--muted); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .07em; }
    .booking-preview, .booking-form-preview, .real-calendar-preview, .form-preview-card { width: 100%; min-width: 0; }
    .real-calendar-preview, .form-preview-card { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
    .rc-main { display: grid; grid-template-columns: minmax(150px, .72fr) minmax(250px, 1fr) minmax(138px, .58fr); min-height: 390px; }
    .rc-info { min-width: 0; padding: 18px 16px; border-right: 1px solid var(--line); }
    .rc-logo { width: 22px; height: 22px; display: grid; place-items: center; margin-bottom: 10px; overflow: hidden; border-radius: 8px; background: linear-gradient(145deg, var(--booking-accent, #ff7043), #d81308); color: #fff; font-size: 13px; font-weight: 900; }
    .rc-logo.has-image { width: 42px; height: 42px; padding: 4px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); box-shadow: 0 8px 18px rgba(15, 23, 42, .08); }
    .rc-logo img { width: 100%; height: 100%; object-fit: contain; display: block; }
    .rc-company { margin-bottom: 10px; color: var(--muted); font-size: 13px; font-weight: 900; }
    .rc-title { margin: 0 0 12px; font-size: 20px; line-height: 1.12; letter-spacing: -.05em; }
    .rc-desc { margin-bottom: 20px; color: color-mix(in srgb, var(--ink) 86%, var(--muted)); font-size: 13px; line-height: 1.32; white-space: pre-line; }
    .rc-meta { display: flex; align-items: center; gap: 8px; margin-top: 12px; color: color-mix(in srgb, var(--ink) 84%, var(--muted)); font-size: 14px; font-weight: 700; }
    .rc-calendar { min-width: 0; padding: 18px 16px 16px; border-right: 1px solid var(--line); }
    .rc-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
    .rc-month { font-size: 16px; font-weight: 900; letter-spacing: -.02em; }
    .rc-month span { color: var(--muted); font-weight: 500; }
    .rc-arrows { color: #9aa3b2; font-size: 23px; font-weight: 900; letter-spacing: 8px; }
    .rc-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; text-align: center; }
    .rc-dow { padding: 6px 0 10px; color: var(--ink); font-size: 12px; font-weight: 800; }
    .rc-day { min-height: 40px; display: grid; place-items: center; position: relative; border-radius: 9px; color: #b7bec8; font-size: 14px; font-weight: 500; }
    .rc-day.free { background: #e4e7eb; color: #111; font-weight: 700; }
    .rc-day.active { background: var(--booking-accent, #ff7043); color: #fff; box-shadow: 0 10px 25px rgba(255, 112, 67, .23); }
    .rc-day.dot::after { content: ""; position: absolute; left: 50%; bottom: 4px; width: 4px; height: 4px; border-radius: 50%; background: var(--booking-accent, #ff7043); transform: translateX(-50%); }
    .rc-jul { align-self: start; margin-top: -4px; padding: 2px 7px; border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-size: 11px; font-weight: 900; }
    .rc-times { min-width: 0; padding: 18px 14px 14px; }
    .rc-times-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
    .rc-date { font-size: 15px; font-weight: 900; }
    .rc-slot { height: 38px; display: grid; place-items: center; margin-bottom: 8px; border: 1px solid #cfd5dd; border-radius: 10px; background: var(--surface); color: #25282d; font-size: 14px; font-weight: 700; }
    .rc-slot.active { border-color: transparent; background: var(--booking-button, #ff7043); color: #fff; }
    .rc-footer { padding: 14px; border-top: 1px solid var(--line); text-align: center; font-size: 20px; font-weight: 900; letter-spacing: -.05em; }
    .fp-main { display: grid; grid-template-columns: 250px minmax(0, 1fr); min-height: 620px; }
    .fp-left { padding: 22px 18px; border-right: 1px solid var(--line); }
    .fp-form { min-width: 0; padding: 22px; }
    .fp-form label { display: grid; gap: 7px; margin: 0 0 13px; font-weight: 800; }
    .fp-form input, .fp-form select, .fp-form textarea { min-height: 36px; padding: 0 10px; border: 1px solid color-mix(in srgb, var(--muted) 30%, var(--line)); border-radius: 10px; background: var(--surface); color: var(--ink); font: 14px Gilroy, Gilroy, sans-serif; }
    .fp-form textarea { min-height: 72px; padding: 10px; }
    .fp-form button { min-height: 40px; padding: 0 16px; border: 0; border-radius: 10px; background: var(--booking-button, #ff7043); color: #fff; font-weight: 900; }
    .calendar-page-card { overflow: visible; }
    .calendar-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; align-items: start; margin-top: 18px; }
    @media (max-width: 1200px) { .calendar-layout { grid-template-columns: 1fr; } }
    @media (max-width: 860px) { .home-period-switch button, .theme-button { min-height: 44px; } .home-period-switch { padding: 5px; } }
    .toolbar { display: flex; align-items: center; justify-content: flex-start; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
    .toolbar .view-switch { margin-left: auto; }
    .calendar-today-button { min-height: 34px; padding: 0 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--muted); font-size: 13px; font-weight: 700; cursor: pointer; transition: color .16s ease, border-color .16s ease; }
    .calendar-today-button:hover { color: var(--ink); border-color: color-mix(in srgb, var(--brand) 45%, var(--line)); }
    .month-title { display: flex; align-items: center; gap: 12px; font-size: 18px; font-weight: 900; letter-spacing: -.03em; }
    .arrow { width: 32px; min-height: 32px; height: 32px; padding: 0; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--muted); cursor: pointer; font-size: 18px; }
    .view-switch { display: flex; gap: 4px; padding: 4px; border-radius: 12px; background: var(--surface-soft); }
    .view-switch button { min-height: 31px; padding: 0 12px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font-weight: 800; cursor: pointer; }
    .view-switch .on { background: var(--surface); color: var(--ink); box-shadow: 0 2px 8px rgba(16, 24, 40, .06); }
    .calendar { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .weekdays, .days { display: grid; grid-template-columns: repeat(7, 1fr); }
    .weekdays div { padding: 12px 10px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface-soft); color: var(--muted); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
    .weekdays div:last-child { border-right: 0; }
    .day { min-height: 124px; padding: 10px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface); color: var(--ink); position: relative; text-align: left; cursor: pointer; transition: background .16s ease; }
    .day:nth-child(7n) { border-right: 0; }
    .day:hover { background: color-mix(in srgb, var(--brand) 4%, var(--surface)); }
    .day.muted { background: color-mix(in srgb, var(--surface-soft) 62%, var(--surface)); color: color-mix(in srgb, var(--muted) 54%, transparent); cursor: default; }
    .day.selected { outline: 2px solid color-mix(in srgb, var(--brand) 55%, transparent); outline-offset: -2px; background: color-mix(in srgb, var(--brand) 6%, var(--surface)); }
    .day-number { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; font-size: 13px; font-weight: 900; }
    .day.today .num { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; background: var(--brand); color: #fff; box-shadow: 0 8px 18px color-mix(in srgb, var(--brand) 24%, transparent); }
    .badge { display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 999px; background: color-mix(in srgb, #16a34a 12%, var(--surface-soft)); color: #087443; font-size: 11px; font-weight: 900; white-space: nowrap; }
    .badge.busy { background: color-mix(in srgb, var(--brand) 13%, var(--surface-soft)); color: var(--brand-ink); }
    body[data-theme="dark"] .badge { color: #6ee7a0; }
    body[data-theme="dark"] .badge.busy { color: var(--brand-ink); }
    body[data-theme="dark"] .badge.off { color: var(--muted); }
    .settings-autosave-hint { margin: 6px 0 0; font-size: 13px; color: var(--muted); }
    .support-chat__titles { display: grid; gap: 2px; justify-items: center; }
    .support-chat__subtitle { font-size: 12px; font-weight: 600; color: var(--muted); white-space: nowrap; }
    .dep2-er-link { color: var(--brand-ink); font-weight: 700; text-decoration: underline; cursor: pointer; }
    .dep2-er-link:hover { color: var(--brand-btn-hover); }
    .busy-list, .calendar-list { display: grid; gap: 6px; }
    .event-chip { padding: 7px 8px; overflow: hidden; border-radius: 10px; background: var(--surface-soft); color: color-mix(in srgb, var(--ink) 78%, var(--muted)); font-size: 12px; font-weight: 800; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
    .event-chip.busy { background: color-mix(in srgb, var(--brand) 12%, var(--surface-soft)); color: var(--brand-ink); }
    .event-chip.booking { background: color-mix(in srgb, #16a34a 13%, var(--surface-soft)); color: #0f7a44; }
    body[data-theme="dark"] .event-chip.booking { color: #6ee7a0; }
    .time-combo { position: relative; }
    .time-combo-list { position: absolute; top: calc(100% + 6px); left: 0; right: 0; min-width: 150px; max-height: 236px; overflow: auto; padding: 4px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); box-shadow: 0 16px 40px rgba(15, 23, 42, .16); z-index: 30; }
    .time-combo-list.hidden { display: none; }
    .time-combo-item { width: 100%; display: block; padding: 8px 10px; border: 0; border-radius: 8px; background: transparent; color: var(--ink); font: inherit; font-size: 14px; text-align: left; cursor: pointer; white-space: nowrap; }
    .time-combo-item:hover { background: var(--surface-soft); }
    .time-combo-item.on { background: color-mix(in srgb, var(--brand) 10%, var(--surface)); font-weight: 700; }
    .cal-col { user-select: none; }
    .cal-drag-select { position: absolute; left: 4px; right: 4px; border-radius: 8px; background: color-mix(in srgb, var(--brand) 16%, transparent); border: 1.5px dashed var(--brand); z-index: 5; pointer-events: none; }
    .calendar-repeat-check { margin: 2px 0; }
    .busy-item-actions { display: flex; align-items: center; gap: 6px; flex: none; }
    .busy-series-del { border: 1px solid var(--line); background: var(--surface); color: var(--muted); border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 700; cursor: pointer; white-space: nowrap; }
    .busy-series-del:hover { color: #ef4444; border-color: #ef4444; }
    .meeting[data-calendar-open-date] { cursor: pointer; border-radius: 12px; transition: background .14s; }
    .meeting[data-calendar-open-date]:hover { background: var(--surface-soft); }
    .event-chip.more { background: var(--surface-soft); color: var(--muted); text-align: center; }
    .side-stack { display: flex; flex-direction: column; gap: 14px; }
    .calendar-upcoming-card { margin-top: 14px; }
    .mini-card { padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .mini-title { margin: 0 0 12px; font-size: 16px; letter-spacing: -.03em; }
    .selected-date { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); }
    .selected-date strong { font-size: 15px; }
    .selected-date span { color: var(--muted); font-size: 12px; font-weight: 800; }
    .field { display: grid; gap: 7px; margin-bottom: 12px; }
    .field label { color: color-mix(in srgb, var(--ink) 78%, var(--muted)); font-size: 13px; font-weight: 900; }
    .time-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
    .quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .busy-block { display: grid; gap: 12px; padding-top: 16px; margin-top: 16px; border-top: 1px solid var(--line); }
    #busyDate + .busy-block { gap: 10px; padding-top: 0; margin-top: 0; border-top: 0; }
    .busy-block .field { margin: 0; }
    .busy-block .field label { margin: 0; }
    .busy-block .time-row { margin: 0; }
    .busy-subhead { color: var(--muted); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
    #dayOffButton { margin-top: 12px; }
    .busy-items { display: flex; flex-direction: column; gap: 8px; margin-top: 10px; }
    .busy-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
    .busy-item strong { display: block; margin-bottom: 3px; font-size: 13px; }
    .busy-item span { color: var(--muted); font-size: 12px; line-height: 1.25; }
    .busy-item .field-type-pill { display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 999px; background: color-mix(in srgb, #16a34a 13%, var(--surface-soft)); color: #0f7a44; font-size: 11px; font-weight: 900; white-space: nowrap; }
    body[data-theme="dark"] .busy-item .field-type-pill { color: #6ee7a0; }
    .remove { width: 30px; height: 30px; min-height: 30px; padding: 0; border: 0; border-radius: 10px; background: color-mix(in srgb, #ef4444 10%, var(--surface-soft)); color: #ef4444; cursor: pointer; font-weight: 900; transition: background .14s ease; }
    .remove:hover { background: color-mix(in srgb, #ef4444 18%, var(--surface-soft)); }
    .calendar-empty-note { padding: 10px 0; color: var(--muted); font-weight: 800; }
    .meeting { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-top: 1px solid var(--line); }
    .meeting:first-child { border-top: 0; padding-top: 0; }
    .timebox { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: var(--surface-soft); color: color-mix(in srgb, var(--ink) 70%, var(--muted)); font-size: 11px; font-weight: 900; line-height: 1.05; text-align: center; }
    .meeting-title { margin-bottom: 4px; font-weight: 900; }
    .meeting-meta { color: var(--muted); font-size: 12px; line-height: 1.35; }
    .calendar-event { display: grid; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .calendar-event.compact { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
    .calendar-event strong, .calendar-event b { display: block; font-weight: 800; }
    .calendar-event small { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; font-weight: 600; }
    .calendar-event p { margin: 0; color: var(--muted); line-height: 1.45; }
    .calendar.week-mode .day { min-height: 260px; }
    .calendar.day-mode .weekdays, .calendar.day-mode .days { grid-template-columns: 1fr; }
    .calendar.day-mode .weekdays div { border-right: 0; }
    .calendar.day-mode .day { min-height: 380px; border-right: 0; }
    .calendar.day-mode .busy-list { max-width: 620px; }
    .calendar.day-mode .event-chip { white-space: normal; font-size: 14px; padding: 10px 12px; }
    .day.dayoff { background: color-mix(in srgb, var(--surface-soft) 45%, var(--surface)); }
    .day .event-chip { padding: 5px 6px; font-size: 11px; }
    .badge.off { background: var(--surface-soft); color: var(--muted); }
    .calendar.week-mode, .calendar.day-mode { overflow: auto; max-height: min(70vh, 660px); overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--brand) 45%, var(--line)) transparent; }
    .calendar.week-mode::-webkit-scrollbar, .calendar.day-mode::-webkit-scrollbar { width: 8px; height: 8px; }
    .calendar.week-mode::-webkit-scrollbar-track, .calendar.day-mode::-webkit-scrollbar-track { background: transparent; }
    .calendar.week-mode::-webkit-scrollbar-thumb, .calendar.day-mode::-webkit-scrollbar-thumb { border-radius: 999px; background: color-mix(in srgb, var(--brand) 42%, var(--line)); border: 2px solid var(--surface); background-clip: padding-box; }
    .calendar.week-mode::-webkit-scrollbar-thumb:hover, .calendar.day-mode::-webkit-scrollbar-thumb:hover { background: color-mix(in srgb, var(--brand) 62%, var(--line)); background-clip: padding-box; }
    .calendar.week-mode::-webkit-scrollbar-corner, .calendar.day-mode::-webkit-scrollbar-corner { background: transparent; }
    .calendar.week-mode .weekdays, .calendar.day-mode .weekdays { position: sticky; top: 0; z-index: 3; }
    .calendar.week-mode .days, .calendar.day-mode .days { position: relative; }
    .calendar.week-mode .weekdays .cal-corner, .calendar.day-mode .weekdays .cal-corner { padding: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface-soft); }
    .calendar.week-mode .weekdays .cal-dayhead, .calendar.day-mode .weekdays .cal-dayhead { display: grid; gap: 2px; place-items: center; padding: 8px 4px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface-soft); text-transform: none; letter-spacing: normal; cursor: pointer; }
    .calendar.week-mode .weekdays .cal-dayhead:last-child, .calendar.day-mode .weekdays .cal-dayhead:last-child { border-right: 0; }
    .cal-dayhead .cal-dh-wd { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
    .cal-dayhead .cal-dh-num { display: grid; place-items: center; width: 28px; height: 28px; font-size: 16px; font-weight: 800; color: var(--ink); }
    .cal-dayhead.off .cal-dh-wd, .cal-dayhead.off .cal-dh-num { color: color-mix(in srgb, var(--muted) 65%, transparent); }
    .cal-dayhead.today .cal-dh-num { border-radius: 8px; background: var(--brand); color: #fff; box-shadow: 0 6px 16px rgba(255, 112, 67, .26); }
    .cal-dayhead.sel { background: color-mix(in srgb, var(--brand) 9%, var(--surface-soft)); }
    .cal-gutter { position: relative; border-right: 1px solid var(--line); background: var(--surface); }
    .cal-hour { position: absolute; right: 8px; transform: translateY(-7px); font-size: 11px; font-weight: 700; color: var(--muted); white-space: nowrap; }
    .cal-col { position: relative; border-right: 1px solid var(--line); background: var(--surface); cursor: pointer; }
    .cal-col:last-child { border-right: 0; }
    .cal-col.off { background: color-mix(in srgb, var(--surface-soft) 45%, var(--surface)); }
    .cal-col.sel { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--brand) 38%, transparent); }
    .cal-line { position: absolute; left: 0; right: 0; border-top: 1px solid color-mix(in srgb, var(--line) 65%, transparent); pointer-events: none; }
    .cal-workband { position: absolute; left: 0; right: 0; background: color-mix(in srgb, var(--brand) 5%, transparent); pointer-events: none; }
    .cal-event { position: absolute; left: 3px; right: 3px; overflow: hidden; padding: 3px 7px; border-radius: 8px; background: color-mix(in srgb, var(--brand) 16%, var(--surface)); border-left: 3px solid var(--brand); color: var(--brand-ink); font-size: 11px; line-height: 1.2; z-index: 2; }
    .cal-event b { display: block; font-weight: 800; }
    .cal-event span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; opacity: .85; }
    .cal-event.booking { background: #E1F5EE; border-left-color: #1d9e75; color: #085041; }
    body[data-theme="dark"] .cal-event.booking { background: color-mix(in srgb, #1d9e75 24%, var(--surface)); color: #9FE1CB; }
    .cal-now { position: absolute; left: 0; right: 0; height: 0; border-top: 2px solid #ef4444; z-index: 4; pointer-events: none; }
    .cal-now::before { content: ""; position: absolute; left: -3px; top: -4px; width: 7px; height: 7px; border-radius: 50%; background: #ef4444; }
    .departments-list { border-radius: 20px; }
    .department-controls { grid-template-columns: minmax(240px, 1fr) minmax(220px, 320px); margin-top: 14px; }
    .department-worktime-box .workday-grid { margin-top: 12px; }
    .department-worktime-controls { margin-top: 12px; }
    .department-employees-box { margin-top: 16px; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
    .department-employees-box > strong { display: block; margin-bottom: 10px; font-weight: 800; }
    .department-employees-list { display: flex; flex-wrap: wrap; gap: 8px; }
    .settings-profile-head { max-width: 690px; margin-bottom: 4px; }
    .settings-profile-head h2 { margin: 0 0 8px; }
    .settings-profile-head p { margin: 0; font-size: 15px; }
    .settings-profile-panel .ws-fields { max-width: 620px; }
    .settings-profile-panel .ws-fields input { min-height: 52px; }
    .settings-profile-footer { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 16px; margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
    .settings-profile-footer .primary { min-width: 220px; }
    .settings-profile-footer span { color: var(--muted); font-size: 12.5px; font-weight: 650; }
    .settings-profile-panel .form-error, .settings-panel .form-error { min-height: 0; margin: 10px 0 0; }
    .settings-profile-panel .form-error:empty, .settings-panel .form-error:empty { display: none; }
    .employee-add-card { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(180px, .8fr) auto; gap: 12px; align-items: end; margin-top: 16px; padding: 14px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface-soft); }
    .employee-add-card label { margin: 0; }
    .employees-list { display: grid; gap: 10px; margin-top: 14px; }
    .employee-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
    .employee-card strong, .employee-card span { display: block; }
    .employee-card strong small { display: inline-flex; margin-left: 6px; padding: 3px 8px; border-radius: 999px; background: color-mix(in srgb, #dafe4f 55%, var(--surface-soft)); color: var(--ink); font-size: 11px; font-weight: 800; vertical-align: middle; }
    .employee-card span { margin-top: 3px; color: var(--muted); font-size: 13px; font-weight: 600; }
    .employee-card-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
    .employee-availability { width: fit-content; min-width: 210px; display: inline-grid; grid-template-columns: 48px 1fr; gap: 10px; align-items: center; margin: 0; padding: 8px 12px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); color: var(--ink); cursor: pointer; }
    .employee-availability input { position: absolute; width: 1px; min-height: 1px; opacity: 0; pointer-events: none; }
    .employee-availability span { position: relative; display: block; width: 48px; height: 28px; margin: 0; border-radius: 999px; background: #d1d5db; transition: background .18s ease; }
    .employee-availability span::after { content: ""; position: absolute; top: 4px; left: 4px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 7px 16px rgba(15, 23, 42, .16); transition: transform .18s ease; }
    .employee-availability input:checked + span { background: #28ed4b; }
    .employee-availability input:checked + span::after { transform: translateX(20px); }
    .employee-availability b { font-size: 13px; font-weight: 700; white-space: nowrap; }
    .routing-options { display: grid; grid-template-columns: repeat(2, minmax(220px, 1fr)); gap: 12px; margin-top: 16px; }
    .routing-card { display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; align-items: start; margin: 0; padding: 16px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); cursor: pointer; transition: border-color .16s ease, background .16s ease, transform .16s ease; }
    .routing-card input { width: 18px; min-height: 18px; margin-top: 2px; }
    .routing-card strong, .routing-card span { grid-column: 2; }
    .routing-card span { color: var(--muted); line-height: 1.45; }
    .routing-card.active { border-color: color-mix(in srgb, var(--brand) 50%, var(--line)); background: color-mix(in srgb, var(--brand) 7%, var(--surface)); transform: translateY(-1px); }
    .employee-routing-controls { grid-template-columns: minmax(220px, 320px); margin-top: 14px; }
    .employee-routing-controls.is-muted, .employee-order-list.is-muted { opacity: .55; }
    .employee-order-list { display: grid; gap: 8px; margin: 14px 0; }
    .employee-order-list > strong { color: var(--muted); font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
    .employee-order-item { display: grid; grid-template-columns: 36px 1fr auto; gap: 10px; align-items: center; padding: 10px 12px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .employee-order-item span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--surface-soft); color: var(--muted); font-size: 12px; font-weight: 800; }
    .employee-order-item small { color: var(--muted); font-weight: 600; }
    .lead-fields-box { margin-top: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
    .lead-fields-box strong { font-size: 17px; font-weight: 700; }
    .lead-fields-box p { margin: 6px 0 12px; }
    .lead-field-grid { display: flex; flex-wrap: wrap; gap: 10px; }
    .check-row { display: inline-flex; grid-template-columns: none; align-items: center; gap: 8px; min-height: 40px; margin: 0; padding: 0 13px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); cursor: pointer; }
    .check-row input { width: 16px; min-height: 16px; }
    .widget-editor-section[data-widget-editor-section-panel="form"] { grid-column: 1 / -1; }
    .lead-capture-mode { display: grid; gap: 10px; margin: 0 0 16px; }
    .lead-capture-panel.hidden { display: none; }
    .lead-form-layout { display: grid; grid-template-columns: minmax(320px, .82fr) minmax(420px, 1.18fr); gap: 16px; align-items: start; }
    .lead-calendar-panel { display: grid; grid-template-columns: minmax(320px, .82fr) minmax(420px, 1.18fr); gap: 16px; align-items: start; }
    .lead-calendar-copy { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: 0 14px 34px rgba(15, 23, 42, .045); }
    .lead-calendar-copy h3 { margin: 0 0 8px; font-size: 18px; letter-spacing: -.03em; }
    .lead-calendar-copy p { margin: 0 0 14px; color: var(--muted); font-size: 13px; font-weight: 700; line-height: 1.45; }
    .lead-calendar-settings-inline { margin-top: 14px; }
    .booking-appearance-settings.inline-calendar-settings { gap: 12px; margin-top: 0; padding-top: 14px; }
    .booking-appearance-settings.inline-calendar-settings .booking-settings-tabs { width: 100%; margin-bottom: 12px; }
    .booking-appearance-settings.inline-calendar-settings .booking-settings-tab { flex: 1; text-align: center; }
    .booking-appearance-settings.inline-calendar-settings .booking-settings-layout,
    .booking-appearance-settings.inline-calendar-settings .booking-settings-grid,
    .booking-appearance-settings.inline-calendar-settings .call-block-controls { grid-template-columns: minmax(0, 1fr); }
    .booking-appearance-settings.inline-calendar-settings .booking-field-main { grid-template-columns: minmax(0, 1fr) auto; }
    .booking-appearance-settings.inline-calendar-settings .booking-field-main label { grid-column: 1 / -1; }
    .booking-appearance-settings.inline-calendar-settings .booking-field-required { justify-self: start; }
    .booking-appearance-settings.inline-calendar-settings .booking-field-main > .icon-btn { justify-self: end; }
    .booking-appearance-settings.inline-calendar-settings .booking-settings-card { padding: 14px; border-radius: 16px; }
    .booking-appearance-settings.inline-calendar-settings .booking-settings-preview-wide { display: none; }
    .lead-form-builder-card, .lead-form-preview-card { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: 0 14px 34px rgba(15, 23, 42, .045); }
    .lead-form-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
    .lead-form-head h3 { margin: 0; font-size: 18px; letter-spacing: -.03em; }
    .lead-form-head p { margin: 5px 0 0; color: var(--muted); font-size: 13px; font-weight: 700; line-height: 1.35; }
    .lead-form-copy-controls { display: grid; gap: 8px; margin-bottom: 10px; }
    .lead-form-copy-controls label { display: grid; gap: 4px; color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-form-copy-controls input,
    .lead-form-copy-controls textarea { width: 100%; min-height: 40px; padding: 0 12px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font: 14px Gilroy, Gilroy, sans-serif; }
    .lead-form-copy-controls textarea { min-height: 66px; padding: 9px 12px; line-height: 1.4; resize: vertical; }
    .lead-consent-settings { display: grid; gap: 8px; margin: 14px 0 10px; padding: 12px; border: 1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--surface) 90%, var(--surface-soft)); }
    .lead-consent-label { color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-consent-toolbar { display: flex; flex-wrap: wrap; gap: 8px; }
    .lead-consent-editor { min-height: 48px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 13px; outline: none; background: var(--surface); color: var(--ink); font: 14px/1.4 Gilroy, Gilroy, sans-serif; }
    .lead-consent-editor:focus { border-color: color-mix(in srgb, var(--brand) 62%, var(--line)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 12%, transparent); }
    .lead-consent-editor a, .lead-preview-consent a { color: var(--brand-strong); text-decoration: underline; text-underline-offset: 2px; }
    .lead-consent-settings p { margin: 0; color: var(--muted); font-size: 12px; font-weight: 700; line-height: 1.4; }
    .ytalk-toast { position: fixed; left: 50%; bottom: 28px; z-index: 1000; display: inline-flex; align-items: center; gap: 8px; padding: 12px 18px; border-radius: 14px; background: #111827; color: #fff; font-weight: 700; font-size: 14px; letter-spacing: -.01em; box-shadow: 0 18px 50px rgba(15, 23, 42, .28); opacity: 0; pointer-events: none; transform: translateX(-50%) translateY(12px); transition: opacity .2s ease, transform .2s ease; }
    .ytalk-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
    .ytalk-toast svg { color: #4ade80; }
    body[data-theme="dark"] .ytalk-toast { background: #f5f5f5; color: #111; }
    .lead-form-builder { display: grid; gap: 10px; }
    .lead-field-item { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto 34px; gap: 10px; align-items: center; min-height: 56px; padding: 10px; border: 1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--surface) 92%, var(--surface-soft)); }
    .lead-field-index { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 10px; background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); font-size: 12px; font-weight: 900; }
    .lead-field-copy { min-width: 0; display: grid; gap: 3px; }
    .lead-field-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 900; }
    .lead-field-copy small { color: var(--muted); font-size: 12px; font-weight: 700; }
    .lead-field-type { padding: 6px 10px; border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-size: 12px; font-weight: 900; white-space: nowrap; }
    .lead-form-add { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 12px; }
    .lead-form-add-title { width: 100%; color: var(--muted); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .07em; }
    .lead-form-add small { color: var(--muted); font-weight: 700; }
    .lead-form-preview { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: linear-gradient(180deg, color-mix(in srgb, var(--brand) 7%, var(--surface)) 0%, var(--surface) 34%); }
    .lead-form-preview-card-inner { max-width: 420px; margin: 0 auto; padding: 24px; }
    .lead-form-preview h3 { margin: 0 0 8px; font-size: 26px; line-height: 1.05; letter-spacing: -.05em; }
    .lead-form-preview p { margin: 0 0 18px; color: var(--muted); font-weight: 700; line-height: 1.45; }
    .lead-preview-fields { display: grid; gap: 10px; }
    .lead-preview-fields label { display: grid; gap: 7px; margin: 0; color: var(--ink); font-size: 13px; font-weight: 900; }
    .lead-preview-fields input, .lead-preview-fields select, .lead-preview-fields textarea { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid color-mix(in srgb, var(--muted) 30%, var(--line)); border-radius: 13px; background: var(--surface); color: var(--ink); font: 14px Gilroy, Gilroy, sans-serif; }
    .lead-preview-fields textarea { min-height: 76px; padding: 11px 12px; resize: vertical; }
    .lead-preview-tel { display: flex; align-items: center; gap: 8px; }
    .lead-preview-tel img { width: 24px; height: 17px; object-fit: cover; border-radius: 3px; box-shadow: 0 0 0 1px rgba(15,23,42,.1); flex: 0 0 auto; }
    .lead-preview-tel > span { color: var(--muted); font-weight: 800; flex: 0 0 auto; }
    .lead-preview-tel input { flex: 1 1 auto; min-width: 0; }
    .lead-preview-consent { display: flex; align-items: flex-start; gap: 8px; margin: 13px 0; color: var(--muted); font-size: 12px; font-weight: 700; line-height: 1.35; }
    .lead-preview-consent input { width: 16px; min-height: 16px; margin-top: 1px; }
    .lead-form-preview button { width: 100%; min-height: 44px; border: 0; border-radius: 13px; background: var(--brand); color: #fff; font-weight: 900; }
    .preview { margin-top: 12px; }
    .hidden { display: none; }
    .button-design-panel { margin-top: 6px; }
    .appearance-button-text.hidden { display: none; }
    .additional-widgets-head { margin-bottom: 18px; }
    .additional-widget-tabs { display: inline-flex; flex-wrap: wrap; gap: 8px; padding: 6px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
    .additional-widget-tab { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; padding: 0 16px; border: 0; border-radius: 13px; background: transparent; color: var(--muted); font-weight: 600; cursor: pointer; }
    .additional-widget-tab svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .additional-widget-tab.active { background: #111827; color: #fff; box-shadow: 0 10px 24px rgba(15, 23, 42, .18); }
    body[data-theme="dark"] .additional-widget-tab.active { background: #f5f5f5; color: #111; }
    .additional-widget-panel.hidden { display: none; }
    .button-preset-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
    .button-preset-card { display: grid; gap: 12px; min-height: 152px; padding: 16px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); color: color-mix(in srgb, var(--ink) 82%, var(--muted)); cursor: pointer; text-align: left; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
    .button-preset-card:hover, .button-preset-card.active { transform: translateY(-2px); border-color: color-mix(in srgb, var(--brand) 45%, var(--line)); box-shadow: 0 18px 44px rgba(15, 23, 42, .10); }
    .button-preset-card.active { outline: 3px solid color-mix(in srgb, var(--brand) 22%, transparent); }
    .button-preset-card small { color: var(--muted); font-weight: 600; }
    .button-preset-sample { position: relative; overflow: hidden; isolation: isolate; width: fit-content; max-width: 100%; min-height: 60px; display: inline-flex; align-items: center; gap: 12px; padding: 0 26px 0 14px; border-radius: 999px; background: var(--preset-bg); color: var(--preset-color); font-family: "Gilroy", sans-serif; font-size: var(--preset-size); font-weight: 800; line-height: 1.05; box-shadow: 0 14px 28px rgba(15, 23, 42, .14); }
    .button-preset-sample .bp-icon { position: relative; flex: 0 0 auto; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,.16); color: #fff; }
    .button-preset-sample .bp-icon svg { width: 22px; height: 22px; display: block; }
    .button-preset-sample .bp-label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .button-preset-sample .bp-dot { position: absolute; top: 0; right: 0; width: 11px; height: 11px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 2px var(--preset-bg); }
    .button-preset-card[data-preset-variant="live"] .bp-icon,
    .button-preset-card[data-preset-variant="lime"] .bp-icon { background: #020617; color: #dafe4f; }
    .button-preset-card[data-preset-variant="glass"] .bp-icon { background: rgba(255,255,255,.16); color: #fff; }
    .button-preset-card[data-preset-variant="glass"] .button-preset-sample { border: 1px solid rgba(255,255,255,.18); }
    .call-block-preview-shell { position: relative; width: min(100%, 1160px); max-width: 100%; margin: 16px auto; }
    .call-block-edit-toggle { position: absolute; top: 16px; right: 16px; z-index: 4; min-height: 42px; display: inline-flex; align-items: center; gap: 8px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; background: color-mix(in srgb, var(--surface) 88%, transparent); color: var(--ink); font: 900 13px/1 "Gilroy", sans-serif; box-shadow: 0 14px 34px rgba(15,23,42,.12); backdrop-filter: blur(14px); cursor: pointer; transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease; }
    .call-block-edit-toggle:hover, .call-block-edit-toggle.active { transform: translateY(-1px); border-color: color-mix(in srgb, var(--brand) 42%, var(--line)); background: color-mix(in srgb, var(--brand) 12%, var(--surface)); color: var(--brand); }
    .call-block-edit-toggle svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
    .call-block-content-panel { margin: 0 0 18px; padding: 18px; border: 1px solid var(--line); border-radius: 22px; background: color-mix(in srgb, var(--surface) 88%, var(--surface-soft)); box-shadow: 0 18px 44px rgba(15,23,42,.07); }
    .call-block-content-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
    .call-block-content-head h3 { margin: 0; }
    .call-block-controls { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
    .cb-group { margin: 0 0 18px; padding: 14px 16px 16px; border: 1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--surface) 70%, var(--surface-soft)); }
    .cb-group-title { display: block; margin-bottom: 10px; color: var(--muted); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .07em; }
    .cb-group .controls { margin-bottom: 0; }
    .cb-group > label { display: grid; gap: 8px; margin: 12px 0 0; }
    .cb-texts { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
    .cb-advanced { margin: 2px 0 0; }
    .cb-advanced > summary { width: fit-content; cursor: pointer; color: var(--muted); font-size: 13px; font-weight: 600; }
    .cb-advanced[open] > summary { margin-bottom: 8px; }
    .cb-advanced .controls { grid-template-columns: minmax(180px, 260px); }
    .block-variant-label { color: var(--muted); font-size: 13px; font-weight: 600; }
    .bfield-advanced { grid-column: 1 / -1; margin-top: 2px; }
    .bfield-advanced > summary { width: fit-content; cursor: pointer; color: var(--muted); font-size: 12px; font-weight: 600; }
    .bfield-advanced[open] > summary { margin-bottom: 8px; }
    .bfield-advanced small { display: block; margin-top: 6px; color: var(--muted); }
    #callBlockText { min-height: 100px; font-family: inherit; font-size: 14px; }
    .call-block-image-row { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(240px, 280px); gap: 12px; align-items: stretch; }
    .file-label { min-height: 48px; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; padding: 0 16px; border: 1px dashed var(--line); border-radius: 14px; background: var(--surface); color: var(--muted); cursor: pointer; }
    .file-label input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .call-block-preview { width: 100%; max-width: 100%; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 30px; background: var(--surface); }
    .call-block-preview-card { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(220px, .75fr); gap: 28px; align-items: center; min-height: 300px; overflow: hidden; padding: 38px; border-radius: 30px; }
    .call-block-preview-card::before { content: ""; position: absolute; inset: -40%; z-index: -1; background: radial-gradient(circle at 18% 22%, rgba(218, 254, 79, .34), transparent 28%), radial-gradient(circle at 78% 18%, rgba(59, 130, 246, .22), transparent 30%), linear-gradient(115deg, transparent 20%, rgba(255,255,255,.18) 34%, transparent 48%); opacity: .76; animation: app-block-shine 7s ease-in-out infinite alternate; }
    .call-block-preview-card:not(.has-media) { grid-template-columns: minmax(0, 1fr); }
    .call-block-preview-card h3 { margin: 0; font-size: clamp(28px, 4vw, 46px); line-height: 1; letter-spacing: -.05em; overflow-wrap: anywhere; }
    .call-block-preview-card p { margin: 14px 0 20px; max-width: 580px; overflow-wrap: anywhere; }
    .call-block-preview-badge { width: fit-content; display: inline-flex; align-items: center; gap: 8px; min-height: 34px; margin-bottom: 16px; padding: 0 13px; border-radius: 999px; background: rgba(255,255,255,.72); color: #020617; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
    .call-block-preview-badge::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 6px rgba(34, 197, 94, .16); }
    .call-block-preview-card button { min-height: 58px; max-width: 100%; display: inline-flex; align-items: center; gap: 14px; padding: 0 18px 0 26px; border: 0; border-radius: 999px; font-weight: 800; white-space: normal; }
    .call-block-preview-card button::after { content: "→"; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,.82); color: #020617; font-size: 25px; line-height: 1; }
    .call-block-preview-media { min-height: 210px; overflow: hidden; border-radius: 20px; background: rgba(255,255,255,.28); }
    .call-block-preview-media img { width: 100%; height: 100%; min-height: 210px; display: block; object-fit: cover; }

    @keyframes app-cb-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
    @keyframes app-cb-dot { 0% { box-shadow: 0 0 0 0 rgba(34,197,94,.4); } 70% { box-shadow: 0 0 0 8px rgba(34,197,94,0); } 100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); } }
    .call-block-preview-card { animation: app-cb-in .55s cubic-bezier(.22,.61,.36,1) both; }
    .cbp-content { display: grid; gap: 16px; min-width: 0; }
    .cbp-btn-cam { padding: 0 26px !important; }
    .cbp-btn-cam::after { display: none !important; }
    .cbp-cam { display: grid; place-items: center; }
    .cbp-cam svg { width: 20px; height: 20px; display: block; fill: none; stroke: currentColor; stroke-width: 2; }
    .call-block-preview-card--live { justify-items: center; text-align: center; }
    .call-block-preview-card--live::before { inset: 0; opacity: 1; animation: none; background: radial-gradient(circle at 50% -10%, rgba(2,6,23,.05), transparent 55%); }
    .call-block-preview-card--live .cbp-content { justify-items: center; text-align: center; max-width: 620px; }
    .call-block-preview-card--live h3 { font-size: clamp(24px, 3.4vw, 38px); }
    .call-block-preview-card--live p { margin: 0; opacity: .64; }
    .cbp-badges { display: inline-flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: center; }
    .cbp-online { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: #0b1220; }
    .cbp-online i { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; animation: app-cb-dot 2.2s ease-out infinite; }
    .cbp-eta { font-size: 13px; font-weight: 700; color: #185fa5; background: #e6f1fb; padding: 5px 12px; border-radius: 999px; }
    .cbp-live-media { width: 100%; max-width: 480px; aspect-ratio: 16 / 9; border-radius: 18px; overflow: hidden; position: relative; background: linear-gradient(150deg, #2b3550, #10131c); }
    .cbp-live-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .cbp-live-media.is-empty { display: grid; place-items: center; }
    .cbp-live-ico { color: rgba(255,255,255,.85); }
    .cbp-live-ico svg { width: 42px; height: 42px; display: block; fill: none; stroke: currentColor; stroke-width: 1.6; }
    .cbp-reassure { font-size: 13px; font-weight: 600; color: #98a2b3; }
    .call-block-preview-card.call-block-preview-card--split { grid-template-columns: minmax(0, 1.12fr) minmax(200px, .88fr); align-items: stretch; }
    .call-block-preview-card--split::before { display: none; }
    .call-block-preview-card--split .cbp-content { align-content: center; }
    .cbp-bullets { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
    .cbp-bullets li { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }
    .cbp-bullets li i { flex: 0 0 auto; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: rgba(218,254,79,.16); color: #dafe4f; }
    .cbp-bullets li i svg { width: 13px; height: 13px; display: block; fill: none; stroke: currentColor; stroke-width: 3; }
    .cbp-split-media { position: relative; align-self: stretch; min-height: 240px; border-radius: 22px; overflow: hidden; background-color: #0a0f1a; background-size: cover; background-position: center; }
    .cbp-split-media.is-empty { background: linear-gradient(150deg, #46506a, #1a2233 60%, #0a0f1a); }
    .cbp-split-online { position: absolute; top: 14px; right: 14px; display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: #0b1220; background: #dafe4f; padding: 5px 11px; border-radius: 999px; }
    .cbp-split-online i { width: 7px; height: 7px; border-radius: 50%; background: #0b1220; }
    .cbp-split-pulse { position: absolute; inset: 0; margin: auto; }
    @media (max-width: 760px) { .call-block-preview-card.call-block-preview-card--split { grid-template-columns: 1fr; } }
    @media (prefers-reduced-motion: reduce) { .call-block-preview-card { animation: none; } .cbp-online i { animation: none; } }
    .block-variant-slider { width: fit-content; max-width: 100%; display: grid; justify-items: center; gap: 7px; margin: 12px auto 22px; padding: 0; border: 0; background: none; box-shadow: none; }
    .block-variant-row { display: flex; align-items: center; gap: 4px; }
    .block-variant-arrow { width: 30px; height: 30px; min-height: 30px; display: grid; place-items: center; padding: 0 0 2px; border: 0; border-radius: 50%; background: transparent; color: var(--muted); font-size: 22px; font-weight: 700; line-height: 1; cursor: pointer; transition: color .18s ease, background .18s ease; }
    .block-variant-arrow:hover { background: color-mix(in srgb, var(--brand) 10%, transparent); color: var(--brand); }
    .block-variant-arrow:focus, .block-variant-dot:focus { outline: 0; }
    .block-variant-arrow:focus-visible, .block-variant-dot:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 22%, transparent); }
    .block-variant-dots-control { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 8px; background: none; box-shadow: none; }
    .block-variant-dot { box-sizing: content-box; width: 7px; height: 7px; min-height: 0; padding: 9px; border: 0; border-radius: 999px; background: color-mix(in srgb, var(--ink) 20%, var(--surface)); background-clip: content-box; cursor: pointer; transition: width .22s ease, background .22s ease; }
    .block-variant-dot.active { width: 20px; background: var(--brand); background-clip: content-box; }
    .block-variant-dots-control { gap: 0; }
    .call-block-preview-card--minimal { grid-template-columns: minmax(0,1fr); justify-items: center; text-align: center; border: 1px solid rgba(15,23,42,.08); box-shadow: 0 24px 60px rgba(15,23,42,.10); }
    .call-block-preview-card--minimal::before { inset: 0; opacity: 1; animation: none; background: radial-gradient(circle at 50% -10%, rgba(2,6,23,.05), transparent 55%); }
    .call-block-preview-card--minimal > div { display: grid; justify-items: center; }
    .call-block-preview-card--minimal .call-block-preview-badge { background: #f1f5f9; color: #0b1220; }
    .call-block-preview-card--minimal p { opacity: .6; }
    .call-block-preview-pulse { position: relative; width: 70px; height: 70px; display: grid; place-items: center; margin-bottom: 6px; }
    .call-block-preview-pulse .cbp-core { position: relative; z-index: 2; width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; background: #0b1220; color: #dafe4f; }
    .call-block-preview-pulse .cbp-core svg { width: 26px; height: 26px; display: block; }
    .call-block-preview-pulse > span:not(.cbp-core) { position: absolute; inset: 0; margin: auto; width: 58px; height: 58px; border-radius: 50%; border: 2px solid rgba(11,18,32,.28); animation: app-cbp-pulse 2.7s cubic-bezier(.2,.7,.3,1) infinite; }
    .call-block-preview-pulse > span:nth-child(2) { animation-delay: 1.2s; }
    @keyframes app-cbp-pulse { 0% { transform: scale(1); opacity: .55; } 100% { transform: scale(2.4); opacity: 0; } }
    .call-block-preview-card.call-block-preview-card--spotlight { grid-template-columns: minmax(0, 220px) minmax(0, 1fr); align-items: center; border: 1px solid rgba(15,23,42,.08); box-shadow: 0 24px 60px rgba(15,23,42,.10); }
    .call-block-preview-card--spotlight::before { inset: 0; opacity: 1; animation: none; background: radial-gradient(circle at 12% 0%, rgba(2,6,23,.06), transparent 55%); }
    .call-block-preview-card--spotlight .cbp-content { align-content: center; gap: 14px; }
    .call-block-preview-card--spotlight h3 { font-size: clamp(24px, 3.2vw, 38px); }
    .call-block-preview-card--spotlight p { margin: 0; opacity: .62; }
    .call-block-preview-card--spotlight .cbp-badges { justify-content: flex-start; }
    .call-block-preview-card--spotlight .cbp-content > button { justify-self: start; }
    .cbp-spot { order: -1; position: relative; width: min(100%, 220px); margin: 0 auto; }
    .cbp-spot-photo { position: relative; width: 100%; aspect-ratio: 1 / 1; border-radius: 50%; overflow: hidden; background: linear-gradient(150deg, #2b3550, #10131c); box-shadow: 0 0 0 4px #fff, 0 0 0 7px rgba(34,197,94,.5), 0 20px 46px rgba(15,23,42,.18); }
    .cbp-spot-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .cbp-spot-photo.is-empty { display: grid; place-items: center; color: rgba(255,255,255,.85); }
    .cbp-spot-photo.is-empty svg { width: 50px; height: 50px; display: block; fill: none; stroke: currentColor; stroke-width: 1.6; }
    .cbp-spot-live { position: absolute; left: 50%; bottom: -9px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 6px; padding: 6px 13px; border-radius: 999px; background: #0b1220; color: #fff; font-size: 12px; font-weight: 700; white-space: nowrap; }
    .cbp-spot-live i { width: 7px; height: 7px; border-radius: 50%; background: #22c55e; animation: app-cb-dot 2.2s ease-out infinite; }
    .call-block-preview-card.call-block-preview-card--bar { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; min-height: 0; padding: 20px 24px; border-radius: 24px; }
    .call-block-preview-card--bar::before { display: none; }
    .call-block-preview-card--bar .cbp-content { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 16px; }
    .cbp-bar-ico { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; background: rgba(255,255,255,.12); }
    .cbp-bar-ico svg { width: 23px; height: 23px; display: block; fill: none; stroke: currentColor; stroke-width: 2; }
    .cbp-bar-copy { display: grid; gap: 5px; min-width: 0; }
    .call-block-preview-card--bar h3 { font-size: clamp(19px, 2vw, 26px); line-height: 1.12; letter-spacing: -.03em; }
    .call-block-preview-card--bar p { margin: 0; font-size: 14px; line-height: 1.4; opacity: .68; }
    .cbp-bar-side { display: flex; align-items: center; justify-content: flex-end; gap: 14px; flex-wrap: wrap; }
    .call-block-preview-card--bar .cbp-online { color: inherit; opacity: .85; white-space: nowrap; }
    .call-block-preview-card--bar button { min-height: 50px; gap: 10px; padding: 0 12px 0 22px; font-size: 15px; }
    .call-block-preview-card--bar button::after { width: 32px; height: 32px; font-size: 20px; }
    @media (max-width: 760px) {
      .call-block-preview-card.call-block-preview-card--spotlight { grid-template-columns: 1fr; justify-items: center; text-align: center; }
      .call-block-preview-card--spotlight .cbp-content { justify-items: center; text-align: center; }
      .call-block-preview-card--spotlight .cbp-badges { justify-content: center; }
      .call-block-preview-card--spotlight .cbp-content > button { justify-self: center; }
      .cbp-spot { width: min(100%, 150px); margin-bottom: 6px; }
      .call-block-preview-card.call-block-preview-card--bar { grid-template-columns: 1fr; padding: 20px; }
      .call-block-preview-card--bar .cbp-content { align-items: start; gap: 13px; }
      .call-block-preview-card--bar .cbp-bar-ico { width: 44px; height: 44px; }
      .cbp-bar-side { justify-content: center; width: 100%; }
      .call-block-preview-card--bar button { width: min(100%, 300px); justify-content: center; }
    }
    .direct-help { max-width: 760px; margin-top: 0; }
    .direct-link-grid { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 12px; align-items: end; }
    .direct-link-grid label { margin: 0; }
    .direct-link-grid button { align-self: end; min-height: 48px; white-space: nowrap; }
    .empty-list { padding: 24px; border: 1px dashed var(--line); border-radius: 18px; color: var(--muted); background: var(--surface-soft); }
    .recording-item { display: flex; justify-content: space-between; gap: 16px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; margin-top: 10px; background: var(--surface); }
    .recording-card { border: 1px solid var(--line); border-radius: 16px; margin-top: 10px; background: var(--surface); overflow: hidden; }
    .recording-row { display: flex; align-items: center; gap: 12px; padding: 12px 16px; }
    .recording-play { width: 42px; height: 42px; flex: none; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--surface-soft); color: var(--brand); cursor: pointer; }
    .recording-play svg { width: 22px; height: 22px; }
    .recording-play:hover { background: color-mix(in srgb, var(--brand) 12%, var(--surface)); }
    .recording-main { flex: 1; min-width: 0; display: grid; gap: 3px; border: 0; background: none; padding: 0; text-align: left; cursor: pointer; font: inherit; color: var(--ink); }
    .recording-main span { font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .recording-main small { color: var(--muted); font-size: 12px; }
    .recording-extend { flex: none; padding: 7px 12px; border: 1px dashed var(--line); border-radius: 999px; color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; cursor: default; }
    .recording-dl { width: 38px; height: 38px; flex: none; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: var(--surface); }
    .recording-dl svg { width: 18px; height: 18px; }
    .recording-dl:hover { border-color: var(--brand); color: var(--brand); }
    .recording-player { padding: 0 16px 16px; }
    .recording-player video { width: 100%; max-height: 420px; border-radius: 12px; background: #020617; display: block; }
    @media (max-width: 640px) { .recording-extend { display: none; } }
    @media (max-width: 560px) {
      .calendar .day .badge { width: 8px; height: 8px; min-width: 8px; padding: 0; border-radius: 50%; overflow: hidden; text-indent: -999px; color: transparent; }
      .calendar .day .badge.off { background: var(--muted); }
      .calendar .day .badge.busy { background: #ea5526; }
      .calendar .day { min-height: 64px; padding: 7px 6px; }
      .calendar .day .busy-list { display: none; }
      .calendar .day .day-number { margin-bottom: 0; font-size: 12px; }
      .day.today .num { width: 22px; height: 22px; border-radius: 7px; }
      .weekdays div { padding: 9px 6px; font-size: 10px; }
    }
    .section-head-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
    .deal-board-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
    .leads-list { display: grid; gap: 12px; }
    .lead-export-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 16px 0; }
    .lead-export-row span { max-width: 660px; color: var(--muted); font-size: 13px; line-height: 1.45; }
    .lead-item { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
    .lead-item-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
    .lead-item strong { display: block; font-size: 18px; font-weight: 700; }
    .lead-item small { display: block; margin-top: 3px; color: var(--muted); font-weight: 500; }
    .lead-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .danger-text { color: #dc2626; }
    .lead-item-contacts { display: flex; flex-wrap: wrap; gap: 8px; color: var(--brand); font-weight: 600; }
    .messenger-link, .recording-pill { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 11px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); color: var(--ink); font-size: 13px; font-weight: 600; }
    .messenger-icon-link { position: relative; width: 40px; height: 40px; min-height: 40px; flex: 0 0 40px; padding: 0; border: 0; border-radius: 14px; color: #fff; transition: transform .16s ease, filter .16s ease; }
    .messenger-icon-link img { width: 20px; height: 20px; display: block; filter: brightness(0) invert(1); }
    .messenger-icon-link svg { width: 20px; height: 20px; display: block; flex: 0 0 auto; color: #fff; }
    .messenger-icon-link--telegram { background: #229ed9; }
    .messenger-icon-link--max { background: linear-gradient(145deg, #35c8ff 0%, #287cff 38%, #5339f5 68%, #a23cec 100%); }
    .messenger-icon-link--whatsapp { background: #20b95a; }
    .messenger-icon-link:hover { transform: translateY(-2px); filter: saturate(1.08) brightness(1.02); }
    .contact-text { display: inline-flex; align-items: center; min-height: 34px; color: var(--ink); font-size: 13px; font-weight: 700; }
    body[data-theme="dark"] .messenger-icon-link img { filter: brightness(0) invert(1); }
    .messenger-icon-link::after { content: attr(data-tooltip); position: absolute; left: 50%; bottom: calc(100% + 8px); z-index: 10; transform: translateX(-50%) translateY(4px); width: max-content; max-width: 220px; padding: 8px 10px; border-radius: 10px; background: #111827; color: #fff; font-size: 12px; line-height: 1; opacity: 0; pointer-events: none; transition: opacity .16s ease, transform .16s ease; }
    .messenger-icon-link:hover::after { opacity: 1; transform: translateX(-50%) translateY(0); }
    .crm-assignee-badge { width:fit-content; max-width:100%; display:grid; grid-template-columns:28px minmax(0,auto); grid-template-rows:auto auto; column-gap:8px; align-items:center; color:var(--ink); }
    .crm-assignee-badge > span { grid-row:1 / span 2; width:28px; height:28px; display:grid; place-items:center; border-radius:10px; background:color-mix(in srgb,var(--brand) 13%,var(--surface-soft)); color:var(--brand-ink); font-size:12px; font-weight:850; }
    .crm-assignee-badge small { color:var(--muted); font-size:10px; font-weight:700; line-height:1.05; }
    .crm-assignee-badge b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:800; line-height:1.2; }
    .crm-assignee-badge.is-empty > span { background:var(--surface-soft); color:var(--muted); }
    .crm-assignee-field { display:grid; gap:7px; padding:15px 16px; border:1px solid var(--line); border-radius:17px; background:var(--surface-soft); }
    .crm-assignee-field > span { color:var(--muted); font-size:11px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
    .crm-assignee-field select { width:100%; min-height:46px; padding:0 38px 0 13px; border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line)); border-radius:13px; background:var(--surface); color:var(--ink); font:inherit; font-size:14px; font-weight:800; }
    .recording-pill { width: fit-content; color: var(--brand); }
    .lead-item p { margin: 0; color: color-mix(in srgb, var(--ink) 86%, var(--muted)); }
    .lead-page-link { width: fit-content; color: var(--muted); font-weight: 600; }
    .deals-board { display: flex; gap: 14px; align-items: flex-start; margin-top: 16px; padding-bottom: 8px; overflow-x: auto; scroll-snap-type: x proximity; }
    .deal-column { min-height: 0; flex: 0 0 290px; display: grid; grid-template-rows: auto auto; align-content: start; gap: 12px; padding: 14px; border: 1px solid color-mix(in srgb, var(--deal-stage-color, var(--line)) 30%, var(--line)); border-radius: 16px; background: linear-gradient(180deg, color-mix(in srgb, var(--deal-stage-color, var(--surface-soft)) 8%, var(--surface-soft)), var(--surface-soft) 110px); box-shadow: inset 0 3px 0 var(--deal-stage-color, var(--brand)); scroll-snap-align: start; }
    .deal-stage-head { display: grid; gap: 10px; }
    .deal-stage-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    .deal-stage-title strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 600; }
    .deal-stage-title span { display: inline-grid; place-items: center; min-width: 26px; height: 26px; padding: 0 8px; border-radius: 999px; background: color-mix(in srgb, var(--deal-stage-color, var(--brand)) 14%, var(--surface)); color: var(--deal-stage-color, var(--brand)); font-size: 12px; font-weight: 800; }
    .deal-stage-edit-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; }
    .deal-stage-edit-row input { min-height: 40px; padding: 8px 10px; border-radius: 12px; font-weight: 700; }
    .deal-stage-grip { display: inline-grid; place-items: center; width: 30px; height: 40px; border-radius: 10px; color: var(--muted); cursor: grab; touch-action: none; transition: background .16s ease, color .16s ease; }
    .deal-stage-grip:hover { background: var(--surface-soft); color: var(--ink); }
    .deal-stage-grip:active { cursor: grabbing; }
    .deal-stage-edit-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
    .deal-stage-color-control { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 4px 9px 4px 5px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font-size: 12px; font-weight: 750; cursor: pointer; }
    .deal-stage-color-control input { width: 24px; height: 24px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
    .deal-stage-color-control input::-webkit-color-swatch-wrapper { padding: 0; }
    .deal-stage-color-control input::-webkit-color-swatch { border: 1px solid color-mix(in srgb, var(--muted) 36%, var(--line)); border-radius: 50%; }
    .deal-stage-color-control input::-moz-color-swatch { border: 1px solid color-mix(in srgb, var(--muted) 36%, var(--line)); border-radius: 50%; }
    .deal-cards { display: grid; align-content: start; gap: 10px; }
    .deal-empty { padding: 14px; border: 1px dashed var(--line); border-radius: 16px; color: var(--muted); background: color-mix(in srgb, var(--surface) 70%, transparent); font-size: 13px; font-weight: 600; }
    .deal-card { display: grid; gap: 6px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: color-mix(in srgb, var(--deal-stage-color, var(--surface)) 9%, var(--surface)); cursor: grab; transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease; }
    .deal-card:hover { transform: translateY(-1px); border-color: color-mix(in srgb, var(--brand) 40%, var(--line)); box-shadow: 0 10px 28px rgba(15, 23, 42, .07); }
    .deal-card:active { cursor: grabbing; }
    .deal-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
    .deal-card-date { color: var(--muted); font-size: 12px; font-weight: 650; letter-spacing: .01em; }
    .deal-card-source { color: color-mix(in srgb, var(--ink) 80%, var(--muted)); font-size: 13px; font-weight: 750; text-transform: lowercase; }
    .deal-card-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink); font-size: 17px; font-weight: 700; letter-spacing: -.02em; }
    .deal-card-phone { color: var(--ink); font-size: 16px; font-weight: 650; letter-spacing: .01em; }
    .deal-card .crm-assignee-badge { margin-top:3px; }
    .deal-amount { flex: 0 0 auto; padding: 4px 9px; border-radius: 999px; background: #E1F5EE; color: #085041; font-size: 12px; font-weight: 600; }
    body[data-theme="dark"] .deal-amount { background: color-mix(in srgb, #1d9e75 24%, var(--surface)); color: #9FE1CB; }
    .deal-comment-preview { margin: 0; padding: 10px; border-radius: 12px; background: var(--surface-soft); color: var(--muted); font-size: 13px; line-height: 1.45; }
    .deal-stage-select { display: none; margin: 0; font-size: 13px; }
    .deals-board.is-editing .deal-stage-select { display: grid; }
    .deal-stage-select select { min-height: 40px; padding: 8px 10px; border-radius: 12px; }
    .deal-drawer, .lead-drawer { position: fixed; top: 16px; right: 16px; bottom: 16px; z-index: 150; width: min(460px, calc(100vw - 32px)); display: grid; align-content: start; gap: 14px; overflow: auto; padding: 20px; border: 1px solid var(--line); border-radius: 28px; background: var(--surface); box-shadow: 0 30px 90px rgba(15, 23, 42, .18); opacity: 0; visibility: hidden; pointer-events: none; transform: translateX(20px) scale(.985); transition: opacity .22s ease, transform .22s ease, visibility .22s ease; }
    .deal-drawer.is-open, .lead-drawer.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(0) scale(1); }
    .deal-drawer-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
    .deal-drawer-head span { color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
    .deal-drawer-head h3 { margin: 4px 0 0; font-size: 24px; letter-spacing: -.04em; }
    .deal-drawer label { margin: 0; }
    .deal-drawer-msg { padding: 11px 13px; border-radius: 12px; background: var(--surface-soft); color: var(--muted); font-size: 13px; line-height: 1.5; }
    .deal-drawer textarea { width: 100%; min-height: 120px; resize: vertical; padding: 13px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: var(--ink); font: inherit; }
    .deal-drawer { width:min(620px, calc(100vw - 32px)); gap:20px; padding:30px; border-radius:32px; }
    .deal-drawer .deal-drawer-head h3 { max-width:480px; font-size:34px; line-height:1.05; }
    .deal-drawer .deal-drawer-head span { font-size:13px; letter-spacing:.1em; }
    .deal-detail-contacts { gap:10px; padding-bottom:2px; }
    .deal-detail-contacts .messenger-icon-link { width:48px; height:48px; flex-basis:48px; border-radius:16px; background:var(--surface); }
    .deal-detail-contacts .contact-text { min-height:48px; font-size:15px; }
    .deal-detail-no-contacts { padding:14px 16px; border:1px dashed var(--line); border-radius:16px; color:var(--muted); font-size:13px; font-weight:700; }
    .deal-detail-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0 4px; }
    .deal-detail-stage { display:grid; gap:4px; min-width:190px; margin:0; }
    .deal-detail-stage > span { color:var(--muted); font-size:11px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
    .deal-detail-stage-control { position:relative; display:block; }
    .deal-detail-stage select { width:100%; min-height:42px; padding:0 38px 0 13px; appearance:none; border:1px solid color-mix(in srgb, var(--brand) 17%, var(--line)); border-radius:14px; background:color-mix(in srgb, var(--brand) 7%, var(--surface)); color:var(--ink); font:inherit; font-size:14px; font-weight:800; cursor:pointer; }
    .deal-detail-stage-control svg { position:absolute; top:50%; right:13px; width:18px; height:18px; transform:translateY(-50%); fill:none; stroke:currentColor; stroke-width:2.25; stroke-linecap:round; stroke-linejoin:round; color:var(--muted); pointer-events:none; }
    .deal-detail-delete { display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:0 4px; border:0; background:transparent; color:#e33b30; font:inherit; font-size:14px; font-weight:850; cursor:pointer; }
    .deal-detail-delete svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
    .deal-detail-delete:hover { color:#be261e; }
    .deal-detail-form-card,.deal-detail-message { display:grid; gap:14px; padding:20px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(145deg, color-mix(in srgb, var(--surface) 92%, #fff), var(--surface-soft)); }
    .deal-detail-form-head { display:grid; gap:4px; }
    .deal-detail-form-head strong,.deal-detail-message strong { color:var(--ink); font-size:17px; font-weight:850; letter-spacing:-.025em; }
    .deal-detail-form-head small { color:var(--muted); font-size:12px; font-weight:650; line-height:1.4; }
    .deal-detail-form-card label { display:grid; gap:7px; color:var(--ink); font-size:13px; font-weight:800; }
    .deal-detail-form-card input { min-height:48px; padding:0 13px; border:1px solid var(--line); border-radius:14px; background:var(--surface); color:var(--ink); font:inherit; font-weight:650; }
    .deal-detail-form-card textarea { min-height:112px; border-radius:14px; }
    .deal-detail-message p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; white-space:pre-wrap; }
    .deal-detail-page { display:inline-flex; align-items:center; min-height:40px; padding:0 2px; color:var(--brand-ink); text-decoration:none; }
    .deal-detail-page:hover { text-decoration:underline; }
    .deal-detail-save { width:100%; min-height:54px; font-size:16px; }
    .deal-drawer .crm-analytics { margin-top:4px; border-radius:22px; }
    .deal-drawer .crm-analytics summary { padding:17px 18px; }
    .deal-drawer .crm-analytics-body { padding:0 18px 18px; }
    @media (max-width:560px) { .deal-drawer { top:8px; right:8px; bottom:8px; width:calc(100vw - 16px); padding:22px; border-radius:26px; } .deal-drawer .deal-drawer-head h3 { font-size:28px; } .deal-detail-actions { align-items:flex-end; flex-direction:column; } .deal-detail-stage { width:100%; } .deal-detail-delete { align-self:flex-start; } }
    .crm-analytics { overflow:hidden; border:1px solid var(--line); border-radius:16px; background:var(--surface); }.crm-analytics summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; align-items:center; padding:14px 15px; cursor:pointer; list-style:none; }.crm-analytics summary::-webkit-details-marker { display:none; }.crm-analytics summary > span { color:var(--ink); font-size:16px; font-weight:850; letter-spacing:-.025em; }.crm-analytics summary small { grid-column:1; color:var(--muted); font-size:11px; font-weight:650; }.crm-analytics summary svg { grid-column:2; grid-row:1 / span 2; width:18px; height:18px; fill:none; stroke:var(--muted); stroke-width:2.2; transition:transform .18s ease; }.crm-analytics[open] summary svg { transform:rotate(180deg); }.crm-analytics-body { display:grid; gap:14px; padding:0 15px 15px; border-top:1px solid var(--line); }.crm-analytics-list { display:grid; gap:7px; margin:14px 0 0; }.crm-analytics-list div, .crm-analytics-utm div { display:grid; grid-template-columns:minmax(142px,.8fr) minmax(0,1.4fr); gap:10px; align-items:start; }.crm-analytics-list dt, .crm-analytics-utm b { color:var(--muted); font-size:12px; font-weight:650; }.crm-analytics-list dd, .crm-analytics-utm span { min-width:0; margin:0; overflow-wrap:anywhere; color:var(--ink); font-size:12.5px; font-weight:750; }.crm-analytics-list a { color:var(--brand-ink); text-decoration:none; }.crm-analytics-list a:hover { text-decoration:underline; }.crm-analytics-utm { display:grid; gap:7px; padding-top:12px; border-top:1px dashed var(--line); }.crm-analytics-empty { margin-top:12px; color:var(--muted); font-size:12px; font-weight:650; }.lead-drawer-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
    .crm-analytics-utm span.crm-utm-macro { color:var(--muted); font-weight:600; }
    .lead-drawer { top:16px; right:16px; bottom:16px; left:auto; width:min(520px, calc(100vw - 32px)); max-height:none; gap:20px; padding:28px; border-radius:28px; box-shadow:0 30px 90px rgba(15,23,42,.18); transform:translateX(20px) scale(.985); }
    .lead-drawer.is-open { transform:translateX(0) scale(1); }
    .lead-drawer .deal-drawer-head h3 { max-width:400px; font-size:32px; line-height:1.06; }
    .lead-drawer .deal-drawer-head span { font-size:12px; letter-spacing:.09em; }
    .lead-drawer .lead-detail-contacts { gap:9px; }
    .lead-drawer .lead-detail-contacts .messenger-icon-link { width:54px; height:54px; flex-basis:54px; border-radius:17px; background:var(--surface); }
    .lead-drawer .lead-detail-contacts .messenger-icon-link img,.lead-drawer .lead-detail-contacts .messenger-icon-link svg { width:23px; height:23px; }
    .lead-drawer .lead-detail-contacts .contact-text { min-height:38px; font-size:14px; }
    .lead-drawer-actions--detail { min-height:52px; padding:2px 0 4px; }
    .lead-detail-deal-status,.lead-detail-create-deal { min-height:46px; padding:0 18px; border-radius:999px; font:inherit; font-size:15px; font-weight:850; }
    .lead-detail-deal-status { border:0; background:linear-gradient(135deg, #effaf3, #f7fbf8); color:#182134; }
    .lead-detail-deal-status .ic-check { color:#1e9a57; }
    .lead-detail-delete { display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:0 10px; border:0; border-radius:11px; background:transparent; color:var(--muted); font:inherit; font-size:14px; font-weight:750; cursor:pointer; transition:color .14s ease, background .14s ease; }
    .lead-detail-delete svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
    .lead-detail-delete:hover { color:#e8392b; background:color-mix(in srgb,#e8392b 9%,transparent); }
    .lead-drawer .crm-analytics--lead-detail { border-radius:20px; }
    .lead-drawer .crm-analytics--lead-detail summary { padding:18px 19px; }
    .lead-drawer .crm-analytics--lead-detail summary > span { font-size:19px; }
    .lead-drawer .crm-analytics--lead-detail summary small { font-size:12px; }
    .lead-drawer .crm-analytics--lead-detail summary svg { width:21px; height:21px; }
    .deal-detail-contacts .messenger-icon-link--telegram,.lead-drawer .lead-detail-contacts .messenger-icon-link--telegram { background:#229ed9; }
    .deal-detail-contacts .messenger-icon-link--max,.lead-drawer .lead-detail-contacts .messenger-icon-link--max { background:linear-gradient(145deg, #35c8ff 0%, #287cff 38%, #5339f5 68%, #a23cec 100%); }
    .deal-detail-contacts .messenger-icon-link--whatsapp,.lead-drawer .lead-detail-contacts .messenger-icon-link--whatsapp { background:#20b95a; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-body { gap:16px; padding:0 20px 22px; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-list { gap:12px; margin-top:18px; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-list div,.lead-drawer .crm-analytics--lead-detail .crm-analytics-utm div { grid-template-columns:minmax(132px,.75fr) minmax(0,1.5fr); gap:13px; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-list dt,.lead-drawer .crm-analytics--lead-detail .crm-analytics-utm b { font-size:13px; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-list dd,.lead-drawer .crm-analytics--lead-detail .crm-analytics-utm span { font-size:14px; font-weight:750; }
    .lead-drawer .crm-analytics--lead-detail .crm-analytics-utm { gap:12px; padding-top:18px; }
    .lead-detail-message { display:grid; gap:7px; padding:16px; border:1px solid var(--line); border-radius:18px; background:var(--surface-soft); }
    .lead-detail-message strong { font-size:14px; }
    .lead-detail-message p { margin:0; color:var(--muted); font-size:14px; line-height:1.5; white-space:pre-wrap; }
    @media (max-width:700px) { .lead-drawer { top:8px; right:8px; bottom:8px; width:calc(100vw - 16px); padding:22px; border-radius:24px; } .lead-drawer .deal-drawer-head h3 { font-size:28px; } .lead-drawer-actions--detail { align-items:flex-start; flex-direction:column; } .lead-drawer .crm-analytics--lead-detail .crm-analytics-list div,.lead-drawer .crm-analytics--lead-detail .crm-analytics-utm div { grid-template-columns:1fr; gap:3px; } }
    .deal-drag-actions { position: sticky; bottom: 16px; z-index: 90; width: 100%; margin-top: 14px; display: none; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 24px; background: color-mix(in srgb, var(--surface) 94%, transparent); box-shadow: 0 28px 90px rgba(15, 23, 42, .18); backdrop-filter: blur(18px); pointer-events: none; }
    .deal-drag-actions.is-visible { display: grid; }
    body.sidebar-collapsed .deal-drag-actions { width: 100%; }
    .deal-drag-actions.is-visible .deal-drop-action { pointer-events: auto; }
    .deal-drop-action { min-height: 82px; display: grid; place-items: center; border: 2px dashed var(--line); border-radius: 18px; color: var(--muted); font-weight: 800; transition: transform .16s ease, border-color .16s ease, background .16s ease; }
    .deal-drop-action.delete { color: #dc2626; background: color-mix(in srgb, #fee2e2 44%, var(--surface)); }
    .deal-drop-action.won { color: #166534; background: color-mix(in srgb, #dcfce7 50%, var(--surface)); }
    .deal-drop-action.is-over { transform: translateY(-3px) scale(1.01); border-color: currentColor; }
    .stories-toolbar { display: flex; align-items: center; gap: 14px; margin-top: 18px; }
    .stories-toolbar strong { color: color-mix(in srgb, var(--ink) 82%, var(--muted)); font-size: 18px; }
    .story-add-button { display: grid; place-items: center; width: 58px; height: 58px; padding: 0 0 5px; border: 3px solid #22a51d; border-radius: 50%; background: var(--surface); color: #22a51d; font-size: 44px; line-height: 1; box-shadow: 0 14px 35px rgba(15, 23, 42, .12); }
    .story-add-button:disabled { opacity: .45; cursor: not-allowed; }
    .story-file-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .stories-preview { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 16px; }
    .story-preview-card { width: 158px; display: grid; gap: 10px; color: color-mix(in srgb, var(--ink) 82%, var(--muted)); font-weight: 600; }
    .story-preview-media { position: relative; width: 132px; height: 162px; overflow: hidden; padding: 4px; border-radius: 22px; background: #22a51d; box-shadow: 0 14px 35px rgba(15, 23, 42, .12); }
    .story-preview-media img { width: 100%; height: 100%; display: block; object-fit: cover; border: 3px solid #fff; border-radius: 18px; background: var(--surface-soft); }
    .story-preview-media::after { content: ""; position: absolute; left: 7px; right: 7px; bottom: 7px; height: 62%; border-radius: 0 0 15px 15px; background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.62)); pointer-events: none; }
    .story-preview-media span { position: absolute; left: 16px; right: 14px; bottom: 14px; z-index: 1; color: #fff; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-shadow: 0 2px 8px rgba(0,0,0,.45); font-size: 18px; line-height: 1.05; font-weight: 700; }
    .story-remove-button { position: absolute; top: 9px; right: 9px; z-index: 2; display: grid; place-items: center; width: 28px; height: 28px; min-height: 0; padding: 0; border-radius: 50%; background: rgba(15, 23, 42, .72); color: #fff; font-size: 20px; line-height: 1; }
    .story-preview-card label { margin: 0; font-size: 13px; }
    .story-preview-card input { min-height: 40px; padding: 9px 10px; border-radius: 12px; }
    .story-upload-card { width: 158px; min-height: 0; display: grid; gap: 10px; padding: 0; border: 0; border-radius: 0; background: transparent; color: #22a51d; cursor: pointer; text-align: left; box-shadow: none; }
    .story-upload-media { width: 132px; height: 162px; display: grid; place-items: center; align-content: center; gap: 10px; padding: 14px; border: 4px solid #22a51d; border-radius: 22px; background: var(--surface); box-shadow: 0 14px 35px rgba(15, 23, 42, .12); text-align: center; transition: transform .18s ease, box-shadow .18s ease; }
    .story-upload-card:hover .story-upload-media { transform: translateY(-2px); box-shadow: 0 18px 45px rgba(15, 23, 42, .16); }
    .story-upload-plus { display: grid; place-items: center; width: 54px; height: 54px; border: 3px solid currentColor; border-radius: 50%; font-size: 42px; line-height: 1; padding-bottom: 5px; }
    .story-upload-media strong { color: #22a51d; font-size: 14px; line-height: 1.15; }
    .review-sources { display: grid; gap: 12px; margin-top: 16px; }
    .review-source-row { display: grid; grid-template-columns: minmax(180px, 240px) minmax(260px, 1fr); gap: 14px; align-items: end; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
    .switch-label { display: flex; align-items: center; gap: 10px; margin: 0; min-height: 48px; cursor: pointer; }
    .switch-label input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
    .switch-control { position: relative; width: 48px; height: 28px; flex: 0 0 auto; border-radius: 999px; background: #cbd5e1; transition: background .18s ease; }
    .switch-control::after { content: ""; position: absolute; top: 4px; left: 4px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 2px 8px rgba(15, 23, 42, .2); transition: transform .18s ease; }
    .switch-label input:checked + .switch-control { background: var(--brand-btn); }
    .switch-label input:checked + .switch-control::after { transform: translateX(20px); }
    .review-source-body { display: grid; gap: 8px; }
    .review-source-input { margin: 0; }
    .review-source-input input:disabled { background: var(--surface-soft); color: var(--muted); cursor: not-allowed; }
    .review-source-meta { padding: 10px 12px; border-radius: 12px; background: var(--surface); color: var(--muted); font-size: 13px; line-height: 1.35; font-weight: 600; }
    .review-source-meta[hidden] { display: none; }
    .reviews-rating-controls { grid-template-columns: minmax(140px, 180px); margin-top: 12px; }
    .reviews-preview { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 16px; }
    .reviews-summary { grid-column: 1 / -1; color: var(--muted); font-weight: 600; }
    .review-preview-card { min-height: 180px; display: grid; align-content: start; gap: 10px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
    .review-preview-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; }
    .review-preview-avatar { display: grid; place-items: center; width: 42px; height: 42px; overflow: hidden; border-radius: 50%; background: var(--surface-soft); color: var(--brand); font-weight: 600; }
    .review-preview-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .review-preview-logo { width: 68px; max-height: 24px; object-fit: contain; }
    .review-preview-stars { color: #f59e0b; letter-spacing: 1px; font-size: 18px; }
    .review-preview-card p { margin: 0; color: color-mix(in srgb, var(--ink) 82%, var(--muted)); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
    .home-dashboard { display: grid; gap: 18px; }
    .calendar-page-card .section-head-row { gap: 20px; }
    .calendar-page-card .head-actions { margin-left: auto; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
    .calendar-page-card .head-actions > button { white-space: nowrap; }
    @media (max-width: 700px) { .calendar-page-card .head-actions { width: 100%; } .calendar-page-card .head-actions > button { flex: 1 1 180px; } }
    .home-metrics-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
    @media (max-width: 1280px) { .home-metrics-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
    .home-metric-card { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 11px; align-items: start; padding: 15px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: 0 14px 44px rgba(15, 23, 42, .05); }
    .home-metric-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; }
    .home-metric-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }
    .home-metric-card p { min-height: 30px; margin: 0 0 8px; color: color-mix(in srgb, var(--ink) 76%, var(--muted)); font-size: 12.5px; font-weight: 800; line-height: 1.2; }
    @media (max-width: 1280px) { .home-metric-card p { min-height: 0; } }
    .home-metric-card strong { display: inline-block; margin-right: 6px; font-size: 24px; line-height: 1; letter-spacing: 0; }
    .home-metric-card em { font-style: normal; font-size: 12px; font-weight: 800; white-space: nowrap; }
    .home-metric-card em.good { color: #22c55e; }
    .home-metric-card em.bad { color: #ef4444; }
    .home-metric-card small { display: block; margin-top: 8px; color: var(--muted); font-size: 11.5px; font-weight: 700; line-height: 1.3; }
    .tone-violet .home-metric-icon { background: #f1e8ff; color: #7c3aed; }
    .tone-green .home-metric-icon { background: #e6f8ec; color: #22c55e; }
    .tone-red .home-metric-icon { background: #ffecec; color: #ef4444; }
    .tone-blue .home-metric-icon { background: #e9f2ff; color: #2f80ed; }
    .analytics-conversions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
    .conv-chip { display: inline-flex; align-items: baseline; gap: 6px; padding: 9px 14px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-size: 13px; font-weight: 600; }
    .conv-chip strong { color: var(--ink); font-size: 15px; }
    .deal-board-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 14px 0 4px; }
    .deal-won-toggle.on { background: #111827; color: #fff; border-color: #111827; }
    body[data-theme="dark"] .deal-won-toggle.on { background: #f5f5f5; color: #111; border-color: #f5f5f5; }
    .deal-stage-sum { display: block; margin-top: 2px; color: var(--muted); font-size: 12px; font-weight: 700; font-style: normal; white-space: nowrap; }
    .deal-won-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; margin-top: 14px; }
    .deal-won-total { grid-column: 1 / -1; padding: 12px 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); color: var(--ink); font-weight: 800; font-size: 14px; }
    .deal-won-card { display: grid; gap: 8px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
    .deal-won-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
    .deal-won-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 12px; }
    .connect-install-status { display: flex; align-items: center; gap: 12px; margin: 14px 0; padding: 12px 16px; border-radius: 14px; border: 1px solid var(--line); background: var(--surface-soft); font-size: 14px; }
    .connect-install-status i { width: 28px; height: 28px; flex: none; display: inline-grid; place-items: center; border-radius: 50%; font-style: normal; font-weight: 800; }
    .connect-install-status i svg { width: 14px; height: 14px; }
    .connect-install-status span { flex: 1; min-width: 0; color: var(--muted); }
    .connect-install-status span strong { color: var(--ink); }
    .connect-install-status.ok { border-color: color-mix(in srgb, #22c55e 40%, var(--line)); background: color-mix(in srgb, #22c55e 7%, var(--surface)); }
    .connect-install-status.ok i { background: #dcf5e5; color: #16803c; }
    .connect-install-status.warn { border-color: color-mix(in srgb, #f59e0b 45%, var(--line)); background: color-mix(in srgb, #f59e0b 7%, var(--surface)); }
    .connect-install-status.warn i { background: #fdf0d2; color: #b45309; }
    .connect-install-status.none i { background: var(--surface); color: var(--muted); border: 1px solid var(--line); }
    .widget-connect-code { position: relative; }
    .widget-connect-code.collapsed textarea { min-height: 0; height: 74px; max-height: 74px; overflow: hidden; resize: none; }
    .widget-connect-code.collapsed .widget-code-fade { position: absolute; left: 1px; right: 1px; bottom: 1px; height: 42px; border-radius: 0 0 12px 12px; background: linear-gradient(180deg, transparent, var(--surface)); pointer-events: none; }
    .widget-connect-code:not(.collapsed) .widget-code-fade { display: none; }
    .widget-connect-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
    .connect-guide { margin-top: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); overflow: hidden; }
    .connect-guide-tabs { display: flex; gap: 4px; padding: 8px; border-bottom: 1px solid var(--line); background: var(--surface-soft); overflow-x: auto; }
    .connect-guide-tabs button { display: inline-flex; align-items: center; gap: 7px; min-height: 34px; padding: 0 14px; border: 0; border-radius: 999px; background: transparent; color: var(--muted); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; white-space: nowrap; }
    .connect-guide-logo { display: inline-flex; flex: 0 0 auto; }
    .connect-guide-logo svg { width: 15px; height: 15px; display: block; }
    .connect-guide-tabs button.on { background: var(--surface); color: var(--ink); box-shadow: 0 4px 12px rgba(15, 23, 42, .08); }
    .connect-guide-steps { margin: 0; padding: 16px 18px 16px 34px; display: grid; gap: 10px; color: var(--muted); font-size: 13px; line-height: 1.5; }
    .connect-guide-steps strong { color: var(--ink); }
    .connect-guide-steps.hidden { display: none; }
    .connect-analytics-card { margin-top: 18px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .connect-analytics-head { display: flex; align-items: center; gap: 12px; }
    .connect-analytics-icon { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; background: transparent; color: var(--brand); }
    .connect-analytics-icon img { width: 38px; height: 38px; display: block; }
    .connect-analytics-head > div { display: grid; flex: 1; min-width: 0; gap: 3px; }
    .connect-analytics-head strong { font-size: 15px; }
    .connect-analytics-head span { color: var(--muted); font-size: 12px; font-weight: 600; line-height: 1.4; }
    .connect-analytics-switch { position: relative; display: inline-block; flex: 0 0 42px; width: 42px; height: 24px; margin: 0 0 0 auto; cursor: pointer; }
    .connect-analytics-switch input { position: absolute; z-index: 1; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
    .connect-analytics-switch i { position: absolute; inset: 0; border-radius: 999px; background: #cbd5e1; transition: background .15s; }
    .connect-analytics-switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform .15s; }
    .connect-analytics-switch input:checked + i { background: var(--brand); }
    .connect-analytics-switch input:checked + i::after { transform: translateX(18px); }
    .connect-analytics-switch input:focus-visible + i { outline: 3px solid color-mix(in srgb, var(--brand) 25%, transparent); outline-offset: 2px; }
    .connect-analytics-fields { display: grid; gap: 13px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
    .connect-analytics-fields.hidden { display: none; }
    .connect-analytics-goals.hidden { display: none; }
    .connect-analytics-goals { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .connect-analytics-label { display: inline-flex; align-items: center; gap: 5px; }
    .connect-analytics-info { position: relative; display: inline-grid; place-items: center; width: 15px; height: 15px; border-radius: 50%; color: var(--muted); cursor: help; outline: none; }
    .connect-analytics-info svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; }
    .connect-analytics-info::after { content: attr(data-tooltip); position: absolute; z-index: 5; left: 50%; bottom: calc(100% + 8px); width: 220px; padding: 9px 11px; border-radius: 9px; background: #182230; color: #fff; font-size: 12px; font-weight: 600; line-height: 1.35; text-align: left; box-shadow: 0 8px 18px rgba(15, 23, 42, .18); opacity: 0; pointer-events: none; transform: translate(-50%, 4px); transition: opacity .15s ease, transform .15s ease; }
    .connect-analytics-info:hover::after, .connect-analytics-info:focus::after { opacity: 1; transform: translate(-50%, 0); }
    .connect-analytics-info:focus-visible { outline: 2px solid color-mix(in srgb, var(--brand) 45%, transparent); outline-offset: 2px; }
    .connect-analytics-hint { margin: 0; color: var(--muted); font-size: 12px; font-weight: 600; line-height: 1.5; }
    .connect-analytics-hint a { color: var(--brand); }
    @media (max-width: 700px) {
      .connect-analytics-goals { grid-template-columns: 1fr; }
      .connect-analytics-card { padding: 14px; }
      .connect-analytics-head { display: grid; grid-template-columns: 38px minmax(0, 1fr) 42px; gap: 10px; }
      .connect-analytics-head > div { display: contents; }
      .connect-analytics-icon { grid-column: 1; grid-row: 1; }
      .connect-analytics-head strong { grid-column: 2; grid-row: 1; }
      .connect-analytics-head span { grid-column: 1 / -1; grid-row: 2; margin-top: 2px; }
      .connect-analytics-switch { grid-column: 3; grid-row: 1; }
    }
    .call-widget-switch { position: relative; width: 40px; height: 24px; flex: none; cursor: pointer; display: inline-block; }
    .call-widget-switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; z-index: 1; }
    .call-widget-switch i { position: absolute; inset: 0; border-radius: 999px; background: #cbd5e1; transition: background .15s; }
    .call-widget-switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: left .15s; }
    .call-widget-switch input:checked + i { background: #1d9e75; }
    .call-widget-switch input:checked + i::after { left: 19px; }
    .side-badge { margin-left: auto; min-width: 20px; height: 20px; padding: 0 6px; display: inline-grid; place-items: center; border-radius: 999px; background: #ef4444; color: #ffffff; font-size: 11px; font-weight: 800; line-height: 1; }
    .side-badge.hidden { display: none; }
    .tone-amber .home-metric-icon { background: #fef3e2; color: #d97706; }
    .tone-teal .home-metric-icon { background: #e0f5f2; color: #0d9488; }
    .home-period-switch { display: inline-flex; gap: 4px; padding: 4px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); }
    .home-period-switch button { min-height: 30px; padding: 0 14px; border: 0; border-radius: 999px; background: transparent; color: var(--muted); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
    .home-period-switch button.on { background: var(--surface); color: var(--ink); box-shadow: 0 4px 12px rgba(15, 23, 42, .08); }
    .home-main-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(330px, .86fr); gap: 14px; align-items: stretch; }
    .calls-history-page { display:grid; gap:18px; max-width:1280px; }
    .calls-history-back { text-decoration:none; }
    .calls-history-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:16px; align-items:stretch; padding:18px; border:1px solid var(--line); border-radius:20px; background:var(--surface); }
    .calls-history-filter { display:grid; gap:7px; min-width:0; }
    .calls-history-filter label { color:var(--muted); font-size:12px; font-weight:850; }
    .calls-history-native-select { display:none; }
    .calls-history-picker { position:relative; min-width:0; }
    .calls-history-picker-button { width:100%; min-height:58px; display:grid; grid-template-columns:38px minmax(0,1fr) 32px; align-items:center; gap:10px; padding:8px 10px; border:1px solid var(--line); border-radius:16px; background:var(--surface); color:var(--ink); text-align:left; cursor:pointer; transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
    .calls-history-picker-button:hover { border-color:color-mix(in srgb,var(--brand) 40%,var(--line)); background:color-mix(in srgb,var(--surface) 88%,var(--surface-soft)); }
    .calls-history-picker.open .calls-history-picker-button { border-color:color-mix(in srgb,var(--brand) 58%,var(--line)); box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 14%,transparent); }
    .calls-history-picker-icon,.calls-history-picker-option-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:13px; background:color-mix(in srgb,var(--brand) 12%,var(--surface)); color:var(--brand); }
    .calls-history-picker-icon.employee { background:#edf5ff; color:#3674d9; }.calls-history-picker-icon.status { background:#eaf8ef; color:#21834b; }
    .calls-history-picker-icon svg,.calls-history-picker-option-icon svg,.calls-history-picker-chevron svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; }
    .calls-history-picker-copy { min-width:0; display:grid; gap:2px; }.calls-history-picker-copy strong,.calls-history-picker-copy small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.calls-history-picker-copy strong { color:var(--ink); font-size:14px; font-weight:900; }.calls-history-picker-copy small { color:var(--muted); font-size:11px; font-weight:700; }
    .calls-history-picker-chevron { width:32px; height:32px; display:grid; place-items:center; border-radius:12px; background:var(--surface-soft); color:var(--muted); transition:transform .2s ease,color .18s ease,background .18s ease; }.calls-history-picker.open .calls-history-picker-chevron { transform:rotate(180deg); background:color-mix(in srgb,var(--brand) 12%,var(--surface)); color:var(--brand); }
    .calls-history-picker-menu { position:absolute; z-index:45; top:calc(100% + 8px); left:0; right:0; display:grid; gap:5px; max-height:310px; overflow:auto; padding:8px; border:1px solid var(--line); border-radius:18px; background:var(--surface); box-shadow:0 24px 70px rgba(15,23,42,.16); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-6px) scale(.985); transform-origin:top center; transition:opacity .18s ease,transform .18s ease,visibility .18s ease; }.calls-history-picker.open .calls-history-picker-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0) scale(1); }
    .calls-history-picker-option { width:100%; min-height:48px; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:10px; padding:7px 9px; border:0; border-radius:13px; background:transparent; color:var(--ink); text-align:left; cursor:pointer; }.calls-history-picker-option:hover,.calls-history-picker-option.active { background:var(--surface-soft); }.calls-history-picker-option-icon { width:34px; height:34px; border-radius:11px; }.calls-history-picker-option-icon svg { width:18px; height:18px; }.calls-history-picker-option-copy { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:850; }.calls-history-picker-check { color:var(--brand); font-size:16px; font-weight:900; }
    .calls-history-reset { display:flex; align-items:end; }.calls-history-reset button { min-width:150px; min-height:58px; margin:0; white-space:nowrap; }
    .calls-history-summary { min-height:18px; color:var(--muted); font-size:13px; font-weight:700; }
    .calls-history-list { border:1px solid var(--line); border-radius:20px; background:var(--surface); overflow:hidden; }
    .calls-history-list.empty-list { padding:28px; color:var(--muted); font-weight:700; }
    .calls-history-row { display:grid; grid-template-columns:42px minmax(150px,1.2fr) minmax(120px,1fr) 84px minmax(140px,.9fr) auto; gap:14px; align-items:center; min-height:70px; padding:12px 18px; border-top:1px solid var(--line); }
    .calls-history-row:first-child { border-top:0; }
    .calls-history-avatar { width:38px; height:38px; border-radius:50%; object-fit:cover; }
    .calls-history-avatar.fallback { display:grid; place-items:center; background:color-mix(in srgb,var(--brand) 14%,var(--surface)); color:var(--brand); font-weight:900; }
    .calls-history-main { display:grid; gap:3px; min-width:0; }.calls-history-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calls-history-main span,.calls-history-widget,.calls-history-row>span{color:var(--muted);font-size:13px;font-weight:700}.calls-history-status{padding:6px 9px;border-radius:999px;font-size:12px;white-space:nowrap}.calls-history-status.accepted{background:#e8f7ee;color:#16703a}.calls-history-status.missed{background:#fff0ef;color:#c3473f}.calls-history-status.waiting{background:var(--surface-soft);color:var(--muted)}
    .home-recent-card { margin-top: 14px; }
    .home-widgets-card { display: flex; flex-direction: column; }
    .home-widgets-card .home-widget-list { flex: 1 1 auto; }
    .home-panel-card { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: 0 14px 44px rgba(15, 23, 42, .05); }
    .home-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px 14px; flex-wrap: wrap; margin-bottom: 18px; }
    .home-section-head.compact { margin-bottom: 12px; }
    .home-section-head h2 { margin: 0; font-size: 20px; letter-spacing: 0; white-space: nowrap; }
    .home-section-head .primary { white-space: nowrap; }
    .home-link-button { min-height: 38px; display: inline-flex; align-items: center; gap: 8px; width: fit-content; margin-top: 18px; padding: 0; border: 0; background: transparent; color: var(--brand-ink); font-weight: 800; cursor: pointer; }
    .home-link-button.inline { margin-top: 0; }
    .home-link-button span { color: var(--brand-ink); font-size: 20px; line-height: 1; }
    .home-widget-list { display: grid; gap: 10px; }
    .home-widget-row { width: 100%; display: grid; grid-template-columns: 12px minmax(190px, 1fr) auto minmax(88px, auto) minmax(128px, auto); gap: 14px; align-items: center; min-height: 78px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: color-mix(in srgb, var(--surface) 82%, var(--surface-soft)); color: var(--ink); text-align: left; cursor: pointer; transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease; }
    .home-widget-row:hover { transform: translateY(-1px); border-color: color-mix(in srgb, var(--brand) 26%, var(--line)); background: var(--surface); box-shadow: 0 12px 26px rgba(15, 23, 42, .05); }
    .home-widget-dot { width: 9px; height: 9px; border-radius: 50%; background: #cbd5e1; }
    .home-widget-dot.active { background: #22c55e; box-shadow: 0 0 0 4px rgba(34, 197, 94, .12); }
    .home-widget-main strong { display: block; font-size: 15px; font-weight: 800; }
    .home-widget-main small { display: block; margin-top: 5px; color: var(--muted); font-size: 13px; font-weight: 700; }
    .home-widget-badge { justify-self: start; padding: 7px 12px; border-radius: 999px; font-size: 12px; font-weight: 800; white-space: nowrap; }
    .home-widget-badge.published { background: color-mix(in srgb, #16a34a 14%, var(--surface-soft)); color: #15803d; }
    .home-widget-badge.draft { background: color-mix(in srgb, var(--muted) 16%, var(--surface-soft)); color: var(--muted); }
    @media (max-width: 560px) { .home-widget-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; min-height: 0; padding: 14px; } .home-widget-main { flex: 1 1 55%; min-width: 0; } .home-widget-dot, .home-widget-badge, .home-widget-stat { flex: 0 0 auto; } }
    body[data-theme="dark"] .home-widget-badge.published { color: #4ade80; }
    .home-widget-stat { display: grid; gap: 4px; color: var(--muted); font-size: 12px; font-weight: 700; text-align: center; }
    .home-widget-stat b { color: var(--ink); font-size: 15px; }
    .home-call-list { display: grid; }
    .home-call-row { display: grid; grid-template-columns: 42px minmax(150px, 1fr) minmax(120px, .75fr) minmax(126px, .8fr) minmax(70px, .45fr) minmax(120px, .75fr) 42px; gap: 12px; align-items: center; min-height: 62px; padding: 10px 0; border-top: 1px solid var(--line); }
    .home-call-row:first-child { border-top: 0; }
    .home-call-avatar { display: grid; place-items: center; width: 36px; height: 36px; overflow: hidden; border-radius: 50%; font-size: 14px; font-weight: 800; object-fit: cover; }
    .home-call-row strong { font-size: 14px; font-weight: 800; }
    .home-call-row span { color: var(--muted); font-size: 13px; font-weight: 700; }
    .home-call-status { display: grid; place-items: center; justify-self: end; width: 36px; height: 36px; border-radius: 14px; }
    .home-call-status svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }
    .home-call-status.ok { background: #e8f8ee; color: #22c55e; }
    .home-call-status.missed { background: #ffecec; color: #ef4444; }
    .home-chart-card { min-height: 338px; }
    .home-calls-chart { min-height: 232px; height: 232px; width: 100%; }
    .settings-panel { margin-top: 16px; }
    .settings-messenger-list { display: grid; gap: 10px; margin-top: 14px; }
    .settings-messenger-row { display: flex; align-items: center; gap: 12px 16px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .settings-messenger-row > div { display: grid; gap: 3px; margin-right: auto; }
    .settings-messenger-row strong { font-size: 15px; }
    .settings-messenger-row span { color: var(--muted); font-size: 13px; font-weight: 600; }
    .settings-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; }
    .settings-section-head h2 { margin: 0 0 6px; }
    .settings-section-head p { margin: 0; max-width: 760px; }
    .crm-integration-grid { display: grid; grid-template-columns: repeat(2, minmax(240px, 1fr)); gap: 12px; margin-top: 16px; }
    .crm-integration-card { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); transition: border-color .18s ease, background .18s ease; }
    .crm-integration-card.is-enabled { border-color: color-mix(in srgb, var(--brand) 42%, var(--line)); background: color-mix(in srgb, var(--brand) 5%, var(--surface)); }
    .crm-integration-card.is-ready { border-color: color-mix(in srgb, #16a34a 42%, var(--line)); background: color-mix(in srgb, #16a34a 6%, var(--surface)); }
    .crm-integration-card__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 16px; background: #ffe8df; color: #ff7043; font-weight: 900; }
    .crm-integration-card__icon.blue { background: #eaf1ff; color: #2563eb; font-size: 13px; }
    body[data-theme="dark"] .crm-integration-card__icon { background: color-mix(in srgb, #ff7043 20%, var(--surface-soft)); }
    body[data-theme="dark"] .crm-integration-card__icon.blue { background: color-mix(in srgb, #2563eb 24%, var(--surface-soft)); color: #7ba6f5; }
    .company-danger-panel { display: flex; align-items: center; justify-content: space-between; gap: 16px 22px; flex-wrap: wrap; border-color: color-mix(in srgb, #ef4444 26%, var(--line)); }
    .company-danger-panel > div { min-width: 240px; flex: 1 1 340px; }
    .company-danger-panel h2 { margin: 0 0 6px; }
    .company-danger-panel p { margin: 0; max-width: 760px; }
    .company-danger-panel .secondary { flex: 0 0 auto; white-space: nowrap; }
    .secondary.danger { color: #dc2626; border-color: color-mix(in srgb, #dc2626 34%, var(--line)); }
    .secondary.danger:hover { background: color-mix(in srgb, #dc2626 7%, var(--surface)); }
    body[data-theme="dark"] .secondary.danger { color: #f87171; }
    .crm-integration-card strong, .crm-integration-card span { display: block; }
    .crm-integration-card span { margin-top: 3px; color: var(--muted); font-size: 13px; font-weight: 650; }
    body.modal-open { overflow: hidden; }
    .crm-modal-backdrop { position: fixed; inset: 0; z-index: 220; display: grid; place-items: center; padding: 24px; background: rgba(15, 23, 42, .52); backdrop-filter: blur(10px); }
    .crm-modal-backdrop.hidden { display: none; }
    .crm-modal { width: min(760px, 100%); max-height: min(820px, calc(100vh - 48px)); display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; overflow: hidden; border: 1px solid color-mix(in srgb, var(--line) 84%, transparent); border-radius: 26px; background: var(--surface); box-shadow: 0 32px 90px rgba(15, 23, 42, .25); }
    .crm-modal__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 24px 26px 16px; }
    .crm-modal__header p { margin: 0 0 6px; color: var(--brand); font-size: 13px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
    .crm-modal__header h2 { margin: 0; font-size: 28px; line-height: 1.08; letter-spacing: -.03em; }
    .crm-modal__close { width: 42px; height: 42px; min-height: 42px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: var(--surface-soft); color: var(--ink); font-size: 28px; line-height: 1; }
    .crm-modal__tabs { display: flex; gap: 8px; padding: 0 26px 16px; border-bottom: 1px solid var(--line); }
    .crm-modal__tabs button { min-height: 42px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font-weight: 850; }
    .crm-modal__tabs button.active { border-color: color-mix(in srgb, var(--brand) 48%, var(--line)); background: color-mix(in srgb, var(--brand) 9%, var(--surface)); color: var(--brand); }
    .crm-modal__body { overflow: auto; padding: 20px 26px 8px; }
    .crm-modal__hint { margin: 12px 0 16px; color: var(--muted); line-height: 1.45; }
    .crm-switch { justify-content: flex-start; width: fit-content; padding: 10px 12px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); }
    .crm-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .crm-form-grid.single { grid-template-columns: 1fr; }
    .crm-form-grid label { margin: 0; }
    .crm-form-grid label span { color: var(--muted); font-size: 12px; font-weight: 650; }
    .crm-form-grid input:disabled { background: var(--surface-soft); color: var(--muted); cursor: not-allowed; }
    .crm-doc-link { display: inline-flex; margin-top: 16px; font-weight: 850; }
    .crm-modal__footer { display: flex; justify-content: flex-end; gap: 10px; padding: 18px 26px 24px; border-top: 1px solid var(--line); }
    .switch-label.compact { min-height: 36px; font-size: 13px; font-weight: 800; }
    .switch-label.compact .switch-control { width: 44px; height: 26px; }
    .switch-label.compact .switch-control::after { width: 18px; height: 18px; }
    .switch-label.compact input:checked + .switch-control::after { transform: translateX(18px); }
    .support-chat { position: fixed; right: clamp(18px, 4vw, 72px); bottom: clamp(18px, 4vw, 46px); z-index: 140; font-family: "Gilroy", sans-serif; transition: bottom .28s cubic-bezier(.2,.8,.2,1); pointer-events: none; }
    .support-chat__launcher, .support-chat.is-open .support-chat__window { pointer-events: auto; }
    .support-chat.is-open { bottom: clamp(102px, 7vw, 124px); }
    .support-chat__window { width: min(360px, calc(100vw - 24px)); height: min(520px, calc(100vh - 92px)); min-height: 440px; display: grid; grid-template-rows: 72px 1fr auto; background: var(--surface); border: 1px solid color-mix(in srgb, var(--line) 82%, transparent); border-radius: 22px; box-shadow: 0 28px 80px rgba(0,0,0,.14), 0 12px 30px rgba(0,0,0,.08); overflow: hidden; transform-origin: right bottom; transform: translateY(22px) scale(.96); opacity: 0; pointer-events: none; transition: transform .32s cubic-bezier(.2,.8,.2,1), opacity .24s ease; }
    .support-chat.is-open .support-chat__window { transform: translateY(0) scale(1); opacity: 1; pointer-events: auto; }
    .support-chat.is-dragover .support-chat__window { outline: 2px dashed var(--brand); outline-offset: -8px; }
    .support-chat__header { display: grid; grid-template-columns: 42px 1fr 42px; align-items: center; padding: 16px 16px 8px; background: var(--surface); }
    .support-chat__title { margin: 0; text-align: center; font-size: 18px; line-height: 1.08; font-weight: 800; letter-spacing: -.035em; white-space: nowrap; }
    .support-chat__icon-btn { width: 34px; height: 34px; min-height: 34px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; border-radius: 12px; color: var(--muted); cursor: pointer; transition: background .18s ease, color .18s ease, transform .18s ease; }
    .support-chat__icon-btn:hover { background: var(--surface-soft); color: var(--ink); transform: translateY(-1px); }
    .support-chat__icon-btn svg { width: 24px; height: 24px; }
    .support-chat__messages { padding: 0 14px 12px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--muted) 28%, transparent) transparent; }
    .support-chat__messages::-webkit-scrollbar { width: 6px; }
    .support-chat__messages::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--muted) 28%, transparent); border-radius: 999px; }
    .support-chat__empty { min-height: 100%; display: grid; align-content: center; gap: 10px; padding: 24px 8px; text-align: center; color: var(--muted); }
    .support-chat__empty strong { color: var(--ink); font-size: 18px; }
    .support-chat__bubble { position: relative; width: fit-content; max-width: calc(100% - 34px); margin: 8px 34px 8px 0; padding: 14px 14px 28px; background: var(--surface-soft); border-radius: 18px 18px 18px 6px; color: var(--ink); font-size: 15px; line-height: 1.32; letter-spacing: -.02em; overflow: visible; }
    .support-chat__bubble::after { content: ""; position: absolute; bottom: 0; width: 14px; height: 14px; background: inherit; }
    .support-chat__bubble--agent::after { left: -5px; clip-path: polygon(100% 0, 100% 100%, 0 100%); }
    .support-chat__bubble p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
    .support-chat__bubble a { color: var(--brand); text-decoration: none; word-break: break-word; }
    .support-chat__bubble--user { margin-right: 0; margin-left: auto; background: var(--brand); color: #fff; border-radius: 18px 18px 6px 18px; }
    .support-chat__bubble--user > p { color: #fff; }
    .support-chat__bubble--user::after { right: -5px; clip-path: polygon(0 0, 100% 100%, 0 100%); }
    .support-chat__bubble--user a { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
    .support-chat__bubble--user .support-chat__time { color: rgba(255,255,255,.75); }
    .support-chat__operator { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; font-size: 15px; line-height: 1; font-weight: 800; letter-spacing: -.03em; }
    .support-chat__avatar { width: 28px; height: 28px; flex: 0 0 auto; display: block; }
    .support-chat__time { position: absolute; right: 12px; bottom: 9px; font-size: 12px; line-height: 1; color: color-mix(in srgb, var(--muted) 84%, transparent); letter-spacing: -.03em; }
    .support-chat__image { display: block; width: 100%; max-height: 220px; object-fit: cover; margin: 0 0 10px; border-radius: 9px; background: rgba(0,0,0,.08); }
    .support-chat__composer-wrap { padding: 6px 14px 14px; background: var(--surface); }
    .support-chat__composer { height: 52px; display: grid; grid-template-columns: 36px 1fr 40px; align-items: center; gap: 0; padding: 6px 8px 6px 10px; border: 1.5px solid color-mix(in srgb, var(--muted) 34%, var(--line)); border-radius: 999px; background: var(--surface); }
    .support-chat__attach { width: 32px; height: 32px; min-height: 32px; position: relative; padding: 0; border: 0; background: transparent; cursor: pointer; border-radius: 50%; }
    .support-chat__attach::before, .support-chat__attach::after { content: ""; position: absolute; left: 50%; top: 50%; width: 21px; height: 2px; border-radius: 99px; background: var(--muted); transform: translate(-50%, -50%); }
    .support-chat__attach::after { transform: translate(-50%, -50%) rotate(90deg); }
    .support-chat__input { width: 100%; height: 36px; min-height: 36px; padding: 0; border: 0; border-radius: 0; outline: 0; background: transparent; box-shadow: none; font: 700 15px/1 "Gilroy", sans-serif; letter-spacing: -.025em; color: var(--ink); }
    .support-chat__input:focus { box-shadow: none; }
    .support-chat__input::placeholder { color: color-mix(in srgb, var(--muted) 80%, transparent); }
    .support-chat__send { width: 36px; height: 36px; min-height: 36px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: var(--brand); color: #fff; cursor: pointer; transition: transform .16s ease, background .16s ease; }
    .support-chat__send:hover { transform: translateY(-1px) scale(1.03); background: var(--brand-btn-hover); }
    .support-chat__send svg { width: 22px; height: 22px; }
    .support-chat__preview { position: relative; width: fit-content; max-width: 100%; margin: 0 0 8px 46px; padding: 4px 30px 4px 4px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); }
    .support-chat__preview.hidden { display: none; }
    .support-chat__preview img { display: block; width: 76px; height: 56px; object-fit: cover; border-radius: 9px; }
    .support-chat__preview button { position: absolute; right: 4px; top: 4px; width: 22px; height: 22px; min-height: 22px; padding: 0; border: 0; border-radius: 50%; background: rgba(0,0,0,.68); color: #fff; cursor: pointer; }
    .support-chat__status { min-height: 18px; margin: 6px 4px 0; color: var(--muted); font-size: 12px; font-weight: 700; }
    .support-chat__status.error { color: #dc2626; }
    .support-chat__launcher { width: 68px; height: 68px; min-height: 68px; position: absolute; right: 0; bottom: 0; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: linear-gradient(180deg, #6b7280 0%, #3f4652 100%); color: #fff; box-shadow: 0 22px 48px rgba(31,41,55,.28), inset 0 0 0 1px rgba(255,255,255,.18); cursor: pointer; transition: width .24s ease, height .24s ease, bottom .24s ease, transform .22s ease, border-radius .22s ease, box-shadow .22s ease; }
    .support-chat__launcher:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 26px 56px rgba(31,41,55,.34), inset 0 0 0 1px rgba(255,255,255,.22); }
    .support-chat__launcher:active { transform: translateY(-1px) scale(.98); }
    .support-chat__launcher-chat-icon { position: relative; width: 34px; height: 34px; display: block; transform: translateZ(0); }
    .support-chat__launcher-chat-icon svg { width: 34px; height: 34px; display: block; filter: drop-shadow(0 1px 0 rgba(255,255,255,.12)); animation: chatIconFloat 2.45s cubic-bezier(.4,0,.2,1) infinite; }
    .support-chat__launcher-chat-icon .chat-icon-dot { transform-origin: center; animation: chatIconTyping 1.35s ease-in-out infinite; }
    .support-chat__launcher-chat-icon .chat-icon-dot:nth-of-type(2) { animation-delay: .15s; }
    .support-chat__launcher-chat-icon .chat-icon-dot:nth-of-type(3) { animation-delay: .3s; }
    .support-chat__launcher-arrow { display: none; width: 34px; height: 34px; }
    .support-chat.is-open .support-chat__launcher { width: 68px; height: 68px; bottom: -86px; border-radius: 22px; }
    .support-chat.is-open .support-chat__launcher-chat-icon { display: none; }
    .support-chat.is-open .support-chat__launcher-arrow { display: block; }
    .support-chat.is-open .support-chat__launcher:hover { border-radius: 26px; }
    .support-chat__badge { position: absolute; right: -4px; top: -5px; min-width: 24px; height: 24px; display: inline-grid; place-items: center; padding: 0 7px; border: 3px solid #4b5563; border-radius: 999px; background: var(--brand); color: #fff; font-size: 12px; font-weight: 900; line-height: 1; }
    .support-chat__badge.hidden { display: none; }
    @keyframes chatIconFloat { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-2px) rotate(-1deg); } }
    @keyframes chatIconTyping { 0%, 72%, 100% { transform: translateY(0) scale(.86); opacity: .45; } 34% { transform: translateY(-3px) scale(1); opacity: 1; } }
    @keyframes chatIconPulse { 0% { box-shadow: 0 0 0 0 rgba(255,112,67,.55); transform: scale(1); } 72%, 100% { box-shadow: 0 0 0 11px rgba(255,112,67,0); transform: scale(1.08); } }
    @media (prefers-reduced-motion: reduce) {
      .support-chat__launcher-chat-icon svg,
      .support-chat__launcher-chat-icon .chat-icon-dot { animation: none; }
    }
    @media (max-width: 640px) {
      .support-chat { right: 12px; bottom: 12px; left: 12px; }
      .support-chat.is-open { bottom: 92px; }
      .support-chat__window { width: 100%; height: calc(100vh - 24px); min-height: 0; grid-template-rows: 72px 1fr auto; border-radius: 26px; }
      .support-chat__header { grid-template-columns: 50px 1fr 50px; padding: 18px 18px 8px; }
      .support-chat__messages { padding: 0 16px 16px; }
      .support-chat__composer-wrap { padding: 6px 16px 18px; }
      .support-chat__launcher { width: 64px; height: 64px; min-height: 64px; border-radius: 50%; right: 0; }
      .support-chat.is-open .support-chat__launcher { width: 64px; height: 64px; bottom: -78px; }
    }
    .emp2-messengers { display: flex; flex-wrap: wrap; gap: 6px 10px; margin-top: 5px; }
    .emp2-msgr { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 3px 6px 3px 9px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); }
    .emp2-msgr .emp2-status { margin: 0; }
    .emp2-msgr .emp2-switch { width: 36px; height: 22px; }
    .emp2-msgr .emp2-switch i::after { width: 16px; height: 16px; }
    .emp2-msgr .emp2-switch input:checked + i::after { left: 17px; }
    .emp2-max-mark { display: inline-grid; place-items: center; min-width: 28px; height: 18px; padding: 0 5px; border-radius: 999px; background: #111827; color: #fff; font-size: 9px; font-weight: 900; letter-spacing: .03em; }
    #employeesView .emp2-messengers { align-items: center; gap: 10px; margin-top: 8px; }
    #employeesView .emp2-msgr,
    #employeesView .emp2-copy { width: auto; height: 38px; min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; margin-top: 0; padding: 0 10px; box-sizing: border-box; border: 1px solid color-mix(in srgb, var(--line) 84%, var(--muted)); border-radius: 999px; background: var(--surface); box-shadow: 0 1px 0 rgba(15, 23, 42, .03); font-size: 14px; font-weight: 700; line-height: 1; text-decoration: none; transition: border-color .16s ease, background .16s ease, transform .16s ease; }
    #employeesView .emp2-msgr:hover,
    #employeesView .emp2-copy:hover { border-color: color-mix(in srgb, currentColor 34%, var(--line)); background: color-mix(in srgb, currentColor 4%, var(--surface)); transform: translateY(-1px); }
    #employeesView .emp2-copy { color: var(--brand); cursor: pointer; }
    #employeesView .emp2-copy[data-copy-invite] { color: #1d9e75; }
    #employeesView .emp2-msgr .emp2-status { gap: 7px; margin: 0; color: inherit; font-size: 14px; font-weight: 700; }
    #employeesView .emp2-status.ok { color: #1d9e75; }
    #employeesView .emp2-messengers svg { width: 18px; height: 18px; flex: none; }
    #employeesView .emp2-msgr .emp2-switch { width: 38px; height: 22px; margin-left: 2px; }
    #employeesView .emp2-msgr .emp2-switch i::after { width: 16px; height: 16px; }
    #employeesView .emp2-msgr .emp2-switch input:checked + i::after { left: 19px; }
    #employeesView .emp2-max-mark { min-width: 0; height: auto; padding: 0; background: transparent; color: currentColor; font-size: 14px; letter-spacing: 0; }
    .auth-messengers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .messenger-auth-item { min-width: 0; display: grid; align-content: start; gap: 6px; }
    .messenger-auth { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding-inline: 14px; }
    .messenger-auth img { width: 19px; height: 19px; filter: brightness(0) invert(1); }
    .messenger-auth.telegram { background: #2aabee; }
    .messenger-auth.max { background: linear-gradient(135deg, #35c8ff 0%, #2273ff 36%, #4b35ff 64%, #9d3df2 100%); }
    .blocked-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: var(--bg); }
    .blocked-card { width: min(460px, 100%); padding: 28px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); box-shadow: var(--shadow-soft); text-align: center; }
    .blocked-card h1 { margin: 0 0 10px; font-size: 34px; letter-spacing: -.04em; }
    .blocked-reason { padding: 12px 14px; border-radius: 14px; background: var(--surface-soft); color: var(--ink); font-weight: 700; }
    @keyframes app-preset-dot {
      0%, 100% { transform: scale(1); opacity: 1; }
      50% { transform: scale(.82); opacity: .72; }
    }
    @keyframes app-block-shine {
      from { transform: translate3d(-4%, -2%, 0) rotate(0deg); }
      to { transform: translate3d(4%, 2%, 0) rotate(2deg); }
    }
    @media (max-width: 1500px) {
      .booking-settings-layout { grid-template-columns: 1fr; }
      .booking-settings-preview-wide { position: relative; top: auto; }
      .real-calendar-preview, .form-preview-card { max-width: 100%; }
      .rc-main { grid-template-columns: minmax(150px, .72fr) minmax(250px, 1fr) minmax(138px, .58fr); }
      .fp-main { grid-template-columns: 230px minmax(0, 1fr); }
    }
    @media (max-width: 1120px) {
      .booking-settings-grid { grid-template-columns: 1fr; }
      .booking-photo-row { max-width: 360px; }
      .rc-main { grid-template-columns: 1fr; }
      .rc-info, .rc-calendar { border-right: 0; border-bottom: 1px solid var(--line); }
      .rc-times { padding-bottom: 6px; }
    }
    @media (max-width: 860px) {
      .hero-grid, .dashboard, .widget-switcher { grid-template-columns: 1fr; }
      body.sidebar-collapsed .dashboard { grid-template-columns: 1fr; }
      .hero-grid { min-height: auto; padding: 72px 0 28px; }
      .dashboard { width: 100%; max-width: 100%; overflow-x: hidden; padding: 84px 10px 96px; gap: 10px; }
      .sidebar, .workspace, .panel, .steps { width: 100%; max-width: 100%; }
      .mobile-topbar { position: fixed; top: 10px; left: 10px; right: 10px; z-index: 70; height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 8px 8px 16px; border: 1px solid color-mix(in srgb, var(--line) 78%, transparent); border-radius: 20px; background: color-mix(in srgb, var(--surface) 90%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: 0 14px 38px rgba(15, 23, 42, .12); }
      .mobile-logo { display: inline-flex; align-items: center; min-width: 0; }
      .mobile-logo img { width: 96px; height: auto; display: block; }
      body[data-theme="dark"] .mobile-logo { padding: 5px 8px; border-radius: 12px; background: #fff; }
      .sidebar { position: fixed; top: 76px; left: 10px; bottom: 10px; z-index: 65; width: min(330px, calc(100vw - 20px)); max-width: calc(100vw - 20px); min-height: 0; margin: 0; border: 1px solid color-mix(in srgb, var(--line) 72%, transparent); border-radius: 24px; overflow-y: auto; transform: translateX(calc(-100% - 18px)); transition: transform .28s cubic-bezier(.4, 0, .2, 1), box-shadow .28s ease; }
      body.nav-open .sidebar { transform: translateX(0); box-shadow: 0 30px 80px rgba(10, 12, 20, .32); }
      .sidebar-head { display: none; }
      .sidebar-backdrop { display: block; position: fixed; inset: 0; z-index: 55; background: rgba(10, 12, 20, .36); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); opacity: 0; pointer-events: none; transition: opacity .24s ease; }
      body.nav-open .sidebar-backdrop { opacity: 1; pointer-events: auto; }
      body.nav-open { overflow: hidden; }
      .mobile-burger { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 44px; height: 44px; min-height: 44px; flex: 0 0 auto; padding: 0; border: 1px solid color-mix(in srgb, var(--line) 80%, transparent); border-radius: 15px; background: var(--surface-soft); color: var(--ink); cursor: pointer; }
      .mobile-burger:active { transform: scale(.98); }
      .mobile-burger span { display: block; width: 20px; height: 2px; border-radius: 2px; background: var(--ink); transition: transform .3s cubic-bezier(.4, 0, .2, 1), opacity .2s ease; }
      body.nav-open .mobile-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
      body.nav-open .mobile-burger span:nth-child(2) { opacity: 0; }
      body.nav-open .mobile-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
      .workspace { padding-top: clamp(24px, 5vw, 32px); }
      .sidebar-nav { grid-template-columns: 1fr; }
      .sidebar-collapse { display: none; }
      body.sidebar-collapsed .sidebar { padding: 18px; align-items: stretch; }
      body.sidebar-collapsed .sidebar-head { width: 100%; justify-content: space-between; flex-direction: row; }
      body.sidebar-collapsed .sidebar-logo { width: auto; height: auto; overflow: visible; justify-content: flex-start; padding: 7px 0; border-radius: 0; background: transparent; }
      body.sidebar-collapsed .sidebar-logo-full { display: block !important; width: 85px; max-width: 100%; transform: none; }
      body.sidebar-collapsed .sidebar-logo-loop { display: none !important; }
      body.sidebar-collapsed .side-link { width: auto; justify-content: flex-start; padding: 12px 14px; }
      body.sidebar-collapsed .logout { width: auto; justify-content: flex-start; padding: 0 14px; }
      body.sidebar-collapsed .side-link span,
      body.sidebar-collapsed .logout span,
      body.sidebar-collapsed .theme-switcher > span,
      body.sidebar-collapsed .theme-button { position: static; width: auto; height: auto; overflow: visible; clip: auto; white-space: normal; }
      body.sidebar-collapsed .theme-switcher { width: auto; height: auto; display: grid; place-items: stretch; padding: 10px; }
      body.sidebar-collapsed .theme-switcher::before { content: none; }
      body.sidebar-collapsed .theme-switcher > div { display: grid; }
      .topline { align-items: stretch; flex-direction: column; }
      .topline h1, .panel h2, .panel p { overflow-wrap: anywhere; }
      .manager-status-card { min-width: 0; }
      .controls { grid-template-columns: minmax(0, 1fr); }
      .worktime-controls, .analytics-controls, .analytics-grid, .analytics-charts, .home-metrics-grid, .home-main-grid, .employee-add-card, .routing-options, .widget-settings-layout, .widget-main-controls, .department-controls, .widget-create-panel, .calendar-layout, .booking-settings-layout, .booking-settings-grid, .crm-integration-grid, .crm-form-grid, .fp-main, .rc-main { grid-template-columns: 1fr; max-width: none; }
      .settings-profile-footer { align-items: stretch; flex-direction: column; }
      .settings-profile-footer .primary { width: 100%; }
      .company-danger-panel { align-items: stretch; flex-direction: column; }
      .company-danger-panel .secondary { width: 100%; }
      .widget-create-panel { gap: 14px; margin: 20px 0 22px; }
      .widget-create-card { min-height: 300px; padding: 22px; border-radius: 20px; }
      .widget-create-card::after { border-radius: 19px; }
      .widget-create-copy { max-width: 56%; margin-top: 24px; gap: 9px; padding-bottom: 56px; }
      .widget-create-copy strong { font-size: 22px; }
      .widget-create-copy em, .widget-create-copy span { font-size: 15px; }
      .widget-create-copy span { margin-top: 16px; }
      .widget-create-pill { left: 22px; bottom: 22px; }
      .widget-create-art-online { right: 8px; bottom: 24px; width: min(39%, 250px); }
      .widget-create-art-booking { right: 8px; bottom: 30px; width: min(37%, 240px); }
      .widget-create-check { right: 18px; bottom: 18px; width: 46px; height: 46px; }
      .home-widget-row { grid-template-columns: 12px minmax(0, 1fr) auto; }
      .home-widget-stat { grid-column: 2 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); text-align: left; }
      .home-call-row { grid-template-columns: 42px minmax(0, 1fr) 42px; gap: 8px 12px; }
      .home-call-row > span { grid-column: 2 / -1; }
      .home-call-status { grid-column: 3; grid-row: 1; }
      .home-section-head { align-items: flex-start; flex-direction: column; }
      .settings-messenger-row { align-items: stretch; flex-direction: column; }
      .crm-integration-card { grid-template-columns: 48px minmax(0, 1fr); }
      .crm-integration-card > button { grid-column: 1 / -1; width: 100%; }
      .widget-editor-shell { min-height: auto; border-radius: 20px; }
      .widget-editor-topbar { position: static; grid-template-columns: 1fr; }
      .widget-editor-content { grid-template-columns: 1fr; min-height: auto; }
      .widget-editor-side-nav { position: static; min-height: auto; display: flex; gap: 8px; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--line); padding: 10px; }
      .widget-editor-side-nav > span { display: none; }
      .widget-editor-side-nav button { flex: 0 0 auto; white-space: nowrap; background: var(--surface); }
      .widget-editor-content .widget-settings-layout { grid-template-columns: 1fr; padding: 10px; }
      .widget-design-panel { position: static; }
      .call-widget-card { grid-template-columns: 12px minmax(0, 1fr) auto; gap: 10px; }
      .call-widget-badge, .call-widget-meta { grid-column: 2 / -1; }
      .call-widget-card > .ghost:not(.call-widget-menu) { grid-column: 2; justify-self: start; }
      .call-widget-card .call-widget-switch { grid-column: 2; justify-self: start; }
      .call-widget-menu-wrap { grid-row: 1; grid-column: 3; }
      .department-card { grid-template-columns: minmax(0, 1fr); }
      .lead-form-layout { grid-template-columns: 1fr; }
      .lead-field-item { grid-template-columns: 30px minmax(0, 1fr) 34px; }
      .lead-field-type { grid-column: 2 / -1; justify-self: start; }
      .direct-link-grid, .call-block-image-row, .call-block-preview-card { grid-template-columns: 1fr; }
      .call-block-preview { width: 100% !important; max-width: 100%; }
      .call-block-preview-card { min-height: auto; padding: 26px; border-radius: 24px; }
      .call-block-preview-card h3 { font-size: clamp(27px, 8vw, 38px); }
      .call-block-preview-media, .call-block-preview-media img { min-height: 160px; }
      .booking-settings-preview-wide { position: relative; top: auto; }
      .rc-info, .rc-calendar, .fp-left { border-right: 0; border-bottom: 1px solid var(--line); }
      .booking-field-main { grid-template-columns: minmax(0, 1fr) auto; }
      .booking-field-main label { grid-column: 1 / -1; }
      .booking-field-required { justify-self: start; }
      .booking-field-main > .icon-btn { justify-self: end; }
      textarea, input, select, button, .primary, .secondary, .ghost { max-width: 100%; }
      .deal-stage-head { grid-template-columns: 1fr; }
      .review-source-row { grid-template-columns: 1fr; }
      .employee-card { align-items: stretch; flex-direction: column; }
      .employee-order-item { grid-template-columns: 32px 1fr; }
      .employee-order-item small { grid-column: 2; }
      .deal-drag-actions,
      body.sidebar-collapsed .deal-drag-actions { width: 100%; bottom: 10px; }
    }
    @media (max-width: 520px) {
      .dashboard { padding: 84px 6px 96px; }
      .workspace { padding: 16px; border-radius: 22px; }
      .sidebar { padding: 14px; border-radius: 22px; }
      .sidebar-nav { grid-template-columns: 1fr; }
      .panel { padding: 18px; border-radius: 24px; }
      .lead-fields-box { padding: 14px; }
      .lead-field-grid { display: grid; grid-template-columns: minmax(0, 1fr); }
      .lead-form-layout, .lead-calendar-panel { grid-template-columns: 1fr; }
      .lead-color-card-head { align-items: stretch; flex-direction: column; }
      .lead-color-card-head select { width: 100%; }
      .lead-radius-grid { grid-template-columns: 1fr; }
      .lead-color-input-row { grid-template-columns: 42px minmax(0, 1fr); }
      .lead-color-dot { width: 42px; height: 42px; }
      .gradient-editor-row { grid-template-columns: 28px minmax(0, 1fr) 28px; }
      .gradient-editor-row label { grid-column: 1 / -1; }
      .widget-create-card { min-height: 360px; }
      .widget-create-copy { max-width: 100%; padding-right: 92px; padding-bottom: 96px; }
      .widget-create-copy span { max-width: 210px; }
      .widget-create-art-online { right: 8px; bottom: 72px; width: min(46%, 190px); }
      .widget-create-art-booking { right: 8px; bottom: 82px; width: min(44%, 180px); }
      .block-variant-slider { justify-content: center; }
      .call-block-edit-toggle { top: 12px; right: 12px; min-height: 38px; padding: 0 12px; }
      .check-row { width: 100%; justify-content: flex-start; }
      .cta-row, .section-actions, .nav-actions, .lead-actions, .employee-card-actions { width: 100%; align-items: stretch; flex-direction: column; }
      .cta-row > button, .section-actions > button, .nav-actions > a, .lead-actions > button { width: 100%; }
    }
    .widget-status-pill { font-size: 12px; padding: 3px 12px; border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-weight: 800; white-space: nowrap; }
    .widget-status-pill.on { background: color-mix(in srgb, #1D9E75 16%, transparent); color: #0F6E56; }
    .widget-autosave { min-height: 30px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 10px; border: 1px solid transparent; border-radius: 999px; color: var(--muted); font-size: 12px; font-weight: 900; white-space: nowrap; text-align: right; }
    .widget-autosave.saved { border-color: color-mix(in srgb, #1D9E75 24%, transparent); background: color-mix(in srgb, #1D9E75 14%, var(--surface)); color: #0F6E56; box-shadow: 0 8px 18px rgba(15, 110, 86, .08); }
    .widget-autosave.saved::before { content: ""; width: 17px; height: 17px; border-radius: 50%; background-color: #1D9E75; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><path d='M5 13l4 4L19 7'/></svg>"); background-repeat: no-repeat; background-position: center; }
    .ic-check { vertical-align: -3px; }
    .widget-autosave.error { border-color: color-mix(in srgb, #c0392b 28%, transparent); background: color-mix(in srgb, #c0392b 10%, var(--surface)); color: #c0392b; }
    .widget-editor-content { display: block; min-height: calc(100vh - 122px); }
    .widget-stepper { position: sticky; top: 74px; z-index: 5; display: flex; gap: 4px; padding: 14px 18px 0; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(14px); overflow-x: auto; }
    .widget-step { flex: 1 1 0; min-width: 120px; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 4px 6px 0; border: 0; background: transparent; cursor: pointer; }
    .widget-step-num { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--surface-soft); color: var(--muted); font-weight: 800; font-size: 13px; }
    .widget-step-num svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
    .widget-step-label { font-size: 12px; color: var(--muted); font-weight: 700; white-space: nowrap; }
    .widget-step::after { content: ""; display: block; height: 3px; width: 100%; margin-top: 8px; background: var(--line); border-radius: 3px; }
    .widget-step.current .widget-step-num { background: var(--brand); color: #fff; }
    .widget-step.current .widget-step-label { color: var(--ink); }
    .widget-step.current::after { background: var(--brand); }
    .widget-step.done .widget-step-num { background: color-mix(in srgb, #1D9E75 18%, transparent); color: #0F6E56; }
    .widget-step.done .widget-step-label { color: var(--ink); }
    .widget-step.done::after { background: #1D9E75; }
    .widget-editor-section .step-num { display: none; }
    .widget-step-nav { position: sticky; bottom: 0; z-index: 6; display: flex; justify-content: space-between; gap: 12px; margin-top: 6px; padding: 14px 18px; border-top: 1px solid var(--line); background: color-mix(in srgb, var(--surface-main) 88%, transparent); backdrop-filter: blur(12px); }
    .widget-step-nav button { min-width: 130px; }
    .widget-connect-code { display: flex; flex-direction: column; gap: 12px; }
    .widget-connect-code textarea { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; }
    .widget-copy-btn { align-self: flex-start; }
    .widget-connect-hint { font-size: 13px; color: var(--muted); background: var(--surface-soft); border-radius: 12px; padding: 12px 14px; }
    .widget-connect-branding { margin-top: 18px; }
    .widget-connect-ready { margin: 18px 0 0; padding: 13px 15px; border-radius: 14px; background: color-mix(in srgb, #1bba62 10%, var(--surface-soft)); color: color-mix(in srgb, #16803d 82%, var(--ink)); font-size: 13px; font-weight: 700; line-height: 1.4; }
    @keyframes widgetCreatePanelIn { from { opacity: 0; transform: translateY(-6px) scale(.992); } to { opacity: 1; transform: translateY(0) scale(1); } }
    @keyframes widgetCreateCardIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
    .workspace { position: relative; }
    .workspace-user { position: absolute; z-index: 20; top: 20px; right: 64px; }
    .workspace-user-trigger { display:flex; align-items:center; gap:9px; border:0; background:transparent; color:var(--ink); cursor:pointer; font:inherit; }
    .workspace-user img, .workspace-user-avatar, .workspace-menu-avatar img, .workspace-menu-avatar .workspace-user-avatar { width:34px; height:34px; border-radius:50%; object-fit:cover; display:grid; place-items:center; background:linear-gradient(135deg, #ff8a65, #ff5a3d); color:#fff; font-weight:800; }
    .workspace-user-trigger.manager { width:auto; min-width:0; height:46px; gap:8px; justify-content:center; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; transition:opacity .18s ease; }
    .workspace-user-trigger.manager:hover, .workspace-user.open .workspace-user-trigger.manager { background:transparent; border-color:transparent; box-shadow:none; opacity:.78; }
    .workspace-user-trigger.manager img, .workspace-user-trigger.manager .workspace-user-avatar { width:36px; height:36px; }
    .workspace-plan-ring{position:relative;display:grid;place-items:center;width:46px;height:46px}.workspace-plan-ring>svg{position:absolute;inset:0;width:46px;height:46px;transform:rotate(-90deg)}.workspace-plan-ring circle{fill:none;stroke:color-mix(in srgb,var(--line) 78%,transparent);stroke-width:2.4}.workspace-plan-ring-progress{stroke:var(--brand)!important;stroke-linecap:round;stroke-dasharray:113;stroke-dashoffset:var(--plan-offset);transition:stroke-dashoffset .35s ease}.workspace-plan-ring img,.workspace-plan-ring .workspace-user-avatar{position:relative;width:36px!important;height:36px!important;box-shadow:0 0 0 2px var(--surface)}.workspace-plan-label{margin:0;color:var(--muted);font-size:13px;font-weight:800}.workspace-user-trigger.manager:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:4px;border-radius:10px}
    .workspace-user-menu { position:absolute; top:calc(100% + 10px); right:0; width:min(350px, calc(100vw - 28px)); padding:18px; overflow:hidden; border:1px solid color-mix(in srgb, var(--line) 85%, #fff); border-radius:22px; background:color-mix(in srgb, var(--surface) 96%, rgba(255,255,255,.7)); box-shadow:0 24px 70px rgba(24,31,46,.18); backdrop-filter:blur(20px); opacity:0; visibility:hidden; transform:translateY(-7px) scale(.98); transform-origin:top right; transition:opacity .18s ease, transform .18s ease, visibility .18s; }
    .workspace-user.open .workspace-user-menu { opacity:1; visibility:visible; transform:translateY(0) scale(1); }
    .workspace-company-list { display:grid; gap:7px; margin:14px 0; max-height:220px; overflow:auto; }
    .workspace-plan-summary{display:grid;gap:3px;margin:14px 0 2px;padding:12px 13px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 11%,var(--surface)),var(--surface-soft))}.workspace-plan-summary b{font-size:14px}.workspace-plan-summary span{color:var(--muted);font-size:12px;font-weight:700}
    .workspace-company-card { width:100%; display:flex; align-items:center; gap:10px; padding:11px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); color:var(--ink); text-align:left; cursor:pointer; font:inherit; }
    .workspace-company-card:hover, .workspace-company-card.active { border-color:color-mix(in srgb, var(--brand) 45%, var(--line)); background:color-mix(in srgb, var(--brand) 9%, var(--surface)); }
    .workspace-company-card > div { min-width:0; flex:1; }.workspace-company-card small,.workspace-company-card b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-company-card small{color:var(--muted);font-size:11px;font-weight:700}.workspace-company-card b{font-size:14px}.workspace-company-card em{font-style:normal;color:var(--brand);font-weight:900}.workspace-company-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--brand) 12%,var(--surface));color:var(--brand);font-weight:900}
    .company-dialog-backdrop,.employee-role-backdrop { position:fixed; z-index:80; inset:0; display:grid; place-items:center; padding:20px; background:rgba(15,23,42,.48); backdrop-filter:blur(7px); }
    .email-required-backdrop{z-index:300}.email-required-dialog .company-dialog-actions{justify-content:stretch}.email-required-dialog .company-dialog-actions>*{flex:1}.email-required-dialog .form-error{min-height:20px;margin-top:10px}
    .company-dialog,.employee-role-dialog { position:relative; width:min(100%,500px); padding:30px; border:1px solid var(--line); border-radius:24px; background:var(--surface); box-shadow:0 30px 90px rgba(15,23,42,.3); }.company-dialog-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:color-mix(in srgb,var(--brand) 15%,var(--surface));color:var(--brand);font-size:28px;font-weight:800}.company-dialog h2,.employee-role-dialog h2{margin:16px 0 7px;font-size:28px;letter-spacing:-.045em}.company-dialog p,.employee-role-head p{margin:0;color:var(--muted);line-height:1.45}.company-dialog label{display:grid;gap:8px;margin-top:22px;font-weight:800}.company-dialog input{min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font:inherit}.company-dialog-actions,.employee-role-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.company-dialog-close,.employee-role-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:24px;cursor:pointer}
    .popup-close-control,.custom-color-close.popup-close-control,.crm-modal__close.popup-close-control,.company-dialog-close.popup-close-control,.employee-role-close.popup-close-control { width:40px; height:40px; min-height:40px; padding:0; display:grid; place-items:center; border:0; border-radius:50%; background:transparent; color:inherit; font-size:0; line-height:1; cursor:pointer; transition:transform .16s ease; }
    .popup-close-control .popup-close-icon { width:100%; height:100%; display:block; }
    .popup-close-control:hover { transform:scale(1.04); }
    .popup-close-control:focus-visible { outline:2px solid var(--brand); outline-offset:2px; }

    .employee-role-head>span{color:var(--brand);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.employee-role-options{display:grid;gap:10px;margin-top:22px}.employee-role-option{display:grid;grid-template-columns:18px 1fr;gap:4px 10px;padding:15px;border:1px solid var(--line);border-radius:16px;cursor:pointer}.employee-role-option input{grid-row:span 2;margin-top:3px}.employee-role-option.selected{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,var(--surface))}.employee-role-option b{font-size:16px}.employee-role-option span{color:var(--muted);font-size:13px;line-height:1.4}.employee-scope{display:grid;gap:10px;margin-top:16px;padding:14px;border-radius:14px;background:var(--surface-soft)}.employee-scope>span{font-size:13px;font-weight:900}.employee-scope div{display:flex;gap:14px;flex-wrap:wrap}.employee-scope label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.employee-delete-action{margin-right:auto!important;border-color:#f2c9c6!important;color:#c93d35!important;background:#fff8f7!important}.employee-delete-action:hover{border-color:#e8a7a2!important;background:#fff0ef!important}.emp2-role{display:inline-flex;align-items:center;margin-left:8px;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.03em;vertical-align:middle}.emp2-role--owner{color:#9a4b00;background:#fff0d6}.emp2-role--admin{color:#5b21b6;background:#ede9fe}.emp2-role--manager{color:#0f766e;background:#ccfbf1}.emp2-rights{min-width:48px;font-size:12px}
    .workspace-menu-glow { position:absolute; width:160px; height:120px; right:-62px; top:-75px; background:radial-gradient(circle, rgba(255,112,67,.26), transparent 68%); pointer-events:none; }
    .workspace-menu-head, .workspace-company-card, .workspace-menu-action { position:relative; z-index:1; }
    .workspace-menu-head { display:flex; align-items:center; gap:11px; padding:2px 2px 16px; }
    .workspace-menu-avatar img, .workspace-menu-avatar .workspace-user-avatar { width:44px; height:44px; font-size:17px; }
    .workspace-menu-head strong, .workspace-menu-head span { display:block; }
    .workspace-menu-head strong { font-size:16px; letter-spacing:-.02em; }
    .workspace-menu-head span { margin-top:3px; color:var(--muted); font-size:12px; font-weight:650; }
    .workspace-company-card { display:flex; align-items:center; gap:10px; margin-bottom:12px; padding:12px; border:1px solid color-mix(in srgb, var(--line) 85%, transparent); border-radius:15px; background:color-mix(in srgb, var(--surface-soft) 74%, transparent); }
    .workspace-company-icon { display:grid; place-items:center; width:31px; height:31px; border-radius:10px; color:#e85639; background:#fff0eb; font-size:17px; }
    .workspace-company-card small, .workspace-company-card b { display:block; }
    .workspace-company-card small { color:var(--muted); font-size:11px; font-weight:700; }
    .workspace-company-card b { max-width:240px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin-top:2px; font-size:13px; }
    .workspace-menu-actions { display:grid; gap:6px; }
    .workspace-menu-action { display:flex; align-items:center; width:100%; min-height:61px; padding:8px 9px; gap:10px; border:1px solid transparent; border-radius:14px; background:transparent; color:var(--ink); cursor:pointer; text-align:left; transition:.17s ease; }
    .workspace-menu-action:hover { transform:translateX(2px); background:var(--surface-soft); border-color:var(--line); }
    .workspace-menu-action > span { display:grid; place-items:center; flex:0 0 auto; width:32px; height:32px; border-radius:10px; background:#ffece6; color:#e85639; font-size:22px; font-weight:500; }
    .workspace-menu-action i { flex:1; font-style:normal; }
    .workspace-menu-action b, .workspace-menu-action small { display:block; }
    .workspace-menu-action b { font-size:13px; }
    .workspace-menu-action small { margin-top:2px; color:var(--muted); font-size:11px; font-weight:600; }
    .workspace-menu-action em { color:var(--muted); font-size:25px; font-style:normal; }
    .workspace-menu-action.leave > span { background:#fff0ef; color:#df3e38; transform:rotate(45deg); font-size:19px; }
    .workspace-menu-action.leave:hover { background:#fff6f5; border-color:#ffd9d6; }
    .workspace-menu-note { margin:12px 2px 0; color:var(--muted); font-size:11px; line-height:1.45; }
    .employee-company-panel { margin-top:16px; }
    .billing-page{display:grid;gap:22px;max-width:1180px}.billing-title-row{margin-bottom:0}.billing-current-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 26px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 13%,var(--surface)),var(--surface));box-shadow:var(--shadow-soft)}.billing-eyebrow{display:block;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.billing-current-card h3{margin:5px 0 2px;font-size:25px}.billing-current-card p{margin:0;color:var(--muted);font-weight:650}.billing-current-meta{display:grid;justify-items:end;gap:10px;text-align:right}.billing-current-meta b{font-size:15px}.billing-current-meta .danger{color:#c93d35;border-color:#f0c5c2}.billing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.billing-plan-card{display:flex;flex-direction:column;min-height:430px;padding:23px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 12px 32px rgba(15,23,42,.05)}.billing-plan-card.is-current{border-color:color-mix(in srgb,var(--brand) 52%,var(--line));box-shadow:0 14px 38px color-mix(in srgb,var(--brand) 13%,transparent)}.billing-plan-head{display:flex;justify-content:space-between;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--line)}.billing-plan-head h3{margin:0;font-size:23px}.billing-plan-head p{margin:5px 0 0;color:var(--muted);font-weight:700}.billing-current-badge{align-self:start;padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand);font-size:11px;font-weight:850}.billing-features{display:grid;gap:11px;margin:19px 0;padding:0;list-style:none}.billing-features li{display:flex;align-items:flex-start;gap:8px;font-size:14px;font-weight:650;line-height:1.3}.billing-feature-icon{display:block;flex:0 0 22px;width:22px;height:22px;margin-top:-2px}.billing-features .is-disabled{opacity:.38}.billing-select-plan{width:100%;margin-top:auto}.billing-select-plan[disabled]{background:var(--surface-soft);border-color:transparent;color:var(--muted);cursor:default}.billing-note{margin:0;color:var(--muted);font-size:13px;font-weight:650}@media (max-width:900px){.billing-plans{grid-template-columns:1fr}.billing-plan-card{min-height:0}.billing-current-card{align-items:flex-start;flex-direction:column}.billing-current-meta{justify-items:start;text-align:left}}
    .billing-plan-actions{display:grid;gap:9px;margin-top:12px}.billing-plan-actions>*{width:100%;margin:0}.billing-annual-plan{border-color:color-mix(in srgb,var(--brand) 42%,var(--line));color:var(--brand)}
    .billing-invoice-card{display:grid;gap:18px;padding:22px 24px;border:1px solid color-mix(in srgb,#16824b 35%,var(--line));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,#20a464 9%,var(--surface)),var(--surface));box-shadow:var(--shadow-soft)}.billing-invoice-current,.billing-documents{display:flex;align-items:center;justify-content:space-between;gap:22px}.billing-invoice-card h3{margin:5px 0 4px;font-size:21px}.billing-invoice-card p{max-width:720px;margin:0;color:var(--muted);font-weight:650;line-height:1.45}.billing-invoice-meta{display:grid;justify-items:end;gap:10px;white-space:nowrap}.billing-invoice-meta b{font-size:20px}.billing-invoice-meta__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.billing-invoice-cancel{border-color:#f0c5c2!important;color:#c93d35!important}.billing-invoice-cancel:hover{background:#fff3f2!important}.billing-documents{padding-top:17px;border-top:1px solid color-mix(in srgb,#16824b 22%,var(--line))}.billing-document-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.billing-document-links .secondary{white-space:nowrap}
    .billing-invoice-backdrop{position:fixed;z-index:320;inset:0;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.54);backdrop-filter:blur(9px)}.billing-invoice-dialog{position:relative;width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:30px;border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:0 34px 100px rgba(15,23,42,.32)}.billing-invoice-dialog h2{margin:6px 48px 4px 0;font-size:30px;letter-spacing:-.04em}.billing-invoice-lead{margin:0 0 22px;color:var(--muted);font-weight:650;line-height:1.45}.billing-invoice-close{position:absolute;top:18px;right:18px;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--surface-soft);color:var(--ink);font-size:27px;line-height:1;cursor:pointer}.billing-invoice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.billing-invoice-grid label{display:grid;gap:7px;color:var(--ink);font-size:13px;font-weight:800}.billing-invoice-grid label.is-disabled{opacity:.45}.billing-invoice-grid input,.billing-invoice-grid select{width:100%;min-height:48px;padding:0 13px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font:inherit}.billing-invoice-grid input:focus,.billing-invoice-grid select:focus{border-color:var(--brand);outline:2px solid color-mix(in srgb,var(--brand) 18%,transparent)}.billing-invoice-wide{grid-column:1/-1}.billing-bank-details{margin-top:18px;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft)}.billing-bank-details summary{cursor:pointer;font-weight:850}.billing-bank-details summary span{color:var(--muted);font-size:12px;font-weight:650}.billing-bank-details[open] summary{margin-bottom:15px}.billing-invoice-warning{margin:17px 0 0;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,#f59e0b 10%,var(--surface));color:var(--muted);font-size:13px;font-weight:650;line-height:1.45}.billing-invoice-dialog .form-error{min-height:20px;margin-top:10px;color:#c93d35;font-size:13px;font-weight:750}.billing-invoice-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.billing-invoice-actions button[disabled]{opacity:.55;cursor:wait}
    @media (max-width:700px){.billing-invoice-current,.billing-documents{align-items:flex-start;flex-direction:column}.billing-invoice-meta{justify-items:start}.billing-document-links{justify-content:flex-start}.billing-invoice-backdrop{padding:10px}.billing-invoice-dialog{max-height:calc(100vh - 20px);padding:24px 18px;border-radius:20px}.billing-invoice-grid{grid-template-columns:1fr}.billing-invoice-wide{grid-column:auto}.billing-invoice-actions{display:grid;grid-template-columns:1fr}.billing-invoice-actions button{width:100%}}
    .billing-company-callout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:23px 24px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--surface)),var(--surface));box-shadow:var(--shadow-soft)}.billing-company-callout__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:color-mix(in srgb,var(--brand) 13%,var(--surface));color:var(--brand)}.billing-company-callout__icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.billing-company-callout h3{margin:5px 0 4px;font-size:20px}.billing-company-callout p{max-width:690px;margin:0;color:var(--muted);font-size:14px;font-weight:650;line-height:1.45}.billing-company-open{white-space:nowrap;text-decoration:none}
    .billing-company-page{display:grid;gap:22px;max-width:1320px}.billing-company-title-row{margin-bottom:0}.billing-company-back{text-decoration:none}.billing-company-layout{grid-template-columns:minmax(205px,235px) minmax(0,1fr)}.billing-company-panels,.billing-company-panel{min-width:0}.billing-company-panel{padding:28px}.billing-company-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.billing-company-panel__head h2{margin:0 0 7px;font-size:27px}.billing-company-panel__head p{max-width:720px;margin:0;color:var(--muted);font-weight:650;line-height:1.5}.billing-secure-badge{flex:0 0 auto;padding:8px 11px;border-radius:999px;background:color-mix(in srgb,#20a464 11%,var(--surface));color:#16824b;font-size:11px;font-weight:850}.billing-payer-grid{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.billing-company-panel .billing-bank-details{margin-top:14px}.billing-payer-save{display:flex;align-items:center;gap:14px;margin-top:15px}.billing-payer-save span{color:#16824b;font-size:13px;font-weight:750}.billing-annual-section{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}.billing-annual-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.billing-annual-section__head h3{margin:5px 0 0;font-size:22px}.billing-annual-section__head p{margin:0;color:var(--muted);font-size:13px;font-weight:650}.billing-annual-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.billing-annual-plan-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.billing-annual-plan-card>div{display:grid;gap:3px}.billing-annual-plan-card span{font-size:14px;font-weight:850}.billing-annual-plan-card strong{font-size:23px}.billing-annual-plan-card small{color:var(--muted);font-weight:650}.billing-annual-plan-card button{white-space:nowrap}.billing-annual-plan-card button[disabled]{background:var(--surface-soft);border-color:transparent;color:var(--muted);cursor:default}
    .billing-document-tabs{display:flex;gap:22px;margin:0 0 18px;border-bottom:1px solid var(--line)}.billing-document-tabs button{position:relative;padding:0 0 12px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:800;cursor:pointer}.billing-document-tabs button.active{color:var(--ink)}.billing-document-tabs button.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:3px;border-radius:3px 3px 0 0;background:var(--brand)}.billing-doc-table{overflow:hidden;border:1px solid var(--line);border-radius:17px}.billing-doc-row{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(200px,1.2fr) minmax(105px,.48fr) minmax(130px,.62fr) minmax(150px,.8fr);align-items:center;gap:15px;min-height:78px;padding:14px 16px;border-top:1px solid var(--line)}.billing-doc-row:first-child{border-top:0}.billing-doc-row>div:not(.billing-doc-actions){display:grid;gap:4px;min-width:0}.billing-doc-row strong,.billing-doc-row span{min-width:0}.billing-doc-row small{overflow:hidden;color:var(--muted);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.billing-doc-row>b{font-size:14px;white-space:nowrap}.billing-doc-head{min-height:44px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.billing-act-row{grid-template-columns:minmax(180px,1.1fr) minmax(210px,1.2fr) minmax(110px,.55fr) minmax(150px,.75fr)}.billing-status{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:11px;font-style:normal;font-weight:850;white-space:nowrap}.billing-status.waiting{background:#fff7dc;color:#9b6500}.billing-status.paid{background:#e8f7ef;color:#16824b}.billing-status.cancelled,.billing-status.expired{background:var(--surface-soft);color:var(--muted)}.billing-doc-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.billing-doc-actions .secondary{white-space:nowrap}.billing-doc-empty{padding:38px 20px;border:1px dashed var(--line);border-radius:17px;text-align:center}.billing-doc-empty strong{font-size:17px}.billing-doc-empty p{margin:7px 0 0;color:var(--muted);font-weight:650}.billing-company-panel .billing-invoice-warning{margin-bottom:0}
    @media (max-width:1100px){.billing-company-callout{grid-template-columns:auto minmax(0,1fr)}.billing-company-callout .billing-company-open{grid-column:2;justify-self:start}.billing-annual-plans{grid-template-columns:1fr}.billing-doc-row,.billing-act-row{grid-template-columns:minmax(170px,1fr) minmax(180px,1fr) minmax(105px,.5fr) minmax(130px,.65fr)}.billing-doc-row>span:nth-child(4),.billing-doc-head>span:nth-child(4){display:none}.billing-doc-actions{grid-column:4}.billing-act-row .billing-doc-actions{grid-column:auto}}
    @media (max-width:760px){.billing-company-callout{grid-template-columns:1fr;padding:20px}.billing-company-callout .billing-company-open{grid-column:auto;width:100%;white-space:normal;text-align:center}.billing-company-layout{grid-template-columns:1fr}.billing-company-panel{padding:20px}.billing-company-panel__head,.billing-annual-section__head{align-items:flex-start;flex-direction:column}.billing-secure-badge{align-self:flex-start}.billing-payer-save{align-items:flex-start;flex-direction:column}.billing-payer-save button{width:100%}.billing-annual-plan-card{align-items:flex-start;flex-direction:column}.billing-annual-plan-card button{width:100%}.billing-document-tabs{gap:14px;overflow-x:auto}.billing-document-tabs button{flex:0 0 auto}.billing-doc-table{border:0}.billing-doc-head{display:none}.billing-doc-row,.billing-act-row{grid-template-columns:1fr;gap:9px;margin-bottom:10px;padding:16px;border:1px solid var(--line);border-radius:15px}.billing-doc-row>span:nth-child(4){display:block}.billing-doc-actions,.billing-act-row .billing-doc-actions{grid-column:auto;justify-content:flex-start}.billing-doc-actions .secondary{flex:1}.billing-company-title-row{align-items:flex-start;flex-direction:column}.billing-company-back{width:100%}}
    .plan-restricted{opacity:.42!important;filter:saturate(.45)}.side-link.plan-restricted{cursor:not-allowed}.side-link.plan-restricted::after{content:"PRO";margin-left:auto;padding:2px 5px;border-radius:5px;background:var(--surface-soft);font-size:9px;font-weight:900;letter-spacing:.04em}body.sidebar-collapsed .side-link.plan-restricted::after{display:none}body.sidebar-collapsed .side-link.plan-restricted{opacity:.42!important}
    @media (max-width: 700px) { .calls-history-filters { grid-template-columns:1fr; } .calls-history-row { grid-template-columns:38px minmax(0,1fr) auto; gap:8px 12px; } .calls-history-main{grid-column:2}.calls-history-widget,.calls-history-row>span{grid-column:2 / -1}.calls-history-status{grid-column:3;grid-row:1;justify-self:end} .workspace-user { top:14px; right:34px; } .workspace-user b { display:none; } }

    /* Cabinet UX audit: semantics, responsive layouts and safe interaction zones. */
    .app-page-heading { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); border: 0; white-space: nowrap; }
    .dep2-card { width: 100%; border-right: 0; border-bottom: 0; border-left: 0; color: var(--ink); font: inherit; text-align: left; }
    .dep2-card:first-child { border-top: 0; }
    .deal-board-scroll-hint { display: none; }
    .settings-jump-nav { position: relative; z-index: 12; display: flex; gap: 7px; width: fit-content; max-width: 100%; margin: 0 0 14px; padding: 6px; overflow-x: auto; border: 1px solid color-mix(in srgb, var(--line) 82%, transparent); border-radius: 15px; background: color-mix(in srgb, var(--surface) 92%, transparent); box-shadow: 0 8px 26px rgba(15,23,42,.08); backdrop-filter: blur(14px); scrollbar-width: none; }
    .settings-jump-nav::-webkit-scrollbar { display: none; }
    .settings-jump-nav a { min-height: 38px; display: inline-flex; align-items: center; padding: 0 12px; border-radius: 11px; color: var(--muted); font-size: 13px; font-weight: 800; text-decoration: none; white-space: nowrap; }
    .settings-jump-nav a:hover,
    .settings-jump-nav a:focus-visible { background: var(--surface-soft); color: var(--ink); }
    .settings-jump-nav a.danger { color: #c93d35; }
    #settingsView > .panel { scroll-margin-top: 78px; }
    .deals-board,
    .analytics-table-wrap,
    .analytics-sources-scroll { scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--muted) 42%, transparent) transparent; }
    .deals-board::-webkit-scrollbar,
    .analytics-table-wrap::-webkit-scrollbar,
    .analytics-sources-scroll::-webkit-scrollbar { height: 8px; }
    .deals-board::-webkit-scrollbar-thumb,
    .analytics-table-wrap::-webkit-scrollbar-thumb,
    .analytics-sources-scroll::-webkit-scrollbar-thumb { border-radius: 999px; background: color-mix(in srgb, var(--muted) 42%, transparent); }
    @media (min-width: 1180px) {
      .deals-board:not(.is-editing) .deal-column { min-width: 220px; flex: 1 0 220px; }
    }
    @media (max-width: 860px) {
      body.nav-open .support-chat { visibility: hidden; opacity: 0; }
      .mobile-logo { min-height: 44px; }
      .settings-jump-nav { width: 100%; }
      .settings-jump-nav a { min-height: 44px; }
      .deal-board-scroll-hint { display: block; margin: 8px 0 -4px; color: var(--muted); font-size: 12px; font-weight: 750; }
      .deals-board { padding-bottom: 12px; scroll-padding-inline: 2px; }
      .deal-column { flex-basis: min(290px, calc(100vw - 84px)); }
      .widget-stepper { scroll-snap-type: x proximity; scrollbar-width: thin; }
      .widget-step { min-height: 58px; scroll-snap-align: center; }
      .lead2-chip,
      .home-link-button,
      .calendar-nav button,
      .calendar-view-switch button,
      .calendar-today-button,
      .booking-settings-tab,
      .widget-editor-side-nav button,
      .dep2-back,
      .dep2-del,
      .call-widget-menu,
      .emp2-ico,
      .popup-close-control,
      .support-chat__icon-btn,
      .support-chat__attach,
      .support-chat__send { min-width: 44px; min-height: 44px; }
      #employeesView .emp2-row { display: grid; grid-template-columns: 40px minmax(0, 1fr) 44px; align-items: start; gap: 10px 12px; padding: 15px 4px; }
      #employeesView .emp2-avatar-upload { grid-column: 1; grid-row: 1; }
      #employeesView .emp2-main { grid-column: 2 / -1; grid-row: 1; align-self: center; }
      #employeesView .emp2-messengers { align-items: stretch; gap: 8px; }
      #employeesView .emp2-msgr,
      #employeesView .emp2-copy { min-width: max-content; min-height: 44px; height: 44px; flex: 0 0 auto; }
      #employeesView .emp2-slbl { grid-column: 1 / 3; grid-row: 2; width: auto; min-width: 0; align-self: center; text-align: left; }
      #employeesView .emp2-row > .emp2-switch { grid-column: 3; grid-row: 2; align-self: center; justify-self: end; min-width: 44px; min-height: 44px; }
      #employeesView .emp2-row > .emp2-switch i { top: 9px; bottom: 9px; }
      #employeesView .emp2-actions { grid-column: 1 / -1; grid-row: 3; justify-content: flex-end; gap: 6px; margin-left: 0; }
      #employeesView .emp2-ico { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 12px; }
      .home-call-row { grid-template-columns: 42px minmax(0, 1fr) 38px; gap: 8px 12px; align-items: start; padding: 14px 0; }
      .home-call-row .home-call-avatar { grid-column: 1; grid-row: 1; }
      .home-call-row strong { grid-column: 2; grid-row: 1; align-self: center; }
      .home-call-row .home-call-status { grid-column: 3; grid-row: 1; }
      .home-call-row > span { grid-column: 2 / -1; display: grid; grid-template-columns: 94px minmax(0, 1fr); gap: 8px; }
      .home-call-row > span::before { content: attr(data-label); color: color-mix(in srgb, var(--muted) 76%, transparent); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
      .home-call-row .home-call-phone { grid-row: 2; }
      .home-call-row .home-call-department { grid-row: 3; }
      .home-call-row .home-call-duration { grid-row: 4; }
      .home-call-row .home-call-date { grid-row: 5; }
      .company-danger-panel > div { min-width: 0; }
    }
    @media (max-width: 640px) {
      .support-chat { top: 17px; right: 72px; bottom: auto; left: auto; z-index: 75; width: 0; height: 0; transition: opacity .18s ease, visibility .18s ease; }
      .support-chat__launcher { width: 44px; max-width: none; height: 44px; min-height: 44px; top: 0; right: 0; bottom: auto; border-radius: 15px; box-shadow: 0 10px 24px rgba(31,41,55,.22), inset 0 0 0 1px rgba(255,255,255,.18); }
      .support-chat__launcher-chat-icon,
      .support-chat__launcher-chat-icon svg { width: 26px; height: 26px; }
      .support-chat__badge { right: -7px; top: -8px; }
      .support-chat.is-open { inset: 0; z-index: 180; width: 100vw; height: 100vh; height: 100dvh; padding: 10px; background: rgba(10,12,20,.4); }
      .support-chat.is-open .support-chat__window { width: 100%; height: 100%; min-height: 0; border-radius: 22px; }
      .support-chat.is-open .support-chat__launcher { display: none; }
      .support-chat__header { grid-template-columns: 44px 1fr 44px; padding: 12px 12px 6px; }
      .support-chat__composer { min-height: 58px; height: auto; grid-template-columns: 44px minmax(0, 1fr) 44px; padding: 6px; }
      .support-chat__attach,
      .support-chat__send { width: 44px; height: 44px; }
      body.support-chat-open { overflow: hidden; }
    }

    /* Navigation within settings, onboarding empty states, and pricing illustrations. */
    .create-widget-button { min-height: 46px; gap: 8px; padding: 0 17px; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: linear-gradient(135deg, #ff7043, #fe5818); font-weight: 780; letter-spacing: -.012em; transition: background .16s ease, transform .16s ease; }
    .create-widget-button:hover { background: linear-gradient(135deg, #ff7c52, #ed4c0d); transform: translateY(-1px); }
    .create-widget-button:active { transform: translateY(0); }
    .create-widget-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--brand) 22%, transparent); outline-offset: 3px; }
    .create-widget-plus { width: 20px; height: 20px; border-radius: 0; background: transparent; }
    .create-widget-plus svg { width: 19px; height: 19px; display: block; }
    .settings-layout { display: grid; grid-template-columns: minmax(210px, 240px) minmax(0, 1fr); align-items: start; gap: 24px; }
    .settings-subnav { position: sticky; top: 24px; display: grid; gap: 4px; padding: 18px 10px; border: 1px solid var(--line); border-radius: 22px; background: var(--surface); box-shadow: 0 14px 40px rgba(15,23,42,.05); }
    .settings-subnav__title { display: block; padding: 0 12px 10px; color: var(--muted); font-size: 11px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
    .settings-subnav__item { position: relative; min-height: 44px; padding: 0 16px; border: 0; border-radius: 12px; background: transparent; color: var(--muted); font: inherit; font-size: 14px; font-weight: 780; text-align: left; cursor: pointer; transition: color .18s ease, background .18s ease; }
    .settings-subnav__item::before { position: absolute; top: 10px; bottom: 10px; left: -10px; width: 3px; border-radius: 3px; background: transparent; content: ""; }
    .settings-subnav__item:hover, .settings-subnav__item:focus-visible { background: var(--surface-soft); color: var(--ink); outline: 0; }
    .settings-subnav__item.active { background: color-mix(in srgb, var(--brand) 8%, var(--surface)); color: var(--ink); }
    .settings-subnav__item.active::before { background: var(--brand); }
    .settings-subnav__item.danger { color: #c93d35; }
    .settings-section-panels { min-width: 0; }
    .settings-section-panels > .settings-panel { margin-top: 0; }
    .settings-section-panels > .panel { scroll-margin-top: 24px; }

    .crm-integration-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 22px; }
    .crm-integration-card { min-height: 308px; display: flex; flex-direction: column; align-items: stretch; gap: 16px; padding: 24px; border-radius: 24px; box-shadow: 0 12px 32px rgba(15,23,42,.04); }
    .crm-integration-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
    .crm-integration-card__brand { display: flex; align-items: center; min-height: 46px; }
    .crm-integration-card__brand img { display: block; width: auto; max-width: 172px; max-height: 46px; object-fit: contain; object-position: left center; }
    .crm-integration-card__category, .crm-integration-card__tags span { display: inline-flex; align-items: center; width: fit-content; min-height: 26px; padding: 0 10px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-size: 11px; font-weight: 850; line-height: 1; }
    .crm-integration-card__copy { display: grid; gap: 9px; }
    .crm-integration-card__copy strong { font-size: 22px; letter-spacing: -.025em; }
    .crm-integration-card__copy p { min-height: 58px; margin: 0; color: var(--muted); font-size: 14px; font-weight: 650; line-height: 1.45; }
    .crm-integration-card .crm-integration-card__status { margin: 0; color: var(--muted); font-size: 12px; font-weight: 800; }
    .crm-integration-card.is-ready .crm-integration-card__status { color: #16803d; }
    .crm-integration-card__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
    .crm-integration-card > .secondary { width: 100%; margin-top: 0; }
    .crm-integration-card > .secondary { transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease; }
    .crm-integration-card > .secondary:hover, .crm-integration-card > .secondary:focus-visible { border-color: var(--brand-btn); background: var(--brand-btn); color: #fff; transform: translateY(-1px); outline: 0; }

    .empty-list { position: relative; min-height: 164px; display: flex; align-items: center; padding: 28px 28px 28px 166px; overflow: hidden; border-style: solid; background: linear-gradient(135deg, color-mix(in srgb, var(--brand) 5%, var(--surface)), var(--surface)); color: var(--muted); font-weight: 700; line-height: 1.45; }
    .empty-list::before { position: absolute; inset: auto auto -26px -18px; width: 170px; height: 170px; background: url("/assets/empty-state-mascot.png?v=20260811") center / contain no-repeat; content: ""; pointer-events: none; }
    .calls-history-list.empty-list { padding: 28px 28px 28px 166px; }

    .billing-plan-card { min-height: 566px; }
    .billing-plan-art { display: flex; align-items: flex-end; justify-content: center; height: 160px; margin-top: auto; }
    .billing-plan-art img { display: block; width: 100%; max-width: 320px; max-height: 160px; object-fit: contain; mix-blend-mode: multiply; }
    .billing-select-plan { margin-top: 12px; }

    /* Исправления кабинета: разделы настроек, CRM, контакты и выбор ответственного. */
    .company-danger-panel.hidden { display: none; }
    .deal-detail-contacts { display: grid; justify-items: start; gap: 12px; }
    .lead-contact-details, .lead-contact-messengers { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
    .lead-contact-details { width: 100%; }
    .lead-contact-details .contact-text { min-height: 42px; padding: 0 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-soft); font-size: 14px; }
    .lead-contact-details .contact-text:first-child { font-size: 16px; }
    .crm-assignee-avatar { width: 28px; height: 28px; display: grid; flex: 0 0 28px; place-items: center; overflow: hidden; border-radius: 50%; background: color-mix(in srgb, var(--brand) 13%, var(--surface-soft)); color: var(--brand-ink); font-size: 12px; font-weight: 850; object-fit: cover; }
    .crm-assignee-badge > .crm-assignee-avatar { grid-row: 1 / span 2; }
    .crm-assignee-badge.is-empty > .crm-assignee-avatar { background: var(--surface-soft); color: var(--muted); }
    .crm-assignee-picker { position: relative; }
    .crm-assignee-picker > summary { min-height: 48px; display: grid; grid-template-columns: 30px minmax(0, 1fr) 16px; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid color-mix(in srgb, var(--brand) 18%, var(--line)); border-radius: 13px; background: var(--surface); color: var(--ink); cursor: pointer; list-style: none; }
    .crm-assignee-picker > summary::-webkit-details-marker { display: none; }
    .crm-assignee-picker > summary .crm-assignee-avatar { width: 30px; height: 30px; flex-basis: 30px; }
    .crm-assignee-picker > summary b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 800; }
    .crm-assignee-picker > summary svg { width: 16px; height: 16px; color: var(--muted); transition: transform .16s ease; }
    .crm-assignee-picker[open] > summary svg { transform: rotate(180deg); }
    .crm-assignee-picker__options { position: absolute; z-index: 8; top: calc(100% + 7px); right: 0; left: 0; display: grid; gap: 3px; max-height: 248px; overflow: auto; padding: 6px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 16px 32px rgba(15,23,42,.14); }
    .crm-assignee-option { min-height: 42px; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 6px; border: 0; border-radius: 10px; background: transparent; color: var(--ink); font: inherit; text-align: left; cursor: pointer; }
    .crm-assignee-option:hover, .crm-assignee-option:focus-visible, .crm-assignee-option.is-selected { background: color-mix(in srgb, var(--brand) 8%, var(--surface-soft)); outline: 0; }
    .crm-assignee-option b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 750; }
    .crm-assignee-option i { width: 17px; height: 17px; color: var(--brand); }
    .crm-integration-card .crm-integration-card__category, .crm-integration-card .crm-integration-card__tags span { display: inline-flex; margin-top: 0; }
    .crm-integration-card .crm-integration-card__brand { width: 178px; height: 50px; min-height: 50px; overflow: hidden; }
    .crm-integration-card .crm-integration-card__brand img { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; object-position: center; }
    .crm-integration-card[data-crm-card="bitrix"] .crm-integration-card__brand img { object-fit: contain; object-position: left center; transform: scale(1.04); transform-origin: left center; }
    .deal-detail-contacts .messenger-icon-link--whatsapp svg { width: 28px; height: 28px; }
    .lead-drawer .lead-detail-contacts .messenger-icon-link--whatsapp svg { width: 30px; height: 30px; }
    .deal-stage-color-picker { min-height: 38px; display: inline-flex; align-items: center; gap: 9px; padding: 5px 11px 5px 6px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; }
    .deal-stage-color-picker:hover, .deal-stage-color-picker:focus-visible { border-color: color-mix(in srgb, var(--brand) 45%, var(--line)); color: var(--ink); outline: 0; }
    .deal-stage-color-swatch { width: 26px; height: 26px; flex: 0 0 26px; border: 1px solid color-mix(in srgb, var(--muted) 30%, var(--line)); border-radius: 50%; box-shadow: inset 0 0 0 2px rgba(255,255,255,.75); }

    @media (max-width: 980px) {
      .settings-layout { grid-template-columns: 1fr; gap: 14px; }
      .settings-subnav { position: static; display: flex; align-items: center; gap: 6px; max-width: 100%; overflow-x: auto; padding: 8px; border-radius: 17px; scrollbar-width: none; }
      .settings-subnav::-webkit-scrollbar { display: none; }
      .settings-subnav__title { display: none; }
      .settings-subnav__item { flex: 0 0 auto; min-height: 42px; padding: 0 13px; }
      .settings-subnav__item::before { top: auto; right: 12px; bottom: 1px; left: 12px; width: auto; height: 3px; }
    }
    @media (max-width: 700px) {
      .crm-integration-grid { grid-template-columns: 1fr; }
      .crm-integration-card { min-height: 0; }
      .empty-list, .calls-history-list.empty-list { min-height: 145px; padding: 24px 20px 24px 130px; font-size: 13px; }
      .empty-list::before { bottom: -15px; left: -15px; width: 142px; height: 142px; }
      .billing-plan-card { min-height: 0; }
      .billing-plan-art { height: 172px; }
      .billing-plan-art img { max-height: 172px; }
    }

    /* Первичная настройка нового кабинета. */
    body.onboarding-open { overflow: hidden; }
    .onboarding-backdrop { position: fixed; z-index: 480; inset: 0; display: grid; place-items: center; padding: 24px; overflow-y: auto; background: rgba(15,23,42,.54); backdrop-filter: blur(12px); }
    .onboarding-backdrop.hidden { display: none; }
    .onboarding-dialog { width: min(780px, 100%); overflow: hidden; border: 1px solid color-mix(in srgb, var(--line) 88%, transparent); border-radius: 28px; background: var(--surface); box-shadow: 0 34px 110px rgba(15,23,42,.32); }
    .onboarding-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; padding: 0 30px; border-bottom: 1px solid var(--line); }
    .onboarding-brand { display: inline-flex; min-height: 30px; align-items: center; }
    .onboarding-brand img { display: block; width: 85px; height: 30px; }
    .onboarding-later { padding: 8px 0; border: 0; background: transparent; color: var(--muted); font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
    .onboarding-later:hover, .onboarding-later:focus-visible { color: var(--ink); outline: 0; }
    .onboarding-progress { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; padding: 18px 30px 0; }
    .onboarding-progress span { height: 4px; border-radius: 999px; background: var(--surface-soft); }
    .onboarding-progress span.is-active { background: var(--brand-btn); }
    .onboarding-content { padding: 26px 30px 30px; }
    .onboarding-kicker { margin: 0 0 10px; color: var(--brand); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
    .onboarding-content h2 { max-width: 620px; margin: 0; color: var(--ink); font-size: clamp(28px, 4vw, 40px); line-height: 1.06; letter-spacing: -.05em; }
    .onboarding-lead { max-width: 620px; margin: 13px 0 25px; color: var(--muted); font-size: 16px; font-weight: 650; line-height: 1.48; }
    .onboarding-choice-grid, .onboarding-format-grid, .onboarding-crm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
    .onboarding-choice, .onboarding-format, .onboarding-crm-card { display: grid; align-content: start; gap: 8px; min-height: 206px; padding: 19px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); color: var(--ink); font: inherit; text-align: left; cursor: pointer; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease; }
    .onboarding-choice:hover, .onboarding-choice:focus-visible, .onboarding-format:hover, .onboarding-format:focus-visible, .onboarding-crm-card:hover, .onboarding-crm-card:focus-visible { border-color: color-mix(in srgb, var(--brand-btn) 55%, var(--line)); box-shadow: 0 12px 28px rgba(15,23,42,.08); transform: translateY(-2px); outline: 0; }
    .onboarding-choice.is-selected, .onboarding-format.is-selected { border-color: var(--brand-btn); background: color-mix(in srgb, var(--brand-btn) 7%, var(--surface)); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--brand-btn) 35%, transparent); }
    .onboarding-choice__icon, .onboarding-launch-card__icon, .onboarding-success-mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: color-mix(in srgb, var(--brand-btn) 13%, var(--surface-soft)); color: var(--brand); }
    .onboarding-choice__icon svg, .onboarding-launch-card__icon svg, .onboarding-success-mark svg { width: 22px; height: 22px; }
    .onboarding-choice strong, .onboarding-format strong, .onboarding-crm-card strong { font-size: 18px; letter-spacing: -.025em; }
    .onboarding-choice > span:not(.onboarding-choice__icon), .onboarding-format > span:last-child, .onboarding-crm-card span { color: var(--muted); font-size: 13px; font-weight: 650; line-height: 1.4; }
    .onboarding-choice em { margin-top: auto; color: var(--brand); font-size: 12px; font-style: normal; font-weight: 800; line-height: 1.35; }
    .onboarding-site-field { display: grid; gap: 9px; max-width: 620px; color: var(--ink); font-size: 13px; font-weight: 850; }
    .onboarding-site-field input { min-height: 58px; padding: 0 17px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); color: var(--ink); font: inherit; font-size: 17px; font-weight: 700; outline: 0; transition: border-color .16s ease, box-shadow .16s ease; }
    .onboarding-site-field input:focus { border-color: var(--brand-btn); box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand-btn) 15%, transparent); }
    .onboarding-note { max-width: 620px; margin-top: 10px; color: var(--muted); font-size: 13px; font-weight: 650; }
    .onboarding-format-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .onboarding-format { min-height: 196px; }
    .onboarding-format__preview { position: relative; display: grid; place-items: center; width: 100%; height: 58px; margin-bottom: 5px; border-radius: 13px; background: var(--surface-soft); color: var(--brand); }
    .onboarding-format__preview svg { width: 25px; height: 25px; }
    .onboarding-format__preview--button::before { width: 74px; height: 26px; border-radius: 999px; background: var(--brand-btn); content: ""; }
    .onboarding-format__preview--button svg { position: absolute; width: 17px; height: 17px; color: var(--ink); }
    .onboarding-format__preview--direct { justify-content: flex-start; width: 72%; height: 5px; margin: 25px 0 33px; border-radius: 99px; background: var(--brand-btn); }
    .onboarding-format__preview--direct svg { position: absolute; margin-left: 75%; color: var(--brand); }
    .onboarding-launch-card { display: flex; align-items: center; gap: 13px; max-width: 620px; padding: 17px; border: 1px solid var(--line); border-radius: 17px; background: var(--surface-soft); }
    .onboarding-launch-card > div { display: grid; gap: 4px; min-width: 0; }
    .onboarding-launch-card strong { font-size: 15px; }
    .onboarding-launch-card span { overflow: hidden; color: var(--muted); font-size: 13px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
    .onboarding-success-mark { width: 56px; height: 56px; margin-bottom: 18px; border-radius: 18px; background: color-mix(in srgb, #1bba62 16%, var(--surface-soft)); color: #16803d; }
    .onboarding-success-mark svg { width: 29px; height: 29px; }
    .onboarding-crm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .onboarding-crm-card { min-height: 156px; }
    .onboarding-crm-card b { margin-top: auto; color: var(--brand); font-size: 13px; }
    .onboarding-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 27px; }
    .onboarding-actions--stack { align-items: stretch; flex-direction: column; max-width: 420px; }
    .onboarding-actions button { min-height: 48px; }
    .onboarding-primary { min-width: 170px; }
    .onboarding-primary svg { width: 18px; height: 18px; vertical-align: -3px; margin-right: 7px; }
    .onboarding-status { min-height: 19px; margin: 12px 0 0; color: #16803d; font-size: 13px; font-weight: 750; }
    .onboarding-status.is-error { color: #d13232; }
    .onboarding-resume { position: fixed; z-index: 210; right: 24px; bottom: 24px; min-height: 46px; padding: 0 17px; border: 0; border-radius: 14px; background: var(--brand-btn); color: #fff; box-shadow: 0 12px 30px rgba(15,23,42,.2); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
    @media (max-width: 700px) {
      .onboarding-backdrop { align-items: start; padding: 12px; }
      .onboarding-dialog { margin: 0; border-radius: 22px; }
      .onboarding-header { min-height: 62px; padding: 0 18px; }
      .onboarding-progress { padding: 14px 18px 0; }
      .onboarding-content { padding: 22px 18px; }
      .onboarding-content h2 { font-size: 29px; }
      .onboarding-lead { font-size: 14px; }
      .onboarding-choice-grid, .onboarding-crm-grid, .onboarding-format-grid { grid-template-columns: 1fr; }
      .onboarding-choice, .onboarding-format { min-height: 0; }
      .onboarding-format { grid-template-columns: 64px 1fr; align-items: center; }
      .onboarding-format__preview { grid-row: 1 / span 2; width: 58px; margin: 0; }
      .onboarding-format__preview--direct { width: 48px; margin: 0; }
      .onboarding-format__preview--direct svg { margin-left: 48px; }
      .onboarding-actions { align-items: stretch; flex-direction: column-reverse; }
      .onboarding-actions > span { display: none; }
      .onboarding-actions button { width: 100%; }
      .onboarding-resume { right: 16px; bottom: 16px; }
    }

    /* Быстрый выбор первого виджета и фокус-режим редактора. */
    .onboarding-backdrop { padding: clamp(18px, 3vw, 48px); background: #f7f8fc; backdrop-filter: none; }
    .onboarding-start { width: min(1380px, 100%); overflow: hidden; border: 1px solid #e5e9f2; border-radius: 30px; background: #fff; box-shadow: 0 30px 100px rgba(32,45,78,.11); }
    .onboarding-start__header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 78px; padding: 0 34px; border-bottom: 1px solid #edf0f5; }
    .onboarding-start__body { width: min(100%, 1260px); margin: 0 auto; padding: clamp(30px, 3.2vw, 48px); }
    .onboarding-start__eyebrow { margin: 0 0 10px; color: var(--brand); font-size: 13px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
    .onboarding-start h1 { margin: 0; color: #111827; font-size: clamp(32px, 4vw, 52px); line-height: 1.04; letter-spacing: -.055em; }
    .onboarding-start__body > p:not(.onboarding-start__eyebrow):not(.onboarding-start__hint):not(.onboarding-status) { margin: 14px 0 32px; color: #667085; font-size: 18px; font-weight: 650; }
    .onboarding-start__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
    .onboarding-widget-card { position: relative; min-height: 410px; display: block; overflow: hidden; padding: 32px; border: 1px solid transparent; border-radius: 25px; color: #172033; font: inherit; text-align: left; cursor: pointer; isolation: isolate; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
    .onboarding-widget-card--online { background: linear-gradient(135deg, #fff0ea 0%, #ffe3d8 100%); border-color: #ffcbb9; }
    .onboarding-widget-card--booking { background: linear-gradient(135deg, #eff6ff 0%, #e2efff 100%); border-color: #cedff9; }
    .onboarding-widget-card:hover, .onboarding-widget-card:focus-visible { z-index: 2; border-color: color-mix(in srgb, var(--brand) 55%, transparent); outline: 0; box-shadow: 0 22px 42px rgba(42,56,91,.16); transform: translateY(-5px); }
    .onboarding-widget-card__icon { position: relative; z-index: 2; display: grid; width: 74px; height: 74px; place-items: center; border-radius: 20px; background: rgba(255,255,255,.76); color: var(--brand); }
    .onboarding-widget-card--booking .onboarding-widget-card__icon { color: #2881f7; }
    .onboarding-widget-card__icon svg, .onboarding-widget-card__pill svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; }
    .onboarding-widget-card__copy { position: relative; z-index: 2; display: grid; gap: 10px; max-width: min(290px, 46%); margin-top: 24px; }
    .onboarding-widget-card__copy strong { font-size: clamp(25px, 2.2vw, 34px); line-height: 1.04; letter-spacing: -.045em; }
    .onboarding-widget-card__copy em { color: #ff6330; font-size: 17px; font-style: normal; font-weight: 850; }
    .onboarding-widget-card--booking .onboarding-widget-card__copy em { color: #2881f7; }
    .onboarding-widget-card__copy > span { color: #364054; font-size: 16px; font-weight: 700; line-height: 1.45; }
    .onboarding-widget-card__pill { position: absolute; z-index: 2; bottom: 30px; left: 32px; display: inline-flex; align-items: center; gap: 8px; min-height: 43px; padding: 0 18px; border-radius: 999px; background: rgba(255,255,255,.54); color: #ff6330; font-size: 14px; font-weight: 850; }
    .onboarding-widget-card--booking .onboarding-widget-card__pill { color: #2881f7; }
    .onboarding-widget-card__pill svg { width: 18px; height: 18px; stroke-width: 2.4; }
    .onboarding-widget-card__art { position: absolute; z-index: 1; right: -2%; bottom: -2%; display: block; width: min(47%, 410px); max-height: 84%; object-fit: contain; object-position: right bottom; filter: drop-shadow(0 20px 18px rgba(54,65,83,.16)); pointer-events: none; }
    .onboarding-widget-card--booking .onboarding-widget-card__art { right: -1%; width: min(49%, 450px); max-height: 88%; }
    .onboarding-widget-card__check { position: absolute; z-index: 3; right: 24px; bottom: 24px; display: grid; width: 58px; height: 58px; place-items: center; border-radius: 50%; background: #2881f7; color: #fff; box-shadow: 0 14px 24px rgba(40,129,247,.28); font-size: 31px; font-weight: 800; }
    .onboarding-start__hint { margin: 22px 0 0; color: #98a2b3; font-size: 13px; font-weight: 700; }
    .onboarding-start .onboarding-status { margin: 8px 0 0; }
    .onboarding-recipient { max-width: 1020px; }
    .onboarding-recipient__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
    .onboarding-recipient-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 6px 20px; min-height: 230px; padding: 28px; border: 1px solid #e5e9f2; border-radius: 24px; background: #fff; color: #172033; text-align: left; cursor: pointer; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
    .onboarding-recipient-card:hover, .onboarding-recipient-card:focus-visible { border-color: color-mix(in srgb, var(--brand) 52%, #e5e9f2); background: #fffaf7; outline: 0; transform: translateY(-3px); }
    .onboarding-recipient-card__icon { grid-row: 1 / span 3; display: grid; width: 72px; height: 72px; place-items: center; border-radius: 21px; background: #fff0ea; color: var(--brand); }
    .onboarding-recipient-card--manager .onboarding-recipient-card__icon { background: #eef5ff; color: #287cf1; }
    .onboarding-recipient-card__icon svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
    .onboarding-recipient-card > strong { align-self: end; font-size: 26px; letter-spacing: -.04em; }
    .onboarding-recipient-card > span:not(.onboarding-recipient-card__icon) { color: #667085; font-size: 15px; font-weight: 650; line-height: 1.45; }
    .onboarding-recipient-card > b { align-self: end; color: var(--brand); font-size: 14px; }
    .onboarding-recipient-card > b i { margin-left: 5px; font-size: 18px; font-style: normal; }
    .onboarding-step-back { width: fit-content; min-height: 34px; margin: -10px 0 15px; padding: 0; border: 0; background: transparent; color: #667085; font-weight: 750; cursor: pointer; }
    .onboarding-step-back:hover { color: var(--brand); }
    .onboarding-manager { max-width: 780px; }
    .onboarding-manager__form { display: grid; gap: 18px; margin-top: 28px; }
    .onboarding-manager__form label { margin: 0; }
    .onboarding-manager__form fieldset { margin: 0; padding: 0; border: 0; }
    .onboarding-manager__form legend { margin-bottom: 9px; color: #3c4659; font-weight: 800; }
    .onboarding-manager__days { display: grid; grid-template-columns: repeat(7, minmax(50px, 1fr)); gap: 8px; }
    .onboarding-manager__days label { display: block; cursor: pointer; }
    .onboarding-manager__days input { position: absolute; width: 1px; min-height: 1px; opacity: 0; }
    .onboarding-manager__days span { display: grid; min-height: 45px; place-items: center; border: 1px solid #dfe4ec; border-radius: 13px; color: #667085; font-weight: 800; }
    .onboarding-manager__days input:checked + span { border-color: var(--brand); background: #fff0ea; color: var(--brand); }
    .onboarding-manager__days input:focus-visible + span { outline: 3px solid rgba(254,98,25,.16); outline-offset: 2px; }
    .onboarding-manager__hours { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .onboarding-manager__submit { width: 100%; }
    .onboarding-manager-messenger { max-width: 900px; }
    .onboarding-manager-messengers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .onboarding-messenger-card { display: grid; grid-template-columns: 58px minmax(0, 1fr); align-items: center; gap: 14px; min-height: 150px; padding: 20px; border: 1px solid #e2e7ef; border-radius: 20px; background: #fff; }
    .onboarding-messenger-card.is-linked { border-color: #a9dfbf; background: #f4fcf7; }
    .onboarding-messenger-card__icon { grid-row: 1 / span 2; display: grid; width: 58px; height: 58px; place-items: center; border-radius: 17px; color: #fff; }
    .onboarding-messenger-card__icon--telegram { background: #229ed9; }
    .onboarding-messenger-card__icon--max { background: linear-gradient(145deg, #35c8ff 0%, #287cff 38%, #5339f5 68%, #a23cec 100%); }
    .onboarding-messenger-card__icon svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
    .onboarding-messenger-card__max { font-size: 13px; font-weight: 950; letter-spacing: -.04em; }
    .onboarding-messenger-card > div { display: grid; gap: 4px; min-width: 0; }
    .onboarding-messenger-card > div strong { color: #172033; font-size: 19px; }
    .onboarding-messenger-card > div span { color: #667085; font-size: 13px; font-weight: 650; line-height: 1.35; }
    .onboarding-messenger-card > button, .onboarding-messenger-card__connected, .onboarding-messenger-card__unavailable { grid-column: 2; justify-self: start; }
    .onboarding-messenger-card > button { min-height: 38px; padding: 0 13px; }
    .onboarding-messenger-card__connected { color: #16803d; font-size: 13px; font-weight: 850; }
    .onboarding-messenger-card__unavailable { color: #98a2b3; font-size: 13px; font-weight: 700; }
    .onboarding-manager-messenger__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
    .onboarding-manager-messenger__actions button { min-width: 160px; }
    .onboarding-manager-messenger__actions button:disabled { opacity: .45; cursor: not-allowed; }
    .onboarding-status.is-waiting { color: #667085; }
    body.onboarding-editor-mode .mobile-topbar, body.onboarding-editor-mode .sidebar, body.onboarding-editor-mode .sidebar-backdrop { display: none !important; }
    body.onboarding-editor-mode .dashboard { display: block; max-width: none; min-height: 100vh; padding: 0; }
    body.onboarding-editor-mode .workspace { width: 100%; max-width: none; padding: 92px 28px 32px; }
    body.onboarding-editor-mode .workspace > .app-page-heading, body.onboarding-editor-mode .workspace > .topline, body.onboarding-editor-mode .workspace > .workspace-user { display: none; }
    body.onboarding-editor-mode #callsView { max-width: 1480px; margin: 0 auto; }
    body.onboarding-editor-mode .widget-editor-shell { min-height: calc(100vh - 124px); border-radius: 26px; box-shadow: 0 24px 60px rgba(31,41,55,.08); }
    .onboarding-editor-bar { position: fixed; z-index: 420; top: 0; right: 0; left: 0; min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px max(28px, calc((100vw - 1480px) / 2)); border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(14px); }
    .onboarding-editor-bar > div:first-child { display: grid; gap: 2px; }
    .onboarding-editor-bar span { color: var(--muted); font-size: 11px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
    .onboarding-editor-bar strong { color: var(--ink); font-size: 15px; letter-spacing: -.02em; }
    .onboarding-editor-bar__actions { display: flex; align-items: center; gap: 9px; }
    .onboarding-editor-bar__actions button { min-height: 40px; }
    .onboarding-home-reveal { position: fixed; z-index: 700; inset: 0; display: grid; place-items: center; background: linear-gradient(135deg, #fff5f0, #f5f9ff); color: #172033; opacity: 0; transition: opacity .22s ease; }
    .onboarding-home-reveal.is-visible { opacity: 1; }
    .onboarding-home-reveal > div { display: grid; justify-items: center; gap: 10px; transform: translateY(12px) scale(.96); transition: transform .28s ease; }
    .onboarding-home-reveal.is-visible > div { transform: translateY(0) scale(1); }
    .onboarding-home-reveal span { display: grid; width: 74px; height: 74px; place-items: center; border-radius: 50%; background: #1bba62; color: #fff; box-shadow: 0 16px 34px rgba(27,186,98,.25); font-size: 39px; font-weight: 850; }
    .onboarding-home-reveal strong { font-size: 30px; letter-spacing: -.045em; }
    .onboarding-home-reveal small { color: #667085; font-size: 15px; font-weight: 700; }
    .onboarding-home-reveal.is-opening { animation: onboarding-reveal-home .72s cubic-bezier(.65,0,.35,1) forwards; }
    @keyframes onboarding-reveal-home { to { clip-path: circle(150% at 50% 50%); opacity: 0; } }
    @media (max-width: 820px) {
      .onboarding-backdrop { align-items: start; padding: 12px; }
      .onboarding-start { min-height: calc(100vh - 24px); border-radius: 23px; }
      .onboarding-start__header { min-height: 62px; padding: 0 19px; }
      .onboarding-start__body { padding: 28px 19px; }
      .onboarding-start__grid { grid-template-columns: 1fr; }
      .onboarding-recipient__grid { grid-template-columns: 1fr; }
      .onboarding-recipient-card { min-height: 190px; padding: 22px; }
      .onboarding-manager__days { grid-template-columns: repeat(4, minmax(50px, 1fr)); }
      .onboarding-widget-card { min-height: 390px; padding: 25px; }
      .onboarding-widget-card__icon { width: 58px; height: 58px; border-radius: 16px; }
      .onboarding-widget-card__copy { max-width: min(310px, 48%); margin-top: 18px; }
      .onboarding-widget-card__copy strong { font-size: 27px; }
      .onboarding-widget-card__copy > span { font-size: 14px; }
      .onboarding-widget-card__pill { bottom: 24px; left: 25px; }
      .onboarding-widget-card__art { width: min(46%, 360px); max-height: 82%; }
      .onboarding-widget-card--booking .onboarding-widget-card__art { width: min(48%, 390px); max-height: 86%; }
      .onboarding-manager-messengers { grid-template-columns: 1fr; }
      .onboarding-editor-bar { min-height: 62px; padding: 8px 16px; }
      .onboarding-editor-bar__actions .ghost { display: none; }
      body.onboarding-editor-mode .workspace { padding: 78px 12px 14px; }
      body.onboarding-editor-mode .widget-editor-shell { min-height: calc(100vh - 92px); border-radius: 18px; }
    }
    @media (max-width: 520px) {
      .onboarding-recipient-card { grid-template-columns: 58px minmax(0, 1fr); gap: 5px 14px; }
      .onboarding-recipient-card__icon { width: 58px; height: 58px; border-radius: 17px; }
      .onboarding-recipient-card > strong { font-size: 23px; }
      .onboarding-manager__hours { grid-template-columns: 1fr; }
      .onboarding-widget-card { min-height: 470px; }
      .onboarding-widget-card__icon { position: absolute; top: 25px; left: 25px; }
      .onboarding-widget-card__copy { position: absolute; top: 101px; right: 25px; left: 25px; max-width: none; margin-top: 0; padding-right: 0; }
      .onboarding-widget-card__copy strong { font-size: 24px; }
      .onboarding-widget-card__art, .onboarding-widget-card--booking .onboarding-widget-card__art { bottom: -4%; width: 58%; max-height: 52%; opacity: .58; }
      .onboarding-manager-messenger__actions { align-items: stretch; flex-direction: column-reverse; }
      .onboarding-manager-messenger__actions button { width: 100%; }
      .onboarding-messenger-card { grid-template-columns: 48px minmax(0, 1fr); padding: 16px; }
      .onboarding-messenger-card__icon { width: 48px; height: 48px; border-radius: 14px; }
    }

    /* Поля форм и редактор ссылки. */
    .booking-field-item { display: block; gap: 0; overflow: hidden; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
    .booking-field-item[open] { box-shadow: 0 10px 24px rgba(15,23,42,.05); }
    .booking-field-head { min-height: 58px; margin: 0; padding: 0 14px; border: 0; border-bottom: 1px solid transparent; background: color-mix(in srgb, var(--surface-soft) 58%, var(--surface)); cursor: pointer; list-style: none; }
    .booking-field-head::-webkit-details-marker { display: none; }
    .booking-field-item[open] > .booking-field-head { border-bottom-color: var(--line); }
    .booking-field-summary { display: flex; align-items: center; min-width: 0; gap: 8px; }
    .booking-field-summary b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink); font-size: 14px; letter-spacing: -.015em; }
    .booking-field-drag { color: color-mix(in srgb, var(--muted) 55%, transparent); font-size: 20px; font-style: normal; letter-spacing: -5px; transform: rotate(90deg); }
    .booking-field-chevron { margin-left: auto; color: var(--muted); font-size: 20px; line-height: 1; transition: transform .18s ease; }
    .booking-field-item[open] .booking-field-chevron { transform: rotate(180deg); }
    .booking-field-body { display: grid; gap: 12px; padding: 14px; }
    .booking-field-grid--compact { grid-template-columns: minmax(130px, .7fr) minmax(0, 1fr); }
    .booking-field-grid--compact .bfield-full { grid-column: 1 / -1; }
    .booking-field-grid .bfield > span em { margin-left: 4px; color: var(--muted); font-size: 10px; font-style: normal; font-weight: 700; letter-spacing: 0; text-transform: none; }
    .booking-field-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    .booking-field-actions .booking-field-required { min-height: 36px; padding: 0 10px; }
    .booking-field-delete { min-height: 36px; padding: 0 10px; border: 0; border-radius: 10px; background: transparent; color: #d64943; font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
    .booking-field-delete:hover, .booking-field-delete:focus-visible { background: #fff0ef; outline: 0; }
    .lead-consent-settings { position: relative; }
    .lead-consent-editor-wrap { position: relative; }
    .lead-consent-toolbar { position: fixed; z-index: 90; display: flex; gap: 2px; padding: 4px; border: 1px solid var(--line); border-radius: 10px; background: var(--ink); box-shadow: 0 10px 24px rgba(15,23,42,.2); }
    .lead-consent-toolbar.hidden, .lead-consent-link-popover.hidden { display: none; }
    .lead-consent-toolbar button { width: 32px; height: 30px; min-height: 30px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 7px; background: transparent; color: #fff; font: 800 19px/1 Gilroy, sans-serif; cursor: pointer; }
    .lead-consent-toolbar button:hover, .lead-consent-toolbar button:focus-visible { background: rgba(255,255,255,.16); outline: 0; }
    .lead-consent-link-popover { position: absolute; z-index: 50; top: calc(100% + 8px); right: 0; left: 0; display: grid; gap: 10px; max-width: 390px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: 0 18px 46px rgba(15,23,42,.16); }
    .lead-consent-link-popover strong { font-size: 14px; }
    .lead-consent-link-popover > label { display: grid; gap: 5px; color: var(--muted); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
    .lead-consent-link-popover input[type="url"] { min-height: 40px; padding: 0 11px; border-radius: 10px; font-size: 13px; text-transform: none; letter-spacing: normal; }
    .lead-consent-link-popover .lead-consent-new-tab { display: flex; align-items: center; gap: 8px; color: var(--ink); font-size: 12px; letter-spacing: 0; text-transform: none; }
    .lead-consent-link-popover .lead-consent-new-tab input { width: 16px; height: 16px; margin: 0; accent-color: var(--brand); }
    .lead-consent-link-popover > div { display: flex; justify-content: flex-end; gap: 8px; }

    /* Логотипы CRM всегда сохраняют исходные пропорции. */
    .crm-integration-card .crm-integration-card__brand { width: min(200px, 66%); height: 52px; min-height: 52px; overflow: visible; }
    .crm-integration-card .crm-integration-card__brand img, .crm-integration-card[data-crm-card="bitrix"] .crm-integration-card__brand img { display: block; width: auto; height: auto; max-width: 100%; max-height: 50px; object-fit: contain; object-position: left center; transform: none; }
    .crm-integration-card .crm-integration-card__brand--amo { position: relative; width: 200px; max-width: calc(100% - 56px); overflow: hidden; }
    .crm-integration-card .crm-integration-card__brand--amo img { position: absolute; top: -114px; left: -47px; width: 284px; height: 284px; max-width: none; max-height: none; object-fit: fill; transform: none; }
    .integration-brand { width: min(200px, 100%); height: 52px; overflow: visible; }
    .integration-brand img, .integration-card[data-crm="bitrix"] .integration-brand img { width: auto; height: auto; max-width: 100%; max-height: 50px; object-fit: contain; object-position: left center; transform: none; }

    /* Не даём рабочей области накладываться на навигацию на средних экранах. */
    .workspace { isolation: isolate; }
    @media (min-width: 861px) and (max-width: 1040px) {
      .dashboard { grid-template-columns: 238px minmax(0, 1fr); gap: 10px; padding: 10px; }
      .sidebar { padding: 14px; border-radius: 22px; }
      .workspace { padding: 28px; }
      .side-link { padding-inline: 12px; }
      .sidebar-logo-full { width: 94px; }
    }

    /* Кнопка поддержки закреплена в углу окна, а не в области контента. */
    .support-chat { right: 26px; bottom: 26px; }
    @media (max-width: 640px) {
      .support-chat:not(.is-open) { top: 14px; right: 16px; bottom: auto; left: auto; }
      .booking-field-grid--compact { grid-template-columns: 1fr; }
      .booking-field-grid--compact .bfield-full { grid-column: auto; }
    }

    /* Нативные, понятные контролы редактора форм. */
    .booking-field-drag { display: grid; grid-template-columns: repeat(2, 4px); grid-auto-rows: 4px; gap: 3px; width: 26px; height: 30px; place-content: center; flex: 0 0 26px; margin: 0 -2px 0 0; padding: 0; border: 0; background: transparent; color: var(--muted); cursor: grab; transform: none; }
    .booking-field-drag i { display: block; width: 4px; height: 4px; border-radius: 50%; background: currentColor; }
    .booking-field-drag:hover, .booking-field-drag:focus-visible { color: var(--ink); outline: 0; }
    .booking-field-drag:active { cursor: grabbing; }
    .booking-field-item.is-dragging { opacity: .52; }
    .booking-field-item.is-drop-before { box-shadow: inset 0 3px 0 var(--brand); }
    .booking-field-item.is-drop-after { box-shadow: inset 0 -3px 0 var(--brand); }

    .booking-field-actions .booking-field-required { display: inline-flex; align-items: center; min-height: 34px; gap: 10px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ink); font-size: 14px; font-weight: 700; letter-spacing: 0; text-transform: none; cursor: pointer; }
    .booking-field-required input { appearance: none; display: grid; width: 22px; height: 22px; place-items: center; margin: 0; border: 2px solid var(--ink); border-radius: 50%; background: transparent; box-shadow: none; cursor: pointer; }
    .booking-field-required input::after { width: 9px; height: 5px; border-bottom: 2px solid #fff; border-left: 2px solid #fff; content: ""; opacity: 0; transform: rotate(-45deg) translateY(-1px); }
    .booking-field-required input:checked { border-color: var(--brand); background: var(--brand); }
    .booking-field-required input:checked::after { opacity: 1; }
    .booking-field-required input:focus-visible { outline: 3px solid color-mix(in srgb, var(--brand) 26%, transparent); outline-offset: 2px; }

    .field-type-picker { position: relative; }
    .field-type-picker__trigger, .field-type-picker__menu button { font: inherit; }
    .field-type-picker__trigger { width: 100%; min-height: 48px; display: flex; align-items: center; gap: 9px; padding: 0 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); color: var(--ink); font-size: 14px; font-weight: 700; text-align: left; cursor: pointer; }
    .field-type-picker__trigger > i, .field-type-picker__menu i { display: grid; width: 19px; height: 19px; flex: 0 0 19px; place-items: center; color: #7d8796; font-style: normal; }
    .field-type-picker svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
    .field-type-picker__trigger > b { margin-left: auto; color: var(--muted); font-size: 18px; font-weight: 700; line-height: 1; transition: transform .16s ease; }
    .field-type-picker.is-open .field-type-picker__trigger { border-color: color-mix(in srgb, var(--brand) 55%, var(--line)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 13%, transparent); }
    .field-type-picker.is-open .field-type-picker__trigger > b { transform: rotate(180deg); }
    .field-type-picker__menu { position: absolute; z-index: 35; top: calc(100% + 7px); right: 0; left: 0; display: none; overflow: hidden; padding: 5px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); box-shadow: 0 16px 38px rgba(15,23,42,.15); }
    .field-type-picker.is-open .field-type-picker__menu { display: grid; }
    .field-type-picker__menu button { min-height: 38px; display: flex; align-items: center; gap: 9px; width: 100%; padding: 0 9px; border: 0; border-radius: 8px; background: transparent; color: var(--ink); font-size: 13px; font-weight: 700; text-align: left; cursor: pointer; }
    .field-type-picker__menu button:hover, .field-type-picker__menu button:focus-visible { background: #fff1eb; color: var(--brand); outline: 0; }
    .field-type-picker__menu button[aria-selected="true"] { background: #fff4ef; color: var(--brand); }
    .field-type-picker__menu button > b { margin-left: auto; font-size: 15px; }

    .lead-consent-toolbar { gap: 4px; padding: 5px; border-radius: 12px; }
    .lead-consent-toolbar button { width: auto; height: 34px; min-height: 34px; display: inline-flex; align-items: center; gap: 6px; padding: 0 9px; font: 750 12px/1 Gilroy, sans-serif; white-space: nowrap; }
    .lead-consent-toolbar button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

    /* Белые оттенки остаются видимыми в каждом выборе цвета. */
    .lead-color-dot, .gradient-stop, .custom-saved-colors button, .deal-stage-color-swatch, input[type="color"] { border: 1px solid rgba(71,85,105,.42) !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.5); }
    .gradient-stop.active, .lead-color-dot.active { box-shadow: inset 0 0 0 1px rgba(255,255,255,.5), 0 0 0 2px color-mix(in srgb, var(--brand) 55%, transparent); }

    /* Финал первого запуска: подарок перед переходом в кабинет. */
    .onboarding-home-reveal { padding: 24px; background: radial-gradient(circle at 50% 20%, #fff 0 10%, #fff5ee 42%, #eef6ff 100%); }
    .onboarding-home-reveal__card { width: min(100%, 468px); display: grid !important; justify-items: center; gap: 12px !important; padding: 38px 34px 30px; border: 1px solid rgba(255,255,255,.85); border-radius: 28px; background: rgba(255,255,255,.86); box-shadow: 0 28px 72px rgba(77,78,103,.18); text-align: center; }
    .onboarding-home-reveal .onboarding-home-reveal__gift { position: relative; display: grid; width: 94px; height: 94px; place-items: center; border-radius: 28px; background: linear-gradient(140deg, #ff8b58, #ff5d20); color: #fff; box-shadow: 0 18px 34px rgba(255,98,41,.3); }
    .onboarding-home-reveal__gift svg { width: 63px; height: 63px; fill: none; stroke: currentColor; stroke-width: 5; stroke-linejoin: round; }
    .onboarding-home-reveal__gift i { position: absolute; top: -18px; right: -24px; color: #ffbf2e; font-size: 30px; font-style: normal; }
    .onboarding-home-reveal .onboarding-home-reveal__card p { margin: 10px 0 -5px; color: var(--ink); font-size: 21px; font-weight: 800; letter-spacing: -.035em; }
    .onboarding-home-reveal .onboarding-home-reveal__card strong { color: var(--brand); font-size: 29px; line-height: 1.05; letter-spacing: -.045em; }
    .onboarding-home-reveal .onboarding-home-reveal__card small { max-width: 330px; color: #667085; font-size: 14px; font-weight: 650; line-height: 1.45; }
    .onboarding-home-reveal__card .primary { width: 100%; min-height: 50px; margin-top: 8px; }
    .onboarding-home-reveal__link { padding: 3px 8px; border: 0; background: transparent; color: #5d6777; font: 700 13px/1.2 Gilroy, sans-serif; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
    .onboarding-home-reveal__link:hover, .onboarding-home-reveal__link:focus-visible { color: var(--brand); outline: 0; }
    @media (max-width: 640px) {
      .onboarding-home-reveal__card { padding: 32px 22px 25px; border-radius: 24px; }
      .onboarding-home-reveal .onboarding-home-reveal__card strong { font-size: 25px; }
    }
