/* IMBF Fit: страницы-инструменты (калькуляторы, каталог, справочники). Дополняет fit.css. */
body.sp{padding-bottom:64px}
.sp a.brand{text-decoration:none}
.sp .top{flex-wrap:wrap}
.tl{display:flex;gap:6px;overflow-x:auto;max-width:1100px;margin:0 auto;padding:8px 16px 2px;scrollbar-width:thin}
.tl a{flex:0 0 auto;font-size:.82rem;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 12px;min-height:34px;display:inline-flex;align-items:center}
.tl a[aria-current=page]{background:var(--acc);border-color:var(--acc);color:var(--accink);font-weight:700}
.sp-main{max-width:1100px;margin:0 auto;padding:12px 16px 24px}
.sp-main h1{font-size:1.5rem;line-height:1.25;margin:6px 0 8px}
.sp-main h2{font-size:1.15rem;margin:22px 0 8px}
.sp-main h3{font-size:1rem;margin:14px 0 6px}
.sp-main p,.sp-main li{line-height:1.55}
.sp-main .lead{font-size:1.02rem;color:var(--ink)}
.sp-main ul,.sp-main ol{padding-left:22px}
.sp-grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:16px;align-items:start}
@media(max-width:820px){.sp-grid{grid-template-columns:minmax(0,1fr)}}
.sp .card h2{margin-top:0}
.res-big{font-size:2rem;font-weight:800;color:var(--acc);line-height:1.1}
.res-big small{font-size:1rem;font-weight:600;color:var(--mut)}
.kv{width:100%;border-collapse:collapse;font-size:.92rem}
.kv th,.kv td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.kv th{font-weight:500;color:var(--mut)}
.kv td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.formula{background:var(--acc2);border-radius:10px;padding:10px 12px;font-size:.88rem;overflow-wrap:anywhere}
.warnbox{background:#fff4d6;color:#5b4400;border:1px solid #e8cf86;border-radius:10px;padding:8px 12px;font-size:.88rem;margin:8px 0}
html[data-theme=dark] .warnbox{background:#3b321f;color:#f1d395;border-color:#6b5a2e}
.errbox{background:#fde7e5;color:#7a1a14;border:1px solid #f0b3ae;border-radius:10px;padding:8px 12px;font-size:.88rem;margin:8px 0}
html[data-theme=dark] .errbox{background:#46211e;color:#ffd1cc;border-color:#7a3a35}
.cta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.cta .btn,.sp .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink);text-align:center}
.cta .btn.pri{color:var(--accink)}
.mbar{display:flex;height:16px;border-radius:8px;overflow:hidden;margin:8px 0;background:var(--bar)}
.mbar i{display:block;height:100%}
.mb-p{background:#2c8a5b}.mb-f{background:#d29a1f}.mb-c{background:#3f7fd0}
.leg{display:flex;gap:12px;flex-wrap:wrap;font-size:.82rem;color:var(--mut)}
.leg b{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px}
.ctl{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin:10px 0}
.ctl label{margin:0;flex:1 1 150px}
.ctl label.sm{flex:0 1 110px}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.dt{width:100%;border-collapse:collapse;font-size:.88rem}
.dt th,.dt td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:right;vertical-align:middle}
.dt th:first-child,.dt td:first-child{text-align:left}
.dt thead th{position:sticky;top:0;background:var(--card);font-weight:600;white-space:nowrap}
.dt thead th button{all:unset;cursor:pointer;color:var(--acc);display:inline-flex;gap:3px;align-items:center;min-height:30px}
.dt thead th button:focus-visible{outline:2px solid var(--acc)}
.dt td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.dt td.nd,.nd{color:var(--mut);font-size:.82em}
.dt tr[hidden]{display:none}
.dt td a{color:var(--ink)}
.dt .cat{display:block;font-size:.74rem;color:var(--mut)}
.dt .ad{min-width:36px;min-height:36px;border:1px solid var(--line);background:var(--acc2);border-radius:8px;cursor:pointer;color:var(--acc);font-size:1.05rem}
.dt .inc{font-size:.72rem;color:var(--warn);display:block}
.cnt{font-size:.85rem;color:var(--mut);margin:6px 0}
.stat4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}
.stat4 div{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 6px;text-align:center}
.stat4 b{display:block;font-size:1.35rem;color:var(--acc);font-variant-numeric:tabular-nums}
.stat4 span{font-size:.78rem;color:var(--mut)}
@media(max-width:480px){.stat4{grid-template-columns:repeat(2,1fr)}}
.rel{display:flex;gap:6px;flex-wrap:wrap;padding:0;list-style:none}
.rel a{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:6px 12px;text-decoration:none;background:var(--card)}
.faq details{border:1px solid var(--line);border-radius:10px;background:var(--card);margin:6px 0;padding:0 12px}
.faq summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.faq details p{margin:0 0 10px}
.src{font-size:.84rem;color:var(--mut)}
.back{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--card);border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));display:flex;gap:8px;justify-content:center}
.back a{flex:1;max-width:420px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--acc);color:var(--accink);font-weight:700;text-decoration:none}
.sp .foot a{color:var(--mut)}
.cmp{margin:10px 0}
.cmp[hidden]{display:none}
.toolnav{display:flex;flex-wrap:wrap;gap:6px 14px;margin:6px 0}
.toolnav a{font-size:.88rem}
@media print{.back,.tl,.top .ib{display:none}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* крошки и меню в одну колонку с содержимым */
.sp .crumbs,.sp .tl{max-width:1100px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.sp .crumbs{padding-top:10px}.sp .tl{padding-top:8px}.sp .top{padding-left:max(14px,calc((100% - 1100px)/2 + 16px));padding-right:max(14px,calc((100% - 1100px)/2 + 16px))}
