/* Кабинет «Сталь-Мастер»: страницы входа, приглашения, нового пароля и шапка экрана клиента. */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
:root{--ink:#101820;--red:#C8212C;--red2:#a81a23;--gray:#C5C6C6;--soft:#F4F4F4;--line:#E3E4E5;--muted:#6B7075;--ok:#2e7d32}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.gate{margin:0;min-height:100vh;background:var(--soft);color:var(--ink);font:500 15px/1.5 Montserrat,Arial,sans-serif;display:flex;flex-direction:column}
.gate button,.gate input{font:inherit;color:inherit}
.gate :focus-visible{outline:2px solid var(--red);outline-offset:2px}
.gate .bar-top{background:var(--ink);padding:14px 20px;display:flex;justify-content:center}
.gate .bar-top img{height:40px;width:auto;display:block}
.gate main{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:28px 16px 48px}
.card{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px 24px 24px;box-shadow:0 1px 2px rgba(16,24,32,.04)}
.card h1{font-size:22px;line-height:1.25;margin:0 0 6px;font-weight:800}
.card .sub{color:var(--muted);margin:0 0 18px;font-size:14px}
.oc-mem{margin:4px 0 0;font-size:12.5px;color:var(--muted)}
.oc-mem .lnk{background:none;border:0;padding:0;color:#C8212C;text-decoration:underline;cursor:pointer;font:inherit}
.note{background:#fff7e6;border:1px solid #f1d39a;border-radius:8px;padding:12px 14px;font-size:14px;margin:0 0 18px}
.note b{display:block;margin-bottom:2px}
.linkbtn{background:none;border:0;padding:0;color:var(--red);font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.field{display:block;margin:0 0 14px}
.field span{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.field input{width:100%;border:1.5px solid var(--gray);border-radius:6px;padding:12px 14px;font-size:16px;background:#fff;-webkit-appearance:none;appearance:none}
.field input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(200,33,44,.15)}
.check{display:flex;align-items:center;gap:10px;margin:2px 0 18px;font-size:14px;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--red)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:#fff;border:2px solid var(--red);border-radius:6px;padding:13px 18px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;width:100%}
.btn:hover{background:var(--red2);border-color:var(--red2)}
.btn:disabled{opacity:.6;cursor:default}
.btn.o{background:#fff;color:var(--ink);border-color:var(--ink)}
.btn.o:hover{background:var(--ink);color:#fff}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:14px;flex-wrap:wrap}
.msg{margin:0 0 14px;padding:10px 12px;border-radius:6px;font-size:14px}
.msg.err{background:#fdecec;color:#8c1820;border:1px solid #f3c2c5}
.msg.ok{background:#eaf5eb;color:#1f5f23;border:1px solid #bfdcc1}
.msg.info{background:var(--soft);color:var(--ink)}
#bad .btn{margin-top:10px}
.panel{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}
.panel h2{font-size:16px;margin:0 0 6px}
.panel p{margin:0 0 14px;color:var(--muted);font-size:14px}
.firms{margin:0 0 18px;padding:12px 14px;background:var(--soft);border-radius:8px}
.firms b{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.firms ul{margin:0;padding-left:18px}
.hint{font-size:13px;color:var(--muted);margin:-8px 0 14px}
.foot{color:var(--muted);font-size:12px;text-align:center;padding:0 16px 24px}
[hidden]{display:none!important}

/* шапка экрана клиента (поверх стилей экрана заказа) */
.top .who{margin-left:auto;display:flex;align-items:center;gap:14px;font-size:13px;color:#fff}
.top .who .nm{text-align:right;line-height:1.25}
.top .who .nm small{display:block;opacity:.65;font-size:11px}
.top .firm{display:flex;flex-direction:column;gap:2px}
.top .firm label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.65}
.top .firm select{background:#1d2731;color:#fff;border:1px solid #3a4652;border-radius:4px;padding:6px 8px;font:600 13px Montserrat,Arial,sans-serif;max-width:260px}
.top .out{background:none;border:1px solid #3a4652;color:#fff;border-radius:4px;padding:7px 10px;font:700 11px Montserrat,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.top .out:hover{border-color:#fff}
.soonbar{background:#fff7e6;border-bottom:1px solid #f1d39a;font-size:13px;padding:8px 32px;text-align:center}
@media (max-width:760px){
  .top .in{flex-wrap:wrap;gap:10px 14px;padding:10px 16px}
  .top .who{width:100%;margin-left:0;flex-wrap:wrap;gap:8px 10px;align-items:flex-end}
  .top .who .nm{text-align:left;width:100%}
  .top .firm{flex:1;min-width:0}
  .top .firm select{max-width:none;width:100%}
  .soonbar{padding:8px 16px}
}

/* «Мои заказы» (часть 3) */
.nav .navlink{color:#fff;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:10px 14px;border-radius:4px;text-decoration:none}
.nav .navlink.on,.nav .navlink:hover{background:#fff;color:var(--ink)}
body.mo{padding-bottom:40px}
.top .nav-find{margin-left:10px;display:flex}
.top .nav-find input{background:#1d2731;color:#fff;border:1px solid #3a4652;border-radius:4px;padding:7px 10px;font:600 13px Montserrat,Arial,sans-serif;width:180px}
.top .nav-find input::placeholder{color:#9aa4ae}
.top .nav-find input:focus{outline:none;border-color:#fff}
@media (max-width:900px){.top .nav-find input{width:120px}}
.mo-find{margin-left:auto;max-width:320px;font-size:14px}
@media (max-width:760px){.mo-find{margin-left:0;max-width:none;width:100%}}
.mo-foundnote .lnk{background:none;border:0;padding:0;color:#C8212C;text-decoration:underline;cursor:pointer;font:inherit}
.oc-usual.on{background:var(--ink);color:#fff}
.oc-usual-box{margin-top:12px}
.oc-urows{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.oc-urow{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 14px}
.oc-urow .nm{font-weight:700;font-size:14px}.oc-urow .tg{font-size:12px;color:var(--muted)}.oc-urow .p{font-weight:800;white-space:nowrap}
@media (max-width:760px){.oc-urow{grid-template-columns:1fr auto}.oc-urow .p{grid-column:1}}
/* шапка на планшете (В4, 22.10): 760–1100 px — теснее кнопки, переносы, без мелкой подписи под именем */
@media (min-width:761px) and (max-width:1100px){
  .top .in{gap:12px;padding:10px 16px;flex-wrap:wrap}
  .nav{flex-wrap:wrap;gap:2px}
  .nav .navlink,.nav button,.nav .soon{padding:8px 9px;letter-spacing:.05em;font-size:11px}
  .top .who{gap:10px}.top .who .nm small{display:none}
  .top .nav-find{margin-left:0}.top .nav-find input{width:130px}
  .top .firm select{max-width:170px}
  /* проверка заказа на планшете: боковая колонка под составом — иначе названиям позиций остаётся 80 px и они ломаются по слову (22.10) */
  .rev{grid-template-columns:1fr}.rev .side{max-width:460px}
}
.mo-xls{color:var(--muted);text-decoration:underline}.mo-xls:hover{color:var(--ink)}
.oc-tdesc{display:block;font-size:11.5px;color:var(--muted);line-height:1.3;margin-top:2px;font-weight:400}
.mo-lg{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--muted);margin:0 0 10px}
.mo-lg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.mo-lg i.ready{background:#2e8b47}.mo-lg i.work{background:#e08a2e}.mo-lg i.queue{background:#9aa0a6}.mo-lg i.late{background:#c62828}.mo-lg i.done{background:#fff;box-shadow:0 0 0 2px #b9dcc0 inset}
.mo-steps{list-style:none;display:flex;margin:10px 0 0;padding:0;counter-reset:s}
.mo-steps li{flex:1;position:relative;text-align:center;font-size:11px;color:var(--muted);padding-top:14px}
.mo-steps li::before{content:"";position:absolute;left:0;right:0;top:5px;height:2px;background:#e3e6e9}
.mo-steps li:first-child::before{left:50%}.mo-steps li:last-child::before{right:50%}
.mo-steps li i{position:absolute;left:50%;top:0;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#fff;border:2px solid #d5d9dd;box-sizing:border-box;z-index:1}
.mo-steps li.past::before,.mo-steps li.past i{background:#b9dcc0;border-color:#b9dcc0}
.mo-steps li.past+li::before{background:linear-gradient(90deg,#b9dcc0 50%,#e3e6e9 50%)}
.mo-steps li.on i{border-width:3px;background:#fff}
.mo-steps li.on span{font-weight:800;color:var(--ink)}
.mo-steps.ready li.on i{border-color:#2e8b47}.mo-steps.work li.on i{border-color:#e08a2e}.mo-steps.queue li.on i{border-color:#9aa0a6}.mo-steps.late li.on i{border-color:#c62828}.mo-steps.late li.on span{color:#a32020}
.mo-steps.done li.on i,.mo-steps.done li.past i{background:#2e8b47;border-color:#2e8b47}.mo-steps.done li.past::before,.mo-steps.done li.past+li::before{background:#2e8b47}
.ln-note{grid-column:1/-1;margin:-6px 0 8px 0}
.ln-note .lnk{background:none;border:0;padding:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;font-size:12px}
.ln-note .inp{width:100%;font-size:13px}
.mo-top{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:22px 0 6px}
.mo-top h1{font-size:24px;margin:0}
.mo section{margin-top:18px}
.mo section h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-weight:800;display:inline}
.mo section>h2{display:block}
.mo-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:10px}
.mo-card.ready{border-color:#2e7d32;box-shadow:0 0 0 1px #2e7d32 inset}
.mo-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.mo-right{text-align:right;flex:none}
.mo-muted{color:var(--muted);font-size:13px}
.mo-sum{font-weight:800;margin-top:4px}
.mo-st{display:inline-block;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:800;letter-spacing:.02em}
/* цвета статусов — совещание 21.10 (lib/myorders.js statusText) */
.mo-st.ready{background:#dff3e4;color:#1a6a2c}
.mo-st.work{background:#ffecd6;color:#a24d00}
.mo-st.queue{background:#eceef0;color:#555b61}
.mo-st.late{background:#fde8e8;color:#a32020}
.mo-st.done{background:#fff;color:#2e7d32;box-shadow:0 0 0 1px #b9dcc0 inset}
.mo-car{margin-top:8px;font-size:13px;color:#a24d00;background:#fff7ee;border-radius:6px;padding:6px 10px}
.mo-car.go{color:#1a6a2c;background:#eef8f0}
.mo-car a{color:inherit;font-weight:700}
.hm-list li:has(.hm-car){flex-wrap:wrap}
.hm-car{flex-basis:100%;font-size:12px;color:#a24d00}
.hm-car.go{color:#1a6a2c}
.hm-car a{color:inherit;font-weight:700}
.mo-card details{margin-top:10px}
.mo-card summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:700}
.mo-lines{width:100%;border-collapse:collapse;margin:8px 0 10px;font-size:13px}
.mo-lines td{padding:5px 4px;border-top:1px solid #F0F0F0}
.mo-lines td.n{text-align:right;white-space:nowrap}
.mo-lines td.art{width:1%;white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;padding-right:12px}
.mo-exp{margin-top:12px;border-radius:8px;padding:12px 14px;font-size:14px}
.mo-exp.ok{background:#e6f4ea}
.mo-exp.wait{background:#fff7e6}
.mo-exp.form{background:var(--soft)}
.mo-ask{margin:0 0 14px;padding:14px 16px;border-radius:8px;background:#fff7e6;border:1px solid #f0d58a;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;font-size:15px}
.mo-ask-b{display:flex;gap:8px;flex-wrap:wrap}
.mo-lab{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.mo-days,.mo-half{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.mo-err{color:#8c1820;margin:0 0 8px}
.mo-now{margin:0 0 8px}
.mo-empty{color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:8px;padding:18px;text-align:center}
.mo-old summary{list-style:none;cursor:pointer}
.mo-old summary h2::after{content:" ▸";letter-spacing:0}
.mo-old[open] summary h2::after{content:" ▾"}
/* «Выполненные — N» заметнее (21.10): зелёная плашка-кнопка */
.mo-old.mo-done summary h2{display:inline-block;background:#dff3e4;color:#1a6a2c;border:1px solid #b9dcc0;border-radius:999px;padding:8px 16px;margin:6px 0 10px}
.mo-old.mo-done summary:hover h2{background:#cfeed7}
.mo-toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:8px;padding:12px 16px;z-index:60;font-size:14px;max-width:calc(100% - 32px)}
.btn.sm{padding:6px 12px;font-size:11px}
.repeat-note{background:#e6f4ea;border:1px solid #bfdcc1;border-radius:8px;padding:10px 14px;margin:14px 0 0;font-size:14px}
@media (max-width:760px){.mo-head{flex-direction:column}.mo-right{text-align:left}}
/* «глазами клиента»: менеджер смотрит кабинет человека из админки (look.js) */
.look-bar{position:sticky;top:0;z-index:65;display:flex;align-items:center;justify-content:center;gap:10px 16px;flex-wrap:wrap;background:#ffd84d;color:#1d2731;padding:9px 16px;font:600 13px/1.35 Montserrat,Arial,sans-serif;text-align:center}
.look-bar.full{background:#ff9f43}
.look-bar button{background:#1d2731;color:#fff;border:0;border-radius:4px;padding:6px 12px;font:700 11px Montserrat,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
/* «Отгрузки» — календарь клиента (shipments.js): спокойно — белые месяцы, мягкие плашки, цвет только у данных */
.sh-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 14px}
.sh-nav,.sh-today{background:#fff;border:1px solid var(--line);border-radius:8px;height:34px;min-width:34px;padding:0 12px;font:700 15px Montserrat,Arial,sans-serif;color:var(--ink);cursor:pointer}
.sh-today{font-size:12px;letter-spacing:.04em}
.sh-nav:hover,.sh-today:hover{border-color:#b9bcc0}
.sh-lg{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--muted)}
.sh-lg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;vertical-align:0}
.sh-lg i.done,.sh-ship.done{--c:#b8bdc3}.sh-lg i.work,.sh-ship.work{--c:#4a78bd}.sh-lg i.ready,.sh-ship.ready{--c:#2e8b47}.sh-lg i.late,.sh-ship.late{--c:#d9952b}
.sh-lg i{background:var(--c)}
.sh-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sh-m{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 14px 10px}
.sh-m h3{margin:2px 4px 10px;font-size:16px;font-weight:800}
.sh-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.sh-wh{font-size:11px;font-weight:700;color:#9aa0a6;text-align:center;padding:0 0 4px;text-transform:uppercase;letter-spacing:.06em}
.sh-c{position:relative;min-height:78px;border-radius:10px;padding:6px 6px 6px;background:none;border:0;text-align:left;font:inherit;color:inherit;display:flex;flex-direction:column;gap:4px}
button.sh-c{cursor:pointer}
button.sh-c:hover{background:#f6f7f8}
.sh-c.other{opacity:.35}
.sh-dn{font-size:13px;font-weight:700;padding-left:2px}
.sh-c.past .sh-dn{color:#a2a7ac}
.sh-c.today .sh-dn{color:#fff;background:var(--red);border-radius:12px;align-self:flex-start;padding:1px 7px}
.sh-c.pick{background:#f1f5fb;box-shadow:inset 0 0 0 1px #c9d7ee}
.sh-ship{display:block;border-radius:7px;padding:5px 7px;background:#f5f7fa;background:color-mix(in srgb,var(--c) 12%,#fff);border-left:3px solid var(--c);line-height:1.25}
.sh-ship b{display:block;font-size:11px;font-weight:700}
.sh-ship small{display:block;font-size:11px;color:var(--muted)}
.sh-ship.done{color:#8a9096}
.sh-undated{margin:14px 2px 0}
.sh-day{margin-top:24px}
.sh-day .mo-card{border-radius:12px}

/* ГЛАВНАЯ (21.10, пуск): плашки, плитки сводки, кнопки, менеджер */
.nav .navlink.help{margin-left:auto;color:var(--muted)}
.hm-hello h1{margin:18px 0 4px;font-size:26px}
.hm-hello p{margin:0 0 14px}
.hm-notices{display:flex;flex-direction:column;gap:8px;margin:0 0 16px}
.hm-notice{border-radius:12px;padding:12px 16px;border:1px solid var(--line);background:#fff}
.hm-notice b{display:block;font-size:15px}
.hm-notice p{margin:4px 0 0;font-size:14px}
.hm-notice a{display:inline-block;margin-top:6px;font-weight:700;color:var(--red)}
.hm-notice.warn{background:#fff6e0;border-color:#f1d28a}
.hm-notice.sale{background:var(--red);border-color:var(--red);color:#fff}
.hm-notice.sale a{color:#fff;text-decoration:underline}
.hm-notice.ok{background:#e8f5ea;border-color:#b9dcc0}
.hm-acts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.hm-btn{min-height:46px;display:inline-flex;align-items:center;padding:0 18px;text-decoration:none}
.hm-btn.help{margin-left:auto}
.hm-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:0 0 16px}
.hm-tile{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.hm-tile-link{display:block;color:inherit;text-decoration:none}
.hm-head{font-size:12px;font-weight:700;color:var(--muted)}
.hm-big{font-size:24px;font-weight:800;margin:4px 0 2px}
.hm-sub{font-size:13px;color:var(--muted)}
.hm-tile.ready{border-color:#2e7d32;box-shadow:0 0 0 1px #2e7d32 inset}
.hm-tile.ready .hm-big{color:#1a6a2c}
.hm-tile.work .hm-big{color:#a24d00}
.hm-tile.late{border-color:#a32020;box-shadow:0 0 0 1px #a32020 inset}
.hm-tile.late .hm-big{color:#a32020}
.hm-tile.empty .hm-big{color:var(--muted);font-weight:700;font-size:18px}
.hm-list{list-style:none;margin:10px 0 0;padding:10px 0 0;border-top:1px solid var(--line);font-size:13px}
.hm-list li{display:flex;gap:8px;align-items:baseline;padding:3px 0}
.hm-list a{color:var(--ink)}
.hm-sum{margin-left:auto;white-space:nowrap;font-weight:700}
.hm-last{font-size:14px;color:var(--muted)}
.hm-tile.money,.hm-tile.firms{margin:0 0 16px}
.hm-tile.firms .hm-sub a{color:#C8212C;font-weight:700}
.hm-tile.money .hm-list{width:max-content;max-width:100%}
.hm-tile.money .hm-list li{display:grid;grid-template-columns:minmax(0,1fr) max-content;column-gap:24px;row-gap:4px;padding:5px 0}
.hm-money-firm{min-width:0;overflow-wrap:anywhere}
.hm-tile.money .hm-sum{margin-left:0}
.hm-tile.money .hm-od{grid-column:1/-1}
.hm-od{flex-basis:100%;font-size:12px;color:#a32020;font-weight:700}
.hm-contact{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-top:8px}
.hm-contact a{color:var(--ink);font-weight:700}
@media (max-width:720px){.hm-btn.help,.nav .navlink.help{margin-left:0}.hm-hello h1{font-size:22px}}

/* КАК ЗАКАЗАТЬ (21.10) */
.hw-main h1{margin:18px 0 6px}
.hw-sub{margin:0 0 18px;font-size:15px}
.hw-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.hw-h2{font-size:22px;margin:34px 0 6px;scroll-margin-top:90px}
.hw-txt a,.hw-faq a{color:#C8212C;font-weight:700;text-decoration:underline;text-underline-offset:2px}.hw-txt a:hover,.hw-faq a:hover{color:#a81a23}
.hw-h2+.hw-sub{margin-bottom:14px}
.hw-step{display:grid;grid-template-columns:140px 1fr;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.hw-pic svg{width:140px;height:105px}
.hw-pic.shot img{display:block;width:100%;border:1px solid var(--line);border-radius:10px;cursor:zoom-in}
.hw-step{grid-template-columns:minmax(220px,38%) 1fr}
.hw-pic.shot img.big{position:fixed;inset:24px;width:auto;max-width:calc(100% - 48px);max-height:calc(100% - 48px);margin:auto;z-index:99;box-shadow:0 10px 40px rgba(0,0,0,.4);cursor:zoom-out;background:#fff}
.hw-txt{position:relative;padding-left:44px}
.hw-n{position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:var(--red);color:#fff;font-weight:800;display:grid;place-items:center}
.hw-txt h2{margin:2px 0 6px;font-size:18px}
.hw-txt p{margin:0 0 6px;font-size:14.5px}
.hw-faq{margin-top:22px}
.hw-faq h2{font-size:18px;margin:0 0 8px}
.hw-faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:8px}
.hw-faq summary{cursor:pointer;font-weight:700}
.hw-faq p{margin:8px 0 0;font-size:14px;line-height:1.7}
.hw-back{margin:20px 0 30px;display:flex;gap:10px}
@media (max-width:640px){.hw-step{grid-template-columns:1fr}.hw-pic svg{width:110px;height:82px}}
@media (max-width:1000px){.sh-two{grid-template-columns:1fr}.sh-two .sh-m+.sh-m{display:none}}
@media (max-width:560px){.sh-c{min-height:54px;padding:4px}.sh-ship{padding:3px 4px}.sh-ship small,.sh-w{display:none}.sh-ship b{font-size:12px;text-align:center}.sh-lg{margin-left:0}}
/* «Мои сотрудники» (21.10): условия клиента в одну строку */
.tm-terms{display:flex;flex-wrap:wrap;gap:12px 40px}
.tm-terms div{display:flex;flex-direction:column;gap:2px}
.tm-terms b{font-size:18px}
/* «Мои сотрудники», часть 2: добавить сотрудника, ссылка, закрыть доступ */
.tm-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}
.tm-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600}
.tm-go{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
#addres{grid-column:1/-1}
@media (max-width:760px){.tm-form{grid-template-columns:1fr}}
.tm-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
/* визуал «Фирмы и сотрудники» (22.10) */
.tm-strip{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 18px;margin:0 0 20px}
.tm-strip span{display:flex;flex-direction:column;gap:1px}.tm-strip small{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700}
.tm-strip b{font-size:18px;line-height:1.2}.tm-strip .tm-strip-note{margin-left:auto;font-size:13px;color:var(--muted);font-weight:500;max-width:34ch}
section>h2 small{font-weight:700;font-size:13px;margin-left:6px}
.tm-firms{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.tm-firm{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px 12px;display:flex;flex-direction:column;gap:10px;border-top:3px solid var(--ink)}
.tm-firm.off{border-top-color:#c5c6c6;background:#fafafa}.tm-firm.off b{color:var(--muted)}
.tm-firm-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.tm-firm-top b{font-size:15px;line-height:1.3}
.tm-codes{display:flex;flex-wrap:wrap;gap:6px}
.tm-code{display:inline-block;font:700 11.5px/1 Montserrat,Arial,sans-serif;letter-spacing:.02em;padding:5px 8px;border-radius:999px;background:#eef1f4;color:#3a4552}
.tm-code.n{background:#fff1e6;color:#a24d00}.tm-code.none{background:#fde8e8;color:#a32020}.tm-code.all{background:#e6f4ea;color:#1a6a2c}.tm-code.firm{background:#eef1f4}
.tm-firm-foot{margin-top:auto}.tm-firm-foot .lnk,.tm-firm-foot .tm-sure{font-size:13px}
.lnk{background:none;border:0;padding:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit}.lnk:hover{color:var(--ink)}
.tm-freq-box{margin:0 0 22px;background:#fff;border:1px dashed #c5c6c6;border-radius:10px;padding:0 18px}
.tm-freq-box summary{cursor:pointer;padding:13px 0;font-weight:800;font-size:14px;list-style:none;display:flex;gap:10px;align-items:center}
.tm-freq-box summary::-webkit-details-marker{display:none}.tm-freq-box summary::before{content:"+";display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;align-items:center;justify-content:center;font-weight:800}
.tm-freq-box[open] summary::before{content:"\2212"}.tm-freq-box .tm-freq{padding:4px 0 16px;border-top:1px solid var(--line)}
.tm-person{padding:12px 16px}.tm-person.off{opacity:.65}
.tm-person-row{display:flex;gap:14px;align-items:flex-start}.tm-person-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.tm-person-name b{font-size:15px}
.tm-firmbox{grid-column:1/-1;display:flex;flex-direction:column;gap:6px;font-size:13px}
.tm-chks{display:flex;flex-wrap:wrap;gap:6px 14px}
/* галочки фирм — кнопками-переключателями */
.tm-chk{position:relative;display:inline-flex;align-items:center;white-space:nowrap;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--line);border-radius:6px;padding:7px 12px 7px 30px;background:#fff;color:var(--muted);user-select:none}
.tm-chk input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.tm-chk::before{content:"";position:absolute;left:10px;top:50%;width:14px;height:14px;margin-top:-7px;border:1.5px solid #c5c6c6;border-radius:3px;background:#fff}
.tm-chk:has(input:checked){color:var(--ink);border-color:#b8bdc3;background:#f7f8f9}
.tm-chk:has(input:checked)::before{border-color:var(--ink);background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3 7.5l2.5 2.5L11 4.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.tm-chk:has(input:focus-visible){box-shadow:0 0 0 3px rgba(200,33,44,.2)}
.tm-form .tm-wide{grid-column:span 2}
@media (max-width:760px){.tm-form .tm-wide{grid-column:auto}.tm-strip .tm-strip-note{margin-left:0;max-width:none}.tm-firms{grid-template-columns:1fr}}
.tm-link,.tm-sure{margin-top:10px;border-radius:8px;padding:12px 14px;background:var(--soft);font-size:14px}
.tm-link p{margin:0 0 8px}
.tm-row{display:flex;gap:8px}.tm-row .inp{flex:1;min-width:0}
.tm-sure .btn{margin:8px 8px 0 0}
.tm-form .btn,.tm-acts .btn,.tm-row .btn,.tm-sure .btn{width:auto;flex:none}
/* «Напишите о себе» (21.10, часть 3) — полоса под шапкой */
.pf-bar{background:#fff7e6;border-bottom:1px solid #f1d9a6;padding:12px 0}
.pf-bar p{margin:0 0 8px;font-size:14px}
.pf-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px}
.pf-form label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:600;flex:1 1 160px}
.pf-form .btn{width:auto;flex:none}
.pf-err{flex-basis:100%;color:#b3261e;margin:0}
.pf-note{color:#8a5a00}
.pf-bar.pf-hl{box-shadow:inset 0 0 0 2px #e0a000}
.tm-firm.off b{color:var(--muted)}
.tm-firm.off b{color:var(--muted)}
/* поле пароля с кнопкой «Показать / Скрыть» (22.10): кнопка внутри поля справа, поле не меняет размер */
.pw{position:relative;display:block}
.pw input{padding-right:96px}
.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;padding:6px 8px;color:var(--muted);font:700 12px/1 Montserrat,Arial,sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.pw-eye:hover{color:var(--ink)}

/* подбор списком (28.10): «Карточками | Списком», выбор диаметра и исполнения */
.oc-mode{margin:4px 0 10px}
.oc-pick{margin:0 0 12px;display:flex;flex-direction:column;gap:6px}
.oc-pick .chips{margin:0}

/* ПРАЙС-ЛИСТ (28.10, «как в старом кабинете», оформление): документ — плашка с датой и наценкой, листы-вкладки,
   на каждое изделие — белый лист-таблица с тёмной шапкой, цены ровными цифрами; печать — чистый чёрно-белый лист. */
.pl-doc{display:grid;grid-template-columns:1fr auto;gap:14px 28px;align-items:end;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:20px 24px 16px;margin:18px 0 0;position:relative;overflow:hidden}
.pl-doc::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red)}
.pl-kind{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:6px}
.pl-id h1{margin:0;font-size:clamp(24px,3vw,32px);line-height:1.1;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.pl-id h1 em{font-style:normal;color:var(--ink);font-variant-numeric:tabular-nums}
.pl-for{margin:8px 0 0;font-size:13px;color:var(--muted)}.pl-for b{color:var(--ink);font-weight:700}
.pl-printonly{display:none}
.pl-ctl{display:flex;flex-wrap:nowrap;gap:10px;align-items:flex-end;justify-content:flex-end}
.pl-mark{display:flex;flex-direction:column;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pl-pct{display:flex;align-items:center;height:44px;background:#fff;border:1px solid #cfd2d5;border-radius:6px;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.pl-pct:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px rgba(200,33,44,.12)}
.pl-pct input{width:84px;height:100%;border:0;outline:0;padding:0 4px 0 14px;font:700 18px Montserrat,Arial,sans-serif;color:var(--ink);background:transparent;text-align:right;font-variant-numeric:tabular-nums}
.pl-pct input::placeholder{color:#a3a9b0}
.pl-pct i{font-style:normal;font-weight:800;color:var(--muted);padding:0 14px 0 6px;font-size:16px}
.pl-doc .btn.o.pl-b{width:auto;flex:none;margin:0;padding:0 16px;height:44px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ink);border:1px solid #cfd2d5;text-decoration:none;font-weight:700}
.pl-doc .btn.o.pl-b:hover{background:var(--soft);color:var(--ink);border-color:#aeb3b8}
.pl-b svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.pl-hint{grid-column:1/-1;margin:2px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
.pl-on{display:inline-block;background:#fdecee;color:var(--red2);font-weight:700;letter-spacing:.02em;border-radius:999px;padding:2px 10px;margin-right:6px;font-variant-numeric:tabular-nums}
.pl-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;margin:14px 0 0;border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch}
.pl-tabs::-webkit-scrollbar{display:none}
.pl-tab{flex:none;border:0;background:none;cursor:pointer;font:700 12px Montserrat,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:13px 14px 11px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}
.pl-tab:hover{color:var(--ink)}
.pl-tab.on{color:var(--ink);border-bottom-color:var(--red)}
.pl-tab:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.pl-sheet{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:22px 0 12px}
.pl-sheet h2{margin:0;font-size:20px;font-weight:700;letter-spacing:-.005em}
.pl-sheet p{margin:0;font-size:13px;color:var(--muted)}
.pl-t{background:#fff;border:1px solid var(--line);border-radius:8px;margin:0 0 16px;overflow:hidden}
.pl-th{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 16px 11px}
.pl-th h3{margin:0;font-size:14px;font-weight:700;letter-spacing:.02em}
.pl-th span{font-size:12px;color:var(--muted)}
.pl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.pl{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}
table.pl thead th{background:#f4f5f6;color:var(--ink);font-weight:600;text-align:right;padding:8px 12px;vertical-align:bottom;white-space:nowrap;border-bottom:1px solid var(--line)}
table.pl thead th.pl-h{text-align:center;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 12px 6px;border-bottom:1px solid var(--line)}
table.pl thead th.pl-it,table.pl thead th.pl-d{text-align:left;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);vertical-align:bottom}
table.pl thead th.pl-c b{display:block;font-size:13px;font-weight:700}
table.pl thead th.pl-c small{display:block;font-size:10.5px;font-weight:500;color:var(--muted);margin-top:1px}
table.pl tbody th,table.pl tbody td{padding:7px 12px;border-bottom:1px solid #eef0f2;background:#fff}
table.pl tbody tr:nth-child(even) td,table.pl tbody tr:nth-child(even) th{background:#fafbfc}
table.pl tbody tr.pl-new th,table.pl tbody tr.pl-new td{border-top:1px solid var(--line)}
table.pl tbody tr:first-child th,table.pl tbody tr:first-child td{border-top:0}
table.pl tbody tr:hover td,table.pl tbody tr:hover th{background:#f1f3f5}
table.pl tbody th.pl-it{text-align:left;font-weight:700;white-space:nowrap}
table.pl td.pl-d{white-space:nowrap;color:#3a424b;font-variant-numeric:tabular-nums}
table.pl td.n{text-align:right;white-space:nowrap;font-weight:500;font-variant-numeric:tabular-nums;color:var(--ink)}
table.pl td.pl-x{color:#b8bec4;font-weight:400}
table.pl td.n .pl-rrc{display:block;font-size:10.5px;font-weight:500;color:var(--muted);line-height:1.2}   /* РРЦ под ценой */
/* изделие и диаметр не уезжают при прокрутке вбок — видно, к чему цена */
table.pl .pl-it{position:sticky;left:0;z-index:1}
table.pl .pl-d{position:sticky;left:var(--plw,0);z-index:1;box-shadow:1px 0 0 var(--line)}
table.pl thead .pl-it,table.pl thead .pl-d{z-index:2}
table.pl thead th.pl-d{box-shadow:1px 0 0 var(--line)}
@media (max-width:760px){
  .pl-doc{grid-template-columns:1fr;padding:18px 16px 16px;border-radius:0;margin:0 -16px}
  .pl-ctl{justify-content:flex-start;flex-wrap:wrap}.pl-doc .btn.o.pl-b{flex:1 1 100%;justify-content:center}
  .pl-sheet h2{font-size:19px}
  .pl-t{border-radius:6px}
  table.pl{font-size:12.5px}table.pl tbody th,table.pl tbody td,table.pl thead th{padding:6px 9px}
}
@media print{
  @page{margin:12mm 10mm}
  header.top,.pl-noprint,.look-bar,.pf-bar,#mo-toast{display:none!important}
  body,body.mo{background:#fff!important}main.wrap{max-width:none;padding:0;margin:0}
  .pl-doc{display:block;background:none;color:var(--ink);padding:0 0 6px;margin:0;border-bottom:2px solid var(--ink);border-radius:0}
  .pl-doc::after{display:none}
  .pl-kind{color:var(--muted)}.pl-id h1,.pl-id h1 em{color:var(--ink);font-size:20px}
  .pl-printonly{display:block;color:var(--ink);margin:4px 0 0;font-size:11px}
  .pl-sheet{margin:10px 0 6px}.pl-sheet h2{font-size:15px}.pl-sheet p{font-size:10px}
  .pl-t{box-shadow:none;border:1px solid #999;border-radius:0;margin:0 0 10px;break-inside:avoid-page}
  .pl-th{padding:4px 6px}.pl-th h3{font-size:10.5px}.pl-th span{display:none}
  .pl-scroll{overflow:visible}
  table.pl{font-size:9.5px}
  table.pl thead{display:table-header-group}
  table.pl thead th{background:#e9e9e9!important;color:#000!important;padding:3px 5px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  table.pl thead th.pl-c small,table.pl thead th.pl-h,table.pl thead th.pl-it,table.pl thead th.pl-d{color:#333!important}
  table.pl tbody th,table.pl tbody td{padding:2px 5px;border-bottom:1px solid #ccc;background:#fff!important}
  table.pl .pl-it,table.pl .pl-d{position:static;box-shadow:none}
}
/* «Мой вход» на главной (29.10) */
.hm-login{margin-top:12px}
.hm-pw{margin-top:12px;max-width:420px}
/* уведомления в браузер (29.10) */
.hm-push{border-left:4px solid var(--red)}
.hm-push .btn{margin-top:8px;width:auto;display:inline-block}
.hm-push .linkbtn{margin-left:8px}
.hm-pushrow{margin-top:8px}

/* ---------- КОРЗИНА СПРАВА ВНИЗУ и «Предложить улучшение» (30.10, dock.js) ---------- */
.nav .kd-n{display:inline-block;min-width:18px;margin-left:6px;padding:1px 5px;border-radius:9px;background:var(--red);color:#fff;font:800 10.5px/16px Montserrat,Arial,sans-serif;letter-spacing:0;text-align:center;font-style:normal;vertical-align:1px}
.nav .kd-n[hidden]{display:none}
.kd-fab{position:fixed;right:24px;bottom:24px;z-index:70;display:flex;align-items:center;gap:10px;background:var(--red);color:#fff;border:0;border-radius:30px;padding:12px 20px 12px 16px;font:800 14px Montserrat,Arial,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(16,24,32,.28);transition:background .15s,transform .15s}
.kd-fab:hover{background:var(--red2)}.kd-fab:active{transform:translateY(1px)}
.kd-fab[hidden]{display:none}
.kd-fab b{display:inline-block;min-width:22px;padding:1px 6px;border-radius:11px;background:#fff;color:var(--red);font-size:12.5px;text-align:center}
.kd-ic{width:22px;height:22px;background:no-repeat center/22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M2.5 3.5h3l2.6 11.2a1.5 1.5 0 0 0 1.5 1.1h8.3a1.5 1.5 0 0 0 1.5-1.1L21.5 8H6.6'/%3E%3C/svg%3E")}
.kd-shade{position:fixed;inset:0;z-index:71;background:rgba(16,24,32,.38)}
.kd-shade[hidden],.kd-panel[hidden]{display:none}
.kd-panel{position:fixed;top:0;right:0;bottom:0;z-index:72;width:440px;max-width:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-12px 0 32px rgba(16,24,32,.2);animation:kd-in .18s ease-out}
@keyframes kd-in{from{transform:translateX(24px);opacity:.4}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.kd-panel{animation:none}}
body.kd-open{overflow:hidden}
.kd-head{display:flex;align-items:baseline;gap:10px;padding:18px 20px 14px;border-bottom:1px solid var(--line)}
.kd-head b{font-size:18px}.kd-head span{color:var(--muted);font-size:13px}
.kd-x{margin-left:auto;background:none;border:0;font-size:26px;line-height:1;color:var(--muted);cursor:pointer;padding:0 4px}
.kd-x:hover{color:var(--ink)}
.kd-list{list-style:none;margin:0;padding:4px 20px;overflow-y:auto;flex:1}
.kd-ln{display:grid;grid-template-columns:1fr auto;gap:8px 10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.kd-ln:last-child{border-bottom:0}
.kd-nm{font-size:13.5px;font-weight:600;line-height:1.35}
.kd-nm small{display:block;color:var(--muted);font-size:11.5px;font-weight:500;margin-top:2px}
.kd-del{background:none;border:0;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;align-self:start;padding:0 2px}
.kd-del:hover{color:var(--red)}
.kd-ln .step{justify-self:start}.kd-ln .step .q{width:48px;text-align:center}
.kd-p{font-size:12.5px;color:var(--muted);text-align:right}.kd-p b{color:var(--ink)}
.kd-foot{border-top:1px solid var(--line);padding:14px 20px 18px;display:flex;flex-direction:column;gap:8px;background:var(--soft)}
.kd-tot{display:flex;align-items:baseline;justify-content:space-between}
.kd-tot span{color:var(--muted);font-size:13px}.kd-tot b{font-size:22px}
.kd-note{margin:0;color:var(--muted);font-size:12.5px}
.kd-empty{padding:28px 20px;text-align:center}.kd-empty p{margin:0 0 8px}.kd-empty .btn{margin-top:12px}
/* имя в шапке — кнопка с меню */
.top .who{position:relative}
.kd-me{display:flex;align-items:center;gap:8px;background:none;border:1px solid transparent;border-radius:4px;color:#fff;padding:4px 6px;cursor:pointer;font:inherit;text-align:inherit}
.kd-me:hover,.kd-me[aria-expanded=true]{border-color:#3a4652}
.kd-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #fff;opacity:.7}
.kd-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:66;min-width:260px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 28px rgba(16,24,32,.2);padding:6px;display:flex;flex-direction:column}
.kd-menu[hidden]{display:none}
.kd-menu button,.kd-menu a{background:none;border:0;text-align:left;padding:10px 12px;border-radius:4px;color:var(--ink);font:600 13.5px Montserrat,Arial,sans-serif;text-decoration:none;cursor:pointer}
.kd-menu button:hover,.kd-menu a:hover{background:var(--soft)}
.kd-menu [data-kd-idea]{color:var(--red)}
/* окошко «Что улучшить в кабинете?» */
.kd-modal{position:fixed;inset:0;z-index:80;background:rgba(16,24,32,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.kd-card{position:relative;background:#fff;border-radius:8px;width:520px;max-width:100%;padding:22px 22px 18px;display:flex;flex-direction:column;gap:10px;box-shadow:0 16px 40px rgba(16,24,32,.3)}
.kd-card h3{margin:0;font-size:18px}.kd-card p{margin:0}
.kd-card .kd-x{position:absolute;top:12px;right:12px}
.kd-card textarea{width:100%;resize:vertical;min-height:110px}
.kd-file{align-self:flex-start;color:var(--red);font-weight:700;font-size:13px;cursor:pointer;text-decoration:underline}
.kd-file input{position:absolute;width:1px;height:1px;opacity:0}
.kd-picname{font-size:12.5px;color:var(--muted)}
.kd-err{color:var(--red);font-size:13px;font-weight:600}
.kd-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
@media (max-width:760px){
  .kd-fab{right:14px;bottom:14px;padding:10px 16px 10px 12px;font-size:13px}
  .kd-panel{width:100%}
  .kd-menu{left:0;right:auto}
  .kd-me{padding:2px 0}
}
@media print{.kd-fab,.kd-shade,.kd-panel,.kd-modal,.kd-menu{display:none!important}}
/* вкладка «Обратная связь» (30.10, feedback.js): форма слева, «Ваши сообщения» справа */
.fb-main{padding-top:24px;padding-bottom:40px}
.fb-wrap{display:grid;grid-template-columns:minmax(0,620px) minmax(0,1fr);gap:32px;align-items:start}
.fb-wrap h1{margin:0 0 8px;font-size:26px}
.fb-lead{margin:0 0 16px;color:var(--muted);max-width:620px}
.fb-card{width:auto;box-shadow:none;border:1px solid var(--line)}
.fb-mine h2{margin:6px 0 12px;font-size:16px}
.fb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fb-list li{background:#fff;border:1px solid var(--line);border-radius:6px;padding:12px 14px}
.fb-list p{margin:6px 0 0;white-space:pre-wrap;font-size:13.5px}
.fb-top{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;font-size:13px}
.fb-top span{color:var(--muted);font-size:12px}
.fb-st{margin-left:auto;border:1px solid var(--line);border-radius:10px;padding:1px 8px}
.fb-st.ok{color:var(--ok)!important;border-color:#bfe0c1}
@media (max-width:900px){.fb-wrap{grid-template-columns:1fr}}
