/* «Расчёт окупаемости» (extension/module/jv_teo). Собрано из docs/mockups/teo-calculator.html,
   классы с префиксом jte-, токены — как в jv_calc.css / jv_analog.css. Текстовый блок — jv_textblock.css (jvct-). */
.jte{
  --jv-primary:#E94E1B;--jv-primary-hover:#d1410f;--jv-accent-dark:#ff9c73;
  --jv-text-primary:#171717;--jv-text-secondary:#303131;--jv-text-muted:#999;
  --jv-border:#d9d9d9;--jv-bg-surface:#F2F3F6;--jv-dark:#303131;
  --jv-ease-out:cubic-bezier(.23,1,.32,1);
  --ser-a:#b8bcc4;--ser-b:#E94E1B;--good:#2f8f5b;
}
.jte,.jte *{box-sizing:border-box}
.jte{font-size:14px;line-height:1.5;color:#333}
.jte button,.jte input,.jte select{font:inherit;color:inherit}
.jte a{text-decoration:none}



/* ── заголовок страницы (jvc-title / jvc-intro) ── */
.jte-page{padding:20px 0 72px}
.jte-hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.jte-t-title{font-size:30px;line-height:36px;font-weight:600;margin:6px 0 10px;color:#000}
.jte-t-intro{font-size:16px;line-height:1.55;color:var(--jv-text-secondary);max-width:66ch;margin:0}
/* «шаг» как jva-stepcard */
.jte-stepcard{display:flex;align-items:center;gap:14px;background:var(--jv-bg-surface);border-radius:18px;padding:10px 18px 10px 10px}
.jte-stepcard .jte-ring{width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;color:var(--jv-primary);box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px rgba(233,78,27,.25)}
.jte-stepcard small{display:block;font-size:13px;color:#6b6b6b}
.jte-stepcard b{font-size:15px;font-weight:600;color:#171717}

/* ── рабочая область ── */
.jte-work{display:grid;grid-template-columns:minmax(0,490px) minmax(0,1fr);gap:16px;align-items:start}
@media(max-width:1000px){.jte-work{grid-template-columns:minmax(0,1fr)}}
.jte-work>*{min-width:0}

/* панель ввода = .jte-jvc-panel */
.jte-panel{background:#fff;border-radius:18px;padding:16px;border:1.5px solid var(--jv-border)}
.jte-sh{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.jte-sh strong{font-size:15px;font-weight:500;color:#171717}
.jte-sh span{font-size:11px;color:var(--jv-text-muted)}
.jte-sh span b{color:var(--jv-primary);font-weight:600}
.jte-blk+.jte-blk{margin-top:20px;padding-top:18px;border-top:1px solid #eee}

.jte-field{display:flex;flex-direction:column;gap:6px;min-width:0;margin-bottom:12px}
.jte-lbl{font-size:11px;font-weight:700;color:var(--jv-text-secondary)}
.jte-inp,.jte-sel{height:44px;border:1.5px solid var(--jv-border);background:#fff;border-radius:9px;padding:0 13px;font-size:14px;color:#171717;outline:none;width:100%;transition:border-color .2s,box-shadow .2s}
.jte-inp:hover,.jte-sel:hover{border-color:#bcbcbc}
.jte-inp:focus,.jte-sel:focus{border-color:var(--jv-primary);box-shadow:0 0 0 2px rgba(233,78,27,.14)}
.jte-sel{appearance:none;cursor:pointer;padding-right:36px;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>") no-repeat right 14px center}
.jte-unit{position:relative}
.jte-unit .jte-inp{padding-right:64px}
.jte-unit em{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:var(--jv-text-muted);pointer-events:none}
.jte-hint{font-size:10.5px;color:var(--jv-text-muted);line-height:1.4}
.jte-hint b{color:var(--jv-text-secondary);font-weight:600}
.jte-hint a{color:var(--jv-primary)}
.jte-row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}

/* строки «ползунок + число» = .jte-jvc-dimension (вариант D) */
.jte-dim{display:grid;grid-template-columns:96px minmax(0,1fr) 92px;align-items:center;column-gap:16px;padding:12px 0}
.jte-dim+.jte-dim{border-top:1px solid #eee}
.jte-dim label{font-size:13px;font-weight:500;color:var(--jv-text-secondary);line-height:1.25}
.jte-rng{width:100%;height:16px;margin:0;appearance:none;background:transparent;cursor:pointer}
.jte-rng::-webkit-slider-runnable-track{height:4px;border-radius:99px;background:linear-gradient(90deg,var(--jv-primary) 0 var(--p,0%),#e3e3e3 var(--p,0%) 100%)}
.jte-rng::-webkit-slider-thumb{appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;border:4px solid var(--jv-primary);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.jte-rng::-moz-range-track{height:4px;background:#e3e3e3;border-radius:99px}
.jte-rng::-moz-range-progress{height:4px;background:var(--jv-primary);border-radius:99px}
.jte-rng::-moz-range-thumb{width:8px;height:8px;border-radius:50%;border:4px solid var(--jv-primary);background:#fff}
.jte-num{position:relative}
.jte-num input{width:100%;height:38px;border:1.5px solid var(--jv-border);border-radius:9px;text-align:right;padding:0 34px 0 8px;font-size:15px;font-weight:700;outline:0;font-variant-numeric:tabular-nums}
.jte-num input:focus{border-color:var(--jv-primary);box-shadow:0 0 0 1px var(--jv-primary) inset}
.jte-num em{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:var(--jv-text-muted)}
@media(max-width:560px){.jte-dim{grid-template-columns:70px minmax(0,1fr) 78px;column-gap:10px}.jte-num input{font-size:16px}}

/* сегменты = .jte-jvc-modes */
.jte-seg{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--jv-bg-surface);border-radius:11px;padding:4px}
.jte-seg button{border:0;background:transparent;height:36px;border-radius:9px;font-size:12px;font-weight:600;color:var(--jv-text-secondary);cursor:pointer;transition:color .25s,background .2s;white-space:nowrap;padding:0 6px}
.jte-seg button.on{background:#fff;color:var(--jv-primary);box-shadow:0 2px 6px rgba(0,0,0,.06)}

/* плитки типа лампы = .jte-jvc-rooms */
.jte-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}
@media(max-width:560px){.jte-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* = .jte-jvc-room-btn: иллюстрации отраслей из image/catalog/jv_primenenie */
.jte-tile{border:1.5px solid var(--jv-border);background:#fff;border-radius:10px;padding:11px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--jv-text-secondary);transition:border-color .2s,box-shadow .2s}
.jte-tile:hover{border-color:#bcbcbc}
.jte-tile.on{border-color:var(--jv-primary);box-shadow:inset 0 0 0 1px var(--jv-primary);color:#171717}
.jte-tile img{width:76px;height:55px;object-fit:contain;display:block}

/* товар = строка из jvc-ac */
.jte-ac{position:relative}
.jte-ac-list{position:absolute;left:0;right:0;top:48px;background:#fff;border:1.5px solid var(--jv-border);border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.12);z-index:5;display:none;max-height:280px;overflow:auto;padding:4px}
.jte-ac-list div{padding:9px 10px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600}
.jte-ac-list div:hover{background:var(--jv-bg-surface)}
.jte-ac-list small{display:block;color:var(--jv-text-muted);font-weight:400;font-size:11px}
.jte-prod{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;border:1.5px solid var(--jv-border);border-radius:12px;padding:8px 10px;margin-bottom:8px}
.jte-prod .jte-ph{width:56px;height:56px;border-radius:9px;background:linear-gradient(145deg,#f7f6f4,#ecebe8);display:grid;place-items:center}
.jte-prod b{display:block;font-size:14px;font-weight:600;color:#171717}
.jte-prod small{font-size:12px;color:#6b7079}
.jte-prod .jte-x{border:0;background:transparent;color:var(--jv-text-muted);font-size:12px;font-weight:600;cursor:pointer}
.jte-prod .jte-x:hover{color:var(--jv-primary)}
.jte-tip{display:flex;gap:8px;align-items:flex-start;background:#fff4ef;border-radius:10px;padding:9px 11px;font-size:12px;color:var(--jv-text-secondary);margin-bottom:12px}
.jte-tip a{color:var(--jv-primary);font-weight:600}

/* «Проф. расчёт» = .jte-jvc-prof__toggle */
.jte-more{margin-top:4px}
.jte-more summary{list-style:none;display:flex;align-items:center;gap:6px;padding:6px 0;font-size:12px;font-weight:600;color:var(--jv-text-muted);cursor:pointer}
.jte-more summary::-webkit-details-marker{display:none}
.jte-more summary:hover{color:var(--jv-primary)}
.jte-more summary svg{transition:transform .2s}
.jte-more[open] summary svg{transform:rotate(180deg)}
.jte-more[open] summary{margin-bottom:10px}

/* ── результат ── */
.jte-res{display:flex;flex-direction:column;gap:16px}
@media(min-width:1001px){.jte-res{position:sticky;top:16px}}
/* тёмная сводка = .jte-jvc-project__card */
.jte-sum{background:var(--jv-dark);border-radius:20px;padding:22px;color:#fff;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);gap:22px}
@media(max-width:1300px){.jte-sum{grid-template-columns:minmax(0,1fr)}}
.jte-sum-ttl{font-size:13px;font-weight:700;opacity:.7;margin-bottom:10px}
.jte-sum-big{display:flex;align-items:baseline;gap:8px}
.jte-sum-big b{font-size:44px;font-weight:800;letter-spacing:-.02em;line-height:1}
.jte-sum-big span{font-size:16px;opacity:.6}
.jte-sum-sub{font-size:13px;opacity:.75;margin-top:10px;line-height:1.45}
.jte-sum-sub b{color:var(--jv-accent-dark);opacity:1}
.jte-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;align-content:start}
.jte-stat{border-top:1px solid rgba(255,255,255,.12);padding-top:10px;min-width:0}
.jte-stat-k{font-size:11px;opacity:.55}
.jte-stat-v{font-size:20px;font-weight:700;line-height:1.2;margin-top:2px}
.jte-stat-v.acc{color:var(--jv-accent-dark)}
.jte-stat-s{font-size:11px;opacity:.55}
.jte-pdfrow{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.jte-pdf{flex:1 1 220px;height:46px;background:var(--jv-primary);border:0;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:700;color:#fff;cursor:pointer;transition:background .2s}
.jte-pdf:hover{background:var(--jv-primary-hover)}
.jte-pdf2{flex:1 1 220px;height:46px;background:transparent;border:1.5px solid rgba(255,255,255,.25);border-radius:12px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .2s}
.jte-pdf2:hover{border-color:var(--jv-accent-dark);color:var(--jv-accent-dark)}
.jte-prn{flex:0 0 46px;height:46px;border-radius:12px;border:1.5px solid rgba(255,255,255,.25);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}
.jte-prn:hover{border-color:var(--jv-accent-dark);color:var(--jv-accent-dark)}
.jte-sum.bad .jte-sum-big b{color:#ffb3a1}

/* серые карточки = .jte-jva-tpl */
.jte-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:1300px){.jte-charts{grid-template-columns:minmax(0,1fr)}}
.jte-gcard{background:var(--jv-bg-surface);border-radius:24px;padding:22px 24px}
.jte-gcard h3{font-size:16px;font-weight:600;color:#171717;margin:0 0 2px}
.jte-gcard .jte-sub{font-size:12px;color:#6b7079;margin:0 0 12px}
.jte-gcard svg{width:100%;height:auto;display:block}
.jte-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#6b7079;margin-top:8px}
.jte-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}

/* таблица по годам */
.jte-tcard{background:#fff;border:1.5px solid var(--jv-border);border-radius:18px;padding:18px 18px 8px;margin-top:16px}
.jte-tcard .jte-sh{margin-bottom:8px}
.jte-tw{overflow-x:auto}
table.jte-yr{border-collapse:collapse;width:100%;font-size:13px;min-width:640px;font-variant-numeric:tabular-nums}
table.jte-yr th,table.jte-yr td{padding:10px 12px;text-align:right;border-bottom:1px solid #f0f0f0;white-space:nowrap}
table.jte-yr th:first-child,table.jte-yr td:first-child{text-align:left;white-space:normal;min-width:200px;color:var(--jv-text-secondary)}
table.jte-yr thead th{background:var(--jv-bg-surface);font-size:11px;font-weight:700;color:#8a8a8a;text-transform:uppercase;letter-spacing:.03em;border:0}
table.jte-yr thead th:first-child{border-radius:9px 0 0 9px}table.jte-yr thead th:last-child{border-radius:0 9px 9px 0}
table.jte-yr tr.tot td{font-weight:700;color:#171717}
table.jte-yr tr:last-child td{border-bottom:0}
table.jte-yr .neg{color:#c23a2b}table.jte-yr .pos{color:var(--good)}

/* предупреждение = .jte-jvc-error-like мягкое */
.jte-note{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 18px;border-radius:12px;background:rgba(233,78,27,.06);border:1px solid rgba(233,78,27,.2);font-size:13px;color:var(--jv-text-secondary)}
.jte-note svg{flex:none;margin-top:1px}
.jte-note a{color:var(--jv-primary);font-weight:600}

.jte-ph-note{font-size:12px;color:#b0b0b0;font-style:italic}

/* модалка */
.jte-modal{position:fixed;inset:0;background:rgba(23,23,23,.45);display:none;align-items:center;justify-content:center;z-index:50;padding:16px}
.jte-modal.on{display:flex}
.jte-mbox{background:#fff;border-radius:20px;max-width:440px;width:100%;padding:26px}
.jte-mbox h3{margin:0 0 6px;font-size:22px;font-weight:600;color:#000}
.jte-mbox p{margin:0 0 16px;color:var(--jv-text-secondary);font-size:14px}
.jte-chk{display:flex;gap:8px;font-size:12px;color:#6b7079;margin:4px 0 16px;align-items:flex-start}
.jte-btn{height:44px;padding:0 22px;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.jte-btn--primary{background:var(--jv-primary);color:#fff;box-shadow:0 6px 16px rgba(233,78,27,.28)}
.jte-btn--primary:hover{background:var(--jv-primary-hover)}
.jte-btn--ghost{background:#fff;color:var(--jv-text-secondary);border-color:var(--jv-border)}
.jte-btn--ghost:hover{border-color:var(--jv-primary);color:var(--jv-primary)}

/* ═════ PDF-отчёт: по образцу jv_calc_report_pdf.jte-twig ═════ */
#reportView{display:none;margin:0 -12px;border-radius:24px;background:#e9eaed;padding:28px 0 60px}
.jte.show-report #pageView{display:none}
.jte.show-report #reportView{display:block}
.jte-rep-tools{width:210mm;max-width:calc(100% - 32px);margin:0 auto 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:#6b7079}
.jte-a4{width:210mm;min-height:297mm;max-width:calc(100% - 32px);margin:0 auto 18px;background:#fff;box-shadow:0 6px 30px rgba(0,0,0,.12);padding:12mm 11mm;display:flex;flex-direction:column;font-size:10pt;line-height:1.45;color:#171717}
.jte-r-top{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:8px}
.jte-r-top img{width:132px;display:block}
.jte-r-subt{font-size:8.5pt;color:#8a8a8a;margin-top:5px;text-transform:uppercase;letter-spacing:.3pt}
.jte-r-meta{text-align:right;font-size:8.5pt;color:#8a8a8a}
.jte-r-rule{height:2px;background:var(--jv-primary)}
.jte-r-h1{font-size:17pt;font-weight:700;margin:12px 0 2px;line-height:1.2}
.jte-r-lead{font-size:9pt;color:#8a8a8a;margin:0 0 10px}
.jte-r-sum{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:0 0 12px}
.jte-r-sum div{background:var(--jv-bg-surface);padding:8px 11px}
.jte-r-k{font-size:6.5pt;color:#8a8a8a;text-transform:uppercase;letter-spacing:.4pt}
.jte-r-v{font-size:12pt;font-weight:700;line-height:1.2;margin-top:1px}
.jte-r-h2{font-size:8.5pt;font-weight:700;text-transform:uppercase;letter-spacing:.6pt;color:#8a8a8a;margin:12px 0 6px}
.jte-r-hero{border:1px solid var(--jv-primary);margin-bottom:6px}
.jte-r-hero-hd{background:var(--jv-primary);color:#fff;font-size:7pt;font-weight:700;text-transform:uppercase;letter-spacing:.5pt;padding:6px 13px;display:flex;justify-content:space-between}
.jte-r-hero-bd{display:grid;grid-template-columns:1fr 24px 1fr 25%;align-items:stretch}
.jte-r-hero-bd>div{padding:10px 12px}
.jte-r-nm{font-size:12pt;font-weight:700;line-height:1.2}
.jte-r-hs{font-size:8.5pt;color:#8a8a8a;margin-top:5px}
.jte-r-hs b{color:#303131}
.jte-r-arr{display:grid;place-items:center;color:var(--jv-primary);font-size:14pt;padding:0!important}
.jte-r-pay{background:#FAFAFB;text-align:center;display:flex;flex-direction:column;justify-content:center}
.jte-r-pay b{font-size:26pt;font-weight:700;color:var(--jv-primary);line-height:1}
.jte-r-pay span{font-size:7pt;color:#8a8a8a;text-transform:uppercase;letter-spacing:.3pt;margin-top:4px}
.jte-r-charts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.jte-r-charts>div{border:1px solid #e2e2e2;padding:8px 10px}
.jte-r-cap{font-size:7pt;color:#8a8a8a;margin-top:4px}
table.jte-r-t{width:100%;border-collapse:collapse;font-size:8.5pt;font-variant-numeric:tabular-nums}
table.jte-r-t th{background:var(--jv-bg-surface);color:#8a8a8a;font-size:7pt;font-weight:700;text-transform:uppercase;letter-spacing:.3pt;padding:6px 7px;text-align:right}
table.jte-r-t td{padding:4px 7px;border-bottom:1px solid #efefef;text-align:right}
table.jte-r-t th:first-child,table.jte-r-t td:first-child{text-align:left}
table.jte-r-t tr.tot td{font-weight:700}
.jte-r-in{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;font-size:8.5pt}
.jte-r-in div{display:flex;justify-content:space-between;border-bottom:1px solid #efefef;padding:4px 0}
.jte-r-in span{color:#8a8a8a}
.jte-r-prod{display:grid;grid-template-columns:19% 1fr 90px;border:1px solid #e2e2e2}
.jte-r-prod>div{padding:9px 12px}
.jte-r-prod .jte-ph{background:linear-gradient(145deg,#f7f6f4,#ecebe8);min-height:90px}
.jte-r-prod ul{margin:6px 0 0;padding-left:14px;font-size:8.5pt;color:#303131}
.jte-r-url{color:var(--jv-primary)}
.jte-qr{text-align:center;font-size:7pt;color:#8a8a8a}
.jte-qr svg{width:72px;height:72px;display:block;margin:0 auto 3px}
.jte-r-mgr{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:10px}
.jte-r-mgr>div{background:var(--jv-bg-surface);padding:10px 12px;font-size:9pt}
.jte-r-mgr b{display:block;font-size:10.5pt}
.jte-r-warn{font-size:8pt;color:#303131;border-left:3px solid var(--jv-primary);background:#FAFAFB;padding:8px 11px;margin-top:10px}
.jte-r-foot{margin-top:auto;padding-top:8px;border-top:1px solid #e2e2e2;display:flex;justify-content:space-between;font-size:7.5pt;color:#8a8a8a}

@media(max-width:760px){.jte-a4{padding:16px;overflow-x:auto;min-height:0}.jte-r-sum,.jte-r-charts,.jte-r-mgr,.jte-r-in{grid-template-columns:1fr}.jte-r-hero-bd{grid-template-columns:1fr}.jte-r-arr{display:none}.jte-r-prod{grid-template-columns:1fr 90px}.jte-r-prod .jte-ph{display:none}}

/* PDF: перед печатью отчёт переносится в <body>, остальное скрываем (см. beforeprint в шаблоне) */
@media print{
  @page{size:A4;margin:0}
  html.jte-printing body>*:not(#reportView){display:none!important}
  html.jte-printing #reportView{display:block!important;padding:0;margin:0;background:#fff}
  html.jte-printing .jte-rep-tools{display:none!important}
  html.jte-printing .jte-a4{box-shadow:none;margin:0;max-width:none;page-break-after:always;min-height:296mm}
  html.jte-printing .jte-a4:last-child{page-break-after:auto}
  html.jte-printing *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* место под текстовым блоком jvct — как у калькулятора и подбора аналога */
.jte-seo{margin:56px 0 24px}

/* 23.10: левая панель по варианту A стенда docs/mockups/teo-layouts-stand.html —
   четыре вопроса на виду, остальное под «Уточнить расчёт» со строкой-сводкой умолчаний */
.jte-qblk+.jte-qblk{margin-top:18px}
.jte-q{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#171717;margin:0 0 10px}
.jte-q i{font-style:normal;flex:none;width:26px;height:26px;border-radius:50%;background:var(--jv-primary);color:#fff;display:grid;place-items:center;font-size:13px}
#lampSeg{margin-top:10px}
.jte-hint a{color:var(--jv-primary)}
.jte-sumline{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:18px;padding:10px 12px;border-radius:12px;background:var(--jv-bg-surface);font-size:12.5px;color:#6b7079}
.jte-sumline b{color:#171717;font-weight:600}
.jte-sumline a{color:var(--jv-primary);font-weight:600;margin-left:auto}
#more{margin-top:12px;border-top:1px solid #eee;padding-top:6px}
.jte-more--in{margin-top:10px;border-top:1px dashed #e3e3e3;padding-top:4px}
/* 23.10: вставка из буфера — не число: поле коротко подсвечивается */
.jte input[data-num].jte-bad{border-color:#c23a2b!important;box-shadow:0 0 0 2px rgba(194,58,43,.15)!important}
/* 26.10: замечания заказчика — три блока ввода, в строке по три поля */
.jte-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.jte-row3 .jte-unit .jte-inp{padding-right:52px}
@media(max-width:560px){.jte-row3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.jte-panel .jte-qblk+.jte-qblk{margin-top:20px;padding-top:18px;border-top:1px solid #eee}
#period button{padding:0 4px}
/* 26.10, замечания 2: подзаголовок блока, подписи плиток не вылезают, ровно по одной линии */
.jte-qsub{font-size:12.5px;color:#6b7079;margin:-4px 0 10px 36px}
.jte-tile{min-width:0;justify-content:flex-start;padding:10px 4px 8px}
.jte-tile span{display:flex;align-items:center;justify-content:center;min-height:2.5em;width:100%;font-size:12.5px;line-height:1.2;text-align:center;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
/* ПРА: расшифровка по наведению/фокусу */
.jte-tt{position:relative;border-bottom:1px dashed currentColor;cursor:help;outline:0}
.jte-ttbox{position:fixed;z-index:1000;width:300px;max-width:calc(100vw - 16px);padding:10px 12px;border-radius:10px;background:#303131;color:#fff;
  font-size:12px;line-height:1.45;box-shadow:0 10px 30px rgba(0,0,0,.18);pointer-events:none;opacity:0;transition:opacity .15s}
.jte-ttbox.on{opacity:1}
.jte-qr img{display:block;margin:0 auto 3px;image-rendering:pixelated}
/* 26.10: левый блок шире и с воздухом; «Люминесцентная» в одну строку; название товара — не ссылкой-синим */
.jte-work{grid-template-columns:minmax(0,580px) minmax(0,1fr);gap:20px}
@media(min-width:1001px) and (max-width:1279px){.jte-work{grid-template-columns:minmax(0,500px) minmax(0,1fr)}}
@media(max-width:1000px){.jte-work{grid-template-columns:minmax(0,1fr)}}
.jte-panel{padding:24px 24px 26px}
.jte-panel .jte-qblk+.jte-qblk{margin-top:26px;padding-top:24px}
.jte-q{margin-bottom:6px}
.jte-qsub{margin:0 0 14px 36px}
.jte-tiles{gap:10px;margin-bottom:14px}
.jte-tile{padding:12px 6px 10px}
.jte-tile span{min-height:1.4em;white-space:nowrap;hyphens:none;-webkit-hyphens:none;overflow-wrap:normal;font-size:13px;letter-spacing:-.01em}
@media(min-width:1001px) and (max-width:1279px){.jte-tile span{font-size:12px}}
.jte-panel .jte-row2,.jte-panel .jte-row3{gap:12px}
.jte-panel .jte-field{margin-bottom:14px}
#presetHint{margin-top:8px!important;margin-bottom:6px}
.jte-prod{padding:10px 12px;margin-bottom:10px}
.jte-prod b a{color:#171717;text-decoration:none}
.jte-prod b a:hover{color:var(--jv-primary)}
@media(max-width:560px){.jte-panel{padding:18px 16px 20px}.jte-tile span{font-size:12px}}
/* 26.10: карточка светильника — «Заменить» под характеристиками, а не отдельной колонкой;
   название не длиннее двух строк; характеристики переносятся только целыми кусками */
.jte-prod{grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:12px 14px}
.jte-prod .jte-ph{width:64px;height:64px;overflow:hidden}
.jte-prod b{font-size:14.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.jte-prod small{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:4px;font-size:12.5px;line-height:1.4}
.jte-prod small span{white-space:nowrap}
.jte-prod .jte-x{grid-column:2;justify-self:start;margin-top:-6px;padding:0;color:var(--jv-primary);font-size:12.5px}
.jte-prod .jte-x:hover{text-decoration:underline}
#chipImg img{width:64px!important;height:64px!important}
@media(max-width:560px){.jte-row3>.jte-field:nth-child(n+3){grid-column:1/-1}}
a.jte-pdf2{display:flex;align-items:center;justify-content:center;text-decoration:none}
/* иконка «Скачать PDF-отчёт» — белая: общий CSS темы красит svg в #999 */
.jte .jte-pdf svg,.jte .jte-pdf svg *{stroke:#fff!important}
