/* Пульт TOPHIT - стили нового Пульта. Перенесены из утверждённого макета (задачи/07-новый-дизайн-пульта/maket.html,
   15.10.2026) почти как есть: токены цветов двух оформлений (TOPHIT - основное, data-variant="b"; Немо - "v"),
   светлая/тёмная тема (data-theme), три уровня анимации (data-anim). Убраны только полоса настроек макета
   и рамка телефона. Свои добавки - в конце файла, раздел "Пульт: добавки к макету". */
:root{
 --fb:"Golos Text",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
 --fd:"Exo 2","Golos Text",system-ui,sans-serif;--fdw:600;
 --fh:"Golos Text",system-ui,sans-serif;
 --r:6px;--r2:8px;--rp:4px;
 --bg:#eceef1;--card:#ffffff;--field:#f4f5f7;--tx:#1a1d21;--mu:#5b626c;--ln:#dcdfe3;--ln2:#c4c9cf;
 --hdr:#1b1e22;--hdr2:#272b31;--hdrtx:#eceef0;--hdrmu:#9aa2ab;--hdrln:#30353b;
 --ac:#1584b4;--acd:#0c6890;--acs:#e0f0f7;--actx:#ffffff;--acm:#9ccbe0;
 --ok:#1b7a4c;--okbg:#e2f2e9;--warn:#935600;--warnbg:#fcefd9;--bad:#bf3a32;--badbg:#fae6e4;
 --z0:#5b626c;--z0s:#eceff2;--z1:#1d80b8;--z1s:#e1eff8;--z2:#7350a3;--z2s:#eee7f6;--z3:#946d00;--z3s:#f8eecb;--z4:#bf433a;--z4s:#f9e3e0;--z5:#1b8055;--z5s:#dff1e7;
 --sh:0 1px 2px rgba(18,22,28,.06),0 2px 8px rgba(18,22,28,.05);
 --shh:0 12px 36px rgba(18,22,28,.22);
 --scrim:rgba(12,14,18,.40);
 --stripe:rgba(148,109,0,.10);
 --frame:#0c0d0f;--stage:#d9dce0;
 color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
 --bg:#131517;--card:#1c1f23;--field:#23272c;--tx:#e6e8eb;--mu:#9aa2ab;--ln:#2d3237;--ln2:#3d434a;
 --hdr:#0e1012;--hdr2:#1d2125;--hdrtx:#e6e8eb;--hdrmu:#8b939c;--hdrln:#272b30;
 --ac:#4fb4e0;--acd:#86cfee;--acs:#15303c;--actx:#08141a;--acm:#2b5b70;
 --ok:#5cc28f;--okbg:#163326;--warn:#e3b45c;--warnbg:#36290f;--bad:#ee8a80;--badbg:#3c1f1c;
 --z0:#9aa2ab;--z0s:#262a2f;--z1:#5db6e6;--z1s:#14303e;--z2:#b293dc;--z2s:#2a2140;--z3:#e2c25a;--z3s:#352d12;--z4:#ec887e;--z4s:#3b1f1c;--z5:#62c794;--z5s:#14342a;
 --sh:0 1px 2px rgba(0,0,0,.35);--shh:0 14px 40px rgba(0,0,0,.55);--scrim:rgba(0,0,0,.55);--stripe:rgba(226,194,90,.08);
 --frame:#000;--stage:#0b0c0d;color-scheme:dark}}
:root[data-theme="dark"]{
 --bg:#131517;--card:#1c1f23;--field:#23272c;--tx:#e6e8eb;--mu:#9aa2ab;--ln:#2d3237;--ln2:#3d434a;
 --hdr:#0e1012;--hdr2:#1d2125;--hdrtx:#e6e8eb;--hdrmu:#8b939c;--hdrln:#272b30;
 --ac:#4fb4e0;--acd:#86cfee;--acs:#15303c;--actx:#08141a;--acm:#2b5b70;
 --ok:#5cc28f;--okbg:#163326;--warn:#e3b45c;--warnbg:#36290f;--bad:#ee8a80;--badbg:#3c1f1c;
 --z0:#9aa2ab;--z0s:#262a2f;--z1:#5db6e6;--z1s:#14303e;--z2:#b293dc;--z2s:#2a2140;--z3:#e2c25a;--z3s:#352d12;--z4:#ec887e;--z4s:#3b1f1c;--z5:#62c794;--z5s:#14342a;
 --sh:0 1px 2px rgba(0,0,0,.35);--shh:0 14px 40px rgba(0,0,0,.55);--scrim:rgba(0,0,0,.55);--stripe:rgba(226,194,90,.08);
 --frame:#000;--stage:#0b0c0d;color-scheme:dark}
/* Вариант В "как Немо": светлый, пастельный, мягкие углы */
:root[data-variant="v"]{
 --fd:"Manrope","Golos Text",system-ui,sans-serif;--fdw:800;--fh:"Manrope","Golos Text",system-ui,sans-serif;
 --r:16px;--r2:12px;--rp:999px;
 --bg:#f4f6fa;--card:#ffffff;--field:#f1f4f9;--tx:#1e2333;--mu:#606880;--ln:#e3e7ef;--ln2:#cfd5e1;
 --hdr:rgba(255,255,255,.86);--hdr2:#eef1f7;--hdrtx:#1e2333;--hdrmu:#606880;--hdrln:#e3e7ef;
 --ac:#138f97;--acd:#0b6f76;--acs:#daf3f3;--actx:#ffffff;--acm:#a6dcdf;
 --ok:#1b7d55;--okbg:#ddf4e8;--warn:#8f5c00;--warnbg:#fff1d2;--bad:#bb4136;--badbg:#ffe6e1;
 --z0:#606880;--z0s:#eef1f6;--z1:#2575b4;--z1s:#dcedfb;--z2:#6b48bf;--z2s:#ebe4fb;--z3:#8a6400;--z3s:#fff0c4;--z4:#bb4537;--z4s:#ffe2dc;--z5:#1d7f57;--z5s:#d8f3e5;
 --sh:0 1px 2px rgba(40,52,90,.04),0 6px 20px rgba(40,52,90,.06);--shh:0 16px 44px rgba(40,52,90,.18);--scrim:rgba(30,35,51,.30);
 --stripe:rgba(255,196,60,.16);--frame:#1e2333;--stage:#e4e8f0;color-scheme:light}
@media (prefers-color-scheme:dark){:root[data-variant="v"]:not([data-theme="light"]){
 --bg:#121620;--card:#1a1f2b;--field:#212736;--tx:#e8eaf2;--mu:#9ca3ba;--ln:#2a3142;--ln2:#3a4256;
 --hdr:rgba(22,27,38,.88);--hdr2:#222839;--hdrtx:#e8eaf2;--hdrmu:#9ca3ba;--hdrln:#2a3142;
 --ac:#5ccbd1;--acd:#93e0e4;--acs:#163538;--actx:#0a1a1c;--acm:#2c5d61;
 --ok:#6dd3a0;--okbg:#153628;--warn:#f0c66a;--warnbg:#3a2f14;--bad:#f39a8c;--badbg:#40241f;
 --z0:#9ca3ba;--z0s:#242a39;--z1:#7cbdf0;--z1s:#1a2c40;--z2:#b9a2f0;--z2s:#2a2445;--z3:#f0cf6a;--z3s:#3a3218;--z4:#f39a8c;--z4s:#40241f;--z5:#6fd3a0;--z5s:#163a2b;
 --sh:0 1px 2px rgba(0,0,0,.3);--shh:0 16px 44px rgba(0,0,0,.5);--scrim:rgba(0,0,0,.5);--stripe:rgba(240,207,106,.08);
 --frame:#000;--stage:#0c0f15;color-scheme:dark}}
:root[data-variant="v"][data-theme="dark"]{
 --bg:#121620;--card:#1a1f2b;--field:#212736;--tx:#e8eaf2;--mu:#9ca3ba;--ln:#2a3142;--ln2:#3a4256;
 --hdr:rgba(22,27,38,.88);--hdr2:#222839;--hdrtx:#e8eaf2;--hdrmu:#9ca3ba;--hdrln:#2a3142;
 --ac:#5ccbd1;--acd:#93e0e4;--acs:#163538;--actx:#0a1a1c;--acm:#2c5d61;
 --ok:#6dd3a0;--okbg:#153628;--warn:#f0c66a;--warnbg:#3a2f14;--bad:#f39a8c;--badbg:#40241f;
 --z0:#9ca3ba;--z0s:#242a39;--z1:#7cbdf0;--z1s:#1a2c40;--z2:#b9a2f0;--z2s:#2a2445;--z3:#f0cf6a;--z3s:#3a3218;--z4:#f39a8c;--z4s:#40241f;--z5:#6fd3a0;--z5s:#163a2b;
 --sh:0 1px 2px rgba(0,0,0,.3);--shh:0 16px 44px rgba(0,0,0,.5);--scrim:rgba(0,0,0,.5);--stripe:rgba(240,207,106,.08);
 --frame:#000;--stage:#0c0f15;color-scheme:dark}

*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.5 var(--fb);display:flex;flex-direction:column;overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--acd)}
.ic{font-family:"Material Symbols Rounded";font-weight:normal;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0;flex:none;width:1em;overflow:hidden;vertical-align:-4px}
:root:not([data-variant="v"]) .ic{font-family:"Material Symbols Sharp"}
.ic.f{font-variation-settings:"FILL" 1}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
h1,h2,h3{font-family:var(--fh);text-wrap:balance;margin:0;line-height:1.25}
h1{font-size:22px;font-weight:700}h2{font-size:16px;font-weight:650}h3{font-size:14px;font-weight:600}
.mu{color:var(--mu)}.sm{font-size:13px}.num{font-variant-numeric:tabular-nums}

/* ---------- оболочка приложения (в макете это была сцена) ---------- */
#app{container:app/inline-size;position:relative;overflow:hidden;width:100%;height:100vh;height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg)}
/* ---------- шапка ---------- */
.top{position:relative;z-index:30;display:flex;align-items:center;gap:6px;height:56px;padding:0 12px;background:var(--hdr);color:var(--hdrtx);border-bottom:1px solid var(--hdrln)}
:root[data-variant="v"] .top{backdrop-filter:saturate(1.4) blur(12px)}
.hb{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:var(--r2);background:none;color:var(--hdrtx);cursor:pointer;flex:none;position:relative}
.hb:hover{background:var(--hdr2)}
.hb .ic{font-size:22px}
.brand{display:flex;align-items:center;gap:8px;padding:0 8px 0 4px;color:var(--hdrtx);text-decoration:none;cursor:pointer;border:0;background:none;height:40px;border-radius:var(--r2);flex:none}
.brand:hover{background:var(--hdr2)}
.mark{width:26px;height:26px;display:block}
.wm{font-family:"Russo One",var(--fb);font-size:16px;letter-spacing:.06em}
:root[data-variant="v"] .wm{color:var(--tx)}
.ptitle{display:none;font-weight:650;font-family:var(--fh);font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.pins{display:flex;gap:2px;align-items:center;margin-left:10px;min-width:0;overflow:hidden}
.pin{display:flex;align-items:center;gap:7px;height:40px;padding:0 11px;border:0;background:none;color:var(--hdrmu);cursor:pointer;border-radius:var(--r2);position:relative;white-space:nowrap;font-size:14px;font-weight:500}
.pin:hover{color:var(--hdrtx);background:var(--hdr2)}
.pin.on{color:var(--hdrtx)}
.pin .ic{color:var(--zc,currentColor)}
/* Б: активный значок подчёркнут трапецией - как срез верхней перекладины знака TOPHIT */
:root:not([data-variant="v"]) .pin.on::after{content:"";position:absolute;left:8px;right:8px;bottom:-8px;height:4px;background:var(--ac);clip-path:polygon(0 0,100% 0,calc(100% - 4px) 100%,4px 100%)}
:root[data-variant="v"] .pin.on{background:var(--acs);color:var(--acd)}
.pin .bd{position:absolute;top:3px;left:25px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--bad);color:#fff;font-size:10.5px;font-weight:700;line-height:16px;text-align:center}
.sp{flex:1}
.search{display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border-radius:var(--r2);border:1px solid var(--hdrln);background:var(--hdr2);color:var(--hdrmu);cursor:pointer;min-width:180px;font-size:14px}
.search:hover{color:var(--hdrtx)}
.search kbd{margin-left:auto;font:11px var(--fb);border:1px solid var(--hdrln);border-radius:4px;padding:1px 5px}
.ava{width:34px;height:34px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--ac);color:var(--actx);font-weight:700;font-size:13px;cursor:pointer;margin-left:4px;flex:none}
:root:not([data-variant="v"]) .ava{border-radius:var(--r)}
@container app (max-width:1180px){.pin span{display:none}.pin{padding:0 10px}.search{min-width:0}.search span,.search kbd{display:none}}

/* ---------- главная область ---------- */
#main{overflow:auto;min-height:0;scroll-behavior:auto}
.wrap{max-width:1320px;margin:0 auto;padding:20px 24px 48px;display:grid;gap:16px;align-content:start}
.ph{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.ph-t{min-width:0}
.ph-t h1{display:flex;align-items:center;gap:10px}
.ph-t h1 .ic{font-size:26px;color:var(--zc,var(--ac))}
:root:not([data-variant="v"]) .ph-t h1::before{content:"";width:4px;height:22px;background:var(--zc,var(--ac));display:inline-block}
:root:not([data-variant="v"]) .ph-t h1 .ic{display:none}
.sub{margin:3px 0 0;color:var(--mu);font-size:13.5px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ph-a{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

.card{background:var(--card);border:1px solid var(--ln);border-radius:var(--r);padding:16px;box-shadow:var(--sh);min-width:0}
.ct{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.ct h2{display:flex;gap:8px;align-items:center}
.ct h2 .ic{color:var(--mu);font-size:19px}
.g2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:start}
.g2e{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.col{display:grid;gap:16px;min-width:0;align-content:start}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.between{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}

/* кнопки */
.b{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--r2);border:1px solid var(--ln);background:var(--card);color:var(--tx);font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap}
.b:hover{border-color:var(--ln2);background:var(--field)}
.b.p{background:var(--ac);border-color:var(--ac);color:var(--actx)}
.b.p:hover{filter:brightness(1.06)}
.b.s{height:30px;padding:0 10px;font-size:13px}
.b.ico{width:36px;padding:0;justify-content:center}
.b.s.ico{width:30px}
.b.ghost{border-color:transparent;background:none}
.b:disabled{opacity:.5;cursor:not-allowed;filter:none}
.b .ic{font-size:18px}
.b.big{height:48px;font-size:16px;padding:0 20px}
:root[data-variant="v"] .b{border-radius:999px}
:root[data-variant="v"] .b.ico{border-radius:50%}

/* поля */
.inp,select.inp,textarea.inp{width:100%;height:38px;padding:0 11px;border:1px solid var(--ln);border-radius:var(--r2);background:var(--field);color:var(--tx)}
textarea.inp{height:auto;min-height:96px;padding:9px 11px;resize:vertical;line-height:1.45}
.inp:focus{border-color:var(--ac);outline:none;box-shadow:0 0 0 3px var(--acs)}
.fld{display:grid;gap:4px;min-width:0}
.fld>span{font-size:12.5px;color:var(--mu);font-weight:500}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;align-items:end}
.fgrid .w2{grid-column:span 2}
.ok-f{position:relative}.ok-f::after{content:"check";font-family:"Material Symbols Rounded";position:absolute;right:10px;bottom:9px;color:var(--ok);font-size:18px;line-height:1;pointer-events:none}
.chk{display:flex;gap:8px;align-items:center;cursor:pointer;font-size:14px}
.chk input{width:18px;height:18px;accent-color:var(--ac);margin:0}
.drop{border:1.5px dashed var(--ln2);border-radius:var(--r2);padding:14px;text-align:center;color:var(--mu);font-size:13.5px;background:var(--field);cursor:pointer}
.drop:hover{border-color:var(--ac);color:var(--tx)}
.drop .ic{font-size:26px;display:block;margin:0 auto 4px;color:var(--ac)}

/* переключатели-сегменты и вкладки */
.seg{display:inline-flex;background:var(--field);border:1px solid var(--ln);border-radius:calc(var(--r2) + 3px);padding:3px;gap:2px;max-width:100%;overflow-x:auto;scrollbar-width:none}
.seg button{border:0;background:none;height:32px;padding:0 13px;border-radius:var(--r2);cursor:pointer;color:var(--mu);font-weight:550;font-size:14px;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}
.seg button:hover{color:var(--tx)}
.seg button.on{background:var(--card);color:var(--tx);box-shadow:var(--sh)}
.seg button .ic{font-size:18px}
.seg .cnt{font-size:12px;color:var(--mu);font-weight:600}
:root[data-variant="v"] .seg,:root[data-variant="v"] .seg button{border-radius:999px}
/* этапы-фильтры: счётчик + подпись, нажатие фильтрует */
.stages{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:8px}
.stg{border:1.5px solid var(--ln);background:var(--card);border-radius:var(--r2);padding:9px 12px;text-align:left;cursor:pointer;display:grid;gap:0;min-width:0}
.stg b{font-family:var(--fd);font-size:20px;font-weight:var(--fdw);line-height:1.2;font-variant-numeric:tabular-nums}
.stg span{font-size:12.5px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stg:hover{border-color:var(--ln2)}
.stg.on{border-color:var(--ac);background:var(--acs)}
.stg.bad b{color:var(--bad)}.stg.warn b{color:var(--warn)}.stg.ok b{color:var(--ok)}

/* чипы */
.chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:var(--rp);white-space:nowrap;line-height:1.5}
.chip .ic{font-size:15px;vertical-align:0}
.c-ok{background:var(--okbg);color:var(--ok)}.c-warn{background:var(--warnbg);color:var(--warn)}.c-bad{background:var(--badbg);color:var(--bad)}
.c-ac{background:var(--acs);color:var(--acd)}.c-mu{background:var(--field);color:var(--mu);border:1px solid var(--ln)}
.c-z1{background:var(--z1s);color:var(--z1)}.c-z2{background:var(--z2s);color:var(--z2)}.c-z3{background:var(--z3s);color:var(--z3)}.c-z4{background:var(--z4s);color:var(--z4)}.c-z5{background:var(--z5s);color:var(--z5)}
.zd{width:9px;height:9px;border-radius:2px;display:inline-block;flex:none;background:var(--zc)}
:root[data-variant="v"] .zd{border-radius:50%}

/* таблицы */
.tw{overflow-x:auto;margin:0 -16px;padding:0 16px}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:9px 8px;border-bottom:1px solid var(--ln);text-align:left;vertical-align:middle}
th{font-size:11.5px;color:var(--mu);text-transform:uppercase;letter-spacing:.05em;font-weight:600;white-space:nowrap}
tbody tr:last-child td{border-bottom:0}
tbody tr.cl{cursor:pointer}
tbody tr.cl:hover{background:var(--field)}
tbody tr.sel{background:var(--acs)}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
td .m2{display:block;font-size:12.5px;color:var(--mu)}
.nm{display:flex;gap:8px;align-items:center;font-weight:550}
td.ck,th.ck{width:30px;padding-right:0}
td.ck input,th.ck input{width:17px;height:17px;accent-color:var(--ac);margin:0}

/* сводка "Сегодня" */
.hello{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.hello h1{font-size:26px}
.live{display:inline-flex;gap:6px;align-items:center}
.live i{width:8px;height:8px;border-radius:50%;background:var(--ok);display:inline-block;box-shadow:0 0 0 0 var(--ok)}
:root[data-anim="live"] .live i{animation:ping 2.4s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ok) 55%,transparent)}70%,100%{box-shadow:0 0 0 7px transparent}}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.kpi{background:var(--card);border:1px solid var(--ln);border-radius:var(--r);padding:14px 14px 12px;box-shadow:var(--sh);cursor:pointer;text-align:left;display:grid;gap:2px;min-width:0;position:relative;overflow:hidden}
.kpi:hover{border-color:var(--ln2)}
.kpi .kl{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--mu);font-weight:500}
.kpi .kl .ic{font-size:18px;color:var(--zc,var(--ac))}
.kpi .kval{font-family:var(--fd);font-size:29px;line-height:1.15;font-weight:var(--fdw);letter-spacing:.01em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi .kval small{font-family:var(--fb);font-size:14px;font-weight:600;color:var(--mu);margin-left:4px}
.kpi .kd{font-size:12.5px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi.bad .kval{color:var(--bad)}
.kpi .src{position:absolute;top:10px;right:10px;font-size:10.5px;color:var(--mu);border:1px solid var(--ln);border-radius:4px;padding:0 4px}
:root:not([data-variant="v"]) .kpi{border-top:3px solid var(--zc,var(--ac))}
:root[data-variant="v"] .kpi{background:var(--zs,var(--card));border-color:transparent;box-shadow:none}
:root[data-variant="v"] .kpi .kl .ic{background:var(--card);border-radius:50%;padding:5px;font-size:16px;width:26px}
.kpi.flash{animation:flash 1.3s ease-out}
@keyframes flash{0%{box-shadow:0 0 0 2px var(--ac),var(--sh)}100%{box-shadow:0 0 0 0 transparent,var(--sh)}}
.kpi.bump .kval{animation:bump .5s ease-out}
@keyframes bump{40%{transform:translateY(-3px)}}

.alerts{display:grid;gap:8px}
.al{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r2);cursor:pointer;border:0;width:100%;text-align:left;color:var(--tx);background:var(--field)}
.al:hover{filter:brightness(.98)}
.al .ic{font-size:20px;margin-top:1px}
.al small{display:block;color:var(--mu);font-size:12.5px}
.al.bad{background:var(--badbg)}.al.bad .ic{color:var(--bad)}
.al.warn{background:var(--warnbg)}.al.warn .ic{color:var(--warn)}
.al.mu .ic{color:var(--ac)}
.al .go{margin-left:auto;color:var(--mu);align-self:center}

.feed{display:grid}
.fi{display:grid;grid-template-columns:44px 22px 1fr;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid var(--ln);font-size:14px}
.fi:last-child{border-bottom:0}
.fi time{color:var(--mu);font-size:12.5px;font-variant-numeric:tabular-nums;padding-top:1px}
.fi .ic{font-size:18px;color:var(--zc,var(--mu))}
.fi small{display:block;color:var(--mu);font-size:12.5px}
:root[data-anim="live"] .fi.new{animation:slidein .5s ease-out}
:root[data-anim="soft"] .fi.new{animation:fadein .6s ease-out}
@keyframes slidein{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes fadein{from{background:var(--acs)}to{background:transparent}}

.zbars{display:grid;gap:10px}
.zb{display:grid;grid-template-columns:150px 1fr 70px;gap:10px;align-items:center;font-size:13.5px}
.zb .tr{height:12px;background:var(--field);border-radius:6px;overflow:hidden}
.zb .tr i{display:block;height:100%;background:var(--zc);border-radius:0 6px 6px 0;transition:width .7s ease}
.zb>span:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.zb .lb{display:flex;gap:7px;align-items:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.chart{width:100%;height:auto;display:block}
.chart .gl{stroke:var(--ln);stroke-width:1}
.chart .gt{fill:var(--mu);font-size:11px;font-family:var(--fb)}
.chart .bp{fill:var(--acm)}
.chart .bt{fill:var(--ac)}
.chart .bl{fill:var(--tx);font-size:11.5px;font-weight:600;font-family:var(--fb)}
.chart .hit{fill:transparent;cursor:crosshair}
.chart .hit:hover+.hl{opacity:1}
.chart .hl{fill:var(--tx);opacity:0;pointer-events:none}
#tip{position:absolute;z-index:90;pointer-events:none;background:var(--tx);color:var(--bg);font-size:12.5px;padding:5px 9px;border-radius:6px;white-space:nowrap;opacity:0;transform:translate(-50%,-100%);transition:opacity .12s}
#tip.on{opacity:1}

.watch{display:grid;gap:10px}
.wi{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;font-size:14px}
.wi .bar{grid-column:span 2;height:5px;border-radius:3px;background:var(--field);overflow:hidden}
.wi .bar i{display:block;height:100%;border-radius:3px;background:var(--warn)}
.wi .bar i.ok{background:var(--ok)}.wi .bar i.bad{background:var(--bad)}
.wi small{color:var(--mu);font-size:12.5px;grid-column:span 2}

/* этикетки */
.et{display:grid;grid-template-columns:250px 300px minmax(0,1fr);gap:16px;align-items:start}
.elist{display:grid;gap:2px;max-height:640px;overflow:auto;padding:6px}
.eg{font-size:11.5px;color:var(--mu);text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:8px 8px 4px}
.ei{display:flex;gap:9px;align-items:center;padding:7px 8px;border-radius:var(--r2);cursor:pointer;border:0;background:none;text-align:left;width:100%;color:var(--tx)}
.ei:hover{background:var(--field)}
.ei.on{background:var(--acs)}
.ei .zs{width:4px;height:30px;border-radius:2px;background:var(--zl);flex:none}
.ei b{font-weight:550;font-size:14px;display:block;line-height:1.25}
.ei small{color:var(--mu);font-size:12px}
.ei .st{margin-left:auto}
.lbl{width:100%;height:auto;display:block;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.25)}
.checks{display:grid;gap:6px;font-size:13.5px;margin-top:12px}
.checks div{display:flex;gap:7px;align-items:center}
.checks .ok .ic{color:var(--ok)}.checks .warn .ic{color:var(--warn)}
.dlgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.dl{background:var(--card);border:1.5px solid var(--ln);border-radius:var(--r);padding:10px;display:grid;gap:8px;position:relative;box-shadow:var(--sh)}
.dl.sel{border-color:var(--ac)}
.dl .lbl{box-shadow:none}
.dl .ck{position:absolute;top:16px;left:16px;width:20px;height:20px;accent-color:var(--ac)}
.dl b{font-size:13.5px;line-height:1.3}
.dl small{color:var(--mu);font-size:12px}
.mbar{position:sticky;bottom:12px;z-index:5;display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--tx);color:var(--bg);padding:10px 14px;border-radius:var(--r);box-shadow:var(--shh)}
.mbar .b{background:transparent;border-color:color-mix(in srgb,var(--bg) 35%,transparent);color:var(--bg)}
.mbar .b.p{background:var(--ac);border-color:var(--ac);color:var(--actx)}
.month{display:flex;gap:8px;align-items:center;background:var(--z3s);border-radius:var(--r);padding:10px 14px;flex-wrap:wrap}
.month b{color:var(--z3)}
.month input{width:118px;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;font-size:16px}

/* склад */
.scan{display:flex;gap:12px;align-items:center;padding:14px 16px}
.scan .ic.big{font-size:36px;color:var(--z3)}
.scan .inp{height:48px;font-size:17px;flex:1;min-width:0}
.prog{height:10px;border-radius:5px;background:var(--field);overflow:hidden}
.prog i{display:block;height:100%;background:var(--ok);border-radius:5px;transition:width .5s}
.ucheba{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;border-radius:var(--r);border:1.5px solid var(--z3);background:repeating-linear-gradient(-45deg,var(--z3s) 0 14px,var(--card) 14px 28px);font-weight:500}
.ucheba .ic{color:var(--z3);font-size:24px}
.sw{position:relative;width:40px;height:22px;border-radius:11px;background:var(--ln2);border:0;cursor:pointer;flex:none;transition:background .2s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .2s}
.sw.on{background:var(--ac)}.sw.on::after{left:21px}
.swl{display:inline-flex;gap:8px;align-items:center;font-size:14px;font-weight:550;cursor:pointer;border:0;background:none;padding:0}
.photo{width:36px;height:36px;border-radius:var(--rp);background:var(--zs);display:grid;place-items:center;flex:none;color:var(--zc)}
:root[data-variant="v"] .photo{border-radius:10px}
.photo .ic{font-size:20px}
.last{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:start}

/* реестр: чат "Спросить" */
.chat{display:grid;gap:12px}
.msg{max-width:min(720px,100%);padding:10px 14px;border-radius:var(--r);font-size:14.5px;line-height:1.5}
.msg.q{justify-self:end;background:var(--ac);color:var(--actx);border-bottom-right-radius:4px}
.msg.a{background:var(--field);border:1px solid var(--ln);border-bottom-left-radius:4px}
.msg .meta{font-size:12px;color:var(--mu);margin-top:6px;display:flex;gap:8px;flex-wrap:wrap}
.msg table{font-size:13px;margin:8px 0;background:var(--card);border-radius:6px}
.file{display:flex;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--ln);background:var(--card);border-radius:var(--r2);margin-top:8px}
.file .ic{color:var(--ok);font-size:24px}
.file b{font-size:13.5px;font-weight:600;display:block}
.file small{color:var(--mu);font-size:12px}
.keep{font-size:12.5px;color:var(--mu);margin-top:6px;display:flex;gap:6px;align-items:center}
.keep .ic{font-size:16px}
.ask{display:flex;gap:8px;align-items:flex-end}
.ask textarea{min-height:44px;height:44px}
.typing{display:inline-flex;gap:4px}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--mu);animation:dots 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes dots{50%{opacity:.25}}

/* договоры */
.kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.kind{border:1.5px solid var(--ln);border-radius:var(--r2);padding:9px 11px;cursor:pointer;background:var(--card);text-align:left;font-size:13.5px;font-weight:550;color:var(--tx)}
.kind small{display:block;color:var(--mu);font-weight:400;font-size:12px}
.kind.on{border-color:var(--ac);background:var(--acs)}
.done{display:grid;gap:10px;border:1.5px solid var(--ok);background:var(--okbg);border-radius:var(--r);padding:14px}

/* доступы */
.matrix th{writing-mode:initial}
.matrix td,.matrix th{text-align:center;padding:7px 6px}
.matrix td:first-child,.matrix th:first-child{text-align:left;position:sticky;left:0;background:var(--card);z-index:1;white-space:nowrap;font-weight:550}
.matrix input{width:17px;height:17px;accent-color:var(--ac)}
.ovr{display:grid;gap:6px}
.ovr .orow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--ln);font-size:14px}
.ovr .orow small{display:block;color:var(--mu);font-size:12px}
.ovr .seg button{height:26px;padding:0 9px;font-size:12.5px}

/* профиль */
.appicon{width:64px;height:64px;border-radius:15px;display:grid;place-items:center;background:#1b1e22;color:#fff;box-shadow:var(--sh);position:relative;overflow:hidden}
.appicon::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#00AEEF}
.appicon .mark{width:40px;height:40px}
:root[data-variant="v"] .appicon{background:linear-gradient(140deg,#e2f6f4,#e6eefc 55%,#fdeee8);color:#1e2333}
:root[data-variant="v"] .appicon::before{display:none}
.homes{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.homes figure{margin:0;display:grid;justify-items:center;gap:6px;font-size:12px}

/* заглушки "в разработке" */
.stub{max-width:640px;display:grid;gap:12px}
.stub ul{margin:0;padding-left:20px;display:grid;gap:4px}

/* ---------- выезжающие панели ---------- */
.scrim{position:absolute;inset:0;background:var(--scrim);z-index:60;opacity:0;pointer-events:none;transition:opacity .2s}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:absolute;top:0;bottom:0;z-index:70;background:var(--card);box-shadow:var(--shh);display:flex;flex-direction:column;transition:transform .25s ease;min-width:0}
.drawer.l{left:0;width:min(330px,88%);transform:translateX(-105%)}
.drawer.r{right:0;width:min(460px,94%);transform:translateX(105%)}
.drawer.on{transform:none}
.dh{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--ln)}
.db{overflow:auto;padding:14px 16px;display:grid;gap:14px;align-content:start;flex:1}
.df{padding:12px 16px;border-top:1px solid var(--ln)}
.mgrp{font-size:11.5px;color:var(--mu);text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:10px 10px 4px}
.mi{display:flex;gap:10px;align-items:center;padding:0 6px 0 10px;height:42px;border-radius:var(--r2);cursor:pointer;color:var(--tx)}
.mi:hover{background:var(--field)}
.mi.on{background:var(--acs);color:var(--acd);font-weight:600}
.mi>.ic{color:var(--zc,var(--mu))}
.mi .nm2{flex:1;min-width:0}
.mi .bd{background:var(--bad);color:#fff;border-radius:999px;font-size:11.5px;font-weight:700;padding:0 7px}
.star{border:0;background:none;color:var(--ln2);cursor:pointer;width:34px;height:34px;display:grid;place-items:center;border-radius:50%}
.star:hover{color:var(--z3);background:var(--card)}
.star.on{color:#e0a800}
.star .ic{font-size:21px}
.kv{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding:6px 0;border-bottom:1px solid var(--ln)}
.kv:last-child{border:0}.kv>span:first-child{color:var(--mu)}.kv>span:last-child{text-align:right}
.sheet{position:absolute;left:0;right:0;bottom:0;z-index:70;background:var(--card);border-radius:18px 18px 0 0;box-shadow:var(--shh);transform:translateY(105%);transition:transform .25s ease;max-height:82%;display:flex;flex-direction:column}
.sheet.on{transform:none}
.sheet .grab{width:40px;height:4px;border-radius:2px;background:var(--ln2);margin:8px auto 0}

/* ⋯ меню, поиск, уведомление */
#pop{position:absolute;z-index:80;background:var(--card);border:1px solid var(--ln);border-radius:var(--r2);box-shadow:var(--shh);padding:6px;min-width:230px;display:none}
#pop.on{display:block}
#pop button{display:flex;gap:10px;align-items:center;width:100%;border:0;background:none;padding:8px 10px;border-radius:6px;cursor:pointer;text-align:left;font-size:14px;color:var(--tx)}
#pop button:hover{background:var(--field)}
#pop button .ic{color:var(--mu);font-size:19px}
#pop button:disabled{opacity:.5;cursor:not-allowed}
#pop hr{border:0;border-top:1px solid var(--ln);margin:4px 0}
#cmd{position:absolute;z-index:85;left:50%;top:70px;transform:translateX(-50%);width:min(600px,calc(100% - 24px));background:var(--card);border:1px solid var(--ln);border-radius:var(--r);box-shadow:var(--shh);display:none;overflow:hidden}
#cmd.on{display:block}
#cmd .ci{display:flex;gap:10px;align-items:center;padding:0 14px;border-bottom:1px solid var(--ln)}
#cmd input{border:0;outline:none;background:none;height:52px;font-size:17px;flex:1;min-width:0}
#cmd .cr{max-height:380px;overflow:auto;padding:6px}
#cmd .cg{font-size:11.5px;color:var(--mu);text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:8px 10px 4px}
#cmd .co{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:6px;cursor:pointer;width:100%;border:0;background:none;text-align:left;font-size:14.5px;color:var(--tx)}
#cmd .co:hover,#cmd .co.on{background:var(--acs)}
#cmd .co small{color:var(--mu);margin-left:auto;font-size:12.5px}
#toast{position:absolute;z-index:95;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--tx);color:var(--bg);padding:10px 16px;border-radius:var(--r2);font-size:14px;box-shadow:var(--shh);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:calc(100% - 32px);display:flex;gap:8px;align-items:center}
#toast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- нижняя полоса (телефон) ---------- */
.bnav{display:none}

/* ---------- вход ---------- */
.login{position:absolute;inset:0;z-index:120;display:grid;place-items:center;padding:24px 16px;overflow:auto;background:var(--hdr)}
:root:not([data-variant="v"]) .login{background:
 linear-gradient(115deg,transparent 0 62%,color-mix(in srgb,#00AEEF 9%,transparent) 62% 63%,transparent 63%),
 linear-gradient(115deg,transparent 0 70%,color-mix(in srgb,#662C91 12%,transparent) 70% 71%,transparent 71%),
 linear-gradient(115deg,transparent 0 78%,color-mix(in srgb,#ED1C24 9%,transparent) 78% 79%,transparent 79%),
 #121417}
:root[data-variant="v"] .login{background:radial-gradient(60% 50% at 15% 10%,color-mix(in srgb,var(--z1s) 90%,transparent),transparent),radial-gradient(50% 50% at 90% 20%,color-mix(in srgb,var(--z4s) 80%,transparent),transparent),radial-gradient(60% 60% at 60% 100%,color-mix(in srgb,var(--acs) 90%,transparent),transparent),var(--bg)}
.lcard{width:min(380px,100%);background:var(--card);border-radius:calc(var(--r) + 4px);padding:28px 26px 22px;box-shadow:var(--shh);display:grid;gap:14px;border:1px solid var(--ln)}
.lmark{display:grid;justify-items:center;gap:8px;margin-bottom:6px}
.lmark .mark{width:72px;height:72px;color:var(--tx)}
.lmark .wm{font-size:26px;color:var(--tx)}
.lmark p{margin:0;color:var(--mu);font-size:14px}
:root[data-anim="live"] .login .lmark .mark{animation:rise .8s ease-out both}
@keyframes rise{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}

/* ---------- анимация: три уровня ---------- */
:root[data-anim="off"] *,:root[data-anim="off"] *::before,:root[data-anim="off"] *::after{transition:none!important;animation:none!important}
:root[data-anim="soft"] .pg.enter{animation:pgin .22s ease-out}
:root[data-anim="live"] .pg.enter>*{animation:cardin .45s cubic-bezier(.2,.7,.3,1) both}
:root[data-anim="live"] .pg.enter>*:nth-child(2){animation-delay:.05s}
:root[data-anim="live"] .pg.enter>*:nth-child(3){animation-delay:.1s}
:root[data-anim="live"] .pg.enter>*:nth-child(4){animation-delay:.15s}
:root[data-anim="live"] .pg.enter>*:nth-child(n+5){animation-delay:.2s}
@keyframes pgin{from{opacity:.4}to{opacity:1}}
@keyframes cardin{from{opacity:.25;transform:translateY(10px)}to{opacity:1;transform:none}}
:root[data-anim="soft"] .b,:root[data-anim="live"] .b,:root[data-anim="soft"] .kpi,:root[data-anim="live"] .kpi{transition:background .15s,border-color .15s,filter .15s,transform .15s}
:root[data-anim="live"] .kpi:hover{transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ---------- узкий экран (телефон и окно телефона в макете) ---------- */
@container app (max-width:1100px){
 .kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
 .et{grid-template-columns:220px minmax(0,1fr)}
 .et>.eform{grid-column:span 2}
}
@container app (max-width:900px){
 .g2,.g2e,.g3{grid-template-columns:minmax(0,1fr)}
}
@container app (max-width:720px){
 .top{height:52px;padding:0 6px 0 10px}
 .top .hb.menu,.top .pins,.top .search,.top .ava,.top .wm{display:none}
 .ptitle{display:block}
 .brand{padding:0 6px 0 0}
 .wrap{padding:14px 16px 28px;gap:14px}
 h1{font-size:20px}.hello h1{font-size:22px}
 .ph{align-items:flex-start}
 .ph-t h1{display:none}
 .ph-a .b span{display:none}.ph-a .b{width:36px;padding:0;justify-content:center}.ph-a .b.keep-t span{display:inline}.ph-a .b.keep-t{width:auto;padding:0 12px}
 .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .kpis .kpi:first-child{grid-column:span 2}
 .kpi .kval{font-size:24px}
 .stages{grid-template-columns:repeat(2,minmax(0,1fr))}
 .et{grid-template-columns:minmax(0,1fr)}.et>.eform{grid-column:auto}
 .elist{display:flex;overflow-x:auto;max-height:none;gap:6px;padding:4px}
 .elist .eg{display:none}
 .elist .ei{flex:none;width:auto;border:1px solid var(--ln)}
 .elist .ei small,.elist .ei .st{display:none}
 .eprev{max-width:260px;margin:0 auto;width:100%}
 .fgrid{grid-template-columns:minmax(0,1fr)}.fgrid .w2{grid-column:auto}
 .zb{grid-template-columns:110px 1fr 56px;font-size:12.5px}
 .dlgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .last{grid-template-columns:90px 1fr}
 .kinds{grid-template-columns:minmax(0,1fr)}
 .hide-m{display:none}
 .bnav{display:flex;justify-content:space-around;align-items:stretch;gap:2px;background:var(--hdr);border-top:1px solid var(--hdrln);padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));position:relative;z-index:30}
 .bnav button{flex:1;min-width:0;border:0;background:none;display:grid;justify-items:center;gap:1px;padding:6px 1px 4px;color:var(--hdrmu);font-size:10.5px;letter-spacing:-.01em;cursor:pointer;border-radius:var(--r2);position:relative}
 .bnav button .ic{font-size:23px}
 .bnav button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
 .bnav button.on{color:var(--hdrtx);font-weight:600}
 .bnav button.on .ic{color:var(--ac);font-variation-settings:"FILL" 1}
 :root[data-variant="v"] .bnav button.on .ic{background:var(--acs);border-radius:999px;width:52px;text-align:center;padding:2px 0}
 .bnav .bd{position:absolute;top:2px;left:calc(50% + 6px);min-width:16px;height:16px;border-radius:8px;background:var(--bad);color:#fff;font-size:10.5px;font-weight:700;line-height:16px;padding:0 4px}
 .drawer.r{width:100%}
 #toast{bottom:84px}
 #cmd{top:12px}
 .scan{padding:12px}.scan .ic.big{display:none}
}

/* ================= Пульт: добавки к макету (15.10.2026) ================= */
/* в макете пункты были кнопками, в Пульте это ссылки - вид тот же */
a.pin,a.brand,a.kpi,a.al,a.mi-l,a.b,a.co,.bnav a{text-decoration:none}
a.kpi,a.al,a.mi-l,a.co{color:var(--tx)}
.bnav a{flex:1;min-width:0;display:grid;justify-items:center;gap:1px;padding:6px 1px 4px;color:var(--hdrmu);font-size:10.5px;letter-spacing:-.01em;border-radius:var(--r2);position:relative}
.mi{padding:0 6px 0 0}
.mi-l{display:flex;gap:10px;align-items:center;flex:1;min-width:0;height:100%;padding-left:10px}
.mi-l>.ic{color:var(--zc,var(--mu))}
.mi .ext{font-size:15px;color:var(--mu);margin-left:2px}
.pin .ext{font-size:13px;margin-left:-3px;opacity:.6}
/* число карточек «Сегодня» меняется по роли */
.kpis.n1{grid-template-columns:minmax(0,1fr)}.kpis.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kpis.n3{grid-template-columns:repeat(3,minmax(0,1fr))}.kpis.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi .kval.net{font-size:20px;color:var(--mu)}
@container app (max-width:1100px){.kpis.n4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container app (max-width:720px){.kpis.n2 .kpi:first-child,.kpis.n4 .kpi:first-child{grid-column:auto}.kpis.n1 .kpi:first-child{grid-column:auto}}
.soon{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r2);border:1.5px dashed var(--ln2);color:var(--mu);font-size:13.5px}
.soon b{color:var(--tx);font-weight:600;display:block}
.soon .ic{color:var(--mu);margin-top:1px}
/* жёлтая полоса «смотрю как» */
.kak{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;border-radius:var(--r);background:var(--warnbg);color:var(--warn);font-weight:550;border:1px solid color-mix(in srgb,var(--warn) 35%,transparent)}
.kak .ic{font-size:22px}.kak form{margin-left:auto}
/* сообщения форм */
.note{padding:9px 12px;border-radius:var(--r2);font-size:14px;display:flex;gap:8px;align-items:flex-start}
.note.ok{background:var(--okbg);color:var(--ok)}.note.bad{background:var(--badbg);color:var(--bad)}.note.mu{background:var(--field);color:var(--mu)}
.note .ic{font-size:19px}
.parol1{font:600 20px/1.3 ui-monospace,Consolas,monospace;letter-spacing:.04em;padding:10px 12px;border-radius:var(--r2);background:var(--card);border:1.5px solid var(--ok);user-select:all;word-break:break-all}
/* сегменты из радиокнопок (формы «Доступов») */
.seg label{display:inline-flex;align-items:center;height:26px;padding:0 9px;border-radius:var(--r2);cursor:pointer;color:var(--mu);font-size:12.5px;font-weight:550;white-space:nowrap;position:relative}
.seg label input{position:absolute;opacity:0;pointer-events:none}
.seg label:has(input:checked){background:var(--card);color:var(--tx);box-shadow:var(--sh)}
.seg label:has(input:focus-visible){outline:2px solid var(--ac)}
:root[data-variant="v"] .seg label{border-radius:999px}
.ovr select.inp{height:30px;width:auto;font-size:13px;padding:0 8px}
.tabs{display:flex;gap:2px}
.tabs a{text-decoration:none}
.seg a{display:inline-flex;gap:6px;align-items:center;height:32px;padding:0 13px;border-radius:var(--r2);color:var(--mu);font-weight:550;font-size:14px;white-space:nowrap;text-decoration:none}
.seg a.on{background:var(--card);color:var(--tx);box-shadow:var(--sh)}
:root[data-variant="v"] .seg a{border-radius:999px}
.matrix th .ic{font-size:18px}
.matrix .del{color:var(--mu)}
/* страница входа - отдельная, без шапки */
body.vhod{overflow:auto}
body.vhod .login{position:fixed}
.lerr{background:var(--badbg);color:var(--bad);border-radius:var(--r2);padding:8px 10px;font-size:13.5px}
/* поиск Ctrl+K: выбранная строка стрелками */
#cmd .co small{white-space:nowrap}
/* шапка: имя страницы на телефоне */
.ptitle{color:var(--hdrtx)}
/* нижняя полоса телефона: значки-ссылки выглядят как кнопки макета */
@container app (max-width:720px){
 .bnav a .ic{font-size:23px}
 .bnav a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
 .bnav a.on{color:var(--hdrtx);font-weight:600}
 .bnav a.on .ic{color:var(--ac);font-variation-settings:"FILL" 1}
 :root[data-variant="v"] .bnav a.on .ic{background:var(--acs);border-radius:999px;width:52px;text-align:center;padding:2px 0}
 .kak form{margin-left:0}
}
