/* kamera-polimer.ru — "Тех-документация / раскалённый металл"
   Тёмный графит, тепловой акцент, прямые углы, blueprint-сетка, моноширинные цифры.
   Сознательно не похоже на светлые card-сайты. */

:root{
  --bg:#111317;
  --bg2:#161a20;
  --panel:#1b2028;
  --line:#2a313c;
  --line2:#39424f;
  --ink:#d7d3ca;
  --ink-dim:#9aa1ab;
  --ink-faint:#6b7480;
  --hot:#ff5a1e;      /* раскалённый металл — единственный яркий акцент */
  --hot-deep:#d3320a;
  --ember:#ffb15a;    /* тёплый вторичный для чисел */
  --mono:ui-monospace,"Cascadia Code","JetBrains Mono",Menlo,Consolas,monospace;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  /* blueprint-сетка */
  background-image:
    linear-gradient(var(--bg2) 1px,transparent 1px),
    linear-gradient(90deg,var(--bg2) 1px,transparent 1px);
  background-size:44px 44px;
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--ember);text-decoration:none;border-bottom:1px solid rgba(255,177,90,.3)}
a:hover{color:var(--hot);border-bottom-color:var(--hot)}

/* ---- скелет ---- */
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* header */
.top{border-bottom:1px solid var(--line);background:rgba(17,19,23,.86);backdrop-filter:blur(6px);position:sticky;top:0;z-index:40}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:62px;gap:20px}
.brand{display:flex;align-items:baseline;gap:10px;font-family:var(--mono);font-weight:600;letter-spacing:.02em;color:var(--ink);border:0}
.brand b{color:var(--hot);font-weight:700}
.brand .dot{width:9px;height:9px;background:var(--hot);display:inline-block;box-shadow:0 0 12px var(--hot)}
.nav{display:flex;gap:22px;font-family:var(--mono);font-size:13.5px;text-transform:uppercase;letter-spacing:.08em}
.nav a{color:var(--ink-dim);border:0}
.nav a:hover{color:var(--hot)}
.top .tel{font-family:var(--mono);color:var(--ink);border:0;font-size:14px}
@media(max-width:760px){.nav{display:none}.top .tel{display:none}}

/* hero */
.hero{border-bottom:1px solid var(--line);padding:54px 0 46px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;right:-140px;top:-120px;width:420px;height:420px;
  background:radial-gradient(circle,rgba(255,90,30,.22),transparent 62%);filter:blur(8px)}
.kicker{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--hot);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.kicker:before{content:"";width:26px;height:1px;background:var(--hot)}
h1{font-size:clamp(30px,4.4vw,50px);line-height:1.08;margin:0 0 18px;font-weight:750;letter-spacing:-.015em;color:#efece5;max-width:16ch}
.hero .lead{font-size:19px;color:var(--ink-dim);max-width:60ch;margin:0}

/* layout with sidebar */
.doc{display:grid;grid-template-columns:1fr 296px;gap:48px;padding:44px 0 60px;align-items:start}
@media(max-width:940px){.doc{grid-template-columns:1fr}}
article{min-width:0}

/* TL;DR answer box under H1 */
.tldr{border:1px solid var(--line2);border-left:3px solid var(--hot);background:var(--bg2);padding:20px 22px;margin:0 0 40px}
.tldr .tag{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--hot);display:block;margin-bottom:8px}
.tldr p{margin:0;font-size:18px;color:#e7e3db}

/* section numbering + headings */
h2{font-size:26px;line-height:1.2;margin:52px 0 8px;color:#eceae3;font-weight:700;letter-spacing:-.01em;padding-top:22px;border-top:1px solid var(--line);position:relative}
h2 .n{font-family:var(--mono);font-size:13px;color:var(--hot);display:block;margin-bottom:10px;letter-spacing:.08em}
h3{font-size:19px;margin:30px 0 8px;color:#e3dfd6;font-weight:650}
p{margin:14px 0}
article ul,article ol{margin:14px 0;padding-left:22px}
article li{margin:7px 0}
article li::marker{color:var(--hot)}
strong{color:#f1eee7}

/* inline monospace numbers for specs */
.num{font-family:var(--mono);color:var(--ember);font-weight:600}

/* mini Q&A block */
.qa{margin:20px 0;border-left:1px solid var(--line2);padding-left:18px}
.qi{border-bottom:1px solid var(--line)}
.qi:last-child{border-bottom:0}
.qi>summary.q{list-style:none;cursor:pointer;font-weight:650;color:#e9e5dc;margin:0;padding:13px 30px 13px 0;font-size:16.5px;position:relative;user-select:none;transition:color .15s ease}
.qi>summary.q::-webkit-details-marker{display:none}
.qi>summary.q:before{content:"?";font-family:var(--mono);color:var(--hot);margin-right:8px;font-weight:700}
.qi>summary.q:after{content:"+";font-family:var(--mono);color:var(--hot);position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:22px;line-height:1;transition:transform .15s ease}
.qi[open]>summary.q:after{content:"\2013"}
.qi>summary.q:hover{color:var(--hot)}
.qi .a{margin:0;padding:0 0 15px;color:var(--ink)}

/* spec table */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:22px 0;max-width:100%}
.tw .spec{margin:0}
.tw::-webkit-scrollbar{height:7px}
.tw::-webkit-scrollbar-thumb{background:var(--line2);border-radius:0}
.spec{width:100%;border-collapse:collapse;margin:22px 0;font-size:15.5px}
.tw .spec{min-width:520px}
.spec th,.spec td{border:1px solid var(--line2);padding:10px 12px;text-align:left}
.spec th{background:var(--bg2);font-family:var(--mono);font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-dim);font-weight:600}
.spec td:first-child{color:#e6e2d9}
.spec .v{font-family:var(--mono);color:var(--ember)}
.spec tr:nth-child(even) td{background:rgba(255,255,255,.012)}

/* callout / warning */
.note{border:1px solid var(--line2);background:var(--bg2);padding:16px 18px;margin:22px 0;font-size:15.5px}
.note.warn{border-left:3px solid var(--hot-deep)}
.note .h{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--hot);margin-bottom:6px}

/* figure */
figure{margin:26px 0}
figure img{width:100%;display:block;border:1px solid var(--line2)}
figcaption{font-family:var(--mono);font-size:12.5px;color:var(--ink-faint);margin-top:8px;letter-spacing:.02em}

/* SVG schematic wrapper */
.schem{border:1px solid var(--line2);background:var(--bg2);padding:18px;margin:26px 0}
.schem svg{width:100%;height:auto;display:block}

/* sticky spec panel (sidebar) */
.aside{position:sticky;top:82px;display:flex;flex-direction:column;gap:20px}
@media(max-width:940px){.aside{position:static}}
.card{border:1px solid var(--line);background:var(--panel)}
.card .hd{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--hot);padding:12px 16px;border-bottom:1px solid var(--line)}
.card .bd{padding:14px 16px}
.speclist{list-style:none;margin:0;padding:0;font-size:14.5px}
.speclist li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line)}
.speclist li:last-child{border-bottom:0}
.speclist .k{color:var(--ink-dim)}
.speclist .val{font-family:var(--mono);color:var(--ember);text-align:right}

/* order CTA in aside */
.cta{border:1px solid var(--hot);background:linear-gradient(180deg,rgba(255,90,30,.08),transparent)}
.cta .hd{color:var(--hot);border-bottom-color:rgba(255,90,30,.3)}
.cta .bd p{margin:0 0 12px;font-size:14.5px;color:var(--ink-dim)}
.btn{display:block;text-align:center;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;font-size:13.5px;
  background:var(--hot);color:#160a04;font-weight:700;padding:12px;border:0}
.btn:hover{background:var(--ember);color:#160a04}

/* related links */
.rel{list-style:none;margin:0;padding:0;font-size:14.5px}
.rel li{padding:9px 0;border-bottom:1px solid var(--line)}
.rel li:last-child{border-bottom:0}
.rel a{color:var(--ink);border:0}
.rel a:hover{color:var(--hot)}
.rel .idx{font-family:var(--mono);color:var(--ink-faint);margin-right:8px;font-size:12.5px}

/* homepage index grid — deliberately list-like, not card-y */
.idx-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.idx-list li{border-bottom:1px solid var(--line)}
.idx-list a{display:grid;grid-template-columns:56px 1fr auto;gap:18px;align-items:center;padding:22px 8px;color:var(--ink);border:0}
.idx-list a:hover{background:var(--bg2)}
.idx-list a:hover .t{color:var(--hot)}
.idx-list .no{font-family:var(--mono);color:var(--hot);font-size:15px}
.idx-list .t{font-size:19px;font-weight:650;color:#e9e5dc;margin:0}
.idx-list .d{color:var(--ink-dim);font-size:14.5px;margin:4px 0 0}
.idx-list .arw{font-family:var(--mono);color:var(--ink-faint)}
@media(max-width:620px){.idx-list a{grid-template-columns:40px 1fr;gap:12px}.idx-list .arw{display:none}}

/* breadcrumb */
.bc{font-family:var(--mono);font-size:12.5px;color:var(--ink-faint);letter-spacing:.03em;margin:0 0 8px}
.bc a{color:var(--ink-dim);border:0}
.bc a:hover{color:var(--hot)}

/* footer */
.foot{border-top:1px solid var(--line);background:var(--bg2);margin-top:40px;padding:36px 0}
.foot .wrap{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;font-size:14px;color:var(--ink-faint)}
.foot .mono{font-family:var(--mono)}
.foot a{color:var(--ink-dim);border:0}
.foot a:hover{color:var(--hot)}

/* section divider label */
.divlabel{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:48px 0 0;display:flex;align-items:center;gap:14px}
.divlabel:after{content:"";flex:1;height:1px;background:var(--line)}
