/* Раздел «Расчёт смет»: вкладки, справочники, электрические калькуляторы. Без inline-стилей (CSP). */
body.pg-est main.page,body.pg-calc main.page{max-width:1200px;padding:48px 40px 72px;display:flex;flex-direction:column;gap:28px}
@media(max-width:760px){body.pg-est main.page,body.pg-calc main.page{padding:32px 20px 56px}}
.e-head{display:flex;flex-direction:column;gap:12px}
.e-head h1{margin:0;font-size:clamp(32px,4.4vw,48px);line-height:1.05;letter-spacing:-.02em}
.e-eyebrow{color:var(--red);font:500 14px var(--mono);letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.e-eyebrow:before{content:"";width:40px;height:2px;background:var(--red);display:block}
.e-lead{margin:0;font-size:19px;line-height:1.5;color:var(--muted);max-width:760px}
.e-lead2{margin:0;font-size:16px;line-height:1.55;color:var(--muted);max-width:720px}
.e-ruonly{margin:0;padding:10px 14px;background:var(--soft);border-left:4px solid var(--red);font-size:15px}
.e-tabs{display:flex;flex-wrap:wrap;border-bottom:1.5px solid var(--ink)}
.e-tabs a{padding:16px 24px;font-weight:600;font-size:17px;color:var(--muted);text-decoration:none;white-space:nowrap}
.e-tabs a:hover{color:var(--ink)}
.e-tabs a.on{color:var(--ink);box-shadow:inset 0 -4px 0 var(--red)}
.e-sub{display:flex;flex-wrap:wrap;gap:8px}
.e-sub a{padding:11px 18px;font-size:15px;font-weight:600;color:var(--muted);text-decoration:none;border:1.5px solid #c6c8cd;background:#fff;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.e-sub a:hover{border-color:var(--ink);color:var(--ink)}
.e-sub a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.e-sub a.art,.e-sub a.art:hover,.e-sub a.art.on{border-color:var(--red)}
/* хаб */
.e-sec{display:flex;flex-direction:column;gap:16px}
.e-sec h2{margin:0;font-size:28px;letter-spacing:-.01em}
.e-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.e-cards.three{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.e-card{border:1.5px solid #c6c8cd;padding:24px;display:flex;flex-direction:column;gap:10px;background:rgba(255,255,255,.94);position:relative;color:inherit;text-decoration:none}
.e-card h3{margin:0;font-size:21px;line-height:1.2}
.e-card p{margin:0;font-size:15px;color:var(--muted);line-height:1.5}
.e-card ul{margin:0;padding-left:20px;font-size:15px;color:#2d3036;line-height:1.55}
.e-card li{margin:0 0 6px}
.e-card.hot{border-color:var(--ink);border-width:2px}
.e-card.hot:after{content:"";position:absolute;top:-2px;right:-2px;width:8px;height:56px;background:var(--red)}
a.e-card:hover h3{color:var(--red)}
.e-tag{align-self:flex-start;font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border:1px solid var(--red);color:var(--red)}
.e-tag.ok{border-color:var(--ink);color:var(--ink)}
.e-mores{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;border-top:3px solid var(--ink)}
.e-more{padding:22px 24px 26px 0;display:flex;flex-direction:column;gap:8px;color:inherit;text-decoration:none}
.e-more small{font:500 14px var(--mono);color:var(--red)}
.e-more h3{margin:0;font-size:22px}
.e-more p{margin:0;font-size:15px;color:var(--muted);line-height:1.5}
.e-cta{color:var(--red);font-weight:600;font-size:15px}
.e-more:hover h3{color:var(--red)}
.e-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
/* таблицы и справочник */
.e-scroll{overflow-x:auto;max-width:100%}
.e-scroll.narrow{max-width:760px}
.e-tbl{width:100%;border-collapse:collapse;font-size:15px;min-width:420px}
.e-tbl th{padding:10px 12px;text-align:left;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ink);background:rgba(255,255,255,.9)}
.e-tbl td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;background:rgba(255,255,255,.9)}
.e-tbl td.m{font-family:var(--mono);white-space:nowrap}
.e-tbl td.yes{font-weight:600}
.e-tbl td.no{color:#6a6d75}
.e-tbl tr.tot td{font-weight:700;border-top:1.5px solid var(--ink)}
.e-tbl tr.ok td{font-weight:600}
.e-tbl tr.bad td{color:#6a6d75}
.e-note{margin:0;font-size:14px;line-height:1.5;color:var(--muted);max-width:820px}
.e-ref{background:rgba(255,255,255,.92)}
.e-ref details{border-bottom:1px solid var(--line)}
.e-ref summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;font-size:18px;font-weight:600}
.e-ref summary::-webkit-details-marker{display:none}
.e-ref summary:after{content:"+";font:22px var(--mono);color:var(--red)}
.e-ref details[open] summary:after{content:"−"}
.e-ref .ans{padding:0 0 20px;font-size:16px;line-height:1.6;color:#2d3036;max-width:860px}
.e-ref .ans p{margin:0 0 10px}
.e-ref .ans .k{font-weight:600;color:var(--ink)}
.e-ref .sub{margin:28px 0 4px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.e-ref .src{font-size:13px;color:#6a6d75;margin-top:6px}
.e-ref .tb{width:100%;border-collapse:collapse;font-size:15px;margin:6px 0 14px;min-width:640px}
.e-ref .tb th,.e-ref .tb td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.e-ref .tb th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ink)}
.e-ref .tb td.m{font-family:var(--mono);white-space:nowrap}
/* электрика */
.e-elec .e-panel{display:flex;flex-direction:column;gap:18px;border-top:3px solid var(--ink);padding:22px 0 12px}
.e-elec .e-panel+.e-panel{margin-top:16px}
.e-elec.js .e-panel{display:none}
.e-elec.js .e-panel.on{display:flex}
.e-sech{display:flex;align-items:baseline;gap:14px}
.e-sech small{font:500 14px var(--mono);color:var(--red)}
.e-sech h2{margin:0;font-size:28px;letter-spacing:-.01em}
.e-sech h3{margin:0;font-size:24px;letter-spacing:-.01em}
.e-calc{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.e-form{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:18px}
.e-res{flex:1 1 340px;max-width:400px;min-width:0}
@media(max-width:900px){.e-res{max-width:none}}
.e-row{display:flex;flex-wrap:wrap;gap:16px}
.e-f{flex:1 1 150px;min-width:130px;display:flex;flex-direction:column;gap:6px}
.e-f.wide{flex:2 1 260px}
.e-f label{font-size:13px;color:var(--muted)}
.e-in{display:flex;align-items:center;border:1.5px solid #c6c8cd;background:#fff;min-height:48px}
.e-in:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px rgba(227,0,15,.18)}
.e-in input,.e-in select{flex:1;min-width:0;border:0;outline:0;background:transparent;font:16px var(--mono);padding:12px;color:var(--ink);min-height:44px}
.e-in select{font-family:var(--sans)}
.e-in .u{font:14px var(--mono);color:var(--muted);padding-right:12px}
.e-seg{border:0;margin:0;padding:0;display:inline-flex;flex-wrap:wrap}
.e-seg legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.e-seg label{position:relative}
.e-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.e-seg span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;font-size:15px;font-weight:600;color:var(--muted);border:1.5px solid var(--ink);margin-left:-1.5px;background:#fff}
.e-seg label:first-child span{margin-left:0}
.e-seg input:checked+span{background:var(--ink);color:#fff}
.e-seg input:focus-visible+span{outline:3px solid var(--red);outline-offset:2px}
.e-form{gap:18px}
.e-formula{background:var(--soft);border-left:3px solid var(--red);padding:12px 16px;font:14px/1.7 var(--mono)}
.e-out{background:var(--dark);color:#fff;padding:24px;display:flex;flex-direction:column;gap:4px;position:relative}
.e-out:before{content:"";position:absolute;top:0;right:0;width:8px;height:56px;background:var(--red)}
.e-out .ot{font-size:14px;color:#c6c8cd}
.e-out .kv{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #3a3d44;font-size:15px}
.e-out .kv span{color:#c6c8cd}
.e-out .kv b{font:600 15px var(--mono);text-align:right}
.e-out .verdict{margin-top:12px;padding:10px 12px;border:1px solid #fff;font-size:14px;line-height:1.4;min-height:20px}
.e-out .verdict.bad{border-color:var(--red);background:rgba(227,0,15,.18)}
.e-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;background:var(--red);color:#fff;font:600 16px var(--sans);border:1.5px solid var(--red);cursor:pointer;margin-top:12px}
.e-btn:hover{filter:brightness(.92)}
.e-btn.ghost{background:#fff;color:var(--ink);border-color:var(--ink);margin-top:0}
.e-btn.wide{width:100%}
.e-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.e-actions .e-btn{margin-top:0}
.e-link{background:none;border:0;color:var(--red);font:600 14px var(--sans);cursor:pointer;padding:6px 0;min-height:36px;text-decoration:underline}
.e-plan{display:flex;flex-direction:column;gap:10px}
.e-plan svg{width:100%;max-width:640px;height:auto;display:block;background:#fff}
.e-rooms{display:flex;flex-direction:column;gap:8px}
.e-step{border-top:3px solid var(--ink);padding:18px 0 22px;display:flex;flex-direction:column;gap:10px;max-width:760px}
.e-step p{margin:0;font-size:16px;color:var(--muted);line-height:1.55}
.e-basis{border:1.5px solid var(--ink);padding:24px 28px;display:flex;flex-direction:column;gap:10px;position:relative;background:rgba(255,255,255,.94)}
.e-basis:after{content:"";position:absolute;top:-1.5px;right:-1.5px;width:8px;height:56px;background:var(--red)}
.e-basis b{font-size:20px}
.e-basis p{margin:0;font-size:15px;color:var(--muted);line-height:1.55;max-width:900px}
/* карточки «Качество работ» */
.q-chips{margin-top:4px}
.q-chips a{font-size:14px;padding:8px 14px;min-height:40px}
.q-list{display:flex;flex-direction:column;gap:32px}
.q-card{border:1.5px solid var(--ink);background:rgba(255,255,255,.95);padding:28px 32px;display:flex;flex-direction:column;gap:14px;position:relative;scroll-margin-top:24px}
.q-card:after{content:"";position:absolute;top:-1.5px;right:-1.5px;width:8px;height:56px;background:var(--red)}
.q-card header h3{margin:0 0 6px;font-size:26px;letter-spacing:-.01em}
.q-card header p{margin:0;font-size:16px;color:var(--muted);line-height:1.5;max-width:760px}
.q-src{font:500 13px var(--mono);color:var(--red);margin-top:8px}
.q-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.q-facts div{border:1.5px solid var(--ink);padding:14px 16px;display:flex;flex-direction:column;gap:2px;background:#fff}
.q-facts b{font-size:32px;letter-spacing:-.02em;line-height:1.1;color:var(--red)}
.q-facts span{font-size:14px;color:var(--muted);line-height:1.4}
.q-tbl{min-width:560px}
.q-tbl th.n,.q-tbl td.n{text-align:right;white-space:nowrap}
.q-tbl .u{text-transform:none;letter-spacing:0}
.q-viz{max-width:660px}
.q-viz .e-svg{width:100%;height:auto;display:block}
.q-acc{border-left:4px solid var(--red);background:var(--soft);padding:16px 20px}
.q-acc h4{margin:0 0 8px;font-size:18px}
.q-h4{margin:22px 0 8px;font-size:18px}
.q-acc ul{margin:0;padding-left:20px;font-size:15px;line-height:1.55;color:#2d3036}
.q-acc li{margin:0 0 6px}
.q-dl{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:8px;border-top:1px solid var(--line)}
.q-dl span{font-size:14px;color:var(--muted)}
.e-btn.sm{min-height:44px;margin-top:0;font-size:15px;text-decoration:none}
.e-card ul{margin:0;padding-left:20px}
.q-chips a{max-width:100%;white-space:normal;text-align:left}
.q-chips{max-width:100%}

.q-tbl td.n.m{color:var(--red)}
/* разделы карточек */
.q-sec{border:1.5px solid var(--ink);background:#fff;margin:0 0 18px}
.q-sec>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;min-height:44px}
.q-sec>summary::-webkit-details-marker{display:none}
.q-sec>summary:before{content:"+";font:600 28px/1 var(--mono);color:var(--red);width:28px;flex:none}
.q-sec[open]>summary:before{content:"−"}
.q-sec[open]>summary{border-bottom:1.5px solid var(--ink)}
.q-sh{flex:1;display:flex;flex-direction:column;gap:4px}
.q-sh b{font-size:22px;letter-spacing:-.01em}
.q-sh small{font-size:15px;color:var(--muted);line-height:1.4}
.q-n{font:500 13px var(--mono);color:var(--red);margin-left:8px}
.q-sec>.q-chips,.q-sec>.q-list{padding:18px 24px 0}
.q-sec>.q-list{padding-bottom:24px;background:var(--soft)}
.q-sec>.q-chips{padding-bottom:18px;padding-top:18px}
.q-soon{padding:8px 14px;font-size:14px;color:var(--muted);border:1.5px dashed #c6c8cd;display:inline-flex;align-items:center;min-height:40px}
.q-soons{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:8px}
.e-f[hidden]{display:none}

.f-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:24px 0}
.f-img{width:100%;height:auto;border:1px solid #c6c8cd;background:#fff}
.f-links{display:flex;gap:16px;margin-top:auto}
.f-links a{font-weight:600;color:inherit;text-decoration:underline}

/* смета отделки */
.o-app{display:flex;flex-direction:column;gap:20px}
.o-body{display:flex;flex-direction:column;gap:20px}
.o-steps a{min-width:0}
.o-rooms{margin:0}
.o-card{border:1.5px solid #c6c8cd;background:rgba(255,255,255,.94);padding:22px;display:flex;flex-direction:column;gap:14px}
.o-card h3{margin:0;font-size:21px}
.o-warn{border-color:var(--ink);border-left:6px solid var(--red)}
.o-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;align-items:end}
.o-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.o-f.w2{grid-column:span 2}
.o-f>label{font-size:13px;color:var(--muted);font-weight:600}
.o-in{display:flex;align-items:center;border:1.5px solid #8b8e96;background:#fff;min-height:44px}
.o-in:focus-within{border-color:var(--ink);box-shadow:0 0 0 2px var(--red)}
.o-in input,.o-in select{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:16px;padding:10px 12px;color:var(--ink);outline:none}
.o-in .u{padding:0 12px 0 0;color:var(--muted);font-size:14px;white-space:nowrap}
.o-chk{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px;cursor:pointer}
.o-chk input{width:20px;height:20px;accent-color:var(--red)}
.o-chks{display:flex;flex-wrap:wrap;gap:6px 24px}
.o-sub{margin:6px 0 0;font:600 13px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.o-kv{display:flex;flex-wrap:wrap;gap:8px 32px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.o-kv.big b{font-size:22px}
.o-k{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--muted)}
.o-k b{font-size:17px;color:var(--ink);font-family:var(--mono)}
.o-open{display:flex;flex-direction:column;gap:8px}
.o-oh{display:flex;justify-content:space-between;align-items:center;gap:12px}
.o-btn{min-height:44px;padding:10px 18px;font:600 15px inherit;border:1.5px solid var(--ink);background:#fff;color:var(--ink);cursor:pointer}
.o-btn:hover{background:var(--ink);color:#fff}
.o-btn.pri{background:var(--ink);color:#fff}
.o-btn.pri:hover{background:var(--red);border-color:var(--red)}
.o-btn.danger{border-color:#8b8e96;color:#6a6d75}
.o-btn.x{padding:6px 12px;min-height:36px;border-color:#8b8e96}
.o-nav{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.o-link{font-weight:600;color:var(--ink)}
.o-sh{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.o-tot{font-family:var(--mono);font-size:16px}
.o-alloc{margin:0;font-size:14px;color:var(--muted)}
.o-alloc.bad{color:#b00020;font-weight:600}
.o-zone{border:1px solid var(--line);padding:16px;display:flex;flex-direction:column;gap:12px}
.o-zh{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.o-za{display:flex;gap:10px;align-items:center}
.o-ed{display:flex;flex-direction:column;gap:12px}
.o-tile{display:flex;flex-direction:column;gap:12px;border-left:4px solid var(--line);padding-left:14px}
.o-det{border:1px solid var(--line);background:rgba(255,255,255,.94);padding:0 16px}
.o-det summary{cursor:pointer;min-height:52px;display:flex;align-items:center;font-weight:600}
.o-det[open]{padding-bottom:14px}
.o-tbl td .o-in{min-width:90px}
.o-tbl th.r,.o-tbl td.r{text-align:right}
.o-sheetwrap{overflow:auto;background:#eceef1;padding:16px;max-width:100%}
.o-forms a{white-space:normal}
/* печатные формы */
.rp-sheet{--w:794px;margin:0 auto;width:794px;min-height:1123px;background:#fff;color:#1d1f23;position:relative;font-size:13px}
.rp-sheet.land{width:1123px;min-height:794px}
.rp-pg{position:relative;box-sizing:border-box;padding:44px 48px 64px;display:flex;flex-direction:column;gap:14px;min-height:inherit;overflow:hidden}
.rp-wm{position:absolute;left:0;right:0;top:44%;text-align:center;transform:rotate(-30deg);font-family:var(--mono);font-size:120px;font-weight:500;color:#e3000f;opacity:.07;pointer-events:none;letter-spacing:.04em}
.rp-pg>*{position:relative}.rp-pg>.rp-wm{position:absolute}
.rp-hd{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #1d1f23;padding-bottom:10px}
.rp-logo{font-size:30px;font-weight:700;color:#e3000f;line-height:1}.rp-logo span{color:#1d1f23}
.rp-fc{font-family:var(--mono);font-size:12px;color:#4a4d55;text-align:right;line-height:1.4}
.rp-sheet h1{margin:0;font-size:28px;line-height:1.1}
.rp-sub{margin:4px 0 0;font-size:14px;color:#4a4d55}
.rp-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border:1px solid #1d1f23;padding:8px 14px}
.rp-info div{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:4px 0;border-bottom:1px solid #e4e5e8}
.rp-info span{color:#4a4d55}.rp-info b{font-weight:600;text-align:right}
.rp-t{border-collapse:collapse;width:100%;table-layout:fixed}
.rp-t th{font-size:12px;font-weight:600;color:#4a4d55;text-align:left;padding:7px 8px;border-top:1.5px solid #1d1f23;border-bottom:1.5px solid #1d1f23;vertical-align:bottom;line-height:1.25}
.rp-t td{font-size:13px;padding:5px 8px;border-bottom:1px solid #c6c8cd;vertical-align:top;line-height:1.3;overflow-wrap:anywhere}
.rp-t .r{text-align:right}.rp-t td.n{font-family:var(--mono)}
.rp-t tr.sub td{font-weight:600;background:#f6f6f7}
.rp-t tr.tot td{font-weight:700;font-size:14px;border-top:1.5px solid #1d1f23;border-bottom:1.5px solid #1d1f23;background:#f6f6f7}
.rp-t tr.grp td{font-weight:700;border-bottom:1.5px solid #1d1f23;padding-top:8px}
.rp-t td small{display:block;font-size:12px;color:#4a4d55}
.rp-note{font-size:12px;line-height:1.5;color:#4a4d55;margin:0}.rp-note b{color:#1d1f23}
.rp-h3{font-size:15px;font-weight:700;display:flex;justify-content:space-between;gap:12px}
.rp-h3 span{font-family:var(--mono);font-weight:500;font-size:13px}
.rp-rm{display:flex;flex-direction:column;gap:6px}
.rp-sig{display:flex;gap:28px;margin-top:6px}.rp-sig div{flex:1;font-size:12px;color:#4a4d55;border-top:1px solid #1d1f23;padding-top:5px}
.rp-ft{position:absolute!important;left:48px;right:48px;bottom:18px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#4a4d55;line-height:1.35;border-top:1px solid #c6c8cd;padding-top:6px}
.rp-mono{font-family:var(--mono);white-space:nowrap}
@page rpport{size:A4 portrait;margin:0}
@page rpland{size:A4 landscape;margin:0}
@media print{
  .rp-sheet{page:rpport}
  .rp-sheet.land{page:rpland}
  body.rp-print *{visibility:hidden}
  body.rp-print .rp-sheet.on,body.rp-print .rp-sheet.on *{visibility:visible}
  body.rp-print .rp-sheet.on{position:absolute;left:0;top:0;margin:0;box-shadow:none}
  body.rp-print .o-sheetwrap{overflow:visible;padding:0;background:none}
}
@media(max-width:760px){.o-f.w2{grid-column:span 1}}

/* подбор автомата и УЗО */
.ap-box{border:1.5px solid var(--ink);padding:24px;display:flex;flex-direction:column;gap:18px;background:rgba(255,255,255,.94);margin-bottom:12px}
.ap-refh{margin-top:12px}
.ap-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;color:#c6c8cd}
.ap-list .e-note{color:#c6c8cd}

.ap-box .e-calc{align-items:flex-start}
.ap-box .e-form{flex:1 1 420px;max-width:640px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
.ap-box .e-f{flex:none;min-width:0}
.ap-box .e-form>.e-seg,.ap-box .e-form>.e-note{grid-column:1/-1}
.ap-box .e-res{flex:1 1 340px;max-width:420px}
@media(max-width:700px){.ap-box .e-form{grid-template-columns:1fr}}

/* страница «О нас» */
.ab-sec{display:flex;flex-direction:column;gap:14px;margin:28px 0}
.ab-sec h2{margin:0;font-size:26px}
.ab-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;counter-reset:ab}
.ab-steps li{counter-increment:ab;border:1.5px solid #c6c8cd;background:rgba(255,255,255,.94);padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.ab-steps li:before{content:counter(ab,decimal-leading-zero);font:500 14px var(--mono);color:var(--red)}
.ab-steps b{font-size:19px}
.ab-steps span{font-size:15px;color:var(--muted);line-height:1.5}
.ab-soon{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.ab-c{border:1.5px dashed #c6c8cd;background:rgba(255,255,255,.9);padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.ab-c span{align-self:flex-start;font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border:1px solid var(--red);color:var(--red)}
.ab-c b{font-size:18px}
.ab-link{font-weight:600;color:var(--ink)}

.e-art{display:flex;flex-direction:column;gap:16px;margin-top:28px;padding-top:20px;border-top:3px solid var(--ink)}
.e-h4{margin:8px 0 0;font-size:18px}
.e-ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.55;color:var(--muted);max-width:900px}
.e-ul b{color:var(--ink)}
.e-errs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.e-err{border:1.5px solid var(--ink);padding:16px 18px;display:flex;flex-direction:column;gap:8px;background:#fff}
.e-err h4{margin:0;font-size:16px}
.e-err p{margin:0;font-size:14px;line-height:1.5}
.e-err .x{color:var(--red)}
.e-err .v{color:#1f7a4d}
#cost .e-in{min-width:120px}
#cost .e-in .u{white-space:nowrap}
.e-fig{margin:6px 0;display:flex;flex-direction:column;gap:8px;max-width:860px}
.e-fig img{width:100%;height:auto;display:block;border:1px solid var(--line)}
.e-fig svg{width:100%;height:auto;display:block;background:rgba(255,255,255,.94);border:1px solid var(--line)}
.e-fig text{font-family:var(--sans)}
.e-fig figcaption{font-size:13px;line-height:1.5;color:var(--muted)}
.e-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;max-width:900px}
.e-kpi{border:1.5px solid var(--ink);padding:14px 16px;display:flex;flex-direction:column;gap:4px;background:rgba(255,255,255,.94)}
.e-kpi b{font-size:26px;color:var(--red);line-height:1.1}
.e-kpi span{font-size:13px;line-height:1.4;color:var(--muted)}
.e-bars{display:flex;flex-direction:column;gap:8px;max-width:760px}
.e-barrow{display:grid;grid-template-columns:minmax(150px,230px) 1fr auto;gap:12px;align-items:center;font-size:14px}
.e-barrow .tr{background:var(--soft);height:22px}
.e-barrow .fl{display:block;height:22px;background:var(--ink)}
.e-barrow.min .fl{background:var(--red)}
.e-barrow b{font:600 13px var(--mono)}
@media(max-width:560px){.e-barrow{grid-template-columns:1fr auto}.e-barrow .tr{grid-column:1/-1}}
/* копирование и сохранение результата */
.e-xp{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
.e-xp .e-btn{flex:1 1 auto;min-width:0}
.e-xp-s{flex:1 1 100%;font-size:13px;line-height:1.4;color:var(--muted);min-height:18px}
.e-xp-s.bad{color:var(--red)}
.e-xp-ta{position:fixed;left:-9999px;top:0;opacity:0}
[data-xp] > .e-xp{max-width:420px}
#e-print{display:none}
@media print{
  body.e-printing > *:not(#e-print){display:none!important}
  body.e-printing #e-print{display:block;padding:0;color:#1d1f23;background:#fff;font:13px/1.45 var(--sans)}
  #e-print .xp-brand{font:600 12px var(--mono);color:#e3000f;margin-bottom:6px}
  #e-print h1{font-size:22px;margin:0 0 4px}
  #e-print h2{font-size:15px;margin:18px 0 6px;border-bottom:2px solid #1d1f23;padding-bottom:3px}
  #e-print .xp-meta{color:#4a4d55;margin:0 0 8px}
  #e-print table{width:100%;border-collapse:collapse}
  #e-print td,#e-print th{border-bottom:1px solid #c6c8cd;padding:5px 6px;text-align:left;vertical-align:top}
  #e-print td.v{text-align:right;font-family:var(--mono);white-space:nowrap}
  #e-print th{font-size:13px;background:#f6f6f7}
  #e-print .xp-verdict{margin:12px 0;padding:8px 10px;border:1.5px solid #1d1f23}
  #e-print .xp-note{margin-top:16px;color:#4a4d55;font-size:12px}
}

/* Запрос для ИИ-агента */
.ai{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin-top:20px}
.ai>.ai-step,.ai>.ai-tiers,.ai>.ai-crit,.ai>.e-f.wide,.ai>.ai-card{grid-column:1/-1}
.ai-step{display:flex;align-items:center;gap:12px;margin-top:12px;border-top:1.5px solid var(--ink);padding-top:16px}
.ai-step span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--ink);color:#fff;font:600 15px var(--mono)}
.ai-step h3{margin:0;font-size:20px}
.ai-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ai-tier{position:relative;display:block;border:1.5px solid var(--ink);background:#fff;cursor:pointer}
.ai-tier input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.ai-tier span{display:flex;flex-direction:column;gap:6px;padding:16px;min-height:96px}
.ai-tier b{font-size:19px}
.ai-tier small{font-size:14px;color:var(--muted);line-height:1.4}
.ai-tier input:checked+span{background:var(--ink);color:#fff}
.ai-tier input:checked+span small{color:#dcdde0}
.ai-tier input:checked+span b:after{content:" ✓";color:var(--red)}
.ai-tier input:focus-visible+span{outline:3px solid var(--red);outline-offset:2px}
.ai-crit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}
.ai textarea{width:100%;box-sizing:border-box;padding:12px;font:16px var(--sans);border:1.5px solid var(--ink);background:#fff;resize:vertical}
.ai-card{border:1.5px solid var(--ink);background:#fff}
.ai-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;background:var(--ink);color:#fff}
.ai-bar span{font:14px var(--mono);color:#dcdde0}
.ai-out{margin:0;padding:16px;max-height:480px;overflow:auto;white-space:pre-wrap;word-break:break-word;font:14px/1.55 var(--mono);background:var(--soft)}
.ai-act{display:flex;flex-wrap:wrap;gap:12px;padding:16px}
.ai-act .e-btn{margin-top:0}
.ai-card .e-note{margin:0;padding:0 16px 16px}
@media(max-width:700px){.ai,.ai-tiers,.ai-crit{grid-template-columns:1fr}.ai-act .e-btn{width:100%}}
