/* /kalkulyator/teplyy-pol/ — калькулятор электрического тёплого пола. Общие классы калькулятора — в main.css (.calc…). */
/* Широкие таблицы прокручиваются внутри .tbl-wrap, а не растягивают колонку страницы. */
.land-main{min-width:0}
.tp-h{font-size:17px;font-weight:800;color:var(--ink);margin:4px 0 12px;letter-spacing:-.01em}
.tp .tp-h:not(:first-child){margin-top:24px}
.tp-hint{font-size:14px;color:var(--muted);margin:10px 0 0}
.tp-types{border:0;padding:0;margin:24px 0 0;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px}
.tp-types legend{padding:0;grid-column:1/-1}
.tp-type{position:relative;display:block;cursor:pointer}
.tp-type input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.tp-type-b{display:flex;flex-direction:column;gap:3px;height:100%;padding:14px 16px;border-radius:0;background:#fff;transition:border-color .2s,box-shadow .2s,background-color .2s}
.tp-type-b b{font-size:15px;color:var(--ink);line-height:1.3}
.tp-type-w{font-size:14px;font-weight:800;color:var(--volt-d);font-variant-numeric:tabular-nums}
.tp-type-b small{font-size:14px;color:var(--muted);line-height:1.45}
.tp-type:hover .tp-type-b{border-color:var(--acc-ink)}
.tp-type input:checked + .tp-type-b{border-color:var(--acc-ink)}
.tp-w-row{margin-top:14px;align-items:end}
.tp-hint-w{margin:0 0 4px}

.tp-meter{margin:4px 0 16px}
.tp-meter-top{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:var(--muted);margin-bottom:6px}
.tp-meter-top span:last-child{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.tp-meter-bar{position:relative;border-radius:0;overflow:hidden}
.tp-meter-bar i{position:absolute;left:0;width:0;border-radius:0;background:var(--ok);transition:width .45s var(--ease),background-color .3s}
.tp-meter-bar i.mid{background:var(--signal)}
.tp-meter-bar i.hi{background:var(--bad)}
.tp-meter-mark{position:absolute;top:-2px;bottom:-2px;left:66.666%;width:2px;background:var(--ink);opacity:.55}
.tp-meter-scale{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);margin-top:4px;font-variant-numeric:tabular-nums}

.tp-verdict{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.tp-verdict li{display:grid;grid-template-columns:150px 1fr;gap:4px 14px;padding:12px 14px;border-left:4px solid var(--ok);border-radius:0;background:#fff;font-size:14.5px}
.tp-verdict li.warn{border-left-color:var(--signal)}
.tp-verdict li.stop{border-left-color:var(--bad)}
.tp-verdict b{color:var(--ink);font-size:13px;text-transform:uppercase;letter-spacing:.05em;padding-top:2px}
.tp-verdict span{color:var(--body)}
.tp-verdict a{color:var(--volt-d);font-weight:600}
.tp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 12px}
.tp-actions .btn-line{color:var(--ink)}
.tp-copied{font-size:14px;color:var(--ok);font-weight:600}

@media (max-width:640px){
  .tp-verdict li{grid-template-columns:1fr}
  .tp-actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .tp-type-b,.tp-meter-bar i{transition:none}
}
.tp-still .tp-type-b,.tp-still .tp-meter-bar i{transition:none}
/* фирменный вид: типы пола — плашки с фаской, рамки внутренней тенью */
.tp-type-b,.tp-verdict li{--c:var(--c-s);clip-path:polygon(var(--c) 0,100% 0,100% calc(100% - var(--c)),calc(100% - var(--c)) 100%,0 100%,0 var(--c))}
.tp-type-b{border:0;box-shadow:inset 0 0 0 1px var(--steel)}
.tp-type:hover .tp-type-b{box-shadow:inset 0 0 0 2px var(--acc-ink)}
.tp-type input:checked + .tp-type-b{background:var(--acc-wash);box-shadow:inset 0 0 0 2px var(--acc-ink)}
.tp-type input:focus-visible + .tp-type-b{box-shadow:inset 0 0 0 3px var(--acc-ink)}
.tp-verdict li{border:0;box-shadow:inset 0 0 0 1px var(--steel),inset 4px 0 0 var(--ok)}
.tp-verdict li.warn{box-shadow:inset 0 0 0 1px var(--steel),inset 4px 0 0 var(--signal)}
.tp-verdict li.stop{box-shadow:inset 0 0 0 1px var(--steel),inset 4px 0 0 var(--bad)}
.tp-meter-bar{height:12px;padding:2px;background:var(--steel)}
.tp-meter-bar i{top:2px;bottom:2px}
