@font-face{font-family:'Commissioner';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/commissioner-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/commissioner-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/commissioner-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/commissioner-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/commissioner-cyrillic-800-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/commissioner-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/onest-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/onest-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/onest-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/onest-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/onest-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/onest-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Вариант A «Живая таблица»: тёмная лаборатория, плитки светятся цветом раздела */
:root{
 --bg:#0E2033;--bg2:#132B44;--line:#24425F;--tx:#E9F0F7;--mut:#9AB0C6;--dim:#6F879F;
 --proto:#5AA9FF;--data:#45D3A0;--sales:#FF9B5C;--roles:#B48CFF;--vis:#F4C84A;--trust:#FF6F8E;
 --r:10px;--f1:'Commissioner',system-ui,sans-serif;--f2:'Onest',system-ui,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font:400 16px/1.6 var(--f2)}
a{color:inherit}.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:var(--tx);color:var(--bg);padding:6px 10px;z-index:9}
:focus-visible{outline:2px solid var(--vis);outline-offset:2px}
.c-proto{--c:var(--proto)}.c-data{--c:var(--data)}.c-sales{--c:var(--sales)}.c-roles{--c:var(--roles)}.c-vis{--c:var(--vis)}.c-trust{--c:var(--trust)}
/* шапка */
.top{border-bottom:1px solid var(--line);background:rgba(14,32,51,.86);backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}
.top-in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;align-items:baseline;gap:10px;text-decoration:none}
.brand-mark{width:14px;height:14px;align-self:center;border-radius:3px;background:conic-gradient(var(--proto),var(--data),var(--sales),var(--roles),var(--vis),var(--trust),var(--proto));animation:spin 24s linear infinite}
.brand-t{font:800 19px/1 var(--f1);letter-spacing:-.01em}.brand-s{color:var(--mut);font-size:13px}
.nav{display:flex;gap:4px;flex-wrap:wrap}.nav a{text-decoration:none;color:var(--mut);padding:6px 10px;border-radius:6px;font-size:14.5px}
.nav a:hover{color:var(--tx);background:var(--bg2)}.nav a[aria-current]{color:var(--tx);background:var(--bg2)}
/* герой */
.hero{padding:56px 0 18px}.hero-in{display:grid;grid-template-columns:1.25fr 1fr;gap:20px 56px;align-items:end}
h1{font:800 clamp(38px,5.4vw,68px)/.98 var(--f1);letter-spacing:-.025em;margin:0;grid-column:1/-1;max-width:14ch}
.lead{color:var(--mut);font-size:18px;margin:6px 0 0;max-width:58ch}
.search{display:flex;gap:8px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:6px}
.search input{flex:1;min-width:0;background:transparent;border:0;color:var(--tx);font:inherit;padding:10px 12px}
.search input::placeholder{color:var(--dim)}.search input:focus{outline:none}
.search:focus-within{border-color:var(--proto)}
.search button{border:0;border-radius:8px;background:var(--tx);color:var(--bg);font:600 15px var(--f2);padding:0 18px;cursor:pointer}
/* инспектор */
.insp-wrap{position:sticky;top:64px;z-index:4;background:linear-gradient(var(--bg) 70%,rgba(14,32,51,0));padding:14px 0 10px}
.insp{display:grid;grid-template-columns:minmax(150px,auto) 1fr auto;gap:6px 22px;align-items:center;border:1px solid var(--line);border-left:4px solid var(--c,var(--dim));border-radius:var(--r);padding:12px 18px;background:var(--bg2);min-height:74px;transition:border-color .3s}
.in-t{margin:0;font:800 20px/1.1 var(--f1);color:var(--c,var(--tx))}.in-d{margin:0;color:var(--mut);font-size:15px;line-height:1.45}
.in-a{font-size:14px;color:var(--tx);white-space:nowrap}.insp:not(.is-on) .in-a{visibility:hidden}
/* таблица */
.table-area{position:relative;padding:6px 0 10px}
.edges{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:visible}
.edges path{fill:none;stroke:var(--c);stroke-width:1.6;stroke-linecap:round}
.e-hover{stroke-dasharray:5 7;animation:flow 1.6s linear infinite;opacity:.95}
.e-pulse{stroke-dasharray:14 400;stroke-width:2.2;animation:run 2.6s ease-in-out forwards;filter:drop-shadow(0 0 4px var(--c))}
.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(10,1fr);gap:8px;position:relative;z-index:1}
.el{position:relative;aspect-ratio:1/1;border-radius:var(--r);background:var(--bg2);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);padding:9px 10px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .25s,opacity .25s,border-color .25s,box-shadow .25s}
.el::before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 70% 25%,color-mix(in srgb,var(--c) 34%,transparent),transparent 55%);opacity:.35;animation:breathe 9s ease-in-out infinite;pointer-events:none}
.d1::before{animation-delay:-1s}.d2::before{animation-delay:-2s}.d3::before{animation-delay:-3s}.d4::before{animation-delay:-4s}.d5::before{animation-delay:-5s}.d6::before{animation-delay:-6s}.d7::before{animation-delay:-7s}.d8::before{animation-delay:-8s}.d9::before{animation-delay:-8.6s}
.el .n{font:600 11px/1 var(--f1);color:var(--dim);position:relative}
.el-a{font:800 clamp(14px,1.55vw,21px)/1.05 var(--f1);letter-spacing:-.01em;color:var(--c);text-decoration:none;overflow-wrap:normal;hyphens:manual}
.el-a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:var(--r)}
.is-lg .el-a{font-size:clamp(12px,1.12vw,16px)}.is-xl .el-a{font-size:clamp(10.5px,.92vw,13.5px)}
.el .l{font-size:11.5px;line-height:1.25;color:var(--mut);position:relative}
.is-pub::after{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 16px 16px 0;border-color:transparent var(--c) transparent transparent;animation:flick 5s steps(1) infinite}
.is-new .n::after{content:" новое";color:var(--c)}
.has-on .el{opacity:.32}.has-on .el.is-on,.has-on .el.is-rel{opacity:1}
.el.is-on{border-color:var(--c);box-shadow:0 0 0 1px var(--c),0 0 26px color-mix(in srgb,var(--c) 45%,transparent);transform:translateY(-2px)}
.el.is-rel{border-color:var(--c)}
.el.is-ping{border-color:var(--c);box-shadow:0 0 18px color-mix(in srgb,var(--c) 40%,transparent)}
.legend{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13.5px;color:var(--mut)}
.legend .sw{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--c);margin-right:7px}
.legend-note{color:var(--dim);font-size:13px;margin:8px 0 0}
/* зоны */
.zone{padding:72px 0}.zone h2{font:800 clamp(28px,3.2vw,40px)/1.05 var(--f1);letter-spacing:-.02em;margin:0 0 12px}
.zone-lead{color:var(--mut);max-width:70ch;margin:0 0 28px}
.zone-new{background:linear-gradient(180deg,var(--bg) 0,#102843 100%)}
.nw-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.nw{position:relative;border-top:3px solid var(--c);background:var(--bg2);border-radius:0 0 var(--r) var(--r);padding:16px 18px}
.nw-a{font:800 19px/1.15 var(--f1);color:var(--tx);text-decoration:none}.nw-a::after{content:"";position:absolute;inset:0}
.nw:hover{background:#18344F}.nw-c{display:block;color:var(--c);font-size:13px;margin:4px 0 6px}.nw p{margin:0;color:var(--mut);font-size:14.5px;line-height:1.5}
.zone-cats{background:#F2F5F8;color:#13263A}.zone-cats .zone-lead{color:#4C6178}
.cats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.cat{padding:22px 24px 24px;border-top:6px solid var(--c);background:#fff;margin:0 10px 20px 0}
.zone-cats .c-proto{--c:#2E6FA8}.zone-cats .c-data{--c:#23865F}.zone-cats .c-sales{--c:#C4572A}.zone-cats .c-roles{--c:#7650A8}.zone-cats .c-vis{--c:#A87A0C}.zone-cats .c-trust{--c:#B02D55}
.cat h3{margin:0 0 6px;font:800 21px/1.15 var(--f1)}.cat h3 a{text-decoration:none;color:var(--c)}
.cat p{margin:0 0 8px;color:#3D5168;font-size:15px}.cat-n{font-weight:600;color:#13263A!important}
.cat-terms{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.cat-terms a{display:inline-block;font-size:13.5px;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--c) 10%,#fff);color:#13263A;text-decoration:none}
.cat-terms a:hover{background:color-mix(in srgb,var(--c) 22%,#fff)}
.zone-how .how{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.how-i{border:1px solid var(--line);border-radius:var(--r);padding:20px 22px}.how-i h3{margin:0 0 8px;font:700 19px/1.2 var(--f1)}.how-i p{margin:0;color:var(--mut)}
.how-i a{color:var(--proto)}
.zone-api{background:#0A1828;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.api-in{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}.api-in p{color:var(--mut)}
.api-l{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 22px;font-size:15px}.api-l dt{color:var(--dim)}.api-l dd{margin:0;font-family:var(--f1);font-weight:600}.api-l a{color:var(--data)}
.eco{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:st}
.eco-st{position:relative;padding:18px 16px 18px 0;border-top:2px solid var(--line)}
.eco-st::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--vis);box-shadow:0 0 0 4px var(--bg);animation:breathe 6s ease-in-out infinite}
.eco-st:nth-child(2)::before{background:var(--trust);animation-delay:-1.2s}.eco-st:nth-child(3)::before{background:var(--data);animation-delay:-2.4s}.eco-st:nth-child(4)::before{background:var(--sales);animation-delay:-3.6s}.eco-st:nth-child(5)::before{background:var(--roles);animation-delay:-4.8s}
.eco-st h3{margin:6px 0 10px;font:700 15px/1.2 var(--f1);color:var(--mut)}
.eco-st ul{list-style:none;padding:0;margin:0}.eco-st li{margin:0 0 12px}
.eco-a{display:block;font:700 17px/1.2 var(--f1);color:var(--tx);text-decoration:none}a.eco-a:hover{color:var(--vis)}
.eco-st li span:last-child{display:block;color:var(--mut);font-size:13.5px;line-height:1.4;margin-top:2px}
.is-here .eco-a{color:var(--vis)}
/* подвал */
.foot{border-top:1px solid var(--line);padding:40px 0 48px;color:var(--mut);font-size:14px}
.foot-in{display:grid;grid-template-columns:1.4fr 1fr;gap:32px}.foot-name{color:var(--tx);font:700 16px var(--f1);margin:0 0 6px}.foot p{margin:0 0 8px}
.foot-l{list-style:none;padding:0;margin:0}.foot-l li{margin:0 0 6px}.foot a{color:var(--mut)}.foot a:hover{color:var(--tx)}
.addr summary{cursor:pointer;color:var(--tx);display:inline-block}.addr p{margin:6px 0 0;max-width:52ch}
.fbadge{margin:24px 0 0}.fbadge a{display:inline-block;line-height:0}.fbadge img{max-width:100%;height:auto}
/* страница термина */
.crumbs{padding:28px 0 0;color:var(--dim);font-size:14px}.crumbs a{color:var(--mut)}
.t-head{display:grid;grid-template-columns:180px 1fr;gap:32px;align-items:end;padding:26px 0 30px;border-bottom:1px solid var(--line)}
.t-sym{aspect-ratio:1/1;border-radius:16px;border:1px solid var(--c);background:var(--bg2);padding:14px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;box-shadow:0 0 40px color-mix(in srgb,var(--c) 28%,transparent)}
.t-sym::before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 70% 25%,color-mix(in srgb,var(--c) 40%,transparent),transparent 55%);animation:breathe 7s ease-in-out infinite}
.t-sym .n{position:relative;color:var(--dim);font:600 13px var(--f1)}.t-sym .s{position:relative;font:800 26px/1.02 var(--f1);color:var(--c);overflow-wrap:anywhere}.t-sym .l{position:relative;font-size:13px;color:var(--mut)}
.t-cat{margin:0 0 6px;color:var(--c);font-weight:600}.term h1{font-size:clamp(34px,4.6vw,56px);max-width:none}
.t-full{color:var(--mut);margin:8px 0 0;font-size:17px}.t-pub{display:inline-block;margin:12px 0 0;font-size:14px;color:var(--c);border:1px solid var(--c);border-radius:999px;padding:3px 12px}
.t-grid{display:grid;grid-template-columns:1fr 360px;gap:48px;padding:34px 0}
.term h2{font:700 15px/1.2 var(--f1);color:var(--mut);margin:0 0 10px}
.t-def{background:linear-gradient(135deg,color-mix(in srgb,var(--c) 18%,var(--bg2)),var(--bg2));border-radius:14px;padding:22px 26px;margin:0 0 32px}
.t-def p{margin:0;font:600 21px/1.45 var(--f2);color:var(--tx)}
.t-body p{max-width:66ch;color:#D3DEE9;margin:0 0 14px;font-size:17px;line-height:1.65}
.t-rel{margin-top:32px}.rts{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.rt{position:relative;border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-radius:var(--r);padding:12px 14px;background:var(--bg2)}
.rt a{font:800 16px/1.1 var(--f1);color:var(--c);text-decoration:none}.rt a::after{content:"";position:absolute;inset:0}.rt span{display:block;font-size:12.5px;color:var(--mut);margin-top:4px}
.t-side section{border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:0 0 16px;background:#102740}
.t-pass table{border-collapse:collapse;width:100%;font-size:14.5px}.t-pass th{text-align:left;color:var(--dim);font-weight:400;padding:7px 12px 7px 0;vertical-align:top;width:42%}.t-pass td{padding:7px 0;border-bottom:1px solid var(--line)}
.t-pass a,.t-eco a{color:var(--data)}
.t-eco ul{list-style:none;padding:0;margin:0}.t-eco li{margin:0 0 12px}.t-eco a{font-weight:600}.t-eco span{display:block;color:var(--mut);font-size:13.5px}
.t-pn{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0 40px}.t-pn a{color:var(--mut)}
/* движение */
@keyframes breathe{0%,100%{opacity:.2}50%{opacity:.55}}
@keyframes flick{0%,92%,100%{opacity:1}94%{opacity:.35}96%{opacity:.9}}
@keyframes flow{to{stroke-dashoffset:-24}}
@keyframes run{0%{stroke-dashoffset:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{stroke-dashoffset:-420;opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* адаптив */
@media (max-width:1100px){.grid{grid-template-columns:repeat(6,1fr)}.cats{grid-template-columns:repeat(2,1fr)}.eco{grid-template-columns:repeat(3,1fr);row-gap:20px}.t-grid{grid-template-columns:1fr}}
@media (max-width:720px){.wrap{padding:0 16px}.hero-in{grid-template-columns:1fr}.grid{grid-template-columns:repeat(3,1fr)}.el-a{font-size:17px}.insp{grid-template-columns:1fr}.cats,.zone-how .how,.api-in,.foot-in,.eco{grid-template-columns:1fr}.cat{margin-right:0}.t-head{grid-template-columns:110px 1fr;gap:18px}.t-sym .s{font-size:18px}.insp-wrap{position:static}.nav{gap:0}}
.el{cursor:pointer}.el.is-on .el-a{text-decoration:underline;text-underline-offset:3px}
/* наведение: плитка «загорается» цветом своего раздела (связи — только по нажатию) */
.el:hover,.el:focus-within{border-color:var(--c);background:color-mix(in srgb,var(--c) 17%,var(--bg2));transform:translateY(-3px);box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 60%,transparent),0 8px 28px color-mix(in srgb,var(--c) 38%,transparent)}
.el:hover::before,.el:focus-within::before{animation:none;opacity:.9}
.el:hover .el-a,.el:focus-within .el-a{color:color-mix(in srgb,var(--c) 55%,#fff)}
.el:hover .l,.el:focus-within .l{color:var(--tx)}
.el:hover .n,.el:focus-within .n{color:var(--c)}
.has-on .el:hover{opacity:1}
.el:focus-within{outline:2px solid var(--c);outline-offset:2px}.el-a:focus-visible{outline:none}
/* карточка значения рядом с плиткой */
.tbl-hint{color:var(--mut);font-size:15px;margin:26px 0 12px;max-width:80ch}
.pop{position:absolute;z-index:6;display:none;background:#0B1A2B;border:1px solid var(--c);border-top:4px solid var(--c);border-radius:var(--r);padding:16px 18px 16px;box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 30px color-mix(in srgb,var(--c) 25%,transparent)}
.pop.is-on{display:block;animation:popin .22s ease-out}
.pop-t{margin:0 26px 6px 0;font:800 20px/1.15 var(--f1);color:var(--c)}
.pop-d{margin:0 0 12px;color:var(--tx);font-size:15px;line-height:1.5}
.pop-a{display:inline-block;font-weight:600;font-size:14.5px;color:var(--bg);background:var(--c);padding:7px 14px;border-radius:8px;text-decoration:none}
.pop-a:hover{filter:brightness(1.1)}
.pop-x{position:absolute;top:8px;right:8px;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--mut);font-size:22px;line-height:1;cursor:pointer}.pop-x:hover{background:var(--bg2);color:var(--tx)}
@keyframes popin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
/* ---- таблица: разделы — строками, время — слева направо ---- */
.pt-title{font:800 clamp(26px,3vw,36px)/1.1 var(--f1);margin:46px 0 14px;letter-spacing:-.02em}
.pt-tools{display:flex;gap:14px 20px;align-items:center;flex-wrap:wrap;margin:0 0 8px}
.pt-find{display:flex;align-items:center;gap:10px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:4px 6px 4px 14px;min-width:min(400px,100%)}
.pt-find span{font-size:14px;color:var(--mut);white-space:nowrap}.pt-find input{flex:1;min-width:0;background:transparent;border:0;color:var(--tx);font:inherit;padding:9px 6px}.pt-find input:focus{outline:none}.pt-find:focus-within{border-color:var(--vis)}
.pt-view{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.pt-view button{all:unset;cursor:pointer;padding:9px 16px;font-size:14.5px;color:var(--mut)}.pt-view button[aria-pressed=true]{background:var(--tx);color:var(--bg);font-weight:600}.pt-view button:focus-visible{outline:2px solid var(--vis);outline-offset:-2px}
.pt-note{margin:0;color:var(--mut);font-size:14.5px;max-width:70ch;flex-basis:100%}
.ptable{position:relative;z-index:1;display:flex;flex-direction:column;gap:14px}
.pt-row{display:grid;grid-template-columns:190px 1fr;gap:18px;padding:16px 0 18px;border-top:1px solid var(--line)}
.pt-head{all:unset;box-sizing:border-box;cursor:pointer;align-self:start;display:flex;flex-direction:column;gap:6px;padding:14px 14px 14px 16px;border-radius:12px;border-left:5px solid var(--c);background:linear-gradient(135deg,color-mix(in srgb,var(--c) 26%,var(--bg2)),var(--bg2));position:sticky;top:76px}
.pt-head:hover,.pt-head[aria-pressed=true]{background:color-mix(in srgb,var(--c) 40%,var(--bg2))}.pt-head:focus-visible{outline:2px solid var(--c);outline-offset:2px}
.pt-hn{font:800 18px/1.15 var(--f1);color:#fff}.pt-hc{font-size:13px;color:var(--c);font-weight:600}.pt-hd{font-size:12.5px;line-height:1.4;color:var(--mut)}
.pt-groups{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:flex-start}
.pt-g{display:flex;flex-direction:column;gap:8px}
.pt-gl{font:600 13px var(--f1);color:var(--dim);display:flex;align-items:center;gap:8px}
.pt-gl::after{content:"";height:1px;flex:1;min-width:20px;background:linear-gradient(90deg,var(--line),transparent)}
.pt-tiles{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.ptable .el{width:132px;aspect-ratio:1/1;padding:10px 11px}
.ptable .el-a{font-size:21px}.ptable .is-lg .el-a{font-size:16.5px}.ptable .is-xl .el-a{font-size:14px}
.ptable .el .l{font-size:12px}.ptable .el .n{font-size:11px}
.has-q .el{opacity:.18}.has-q .el.is-match{opacity:1;border-color:var(--c);box-shadow:0 0 0 2px var(--c),0 0 22px color-mix(in srgb,var(--c) 50%,transparent)}
.has-col .pt-row{opacity:.28}.col-proto .pt-row.c-proto,.col-data .pt-row.c-data,.col-sales .pt-row.c-sales,.col-roles .pt-row.c-roles,.col-vis .pt-row.c-vis,.col-trust .pt-row.c-trust{opacity:1}
/* список */
.pt-list{display:none}.is-list .ptable,.is-list .tbl-hint{display:none}.is-list .pt-list{display:block}
.pl-sec{border-top:4px solid var(--c);padding:18px 0 8px;margin:0 0 10px}.pl-sec h3{font:800 24px/1.15 var(--f1);color:var(--c);margin:0 0 4px}
.pl-per{font:600 14px var(--f1);color:var(--dim);margin:16px 0 8px}
.pl-l{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px 18px}
.pl-l li{position:relative;background:var(--bg2);border-radius:var(--r);padding:12px 16px;border-left:3px solid var(--c)}
.pl-l a{font:800 18px/1.2 var(--f1);color:var(--tx);text-decoration:none}.pl-l a::after{content:"";position:absolute;inset:0}.pl-l li:hover{background:#18344F}
.pl-l span{display:block;font-size:12.5px;color:var(--c);margin:3px 0 4px}.pl-l p{margin:0;font-size:14.5px;color:var(--mut);line-height:1.5}
@media (max-width:900px){.pt-row{grid-template-columns:1fr;gap:12px}.pt-head{position:static}.ptable .el{width:calc((100vw - 32px - 20px)/3)}.ptable .el-a{font-size:17px}.ptable .is-lg .el-a{font-size:14px}.ptable .is-xl .el-a{font-size:12.5px}.pt-groups{gap:12px}.pt-g{width:100%}}
.pl-l li.is-hide{display:none}

/* ---- главная: шапка с изображением ---- */
.hero-img{position:relative;padding:0;overflow:hidden;background:#091725}
.hero-pic{position:relative;width:100%;height:100vh;height:100svh;min-height:560px;max-height:1200px;overflow:hidden}
.hero-box{position:absolute;right:0;top:0;width:max(100%,calc(100svh * 2576 / 1438),calc(560px * 2576 / 1438));aspect-ratio:2576/1438}
.hero-pic picture,.hero-pic img{display:block;width:100%;height:100%;object-fit:cover}
.hero-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,23,37,.92) 0,rgba(9,23,37,.72) 28%,rgba(9,23,37,0) 52%),linear-gradient(0deg,var(--bg) 0,rgba(14,32,51,0) 22%);pointer-events:none}
.hero-txt{position:absolute;left:0;right:0;top:52%;transform:translateY(-50%);z-index:2}
.hero-txt h1{max-width:11ch;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.hero-txt .lead{max-width:44ch;margin:18px 0 26px;color:#C7D5E3}
.hero-txt .search{max-width:520px;background:rgba(19,43,68,.86)}
/* живые огоньки на плитках картинки — мелко и медленно */
.hg{position:absolute;width:3.2%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,var(--g) 0,transparent 68%);mix-blend-mode:screen;opacity:.35;animation:hglow 6s ease-in-out infinite;pointer-events:none;z-index:1}
.hg-vis{--g:rgba(244,200,74,.9)}.hg-proto{--g:rgba(90,169,255,.9)}.hg-data{--g:rgba(69,211,160,.9)}.hg-sales{--g:rgba(255,155,92,.9)}.hg-roles{--g:rgba(180,140,255,.9)}.hg-trust{--g:rgba(255,111,142,.9)}
.hg-card{--g:rgba(240,246,255,.85);width:5%}.hg-eye{--g:rgba(255,190,150,.95);width:4.2%;animation-duration:4.2s}
.hg-0{left:53.4%;top:86.9%;animation-delay:-1s}.hg-1{left:50.4%;top:64.7%;animation-delay:-3.4s}.hg-2{left:90%;top:10.1%;animation-delay:-2.2s}.hg-3{left:84.1%;top:23.1%;animation-delay:-4.6s}
.hg-4{left:94.2%;top:38.7%;animation-delay:-.4s}.hg-5{left:90.7%;top:80.2%;animation-delay:-5.2s}.hg-6{left:60.7%;top:32.4%;animation-delay:-2.8s}.hg-7{left:69.3%;top:23.5%}
@keyframes hglow{0%,100%{opacity:.18;transform:translate(-50%,-50%) scale(.85)}50%{opacity:.62;transform:translate(-50%,-50%) scale(1.08)}}
.tbl-hint{margin-top:10px}
@media (max-width:900px){
 .hero-pic{height:auto;min-height:0}.hero-box{position:relative}
 .hero-pic::after{background:linear-gradient(0deg,var(--bg) 0,rgba(14,32,51,0) 35%)}
 .hero-txt{position:relative;transform:none;top:auto;padding:4px 16px 18px}
 .hero-txt h1{max-width:none}
}
/* ---- служебные страницы ---- */
.page{padding:34px 0 64px}.page h1{font-size:clamp(32px,4.4vw,52px);max-width:none;margin:0 0 10px}
.sub{color:var(--mut);max-width:72ch;margin:0 0 24px;font-size:17px}
.blk{border-top:1px solid var(--line);padding:22px 0 6px;max-width:80ch}.blk h2{font:700 22px/1.2 var(--f1);margin:0 0 10px}.blk p,.blk li{color:#D3DEE9}.blk a{color:var(--data)}
.blk code,.page code{font-family:var(--f1);font-weight:600;background:var(--bg2);padding:1px 6px;border-radius:5px;font-size:.92em}
.abc-list{list-style:none;padding:0;margin:0;columns:3 260px;column-gap:26px}
.abc-list li{break-inside:avoid;padding:8px 0 8px 14px;border-left:3px solid var(--c);margin:0 0 6px}
.abc-list a{font:700 17px/1.2 var(--f1);color:var(--tx);text-decoration:none}.abc-list a:hover{color:var(--c)}.abc-list span,.abc-list p{display:block;font-size:13px;color:var(--mut);margin:2px 0 0}
.kat{border-top:4px solid var(--c);padding:22px 0 10px;margin:0 0 18px}.kat h2{font:800 26px/1.15 var(--f1);color:var(--c);margin:0 0 6px}.kat>p{color:var(--mut);max-width:70ch;margin:0 0 16px}
.kat-l{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px 28px}
.kat-l li{background:var(--bg2);border-radius:var(--r);padding:14px 16px}.kat-l a{font:700 17px/1.2 var(--f1);color:var(--tx)}.kat-l p{margin:6px 0 0;font-size:14px;color:var(--mut);line-height:1.5}
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.src-t{border-collapse:collapse;width:100%;font-size:14.5px;min-width:720px}.src-t th{text-align:left;color:var(--dim);font-weight:600;padding:10px 12px;border-bottom:2px solid var(--line)}.src-t td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.src-t a{color:var(--tx)}.src-t td.src a{color:var(--data);word-break:break-all}
.search-page{max-width:640px;margin:0 0 14px}
.doc h2{font:700 22px/1.2 var(--f1);margin:28px 0 10px}.doc p,.doc li{color:#D3DEE9;max-width:76ch}.doc a{color:var(--data)}
.p404 .big404{font:800 clamp(90px,16vw,180px)/.9 var(--f1);margin:10px 0 0;background:linear-gradient(90deg,var(--proto),var(--data),var(--sales),var(--roles),var(--vis),var(--trust));-webkit-background-clip:text;background-clip:text;color:transparent}
.p404 h2{font:700 20px var(--f1);margin:30px 0 12px}
.btns{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 10px}.btn{display:inline-block;background:var(--tx);color:var(--bg);text-decoration:none;font-weight:600;padding:10px 18px;border-radius:10px}.btn-2{background:transparent;color:var(--tx);border:1px solid var(--line)}
.t-pn span{color:var(--dim);font-size:13px}.t-pn a{font:700 16px var(--f1);color:var(--tx)}.t-pn-r{text-align:right}
mark{background:color-mix(in srgb,var(--vis) 40%,transparent);color:inherit;border-radius:3px;padding:0 2px}
/* липкая лента над таблицей: разделы, поиск, вид */
.pt-bar{position:sticky;top:64px;z-index:5;background:rgba(14,32,51,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 10px}
.pt-bar-in{display:flex;align-items:center;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.pt-chips{display:flex;gap:6px;flex-wrap:wrap}
.pt-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:13.5px;font-weight:500;text-decoration:none;color:var(--tx);background:color-mix(in srgb,var(--c) 14%,var(--bg2));border:1px solid color-mix(in srgb,var(--c) 45%,transparent)}
.pt-chip::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c)}
.pt-chip:hover,.pt-chip.is-cur{background:color-mix(in srgb,var(--c) 34%,var(--bg2));border-color:var(--c)}
.pt-bar .pt-tools{margin:0;flex-wrap:nowrap}.pt-bar .pt-find{min-width:240px;padding:2px 6px 2px 10px}.pt-bar .pt-find input{padding:7px 4px}.pt-bar .pt-view button{padding:7px 14px}
.pt-note{margin:4px 0 10px}
.pt-row{scroll-margin-top:150px}.pl-sec{scroll-margin-top:150px}
.pt-head{top:140px}
@media (max-width:900px){.pt-bar{top:0}.pt-bar-in{gap:8px}.pt-chips{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:2px;scrollbar-width:none}.pt-chip{white-space:nowrap}.pt-bar .pt-tools{width:100%}.pt-bar .pt-find{flex:1;min-width:0}}
@media (max-width:900px){.top{position:static}}
/* главная: шапка сайта прозрачная поверх фото, при прокрутке — плотная */
.home .top{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom-color:transparent;backdrop-filter:none;transition:background .3s,border-color .3s}
.home .top.is-solid{background:rgba(14,32,51,.92);backdrop-filter:blur(8px);border-bottom-color:var(--line)}
.home .top .nav a{color:#D7E2EE}.home .top .nav a[aria-current]{background:rgba(255,255,255,.12)}
.home .hero-pic::before{content:"";position:absolute;left:0;right:0;top:0;height:140px;background:linear-gradient(180deg,rgba(9,23,37,.7),rgba(9,23,37,0));z-index:1;pointer-events:none}
@media (max-width:900px){.home .top{position:absolute}.home .top.is-solid{background:transparent;backdrop-filter:none}
 .hero-pic{height:auto;min-height:0;max-height:none}.hero-box{position:relative;width:100%}}
