/* ОТБОР.РФ — спокойный технический справочник. Системные шрифты, без изображений устройств. */
:root{
  --bg:#f6f8f9;--panel:#fff;--ink:#16212a;--muted:#5a6b78;--line:#dbe3e8;--soft:#eef3f5;
  --accent:#0f6b6b;--accent-ink:#fff;--accent-soft:#dff1f0;--link:#0b5f9e;
  --yes:#136c3a;--yes-bg:#e1f4e8;--no:#9a2b2b;--no-bg:#fbe6e6;--unk:#6b7780;--unk-bg:#eef1f3;--warn-bg:#fff4d6;--warn:#7a5a00;
  --shadow:0 1px 2px rgba(20,40,50,.06),0 4px 14px rgba(20,40,50,.05);--r:10px;
}
:root[data-theme=dark]{
  --bg:#0f161b;--panel:#17212a;--ink:#e6edf1;--muted:#9aaab6;--line:#2a3944;--soft:#1d2a33;
  --accent:#3fb7b0;--accent-ink:#06201f;--accent-soft:#16363a;--link:#7cc0f2;
  --yes:#6fd49b;--yes-bg:#173525;--no:#ef8f8f;--no-bg:#3a1c1c;--unk:#9aa8b2;--unk-bg:#222e37;--warn-bg:#3b3316;--warn:#f0cf6b;--shadow:none;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]){
    --bg:#0f161b;--panel:#17212a;--ink:#e6edf1;--muted:#9aaab6;--line:#2a3944;--soft:#1d2a33;
    --accent:#3fb7b0;--accent-ink:#06201f;--accent-soft:#16363a;--link:#7cc0f2;
    --yes:#6fd49b;--yes-bg:#173525;--no:#ef8f8f;--no-bg:#3a1c1c;--unk:#9aa8b2;--unk-bg:#222e37;--warn-bg:#3b3316;--warn:#f0cf6b;--shadow:none;
  }
}
*{box-sizing:border-box}
html{font-size:17px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;line-height:1.55}
a{color:var(--link);text-underline-offset:2px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
h1{font-size:1.9rem;line-height:1.2;margin:.2em 0 .4em}
h2{font-size:1.3rem;line-height:1.3;margin:1.6em 0 .6em}
h3{font-size:1.05rem;margin:0 0 .2em;line-height:1.3}
p{margin:.5em 0}
code{background:var(--soft);padding:.1em .35em;border-radius:5px;font-size:.92em}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:var(--accent-ink);padding:.5rem 1rem;z-index:100}
.skip:focus{left:0}
.lead{font-size:1.08rem;color:var(--muted);max-width:75ch}
.hint{color:var(--muted);font-size:.93rem;max-width:80ch}
.sub{color:var(--muted);font-size:.9rem;margin:0}
.unk{color:var(--unk)}
.empty{padding:1rem;border:1px dashed var(--line);border-radius:var(--r);color:var(--muted)}

/* Шапка */
.top{position:sticky;top:0;z-index:50;background:var(--panel);border-bottom:1px solid var(--line)}
.top-in{max-width:1680px;margin:0 auto;padding:.55rem 1rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.15rem;color:var(--ink);text-decoration:none}
.logo-mark{width:26px;height:26px;border-radius:7px;background:var(--accent);position:relative;display:inline-block}
.logo-mark::after{content:"";position:absolute;left:8px;top:4px;width:10px;height:18px;border:2px solid var(--accent-ink);border-radius:3px}
.menu{display:flex;gap:.15rem;flex-wrap:wrap;flex:1 1 auto}
.menu a{color:var(--ink);text-decoration:none;padding:.4rem .7rem;border-radius:8px;font-weight:500}
.menu a:hover{background:var(--soft)}
.menu a.on{background:var(--accent-soft);color:var(--accent);font-weight:650}
.topsearch{position:relative;display:flex;gap:.3rem;flex:0 1 330px;min-width:200px}
.topsearch input{flex:1;min-width:0}
.themebtn{background:none;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:1.1rem;padding:.3rem .6rem;cursor:pointer}
input,select,button,textarea{font:inherit;color:inherit}
input[type=search],input[type=text],input[type=number],input[type=password],select{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:.45rem .6rem;min-height:2.4rem;width:100%}
input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent)}
input[type=range]{width:100%;accent-color:var(--accent)}
.topsearch button,.btn{background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;min-height:2.4rem;line-height:1.4}
.topsearch button{padding:.4rem .8rem}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.btn.small{padding:.25rem .7rem;min-height:2rem;font-size:.9rem}
.btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}
.linkbtn{background:none;border:0;color:var(--link);cursor:pointer;padding:0;font-size:.88rem;text-decoration:underline}
.suggest{position:absolute;top:100%;left:0;right:0;margin:.25rem 0 0;padding:.25rem;list-style:none;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);z-index:60;max-height:70vh;overflow:auto}
.suggest.static{position:static;box-shadow:none}
.suggest li a,.suggest li button{display:block;width:100%;text-align:left;background:none;border:0;padding:.45rem .6rem;border-radius:7px;color:var(--ink);text-decoration:none;cursor:pointer}
.suggest li.act a,.suggest li.act button,.suggest li a:hover,.suggest li button:hover{background:var(--accent-soft)}
.suggest small{color:var(--muted);margin-left:.4rem}

/* Каркас */
.shell{max-width:1680px;margin:0 auto;padding:1rem;display:block}
.shell.has-side{display:grid;grid-template-columns:270px minmax(0,1fr);gap:1.5rem;align-items:start}
.side{position:sticky;top:4.2rem;max-height:calc(100vh - 5rem);overflow:auto;padding-right:.2rem}
.sidebox{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.8rem .9rem;margin-bottom:1rem}
.sidebox h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .5rem}
.sidebox ul{list-style:none;margin:0;padding:0}
.sidebox li{display:flex;justify-content:space-between;gap:.5rem}
.sidebox li a{display:block;padding:.2rem 0;color:var(--ink);text-decoration:none;flex:1}
.sidebox li a:hover{color:var(--accent);text-decoration:underline}
.sidebox .n{color:var(--muted);font-size:.88rem}
.more{margin:.4rem 0 0;font-size:.92rem}
.main{min-width:0}
.crumbs{font-size:.9rem;color:var(--muted);margin-bottom:.4rem}
.crumbs a{color:var(--muted)}

/* Фильтры */
.filterbox{padding:.6rem .8rem}
.filters-head{display:flex;justify-content:space-between;align-items:baseline}
.filters-head h2{margin:0;font-size:1.05rem;text-transform:none;letter-spacing:0;color:var(--ink)}
.filters details{border-top:1px solid var(--line);padding:.4rem 0}
.filters summary{cursor:pointer;font-weight:600;padding:.25rem 0}
.filters label{display:block;font-size:.88rem;color:var(--muted);margin:.45rem 0}
.filters label select,.filters label input{margin-top:.15rem;color:var(--ink)}
.filters .chk{display:flex;gap:.5rem;align-items:flex-start;color:var(--ink)}
.filters .pair{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.saveset{display:flex;gap:.4rem;flex-wrap:wrap}
.chips{list-style:none;display:flex;gap:.4rem;flex-wrap:wrap;padding:0;margin:.5rem 0}
.chips a{display:inline-block;background:var(--accent-soft);color:var(--accent);text-decoration:none;border-radius:999px;padding:.2rem .7rem;font-size:.92rem}

/* Список */
.listbar{display:flex;gap:1rem;flex-wrap:wrap;justify-content:space-between;align-items:end;margin:.6rem 0 .8rem}
.found{margin:0}
.ctrls{display:flex;gap:.8rem;flex-wrap:wrap;align-items:end}
.ctrls label{font-size:.85rem;color:var(--muted);display:grid;gap:.15rem}
.ctrls select{min-width:9rem}
.viewsw{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.viewsw a{padding:.4rem .8rem;text-decoration:none;color:var(--ink);background:var(--panel)}
.viewsw a.on{background:var(--accent);color:var(--accent-ink)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.9rem}
.cards.small{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.85rem .95rem;display:flex;flex-direction:column;gap:.3rem;box-shadow:var(--shadow)}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--accent);text-decoration:underline}
.facts{margin:.3rem 0;display:grid;gap:.15rem}
.facts div{display:grid;grid-template-columns:6.2rem 1fr;gap:.4rem;font-size:.93rem}
.facts dt{color:var(--muted)}.facts dd{margin:0;font-variant-numeric:tabular-nums}
.tags{display:flex;gap:.3rem;flex-wrap:wrap;margin:.2rem 0}
.tags span{background:var(--soft);border-radius:6px;padding:.05rem .45rem;font-size:.82rem;font-weight:600}
.card .btn{align-self:flex-start;margin-top:auto}
.why{color:var(--muted);font-size:.92rem}
.pager{display:flex;gap:.3rem;flex-wrap:wrap;margin:1.2rem 0;align-items:center}
.pager a,.pager .cur{padding:.35rem .75rem;border:1px solid var(--line);border-radius:8px;text-decoration:none;background:var(--panel);min-width:2.4rem;text-align:center}
.pager .cur{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}
.pager .gap{color:var(--muted)}

/* Таблицы */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);max-width:100%}
table.data{border-collapse:collapse;width:100%;font-size:.95rem;font-variant-numeric:tabular-nums}
table.data th,table.data td{padding:.5rem .7rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
table.data thead th{background:var(--soft);position:sticky;top:0;white-space:nowrap}
table.data tbody th{font-weight:600}
table.data.compact th,table.data.compact td{padding:.35rem .6rem}
table.data .sticky{position:sticky;left:0;background:var(--panel);z-index:1;min-width:11rem}
table.data thead .sticky{background:var(--soft);z-index:2}
table.cmp th,table.cmp td{min-width:11rem}
table.cmp tr.grp th{background:var(--accent-soft);color:var(--accent);position:static}
table.cmp tr.diff td{background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}
.coltoggle{margin:.4rem 0}
.coltoggle div{display:flex;flex-wrap:wrap;gap:.3rem 1rem;padding:.5rem 0}
.coltoggle label{font-size:.9rem}

/* Карточка телефона */
.phead .meta-line{color:var(--muted);margin:.2rem 0}
.status{font-weight:600}.st-available{color:var(--yes)}.st-discontinued{color:var(--muted)}.st-announced,.st-upcoming{color:var(--warn)}.st-cancelled{color:var(--no)}
.actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.8rem 0}
.notice{background:var(--accent-soft);border-radius:var(--r);padding:.7rem .9rem}
.notice.warn{background:var(--warn-bg);color:var(--ink);border-left:4px solid var(--warn)}
.keyblock{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.2rem 1rem 1rem;margin:1rem 0}
.kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.5rem 1.4rem;margin:.5rem 0}
.kv div{border-bottom:1px solid var(--line);padding:.35rem 0}
.kv dt{color:var(--muted);font-size:.86rem}.kv dd{margin:0;font-size:1.05rem;font-weight:550}
.chiplink{font-size:.85rem;font-weight:400;margin-left:.4rem}
.flags{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.4rem;padding:0;margin:.6rem 0}
.flags li{display:flex;justify-content:space-between;gap:.5rem;border-radius:8px;padding:.35rem .6rem;font-size:.92rem}
.fl-yes{background:var(--yes-bg);color:var(--yes)}.fl-no{background:var(--no-bg);color:var(--no)}.fl-unk{background:var(--unk-bg);color:var(--unk)}
.specgroup{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);margin:.5rem 0;padding:0 .9rem}
.specgroup summary{cursor:pointer;font-weight:650;padding:.65rem 0}
.spec{margin:0 0 .7rem}
.spec div{display:grid;grid-template-columns:minmax(10rem,16rem) 1fr;gap:.8rem;padding:.4rem 0;border-top:1px solid var(--line)}
.spec dt{color:var(--muted)}.spec dd{margin:0;overflow-wrap:anywhere}
.plainlist{padding-left:1.1rem}.plainlist.cols{columns:2 340px}
.plainlist.cols li{break-inside:avoid;margin:.2rem 0}
.gens{display:flex;justify-content:space-between;gap:1rem;margin:1.5rem 0}
.srcfoot,.results,.notice{overflow-wrap:anywhere}
.srcfoot{border-top:1px solid var(--line);margin-top:2rem;color:var(--muted);font-size:.92rem}
.srcfoot h2{font-size:1rem}

/* Главная, пилюли */
.hero{padding:1.2rem 0 .4rem}.hero h1{font-size:2.2rem}
.herosearch{display:flex;gap:.5rem;max-width:760px;margin:1rem 0;position:relative}
.herosearch input{font-size:1.1rem;padding:.7rem .9rem}
.paths{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;margin:1rem 0}
.path{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--r);padding:.9rem 1rem;text-decoration:none;color:var(--ink);display:grid;gap:.2rem;box-shadow:var(--shadow)}
.path:hover{border-color:var(--accent)}.path span{color:var(--muted);font-size:.93rem}
.sechead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem}
.pills{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:.4rem 0}
.pills a{display:inline-block;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:.25rem .8rem;text-decoration:none;color:var(--ink)}
.pills a:hover,.pills a.on{border-color:var(--accent);background:var(--accent-soft)}
.pills span{color:var(--muted);font-size:.85rem;margin-left:.2rem}
.pills.big a{padding:.4rem 1rem;font-size:1.02rem}
.pill{display:inline-block;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:.3rem .9rem;margin:.15rem;text-decoration:none}
.alpha a{display:inline-block;padding:.1rem .45rem;font-weight:600}
.criteria{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.2rem 1rem .6rem;margin:1rem 0}
.criteria h2{font-size:1.05rem;margin:.7em 0 .3em}.criteria ul{margin:.3rem 0;padding-left:1.2rem}
.results{list-style:none;padding:0}.results li{padding:.55rem 0;border-bottom:1px solid var(--line)}.results .sub{display:block}

/* Подбор */
.chooser fieldset{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);margin:1rem 0;padding:.4rem 1rem 1rem}
.chooser legend{font-weight:650;padding:0 .4rem}
.chooser label{display:grid;gap:.2rem;font-size:.9rem;color:var(--muted)}
.chooser .chk{display:flex;gap:.5rem;align-items:center;color:var(--ink);font-size:1rem}
.grid3{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.7rem 1rem}
.checks{display:flex;gap:.4rem 1.2rem;flex-wrap:wrap;margin:.8rem 0}
.chooser output{font-weight:700;color:var(--accent)}
.picks{list-style:none;padding:0;display:grid;gap:.8rem;counter-reset:pick}
.pick{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.8rem 1rem;counter-increment:pick;position:relative;padding-left:3.2rem}
.pick::before{content:counter(pick);position:absolute;left:.9rem;top:.8rem;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:700;font-size:.9rem}
.pick-h{display:flex;flex-wrap:wrap;gap:.2rem .8rem;align-items:baseline}
.bar{position:relative;height:.7rem;background:var(--soft);border-radius:999px;margin:.4rem 0;max-width:340px}
.bar i{display:block;height:100%;background:var(--accent);border-radius:999px}
.bar b{position:absolute;right:-2.2rem;top:-.3rem;font-size:.85rem}
.miss{color:var(--unk);font-size:.9rem}

/* Инструменты */
.calc{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem 1rem;max-width:920px}
.calc label{display:grid;gap:.2rem;font-size:.9rem;color:var(--muted)}
.calc .out,.calc.wide>*{grid-column:1/-1}
.out{font-size:1.25rem;font-weight:650;padding:.5rem 0;line-height:1.5}
.out small{display:block;font-weight:400;color:var(--muted);font-size:.9rem}
.sizes svg{max-width:100%;height:auto;background:var(--soft);border-radius:var(--r)}
.checklist fieldset{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);margin:.8rem 0;padding:.4rem 1rem .8rem}
.checklist legend{font-weight:650}.checklist .chk{display:flex;gap:.6rem;align-items:flex-start;margin:.45rem 0}
.checklist .chk input{margin-top:.25rem;flex:none}

/* Сравнение */
.cmpbar{position:fixed;left:50%;transform:translateX(-50%);bottom:1rem;background:var(--panel);border:1px solid var(--accent);border-radius:999px;padding:.4rem .5rem .4rem 1.1rem;display:flex;gap:.6rem;align-items:center;box-shadow:0 6px 24px rgba(0,0,0,.25);z-index:70}
.cmpbar[hidden]{display:none}

/* Подвал */
.foot{border-top:1px solid var(--line);background:var(--panel);margin-top:3rem}
.foot-in{max-width:1680px;margin:0 auto;padding:1.2rem 1rem 2rem;display:grid;gap:.6rem;color:var(--muted);font-size:.93rem}
.foot-links{display:flex;gap:1rem;flex-wrap:wrap}
.foot-meta{font-size:.85rem}

/* Админка */
.authbox{max-width:460px;margin:2rem auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.4rem 1.4rem}
.authbox label{display:grid;gap:.25rem;margin:.8rem 0}
.adminnav{display:flex;gap:1rem;flex-wrap:wrap;margin:.4rem 0 1rem}
.log{background:var(--soft);padding:.8rem;border-radius:var(--r);overflow:auto;font-size:.85rem}

/* Широкие экраны: больше колонок, а не растяжение */
@media (min-width:1500px){.cards{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.shell.has-side{grid-template-columns:290px minmax(0,1fr)}}
@media (max-width:980px){
  .shell.has-side{grid-template-columns:1fr}
  .side{position:static;max-height:none}
  .filterbox{padding:.4rem .7rem}
  .filters:not(.open) details:not([open]){}
}
@media (max-width:720px){
  html{font-size:16px}
  h1{font-size:1.55rem}.hero h1{font-size:1.7rem}
  .menu{order:3;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.2rem}
  .menu a{white-space:nowrap}
  .topsearch{flex:1 1 150px}
  .spec div{grid-template-columns:1fr;gap:.1rem}
  .facts div{grid-template-columns:5.5rem 1fr}
  .shell{padding:.8rem}
  .cmpbar{width:calc(100% - 1.4rem);justify-content:space-between;border-radius:var(--r)}
}
@media print{
  .top,.side,.foot,.cmpbar,.actions,.btn,.skip{display:none!important}
  body{background:#fff;color:#000}.shell{display:block;padding:0}
  .checklist fieldset{break-inside:avoid;border-color:#999}
}

/* v2: серии, справочник, помощь */
.serlist,.gllist{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.4rem .9rem}
.serlist li{display:flex;justify-content:space-between;gap:.6rem;padding:.3rem 0;border-bottom:1px solid var(--line,#ddd)}
.serlist span,.gllist span{color:var(--muted,#667);font-size:.85em}
.gllist{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.8rem 1.2rem}
.gllist li{display:flex;flex-direction:column;gap:.15rem;padding:.2rem 0}
.article{max-width:46rem}
.article p,.steps p{line-height:1.6}
.steps{counter-reset:s;list-style:none;padding:0}
.steps li{counter-increment:s;position:relative;padding:.2rem 0 .8rem 2.6rem}
.steps li::before{content:counter(s);position:absolute;left:0;top:.15rem;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--accent,#0f6b6b);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}
.steps h2{font-size:1.05rem;margin:.1rem 0 .2rem}
.callout{padding:.7rem .9rem;border-left:4px solid var(--accent,#0f6b6b);background:rgba(15,107,107,.08);border-radius:4px}
.seriesgroup h2{margin-bottom:.4rem}

/* меню в одну строку на средних ширинах */
@media (max-width:1320px){
  .menu{order:3;width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:thin}
  .menu a{white-space:nowrap;padding:.4rem .6rem}
}

/* v4: инструменты */
.calc textarea,.calc select{font:inherit;padding:.45rem .6rem;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:100%}
.calc .checks{border:1px solid var(--line);border-radius:8px;padding:.5rem .8rem;display:flex;flex-wrap:wrap;gap:.4rem 1rem}
.calc .checks label{display:flex;gap:.4rem;align-items:center;color:var(--ink)}
.calc .checks legend{font-size:.85rem;color:var(--muted);padding:0 .3rem}
.calc textarea[readonly]{font-family:inherit;line-height:1.5}

/* админка: обслуживание */
.jobgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem;margin:.6rem 0 1.4rem}
.jobcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.5rem}
.jobcard.wide{max-width:900px}.jobcard h3{margin:0;font-size:1rem}.jobcard p{margin:0;color:var(--muted);font-size:.92rem}
.jobcard .btn{align-self:flex-start;margin-top:auto}
form.inline{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:.4rem 0}
.joblog{background:#10181a;color:#d7f0e8;padding:.8rem 1rem;border-radius:8px;max-height:22rem;overflow:auto;white-space:pre-wrap;font-size:.82rem;line-height:1.45}
.notice.ok{border-left:4px solid #2c8a4a}.notice.err{border-left:4px solid #b3261e}
.notice.warn{border-left:4px solid #b7791f}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.feedback{margin-top:2rem}

/* ===== Версия 13: шапка, меню с выпадающими разделами, плитки и карточки ===== */
:root{--accent:#1769d1;--accent-ink:#fff;--accent-soft:#e4eefc;--link:#1259b3;--r:14px;
  --shadow:0 1px 2px rgba(25,50,90,.06),0 8px 24px rgba(25,50,90,.07);--shadow-up:0 2px 4px rgba(25,50,90,.08),0 14px 32px rgba(25,50,90,.13);
  --bg:#f3f6fb}
:root[data-theme=dark]{--accent:#5aa2f5;--accent-ink:#04223f;--accent-soft:#16304f;--link:#8fc2fa;--bg:#0e141b;--shadow-up:0 8px 24px rgba(0,0,0,.4)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--accent:#5aa2f5;--accent-ink:#04223f;--accent-soft:#16304f;--link:#8fc2fa;--bg:#0e141b;--shadow-up:0 8px 24px rgba(0,0,0,.4)}}
.ic{display:block}
.top{background:var(--panel);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(0,0,0,.02)}
.top-in{max-width:1680px;margin:0 auto;padding:.6rem 1rem .3rem;display:grid;grid-template-columns:auto minmax(220px,560px) auto auto;justify-content:space-between;gap:1rem;align-items:center}
.logo{font-size:1.3rem;letter-spacing:-.01em}
.logo-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#1e88e5,#1259b3)}
.logo-mark::after{left:10px;top:5px}
.topsearch{display:flex;position:relative;flex:initial;min-width:0;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:.2rem .25rem .2rem 1rem;align-items:center}
.topsearch:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.topsearch input{border:0;background:transparent;box-shadow:none;outline:0;padding:.4rem 0;font-size:.95rem;min-width:0;flex:1}
.topsearch button{width:34px;height:34px;min-height:34px;padding:0;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--accent);color:var(--accent-ink)}
.topsearch button .ic{width:18px;height:18px}
.favbtn{display:inline-flex;gap:.45rem;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.4rem .8rem;background:var(--panel);color:var(--link);font-weight:650;font-size:.9rem;text-decoration:none;box-shadow:var(--shadow);white-space:nowrap}
.favbtn:hover{border-color:var(--accent)}
.badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;min-width:1.5rem;text-align:center;padding:0 .4rem;font-size:.82rem}
.themebtn{border-radius:50%;width:36px;height:36px}
.menu{display:block;border:0}
.menu-in{max-width:1680px;margin:0 auto;padding:.1rem 1rem .5rem;display:flex;gap:.15rem 1.1rem;flex-wrap:wrap;align-items:center}
.menu a,.menu .dd-t{color:var(--ink);text-decoration:none;font-weight:650;font-size:.95rem;padding:.35rem 0;border-radius:0;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:.3rem;background:none}
.menu a:hover,.menu .dd:hover>.dd-t{color:var(--accent);background:none}
.menu a.on,.menu .dd.on>.dd-t{color:var(--accent);border-bottom-color:var(--accent);background:none}
.dd{position:relative}
.car{width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.dd-menu{display:none;position:absolute;left:-.6rem;top:100%;z-index:60;min-width:230px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-up);list-style:none;margin:0;padding:.4rem}
.dd:hover>.dd-menu,.dd:focus-within>.dd-menu,.dd.open>.dd-menu{display:block}
.dd-menu a{display:block;width:100%;padding:.5rem .7rem;border:0;border-radius:8px;font-weight:550;font-size:.93rem}
.dd-menu a:hover{background:var(--accent-soft);color:var(--accent)}
.shell.has-side{grid-template-columns:260px minmax(0,1fr);gap:1.6rem}
.side .sidebox{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:.9rem 1rem;margin-bottom:1rem}
.side .sidebox h2{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem}
.side .sidebox ul{list-style:none;margin:0;padding:0}
.side .sidebox li{display:flex;justify-content:space-between;gap:.5rem}
.side .sidebox a{display:block;padding:.28rem .4rem;border-radius:8px;color:var(--ink);text-decoration:none;font-size:.93rem;flex:1}
.side .sidebox a:hover{background:var(--accent-soft);color:var(--accent)}
/* Главная */
.hero{background:linear-gradient(135deg,#e6f0ff 0%,#f3f4ff 55%,#fff1e6 100%);border:1px solid var(--line);border-radius:22px;padding:2rem 2rem 1.6rem;box-shadow:var(--shadow);margin:.2rem 0 1.4rem}
:root[data-theme=dark] .hero{background:linear-gradient(135deg,#16263d,#1b1f3a 60%,#2a2230)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero{background:linear-gradient(135deg,#16263d,#1b1f3a 60%,#2a2230)}}
.hero h1{font-size:2.05rem;max-width:22ch;line-height:1.18;margin:0 0 .6rem}
.hero .lead{color:var(--ink);opacity:.82;max-width:62ch}
.herosearch{max-width:720px}
.herosearch input{border-radius:999px;padding:.75rem 1.2rem;background:var(--panel)}
.herosearch .btn{border-radius:999px;padding:.7rem 1.6rem}
.examples{margin:.3rem 0 0;font-size:.9rem;color:var(--muted);display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.examples a{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:.15rem .75rem;text-decoration:none;color:var(--link)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:1.1rem;margin:0 0 1.8rem}
.tile{position:relative;overflow:hidden;color:#fff;text-decoration:none;border-radius:20px;padding:1.2rem 1.25rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;min-height:210px;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.tile::before,.tile::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12);pointer-events:none}
.tile::before{width:110px;height:110px;right:-30px;top:-30px}.tile::after{width:150px;height:150px;right:-50px;bottom:-60px}
.tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-up);color:#fff}
.tile h3{font-size:1.25rem;margin:.5rem 0 .1rem;color:#fff}
.tile p{margin:0;font-size:.92rem;opacity:.92;line-height:1.45}
.ti{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.2);display:grid;place-items:center;position:relative}
.tile .cnt{margin-top:auto;background:rgba(0,0,0,.18);border-radius:999px;padding:.35rem .8rem;font-size:.83rem;font-weight:650;align-self:flex-start;position:relative}
.t-blue{background:linear-gradient(145deg,#2f7be8,#1a4fb3)}.t-green{background:linear-gradient(145deg,#1fa98a,#0f7467)}
.t-orange{background:linear-gradient(145deg,#f07b2c,#c2481b)}.t-purple{background:linear-gradient(145deg,#8a4fe0,#5a2bb0)}
.acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:.6rem 0 1.8rem}
.act{--c:#1769d1;display:flex;flex-direction:column;gap:.3rem;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--c);border-radius:16px;padding:1rem;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.act:hover{transform:translateY(-2px);box-shadow:var(--shadow-up)}
.act b{color:var(--c);font-size:1rem}.act>span:last-child{color:var(--muted);font-size:.9rem;line-height:1.4}
.ai{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#fff;background:var(--c);margin-bottom:.3rem}
.a-blue{--c:#2468d8}.a-red{--c:#d93a52}.a-purple{--c:#7b44d6}.a-green{--c:#18946e}.a-orange{--c:#e0731d}.a-teal{--c:#0f8a9a}
/* Карточки телефонов */
.cards{gap:1.1rem}
.card{border-radius:16px;padding:1rem 1.05rem;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s,border-color .15s;border:1px solid var(--line);position:relative}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-up);border-color:var(--accent)}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,#2f7be8,#8a4fe0)}
.card h3{font-size:1.08rem;margin-top:.2rem}
.card .tags span{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.1rem .6rem;font-size:.78rem;font-weight:650}
.card .btn{border-radius:999px;background:var(--accent-soft);color:var(--accent);padding:.35rem .9rem;font-size:.85rem}
.card .btn:hover{background:var(--accent);color:var(--accent-ink)}
.pills li a{border-radius:999px;background:var(--panel);box-shadow:var(--shadow)}
.sechead h2{font-size:1.35rem}
@media (max-width:900px){
  .top-in{grid-template-columns:1fr auto;gap:.6rem}
  .topsearch{grid-column:1 / -1;order:3}
  .favbtn{padding:.35rem .6rem}
  .menu-in{flex-wrap:nowrap;overflow-x:auto;gap:1rem;scrollbar-width:thin;padding-bottom:.4rem}
  .menu a,.menu .dd-t{white-space:nowrap}
  .dd-menu,.car{display:none!important}
  .shell.has-side{grid-template-columns:1fr}
  .hero{padding:1.2rem 1rem}.hero h1{font-size:1.55rem}
  .tile{min-height:170px}
}
.hero h1{max-width:30ch}
.tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.themebtn{display:grid;place-items:center;color:var(--ink);background:var(--panel);border:1px solid var(--line);padding:0}
.flags{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.flags li{align-items:baseline}.flags li b,.flags li strong{white-space:nowrap}
@media (max-width:900px){
  .top-in{grid-template-columns:1fr auto auto}
  .shell.has-side .side{order:2;position:static;max-height:none}
  .shell.has-side .main{order:1}
  body.nav-home .side{display:none}
  .favbtn{font-size:.82rem}
}
/* Цвета разделов: верхнее меню и группы фильтров */
.mc-blue,.fg-blue{--c:#2468d8}.mc-green,.fg-green{--c:#18946e}.mc-orange,.fg-orange{--c:#e0731d}.mc-purple,.fg-purple{--c:#7b44d6}
.mc-red,.fg-red{--c:#d93a52}.mc-teal,.fg-teal{--c:#0f8a9a}.mc-pink{--c:#c2379d}.mc-indigo{--c:#4a55d6}
.menu .mi,.menu .dd-t{border-bottom-width:3px}
.menu .md{width:.6rem;height:.6rem;border-radius:50%;background:var(--c);flex:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent)}
.menu .mi:hover,.menu .dd:hover>.dd-t{color:var(--c)}
.menu .mi.on,.menu .dd.on>.dd-t{color:var(--c);border-bottom-color:var(--c)}
.menu .dd-menu a:hover{background:color-mix(in srgb,var(--c) 12%,transparent);color:var(--c)}
.menu .dd-menu{border-top:3px solid var(--c)}
.filters .fg{border:1px solid var(--line);border-left:4px solid var(--c,var(--accent));border-radius:12px;padding:.35rem .8rem .5rem;margin:.6rem 0;background:color-mix(in srgb,var(--c,var(--accent)) 5%,var(--panel))}
.filters .fg>summary{display:flex;align-items:center;gap:.5rem;color:var(--c);font-weight:700;list-style:none}
.filters .fg>summary::-webkit-details-marker{display:none}
.filters .fg>summary::after{content:"";margin-left:auto;width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}
.filters .fg[open]>summary::after{transform:rotate(-135deg)}
.filters .fi{width:.7rem;height:.7rem;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent)}
.filters .fg label select:focus,.filters .fg label input:focus{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 20%,transparent)}
.filters .fg select:not([value=""]){}
.filters-head h2{color:var(--accent)}
.side .sidebox{border-top:3px solid var(--accent)}
.side .sidebox:nth-of-type(2){border-top-color:#e0731d}.side .sidebox:nth-of-type(3){border-top-color:#7b44d6}.side .sidebox:nth-of-type(4){border-top-color:#18946e}
@media (max-width:900px){.menu .md{width:.5rem;height:.5rem}}
/* Версия 15 */
.tool span.ok{color:#1b7a3a;font-weight:600}.tool span.bad{color:#b3261e;font-weight:600}
.hubrows{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.4rem 1rem}
.hubrows li{display:flex;justify-content:space-between;gap:.6rem;padding:.4rem .6rem;border:1px solid var(--line,#ddd);border-radius:8px}
.hubrows span{color:var(--muted,#667);font-size:.85em;white-space:nowrap}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
table.data tr.cur>th,table.data tr.cur>td{background:rgba(23,105,209,.08)}

@media print{
  .top,.side,.foot,.cmpbar,.actions,.btn,.skip,.crumbs,.flags+.hint,details.coltoggle,.filters,form,#similar,.feedback,.menu,.tools-nav{display:none!important}
  body{font-size:11pt;background:#fff;color:#000}.shell{display:block;padding:0}.main{max-width:none}
  a{color:#000;text-decoration:none}.phone .keyblock,.phone section{break-inside:avoid}
  table.data{font-size:9.5pt}.tablewrap{overflow:visible}
  main::after{content:"Источник: ОТБОР.РФ. Данные справочные, проверяйте по документации производителя.";display:block;margin-top:1rem;font-size:9pt;color:#444}
}
td.cov-low{background:rgba(179,38,30,.14)}td.cov-mid{background:rgba(224,160,20,.16)}td.cov-hi{background:rgba(44,138,74,.14)}
/* Версия 17: доступность */
:focus-visible{outline:3px solid #1769d1;outline-offset:2px;border-radius:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.menu .md,.filters .fi{forced-color-adjust:none}}
/* Версия 18 */
.pcl{list-style:none;margin:0;padding:0}.pcl li{padding:.3rem 0 .3rem 1.4rem;position:relative}
.pcl.pro li::before{content:"+";position:absolute;left:.2rem;color:#1b7a3a;font-weight:700}
.pcl.con li::before{content:"–";position:absolute;left:.2rem;color:#b3261e;font-weight:700}
.faq>div{padding:.45rem 0;border-bottom:1px solid var(--line,#ddd)}.faq dt{font-weight:600}.faq dd{margin:.15rem 0 0}

/* v29: фильтр списков */
input[data-filter-list]{width:100%;max-width:420px;padding:.55rem .8rem;border:1px solid var(--line,#d5dbe3);border-radius:8px;font:inherit;background:var(--bg,#fff);color:inherit}
[hidden]{display:none!important}
