:root{
--acc:var(--zwork-preview-accent,#B4884A);
--ff:var(--zwork-preview-font-family,Inter);
--fs:var(--zwork-preview-type-scale,1);
--den:var(--zwork-preview-density,1);
--mot:var(--zwork-preview-motion,1);
--canvas:#FAF8F5;--surf:#FFF;--surf2:#F4F0E9;--ink:#17130E;--ink2:#453E34;--mut:#7E7568;--mut2:#A69D90;
--line:#EAE3D9;--line2:#F2ECE3;--sand:#F7EFE2;--ok:#2E7D5B;--warn:#9C6B1D;--bad:#B23A31;
--sh:0 1px 2px rgba(23,19,14,.04),0 10px 28px -12px rgba(23,19,14,.1);
--sh2:0 2px 6px rgba(23,19,14,.05),0 30px 60px -26px rgba(23,19,14,.18);
--r2:22px;--pl:999px;--serif:'Instrument Serif',Georgia,'Times New Roman',serif;
--sans:var(--ff),-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif}
html[data-t=dark]{--canvas:#12100E;--surf:#1B1815;--surf2:#241F1A;--ink:#F5F0E8;--ink2:#DAD3C8;--mut:#9E9588;--mut2:#7C7367;--line:#2C2721;--line2:#241F1A;--sand:#2B241B;--acc:#CBA166;--ok:#5DB08A;--warn:#D2A054;--bad:#E0847C;--sh:0 1px 2px rgba(0,0,0,.45),0 10px 28px -12px rgba(0,0,0,.55);--sh2:0 2px 6px rgba(0,0,0,.5),0 30px 60px -26px rgba(0,0,0,.7)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:calc(15.5px*var(--fs));line-height:1.6;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;letter-spacing:-.005em}
::selection{background:var(--ink);color:var(--canvas)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
svg{flex:none}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:10px}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.d{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;line-height:1.04}
h3,h4{font-weight:500;letter-spacing:-.02em;line-height:1.25}
em{font-style:italic}
.mut{color:var(--mut)}.sm{font-size:13.5px}.xs{font-size:12.5px}.center{text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.eyebrow:before{content:"";width:24px;height:1px;background:var(--acc)}
.i14{width:14px;height:14px}.i16{width:16px;height:16px}.i18{width:18px;height:18px}.i20{width:20px;height:20px}.i22{width:22px;height:22px}
.hide-m{}
/* объявление сверху сайта: задаётся в админ-панели — раздел «Сайт» */
.promo-bar{background:var(--ink);color:var(--canvas);text-align:center;font-size:13px;padding:9px 16px;line-height:1.4}

.nav{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--canvas) 84%,transparent);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);transition:box-shadow .35s}
.nav.on{box-shadow:0 1px 0 var(--line),0 8px 24px -20px rgba(23,19,14,.3)}
.N{display:flex;align-items:center;justify-content:space-between;height:78px;gap:20px}
.logo{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:500;letter-spacing:-.025em}
.logo b{width:27px;height:27px;border-radius:9px;background:var(--ink);color:var(--canvas);display:grid;place-items:center;font-family:var(--serif);font-weight:400;font-size:16px;padding-bottom:1px}
.menu{display:flex;gap:32px;font-size:14.5px;color:var(--mut)}
.menu a:hover{color:var(--ink)}
.nr{display:flex;gap:9px;align-items:center}
.burger{display:none;width:42px;height:42px;border-radius:12px;align-items:center;justify-content:center}
.mnav{display:none;position:fixed;inset:78px 0 0;background:var(--canvas);z-index:59;padding:32px;flex-direction:column;gap:8px}
.mnav.open{display:flex}
.mnav a{padding:12px 0;font-size:26px;font-family:var(--serif);border-bottom:1px solid var(--line)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:46px;padding:0 22px;border-radius:var(--pl);font-size:14.5px;font-weight:500;border:1px solid transparent;white-space:nowrap;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .3s,background .2s,border-color .2s}
.btn.p{background:var(--ink);color:var(--canvas)}
.btn.p:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.btn.s{background:var(--surf);border-color:var(--line)}
.btn.s:hover{border-color:var(--mut2);transform:translateY(-2px);box-shadow:var(--sh)}
.btn.g{color:var(--mut)}.btn.g:hover{color:var(--ink);background:var(--surf2)}
.btn.lg{height:56px;padding:0 30px;font-size:15.5px}
.btn.sm{height:38px;padding:0 16px;font-size:13.5px}
.btn.fw{width:100%}.btn.dgr{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 30%,transparent)}
.btn.n{height:34px;padding:0 14px;font-size:13px;background:var(--surf);border-color:var(--line)}
.btn:disabled{opacity:.42;pointer-events:none}
.ar{transition:transform .25s}.btn:hover .ar{transform:translateX(3px)}
.hero{padding:calc(104px*var(--den)) 0 calc(64px*var(--den))}
.hin{display:grid;grid-template-columns:1.02fr .98fr;gap:calc(56px*var(--den));align-items:center}
.h1{font-size:clamp(44px,5.6vw,84px)}
.h1 em{color:var(--acc)}
.lead{font-size:clamp(16.5px,1.5vw,19px);color:var(--mut);max-width:540px;line-height:1.6}
.cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.micro{font-size:13px;color:var(--mut2)}
.mock{background:var(--surf);border:1px solid var(--line);border-radius:26px;box-shadow:var(--sh2);overflow:hidden}
.mock .tb{display:flex;align-items:center;gap:11px;padding:16px 20px;border-bottom:1px solid var(--line2);font-size:13.5px}
.dots{display:flex;gap:6px}.dots i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.mock .bd{padding:22px;display:grid;gap:13px}
.bub{max-width:86%;padding:12px 16px;border-radius:18px;font-size:14.5px;line-height:1.5}
.bub.a{background:var(--surf2);border-bottom-left-radius:6px}
.bub.u{background:var(--ink);color:var(--canvas);justify-self:end;border-bottom-right-radius:6px}
.slots{display:flex;gap:8px;flex-wrap:wrap}
.slot{height:37px;padding:0 15px;border-radius:12px;border:1px solid var(--line);background:var(--surf);font-size:13.5px;display:inline-flex;align-items:center;font-variant-numeric:tabular-nums;transition:all .2s}
.slot:hover,.slot.on{border-color:var(--ink);background:var(--ink);color:var(--canvas)}
.conf{display:flex;gap:9px;align-items:center;font-size:13.5px;color:var(--ok);background:color-mix(in srgb,var(--ok) 9%,transparent);padding:11px 15px;border-radius:13px}
.menu button{transition:color .2s;font-size:14.5px;color:var(--mut)}.menu button:hover{color:var(--ink)}
.mnav button{padding:12px 0;font-size:26px;font-family:var(--serif);border-bottom:1px solid var(--line);text-align:left;color:var(--ink)}
.fg button{display:block;color:var(--mut);padding:6px 0;font-size:14.5px;text-align:left}.fg button:hover{color:var(--ink)}
.trust{display:flex;gap:46px;flex-wrap:wrap;justify-content:space-between;padding:calc(40px*var(--den)) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--mut2);font-size:12px;letter-spacing:.2em;font-weight:500}
.sec{padding:calc(118px*var(--den)) 0}
.sec.tight{padding:calc(76px*var(--den)) 0}
.hd{max-width:680px}
.hd h2{font-size:clamp(33px,4.1vw,58px);margin:20px 0 18px}
.hd p{color:var(--mut);font-size:17px;line-height:1.62}
.hd.c{margin-left:auto;margin-right:auto;text-align:center}
.grid{display:grid;gap:calc(20px*var(--den))}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--surf);border:1px solid var(--line);border-radius:var(--r2);padding:calc(30px*var(--den))}
.card.lift{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.card.lift:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.card h3{font-size:17.5px;margin-bottom:9px}
.ic{width:44px;height:44px;border-radius:14px;background:var(--sand);color:var(--acc);display:grid;place-items:center;margin-bottom:22px}
.ic svg{width:21px;height:21px}
.step{display:grid;grid-template-columns:104px 1fr;gap:24px;padding:calc(34px*var(--den)) 0;border-top:1px solid var(--line);align-items:start}
.step:last-child{border-bottom:1px solid var(--line)}
.step .n{font-family:var(--serif);font-size:30px;color:var(--acc);line-height:1}
.step h3{font-size:24px;margin-bottom:8px;font-family:var(--serif);font-weight:400}
.met{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.met .v{font-family:var(--serif);font-size:52px;line-height:1;letter-spacing:-.02em}
.met .l{color:var(--mut);font-size:14px;margin-top:12px}
.q{display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}
.q .card{display:flex;flex-direction:column;gap:18px}
.stars{display:flex;gap:3px;color:var(--acc)}
.stars svg{width:15px;height:15px;fill:currentColor;stroke:none}
.who{display:flex;align-items:center;gap:11px;margin-top:auto}
.av{width:36px;height:36px;border-radius:50%;background:var(--sand);color:var(--acc);display:grid;place-items:center;font-size:12.5px;font-weight:500;flex:none;letter-spacing:0}
.av.dk{background:var(--ink);color:var(--canvas)}
/* plans */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.plan{background:var(--surf);border:1px solid var(--line);border-radius:26px;padding:34px;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s}
.plan:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.plan.pop{border-color:var(--ink);box-shadow:var(--sh2)}
.tagi{position:absolute;top:26px;right:26px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--acc);background:var(--sand);padding:5px 11px;border-radius:var(--pl)}
.plan .nm{font-family:var(--serif);font-size:26px}
.plan .ds{color:var(--mut);font-size:14px;margin-top:6px}
.price{font-family:var(--serif);font-size:54px;line-height:1;margin:26px 0 6px;letter-spacing:-.02em}
.price small{font-family:var(--sans);font-size:14px;color:var(--mut);letter-spacing:0}
.plan ul{list-style:none;display:grid;gap:13px;margin:26px 0 30px;font-size:14.5px;flex:1}
.plan li{display:flex;gap:11px;align-items:flex-start;color:var(--ink2)}
.plan li svg{width:16px;height:16px;color:var(--acc);margin-top:3px}
.faq{border-top:1px solid var(--line)}
.q-i{border-bottom:1px solid var(--line)}
.q-i button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;text-align:left;padding:26px 0;font-size:19px;font-family:var(--serif)}
.q-i .a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.2,.8,.2,1),opacity .3s;opacity:0}
.q-i.open .a{max-height:360px;opacity:1}
.q-i .a p{color:var(--mut);padding:0 0 26px;max-width:760px}
.q-i .pm{transition:transform .35s}.q-i.open .pm{transform:rotate(45deg)}
.final{background:var(--ink);color:var(--canvas);border-radius:32px;padding:calc(72px*var(--den)) 56px;text-align:center}
.final h2{font-size:clamp(32px,4vw,56px);margin-bottom:18px}
.final p{color:color-mix(in srgb,var(--canvas) 68%,transparent);max-width:520px;margin:0 auto 34px}
.final .btn.s{background:transparent;color:var(--canvas);border-color:color-mix(in srgb,var(--canvas) 28%,transparent)}
.final .btn.s:hover{background:color-mix(in srgb,var(--canvas) 10%,transparent)}
.final .btn.p{background:var(--canvas);color:var(--ink)}
.foot{padding:calc(64px*var(--den)) 0 40px;border-top:1px solid var(--line)}
.fg{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.fg h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut2);margin-bottom:18px}
.fg a{display:block;color:var(--mut);padding:6px 0;font-size:14.5px}
.fg a:hover{color:var(--ink)}
.fbot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:52px;padding-top:26px;border-top:1px solid var(--line);color:var(--mut2);font-size:13px}
/* prose */
.doc{display:grid;grid-template-columns:236px 1fr;gap:72px;padding:calc(64px*var(--den)) 0 calc(100px*var(--den))}
.dnav{position:sticky;top:104px;align-self:start;display:flex;flex-direction:column;gap:2px}
.dnav button{text-align:left;padding:9px 13px;border-radius:11px;font-size:14.5px;color:var(--mut)}
.dnav button:hover{background:var(--surf2);color:var(--ink)}
.prose{max-width:740px}
.prose h1{font-size:clamp(38px,4.4vw,56px);margin-bottom:18px}
.prose h2{font-size:30px;margin:60px 0 16px;font-family:var(--serif);font-weight:400}
.prose h3{font-size:18px;margin:32px 0 10px}
.prose p,.prose li{color:var(--ink2);font-size:16px;line-height:1.75}
.prose p{margin-bottom:15px}
.prose code{background:var(--surf2);padding:2px 7px;border-radius:7px;font-size:13.5px;font-family:ui-monospace,Menlo,monospace}
.note{border:1px solid var(--line);background:var(--surf);border-radius:16px;padding:20px 22px;margin:22px 0;font-size:15px;color:var(--ink2)}
/* auth */
.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.auth .l{padding:56px 7vw;display:flex;flex-direction:column;justify-content:center}
.auth .frm{width:100%;max-width:420px;margin:0 auto}
.auth .r{background:var(--ink);color:var(--canvas);padding:56px 5vw;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.auth .r h2{font-family:var(--serif);font-size:clamp(30px,3.2vw,46px);font-weight:400;line-height:1.1}
.auth .r .rows{display:grid;gap:16px;margin-top:36px}
.auth .r .rw{display:flex;gap:12px;align-items:center;font-size:14.5px;color:color-mix(in srgb,var(--canvas) 74%,transparent)}
.auth .r .rw svg{color:var(--acc);width:17px;height:17px}
.auth .r .glow{position:absolute;width:520px;height:520px;right:-160px;top:-140px;background:radial-gradient(circle,color-mix(in srgb,var(--acc) 26%,transparent),transparent 68%);pointer-events:none}
.demo-b{margin-top:26px;border:1px dashed var(--line);border-radius:16px;padding:16px 18px;font-size:13.5px;color:var(--mut)}
.demo-b button{color:var(--ink);text-decoration:underline;font-size:13.5px}
.fld{display:block;margin-bottom:18px}
.fld>span{display:block;font-size:13.5px;color:var(--ink2);margin-bottom:9px;font-weight:500}
.inp{width:100%;height:50px;border:1px solid var(--line);border-radius:14px;background:var(--surf);padding:0 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}
.inp:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--acc) 20%,transparent)}
textarea.inp{height:auto;min-height:112px;padding:14px 16px;resize:vertical;line-height:1.6}
select.inp{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237E7568' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
.err{color:var(--bad);font-size:13px;min-height:20px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sw{position:relative;width:44px;height:26px;border-radius:var(--pl);background:var(--line);transition:background .25s;flex:none}
.sw:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .25s;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.sw.on{background:var(--ink)}.sw.on:after{transform:translateX(18px)}
/* app */
.app{display:grid;grid-template-columns:266px 1fr;min-height:100vh}
.side{border-right:1px solid var(--line);padding:26px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto}
.side .logo{padding:4px 12px 24px}
.navi{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:14px;font-size:14.5px;color:var(--mut);transition:all .2s}
.navi svg{width:18px;height:18px}
.navi:hover{color:var(--ink);background:var(--surf2)}
.navi.on{background:var(--surf);color:var(--ink);font-weight:500;box-shadow:var(--sh)}
.grp{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut2);padding:22px 13px 7px;font-weight:500}
.me{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);display:flex;align-items:center;gap:11px}
.me .t{flex:1;min-width:0}
.me .t div{font-size:13.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.main{min-width:0}
.min{max-width:1080px;padding:calc(36px*var(--den)) calc(42px*var(--den)) 90px}
.ph{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.ph h1{font-size:32px;font-family:var(--serif);font-weight:400}
.ph p{color:var(--mut);margin-top:8px;font-size:14.5px}
.kpi{font-size:40px;font-family:var(--serif);margin-top:14px;line-height:1}
.kpi small{font-family:var(--sans);font-size:14px;color:var(--mut);letter-spacing:0}
.bdg{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border-radius:var(--pl);font-size:12.5px;background:var(--surf2);color:var(--ink2);white-space:nowrap}
.bdg.ok{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok)}
.bdg.wa{background:color-mix(in srgb,var(--warn) 13%,transparent);color:var(--warn)}
.bdg.ba{background:color-mix(in srgb,var(--bad) 11%,transparent);color:var(--bad)}
.bdg.dk{background:var(--ink);color:var(--canvas)}
.tw{background:var(--surf);border:1px solid var(--line);border-radius:var(--r2);overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:600px}
.tbl th{text-align:left;font-weight:500;color:var(--mut);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;padding:22px 22px 12px}
.tbl td{padding:16px 22px;border-top:1px solid var(--line2);vertical-align:middle}
.tbl tr:hover td{background:var(--surf2)}
.li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line2)}
.li:last-child{border-bottom:none}
/* диаграмма: столбцы растут от низа контейнера */
.bars{display:flex;align-items:flex-end;gap:10px;height:180px;margin-top:10px}
.bars .c{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;height:100%}
.bars .b{width:100%;max-width:40px;height:0;background:var(--surf2);border-radius:10px;transition:height 1s cubic-bezier(.2,.8,.2,1)}
.bars .c.hi .b{background:var(--acc)}
.bars .x{font-size:11px;color:var(--mut2)}
.bars .c .v{font-size:11.5px;color:var(--ink);font-variant-numeric:tabular-nums}
.bars .c .bwrap{display:flex;align-items:flex-end;justify-content:center;flex:1;width:100%}
.meter{height:8px;background:var(--surf2);border-radius:var(--pl);overflow:hidden;margin-top:16px}
.meter i{display:block;height:100%;background:var(--acc);border-radius:var(--pl);transition:width 1s cubic-bezier(.2,.8,.2,1)}
.tabs{display:inline-flex;gap:4px;background:var(--surf2);padding:4px;border-radius:14px;margin-bottom:26px;flex-wrap:wrap}
.tabs button{height:36px;padding:0 16px;border-radius:11px;font-size:13.5px;color:var(--mut);transition:all .2s}
.tabs button.on{background:var(--surf);color:var(--ink);box-shadow:var(--sh)}
.empty{text-align:center;padding:56px 20px;color:var(--mut);font-size:14.5px}
.code{background:var(--ink);color:color-mix(in srgb,var(--canvas) 88%,transparent);border-radius:16px;padding:20px 22px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.75;overflow-x:auto;white-space:pre}
.chk{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line2);font-size:14.5px;color:var(--ink2)}
.chk:last-child{border-bottom:none}
.chk .bx{width:20px;height:20px;border-radius:7px;border:1.5px solid var(--line);display:grid;place-items:center;flex:none;margin-top:2px;transition:all .2s}
.chk.done .bx{background:var(--ink);border-color:var(--ink);color:var(--canvas)}
.chk svg{width:12px;height:12px}
/* chat */
.chat{display:grid;grid-template-columns:272px 1fr;height:calc(100vh - 210px);min-height:520px;background:var(--surf);border:1px solid var(--line);border-radius:var(--r2);overflow:hidden}
/* В демо-чате на лендинге фиксированная высота: сообщения прокручиваются внутри */
/* Демо-чат на главной: панель чата без списка диалогов, поэтому сетку
   нужно переключить на одну колонку — иначе окно съезжало вбок. */
#demoChat .chat{display:block;height:440px;min-height:0;max-height:440px;border:none;border-radius:0;overflow:hidden;background:var(--surf)}
#demoChat .chat>.cl{display:none}
#demoChat .cv{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:0}
#demoChat .cv>.hd{display:none}
#demoChat .msgs{padding:20px 22px;flex:1;min-height:0;overflow-y:auto}
#demoChat .chips{padding:0 22px 12px;flex:none}
#demoChat .comp{padding:12px 16px;flex:none}
/* документация и остальные стили ниже */
.cl{border-right:1px solid var(--line2);overflow-y:auto}
.cl .ci{padding:16px 18px;border-bottom:1px solid var(--line2);cursor:pointer;width:100%;text-align:left;transition:background .2s}
.cl .ci:hover,.cl .ci.on{background:var(--surf2)}
.cl .ci .t{font-size:14px;font-weight:500;display:flex;justify-content:space-between;gap:10px}
.cl .ci .p{font-size:12.5px;color:var(--mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px}
.cv{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.cv .hd{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line2)}
.msgs{flex:1;min-height:0;overflow-y:auto;padding:28px;display:flex;flex-direction:column;gap:14px;overscroll-behavior:contain}
.msgs .row{display:flex;gap:11px;align-items:flex-end;max-width:78%}.msgs .row.u{align-self:flex-end;flex-direction:row-reverse}
/* Текст сообщения: длинные ответы и технические строки переносятся,
   а не растягивают окно чата. */
.msgs .row .tx{padding:13px 17px;border-radius:18px;font-size:14.5px;line-height:1.55;background:var(--surf2);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%}
.msgs .row.a .tx{border-bottom-left-radius:6px}
.msgs .row.u .tx{background:var(--ink);color:var(--canvas);border-bottom-right-radius:6px}
.chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 28px 14px}
.chip{height:34px;padding:0 14px;border:1px solid var(--line);border-radius:var(--pl);font-size:13px;background:var(--surf);transition:all .2s}
.chip:hover{border-color:var(--ink);background:var(--ink);color:var(--canvas)}
.comp{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--line2);align-items:center}
.comp input{flex:1;height:50px;border-radius:var(--pl);border:1px solid var(--line);background:var(--canvas);padding:0 20px;transition:all .2s}
.comp input:focus{outline:none;border-color:var(--ink);background:var(--surf)}
.comp .snd{width:50px;height:50px;border-radius:50%;background:var(--ink);color:var(--canvas);display:grid;place-items:center;flex:none;transition:transform .2s}
.comp .snd:hover{transform:scale(1.06)}
.typing{display:inline-flex;gap:4px;padding:15px 17px}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--mut2);animation:bl 1.2s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
.days{display:flex;gap:9px;overflow-x:auto;padding-bottom:6px;margin-bottom:22px}
.day{flex:none;padding:11px 16px;border:1px solid var(--line);border-radius:14px;font-size:13.5px;text-align:center;min-width:82px;background:var(--surf);transition:all .2s}
.day b{display:block;font-size:19px;font-family:var(--serif);font-weight:400;margin-top:2px}
.day.on{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:9px}
.sl{height:40px;border-radius:12px;border:1px solid var(--line);font-size:13.5px;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;background:var(--surf)}
.sl:hover{border-color:var(--ink)}
.sl.busy{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
/* modal */
.ov{position:fixed;inset:0;z-index:120;background:rgba(23,19,14,.42);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);display:grid;place-items:center;padding:24px;animation:fd .25s}
.modal{background:var(--surf);border-radius:26px;padding:36px;width:100%;max-width:540px;max-height:88vh;overflow-y:auto;box-shadow:var(--sh2);animation:pp .32s cubic-bezier(.2,.9,.25,1);position:relative}
.modal h3{font-family:var(--serif);font-size:26px;font-weight:400;margin-bottom:8px}
.modal .x{position:absolute;top:20px;right:20px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--mut)}
.modal .x:hover{background:var(--surf2);color:var(--ink)}
.toasts{position:fixed;bottom:26px;right:26px;z-index:140;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.toast{background:var(--ink);color:var(--canvas);padding:15px 21px;border-radius:15px;font-size:14px;box-shadow:var(--sh2);animation:pp .28s;max-width:360px}
.toast.ba{background:var(--bad);color:#fff}
/* служебные состояния */
.boot{min-height:100vh;display:grid;place-items:center;gap:18px;text-align:center;align-content:center}
.boot-mark{width:52px;height:52px;border-radius:16px;background:var(--ink);color:var(--canvas);display:grid;place-items:center;font-family:var(--serif);font-size:28px;justify-self:center;padding-bottom:2px}
.boot-text{color:var(--mut);font-size:14.5px}
.spin{width:15px;height:15px;border:1.8px solid currentColor;border-top-color:transparent;border-radius:50%;display:inline-block;animation:spn .7s linear infinite;vertical-align:-2px}
@keyframes spn{to{transform:rotate(360deg)}}
.mono{font-family:ui-monospace,Menlo,monospace;font-size:13.5px}
.dnav-i{display:block;padding:9px 13px;border-radius:11px;font-size:14.5px;color:var(--mut)}
.dnav-i:hover{background:var(--surf2);color:var(--ink)}
.tw table.tbl td .empty{padding:40px 20px}

@keyframes pp{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@keyframes fd{from{opacity:0}to{opacity:1}}
@keyframes bl{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.rv{opacity:0;transform:translateY(18px);transition:opacity calc(.75s/var(--mot)) cubic-bezier(.2,.8,.2,1),transform calc(.75s/var(--mot)) cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}
/* документация: группы, поиск, разделы */
.dnav-grp{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut2);padding:18px 13px 6px;font-weight:500}
.dnav-grp:first-child{padding-top:0}
.dnav-i{display:block;width:100%;text-align:left;padding:8px 13px;border-radius:11px;font-size:14px;color:var(--mut);transition:all .2s}
.dnav-i:hover{background:var(--surf2);color:var(--ink)}
.dnav-i.on{background:var(--sand);color:var(--ink);font-weight:500}
.doc-search{position:sticky;top:96px;z-index:5;background:var(--canvas);padding:14px 0 18px;margin-bottom:8px}
.doc-search-row{display:flex;gap:8px;align-items:center}
.doc-search-row .inp{flex:1;height:52px;font-size:15px;border-radius:16px}
.doc-search-row .btn{height:52px;width:52px;padding:0;font-size:17px;border-radius:16px}
.doc-search-hint{font-size:12.5px;color:var(--mut);margin-top:8px;min-height:16px;line-height:1.5}
.doc-search-hint b{color:var(--ink)}
/* подсветка найденного: все совпадения и текущее */
mark.doc-hit{background:color-mix(in srgb,var(--acc) 26%,transparent);color:inherit;border-radius:4px;padding:0 2px;transition:background .2s}
mark.doc-hit-on{background:var(--ink);color:var(--canvas)}
mark.doc-hit-on::selection{background:var(--acc)}
.doc-sec{padding-top:12px;scroll-margin-top:150px}
.doc-sec h2{margin-top:44px}
.doc-sec:first-child h2{margin-top:6px}
/* шаги AI в чате: честно показывают, что он делает */
.steps-inline{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.steps-inline span{font-size:11.5px;color:var(--acc);background:var(--sand);padding:4px 10px;border-radius:999px;white-space:nowrap}
.thinking-text{margin-left:8px;font-size:13.5px;color:var(--mut)}
/* кнопка-пункт меню (например, «Глазами бизнеса») */
button.navi{width:100%;text-align:left;background:none;border:none;cursor:pointer;font:inherit}
button.navi:hover{color:var(--ink);background:var(--surf2)}

/* модальные окна и уведомления в кабинете */
.mtop .btn.g{height:38px;width:38px;padding:0;border-radius:12px;display:grid;place-items:center}

.mtop{display:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1!important;transform:none!important;transition:none!important}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media (max-width:1180px){.hin{grid-template-columns:1fr;gap:44px}.met,.g4,.q{grid-template-columns:repeat(2,1fr)}.chat{grid-template-columns:1fr}.cl{display:none}}
@media (max-width:980px){.app{grid-template-columns:1fr}.side{display:none}.mtop{display:block;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--canvas) 90%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.mtop .r1{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;gap:12px}.mtop .r2{display:flex;gap:7px;overflow-x:auto;padding:0 18px 14px;scrollbar-width:none}.mtop .r2::-webkit-scrollbar{display:none}.mtop .r2 a{flex:none;padding:8px 15px;border-radius:var(--pl);font-size:13.5px;border:1px solid var(--line);color:var(--mut)}.mtop .r2 a.on{background:var(--ink);color:var(--canvas);border-color:var(--ink)}.min{padding:26px 22px 70px}.doc{grid-template-columns:1fr;gap:32px}.dnav{display:none}}
@media (max-width:860px){.menu,.nr .hide-m{display:none}.burger{display:flex}.met,.g3,.g4,.plans,.q,.g2,.fg{grid-template-columns:1fr}.trust{gap:22px;justify-content:flex-start}.auth{grid-template-columns:1fr}.auth .r{display:none}.step{grid-template-columns:72px 1fr}.final{padding:56px 26px;border-radius:26px}.row2{grid-template-columns:1fr}.ph h1{font-size:26px}}