/* Стиль A (Cobalt): белый фон, спокойный синий акцент, боковое меню, карточки. Палитра только в токенах: смена цветов = правка блока :root. */
:root{
  /* Тема «Лазурь» (выбор Сержа 26.10.2026): бело-голубой фон, тёмно-синее меню, голубые акценты; кабинет светлый по умолчанию */
  --ground:#EEF6FF;--panel:#FFFFFF;--ink:#0B1B33;--muted:#56708F;--line:#D3E4F7;--soft:#EAF3FD;
  --accent:#0284C7;--accent-soft:#E0F2FE;--accent-ink:#075985;--on-accent:#FFFFFF;
  --mint:#15803D;--mint-soft:#DCFCE7;--amber:#B45309;--amber-soft:#FEF3C7;--coral:#D92D2D;--coral-soft:#FFE9E9;
  --side:#0B2545;--side-ink:#FFFFFF;--side-mute:#A9C1DE;--side-on:#13406F;--side-line:#1C3A60;
  --out-bg:#0B2545;--out-ink:#FFFFFF;--out-mute:#A9C1DE;
  --shadow:0 1px 2px rgba(11,37,69,.05),0 4px 14px rgba(11,37,69,.05);--rad:16px;
  --font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --ground:#0C1226;--panel:#141C36;--ink:#EAF0FF;--muted:#97A3C7;--line:#243055;--soft:#1B2547;
  --accent:#38BDF8;--accent-soft:#12324F;--accent-ink:#7DD3FC;--on-accent:#0C1226;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#FF7A7E;--coral-soft:#431E24;
  --side:#0A1A33;--side-ink:#FFFFFF;--side-mute:#97A3C7;--side-on:#16335C;--side-line:#1C2E52;
  --out-bg:#16335C;--out-ink:#FFFFFF;--out-mute:#A9C1DE;--shadow:0 8px 24px rgba(0,0,0,.25);color-scheme:dark}
*{box-sizing:border-box}
html,body{margin:0;background:var(--ground);color:var(--ink);font:15px/1.5 var(--font)}
body{padding:env(safe-area-inset-top,0) clamp(12px,2.4vw,28px) env(safe-area-inset-bottom,0)}
h1,h2,h3,p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--accent-ink)}
[hidden]{display:none!important}
.app{max-width:1440px;margin:0 auto;padding-block:18px 48px;display:grid;grid-template-columns:232px minmax(0,1fr);gap:18px}
.side{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--shadow);padding:16px 10px;display:flex;flex-direction:column;gap:3px;align-self:start;position:sticky;top:max(18px,env(safe-area-inset-top,0))}
.logo{display:flex;gap:10px;align-items:center;font-weight:800;font-size:16px;padding:2px 10px 14px}
.logo i{width:28px;height:28px;border-radius:9px;background:var(--accent);flex:none}
.nav{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:12px;color:var(--muted);font-weight:600;font-size:14px}
.nav:hover{background:var(--soft)}.nav.on{background:var(--accent-soft);color:var(--accent-ink)}
.nav:focus-visible,.btn:focus-visible,.chk:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nav span{font:500 11px var(--mono);background:var(--soft);border-radius:99px;padding:2px 8px}.nav.on span{background:var(--accent);color:var(--on-accent)}
.grp{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px 12px 3px}
.side .foot{margin-top:12px;padding:10px 12px 0;border-top:1px solid var(--line);display:grid;gap:8px;font-size:13px;color:var(--muted)}
main{display:grid;gap:16px;min-width:0;align-content:start}
.top{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:space-between;align-items:center}
.top h1{font-size:clamp(24px,3vw,30px);font-weight:800;letter-spacing:-.02em}.top p{margin-top:2px;color:var(--muted);font-size:14px}
.row{display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between;align-items:center}
.row.start{justify-content:flex-start}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.stat{background:var(--panel);border-radius:var(--rad);box-shadow:var(--shadow);border:1px solid var(--line);padding:14px 16px;display:grid;gap:2px}
.stat span{color:var(--muted);font-size:13px;font-weight:600}.stat b{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.stat.hot{background:var(--accent-soft);border-color:var(--accent-soft)}.stat.hot b{color:var(--accent-ink)}
.cols{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}
.cards{display:grid;gap:14px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--shadow);padding:16px 18px;display:grid;gap:11px;min-width:0}
.card h2{font-size:16px;font-weight:700}.card h3{font-size:14px;font-weight:700}
.card.urgent{border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-soft)}
.card.sel{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.pill{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:12px;padding:4px 10px;border-radius:99px;background:var(--accent-soft);color:var(--accent-ink);white-space:nowrap}
.pill.coral{background:var(--coral-soft);color:var(--coral)}.pill.amber{background:var(--amber-soft);color:var(--amber)}.pill.mint{background:var(--mint-soft);color:var(--mint)}.pill.soft{background:var(--soft);color:var(--muted)}
.btn{all:unset;cursor:pointer;padding:8px 15px;border-radius:10px;font-weight:700;font-size:13.5px;background:var(--soft);color:var(--ink);text-align:center}
.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.ghost{background:transparent;color:var(--coral)}
.btn[disabled]{opacity:.5;pointer-events:none}.btn.sm{padding:5px 11px;font-size:12.5px}
.acts{display:flex;flex-wrap:wrap;gap:8px}
.why{background:var(--soft);border-radius:12px;padding:9px 12px;font-size:13.5px;color:var(--muted)}.why b{color:var(--ink)}
.bubble{background:var(--accent-soft);border-radius:14px 14px 14px 4px;padding:11px 13px;font-size:14.5px;white-space:pre-wrap;overflow-wrap:anywhere}
.bubble.out{background:var(--soft);border-radius:14px 14px 4px 14px;justify-self:end}
.muted{color:var(--muted);font-size:13px}.mono{font:500 12px var(--mono)}
.seg{display:grid;grid-template-columns:repeat(3,1fr);background:var(--soft);border-radius:12px;padding:3px;text-align:center;font-weight:700;font-size:13px}
.seg button{all:unset;cursor:pointer;padding:6px 2px;font-size:12.5px;line-height:1.25;border-radius:9px;color:var(--muted)}.seg button.on{background:var(--panel);color:var(--accent-ink);box-shadow:var(--shadow)}
.seg button:focus-visible{outline:2px solid var(--accent)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--muted);display:inline-block;margin-right:7px}.dot.ok{background:var(--mint)}
label.f{display:grid;gap:5px;font-size:13px;font-weight:600;color:var(--muted)}
input.i,select.i,textarea.i{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-size:14px;color:var(--ink);min-width:0}
textarea.i{min-height:96px;resize:vertical}
input.i:focus,select.i:focus,textarea.i:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:var(--rad);background:var(--panel)}
table{border-collapse:collapse;width:100%;font-size:14px}
th{font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}
td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr.click{cursor:pointer}tr.click:hover td{background:var(--soft)}
.split{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}
.list{display:grid;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:6px;max-height:70vh;overflow:auto}
.li{all:unset;cursor:pointer;display:grid;gap:2px;padding:10px 12px;border-radius:12px}.li:hover{background:var(--soft)}.li.on{background:var(--accent-soft)}
.li b{font-size:14px}.li span{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.thread{display:grid;gap:8px;max-height:62vh;overflow:auto;padding-right:4px}
.empty{padding:28px;text-align:center;color:var(--muted);background:var(--panel);border:1px dashed var(--line);border-radius:var(--rad)}
.chk{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}
.login{min-height:80vh;display:grid;place-items:center}
.login .card{width:min(420px,100%)}
.keybox{font:500 13px var(--mono);background:var(--soft);border-radius:10px;padding:10px 12px;overflow-wrap:anywhere}
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--panel);padding:10px 16px;border-radius:12px;font-weight:600;font-size:14px;box-shadow:var(--shadow);z-index:10;max-width:calc(100vw - 32px)}
.lang select{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-weight:700;font-size:13px}
@media (max-width:1100px){.cols{grid-template-columns:1fr}}
@media (max-width:900px){
  .app{grid-template-columns:1fr}.side{position:static;flex-direction:row;overflow-x:auto;padding:8px}
  .logo,.grp,.side .foot{display:none}.nav{white-space:nowrap}.split{grid-template-columns:1fr}.list{max-height:none}
}
.h-login{font-size:24px;font-weight:800}.top-align{align-items:start}
.step{all:unset;cursor:pointer;display:flex;gap:12px;align-items:center;padding:9px 10px;border-radius:12px;font-weight:600;font-size:14px}
.step:hover{background:var(--soft)}.step:focus-visible{outline:2px solid var(--accent)}
.step i{width:22px;height:22px;border-radius:50%;border:2px solid var(--accent);flex:none;display:grid;place-items:center;font-style:normal;font-size:12px;color:var(--on-accent)}
.step.done{color:var(--muted);text-decoration:line-through}.step.done i{background:var(--mint);border-color:var(--mint)}
.modrow{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px}.modrow span:first-child{flex:1;min-width:0}
.pill.wrap{white-space:normal;text-align:center}
.card.proposal{border:1.5px solid var(--accent)}
input.i[type=color]{height:44px;padding:4px 6px;cursor:pointer}
.obbar{height:6px;border-radius:6px;background:var(--soft);margin:0 0 16px;overflow:hidden}.obbar i{display:block;height:100%;background:var(--accent);border-radius:6px}
.obwrap{max-width:none}.obwrap>.obstep,.numbers,.numbers>*,.numbers .grid3>*,.cmp{min-width:0;max-width:100%;box-sizing:border-box}.numbers select.i{width:100%;min-width:0;text-overflow:ellipsis}.obstep>summary{list-style:none;cursor:pointer;gap:10px;flex-wrap:wrap}.obstep>summary::-webkit-details-marker{display:none}.obstep>summary .step{flex:1;padding:4px 0}
.obstep[open]>summary{margin-bottom:6px}.obstep textarea{min-height:90px}
.obstep .step.done{text-decoration:none;color:inherit}
.logo-prev{display:block;max-width:100%;max-height:80px;margin:6px 0;border-radius:6px;background:var(--soft);padding:6px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{display:inline-flex;gap:6px;align-items:center;padding:5px 10px;border-radius:999px;background:var(--soft);font-size:13px;cursor:pointer}
.seg-form{border-top:1px solid var(--line, #E8EBF1);margin-top:10px;padding-top:10px}
.cmp h3{margin-top:0}.cmp-steps{margin:8px 0;padding-left:20px}.cmp-steps li{color:var(--muted);margin:3px 0}.cmp-steps li.done{color:var(--mint, #1F9D6B)}.cmp-steps li.now{color:inherit;font-weight:700}
.qrwrap{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start;margin:10px 0}.qr{width:240px;max-width:100%;height:auto;background:#fff;border-radius:12px;padding:6px}
.cmp-rules{font-size:13px;padding-left:18px;margin:10px 0}.cloud{margin-top:12px}.cloud summary{cursor:pointer;font-weight:600}
.asst{grid-template-columns:minmax(0,1fr) 360px}.chatcard{display:flex;flex-direction:column;min-height:70vh}.chat{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;max-height:62vh;padding:4px 2px 10px}
.chat .bubble{white-space:pre-wrap;max-width:88%}.chat .bubble.out{align-self:flex-end}.composer textarea{min-height:84px}.composer .files{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.chip .x{all:unset;cursor:pointer;margin-left:4px;font-weight:700}.acard{border:1px solid var(--line, #E8EBF1);border-radius:12px;padding:10px;max-width:92%}.oitem{border-top:1px solid var(--line, #E8EBF1);padding:8px 0}.oitem .otext{white-space:pre-wrap;font-size:13px;margin:4px 0}
.banner{border-radius:12px;padding:10px 14px;margin:0 0 12px;font-weight:600}.banner.ok{background:rgba(31,157,107,.12)}.banner.warn{background:rgba(245,166,35,.16)}.hello .chips{margin-top:8px}.hello .chip{border:0}
@media (max-width:900px){.asst{grid-template-columns:1fr}.chat{max-height:55vh}}
.quote{border-left:3px solid var(--accent);padding:6px 10px;margin:8px 0;font-size:14px;white-space:pre-wrap}.small{font-size:12px;margin:4px 0}
.side .sep{height:1px;background:var(--line,#E8EBF1);opacity:.5;margin:8px 10px}
/* диалоги как мессенджер: клиент слева серым, мы справа цветом; подпись «Клиент / Вы» и время под пузырём */
.thread .bubble{max-width:72%;justify-self:start;background:var(--soft);border-radius:16px 16px 16px 4px}
.thread .bubble.out{justify-self:end;background:var(--accent);color:var(--on-accent);border-radius:16px 16px 4px 16px}
.thread .bubble.out .muted{color:inherit;opacity:.7}
.thread .who{font-size:11.5px;font-weight:600;margin-bottom:3px;opacity:.8}
.inline-drafts{margin:10px 0;padding:10px;border:1px dashed var(--accent);border-radius:14px;display:grid;gap:10px}
.inline-drafts .card{margin:0}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:10px}
.kpi{background:var(--soft);border-radius:12px;padding:10px 12px;display:grid;gap:2px}.kpi b{font-size:20px}.kpi span{font-size:12px;opacity:.75}
.li.static{display:block;padding:8px 0;border-bottom:1px solid var(--line,#E8EBF1)}
.cards2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-bottom:12px}
.chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;background:var(--soft);font-size:13px;margin:2px}
.row.wrap{flex-wrap:wrap}
.nowrap{white-space:nowrap}
#clf,#stf{gap:8px;margin-bottom:12px}#clf .i,#stf .i{width:auto;flex:1 1 170px;min-width:0;max-width:280px}#clf input.i,#stf input.i{max-width:360px}
.cellacts{display:flex;flex-direction:column;gap:4px;align-items:stretch}.cellacts .btn{white-space:nowrap}
tr.dim td{opacity:.75}.rulef{display:grid;gap:8px;padding:6px 0}
.qtext{white-space:pre-wrap;margin-top:4px}
#qrf .row.start{flex-wrap:nowrap;gap:8px}#qrf .row.start .i{width:auto;flex:1 1 0;min-width:0}
.vsel{width:auto;padding:4px 6px}
.agree{display:flex;gap:10px;align-items:flex-start;margin:6px 0 10px;font-size:14px;color:var(--muted)}.agree .chk{margin-top:2px;flex:none}
.center{text-align:center}
.hq{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--accent);color:var(--accent-ink);font-size:12px;font-weight:800;margin-left:8px;vertical-align:middle;flex:none;line-height:1}
.hq:hover{background:var(--accent-soft)}.hq:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.helpbox{position:fixed;inset:0;background:rgba(10,14,30,.55);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}
.helpcard{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--shadow);padding:20px 22px;width:min(560px,100%);max-height:85vh;overflow:auto;display:grid;gap:10px}
.helpcard h3{font-size:18px}.helpcard ol{margin:0;padding-left:22px;display:grid;gap:6px}.helpcard a{word-break:break-all}
.obopts{gap:14px}.obopt{border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;gap:8px;background:var(--soft);align-content:start}
.obopt h4{margin:0;font-size:15px;display:flex;align-items:center}
.span2{grid-column:1/-1}
.acct{all:unset;cursor:pointer;display:flex;gap:10px;align-items:center;padding:8px 10px;margin:0 0 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft);min-width:0}
.acct:hover{border-color:var(--accent)}.acct:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.acct i{font-style:normal;flex:none;width:34px;height:34px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.acct span{display:grid;min-width:0}.acct b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pw{display:flex;gap:6px;align-items:center}.pw .i{flex:1;min-width:0}
.steps{margin:4px 0;padding-left:22px;display:grid;gap:4px}.tgbox{display:grid;gap:10px}.tgbox details summary{cursor:pointer;display:flex;align-items:center;gap:4px}
.push-right{margin-left:auto}
.tgroles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px}.tgrole h4{margin:0;font-size:15px}
tr.gopen>td{background:var(--accent-soft)}tr.gopen:not(.gform)>td:first-child{box-shadow:inset 4px 0 0 var(--accent)}tr.gform>td{box-shadow:inset 4px 0 0 var(--accent);padding-bottom:16px}
.modechip{margin:0 0 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.modechip summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center;padding:8px 10px;font-size:13px}.modechip summary::-webkit-details-marker{display:none}
.modechip summary i{width:10px;height:10px;border-radius:50%;flex:none;background:#E5484D}.modechip.m-dry summary i{background:#F5A524}.modechip.m-live summary i{background:#30A46C}
.modepop{display:grid;gap:6px;padding:0 10px 10px}
.modecard{margin-bottom:14px}.modecard.m-off{box-shadow:inset 4px 0 0 #E5484D}.modecard.m-dry{box-shadow:inset 4px 0 0 #F5A524}.modecard.m-live{box-shadow:inset 4px 0 0 #30A46C}
.modeopts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px}
.modeopt{all:unset;cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:4px;background:var(--soft)}
.modeopt b{font-size:15px}.modeopt span{font-size:13px;color:var(--muted)}.modeopt.on{border-color:var(--accent);background:var(--accent-soft)}.modeopt:focus-visible{outline:2px solid var(--accent)}
.bulkbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:8px 0}.bulkbar .agree{margin:0}
tr.selrow{cursor:pointer}tr.selrow.sel>td{background:var(--accent-soft)}td.selc{width:28px}
.setcol{display:grid;gap:14px;max-width:920px}.setcol>*{min-width:0}.setcol .card .grid2{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.settabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;border-bottom:1px solid var(--line);padding-bottom:8px}
.settabs button{all:unset;cursor:pointer;padding:8px 14px;border-radius:10px;font-weight:600;font-size:14px;color:var(--muted)}
.settabs button.on{background:var(--accent-soft);color:var(--accent-ink)}.settabs button:focus-visible{outline:2px solid var(--accent)}
.setcol details.card>summary{cursor:pointer}.setcol details.card[open]{gap:14px}
.nav span.dry{background:#F5A52433;color:#F5A524}
.eta{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-weight:700;font-size:12.5px;white-space:nowrap}
.eta.soon{background:var(--accent);color:var(--on-accent)}
.chan{width:20px;height:20px;flex:none;vertical-align:middle}.who{display:flex;gap:8px;align-items:center;font-size:16px;flex-wrap:wrap}
.srcchip{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink)}
.srcchip.src-followup{background:#F5A52426;color:#F5A524}.srcchip.src-scan{background:#30A46C26;color:#30A46C}.srcchip.src-stock{background:#8E4EC626;color:#B07CE0}.srcchip.src-owners{background:#E5484D22;color:#E5484D}
.bubble-edit{width:100%;min-height:96px}.ownreply{border-top:1px solid var(--line);padding-top:10px}.ownreply summary{cursor:pointer;font-weight:600;color:var(--accent-ink)}.ownreply[open]{display:grid;gap:8px}
.dplegend{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;color:var(--muted);margin:0 0 6px}
.updbar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;gap:12px;align-items:center;background:var(--panel);border:1px solid var(--accent);border-radius:14px;padding:10px 14px;box-shadow:var(--shadow);font-weight:600}
.decfilter{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.decfilter select{max-width:320px}
.srcline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 6px}
.grptag{font-weight:700;font-size:13px;color:var(--ink);background:var(--accent-soft);border:1px solid var(--line);padding:2px 10px;border-radius:999px}
.tmtag{font-weight:700;font-size:12.5px;color:#F5A524;background:#F5A5241f;padding:2px 9px;border-radius:999px;white-space:nowrap}
details.more>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:8px 14px;border-radius:10px;border:1px solid var(--accent);color:var(--accent-ink);font-weight:700;font-size:14px;background:var(--accent-soft)}
details.more>summary::-webkit-details-marker{display:none}details.more>summary:focus-visible{outline:2px solid var(--accent)}
details.more .m-close{display:none}details.more[open] .m-open{display:none}details.more[open] .m-close{display:inline}details.more[open]>summary{margin-bottom:10px}
article.card.focus{box-shadow:0 0 0 3px var(--accent);transition:box-shadow .3s}
.decbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.decbar>*{margin:0}
.scanreq article.card{margin-top:10px;background:var(--panel)}
.split{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.split .list{max-height:calc(100vh - 170px);overflow:auto;display:grid;gap:6px;align-content:start}
.chatli{display:grid!important;gap:3px;text-align:left}.chatli .who{font-size:14px;gap:6px;min-width:0}.chatli .who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chatli .prev{color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chatli .tmtag{justify-self:start}
.thead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:10px}
.thread{max-height:52vh;overflow:auto;display:grid;gap:8px;padding-right:4px}
.inline-drafts{margin-top:12px;border:1px solid var(--accent);border-radius:14px;padding:12px;background:var(--accent-soft);display:grid;gap:10px}
.inline-drafts .sugh{font-weight:700;color:var(--accent-ink)}.inline-drafts article.card{margin:0;background:var(--panel)}

/* Диалоги: колонка чатов тянется, каждый чат и каждое сообщение в своей рамке, время красным */
.split{grid-template-columns:var(--lw,340px) 12px minmax(0,1fr);gap:4px}
.gutter{align-self:stretch;cursor:col-resize;border-radius:6px;position:relative;touch-action:none;min-height:200px}
.gutter::after{content:"";position:absolute;left:5px;top:0;bottom:0;width:2px;border-radius:2px;background:var(--line)}
.gutter:hover::after,.gutter.on::after{background:var(--accent);width:4px;left:4px}
@media (max-width:860px){.split{grid-template-columns:1fr}.gutter{display:none}}
.split .list{gap:10px;padding:2px 6px 2px 2px}
.chatli{border:1px solid var(--line)!important;border-radius:14px!important;padding:12px 14px!important;background:var(--panel)!important;gap:6px!important}
.chatli:hover{border-color:var(--accent)!important}.chatli.on{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent) inset;background:var(--accent-soft)!important}
.chatli .who b{white-space:normal!important;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.chatli .prev{white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.chatli .row.start{gap:8px;flex-wrap:wrap}
.pendchip{font-size:12px;font-weight:700;color:#F5A524;border:1px solid #F5A52466;border-radius:999px;padding:2px 9px;white-space:nowrap}
.split .tmtag{color:#FF5C5C;background:#FF5C5C1f}
#thread .thread{max-height:calc(100vh - 360px);min-height:240px;gap:14px;padding:4px 8px 4px 0}
.msgbox{max-width:80%;justify-self:start;border:1px solid var(--line);background:var(--soft);border-radius:14px 14px 14px 4px;padding:10px 14px;display:grid;gap:6px}
.msgbox.out{justify-self:end;border-color:var(--accent);background:var(--accent-soft);border-radius:14px 14px 4px 14px}
.msgbox .mhead{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.msgbox .mhead b{opacity:.85}.msgbox .mbody{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45;font-size:14.5px}

/* Ассистент: только чат, на всю ширину */
.asst1{display:block;max-width:1100px}.asst1 .chatcard{width:100%}.asst1 .chat{max-height:calc(100vh - 330px);min-height:320px}

/* Сток: окно «Кому подходит» / «В группы» прямо под строкой */
tr.stinline>td{padding:0 0 14px!important;border-top:none!important}tr.stinline .card{margin:0;border:2px solid var(--accent);box-shadow:0 6px 24px rgba(0,0,0,.25)}
tr[data-key].selrow>td{background:var(--accent-soft)}

/* Запрос из группы как в Боне: подборка с галочками */
.pickh{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:6px}
.picks{display:grid;gap:6px}
.pickrow{display:grid;grid-template-columns:auto 26px minmax(160px,2fr) 70px 90px 110px 80px auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px 12px;cursor:pointer}
.pickrow:hover{border-color:var(--accent)}.pickrow.on{border-color:var(--accent);background:var(--accent-soft)}
.pickrow .pn{font-weight:700;color:var(--muted)}.pickrow .mono{text-align:right}
@media (max-width:860px){.pickrow{grid-template-columns:auto 22px 1fr auto;}.pickrow>span:nth-child(n+4):not(.mono){display:none}}

.offerreq{border:1px solid var(--accent);border-radius:16px;padding:14px;margin-top:12px}.offerreq .bkname{font-size:15px}
.bkmsg{margin:8px 0 4px;padding:10px 14px;border-left:3px solid var(--accent);background:var(--soft);border-radius:8px;white-space:pre-wrap;font-size:14.5px}

/* Под себя: понятные блоки */
.tunepage{display:grid;gap:16px;max-width:1200px}
.tunegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
@media (max-width:900px){.tunegrid{grid-template-columns:1fr}}
.tunegrid>.card{margin:0}.tunegrid .savebar{grid-column:1/-1;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.flaggrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 18px}@media (max-width:600px){.flaggrid{grid-template-columns:1fr}}

.pager{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:space-between;margin:10px 0}.pager .row.start{gap:4px}

/* Несколько номеров */
.numbers{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:10px}
.numcard{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width:760px){.grid3{grid-template-columns:1fr}}
.numsel{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0 10px}

.mailitem summary{list-style:none;cursor:pointer;display:grid;gap:4px}.mailitem summary::-webkit-details-marker{display:none}.msubj{font-weight:600}.mailitem[open]{border-color:var(--accent)}.mailitem .mbody{white-space:pre-wrap;margin:12px 0;line-height:1.5}

form.card.focus{box-shadow:0 0 0 3px var(--accent);transition:box-shadow .3s}

.lidbox{display:grid;gap:8px;margin:0 0 10px}.lidbox .row{gap:8px}.lidbox input{max-width:220px}

.convflt{gap:18px;margin:-6px 0 12px;flex-wrap:wrap}.fltl{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);cursor:pointer}
.advlist{display:flex;flex-direction:column;gap:12px}.advcard{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.advcard.done{opacity:.6}.advcard h3{margin:0;font-size:15px}.advsec{display:flex;flex-direction:column;gap:2px}.advsec ol{margin:2px 0 0 18px;padding:0}.row.between{justify-content:space-between;align-items:center}

/* Диалоги на всю ширину и высоту окна; список и переписку можно тянуть за нижний правый угол, ширину списка за разделитель (26.10) */
.app:has(#csplit){max-width:none}
#csplit{align-items:stretch}
#csplit .list{height:var(--lh,calc(100vh - 200px));max-height:none;min-height:240px;resize:vertical;overflow:auto}
#csplit #thr{height:var(--th,calc(100vh - 560px));max-height:none;min-height:260px;resize:vertical;overflow:auto}
/* крупные полосы прокрутки и уголок растягивания в Диалогах, чтобы легко захватывать (26.10) */
#csplit .list,#csplit #thr{scrollbar-width:auto;scrollbar-color:var(--muted) transparent}
#csplit .list::-webkit-scrollbar,#csplit #thr::-webkit-scrollbar{width:16px;height:16px}
#csplit .list::-webkit-scrollbar-track,#csplit #thr::-webkit-scrollbar-track{background:var(--soft);border-radius:8px}
#csplit .list::-webkit-scrollbar-thumb,#csplit #thr::-webkit-scrollbar-thumb{background:var(--muted);border-radius:8px;border:3px solid var(--soft);min-height:60px}
#csplit .list::-webkit-scrollbar-thumb:hover,#csplit #thr::-webkit-scrollbar-thumb:hover{background:var(--accent)}
#csplit .list::-webkit-resizer,#csplit #thr::-webkit-resizer{background:linear-gradient(135deg,transparent 45%,var(--accent) 45%,var(--accent) 55%,transparent 55%,transparent 70%,var(--accent) 70%,var(--accent) 80%,transparent 80%);border-radius:0 0 8px 0}
.gutter{width:12px}.gutter::after{width:4px;left:4px}.gutter:hover::after,.gutter.on::after{width:6px;left:3px}
/* компактные сообщения: блок по размеру текста (раньше сетка растягивала строки на всю высоту окна), шрифт чуть крупнее, подпись «Клиент»/«Вы» в одну строку (26.10) */
#thr,.thread{align-content:start}
.msgbox{padding:6px 12px 8px;gap:2px;max-width:min(80%,760px)}
.msgbox .mhead{padding-bottom:0;border-bottom:0;font-size:11.5px;gap:6px}
.msgbox .mhead .tmtag{padding:1px 7px}
.msgbox .mbody{font-size:15.5px;line-height:1.4}
/* правый разделитель: окно переписки сужается справа, освободившееся место пустое (26.10) */
#csplit{grid-template-columns:var(--lw,340px) 12px minmax(400px,1fr) 12px var(--rw,0px)}
@media (max-width:860px){#csplit{grid-template-columns:1fr}#cgut2{display:none}}

/* «Лазурь»: тёмно-синее меню, ваши сообщения тёмно-синие, клиента белые */
.side{background:var(--side);border-color:var(--side);color:var(--side-ink)}
.side .logo,.side .who,.side b{color:var(--side-ink)}
.side .nav{color:var(--side-mute)}.side .nav:hover{background:var(--side-on);color:var(--side-ink)}
.side .nav.on{background:var(--side-on);color:var(--side-ink)}.side .nav span{background:rgba(255,255,255,.12);color:var(--side-ink)}.side .nav.on span{background:var(--accent);color:var(--on-accent)}
.side .grp,.side .foot,.side .muted{color:var(--side-mute)}.side .foot,.side .sep{border-color:var(--side-line);background-color:transparent}.side .sep{background:var(--side-line)}
.side select,.side .i{background:var(--side-on);border-color:var(--side-line);color:var(--side-ink)}
.side .btn{background:var(--side-on);color:var(--side-ink);border-color:var(--side-line)}
.logo i{background:linear-gradient(135deg,#0EA5E9,#0284C7)}
.msgbox{background:var(--panel)}
.msgbox.out{background:var(--out-bg);border-color:var(--out-bg);color:var(--out-ink)}.msgbox.out .mhead b,.msgbox.out .muted{color:var(--out-mute)}
.chatli.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}
.tmtag{color:var(--coral);background:var(--coral-soft)}
.pendchip{color:#0369A1;border-color:#7DD3FC;background:#E0F2FE}
.side .acct,.side .modechip{background:var(--side-on);border-color:var(--side-line);color:var(--side-ink)}.side .acct small{color:var(--side-mute)}
.side .modepop .btn.ghost{background:transparent;color:var(--side-ink);border-color:var(--side-line)}.side .modepop .btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}

/* Компактно везде (26.10): меньше отступов и пустых строк, больше информации на экране */
html,body{line-height:1.4}
main{gap:12px}
.card{padding:10px 14px;gap:6px;border-radius:12px}
.card h2{font-size:15.5px}
.top h1{font-size:clamp(22px,2.4vw,26px)}
.btn{padding:6px 12px;border-radius:8px;font-size:13px}
.btn.sm{padding:4px 10px}
.acts{gap:6px}
.bubble{padding:7px 11px;font-size:14.5px;line-height:1.4;border-radius:10px}
.quote{padding:3px 10px;margin:0;font-size:14px}
.quote .srcline{display:inline-flex;gap:8px;align-items:center;margin-right:8px}
.small{margin:2px 0}
.chead .who{display:inline-flex;gap:6px;align-items:center;font-size:14.5px}
.ownreply{padding-top:4px}.ownreply summary{font-size:13px}
.li{padding:7px 10px}
.kpis{gap:8px}.kpi{padding:7px 10px}
.tbl td,.tbl th{padding-block:6px}
.split .list{gap:6px}
.chatli{padding:7px 10px!important}
.decfilter{gap:6px}
.stats{gap:8px}
td{padding:6px 12px}th{padding-block:7px}

/* Стили кабинета на выбор пользователя (селектор в меню; по умолчанию «Лазурь», она в :root) */
:root[data-skin="cloud"]{--ground:#F7F9FC;--panel:#FFFFFF;--ink:#0F172A;--muted:#64748B;--line:#E2E8F0;--soft:#F1F5F9;
  --accent:#2563EB;--accent-soft:#EEF3FF;--accent-ink:#1D4ED8;--on-accent:#FFFFFF;
  --side:#FFFFFF;--side-ink:#0F172A;--side-mute:#64748B;--side-on:#EEF3FF;--side-line:#E2E8F0;--out-bg:#EFF4FF;--out-ink:#0F172A;--out-mute:#3B5BBA;color-scheme:light}
:root[data-skin="cloud"] .side{border-color:var(--line)}:root[data-skin="cloud"] .side .nav.on{color:var(--accent-ink)}:root[data-skin="cloud"] .side .nav span{background:var(--soft);color:var(--ink)}
:root[data-skin="cloud"] .msgbox.out{border-color:#C7D7FE}
:root[data-skin="lightprem"]{--ground:#FAFAF7;--panel:#FFFFFF;--ink:#14213D;--muted:#6B7280;--line:#E7E4DA;--soft:#F3F0E6;
  --accent:#0F2A4A;--accent-soft:#F6EBCB;--accent-ink:#7A5B12;--on-accent:#F5E6BF;
  --side:#0F2A4A;--side-ink:#F5F1E6;--side-mute:#B9C3D3;--side-on:#1B3C63;--side-line:#24486F;--out-bg:#0F2A4A;--out-ink:#F5F1E6;--out-mute:#E3C77A;color-scheme:light}
:root[data-skin="lightprem"] .side .nav.on{color:#E3C77A}:root[data-skin="lightprem"] .side .nav.on span{background:#C8A24A;color:#14213D}:root[data-skin="lightprem"] .logo i{background:#C8A24A}
:root[data-skin="graphite"]{--ground:#16181D;--panel:#1E2128;--ink:#ECEDEF;--muted:#A0A6B1;--line:#2B2F37;--soft:#262A33;
  --accent:#4F8CFF;--accent-soft:#1C2A45;--accent-ink:#9DBDFF;--on-accent:#FFFFFF;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#FF9AA2;--coral-soft:#452024;
  --side:#111317;--side-ink:#FFFFFF;--side-mute:#8F96A3;--side-on:#22262E;--side-line:#2B2F37;--out-bg:#1F3B73;--out-ink:#FFFFFF;--out-mute:#B9CDF8;--shadow:none;color-scheme:dark}
:root[data-skin="neon"]{--ground:#0D1B2A;--panel:#13263A;--ink:#F1F5F9;--muted:#94A8BD;--line:#22364C;--soft:#1A3049;
  --accent:#3B82F6;--accent-soft:#16335C;--accent-ink:#93C5FD;--on-accent:#FFFFFF;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#FB7185;--coral-soft:#4A1D2A;
  --side:linear-gradient(180deg,#0B2A55,#0A1A30);--side-ink:#FFFFFF;--side-mute:#9DB4D3;--side-on:#16335C;--side-line:#24406A;--out-bg:linear-gradient(135deg,#2563EB,#0891B2);--out-ink:#FFFFFF;--out-mute:#D6E8FF;--shadow:0 4px 14px rgba(0,0,0,.3);color-scheme:dark}
:root[data-skin="neon"] .side .nav.on{background:linear-gradient(90deg,#2563EB,#06B6D4)}:root[data-skin="neon"] .msgbox.out{border-color:transparent}
:root[data-skin="neon"] .btn.primary{background:linear-gradient(90deg,#2563EB,#0891B2)}:root[data-skin="neon"] .top h1{background:linear-gradient(90deg,#60A5FA,#22D3EE);-webkit-background-clip:text;background-clip:text;color:transparent}
:root[data-skin="darkprem"]{--ground:#111826;--panel:#182132;--ink:#F3F0E8;--muted:#A9A79F;--line:#2A3242;--soft:#202A3D;
  --accent:#C8A24A;--accent-soft:#2B2410;--accent-ink:#E3C77A;--on-accent:#14213D;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#F4A6A0;--coral-soft:#4A2020;
  --side:#0B1220;--side-ink:#F5F1E6;--side-mute:#A3A9B6;--side-on:#1B2638;--side-line:#2A3242;--out-bg:#2B2410;--out-ink:#F5F1E6;--out-mute:#E3C77A;--shadow:none;color-scheme:dark}
:root[data-skin="darkprem"] .side .nav.on{color:#E3C77A}:root[data-skin="darkprem"] .msgbox.out{border-color:#5E4B1E}
:root[data-skin="graphite"] .pendchip,:root[data-skin="neon"] .pendchip,:root[data-skin="darkprem"] .pendchip{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--line)}
.side .lang select{max-width:100%}

:root[data-skin="med"]{--ground:#FFFFFF;--panel:#FFFFFF;--ink:#102A43;--muted:#627D98;--line:#E4EAF1;--soft:#F0F4F8;
  --accent:#0D9488;--accent-soft:#CCFBF1;--accent-ink:#0F766E;--on-accent:#FFFFFF;
  --side:#1E40AF;--side-ink:#FFFFFF;--side-mute:#BFD0F8;--side-on:#2B52C9;--side-line:#3358C7;--out-bg:#E7F8F5;--out-ink:#102A43;--out-mute:#0F766E;color-scheme:light}
:root[data-skin="med"] .msgbox.out{border-color:#99F6E4}:root[data-skin="med"] .card{box-shadow:0 1px 3px rgba(16,42,67,.07)}
:root[data-skin="bright"]{--ground:#F4F8FF;--panel:#FFFFFF;--ink:#0B1220;--muted:#5A6B85;--line:#DCE7FA;--soft:#EEF4FF;
  --accent:#2563EB;--accent-soft:#E0EDFF;--accent-ink:#1D4ED8;--on-accent:#FFFFFF;--coral:#E11D48;--coral-soft:#FFE4EA;
  --side:#FFFFFF;--side-ink:#0B1220;--side-mute:#4B5D7A;--side-on:#EEF4FF;--side-line:#DCE7FA;--out-bg:linear-gradient(135deg,#2563EB,#0EA5E9);--out-ink:#FFFFFF;--out-mute:#DCEBFF;color-scheme:light}
:root[data-skin="bright"] .side{border-color:var(--line)}:root[data-skin="bright"] .side .nav.on{background:linear-gradient(90deg,#2563EB,#06B6D4);color:#fff}
:root[data-skin="bright"] .side .nav span{background:var(--soft);color:var(--ink)}:root[data-skin="bright"] .msgbox.out{border-color:transparent}
:root[data-skin="bright"] .btn.primary{background:linear-gradient(90deg,#2563EB,#0EA5E9)}:root[data-skin="bright"] .tmtag{background:#FF4D4F;color:#fff}
:root[data-skin="night"]{--ground:#0F172A;--panel:#16213A;--ink:#E8EEF8;--muted:#9AA8C0;--line:#26334D;--soft:#1E2A45;
  --accent:#38BDF8;--accent-soft:#13263F;--accent-ink:#7DD3FC;--on-accent:#04223A;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#FF8A8F;--coral-soft:#4A1D24;
  --side:#0A1122;--side-ink:#FFFFFF;--side-mute:#8B9AB5;--side-on:#16233F;--side-line:#26334D;--out-bg:#0E4A6E;--out-ink:#FFFFFF;--out-mute:#9BD7F5;--shadow:none;color-scheme:dark}
:root[data-skin="deeplazur"]{--ground:#0B1F33;--panel:#112A44;--ink:#EAF4FF;--muted:#9FB6CF;--line:#1F3A57;--soft:#16324F;
  --accent:#22D3EE;--accent-soft:#0F2F44;--accent-ink:#67E8F9;--on-accent:#05252C;
  --mint:#34D399;--mint-soft:#123C33;--amber:#FBBF24;--amber-soft:#3B2E12;--coral:#FCA5A5;--coral-soft:#4C1D1D;
  --side:#071526;--side-ink:#FFFFFF;--side-mute:#89A3BE;--side-on:#0F2A47;--side-line:#1F3A57;--out-bg:#0B4F5C;--out-ink:#FFFFFF;--out-mute:#A5F3FC;--shadow:0 1px 2px rgba(0,0,0,.25);color-scheme:dark}
:root[data-skin="night"] .pendchip,:root[data-skin="deeplazur"] .pendchip{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--line)}

/* список диалогов: имя и время в одной строке, время мелкое, текст сообщения крупнее (26.10) */
.chatli .row{flex-wrap:nowrap;gap:8px}.chatli .row .who{min-width:0;flex:1}
.chatli .tmtag{font-size:11px;padding:1px 7px;font-weight:600;flex:none}
.chatli .prev{font-size:14.5px;color:var(--ink);opacity:.85;line-height:1.35;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* «Клиенты CRM»: таблица и выдвижная карточка клиента (26.10) */
.cltbl td{font-size:13.5px}.cltbl .pill{font-size:11px;padding:1px 7px;margin:1px 0}
.catpill{background:var(--accent-soft);color:var(--accent-ink)}
.src-crm{background:#E0E7FF;color:#3730A3}.src-portal{background:#FEF3C7;color:#92400E}.src-whatsapp{background:#DCFCE7;color:#166534}.src-site{background:#E0F2FE;color:#075985}.src-mail{background:#F3E8FF;color:#6B21A8}.src-groups{background:#FFE4E6;color:#9F1239}.src-manual{background:var(--soft);color:var(--ink)}
.addcl summary{cursor:pointer;list-style:none}.addcl summary::-webkit-details-marker{display:none}.addcl[open]{gap:10px}
.span2{grid-column:1/-1}
.drawer-bg{position:fixed;inset:0;background:rgba(5,15,30,.35);z-index:20}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(760px,100vw);z-index:21;overflow:auto;border-radius:0;padding:16px 18px calc(16px + env(safe-area-inset-bottom,0px));gap:12px;padding-top:calc(16px + env(safe-area-inset-top,0px))}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px 12px}
.dsec{border-top:1px solid var(--line);padding-top:10px;display:grid;gap:6px}.dsec h3{font-size:14.5px;margin:0}.dsec h4{font-size:13px;margin:6px 0 0}
.lead{border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:grid;gap:3px}.lfields{display:grid;gap:1px;margin-top:2px}
.crmnotes{display:grid;gap:6px;max-height:340px;overflow:auto}.cnote{border-left:3px solid var(--accent);padding:2px 8px;white-space:pre-wrap;font-size:13.5px}
.clthr{max-height:420px;overflow:auto;display:grid;align-content:start;gap:6px}
.stg{font-weight:700;font-size:12px!important}.stg-arch{background:#E5E7EB;color:#374151}.stg-won{background:#DCFCE7;color:#166534}.stg-work{background:#DBEAFE;color:#1E40AF}.stgline{gap:6px;margin-top:4px}

/* Клиенты CRM: колонки тянутся за край заголовка, ячейка не больше 2 строк (полный текст в подсказке) */
.cltbl{table-layout:fixed;width:max-content;min-width:100%}
.cltbl th{position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.colgrip{position:absolute;top:0;right:0;width:8px;height:100%;cursor:col-resize;touch-action:none}
.colgrip::after{content:"";position:absolute;top:25%;bottom:25%;left:3px;width:2px;background:var(--line);border-radius:2px}
.colgrip:hover::after{background:var(--accent)}
.cltbl td{overflow:hidden}
.cltbl .cell{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
.cltbl .catpill{white-space:normal}
.insper{gap:8px;align-items:center}

/* задачи: три списка как в Core */
.tkcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;align-items:start}
.tkcol{display:grid;gap:8px;align-content:start}.tkcol h2{font-size:15px;margin:0}
.tkwho{display:grid;gap:2px;border-left:3px solid var(--accent);padding-left:8px}
.tkcard h3{font-size:14.5px}

/* таблицы и задачи на всю ширину окна (Серж 26.10) */
.app:has(.cltbl),.app:has(.tkcols),.app:has(.calpage){max-width:none}

/* календарь */
.calday{display:grid;gap:4px;padding:6px 0;border-bottom:1px solid var(--line)}.calday h3{font-size:13.5px;margin:0;text-transform:capitalize}
.calrow{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:14px}.calt{min-width:52px;color:var(--muted);font-size:12.5px}
.pill.calm{background:#DCFCE7;color:#166534}

/* сканирование групп: каждое сообщение отдельной карточкой, как в диалогах; предложения ярко сверху */
.smlist{display:grid;gap:8px;margin-top:8px}
.scanmsg{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:8px 12px;display:grid;gap:4px;margin-bottom:8px}
.scanmsg.hot{border:2px solid var(--mint);background:var(--mint-soft)}
.scanmsg .smbody{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.4}
.scanmsg .smwant{font-size:14px;color:var(--accent-ink)}

/* Правило Сержа 26.10: любой текст сообщения (брокера, клиента, наш, черновик) курсивом, чтобы отличался от остального интерфейса */
.msgbox .mbody,.scanmsg .smbody,.bubble,.chatli .prev,.quote,.bkmsg,.tkwho .muted,.mailitem .mbody,.draft .txt,.inline-drafts .bubble,.scanreq .small,.why .small{font-style:italic}
details.more.big>summary{display:flex;width:100%;justify-content:center;padding:12px 18px;font-size:15.5px;border-width:2px}

/* телефон выделяется так же, как имя (Серж 26.10) */
.ph,.mono.ph{color:var(--ink)!important;font-weight:700;opacity:1}
/* очередь отправки: текст сообщения курсивом, как везде */
.qmsg{font-style:italic;white-space:pre-wrap}
.qtext{font-style:italic}

/* сегменты follow-up */
.segcard{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:6px;margin-bottom:8px}.segcard.off{opacity:.75}.segcard h3{margin:0;font-size:15px}
.segform{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.segopts{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.segchk{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:13px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.segprev{background:var(--soft);border-radius:10px;padding:8px 10px}

/* массовое действие с группами: две крупные кнопки вместо выпадающего списка */
.bulkbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 12px;border:2px dashed var(--accent);border-radius:12px;background:var(--accent-soft);margin:6px 0}
.gb-do{font-size:14px;padding:9px 16px}.gb-on{background:var(--mint);color:#fff}.gb-off{background:var(--coral);color:#fff}.gb-do:disabled{opacity:.45;cursor:not-allowed}
.stbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;border-radius:999px}.stbtn:hover .pill{outline:2px solid var(--accent)}.stbtn .stsw{font-size:12px;color:var(--muted)}.stbtn:focus-visible{outline:2px solid var(--accent)}
.segprev{background:var(--accent-soft);border:2px solid var(--accent);border-radius:12px;padding:10px 12px;display:grid;gap:6px}
.segnums{display:flex;flex-wrap:wrap;gap:18px}.segnums div{display:grid}.segnums b{font-size:24px;line-height:1.1;color:var(--accent-ink)}.segnums span{font-size:12px;color:var(--muted)}
.bigbtn{font-size:16px!important;padding:12px 22px!important;border-radius:12px!important;box-shadow:0 4px 14px rgba(2,132,199,.25)}

/* Broker Factory: 3D-завод */
.logobtn{all:unset;cursor:pointer;display:flex;gap:10px;align-items:center;font-weight:800;font-size:16px;padding:2px 10px 14px}.logobtn:hover{opacity:.85}.logobtn:focus-visible{outline:2px solid var(--accent)}
.facwrap{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#bfe3ff 0%,#e8f5ff 60%,#d6f0d0 100%);border:1px solid var(--line)}
.fac3d{width:100%;height:min(70vh,640px);min-height:380px}.fac3d canvas{display:block;width:100%!important;height:100%!important}
.facload{padding:20px}
.factip{position:absolute;z-index:3;min-width:200px;max-width:260px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:10px 12px;box-shadow:var(--shadow);display:grid;gap:3px;font-size:13px;pointer-events:none}
.facgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.faccard{all:unset;cursor:pointer;display:grid;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--panel)}.faccard.off{opacity:.65}.faccard:hover{border-color:var(--accent)}
.factip{max-width:320px}.facitems{border-top:1px solid var(--line);margin-top:4px;padding-top:4px;display:grid;gap:2px;font-style:italic}.facitems b{font-style:normal}
.advlegend{font-size:13px;line-height:1.6;background:var(--soft);border-radius:10px;padding:8px 12px}
.navic{font-style:normal;margin-right:8px;font-size:15px;width:20px;display:inline-block;text-align:center}.nav{justify-content:flex-start}.nav span{margin-left:auto}

/* время неброское: мелко и серым (Серж 26.10) */
.tmtag,.chatli .tmtag,.msgbox .mhead .tmtag{color:var(--muted)!important;background:transparent!important;font-weight:500!important;font-size:11.5px!important;padding:0!important;border-radius:0}
.msgbox.out .mhead .tmtag{color:var(--out-mute)!important}
/* короткий диалог прижат к полю ответа, без пустоты сверху */
#thr{display:flex!important;flex-direction:column;gap:6px}#thr>:first-child{margin-top:auto}
#thr .msgbox{align-self:flex-start}#thr .msgbox.out{align-self:flex-end}

/* сообщения клиентов на своей цветной подложке (мягкий зелёный), ваши — синие (Серж 26.10) */
.msgbox:not(.out){background:color-mix(in srgb,var(--mint) 13%,var(--panel))!important;border-color:color-mix(in srgb,var(--mint) 38%,var(--line))!important}
.msgbox:not(.out) .mhead b{color:color-mix(in srgb,var(--mint) 75%,var(--ink))}

.offbtn{background:var(--coral)!important;color:#fff!important}
.apfinish{font-weight:700;font-size:15px;margin:4px 0 8px;color:var(--accent-ink)}
.aptl{display:grid;gap:4px}.aprow{display:grid;grid-template-columns:64px minmax(140px,240px) auto 1fr;gap:10px;align-items:center;padding:5px 8px;border-radius:8px;background:var(--soft)}.aprow.done{opacity:.85}
.aptext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}
@media (max-width:700px){.aprow{grid-template-columns:56px 1fr}.aptext{grid-column:1/-1}}
/* выбор языка и стиля в меню не вылезают за край */
.side .lang{display:block;width:100%}.side .lang select,.side select{width:100%;max-width:100%;box-sizing:border-box;text-overflow:ellipsis}

.sitelive{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,rgba(16,185,129,.14),rgba(14,165,233,.12));border:1.5px solid rgba(16,185,129,.45);margin-bottom:12px}
.sitelive .dot{width:12px;height:12px;border-radius:50%;background:#10b981;box-shadow:0 0 0 0 rgba(16,185,129,.6);animation:sitepulse 1.8s infinite}
.sitelive .lbl{font-weight:700}
.sitelive .url{font-size:1.35rem;font-weight:800;text-decoration:none;word-break:break-all;color:var(--accent,#1d6fe0)}
.sitelive .url:hover{text-decoration:underline}
@keyframes sitepulse{70%{box-shadow:0 0 0 10px rgba(16,185,129,0)}100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}}

.senttray{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--card,#fff);box-shadow:0 6px 24px rgba(10,40,80,.18);border:1.5px solid rgba(16,185,129,.5);font-size:1rem}
.senttray .ico{font-size:1.3rem}.senttray b{font-size:1.25rem;color:#059669}
.senttray.bump{animation:trayb .5s}
@keyframes trayb{30%{transform:scale(1.25)}60%{transform:scale(.95)}100%{transform:scale(1)}}
.flyenv{position:fixed;z-index:40;font-size:28px;pointer-events:none;transform:translate(-50%,-50%);filter:drop-shadow(0 4px 6px rgba(0,0,0,.25))}
.pickrow.flown{animation:rowsent .7s forwards}
@keyframes rowsent{0%{background:rgba(16,185,129,.0)}40%{background:rgba(16,185,129,.25);transform:translateX(6px)}100%{background:rgba(16,185,129,.12);opacity:.55}}
.btn.busy{opacity:.8;pointer-events:none}
.pickcard.sentcard{border-color:rgba(16,185,129,.6);background:rgba(16,185,129,.07);animation:sentin .45s}
@keyframes sentin{from{transform:scale(.97);opacity:.4}to{transform:none;opacity:1}}
.sentok{display:flex;gap:14px;align-items:center}
.sentok .check{width:44px;height:44px;flex:none;border-radius:50%;background:#10b981;color:#fff;font-size:26px;font-weight:800;display:grid;place-items:center;animation:pop .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes pop{from{transform:scale(0)}to{transform:scale(1)}}
.ssteps{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}
.sstep{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.5);animation:pend 1.4s infinite}
.sstep.sending{background:rgba(14,165,233,.15);border-color:rgba(14,165,233,.6)}
.sstep.sent{background:rgba(16,185,129,.2);border-color:#10b981;animation:none}
.sstep.failed{background:rgba(239,68,68,.15);border-color:#ef4444;animation:none}
@keyframes pend{50%{opacity:.5}}
.sst.good{color:#059669;font-weight:700}.sst.bad{color:#dc2626;font-weight:700}

.drawer.cmodal{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(1440px,96vw);height:min(92vh,1100px);border-radius:18px;display:flex;flex-direction:column;overflow:hidden;animation:cmin .2s ease-out}
@keyframes cmin{from{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}
.cmodal .cdgrid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(320px,5fr) 7fr;gap:16px}
.cmodal .cdleft{overflow:auto;min-height:0;display:flex;flex-direction:column;gap:10px;padding-right:4px}
.cmodal .cdright{display:flex;flex-direction:column;min-height:0;gap:8px;border-left:1px solid var(--line,rgba(0,0,0,.08));padding-left:16px}
.cmodal .cdright .clthr{flex:1;min-height:0;max-height:none;overflow:auto}
.cmodal .pgbtn{min-width:52px;min-height:44px;font-size:1.1rem}
.cmodal [data-act="clclose"].btn{min-width:44px;min-height:44px;font-size:1.2rem}
.cmodal .grid3{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}
.cmodal .grid3 .acts.span2{grid-column:auto}
@media (max-width:900px){.drawer.cmodal{width:100vw;height:100vh;border-radius:0}.cmodal .cdgrid{grid-template-columns:1fr;overflow:auto}.cmodal .cdright{border-left:0;padding-left:0;min-height:70vh}.cmodal .grid3{grid-template-columns:1fr}}
.scanmsg .smbody{font-size:1.05rem;line-height:1.3}   /* компактнее по вертикали (Серж 28.10) */
.scanmsg .smbody::before{content:'🗣️ ';font-style:normal;font-size:1.15rem}
.senttray{cursor:pointer}.senttray:hover{transform:translateY(-2px)}.senttray .caret{opacity:.6}
.sentpop{position:fixed;right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:31;width:min(460px,calc(100vw - 32px));max-height:70vh;overflow:auto;display:grid;gap:10px;box-shadow:0 12px 40px rgba(10,40,80,.25)}
.sentrow{border:1.5px solid var(--accent);border-radius:12px;padding:10px 12px;display:grid;gap:4px}
.sentrow .sreq{font-style:italic}
/* рамка у каждого сообщения/карточки цветом стиля (Серж 26.10) */
.card.dcard{border:2px solid var(--accent)}
.card.dcard.urgent{border-color:var(--coral)}
.chatli{border:1.5px solid color-mix(in srgb,var(--accent) 60%,transparent)!important}
.chatli.on,.chatli[aria-current]{border-color:var(--accent)!important;border-width:2px!important}
.msgbox{border:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent)}
.scanmsg{border:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent)}
.aphist{margin:10px 0 4px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.aprow{border:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent)}
/* Сток: каждая строка отдельной рамкой цвета стиля, плотнее, кнопки в одну линию (Серж 26.10) */
.sttbl{border-collapse:separate!important;border-spacing:0 6px}
.sttbl tbody td{padding:7px 10px!important;vertical-align:middle;border-top:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-bottom:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);background:var(--panel)}
.sttbl tbody td:first-child{border-left:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:10px 0 0 10px}
.sttbl tbody td:last-child{border-right:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:0 10px 10px 0}
.sttbl tbody tr.stinline td{border:0;background:transparent}
.sttbl tbody tr.selrow td{border-color:var(--accent);background:var(--accent-soft)}
.sttbl .cellacts{display:flex!important;flex-wrap:nowrap;gap:6px;justify-content:flex-end;align-items:center}
.sttbl .cellacts .btn{white-space:nowrap}
.stevents{margin-top:14px}
.stevents .row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:4px 0;border-bottom:1px solid var(--line)}
.apparams{display:grid;gap:10px;margin:6px 0}.apparams .i.num{width:76px;padding:6px 8px}.apparams .row.start{gap:6px;align-items:center;flex-wrap:wrap}
.aphead{display:flex;flex-wrap:nowrap;align-items:center;gap:10px}
.aponly{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;cursor:pointer;padding:8px 14px;border-radius:999px;border:1.5px solid var(--accent);color:var(--accent-ink);font-weight:700;background:var(--panel)}
.aponly input{position:absolute;opacity:0;width:0;height:0}
.aponly .sw{width:34px;height:20px;border-radius:999px;background:var(--line);position:relative;transition:background .2s}
.aponly .sw::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .2s}
.aponly.on{background:var(--accent);color:var(--on-accent)}.aponly.on .sw{background:rgba(255,255,255,.45)}.aponly.on .sw::after{left:16px}
@media (max-width:700px){.aphead{flex-wrap:wrap}}
textarea[name="about"]{resize:none;overflow:hidden;min-height:120px}
.card.tkcard{border:2px solid var(--coral)}
/* рамка цветом стиля и в Ассистенте (Серж 26.10) */
.bubble{border:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent)}
.bubble.out{border-color:var(--accent)}
.acard{border:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent)!important}
.acard .oitem{border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:10px;padding:8px 10px}
/* Сток как Excel: плотные строки, фильтры в шапке таблицы (Серж 26.10) */
.tbl.xls{max-height:calc(100vh - 170px);overflow:auto}
.sttbl{border-spacing:0 2px!important;font-size:13px}
.sttbl thead th{position:sticky;top:0;z-index:2;background:var(--panel);padding:5px 6px!important;white-space:nowrap}
.sttbl thead tr.fltrow th{top:28px;padding:3px 4px!important;box-shadow:0 2px 0 var(--line)}
.sttbl .fltrow .i{padding:3px 6px;font-size:12px;min-width:0;width:100%;height:28px}
.sttbl th.sortable{cursor:pointer;user-select:none}.sttbl th.sortable.on{color:var(--accent-ink)}
.sttbl tbody td{padding:3px 6px!important;line-height:1.25;white-space:nowrap}
.sttbl tbody td.small{white-space:normal;max-width:160px}
.sttbl td.c{text-align:center}.sttbl .btn.sm{padding:2px 8px;min-height:0}
.sttbl tr.isdis td{background:color-mix(in srgb,var(--coral) 9%,var(--panel))}
.sttbl tr.isdis td:first-child{box-shadow:inset 3px 0 0 var(--coral)}
.advcard{border:2px solid var(--accent)!important}
.advcard.done{border-color:color-mix(in srgb,var(--accent) 35%,transparent)!important}
/* список чатов: фон как у сообщений клиента */
.chatli:not(.on){background:color-mix(in srgb,var(--mint) 13%,var(--panel))!important}
article.tkgone{animation:tkgone .85s forwards;pointer-events:none}
@keyframes tkgone{0%{background:color-mix(in srgb,var(--mint) 30%,var(--panel))}40%{transform:translateX(10px)}100%{transform:translateX(60px);opacity:0}}
.app:has(.sttbl){max-width:none}
.sttbl{table-layout:fixed;width:max-content;min-width:100%}
.sttbl thead tr:first-child th{position:sticky;overflow:hidden;text-overflow:ellipsis}
.sttbl tbody td{overflow:hidden;text-overflow:ellipsis}
.sttbl tbody td.small{white-space:nowrap;max-width:none}
/* имена и телефоны: чёрным, жирно */
.chatli .who b,.chatli .who .name{color:var(--ink)!important;font-weight:800}
.chatli .ph,.chatli .mono,.bkname,.bkname .ph,.scanmsg .ph,.dcard .who b,.dcard .ph{color:var(--ink)!important;font-weight:800}
.sttbl th.disth{color:var(--coral)!important;font-weight:800}
.sttbl tr.isdis td,.sttbl tr.isdis td b{color:var(--coral)!important}
.sttbl tr.isdis .pill{color:inherit}
.areadd{position:relative}.areadd summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.areadd summary::after{content:'▾';opacity:.6}
.areadd[open] summary::after{content:'▴'}
.areaopts{display:flex;flex-wrap:wrap;gap:6px;padding:10px;margin-top:4px;border:1.5px solid var(--accent);border-radius:12px;background:var(--panel);max-height:260px;overflow:auto}
.areaopts .allchip{font-weight:700}
.tbl.xls{overflow-x:hidden}
.sttbl{width:100%!important;min-width:0!important}
.disbtn{all:unset;cursor:pointer;display:inline-block;min-width:40px;text-align:center;padding:2px 10px;border-radius:999px;font-weight:700;font-size:12px;border:1.5px solid var(--line);color:var(--muted)}
.disbtn.yes{background:var(--coral);border-color:var(--coral);color:#fff!important}
.disbtn:hover{border-color:var(--coral)}
.sttbl tr.isdis td:first-child{box-shadow:none}.sttbl tr.isdis td:last-child{box-shadow:inset -3px 0 0 var(--coral)}
/* плашка групп автопостинга: одна строка, один размер и стиль (Серж 26.10) */
.bulkbar[data-kind="post"]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px}
.bulkbar[data-kind="post"] .agree,.bulkbar[data-kind="post"] .gb-cnt,.bulkbar[data-kind="post"] .btn,.bulkbar[data-kind="post"] .aponly,.bulkbar[data-kind="post"] .bbq{height:36px;box-sizing:border-box;font-size:14px;font-weight:700;display:inline-flex;align-items:center;margin:0;border-radius:10px}
.bulkbar[data-kind="post"] .gb-cnt{font-weight:600;color:var(--muted)}
.bulkbar[data-kind="post"] .btn{padding:0 14px}
.bulkbar[data-kind="post"] .aponly{padding:0 12px}
.bulkbar[data-kind="post"] .bbq{width:220px;padding:0 10px;font-weight:500}
.bulkbar .bbsp{flex:1}
/* карточка клиента: рамка окна и секций цветом стиля */
.drawer.cmodal{border:2px solid var(--accent)!important}
.cmodal .cdleft>.why,.cmodal .cdleft>.quote,.cmodal .cdleft>.dsec,.cmodal .cdleft>section{border:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:12px;padding:10px 12px}
.cmodal .cdleft .lead{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:10px;padding:8px 10px;margin-bottom:6px}
.cmodal .cdright{border-left:0!important;border:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:12px;padding:10px 12px!important}
.cmodal #cf{border:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:12px;padding:8px 10px}
.agored{color:var(--coral);font-weight:800;font-family:inherit;white-space:nowrap}
.sentrow .row .mono{white-space:nowrap}
article.tkmoved{animation:tkmoved .6s forwards}
@keyframes tkmoved{to{transform:translateX(120px) scale(.96);opacity:0}}
.fustat{border:2px solid var(--accent)}.fustat .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:6px 0}
@media (max-width:800px){.fustat .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fusrc{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;padding:6px 10px;border:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:10px;margin-top:6px}
.fudays{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.fuday{display:grid;text-align:center;min-width:54px;padding:4px 6px;border-radius:10px;border:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent)}.fuday b{font-size:16px}.fuday small{color:var(--muted)}
.sentrow>.row:first-child{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}
.sentrow>.row:first-child>.mono{text-align:right;justify-self:end;display:grid;gap:0;line-height:1.25}
.fuq,.fuint{margin-top:8px}.fuqlist{display:grid;gap:6px;margin-top:6px;color:var(--ink)}
.fuqrow{border:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:10px;padding:6px 10px;display:grid;gap:4px}
.fuqrow>.row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.fuqtext{font-style:italic}
@font-face{font-family:BFNunito;src:url(/static/nunito.ttf) format('truetype');font-weight:200 1000;font-display:swap}
/* надпись Broker Factory как в логотипе: толстые скруглённые буквы, белая обводка, тень */
.bfword{font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900;font-size:21px;letter-spacing:.2px;line-height:1;white-space:nowrap}
.bfword b{font-weight:900;-webkit-text-stroke:5px #fff;paint-order:stroke fill;text-shadow:0 3px 4px rgba(10,30,70,.35)}
.bfword .bf1{color:#1d7bf0}.bfword .bf2{color:#f9731a}
.etar{display:grid;text-align:right;line-height:1.25;white-space:nowrap}
.apinfo{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:4px 18px;align-items:start}
.apinfo>h3,.apinfo>p{grid-column:1/-1}.apinfo .apparams{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(200px,auto));align-items:end}
.etar{display:grid;text-align:right;line-height:1.25;white-space:nowrap}
.apinfo{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:4px 18px;align-items:start}
.apinfo>h3,.apinfo>p{grid-column:1/-1}.apinfo .apparams{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(200px,auto));align-items:end}
.senttray b.tq{color:#d97706}
/* шестерёнка и крупная надпись бренда */
.logo i.gear{width:40px;height:40px;background:none!important;border-radius:0;filter:drop-shadow(0 2px 2px rgba(10,30,70,.35))}
.logo i.gear svg{width:100%;height:100%;display:block;animation:gearspin 14s linear infinite}
.logobtn:hover i.gear svg{animation-duration:3s}
@keyframes gearspin{to{transform:rotate(360deg)}}
.bfword{font-size:25px}
/* заголовки разделов — тем же мультяшным стилем */
#main .top h1,#main>h1{font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900;color:#1d7bf0;-webkit-text-stroke:6px #fff;paint-order:stroke fill;text-shadow:0 3px 5px rgba(10,30,70,.3);letter-spacing:.2px}
.dayrep{border:2px solid var(--accent)}.dayrep summary{cursor:pointer;font-size:16px}
.daylines{display:grid;gap:2px;margin:8px 0}.dayrow{display:grid;grid-template-columns:minmax(160px,280px) 1fr;gap:12px;padding:4px 0;border-bottom:1px solid var(--line)}
.dayrow span{color:var(--muted)}.dayset{gap:10px;align-items:center;flex-wrap:wrap}
@media (max-width:700px){.dayrow{grid-template-columns:1fr}}
/* бренд в две строки, как на логотипе: не налезает */
.bfword{display:grid;line-height:.95;font-size:24px}.bfword b{display:block}
/* картинки разделов (Серж 26.10) */
.toprow{display:flex;align-items:center;gap:14px}.pageart{width:88px;height:88px;border-radius:20px;flex:none;box-shadow:0 6px 18px rgba(10,40,90,.22);object-fit:cover}
@media (max-width:600px){.pageart{width:60px;height:60px;border-radius:14px}}
.factip .facart{display:block;width:100%;max-width:240px;border-radius:14px;margin:0 0 8px}.factip .facart.off{filter:grayscale(1);opacity:.7}
.login{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:28px;align-items:center;max-width:1000px;margin:0 auto}
.loginart img{width:100%;max-width:480px;border-radius:28px;box-shadow:0 14px 40px rgba(10,40,90,.25);display:block;margin-left:auto}
@media (max-width:820px){.login{grid-template-columns:1fr}.loginart img{max-width:260px;margin:0 auto}}
/* мультяшная кнопка вкл/выкл процесса: всегда справа вверху (Серж 26.10) */
#main .top{position:relative}.modbig{margin-left:auto;align-self:flex-start}
.toonbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:11px 24px 13px;border-radius:999px;font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900;font-size:18px;color:#fff;
  border:3px solid #fff;text-shadow:0 2px 0 rgba(0,0,0,.18);transition:transform .08s,box-shadow .08s;white-space:nowrap}
.toonbtn .tb-ico{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.28);font-size:14px}
.toonbtn.isoff{background:linear-gradient(180deg,#ffb067,#f97316);box-shadow:0 5px 0 #c2570c,0 10px 18px rgba(249,115,22,.28)}
.toonbtn.ison{background:linear-gradient(180deg,#5ee3a5,#16a34a);box-shadow:0 5px 0 #15803d,0 10px 18px rgba(22,163,74,.28)}
.toonbtn:hover{transform:translateY(-1px)}.toonbtn:active{transform:translateY(4px);box-shadow:0 1px 0 rgba(0,0,0,.25)}
/* Клиенты: каждая строка в рамке цвета стиля, плотнее */
.cltbl{border-collapse:separate!important;border-spacing:0 3px}
.cltbl tbody td{padding:4px 8px!important;line-height:1.25;border-top:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-bottom:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);background:var(--panel)}
.cltbl tbody td:first-child{border-left:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:10px 0 0 10px}
.cltbl tbody td:last-child{border-right:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:0 10px 10px 0}
.cltbl tbody tr:hover td{border-color:var(--accent);background:var(--accent-soft)}
.cltbl .pill{margin:0 2px 0 0}
/* заставка раздела: первый заход за день */
.splash{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,rgba(94,194,255,.55),rgba(8,20,45,.82));cursor:pointer;animation:spIn .45s ease-out}
.splash img{width:min(78vmin,760px);height:auto;border-radius:9%;box-shadow:0 30px 80px rgba(0,0,0,.45);animation:spPop .55s cubic-bezier(.2,1.4,.4,1)}
.splash.out{animation:spOut .45s forwards}
@keyframes spIn{from{opacity:0}to{opacity:1}}@keyframes spPop{from{transform:scale(.6) rotate(-4deg)}to{transform:none}}
@keyframes spOut{to{opacity:0;transform:scale(1.06)}}
.splash.out{animation:spOut .8s forwards}.splash.out img{animation:spBurst .7s cubic-bezier(.5,-0.3,.7,.2) forwards}
@keyframes spBurst{0%{transform:scale(1)}30%{transform:scale(1.12) rotate(3deg)}100%{transform:scale(.1) rotate(-25deg);opacity:0}}
@keyframes spOut{60%{opacity:1}to{opacity:0}}
.confetti{position:fixed;inset:0;z-index:61;pointer-events:none}
.splash::after{content:'👆';position:absolute;bottom:6vh;font-size:34px;animation:tapHint 1.2s ease-in-out infinite}
@keyframes tapHint{50%{transform:translateY(-10px)}}
.agosm{color:var(--coral);font-size:11px;font-weight:600;margin-left:6px;white-space:nowrap}
/* задачи: рамка по срочности */
.card.tkcard.tk-now{border:2px solid #ef4444}.card.tkcard.tk-week{border:2px solid #2563eb}.card.tkcard.tk-later{border:2px solid #16a34a}
/* Сток без собственного ползунка: вся таблица на странице */
.tbl.xls{max-height:none!important;overflow:visible!important}
.banner.apstate{font-size:18px;font-weight:800;padding:14px 18px;border-radius:14px;border:2px solid}
.banner.apstate.go{background:#dcfce7;color:#15803d;border-color:#22c55e}
.banner.apstate.stop{background:#fee2e2;color:#b91c1c;border-color:#ef4444}
.aprow .mono{white-space:nowrap;min-width:84px}
.gaprec{color:var(--coral);font-weight:600}
.apinfo .apparams label.f,.apinfo>.row{border:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:12px;padding:8px 10px}
.apinfo>.row{margin:0}
.banner.apstate{font-size:18px;font-weight:800;padding:14px 18px;border-radius:14px;border:2px solid}
.banner.apstate.go{background:#dcfce7;color:#15803d;border-color:#22c55e}
.banner.apstate.stop{background:#fee2e2;color:#b91c1c;border-color:#ef4444}
.aprow .mono{white-space:nowrap;min-width:84px}
.gaprec{color:var(--coral);font-weight:600}
.apinfo .apparams label.f,.apinfo>.row{border:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:12px;padding:8px 10px}
.apinfo>.row{margin:0}
.dayset{display:flex!important;flex-wrap:nowrap;gap:10px;align-items:center}.dayset select.i{width:auto;min-width:110px;flex:none}
@media (max-width:700px){.dayset{flex-wrap:wrap}}
/* Аналитика: каждый блок своим цветом, крупный заголовок с номером, чёткое разделение (Серж 26.10) */
.insec,.dayrep,#advbox>section.card{--h:210;background:color-mix(in srgb,hsl(var(--h) 85% 55%) 8%,var(--panel))!important;border:2px solid hsl(var(--h) 70% 55%)!important;border-left-width:9px!important;border-radius:16px!important;padding:14px 18px!important;margin:0 0 20px!important;box-shadow:0 4px 14px rgba(10,40,90,.06)}
.dayrep{--h:205}#advbox>section.card:nth-child(1){--h:265}#advbox>section.card:nth-child(2){--h:290}
.insh{display:flex;align-items:center;gap:12px;margin:0 0 4px}
.insh h2,.dayrep>summary b,#advbox>section.card>.row:first-child h2,#advbox>section.card>.row:first-child h3{font-family:BFNunito,Nunito,system-ui,sans-serif!important;font-weight:900!important;font-size:24px!important;margin:0;color:color-mix(in srgb,hsl(var(--h) 75% 42%) 80%,var(--ink))!important}
.insn{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:hsl(var(--h) 70% 50%);color:#fff;font-weight:900;font-size:17px;font-family:BFNunito,Nunito,system-ui,sans-serif;border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.insd{color:var(--muted);font-size:13.5px;margin:2px 0 10px}
.insec .card{background:var(--panel)}
.mxt{font-size:13.5px}.mxt td,.mxt th{padding:5px 8px!important}.mxt tr.gaprow td{background:color-mix(in srgb,var(--coral) 10%,var(--panel))}
.red{color:var(--coral)!important}
.insec .kpis{margin:6px 0}
/* ассистент раздела: узкая строка вверху справа, вниз раскрываются подсказки и ответы */
.dock{position:relative;margin:0 0 6px auto;width:min(520px,100%);z-index:25}
.dockf{display:flex;align-items:center;gap:8px;padding:4px 6px 4px 10px;border:2px solid var(--accent);border-radius:999px;background:var(--panel);box-shadow:0 3px 10px rgba(10,40,90,.1)}
.dockf .dk-ico{font-size:18px}.dockf textarea{flex:1;border:0!important;box-shadow:none!important;resize:none;min-height:28px;max-height:120px;padding:5px 4px!important;background:transparent;font-size:14px;line-height:1.35}
.dockf .btn{border-radius:999px}
.dockp{display:none;position:absolute;right:0;top:calc(100% + 6px);width:min(560px,92vw);max-height:70vh;overflow:auto;background:var(--panel);border:2px solid var(--accent);border-radius:16px;padding:10px 12px;box-shadow:0 14px 40px rgba(10,40,90,.25)}
.dock.open .dockp{display:block}
.dockh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.dockhints{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.dkhint{all:unset;cursor:pointer;font-size:13px;padding:5px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}
.dkhint:hover{background:var(--accent);color:var(--on-accent)}
.dockmsgs{display:grid;gap:6px}.dkmsg{padding:7px 10px;border-radius:12px;font-size:13.5px;white-space:pre-wrap}.dkmsg.me{justify-self:end;background:var(--accent);color:var(--on-accent)}
.dkmsg.bot{background:var(--soft);border:1px solid var(--line)}.dkmsg .acard{margin-top:6px;white-space:normal}
.advstory{background:color-mix(in srgb,#f59e0b 12%,var(--panel));border:1.5px solid color-mix(in srgb,#f59e0b 55%,transparent);border-radius:12px;padding:10px 12px;margin:6px 0 10px}
.advstory b{display:block;margin-bottom:4px}.advstory p{margin:0;font-size:15px;line-height:1.45}
.msgbox .qcx{margin-left:6px;padding:1px 8px;font-size:11px;background:rgba(255,255,255,.9);color:#b91c1c;border-radius:999px}
.segcount{margin:6px 0;font-size:15px}.segcount b{font-family:BFNunito,Nunito,system-ui,sans-serif;font-size:30px;color:#16a34a;margin-right:4px}.segcount.zero b{color:var(--coral)}
article.tknew{animation:tknew 1.1s cubic-bezier(.2,1.5,.4,1)}
@keyframes tknew{0%{transform:translateY(-40px) scale(.85);opacity:0;box-shadow:0 0 0 0 rgba(34,197,94,.7)}55%{transform:translateY(4px) scale(1.03);opacity:1}100%{transform:none;box-shadow:0 0 0 14px rgba(34,197,94,0)}}
.dock{position:fixed!important;top:calc(10px + env(safe-area-inset-top,0px));right:22px;margin:0!important;width:min(480px,calc(100vw - 340px))}
body.hasdock #main{padding-top:52px}
@media (max-width:900px){.dock{right:12px;width:calc(100vw - 24px)}}
.segwork{border:3px solid #16a34a;background:color-mix(in srgb,#22c55e 9%,var(--panel));border-radius:16px;padding:12px 16px;margin:10px 0}
.segwork.paused{border-color:var(--line);background:var(--panel);opacity:.8}
.segwork h3{font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900;font-size:22px;margin:0;color:#15803d}
.sgks{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:8px 0}
.sgk{background:var(--panel);border:1.5px solid color-mix(in srgb,#16a34a 40%,transparent);border-radius:12px;padding:8px 10px;display:grid}
.sgk b{font-family:BFNunito,Nunito,system-ui,sans-serif;font-size:26px;color:#15803d;line-height:1.1}.sgk span{font-size:12px;color:var(--muted)}
.fusrc .insd{flex-basis:100%;margin:2px 0 0}
.fuplanh{margin:14px 0 4px;font-size:17px}.fuplan td,.fuplan th{text-align:center}.fuplan td:first-child,.fuplan th:first-child{text-align:left}
.dockf{border-radius:22px!important;align-items:flex-end!important;padding:6px 6px 6px 12px!important}
.dockf .dk-ico{align-self:center}
.dockf textarea{overflow:hidden;outline:none!important;line-height:1.4!important;padding:6px 4px!important;min-height:32px;white-space:pre-wrap;word-break:break-word}
.dockf textarea:focus{outline:none!important;box-shadow:none!important}
.toonbtn.isoff{background:linear-gradient(180deg,#f87171,#dc2626)!important;box-shadow:0 5px 0 #991b1b,0 10px 18px rgba(220,38,38,.28)!important}
.tb-hint{text-align:center;font-size:11px;color:var(--muted);margin-top:6px}
.sgacts{margin:4px 0 6px}.sgwarn{background:#fef3c7;border:1.5px solid #f59e0b;border-radius:10px;padding:8px 10px;color:#92400e;font-size:13px;margin:6px 0}
#fustatus>.banner.apstate{margin-bottom:10px}
.grn{color:#16a34a}
.frbox{border:3px solid #16a34a!important;background:color-mix(in srgb,#22c55e 7%,var(--panel))!important}
.frrow{border:1.5px solid color-mix(in srgb,#16a34a 45%,transparent);border-radius:12px;padding:8px 12px;margin-top:8px;display:grid;gap:4px;background:var(--panel)}
.frrow>.row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.frtext{font-style:italic;font-size:15px}
/* Follow-up: каждое поле в рамке цвета стиля (Серж 27.10) */
#main:has(#fustatus) .card{border:2px solid var(--accent)}
#segbox .segcard,#segbox article,#segbox .card .card{border:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent)!important;border-radius:12px}
#main:has(#fustatus) .tbl table{border-collapse:separate;border-spacing:0 4px}
#main:has(#fustatus) .tbl tbody td{border-top:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-bottom:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);background:var(--panel)}
#main:has(#fustatus) .tbl tbody td:first-child{border-left:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:10px 0 0 10px}
#main:has(#fustatus) .tbl tbody td:last-child{border-right:1.5px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:0 10px 10px 0}
/* поле ответа в Чатах — рамка цвета стиля */
#rf textarea,#rf .i,#af textarea,#af .i,.dock textarea,.dock .i,form.cardask .i{border:3px solid var(--accent)!important;border-radius:12px}
#rf textarea:focus,#af textarea:focus,form.cardask .i:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)!important}
.aprow{grid-template-columns:max-content minmax(140px,1.2fr) max-content minmax(0,2.5fr)!important;column-gap:14px!important}
.aprow .mono{min-width:0!important}
@media (max-width:700px){.aprow{grid-template-columns:max-content minmax(0,1fr)!important}.aprow .aptext{grid-column:1/-1}}
.statusrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 12px}
.statusrow .banner.apstate{flex:1;min-width:260px;margin:0!important;padding:10px 16px!important;font-size:16px}
.statusrow .modbig{margin:0;display:flex;align-items:center;gap:8px}.statusrow .tb-hint{margin:0}
.statusrow .toonbtn{padding:8px 18px 10px;font-size:16px}
/* непрочитанные, как в WhatsApp */
.chatli.unread{background:color-mix(in srgb,#25D366 18%,var(--panel))!important;border-color:#25D366!important;border-width:2px!important}
.chatli.unread .who b{font-weight:900}.chatli.unread .prev{color:var(--ink)!important;font-weight:600}
.unb{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#25D366;color:#000;font-size:12px;font-weight:800;font-style:normal;margin-left:auto;flex:none}
.dayrep{--h:205}#advbox>section.card:nth-child(1){--h:200}#advbox>section.card:nth-child(2){--h:28}
.dayrep>summary .insn,#advbox>section.card .insn{margin-right:10px;vertical-align:middle}

.chanalert{width:fit-content;max-width:min(100%,1100px);box-sizing:border-box;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px;padding:12px 16px;border:2px solid #E5484D;border-radius:14px;background:color-mix(in srgb,#E5484D 10%,var(--panel));color:#C62828}
.chanalert>span{flex:1;min-width:0;display:grid;gap:2px}.chanalert b{font-weight:800;font-size:15px}.chanalert small{color:#C62828;font-size:13px}.chanalert .btn{border-color:#E5484D;color:#C62828;background:var(--panel)}
.step.broken i{background:#E5484D!important;color:#fff!important;border-color:#E5484D!important}

.linkways{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:10px}
.linkway{border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px;align-content:start;min-width:0}
.linkway .btn{justify-self:start}.codebox{display:grid;gap:8px;margin:10px 0}
.linkcode{font-family:ui-monospace,Menlo,monospace;font-size:34px;letter-spacing:6px;color:#1d4ed8;background:#eef4ff;border:2px solid #1d4ed8;border-radius:14px;padding:10px 18px;justify-self:start}

.mimg{display:block;padding:0;border:1.5px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel);cursor:zoom-in;margin:6px 0;max-width:min(320px,100%)}
.mimg img{display:block;width:100%;height:auto;min-height:60px;object-fit:cover}.mfile{margin:6px 0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.codebox{border:2px solid #1d4ed8;border-radius:16px;padding:14px 16px;background:color-mix(in srgb,#1d4ed8 6%,var(--panel))}.codebox .btn{justify-self:start}#codeleft.late{color:#C62828;font-weight:700}
.chatli .unb,.chatli.unread .unb{background:#25D366!important;color:#000!important;font-weight:800!important;font-style:normal!important}

.statusrow{align-items:center}.statusrow .banner.apstate{display:block;min-height:0;height:50px;line-height:30px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}   /* одна строка, по высоте как кнопка рядом (Серж 27.10) */
#thread .replybar{position:sticky;bottom:0;z-index:6;background:var(--panel);padding:10px 0 6px;margin-top:6px;box-shadow:0 -10px 14px -8px rgba(15,30,60,.12)}   /* подсказка + поле ответа закреплены внизу экрана */

.nav .navunb{margin-left:auto;display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#25D366!important;color:#000!important;font-size:12px;font-weight:800;box-sizing:border-box}
.banner.apstate,.statusrow .banner.apstate{font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900;color:#fff;border:0;border-radius:18px;text-shadow:0 1px 0 rgba(0,0,0,.15)}
.statusrow .banner.apstate{height:50px;line-height:30px;padding:10px 20px!important;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.banner.apstate.go{background:linear-gradient(180deg,#5ee3a5,#16a34a);box-shadow:0 5px 0 #15803d,0 10px 18px rgba(22,163,74,.28);color:#fff}
.banner.apstate.stop{background:linear-gradient(180deg,#ff7a7a,#dc2626);box-shadow:0 5px 0 #b91c1c,0 10px 18px rgba(220,38,38,.28);color:#fff}

#thread .replybar .inline-drafts{margin:0 0 10px;max-height:38vh;overflow:auto}

.nav .navunb[data-act]{cursor:pointer}.nav .navunb[data-act]:hover{background:#128C7E!important;color:#fff!important;box-shadow:0 0 0 3px rgba(37,211,102,.35)}

details.more>summary::before{content:'';flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .2s}
details.more[open]>summary::before{transform:rotate(180deg)}   /* крупная стрелка в круге: видно, что раскрывается и сворачивается (Серж 27.10) */
.futools{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.futools>details{flex:0 1 auto}.futools>details[open]{flex-basis:100%}

.cardask{margin-top:10px;border:1.5px dashed var(--accent);border-radius:14px;padding:10px 12px;background:var(--panel);display:grid;gap:8px}
.caskrow{display:flex;gap:8px;align-items:center}.caskrow .i{flex:1;min-width:0}.caskico{font-size:20px}.camic.rec{background:#fee2e2;color:#b91c1c}
.caskex{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.caskex .chip{cursor:pointer;font-size:12.5px}.caskreply{font-weight:600}
@media (min-width:901px){body.hasdock #main.v-conversations,body.hasdock #main.v-clients{padding-top:4px}}   /* Чаты: заголовок под строкой ассистента, без пустой полосы (Серж 27.10) */
.chtop .convflt{gap:6px 18px;flex-wrap:wrap;align-items:center;margin-top:2px}.chtop .convflt #histline{margin:0}
.chtop>div{flex:1;min-width:0}.chtop .convflt #histline{display:inline;flex:0 1 auto}.chtop .convflt #histline a,.chtop .convflt #histline button{margin-left:8px}
.caskok{margin:0;color:#15803d;font-weight:800}.cardask .i::placeholder{color:#9aa6b8;font-style:italic}
.scanmsg.tkgone{animation:tkgone .85s forwards;pointer-events:none}
.scanmsg .acts:has([data-act="picksend"]){display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.scanmsg .acts [data-act="picksend"]{order:3;margin-left:auto}   /* «Send selected» справа, над «Send» строки ассистента (Серж 27.10) */
.convq{width:min(260px,100%);min-width:180px;padding:7px 12px;border-radius:999px;border:1.5px solid var(--accent)}
.aprow .apunit{color:var(--muted);font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aprow .apunit b{color:var(--ink)}
.aprow .apskip{margin-left:auto;flex:none}.aprow.tkgone{animation:tkgone .6s forwards}
.aprow:has(.apskip){grid-template-columns:max-content minmax(140px,1.2fr) max-content minmax(0,2.5fr) max-content!important;padding:3px 8px}   /* строка плана в одну линию, «Убрать» в правом углу (Серж 27.10) */
.aprow .apskip{margin:0;padding:2px 8px;justify-self:end;white-space:nowrap}
.composer .acts{display:flex;align-items:center;gap:10px;justify-content:flex-start}.composer .cextra{display:inline-flex;gap:10px;margin-left:18px}.composer .cextra .btn{font-size:15px;font-weight:700}   /* «Отправить» слева, как у подсказки; файл и подсказка правее, крупнее */
.mxt th.num,.mxt td.num{text-align:right}.mxt th.num{padding-right:inherit}
#replybar .inline-drafts .acts,#replybar .composer .acts{padding-left:0;margin-left:0}#replybar .inline-drafts .dcard{padding-left:14px}#replybar .composer{padding-left:14px}   /* обе «Отправить» на одной вертикали */
#replybar .acts [data-act="block"],#replybar .acts .btn.ghost{font-size:15px;font-weight:700}
#thread{padding-top:8px!important;padding-bottom:8px!important}#thread .thead{padding:0 0 6px!important;margin:0 0 6px!important;min-height:0!important;align-items:center}
#thread .thead > *{margin-top:0!important;margin-bottom:0!important}#thread .replybar{padding-bottom:0}#thread .composer #rfwhy{margin:2px 0 0}

#main.v-clients .top{margin-bottom:4px}#main.v-clients .top p{margin:2px 0}#clf{margin:6px 0 4px;gap:8px;flex-wrap:wrap}
.btn.addbtn{background:linear-gradient(180deg,#5ee3a5,#16a34a);color:#fff;border:0;font-weight:800;margin-left:auto}
#main.v-clients .pager{margin:4px 0;padding:0;min-height:0}#main.v-clients #catbox:empty{display:none}#main.v-clients .addcl[open]{margin:6px 0}
#main.v-clients .addcl>summary{display:none}
#thread{grid-template-rows:auto 1fr auto!important;align-content:stretch;row-gap:4px!important}#thread>.thead{align-self:start}#thread>.replybar{align-self:end}
#thread>.thread{align-self:stretch;min-height:0}   /* шапка и низ по содержимому, всё остальное — переписке (Серж 27.10) */
@keyframes msgfly{0%{transform:translate(0,0) scale(1);opacity:1}60%{opacity:.9}100%{transform:translate(var(--fx),var(--fy)) scale(.55);opacity:0}}
.msgfly{position:fixed;z-index:60;pointer-events:none;background:linear-gradient(180deg,#3b82f6,#1d4ed8);color:#fff;border-radius:16px;padding:10px 14px;max-width:420px;font-size:14px;box-shadow:0 10px 24px rgba(29,78,216,.35);animation:msgfly .7s cubic-bezier(.3,.7,.3,1) forwards}

.insh .insrc{margin-left:auto;display:inline-flex;gap:6px;flex-wrap:wrap}.insh .insrc .pill{font-size:12px;text-decoration:none}

a.phlink{color:inherit;text-decoration:none;border-bottom:1px dashed var(--accent)}a.phlink:hover{color:var(--accent)}a.phlink:hover .ph{color:var(--accent)}
.ph{cursor:pointer}.ph:hover{color:var(--accent);text-decoration:underline}.thead .ph{cursor:default;text-decoration:none}
#csplit #thread>#thr,#thread>.thread{height:auto!important;max-height:none!important;min-height:0!important;resize:none!important;overflow:auto}   /* лента занимает весь свой ряд карточки (Серж 27.10) */

/* Ассистент: как в Чатах — ваши справа, ответы ассистента слева, ширина по тексту (Серж 27.10) */
.asst .chat .msgbox{align-self:flex-start;justify-self:start;width:fit-content}
.asst .chat .msgbox.out{align-self:flex-end;justify-self:end}
/* Автопост · Параметры компактно: статусы и «следующий пост» в одной строке, поля настроек в одной строке */
.apinfo .aptop{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}
.apinfo .aptop h3{margin:0 8px 0 0}
.apinfo .aptop .row{flex:none;gap:10px;margin:0;padding:6px 12px}
.apinfo .aptop .apnext{margin-left:auto}
.apinfo .apparams{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}
.apinfo .apparams .f{flex:none;margin:0}
.apinfo .apparams button[type=submit]{margin-left:auto}
.apinfo > p.muted{margin:6px 0 0}
/* Ассистент: карточки действий (объекты, очередь, задачи) — тоже сообщения ассистента: тот же цвет фона, слева, по ширине содержимого (Серж 27.10) */
.asst .chat .acard{align-self:flex-start;max-width:min(80%,760px);background:var(--soft);border-color:var(--line);border-radius:14px 14px 14px 4px}
.asst .chat .acard .tbl,.asst .chat .acard table,.asst .chat .acard .why,.asst .chat .acard > div{background:transparent}
/* метки разделов (Аналитика и др.): крупнее текст и значок (Серж 27.10) */
.insh .insrc .pill{font-size:14.5px;padding:5px 13px;display:inline-flex;align-items:center;gap:6px}
.insh .insrc .pill svg,.insh .insrc .pill img,.insh .insrc .pill .ni{width:20px;height:20px;font-size:18px}
.srcchip{font-size:13.5px;padding:4px 12px}
.hrec{margin-top:10px;display:grid;gap:6px}.hrwarn{margin:0;padding-left:18px;color:var(--coral,#E5484D);font-weight:600}.hrwarn li{margin:2px 0}.hrok{margin:0;color:#30A46C;font-weight:600}
.hrec summary{cursor:pointer;font-weight:700;color:var(--accent-ink)}.hrec .hrbody{white-space:pre-wrap;line-height:1.5;margin-top:6px;font-size:14px}
/* Автопост · Параметры одним блоком: статусы колонкой слева, поля настроек справа в той же высоте (Серж 27.10) */
.apinfo{display:grid;grid-template-columns:minmax(220px,auto) 1fr;column-gap:16px;align-items:start}
.apinfo .aptop{flex-direction:column;align-items:stretch;gap:4px;margin:0}
.apinfo .aptop h3{margin:0 0 2px}
.apinfo .aptop .row{padding:3px 10px;justify-content:space-between}
.apinfo .aptop .apnext{margin-left:0}
.apinfo .apparams{grid-column:2;grid-row:1;align-self:stretch;align-content:flex-start}
.apinfo > p.muted,.apinfo > .btn,.apinfo > .row{grid-column:1 / -1}
@media (max-width:820px){.apinfo{grid-template-columns:1fr}.apinfo .apparams{grid-column:1;grid-row:auto}}
.vstack{display:grid;gap:10px}#scanmatch .card{margin-top:0}
.fuday.cap-green{border-color:#30A46C}.fuday.cap-green b{color:#30A46C}.fuday.cap-amber{border-color:#F5A524}.fuday.cap-amber b{color:#C77A00}.fuday.cap-red{border-color:#E5484D}.fuday.cap-red b{color:#E5484D}
.fuday .capof{font-size:12px;font-weight:600;opacity:.75}.capkpi form{gap:6px;margin-bottom:2px}.capkpi .num{width:80px}
.capkpi span b.red,.capkpi .red{color:#E5484D!important;font-weight:700}
.cmprec{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.confirmcard{border-color:#F5A524!important}.brain h4{margin:10px 0 4px}.brain .row{gap:10px;align-items:flex-start}#brainbox{margin-top:12px}
/* Здоровье номера: читаемые цифры (Серж 27.10) */
.insec[data-k="health"] .kpi b{font-size:30px;line-height:1.1}
.insec[data-k="health"] .kpi span{font-size:13.5px}
.capkpi .num{width:96px;font-size:24px;font-weight:700;padding:6px 10px}
.capkpi .caprec{color:#E5484D;font-size:13.5px;font-weight:600}
.hdays{margin-top:12px;display:grid;gap:8px}.hdays-h{font-size:13.5px;color:var(--muted)}
.hday{display:grid;grid-template-columns:64px minmax(120px,1fr) auto;gap:12px;align-items:center;font-size:16px}
.hday .hdate{font-weight:700;font-variant-numeric:tabular-nums}
.hday .hbar{height:12px;border-radius:99px;background:var(--line);overflow:hidden}.hday .hbar i{display:block;height:100%;border-radius:99px}
.hday .hval b{font-size:22px}.hday .hpct{font-weight:700;margin-left:6px}
.hday.cap-green .hbar i{background:#30A46C}.hday.cap-green .hpct{color:#30A46C}
.hday.cap-amber .hbar i{background:#F5A524}.hday.cap-amber .hpct{color:#C77A00}
.hday.cap-red .hbar i{background:#E5484D}.hday.cap-red .hpct{color:#E5484D}
@media (max-width:600px){.hday{grid-template-columns:48px 1fr;}.hday .hval{grid-column:1 / -1}}
.stat.matched b{color:#30A46C!important}
.stat.matched b{font-size:42px!important;line-height:1.05}

.insec,.dayrep,#advplan>section.card{--h:210;background:color-mix(in srgb,hsl(var(--h) 85% 55%) 8%,var(--panel))!important;border:2px solid hsl(var(--h) 70% 55%)!important;border-left-width:9px!important;border-radius:16px!important;padding:14px 18px!important;margin:0 0 20px!important;box-shadow:0 4px 14px rgba(10,40,90,.06)}
.insh h2,.dayrep>summary b,#advplan>section.card>.row:first-child h2,#advplan>section.card>.row:first-child h3{font-family:BFNunito,Nunito,system-ui,sans-serif!important;font-weight:900!important;font-size:24px!important;margin:0;color:color-mix(in srgb,hsl(var(--h) 75% 42%) 80%,var(--ink))!important}
.dayrep>summary .insn,#advplan>section.card .insn{margin-right:10px;vertical-align:middle}
#advplan>section.card{--h:200}#advbox>section.card:nth-child(1){--h:28}   /* советы дня отдельным первым блоком (27.10) */
/* Здоровье номера v2: вердикт, сегодня крупно, дни квадратиками слева направо, мелкие цифры ниже (Серж 27.10) */
.hverdict{display:flex;gap:14px;align-items:center;padding:14px 18px;border-radius:14px;margin:6px 0 14px;font-size:15px}
.hverdict b{font-size:24px;font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900}
.hvdot{width:22px;height:22px;border-radius:50%;flex:none}
.hv-green{background:#30A46C1f;border:2px solid #30A46C}.hv-green .hvdot{background:#30A46C}.hv-green b{color:#1F7A4D}
.hv-amber{background:#F5A5241f;border:2px solid #F5A524}.hv-amber .hvdot{background:#F5A524}.hv-amber b{color:#B26A00}
.hv-red{background:#E5484D1f;border:2px solid #E5484D}.hv-red .hvdot{background:#E5484D}.hv-red b{color:#C2262C}
.hmain{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:18px;align-items:stretch}
.htoday{border-radius:14px;padding:14px 16px;background:var(--panel);border:2px solid var(--line)}
.htnum b{font-size:56px;line-height:1;font-family:BFNunito,Nunito,system-ui,sans-serif;font-weight:900}.htnum span{font-size:26px;font-weight:700;opacity:.6;margin-left:4px}
.htlbl{font-size:14px;margin:4px 0 10px;color:var(--muted)}
.htoday .hbar{height:12px;border-radius:99px;background:var(--line);overflow:hidden}.htoday .hbar i{display:block;height:100%}
.htoday.cap-green{border-color:#30A46C}.htoday.cap-green b,.hsq.cap-green b{color:#1F7A4D}.htoday.cap-green .hbar i{background:#30A46C}
.htoday.cap-amber{border-color:#F5A524}.htoday.cap-amber b,.hsq.cap-amber b{color:#B26A00}.htoday.cap-amber .hbar i{background:#F5A524}
.htoday.cap-red{border-color:#E5484D}.htoday.cap-red b,.hsq.cap-red b{color:#C2262C}.htoday.cap-red .hbar i{background:#E5484D}
.hdaysbox{display:flex;flex-direction:column;justify-content:center}.hsq-h{font-size:13.5px;color:var(--muted);margin-bottom:8px}
.hsqs{display:flex;gap:8px;flex-wrap:wrap}
.hsq{display:grid;place-items:center;min-width:76px;padding:8px 10px;border-radius:12px;border:2px solid var(--line);background:var(--panel)}
.hsq b{font-size:22px;font-weight:800}.hsq small{font-size:13px;opacity:.6;font-weight:600}.hsq em{font-style:normal;font-size:12.5px;color:var(--muted)}
.hsq.cap-green{border-color:#30A46C}.hsq.cap-amber{border-color:#F5A524}.hsq.cap-red{border-color:#E5484D}
.hsmall{display:flex;flex-wrap:wrap;gap:6px 22px;margin:14px 0 6px;font-size:14px;color:var(--muted)}.hsmall b{color:var(--ink);font-size:16px}.hsmall .warn,.hsmall .warn b{color:#C2262C}
.hcap{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;color:var(--muted);margin:4px 0}.hcap .num{width:80px;font-weight:700}.hcap .caprec{color:#E5484D;font-weight:600}
@media (max-width:700px){.hmain{grid-template-columns:1fr}}
/* Автопост · Параметры: поля в одну строку, компактнее по вертикали (Серж 27.10) */
.apinfo .apparams{flex-wrap:wrap;gap:6px;align-items:stretch}
.apinfo .apparams .f{padding:6px 10px!important;gap:2px!important;font-size:12.5px}
.apinfo .apparams .f .row{gap:4px;flex-wrap:nowrap}
.apinfo .apparams .i.num{width:56px;padding:4px 6px;height:32px}
.apinfo .apparams .gaprec{font-size:11px;line-height:1.2}
.apinfo .apparams button[type=submit]{align-self:center}
.apinfo .aptop .row{padding:2px 8px;font-size:13px}
.apinfo > p.muted{font-size:12px;margin-top:4px}
/* Чаты (Серж 28.10): блок подсказки на одной линии с полем ввода; номер в шапке диалога тем же шрифтом, что имя */
#replybar #sugbox{margin-left:14px!important}
#thread .thead .who b.ph{font-family:inherit!important;font-size:inherit!important;letter-spacing:inherit!important}
#thread .thead .who b.ph:hover{color:inherit}

.fudrafting{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:9px 16px;border-radius:999px;background:linear-gradient(90deg,#fff1f0,#ffe4e2);border:1.5px solid #f04438;color:#b42318;font-weight:800;
  font-size:clamp(.66rem,1.05vw,.8rem);text-transform:uppercase;letter-spacing:.03em;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 10px rgba(240,68,56,.12);animation:fudrpulse 2.4s ease-in-out infinite}
.fudrafting::before{content:"";flex:none;width:14px;height:14px;border-radius:50%;border:2.5px solid #fda29b;border-top-color:#d92d20;animation:fudrspin .9s linear infinite}
@keyframes fudrspin{to{transform:rotate(360deg)}}
@keyframes fudrpulse{50%{box-shadow:0 2px 16px rgba(240,68,56,.28)}}
@media (max-width:760px){.fudrafting{white-space:normal;border-radius:14px;font-size:.72rem}}
.fuqwrap{margin:0 0 12px}

/* follow-up: два чётко разных блока (Серж 28.10) */
.fugroupsh{margin:6px 0 10px;align-items:center}.fugroupsh h3{margin:0;font-size:1.1rem}
.sgwho{margin:6px 0 0}
.fuqcard{border:2px solid #12b76a;background:#ecfdf3;border-radius:16px;padding:0;margin:0 0 16px}
.fuqcard>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:14px 18px}
.fuqcard>summary::-webkit-details-marker{display:none}
.fuqico{font-size:1.6rem}.fuqt{display:flex;flex-direction:column;gap:2px;flex:1}.fuqt b{font-size:1.05rem;color:#05603a}
.fuqtog{font-weight:700;color:#05603a;border:1px solid #6ce9a6;border-radius:999px;padding:4px 12px;background:#fff;white-space:nowrap}
.fuqcard[open]>summary{border-bottom:1px solid #a6f4c5}.fuqcard #fuqlist{padding:12px 18px}
.fuqcard.bump{animation:fuqbump .5s ease}
@keyframes fuqbump{0%{transform:scale(1)}40%{transform:scale(1.025);box-shadow:0 0 0 6px rgba(18,183,106,.25)}100%{transform:scale(1)}}
.fureadycard{border:2px solid #2e6be6}
.flyghost{position:fixed;z-index:9999;margin:0;pointer-events:none;transform-origin:center top;box-shadow:0 12px 30px rgba(16,24,40,.25)}
.fuin{animation:fuin .5s ease}@keyframes fuin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* follow-up: анимация «Штамп» (Серж 28.10) */
.dcard{position:relative}
.apstamp{position:absolute;left:50%;top:50%;z-index:5;pointer-events:none;padding:8px 26px;border:5px double #079455;border-radius:12px;color:#079455;background:rgba(236,253,243,.75);
  font-weight:900;font-size:clamp(1.3rem,3vw,2rem);letter-spacing:.14em;text-transform:uppercase;transform:translate(-50%,-50%) rotate(-14deg);opacity:0;box-shadow:0 0 0 2px rgba(7,148,85,.12)}
.stamped .bubble,.stamped .acts,.stamped .ownreply{filter:saturate(.4) opacity(.6);transition:filter .2s}
.apstrip{position:fixed;z-index:9999;height:44px;display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:999px;background:#ecfdf3;border:2px solid #12b76a;color:#05603a;
  box-shadow:0 10px 24px rgba(16,24,40,.18);transform-origin:left center;pointer-events:none;white-space:nowrap;overflow:hidden}
.apstrip .ck{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#12b76a;color:#fff;font-weight:900;font-size:.8rem}
