:root{
  --bg:#f4f2ee; --card:#fff; --ink:#1f1f1f; --muted:#6b6862; --line:#e3dfd8;
  --brand:#f08c1a; --brand-d:#c96f08; --dark:#2b2b2b;
  --red:#c0392b; --red-bg:#fdecea; --green:#1e8449; --green-bg:#e8f6ee;
  --blue:#2563a8; --blue-bg:#e8f0fa; --warn-bg:#fff4dd;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font:15px/1.45 "Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
h1{font-size:24px;margin:4px 0 16px}
h2{font-size:18px;margin:22px 0 10px}
.muted{color:var(--muted)}
.small{font-size:13px}
.right{text-align:right}
.nowrap{white-space:nowrap}

.topbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  background:var(--dark);color:#fff;padding:10px 24px;border-bottom:4px solid var(--brand)}
.brand{color:#fff;font-size:18px;display:flex;align-items:center;gap:10px}
.brand:hover{text-decoration:none}
.brand b{color:var(--brand)}
.logo{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:7px;background:var(--brand);
  color:var(--dark);font-weight:800}
.topbar nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.topbar nav a{color:#ddd}
.topbar nav a:hover{color:#fff}
.who{color:var(--brand);font-weight:600}

.container{max-width:1240px;margin:0 auto;padding:22px 24px 60px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:16px}
.row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}
.grow{flex:1}

.flash{padding:10px 14px;border-radius:8px;margin-bottom:10px;border:1px solid}
.flash.ok{background:var(--green-bg);border-color:#b7e1c6}
.flash.error{background:var(--red-bg);border-color:#f3c1bb}
.flash.warn,.flash.message{background:var(--warn-bg);border-color:#f2d9a0}

.btn{display:inline-block;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;
  padding:8px 14px;font:inherit;cursor:pointer;line-height:1.3}
.btn:hover{background:#f7f5f1;text-decoration:none}
.btn.primary{background:var(--brand);border-color:var(--brand-d);color:#1f1f1f;font-weight:600}
.btn.primary:hover{background:var(--brand-d);color:#fff}
.btn.danger{color:var(--red);border-color:#efc2bc}
.btn.small{padding:4px 10px;font-size:13px}
.btn.big{padding:12px 22px;font-size:17px}

label{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}
input[type=text],input[type=password],input[type=number],input[type=search],select{
  font:inherit;padding:8px 10px;border:1px solid #cfcac2;border-radius:8px;background:#fff;width:100%}
input:focus,select:focus{outline:2px solid var(--brand);outline-offset:0;border-color:var(--brand)}
.check{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:14px}
.check input{width:auto}

table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:7px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:#faf8f4;font-size:13px;color:var(--muted);font-weight:600;position:sticky;top:0}
td.num,th.num{text-align:right;white-space:nowrap}
tr:hover td{background:#fffaf2}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:10px;max-height:70vh}

.neg{color:var(--red);font-weight:600}
.pos{color:var(--green);font-weight:600}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#eee}
.badge.open{background:var(--green-bg);color:var(--green)}
.badge.closed{background:#eee;color:#666}
.badge.blind{background:var(--blue-bg);color:var(--blue)}
.badge.extra{background:var(--warn-bg);color:#8a5a00}

.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}
.tile{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.tile .v{font-size:22px;font-weight:700}
.tile .l{font-size:13px;color:var(--muted)}
.tile.red{border-left:4px solid var(--red)}
.tile.green{border-left:4px solid var(--green)}
.tile.orange{border-left:4px solid var(--brand)}

.revlist .rev{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
.revlist .rev h3{margin:0 0 4px;font-size:17px}
.bar{height:8px;background:#eee;border-radius:5px;overflow:hidden;width:220px;margin-top:6px}
.bar span{display:block;height:100%;background:var(--brand)}

.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.tabs a{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:14px}
.tabs a.active{background:var(--dark);color:#fff;border-color:var(--dark)}
.tabs a:hover{text-decoration:none}

/* вход */
.login-wrap{min-height:70vh;display:grid;place-items:center}
.login{width:100%;max-width:380px}
.login h1{text-align:center}

/* сканирование */
.scan-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}
@media(max-width:900px){.scan-grid{grid-template-columns:1fr}}
.scanbox{display:flex;gap:10px;align-items:flex-end}
#barcode{font-size:26px;padding:12px 14px;letter-spacing:1px;font-family:Consolas,monospace}
#qty{font-size:22px;padding:10px;width:110px;text-align:center}
.result{border-radius:10px;padding:16px 18px;margin-top:14px;border:2px solid var(--line);background:#fff;min-height:110px}
.result.ok{border-color:var(--green);background:var(--green-bg)}
.result.err{border-color:var(--red);background:var(--red-bg)}
.result .name{font-size:21px;font-weight:700;margin-bottom:6px}
.result .nums{display:flex;gap:26px;flex-wrap:wrap;margin-top:8px}
.result .nums div{font-size:13px;color:var(--muted)}
.result .nums b{display:block;font-size:26px;color:var(--ink)}
.flashy{animation:flashy .35s}
@keyframes flashy{from{transform:scale(1.015)}to{transform:none}}
.list{list-style:none;margin:0;padding:0}
.list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.list li.cancelled{opacity:.45;text-decoration:line-through}
.list .t{font-size:12px;color:var(--muted)}
.progress-line{font-size:14px;color:var(--muted)}
.hidden{display:none!important}
.inline-form{display:inline}
details summary{cursor:pointer;color:var(--blue)}
code{background:#f1eee8;padding:1px 5px;border-radius:4px}
.help ol{margin:6px 0 0 18px;padding:0}
.help li{margin-bottom:4px}

/* ---------- v1.3: экран сканера ---------- */
.scan-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.tiles.shelf{grid-template-columns:repeat(3,1fr);margin-bottom:8px}
.tile-btn{all:unset;cursor:pointer;display:block;width:100%}
.bar.wide{width:100%;height:10px;margin:0 0 16px}
.bar.wide span{transition:width .3s}
#barcode{font-size:26px;padding:12px 14px;letter-spacing:1px;font-family:Consolas,monospace}
.pending{margin-top:14px;border:2px solid var(--brand);border-radius:12px;padding:16px 18px;background:#fff8ee}
.pending .name{font-size:22px;font-weight:700;line-height:1.25}
.price-row{display:flex;gap:30px;flex-wrap:wrap;margin-top:12px}
.price-row .l{font-size:13px;color:var(--muted)}
.price{font-size:34px;font-weight:800;color:var(--brand-d)}
.before{font-size:26px;font-weight:700}
.qty-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#qtyInput{font-size:34px;font-weight:700;width:170px;text-align:center;padding:10px}
.qty-row .unit{font-size:18px;color:var(--muted)}
.ok-line{font-size:18px}
.result.hidden{display:none}
.back-btn{margin-bottom:12px}

/* ---------- телефон ---------- */
@media (max-width:640px){
  body{font-size:16px}
  .topbar{padding:8px 12px;gap:8px}
  .topbar nav{gap:12px;font-size:14px}
  .brand{font-size:16px}
  .container{padding:12px 12px 40px}
  h1{font-size:20px}
  .card{padding:14px}
  .tile{padding:10px}
  .tile .v{font-size:20px}
  .tile .l{font-size:12px}
  #barcode{font-size:22px}
  .pending .name{font-size:19px}
  .price{font-size:28px}
  #qtyInput{width:120px;font-size:28px}
  .qty-row .btn.big{padding:12px 16px}
  input[type=text],input[type=password],input[type=search],select{font-size:16px}
  th,td{padding:6px}
  .tablewrap{max-height:none}
}

/* ---------- v1.4: камера ---------- */
.bc-row{display:flex;gap:10px;align-items:stretch}
.bc-row #barcode{flex:1;min-width:0}
.cam-btn{white-space:nowrap}
.cam-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:100;display:flex;align-items:center;justify-content:center;padding:12px}
.cam-box{background:#111;color:#fff;border-radius:14px;padding:12px;width:100%;max-width:520px}
.cam-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px}
#camReader{width:100%;min-height:240px;border-radius:10px;overflow:hidden;background:#000}
#camReader video{width:100%!important;height:auto!important;object-fit:cover}
.cam-hint{margin-top:8px;color:#ccc;text-align:center}
@media (max-width:640px){ .cam-btn{padding:10px 12px;font-size:15px} }

/* ---------- v1.5: повторный пересчёт ---------- */
.again{margin-top:12px;border:2px solid #e0a100;background:#fff4d6;border-radius:10px;padding:12px 14px}
.again-title{font-weight:800;font-size:17px;color:#8a5a00;margin-bottom:4px}
.again-modes{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}
.btn.mode{border:2px solid #d9cfc0;font-weight:600}
.btn.mode.active{background:var(--dark);color:#fff;border-color:var(--dark)}
.again.need .btn.mode{animation:pulse .6s}
@keyframes pulse{50%{transform:scale(1.05)}}

.badge.minus{background:#fde3d0;color:#a14a00;white-space:nowrap}

/* ---------- v1.7: полки ---------- */
.shelf-pick{margin-bottom:10px}
.shelf-pick select{font-size:18px;font-weight:600;padding:10px;border:2px solid var(--brand)}
.shelf-warn{color:#a14a00;font-weight:700;margin-top:6px}

/* v1.8 */
.finish-btn{border:2px solid var(--dark);font-weight:700;white-space:nowrap}

/* v1.9: полка посчитана */
.shelf-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}
.shelf-bar.done{background:var(--green-bg);border:2px solid var(--green);border-radius:10px;padding:8px 12px}
#shelfStatus{font-weight:700;color:var(--green)}

.refresh-box{background:#fff8ee;border:1px solid #f2d9a0;border-radius:10px;padding:12px}

/* v1.10.1: предупреждение о чужой полке — красным */
.shelf-warn{color:#fff;background:var(--red);font-weight:800;font-size:17px;border-radius:8px;padding:8px 12px;margin-top:8px}
.shelf-info{color:var(--muted);font-weight:600;margin-top:6px}

/* v1.10.2: количество во вкладках */
.tabs a .cnt{display:inline-block;min-width:22px;padding:0 7px;margin-left:4px;border-radius:999px;background:#eee;color:#555;font-size:12px;font-weight:700;text-align:center}
.tabs a.active .cnt{background:var(--brand);color:#1f1f1f}

/* v2.0: товары и заказы */
.badge.urgent{background:var(--red);color:#fff;font-size:12px}
.cat-item{align-items:flex-start!important}
.cat-item.low{background:#fdecea;border-radius:8px;padding:10px!important;margin:4px 0;border:1px solid #f3c1bb}
.cat-item.low .cat-name{color:var(--red)}
.cat-name{font-weight:700;font-size:16px}
.cat-right{text-align:right;display:flex;flex-direction:column;gap:4px;align-items:flex-end;min-width:110px}
.cat-price{font-size:20px;font-weight:800;color:var(--brand-d);white-space:nowrap}
.cat-stock{font-size:15px;font-weight:700;white-space:nowrap}
.low-btn{border-color:#efc2bc;color:var(--red);font-weight:700}
.low-btn .cnt{background:var(--red);color:#fff;border-radius:999px;padding:0 7px;font-size:12px}
tr.low td{background:#fdecea}

.auto-src{background:var(--green-bg);border:1px solid #b7e1c6;border-radius:8px;padding:10px 12px;margin:6px 0}
.badge.ok-badge{background:var(--green-bg);color:var(--green);white-space:nowrap}
.badge.urgent{white-space:nowrap}
.btn.warn-btn{color:#8a5a00;border-color:#ecd28f}
tr.blocked-row td{background:#fbeeee}
tr.blocked-row td input,tr.blocked-row td select{opacity:.6}
/* офлайн-режим */
.net-bar{margin:0 0 12px;padding:10px 14px;border-radius:10px;background:var(--blue-bg);color:var(--blue);font-size:14px;line-height:1.6}
.net-bar.off{background:#3a3a3a;color:#fff}
.net-bar.off a{color:#ffd76a}
.net-bar.warn{background:var(--warn-bg);color:#8a5a00}
.net-bar .btn{margin-left:6px}
.net-panel{margin:0 0 14px;padding:14px;border:1px solid var(--line,#ddd);border-radius:12px;background:#fff}
.net-panel li.net-err{background:#fdecea}
.offline-note{font-size:13px;color:#8a5a00;background:var(--warn-bg);padding:6px 10px;border-radius:8px;margin-bottom:8px}
li.pending-op{background:#fff8e1}
.ver{position:absolute;top:3px;right:10px;font-size:11px;color:#9a968f;letter-spacing:.02em;white-space:nowrap}
li.low-head{display:block;color:var(--muted);font-size:14px}
li.low-shelf{cursor:pointer;align-items:center;gap:10px}
li.low-shelf:hover{background:#fff6ea}
.logo-img{width:36px;height:36px;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}
a.tile-link{color:inherit;text-decoration:none;cursor:pointer;transition:transform .08s, box-shadow .15s}
a.tile-link:hover{text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.12);transform:translateY(-1px)}
.mic-btn{min-width:56px;font-size:22px;padding-left:10px;padding-right:10px}
.mic-btn.rec{background:#c0392b;color:#fff;border-color:#a93226;animation:micPulse 1s infinite}
@keyframes micPulse{0%{box-shadow:0 0 0 0 rgba(192,57,43,.55)}100%{box-shadow:0 0 0 14px rgba(192,57,43,0)}}
.voice-hint{margin:-6px 0 12px;padding:10px 14px;border-radius:10px;background:var(--blue-bg);color:var(--blue);font-size:15px}
.voice-hint.ok{background:var(--green-bg);color:var(--green)}
.voice-hint.err{background:var(--red-bg);color:var(--red)}
/* отчёт: длинные штрихкоды/артикулы переносятся, цифры (Учёт/Факт/Разница) всегда видны */
.report-table td.wrapcell{max-width:170px;overflow-wrap:anywhere;word-break:break-word}
.report-table td.bccell{max-width:190px}
.report-table td:first-child{min-width:220px;max-width:420px}
.report-table thead th{position:sticky;top:0;background:#f4f2ee;z-index:1}

/* =====================================================================
   v4.0 — новый вид. Идея: склад/стройка — графит, сигнальный оранжевый,
   «сигнальная лента» показывает прогресс. Крупные кнопки под палец.
   ===================================================================== */
:root{
  --bg:#ecebe7; --card:#fff; --ink:#1c1b19; --muted:#6a6862; --line:#dcd8d0;
  --brand:#f2840f; --brand-d:#c56404; --dark:#232220; --steel:#34332f;
  --r-card:14px; --r-ctl:10px;
  --ui:-apple-system,"SF Pro Text","Segoe UI Variable","Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;
}
body{font-family:var(--ui);background:var(--bg);-webkit-text-size-adjust:100%}
h1{font-size:26px;letter-spacing:-.01em;line-height:1.15;text-wrap:balance}
a{color:#1f5fa8}

/* шапка */
.topbar{display:flex;align-items:center;gap:20px;flex-wrap:nowrap;background:var(--dark);
  padding:10px 20px;padding-top:calc(10px + env(safe-area-inset-top,0px));border-bottom:3px solid var(--brand);
  position:sticky;top:0;z-index:50}
.brand{gap:10px;flex:none}
.brand-name{display:flex;flex-direction:column;line-height:1;font-size:19px;font-weight:700;color:#fff;letter-spacing:-.01em}
.brand-name b{color:var(--brand)}
.brand-name small{font-size:11px;font-weight:600;color:#a8a49c;margin-top:3px;letter-spacing:.04em}
.topbar .topnav{display:flex;gap:4px;flex:1;min-width:0;flex-wrap:nowrap}
.topnav a{color:#d6d2ca;padding:8px 12px;border-radius:8px;font-weight:600;font-size:15px}
.topnav a:hover{background:rgba(255,255,255,.07);color:#fff;text-decoration:none}
.topnav a.on{color:#fff;box-shadow:inset 0 -3px 0 var(--brand);border-radius:8px 8px 0 0}
.usermenu{position:relative;flex:none;margin-left:auto}
.usermenu summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;color:#eee;font-weight:600;font-size:14px}
.usermenu summary::-webkit-details-marker{display:none}
.avatar{width:34px;height:34px;border-radius:50%;background:var(--brand);color:var(--dark);display:grid;place-items:center;font-weight:800;font-size:16px}
.usermenu-pop{position:absolute;right:0;top:calc(100% + 10px);background:#fff;color:var(--ink);border-radius:12px;min-width:220px;
  box-shadow:0 12px 30px rgba(0,0,0,.25);padding:12px;display:grid;gap:2px;z-index:60}
.usermenu-pop a{padding:10px;border-radius:8px;color:var(--ink);font-weight:600}
.usermenu-pop a:hover{background:#f3f1ec;text-decoration:none}
.ver-line{font-size:11px;color:var(--muted);padding:6px 10px 0;border-top:1px solid var(--line);margin-top:4px}
.ver{display:none}

.container{max-width:1180px;padding:20px 20px 60px}
.card{border-radius:var(--r-card);border-color:var(--line);box-shadow:0 1px 0 rgba(0,0,0,.03)}
.flash{border-radius:var(--r-ctl)}

/* кнопки и поля — под палец */
.btn{border-radius:var(--r-ctl);min-height:42px;padding:9px 16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.btn.small{min-height:32px;padding:5px 10px}
.btn.big{min-height:52px;font-size:17px}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#1a1300}
.btn.primary:hover{background:var(--brand-d);border-color:var(--brand-d);color:#fff}
.btn:focus-visible,.chip:focus-visible,a:focus-visible{outline:3px solid rgba(242,132,15,.55);outline-offset:2px}
input[type=text],input[type=password],input[type=number],input[type=search],select{min-height:46px;border-radius:var(--r-ctl);border-color:#cdc8be}
label{font-weight:600;color:#55534e}
.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:999px;
  background:#f1efea;border:1px solid var(--line);font-weight:600;font-size:15px;cursor:pointer;color:var(--ink)}
.chip:hover{background:#e9e6df}
.chip b{font-variant-numeric:tabular-nums}
.chip-todo{background:#fff3e3;border-color:#f5c98f;color:#7a3f00}

/* прогресс — «сигнальная лента» */
.bar{background:#e1ddd5;border-radius:999px}
.bar span{background:var(--brand)}
.bar.tape{height:14px;border-radius:7px;background:#e1ddd5;overflow:hidden;margin:10px 0 12px}
.bar.tape span{background:repeating-linear-gradient(-45deg,var(--brand) 0 10px,#e0730a 10px 20px);border-radius:7px;min-width:0}

/* экран сканера */
.scan-top{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:16px 18px;margin-bottom:16px}
.scan-title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.scan-title h1{margin:0;font-size:22px}
.shelf-pick{margin-bottom:6px}
.shelf-pick select{font-size:18px;font-weight:700;border:2px solid var(--brand);background:#fffaf3;min-height:52px}
.meter{margin-top:12px}
.meter-nums{font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.meter-nums b{font-size:34px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-right:4px}
.meter-btns{display:flex;gap:8px;flex-wrap:wrap}
.shelf-bar{margin-top:12px}
.shelf-bar.done{background:repeating-linear-gradient(-45deg,#e8f6ee 0 12px,#dff1e6 12px 24px)}
.finish-btn{width:100%;margin-top:4px;border:2px solid var(--dark);min-height:50px}
#barcode{font-family:var(--ui);font-weight:700;letter-spacing:.06em;min-height:58px;border:2px solid #cdc8be}
#barcode:focus{border-color:var(--brand)}
.cam-btn{min-width:120px}
.pending{border-radius:var(--r-card);border:2px solid var(--brand);background:#fffaf3}
.pending .name{font-size:22px;letter-spacing:-.01em}
.price{font-size:40px;letter-spacing:-.02em;color:var(--brand-d);font-variant-numeric:tabular-nums}
#qtyInput{min-height:64px;border:2px solid var(--brand);font-variant-numeric:tabular-nums}
.result{border-radius:var(--r-card)}
.result .nums b{font-variant-numeric:tabular-nums}
.list li{padding:10px 0}

/* сетка «товары» */
.cat-item.low{border-radius:12px}
.cat-price{font-size:22px;font-variant-numeric:tabular-nums}

/* плашки-показатели */
.tile{border-radius:12px}
.tile .v{font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tabs a{min-height:38px;display:inline-flex;align-items:center;font-weight:600}
.tabs a.active{background:var(--dark);border-color:var(--dark)}

/* полоса связи */
.net-bar{border-radius:var(--r-ctl)}
.net-bar.off{background:var(--steel);color:#fff;border-left:10px solid transparent;
  border-image:repeating-linear-gradient(-45deg,var(--brand) 0 6px,var(--dark) 6px 12px) 10}

/* вход */
.login-wrap{min-height:calc(100vh - 140px)}
.login{padding:26px 24px}
.login-brand{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px}
.login-brand img{width:84px;height:84px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.18))}
.login-brand .t{font-size:24px;font-weight:800;letter-spacing:-.01em}
.login-brand .t b{color:var(--brand-d)}
.login h1{display:none}

/* сотрудники: кто завершил день */
.done-today{display:grid;gap:8px;margin-bottom:16px}
.done-today .who-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  background:#fff3e3;border:1px solid #f5c98f;border-radius:12px;padding:12px 14px}

/* нижняя панель вкладок — на телефоне и планшете */
.tabbar{display:none}
@media (max-width:900px){
  .topbar .topnav{display:none}
  .uname{display:none}
  .topbar{padding:8px 14px;padding-top:calc(8px + env(safe-area-inset-top,0px))}
  body.has-tabs{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--dark);
    border-top:3px solid var(--brand);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
  .tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:10px;
    color:#bdb8ae;font-size:12px;font-weight:600;text-decoration:none;min-height:52px;justify-content:center}
  .tabbar a svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .tabbar a.on{color:#fff;background:rgba(242,132,15,.18)}
  .tabbar a.on svg{stroke:var(--brand)}
  .container{padding:14px 14px 24px}
  h1{font-size:22px}
  .scan-top{padding:14px}
  .meter-nums b{font-size:30px}
  .price{font-size:34px}
}

/* таблица сотрудников на телефоне — карточками */
@media (max-width:700px){
  .users-table thead{display:none}
  .users-table, .users-table tbody, .users-table tr, .users-table td{display:block;width:100%}
  .users-table tr{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:10px;background:#fff}
  .users-table td{border:0;padding:4px 0}
  .users-table td[data-l]::before{content:attr(data-l);display:block;font-size:12px;color:var(--muted);font-weight:600}
  .users-table td.nowrap{white-space:normal}
}
.row > .grow{flex:1 1 220px;min-width:0}
.bar.tape span{min-width:8px}
@media (max-width:700px){
  form.row > div, form.row > .grow{flex:1 1 100%}
  form.row > .btn{width:100%}
}
.hide-note{margin-top:6px;padding:8px 12px;border-radius:10px;background:#fff3e3;border:1px solid #f5c98f;color:#6b3a00;font-size:14px}
.search-list:not(:empty){margin-top:10px;border:1px solid var(--line);border-radius:12px;padding:0 12px;max-height:55vh;overflow:auto;background:#fff}
.search-list li:last-child{border-bottom:0}
.search-list li.pick{cursor:pointer;padding:12px 4px;gap:12px;-webkit-tap-highlight-color:rgba(242,132,15,.15)}
.search-list li.pick:hover,.search-list li.pick:active{background:#fff6ea}
.search-list li.pick:focus-visible{outline:3px solid rgba(242,132,15,.55);outline-offset:-3px;border-radius:8px}
.pick-name{font-weight:600}
.pick-go{font-size:28px;line-height:1;color:var(--brand);flex:none;padding-right:4px}
.result.warn{border-color:#e0a100;background:#fff8e6}
.dev-warn{margin-top:12px;border-radius:12px;padding:12px 14px;font-size:15px;line-height:1.45}
.dev-warn b{display:block;font-size:18px;margin-bottom:4px}
.dev-warn.short,.dev-warn.surplus{background:#fdecea;border:2px solid #d32f2f;color:#c62828}
.dev-warn.short b,.dev-warn.surplus b{color:#c62828}
.dev-warn .btn{border-color:#d32f2f;color:#c62828}
.fold-btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;min-height:40px;color:var(--ink)}
.fold-btn:focus-visible{outline:3px solid rgba(242,132,15,.55);outline-offset:2px;border-radius:8px}
.fold-arrow{display:inline-block;transition:transform .15s;color:var(--brand-d)}
.fold-btn.folded .fold-arrow{transform:rotate(-90deg)}
.fold-cnt:not(:empty){background:#f1efea;border:1px solid var(--line);border-radius:999px;padding:0 9px;font-size:14px;font-variant-numeric:tabular-nums}

/* v4.7 резервная копия */
.err-text{color:#b3261e}
.warn-text{color:#9a5b00}
.ok-text{color:#1e7d32}

/* v5.0 продажи */
.sales-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sales-head h1{margin:0}
.tabs.period{align-items:center}
.custom-period{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-left:auto}
.custom-period input[type=date]{width:auto;padding:5px 8px}
.daybars{display:flex;gap:4px;align-items:flex-end;height:170px;overflow-x:auto;padding-bottom:4px}
.db{flex:1 0 22px;max-width:46px;display:flex;flex-direction:column;align-items:center;height:100%}
.db-col{flex:1;width:100%;display:flex;align-items:flex-end}
.db-rev{width:100%;background:#f5b56b;border-radius:4px 4px 0 0;display:flex;align-items:flex-end;min-height:2px}
.db-pr{width:100%;background:#2e7d32;border-radius:3px 3px 0 0}
.db-l{font-size:10px;color:var(--muted);margin-top:3px;white-space:nowrap}
.lg{display:inline-block;width:10px;height:10px;border-radius:2px;margin:0 3px 0 8px;vertical-align:-1px}
.lg.rev{background:#f5b56b}.lg.pr{background:#2e7d32}
.share{background:#eee;border-radius:4px;height:10px;min-width:80px}
.share div{background:var(--orange,#f58a12);height:100%;border-radius:4px}

/* v5.1 заказы по поставщикам */
.sup-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.sup-form select{max-width:260px}
.sup-form .newsup{display:inline-flex;gap:4px;margin-top:4px}
.sup-form .newsup[hidden]{display:none}
.auto-table td:first-child,.auto-table th:first-child{width:34px}
.cheap-note{color:#1e7d32;margin-top:2px}

/* v5.3 доступ к ревизии */
.access-list{display:flex;flex-wrap:wrap;gap:6px 18px;margin:8px 0 12px}
.access-card{margin:12px 0}
.btn.locked{opacity:.55;cursor:not-allowed;background:#eee;border-color:#ddd;color:#555}
.lock-note{margin-top:4px;max-width:260px}
.empty-scan{text-align:center;max-width:520px;margin:30px auto;padding:28px 20px}
.empty-scan .big-ico{font-size:48px}
.empty-scan h1{margin:6px 0 10px}

/* v5.4 продажи: на телефоне — карточки */
.sales-table td.rank{width:34px;min-width:0}
.sales-table td.tname{min-width:200px;max-width:none}
.sales-table .show-m{display:none}
@media (max-width:700px){
  .sales-table thead{display:none}
  .sales-table,.sales-table tbody{display:block}
  .sales-table tr{display:flex;flex-wrap:wrap;gap:4px 14px;padding:12px 2px;border-bottom:1px solid var(--line)}
  .sales-table td{display:block;border:0;padding:0;min-width:0!important;max-width:none!important;text-align:left}
  .sales-table td.rank{order:0;font-weight:700;color:var(--muted)}
  .sales-table td.tname{flex:1 1 calc(100% - 50px);font-weight:600;font-size:16px}
  .sales-table td.hide-m{display:none}
  .sales-table .show-m{display:block}
  .sales-table td[data-l]{font-size:15px}
  .sales-table td[data-l]::before{content:attr(data-l);display:block;font-size:11px;color:var(--muted);font-weight:400;text-transform:uppercase;letter-spacing:.02em}
  .sales-table td.sharecell{flex:1 1 100%}
}
@media (max-width:700px){.sales-table tr td{background:transparent!important}.sales-table td.rank{order:0}}
.lock-note-s{margin-top:6px;color:#9a5b00;font-weight:600}
.step{border-top:1px solid var(--line);padding:14px 0}
.step:first-child{border-top:0;padding-top:0}
.step-title{font-size:17px;font-weight:700;display:block}
.shelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;max-height:360px;overflow:auto;padding:2px}
.shelf-opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;cursor:pointer}
.shelf-opt span{display:flex;flex-direction:column}
.shelf-opt small{color:var(--muted);font-size:12px}
.shelf-opt:has(input:checked){border-color:#f58a12;background:#fff6ea}

/* v5.4 карточки на телефоне для заказов */

.cards-m td.rank{width:34px;min-width:0}
.cards-m td.tname{min-width:200px;max-width:none}
.cards-m .show-m{display:none}
@media (max-width:700px){
  .cards-m thead{display:none}
  .cards-m,.cards-m tbody{display:block}
  .cards-m tr{display:flex;flex-wrap:wrap;gap:4px 14px;padding:12px 2px;border-bottom:1px solid var(--line)}
  .cards-m td{display:block;border:0;padding:0;min-width:0!important;max-width:none!important;text-align:left}
  .cards-m td.rank{order:0;font-weight:700;color:var(--muted)}
  .cards-m td.tname{flex:1 1 calc(100% - 50px);font-weight:600;font-size:16px}
  .cards-m td.hide-m{display:none}
  .cards-m .show-m{display:block}
  .cards-m td[data-l]{font-size:15px}
  .cards-m td[data-l]::before{content:attr(data-l);display:block;font-size:11px;color:var(--muted);font-weight:400;text-transform:uppercase;letter-spacing:.02em}
  .cards-m td.sharecell{flex:1 1 100%}
}
@media (max-width:700px){.cards-m tr td{background:transparent!important}.cards-m td.rank{order:0}}
.lock-note-s{margin-top:6px;color:#9a5b00;font-weight:600}
.step{border-top:1px solid var(--line);padding:14px 0}
.step:first-child{border-top:0;padding-top:0}
.step-title{font-size:17px;font-weight:700;display:block}
.shelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;max-height:360px;overflow:auto;padding:2px}
.shelf-opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;cursor:pointer}
.shelf-opt span{display:flex;flex-direction:column}
.shelf-opt small{color:var(--muted);font-size:12px}
.shelf-opt:has(input:checked){border-color:#f58a12;background:#fff6ea}

/* v5.5 «Мои сканирования» по товарам с итогом */
.my-item{display:block!important;padding:10px 0;border-bottom:1px solid var(--line)}
.my-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.my-name{font-weight:600;min-width:0}
.my-total{white-space:nowrap;text-align:right;font-size:15px}
.my-total small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
.my-total b{font-size:22px}
.my-rows{list-style:none;margin:6px 0 0;padding:0}
.my-rows li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 0;font-size:14px;border:0}
.my-rows li .t{color:var(--muted)}
.my-rows li.cancelled{opacity:.5;text-decoration:line-through}

/* v5.5 вход: показать пароль, запомнить логин */
.pw-wrap{position:relative;display:block}
.pw-wrap input{padding-right:52px;width:100%}
.pw-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:22px;width:44px;height:44px;cursor:pointer;border-radius:10px}
.pw-eye:focus-visible{outline:2px solid #f58a12}
.remember{display:flex;gap:8px;align-items:center;margin:4px 0 10px;font-size:15px}
.logbox{background:#1d1d1b;color:#e8e6e1;padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.45;max-height:340px;overflow:auto;white-space:pre-wrap;word-break:break-word}

/* ===== v5.8: значки (чёткие, одного стиля вместо эмодзи) ===== */
.ic{display:inline-block;width:1.15em;height:1.15em;flex:none;vertical-align:-.2em;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.ic-camera{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l2-2.5h6L17 8h3v11H4z'/%3E%3Ccircle cx='12' cy='13.3' r='3.4'/%3E%3C/svg%3E")}
.ic-mic{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='3' width='6' height='11' rx='3'/%3E%3Cpath d='M5.5 11a6.5 6.5 0 0 0 13 0M12 17.5V21'/%3E%3C/svg%3E")}
.ic-lock{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
.ic-unlock{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 7.7-1.5'/%3E%3C/svg%3E")}
.ic-doc{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 4h12v16H6zM9 9h6M9 13h6M9 17h3'/%3E%3C/svg%3E")}
.ic-flag{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V4M5 4h12l-2.5 4.5L17 13H5'/%3E%3C/svg%3E")}
.ic-download{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E")}
.ic-upload{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V5M7 10l5-5 5 5M5 20h14'/%3E%3C/svg%3E")}
.ic-refresh{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.6-5.9M20 4v5h-5'/%3E%3C/svg%3E")}
.ic-undo{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12a8 8 0 1 0 2.6-5.9M4 4v5h5'/%3E%3C/svg%3E")}
.ic-chart{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V11M10 20V5M16 20v-6M21 20H3'/%3E%3C/svg%3E")}
.ic-users{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='9' r='3.2'/%3E%3Cpath d='M3.5 19c.6-3 2.8-4.6 5.5-4.6s4.9 1.6 5.5 4.6M16 6.5a3 3 0 0 1 0 5.6M18 14.8c1.3.7 2.2 2 2.5 4.2'/%3E%3C/svg%3E")}
.ic-user{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1-4.5 4-6.5 8-6.5s7 2 8 6.5'/%3E%3C/svg%3E")}
.ic-key{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='4'/%3E%3Cpath d='M11 12l9-9M16.5 6.5l3 3'/%3E%3C/svg%3E")}
.ic-logout{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4h5v16h-5M10 8l-4 4 4 4M6 12h10'/%3E%3C/svg%3E")}
.ic-tag{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 12.5 12 4h7.5v7.5L11 20z'/%3E%3Ccircle cx='15.5' cy='8' r='1.4'/%3E%3C/svg%3E")}
.ic-rev{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5h14v14H5zM5 10h14M10 10v9'/%3E%3C/svg%3E")}
.ic-truck{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 10h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E")}
.ic-phone{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E")}
.ic-bolt{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 3 5 13h6l-1 8 8-10h-6z'/%3E%3C/svg%3E")}
.ic-coin{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M14.8 9.2c-.5-.9-1.5-1.4-2.8-1.4-1.6 0-2.8.8-2.8 2s1.2 1.7 2.8 2 2.8.8 2.8 2-1.2 2-2.8 2c-1.3 0-2.4-.5-2.9-1.5M12 6v1.8M12 16.2V18'/%3E%3C/svg%3E")}
.ic-folder{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h6l2 2h10v11H3z'/%3E%3C/svg%3E")}
.ic-file{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6zM14 3v4h4'/%3E%3C/svg%3E")}
.ic-search{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16 16l4.5 4.5'/%3E%3C/svg%3E")}
.ic-check{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.ic-x{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E")}
.ic-warn{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4 2.5 20h19zM12 10v4.5M12 17.2v.3'/%3E%3C/svg%3E")}
.ic-eye{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
.ic-eye-off{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1A10 10 0 0 1 12 5c6.4 0 10 7 10 7a17 17 0 0 1-3.2 4.1M6.6 6.6C3.8 8.4 2 12 2 12s3.6 7 10 7c1.9 0 3.5-.6 4.9-1.4M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E")}
.ic-trash{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M9 7V4h6v3M6 7l1 13h10l1-13'/%3E%3C/svg%3E")}
.ic-chev-down{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}
.ic-chev-right{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E")}
.ic-star{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.4 5.9.8-4.3 4.1 1 5.9L12 17l-5.2 2.7 1-5.9-4.3-4.1 5.9-.8z'/%3E%3C/svg%3E")}
.ic-help{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.5 9.5a2.6 2.6 0 0 1 5 .9c0 1.8-2.5 2.2-2.5 3.8M12 17.2v.3'/%3E%3C/svg%3E")}
.ic-save{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h11l3 3v13H5zM8 4v5h7V4M8 20v-6h8v6'/%3E%3C/svg%3E")}
.ic-wifi-off{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M8.5 16.5a5 5 0 0 1 7 0M5 12.5a10 10 0 0 1 5-2.7M14 9.8a10 10 0 0 1 5 2.7M2 8.8a15 15 0 0 1 4.3-2.6M10.5 5.1A15 15 0 0 1 22 8.8M12 20v.2'/%3E%3C/svg%3E")}

/* ===== v5.8: чёткий общий вид ===== */
:root{--ink:#17171a;--muted:#5f5b55;--line:#dedad2;--line-2:#cdc7bc;--bg:#f2f0eb}
html{-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg)}
.num,td.num,.tile .v,.meter-nums b,.price,.cat-price,.badge{font-variant-numeric:tabular-nums}
h1{font-weight:750;letter-spacing:-.015em}
h2{font-weight:700;letter-spacing:-.005em}
.card{border:1px solid var(--line);box-shadow:0 1px 2px rgba(20,18,15,.05)}
.muted{color:var(--muted)}
a{color:#1d5fa6}
/* поля ввода: ровная рамка, обычный (не жирный) текст подсказки */
input[type=text],input[type=password],input[type=number],input[type=search],input[type=date],input[type=time],select,textarea{
  border:1.5px solid var(--line-2);border-radius:10px;min-height:44px;color:var(--ink);background:#fff}
input::placeholder,textarea::placeholder{color:#9a958c;font-weight:400;letter-spacing:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
#barcode::placeholder{font-size:17px}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(240,140,26,.28);outline-offset:0;border-color:var(--brand)}
/* кнопки: одинаковая высота, значок + текст */
.btn{border-width:1.5px;border-color:var(--line-2);font-weight:650;letter-spacing:.005em;gap:8px;transition:background .12s,border-color .12s,transform .06s}
.btn:active{transform:translateY(1px)}
.btn.primary{border-color:transparent;background:var(--brand);color:#1b1407}
.btn.primary:hover{background:#e07f10;color:#1b1407}
.btn .ic{width:1.2em;height:1.2em}
.btn.danger{border-color:#eab8b1}
.mic-btn{font-size:inherit}
.mic-btn .ic{width:22px;height:22px}
:focus-visible{outline:3px solid rgba(240,140,26,.45);outline-offset:2px}

/* шапка */
.topbar{border-bottom-width:3px;padding-top:8px;padding-bottom:8px}
.topnav a{font-weight:600;letter-spacing:.005em}

/* полоска загрузки при переходе */
.navbar-progress{position:fixed;left:0;top:0;height:3px;width:0;background:var(--brand);z-index:200;opacity:0;pointer-events:none;
  box-shadow:0 0 8px rgba(240,140,26,.7)}
.nav-loading .navbar-progress{opacity:1;animation:navload 6s cubic-bezier(.1,.7,.2,1) forwards}
@keyframes navload{0%{width:0}10%{width:45%}40%{width:75%}100%{width:94%}}
.nav-loading .tabbar a.on{animation:tappulse .6s ease-in-out infinite alternate}
@keyframes tappulse{from{opacity:1}to{opacity:.7}}

/* ===== меню пользователя ===== */
.usermenu summary{padding:4px 6px 4px 4px;border-radius:999px;transition:background .12s}
.usermenu summary:hover,.usermenu[open] summary{background:rgba(255,255,255,.08)}
.um-chev{width:16px;height:16px;color:#bdb7ad;transition:transform .15s}
.usermenu[open] .um-chev{transform:rotate(180deg)}
.avatar{box-shadow:0 0 0 2px rgba(255,255,255,.12)}
.avatar.big{width:46px;height:46px;font-size:20px;box-shadow:none;flex:none}
.usermenu-pop{min-width:290px;padding:8px;gap:0;border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.08);
  animation:umin .14s ease-out}
@keyframes umin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.um-head{display:flex;align-items:center;gap:12px;padding:10px 10px 12px}
.um-who{display:grid;gap:3px;min-width:0}
.um-who b{font-size:16px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.um-who>span{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:6px}
.role-pill{display:inline-block;padding:1px 8px;border-radius:999px;background:#eef3ea;color:#2d6a3a;font-size:12px;font-weight:700}
.role-pill.adm{background:#fff1df;color:#a35a00}
.um-group{display:grid;gap:1px;padding:6px 0;border-top:1px solid var(--line)}
.usermenu-pop .um-group a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;font-weight:600;font-size:15px;color:var(--ink);min-height:44px}
.usermenu-pop .um-group a .ic{width:20px;height:20px;color:#7b766d}
.usermenu-pop .um-group a:hover{background:#f4f1eb}
.usermenu-pop .um-group a.on{background:#fff4e5;color:#8a4b00}
.usermenu-pop .um-group a.on .ic{color:var(--brand-d)}
.usermenu-pop a.um-out,.usermenu-pop a.um-out .ic{color:var(--red)}
.usermenu-pop a.um-out:hover{background:var(--red-bg)}
.ver-line{border-top:1px solid var(--line);margin-top:0;padding:10px 12px 4px;font-size:12px}

@media (max-width:900px){
  .usermenu summary{padding:0;background:none!important}
  .um-chev,.usermenu .uname{display:none}
  /* на телефоне меню выезжает снизу на весь экран по ширине */
  .usermenu[open] summary::before{content:"";position:fixed;inset:0;background:rgba(15,14,12,.45);z-index:90;animation:fadein .15s}
  .usermenu-pop{position:fixed;left:0;right:0;bottom:0;top:auto;min-width:0;border-radius:18px 18px 0 0;z-index:100;
    padding:6px 12px calc(14px + env(safe-area-inset-bottom));max-height:88vh;overflow:auto;animation:sheetin .2s cubic-bezier(.2,.8,.2,1)}
  .usermenu-pop::before{content:"";display:block;width:40px;height:5px;border-radius:3px;background:#d6d1c8;margin:4px auto 4px}
  .usermenu-pop .um-group a{min-height:52px;font-size:16px}
}
@keyframes sheetin{from{transform:translateY(100%)}to{transform:none}}
@keyframes fadein{from{opacity:0}to{opacity:1}}
/* нижнее меню */
@media (max-width:900px){
  .tabbar a span{font-weight:600;letter-spacing:.01em}
}
.dot-red{display:inline-block;width:11px;height:11px;border-radius:50%;background:#d93025;box-shadow:0 0 0 3px #fde3e0;flex:none}
.big-ico .ic{width:56px;height:56px;color:var(--brand-d)}
.hide-note .ic,.cheap-note .ic{vertical-align:-.18em}
/* меню пользователя поверх нижней панели */
.topbar:has(.usermenu[open]){z-index:150}
body:has(.usermenu[open]){overflow:hidden}
@media (min-width:901px){body:has(.usermenu[open]){overflow:auto}}
/* строка «поле + Камера»: поле шире, кнопка компактнее */
.bc-row{display:flex;gap:10px;align-items:stretch}
.bc-row input{flex:1 1 auto;min-width:0}
@media (max-width:640px){
  .bc-row{gap:8px}
  .bc-row .cam-btn,.bc-row .mic-btn{flex:none}
  .bc-row .cam-btn{min-width:0;padding:0 14px;font-size:16px;min-height:56px}
  .bc-row .mic-btn{min-width:52px;padding:0}
  #barcode{font-size:20px;letter-spacing:.5px}
  #barcode::placeholder,#cq::placeholder{font-size:16px}
}

/* ===== v5.9: продажи ===== */
.sl-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.sl-title h1{margin:0 0 2px}
.sl-shelf-name{color:var(--brand-d)}
.sl-sub{color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}
.sl-upd{display:inline-flex;align-items:center;gap:6px;font-size:13px}
.live-dot{width:8px;height:8px;border-radius:50%;background:#2fa35a;box-shadow:0 0 0 3px #dff3e6}
.sl-actions{display:flex;gap:6px;flex:none}
.sl-actions .btn{min-height:40px;padding:6px 12px}
.sl-label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:12px 0 6px}
.chips-scroll{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px 2px 6px;margin:0 -2px 6px;scroll-snap-type:x proximity}
.chips-scroll::-webkit-scrollbar{display:none}
.chips-scroll .chip{flex:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:8px 14px;border-radius:999px;border:1.5px solid var(--line-2);
  background:#fff;color:var(--ink);font-weight:600;font-size:14px;line-height:1.2;text-decoration:none;cursor:pointer;scroll-snap-align:start;min-height:38px}
.chips-scroll .chip:hover{text-decoration:none;border-color:#b9b2a6;background:#fff}
.chips-scroll .chip.on:hover{background:var(--dark)}
.chips-scroll.shelves .chip.on:hover{background:var(--brand)}
.chips-scroll .chip.on{background:var(--dark);border-color:var(--dark);color:#fff}
.chips-scroll .chip small{font-size:12px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
.chips-scroll .chip.on small{color:#f3b46b}
.chips-scroll.shelves .chip.on{background:var(--brand);border-color:var(--brand);color:#1b1407}
.chips-scroll.shelves .chip.on small{color:#4a2a00}
.chip-more{flex:none;position:relative}
.chip-more summary{list-style:none}
.chip-more summary::-webkit-details-marker{display:none}
.custom-pop{position:absolute;left:0;top:calc(100% + 6px);z-index:40;background:#fff;border:1px solid var(--line);border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.18);padding:12px;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;width:260px}
.custom-pop label{margin:0}
.custom-pop .btn{grid-column:1/-1}
@media (max-width:640px){.chip-more[open] .custom-pop{position:fixed;left:12px;right:12px;top:auto;width:auto}}
.kpis{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin:10px 0 14px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:0 1px 2px rgba(20,18,15,.05);min-width:0}
.kpi.main{background:var(--dark);border-color:var(--dark);color:#fff}
.k-l{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.kpi.main .k-l,.kpi.main .k-s{color:#bdb7ad}
.k-v{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:4px 0 2px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi.main .k-v{color:#fff;font-size:30px}
.k-v .cur{font-size:.55em;font-weight:700;margin-left:4px;opacity:.6}
.k-s{font-size:13px;color:var(--muted)}
@media (max-width:640px){
  .kpis{grid-template-columns:1fr 1fr}
  .kpi.main{grid-column:1/-1}
  .k-v{font-size:22px}
  .kpi.main .k-v{font-size:32px}
  .hide-xs{display:none}
}
.empty-note{display:flex;gap:12px;align-items:center;background:#fff;border:1.5px dashed var(--line-2);border-radius:14px;padding:14px 16px;margin-bottom:14px}
.empty-note .ic{width:28px;height:28px;color:#b2aca2}
.empty-note div{display:grid;gap:2px}
.empty-note span{font-size:13px;color:var(--muted)}
.card-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.card-h h2{margin:0 0 8px}
.sl-list{padding-top:12px}
.chips-scroll.seg .chip{font-size:14px}
.sl-search{position:relative;margin:4px 0 6px}
.sl-search .ic-search{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9a958c;width:18px;height:18px}
.sl-search input{padding-left:38px;padding-right:40px}
.sl-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;color:var(--muted);border-radius:8px}
.sl-info{font-size:14px;background:#faf7f1;border-radius:10px;padding:10px 12px;margin:6px 0 8px;color:#3d3a35}
.sl-row{display:flex;gap:10px;align-items:flex-start;padding:12px 2px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}
a.sl-row:hover{text-decoration:none;background:#fcfaf6}
.sl-row:last-of-type{border-bottom:0}
.sl-rank{flex:none;width:26px;height:26px;border-radius:8px;background:#f1eee8;color:#6f6a62;font-size:13px;font-weight:700;display:grid;place-items:center;margin-top:1px;font-variant-numeric:tabular-nums}
.sl-row:nth-child(-n+5) .sl-rank{background:#fff1df;color:#a35a00}
.sl-body{flex:1;min-width:0}
.sl-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sl-name{font-weight:650;font-size:15px;line-height:1.3;min-width:0;overflow-wrap:anywhere}
.sl-big{flex:none;font-weight:800;font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.sl-big small{font-size:12px;font-weight:600;color:var(--muted)}
.sl-bar{height:5px;border-radius:3px;background:#f0ede7;margin:7px 0 6px;overflow:hidden}
.sl-bar span{display:block;height:100%;border-radius:3px;background:var(--brand)}
.sl-bar.green span{background:#2fa35a}
.sl-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.sl-meta .pos{color:var(--green);font-weight:600}
.sl-sh{color:#7b6a52;font-weight:600}
.tag{display:inline-block;padding:0 7px;border-radius:6px;background:#eef3ea;color:#2d6a3a;font-weight:600;font-size:12px;line-height:20px}
.tag.red{background:#fde3e0;color:#b3261e}
.sl-go{flex:none;color:#b2aca2;margin-top:4px}

/* ===== v6.0: фото товаров ===== */
.ph-thumb{flex:none;display:grid;place-items:center;border-radius:10px;overflow:hidden;background:#f1eee8;border:1px solid var(--line);padding:0;cursor:pointer;color:#a39d93}
.ph-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ph-thumb.ph-sm{width:44px;height:44px}
.ph-thumb.ph-md{width:60px;height:60px;margin-right:12px}
.ph-thumb.empty{border:1.5px dashed #cfc8bc;background:#fbfaf7}
.ph-thumb.empty:hover{border-color:var(--brand);color:var(--brand-d)}
.ph-thumb.none{cursor:default;opacity:.55}
.ph-thumb .ic{width:20px;height:20px}
.cat-item{display:flex;align-items:flex-start}
.p-head{display:flex;gap:12px;align-items:flex-start}
.p-photo:empty{display:none}
.p-photo button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;place-items:center;width:84px;height:84px;border-radius:14px;overflow:hidden}
.p-photo-img{background:#f1eee8;border:1px solid var(--line)}
.p-photo-img img{width:100%;height:100%;object-fit:cover}
.p-photo-add{border:2px dashed #e7b778!important;background:#fff8ef;color:#b86a00;gap:2px;font-size:13px;font-weight:700}
.p-photo-add .ic{width:28px;height:28px}
.ph-view{position:fixed;inset:0;z-index:300;background:rgba(10,10,9,.94);display:flex;flex-direction:column;animation:fadein .15s}
.ph-open,.ph-open body{overflow:hidden}
.ph-top{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 12px 8px 16px;color:#fff}
.ph-name{flex:1;font-weight:700;font-size:16px;line-height:1.3}
.ph-x{all:unset;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:#fff;background:rgba(255,255,255,.1)}
.ph-x .ic{width:24px;height:24px}
.ph-img{flex:1;display:grid;place-items:center;min-height:0;padding:8px}
.ph-img img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
.ph-bar{display:flex;gap:10px;justify-content:center;padding:12px 16px calc(16px + env(safe-area-inset-bottom))}
.ph-bar .btn{min-width:140px;background:#fff}
.ph-busy{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:320;background:#1f1e1c;color:#fff;
  padding:10px 16px;border-radius:999px;display:flex;gap:10px;align-items:center;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.ph-spin{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.3);border-top-color:var(--brand);animation:phspin .8s linear infinite}
@keyframes phspin{to{transform:rotate(360deg)}}
.ph-toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:320;background:#1e7a43;color:#fff;
  padding:10px 18px;border-radius:999px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);transition:opacity .4s;max-width:90vw;text-align:center}
.ph-toast.bad{background:#b3261e}
.ph-toast.out{opacity:0}
.sl-row .ph-thumb{margin-top:-2px}
.cat-item>.grow{min-width:0;flex:1 1 auto}
.cat-item .cat-right{flex:none}
@media (max-width:640px){.ph-thumb.ph-md{width:52px;height:52px;margin-right:10px}}
.ph-toast,.ph-busy{bottom:auto;top:calc(76px + env(safe-area-inset-top))}

/* ===== v6.1: не на своей полке ===== */
.mp-box{margin-top:12px;background:#fff;border:1px solid #f0c6c0;border-radius:12px;padding:12px;display:grid;gap:8px;color:var(--ink)}
.mp-q{font-weight:800;font-size:16px}
.mp-row{display:flex;gap:8px;align-items:center}
.mp-row input{flex:1 1 auto;min-width:0;font-size:20px;font-weight:700;text-align:center}
.mp-unit{color:var(--muted);font-weight:600}
.mp-row .btn{flex:none;min-height:48px}
.mp-skip{justify-self:start}
.shake{animation:shake .35s}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.mp-card .card-h h2{display:flex;align-items:center;gap:8px;margin:0 0 6px}
.mp-item{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);flex-wrap:wrap}
.mp-item.added,.mp-item.returned{opacity:.75}
.mp-main{flex:1 1 320px;min-width:0}
.mp-name{font-weight:700}
.mp-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted);margin-top:2px}
.mp-st{font-size:13px;margin-top:4px;color:#6b5a3f}
.mp-st.ok{color:var(--green)}
.mp-act{display:flex;gap:6px;flex-wrap:wrap}
.mp-act form{margin:0}
.sub-pick{margin-top:10px}
.sub-pick select{font-weight:600}
.dev-saved{margin-top:8px;font-size:13px;font-weight:700;color:var(--green)}
.data-at{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);margin-top:4px}
.data-at.old{color:var(--red);font-weight:600}
.data-at.old .live-dot{background:var(--red);box-shadow:0 0 0 3px #fde3e0}
.fact-group{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#faf7f1;border-radius:10px;padding:8px 12px;margin:12px 0 2px;font-size:14px}
.fact-group span{color:var(--muted);font-size:13px}
.role-pill.aud{background:#e8f0fa;color:#1d4f8a}
.tag-row{align-items:center}
.tag-act{display:flex;gap:6px;flex:none}
.tag-act form{margin:0}
.p-tag{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.p-tag .btn.on{background:#fde3e0;border-color:#e8a59d;color:#9b1c13}
.p-tag input{width:130px;min-height:40px}
.um-badge{margin-left:auto;background:var(--red);color:#fff;border-radius:999px;padding:0 8px;font-size:12px;font-weight:700;line-height:20px}
.price-warn{margin-top:10px;background:#fff4e5;border:1.5px solid #f2c27f;border-radius:12px;padding:10px 12px;font-size:14px;color:#6b3d00}
.p-tag #shelfFlagBtn.on{background:#e8f0fa;border-color:#9dbbe2;color:#1d4f8a}

/* итог ревизии — понятный блок */
.rsum{padding:18px}
.rsum-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.rsum-head h2{margin:0}
.rsum-prog-t{font-size:16px;margin-bottom:8px}
.rsum-bar{height:12px;border-radius:99px;background:var(--line,#e6e2da);overflow:hidden}
.rsum-bar i{display:block;height:100%;background:var(--brand);border-radius:99px}
.rsum-bar.sm{height:6px;margin-top:4px;max-width:160px}
.rsum-sub{margin:16px 0 8px;font-size:14px}
.rsum-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rsum-box{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;border:1px solid var(--line,#e6e2da);color:inherit;text-decoration:none;background:var(--card,#fff)}
.rsum-box:hover{border-color:currentColor}
.rs-ic{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:22px;font-weight:800;color:#fff}
.rsum-box.ok .rs-ic{background:#5b8c5a}.rsum-box.bad .rs-ic{background:#c0392b}.rsum-box.plus .rs-ic{background:#1e8449}
.rs-v{font-size:24px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}
.rs-v small{font-size:13px;font-weight:600;color:var(--muted)}
.rs-l{font-size:13px;color:var(--muted)}
.rsum-box.bad .rs-v{color:#c0392b}.rsum-box.plus .rs-v{color:#1e8449}
.rsum-net{margin-top:12px;font-size:15px;padding:10px 12px;border-radius:12px;background:rgba(0,0,0,.035)}
.rsum-net.neg b{color:#c0392b}.rsum-net.pos b{color:#1e8449}
.rsum-note{margin-top:12px;font-size:14px;line-height:1.5;padding:10px 12px;border-radius:12px;background:#fff6e8;border:1px solid #f3d9b0}
.rsum-shelves td{vertical-align:middle}
.rs-cnt{font-variant-numeric:tabular-nums;font-size:14px}
@media (max-width:640px){.rsum-grid{grid-template-columns:1fr}.rs-v{font-size:22px}}
.usermenu:not([open]) .usermenu-pop{display:none}

.my-exp{font-size:13px;font-weight:500;color:var(--muted,#6b675f);margin-top:3px}
.my-exp b{color:var(--text,#232220)}
.my-exp .neg{color:#c0392b;font-weight:700}.my-exp .pos{color:#1e8449;font-weight:700}
.manual-by{color:#a05a00;font-weight:600}
.exp-qty{font-size:28px;font-weight:800;color:#1f5fa8;line-height:1.1}.exp-qty small{font-size:15px;font-weight:600}

/* поставщики */
.sup-back{display:inline-flex;vertical-align:middle;margin-right:6px;color:inherit}
.sup-item{align-items:flex-start}
.sup-cheap{margin-top:6px;font-size:13px;color:#c0392b;font-weight:600}
.sup-subs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.sup-sub{display:flex;flex-direction:column;gap:1px;padding:6px 10px;border:1px solid var(--line,#e2ded6);border-radius:10px;
  text-decoration:none;color:inherit;font-size:13px;background:#fff;min-width:0;max-width:100%}
.sup-sub b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sup-sub span{color:var(--muted,#6b675f)}
.sup-sub.best{border-color:#1e8449;background:#eef8f1}
.sup-sub em{font-style:normal;font-size:11px;font-weight:700;color:#1e8449}
.ic-box{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7l9-4 9 4v10l-9 4-9-4z'/%3E%3Cpath d='M3 7l9 4 9-4M12 11v10'/%3E%3C/svg%3E")}

/* анализ товаров */
.g-row{align-items:flex-start}
.g-need{text-align:right;white-space:nowrap;color:#c0392b}
.g-need small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#c0392b;font-weight:700}
.g-need b{font-size:22px;font-weight:800}
.g-nums{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:8px 0 4px}
.g-nums div{background:var(--bg2,#f4f1ea);border-radius:8px;padding:5px 6px;text-align:center;min-width:0}
.g-nums small{display:block;font-size:11px;color:var(--muted,#6b675f)}
.g-nums b{font-size:15px}
.g-nums .neg b{color:#c0392b}
.g-ord{color:#1f5fa8;font-weight:600}
.goods-shelf-f{margin:0 0 10px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.goods-shelf-f select{width:100%;max-width:100%;min-width:0}
@media(max-width:560px){.goods-shelf-f{grid-template-columns:1fr}}

/* карточка ревизии в списке */
.revlist{display:flex;flex-direction:column;gap:14px}
.rc{padding:18px 20px;border-radius:16px;display:flex;flex-direction:column;gap:12px}
.rc-open{border-left:5px solid #f28c18}
.rc-closed{border-left:5px solid #c9c4ba;background:#faf9f6}
.rc-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.rc-title{min-width:0}
.rc-name{font-size:19px;font-weight:800;color:#1f5fa8;text-decoration:none;line-height:1.25;display:block}
.rc-name:hover{text-decoration:underline}
.rc-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:13px;color:var(--muted,#6b675f)}
.rc-st{display:inline-flex;align-items:center;gap:6px;font-weight:700;padding:2px 10px;border-radius:999px;font-size:12px}
.rc-st i{width:7px;height:7px;border-radius:50%;background:currentColor}
.rc-st.open{background:#e6f5ea;color:#1e8449}
.rc-st.closed{background:#ece9e3;color:#6b675f}
.rc-pct{flex:none;text-align:center;background:#fff4e6;border-radius:14px;padding:8px 12px;min-width:76px}
.rc-closed .rc-pct{background:#efece6}
.rc-pct b{display:block;font-size:22px;font-weight:800;color:#c96a00;line-height:1.1}
.rc-closed .rc-pct b{color:#6b675f}
.rc-pct small{font-size:11px;color:var(--muted,#6b675f)}
.rc-shelves{display:flex;flex-wrap:wrap;gap:6px}
.rc-shelves span{display:inline-flex;align-items:center;gap:5px;background:#f4f1ea;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}
.rc-prog-t{font-size:14px;margin-bottom:6px}
.rc-bar{height:10px;background:#ebe7df;border-radius:999px;overflow:hidden}
.rc-bar i{display:block;height:100%;background:linear-gradient(90deg,#f6a03c,#f28c18);border-radius:999px}
.rc-closed .rc-bar i{background:#a9a397}
.rc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.rc-s{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:12px;text-decoration:none;background:#f7f5f0;min-width:0}
.rc-s b{font-size:20px;font-weight:800;line-height:1.1}
.rc-s span{font-size:12px;color:var(--muted,#6b675f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.rc-s.ok b{color:#1e8449}.rc-s.bad b{color:#c0392b}.rc-s.plus b{color:#1f5fa8}.rc-s.wait b{color:#8a6d3b}
.rc-s:hover{background:#efebe3}
.rc-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.rc-a{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e2ded6;border-radius:12px;background:#fff;
  color:inherit;text-decoration:none;min-width:0;transition:background .15s,border-color .15s}
.rc-a .ic{width:22px;height:22px;color:#c96a00;flex:none}
.rc-a span{display:flex;flex-direction:column;min-width:0}
.rc-a b{font-size:15px;font-weight:700}
.rc-a small{font-size:12px;color:var(--muted,#6b675f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-a:hover{border-color:#f28c18;background:#fffaf3}
.rc-a.main{background:#f28c18;border-color:#f28c18;color:#fff}
.rc-a.main .ic,.rc-a.main small{color:#fff}
.rc-a.main:hover{background:#e07c0a}
.rc-a.locked{opacity:.6;cursor:not-allowed}
.rc-a.locked .ic{color:#8a857b}
@media(max-width:560px){
  .rc{padding:14px}
  .rc-name{font-size:17px}
  .rc-stats{gap:6px}.rc-s{padding:7px 2px}.rc-s b{font-size:17px}.rc-s span{font-size:11px;white-space:normal;text-align:center;line-height:1.15}
  .rc-actions{grid-template-columns:1fr 1fr}
  .rc-a{padding:9px 10px;gap:8px}
  .rc-a small{display:none}
}

.mp-cnt{display:inline-block;margin-left:6px;font-size:12px;font-weight:700;background:#fff0d9;color:#a05a00;border-radius:999px;padding:1px 8px;vertical-align:middle}
.mp-total b{font-size:16px;color:#c96a00}
.mp-rows{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.mp-r{display:inline-flex;align-items:center;gap:6px;background:#f4f1ea;border-radius:999px;padding:3px 4px 3px 10px;font-size:13px}
.mp-r form{display:inline}
.mp-x{border:0;background:#fff;color:#c0392b;width:22px;height:22px;border-radius:50%;font-size:16px;line-height:20px;cursor:pointer;padding:0}
.mp-x:hover{background:#fde4e1}
.mp-done{margin-top:10px}
.mp-done summary{cursor:pointer;font-weight:600;color:var(--muted,#6b675f);padding:6px 0}

/* примечания: брак / возврат / списать */
.p-notes{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.p-note{background:#fff3e0;border:1px solid #f5c58a;border-radius:10px;padding:8px 10px;font-size:14px}
.p-note.k-brak{background:#fdecea;border-color:#f1a9a0}
.p-note.k-return{background:#eaf2fb;border-color:#a9c6ea}
.p-note small{display:block;color:var(--muted,#6b675f);font-size:12px;margin-top:2px}
.note-form{border:1px dashed #e0a458;border-radius:12px;padding:10px;margin:8px 0;background:#fffaf3;display:flex;flex-direction:column;gap:8px}
.nf-kinds{display:flex;flex-wrap:wrap;gap:6px}
.nf-kinds label{cursor:pointer}
.nf-kinds input{display:none}
.nf-kinds span{display:inline-block;padding:6px 12px;border:1px solid #d9d4ca;border-radius:999px;background:#fff;font-size:14px;font-weight:600}
.nf-kinds input:checked+span{background:#f28c18;border-color:#f28c18;color:#fff}
.nf-row{display:flex;gap:8px;flex-wrap:wrap}
.nf-row #nfQty{width:110px}
.nf-row #nfText{flex:1;min-width:180px}
.note-row{align-items:flex-start}
.note-kind{flex:none;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#fff0d9;color:#a05a00;white-space:nowrap}
.note-kind.k-brak{background:#fde4e1;color:#c0392b}
.note-kind.k-return{background:#e3eefb;color:#1f5fa8}
.note-kind.k-writeoff{background:#efe7f8;color:#6b3fa0}
.note-text{font-size:14px;margin:4px 0;color:#3a3833}
.note-done{display:flex;gap:6px;flex-wrap:wrap}
.note-done input{width:200px;font-size:13px}
.rep-note{display:inline-block;font-size:12px;font-weight:700;padding:1px 8px;border-radius:999px;background:#fde4e1;color:#c0392b;margin-left:4px}
.mp-again{margin:8px 0}.mp-modes{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 4px}

/* итоги ручных ревизий */
.mr-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;border-left:5px solid #a9a397;padding:16px 18px;border-radius:16px}
.mr-card:hover{border-left-color:#f28c18}
.mr-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.mr-name{font-size:18px;font-weight:800;color:#1f5fa8}
.mr-sums{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.mr-sums div{background:#f7f5f0;border-radius:12px;padding:8px 12px}
.mr-sums small{display:block;font-size:12px;color:var(--muted,#6b675f)}
.mr-sums b{font-size:18px}
.mr-sums.big b{font-size:24px}
.mr-sums .bad b{color:#c0392b}.mr-sums .plus b{color:#1e8449}
.mr-sums.big{margin-bottom:14px}
.mr-note{white-space:pre-wrap;line-height:1.5}
.mr-doc{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #eee9e0}
.mr-doc:last-child{border-bottom:0}
.mr-doc form{display:inline}
.mr-open{font-weight:600;flex:1;min-width:180px;word-break:break-word}
.mr-kind{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#ece9e3;color:#6b675f;white-space:nowrap}
.mr-kind.k-spis{background:#fde4e1;color:#c0392b}.mr-kind.k-oprih{background:#e5f4e4;color:#1e8449}.mr-kind.k-akt{background:#e3eefb;color:#1f5fa8}
.mr-files{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.mr-file{display:flex;flex-direction:column;gap:6px;border:1px dashed #d9d4ca;border-radius:12px;padding:10px;background:#fbfaf7}
.mr-file span{font-weight:700}
.mr-form textarea{width:100%}
.shelf-pick{display:flex;flex-wrap:wrap;gap:6px;max-height:260px;overflow:auto;border:1px solid #eee9e0;border-radius:10px;padding:8px}
@media(max-width:560px){.mr-head{flex-direction:column;align-items:stretch;gap:10px}.mr-head .sl-actions .btn{width:100%;justify-content:center}}
.mr-fsum{font-weight:800;white-space:nowrap}.mr-fsum.bad{color:#c0392b}.mr-fsum.plus{color:#1e8449}
.mr-shelves{width:100%;border-collapse:collapse}.mr-shelves th,.mr-shelves td{padding:8px 10px;border-bottom:1px solid var(--line,#e5e5e5);text-align:left;vertical-align:top}
.mr-shelves .num{text-align:right;white-space:nowrap}.mr-shelves .plus{color:#1e8449}.mr-shelves .bad{color:#c0392b}.mr-shelves tfoot td{border-top:2px solid var(--line,#ccc);border-bottom:0}
.mr-shsel select{max-width:230px;padding:4px 6px;font-size:13px}.mr-shsel select.empty{border-color:#e67e22;color:#b9770e}
.mr-shchip{font-size:13px;color:var(--muted,#666);display:inline-flex;gap:4px;align-items:center}
.pay-tbl{width:100%;border-collapse:collapse}.pay-tbl th,.pay-tbl td{padding:6px 8px;border-bottom:1px solid #eee9e0;text-align:left}
.pay-tbl .num{text-align:right;white-space:nowrap}.pay-tbl input[type=text]{width:110px;text-align:right}.pay-tbl tr.off td{opacity:.55}
.pay-tbl tfoot td{border-top:2px solid #ddd;border-bottom:0}.pay-tbl .bad,.pay-total .bad{color:#c0392b}.pay-total .plus{color:#1e8449}
.pay-total{margin-top:12px;padding:10px 12px;background:#fff6ec;border-radius:10px}.shelf-opt.has{font-weight:700}.pay-shsum{color:#888;font-weight:400}
.pay-warn{margin-top:10px;padding:8px 12px;border-radius:10px;background:#fdecea;color:#a93226;font-weight:600}.pay-tbl .pay-note{width:140px}
.pay-draft{margin-bottom:12px;padding:8px 12px;border-radius:10px;background:#fff3cd;color:#6b4b00;font-weight:600}
.f1c-tbl{width:100%;border-collapse:collapse}.f1c-tbl th,.f1c-tbl td{padding:7px 8px;border-bottom:1px solid #eee9e0;text-align:left;vertical-align:top}
.f1c-tbl .num{text-align:right;white-space:nowrap}.f1c-tbl .plus{color:#1e8449;font-weight:700}.f1c-tbl .bad{color:#c0392b;font-weight:700}
.f1c-tbl .f1c-fact{font-size:1.1em;background:#fff6ec}.f1c-tbl tr.done td{opacity:.4;text-decoration:line-through}.f1c-tbl tr.done td:first-child{opacity:1;text-decoration:none}
.f1c-tbl .mono{font-family:ui-monospace,Consolas,monospace;white-space:nowrap}.f1c-tbl tr.unk td{background:#fdecea}.f1c-tbl input[type=checkbox]{width:20px;height:20px}
.f1c-how ol{margin:8px 0 0 18px;padding:0;line-height:1.6}
@media print{.noprint,header,nav,.topbar{display:none!important}.f1c{break-inside:auto;box-shadow:none;border:0}}
.f1c-foreign{border-left:4px solid #e67e22}
.bulk-del{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}.bd-cb,#bdAll{width:18px;height:18px}
.vcmd-btn{all:unset;cursor:pointer;width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#3a3834;margin-left:auto;margin-right:8px;flex:none}
.vcmd-btn svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round}
.vcmd-btn.rec{background:#e74c3c;animation:vpulse 1s infinite alternate}@keyframes vpulse{to{box-shadow:0 0 0 8px rgba(231,76,60,.25)}}
.vcmd-hint{position:fixed;left:50%;transform:translateX(-50%);top:70px;z-index:9998;max-width:min(560px,calc(100vw - 32px));background:#232220;color:#fff;
  padding:10px 14px;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.25);font-size:15px;line-height:1.4}
.vcmd-hint.ok{background:#1e6b3a}.vcmd-hint.err{background:#8e2b20}
.vcmd-btn + .usermenu{margin-left:0}
.vcmd-btn.hf{background:#1e8449;box-shadow:0 0 0 3px rgba(30,132,73,.35)}.vcmd-btn.hf.rec{background:#e74c3c}
.vcmd-btn{touch-action:manipulation;-webkit-user-select:none;user-select:none}

/* продажи: переключатель склада */
.wh-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;margin:14px 0 10px;background:#e9e4da;border-radius:16px}
.wh-seg a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:9px 6px;border-radius:12px;
  text-decoration:none;color:#5d574d;font-weight:600;font-size:14px;line-height:1.15;text-align:center;min-width:0}
.wh-seg a b{font-weight:700;font-size:12.5px;color:#8a8273;font-variant-numeric:tabular-nums;white-space:nowrap}
.wh-seg a.on{background:#fff;color:#232220;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.wh-seg a.on b{color:#e67e22}
.sl-shelves{margin-bottom:12px}
.sl-shelves .chip{min-height:34px;padding:6px 12px;font-size:14px}
.sl-shelves .chip small{font-size:11.5px;opacity:.75}
.vcmd-type{position:fixed;left:12px;right:12px;top:70px;z-index:9999;background:#fff;border-radius:16px;padding:14px;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.vcmd-type[hidden]{display:none}.vcmd-type-t{font-size:15px;margin-bottom:8px}.vcmd-type input{width:100%;font-size:17px;padding:10px 12px;box-sizing:border-box}
.vcmd-type-b{display:flex;gap:8px;margin-top:10px}
main.loading-soft{opacity:.6;transition:opacity .15s;pointer-events:none}
.cat-wh{font-size:12px;color:#7a7366;text-align:right;line-height:1.35;margin-top:2px}.cat-wh b{color:#3c3830}
.g-mv{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:13px;color:#6b6458}.g-mv b{color:#2b2823}.g-mv .neg,.g-mv .neg b{color:#c0392b}.g-mv .pos,.g-mv .pos b{color:#1e8449}
.rcv-tbl tr.ok td{background:#eef8f0}.rcv-tbl tr.bad td{background:#fdecea}.rcv-tbl tr.extra td{background:#fff6e5}.rcv-tbl tr[data-id]{cursor:pointer}
.rcv-tbl tr.flash-row td{animation:rflash .9s}@keyframes rflash{from{background:#ffe08a}}.rcv-scan .row{gap:6px;flex-wrap:nowrap}
/* ===== анализ товаров 6.69 ===== */
.ic-cart{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' 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 3h3l2.6 12.2a2 2 0 0 0 2 1.6h7.9a2 2 0 0 0 2-1.5L21 8H6'/%3E%3C/svg%3E")}
.ga-tools{display:grid;gap:10px;padding:12px;margin-bottom:12px}
.ga-sup{display:grid;gap:4px}.ga-sup label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b675f);display:flex;align-items:center;gap:6px}
.ga-sup select{width:100%;font-size:17px;font-weight:600;padding:11px 12px;border-radius:12px;border:2px solid #d9cfbd;background:#fff}
.ga-row{display:grid;grid-template-columns:2fr 1fr;gap:8px;align-items:center}.ga-row .sl-search{margin:0}.ga-row select{width:100%;min-width:0}
.ga-period{display:flex;flex-wrap:wrap;gap:8px 18px}.ga-period>div{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.ga-period span{font-size:13px;color:var(--muted,#6b675f);margin-right:2px}.ga-period .chip{padding:4px 10px}
@media(max-width:560px){.ga-row{grid-template-columns:1fr}}
.ga-hero{padding:14px;margin-bottom:12px;background:linear-gradient(135deg,#fff8ec,#fff);border:1px solid #efdcb8}
.ga-hero-top{display:flex;gap:10px;align-items:flex-start}.ga-hero h2{margin:2px 0 0;font-size:20px;line-height:1.2}
.ga-hero-l{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#b0742a}
.ga-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:12px 0}
.ga-stats div{background:#fff;border:1px solid #eee3cf;border-radius:10px;padding:8px;text-align:center;min-width:0}
.ga-stats small{display:block;font-size:11px;color:var(--muted,#6b675f);line-height:1.2}.ga-stats b{font-size:18px;display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis}
.ga-stats .neg b{color:#c0392b}
@media(max-width:700px){.ga-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ga-hero-act{display:flex;flex-wrap:wrap;gap:8px}
.ga-tabs{margin-bottom:6px}.ga-hint{margin:0 0 8px}
.ga-list{display:grid;gap:10px;margin-bottom:12px}
.ga-card{background:#fff;border:1px solid #eae3d6;border-left:5px solid #cfc6b6;border-radius:14px;padding:12px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.ga-card.st-bad{border-left-color:#c0392b}.ga-card.st-warn{border-left-color:#e67e22}.ga-card.st-ok{border-left-color:#27ae60}.ga-card.st-idle{border-left-color:#9a958b}
.ga-card.ordered{background:#f3f8ff}
.ga-top{display:flex;gap:10px;align-items:flex-start}
.ga-name{font-weight:700;font-size:16px;line-height:1.25}
.ga-meta{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:4px;font-size:13px;color:var(--muted,#6b675f)}
.ga-st{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:20px;background:#eee}
.st-bad .ga-st{background:#fde8e6;color:#c0392b}.st-warn .ga-st{background:#fdf0e1;color:#c56a12}.st-ok .ga-st{background:#e5f5ea;color:#1e8449}
.ga-nums{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;margin:10px 0 4px}
.ga-nums div{background:#f6f3ec;border-radius:9px;padding:6px 4px;text-align:center;min-width:0}
.ga-nums small{display:block;font-size:10.5px;color:var(--muted,#6b675f);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ga-nums b{font-size:16px;display:block;margin-top:2px}.ga-nums .neg b{color:#c0392b}
.ga-nums .ga-rec.on{background:#fde8e6}.ga-nums .ga-rec.on b{color:#c0392b;font-size:18px}
@media(max-width:760px){.ga-nums{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ga-order{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed #e6dece}
.ga-info{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:13px;color:var(--muted,#6b675f)}.ga-info .neg{color:#c0392b}
.ga-ctl{display:flex;align-items:center;gap:6px;margin-left:auto}
.ga-qty{width:84px;padding:8px;border-radius:10px;border:1px solid #d6ccba;font-size:16px;text-align:center}.ga-qty.err{border-color:#c0392b;box-shadow:0 0 0 2px #fde8e6}
.ga-inord{font-size:13px;color:#1f5fa8;font-weight:600}
.rc-new{display:grid;gap:10px;margin-top:10px}.rc-new input[type=file]{width:100%}
.rc-inv{border:1px dashed #d9b36b;background:#fffaf0}.rc-log{white-space:pre-wrap;font-size:12px;max-height:240px;overflow:auto;background:#f6f3ec;padding:8px;border-radius:8px}
.ga-nums small{white-space:normal}
.ga-ctl{flex-wrap:wrap;justify-content:flex-end}.ga-ctl .ga-qty{flex:0 0 84px}.ga-ctl .ga-btn{flex:0 0 auto}
.ga-inord{white-space:nowrap}
@media(max-width:560px){.ga-order{flex-direction:column;align-items:stretch}.ga-ctl{margin-left:0;justify-content:flex-start}.ga-ctl .ga-btn{flex:1 1 auto}.ga-inord{width:100%}}
.ga-hits{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}
.ga-why{color:#1f5fa8}
.ga-hist{margin-top:8px;font-size:14px}.ga-hist summary{cursor:pointer;color:#1f5fa8;font-weight:600}
.ga-hist-body{margin-top:8px;display:grid;gap:10px}
.gh-bars{display:flex;align-items:flex-end;gap:4px;margin-top:6px;overflow-x:auto;padding-bottom:2px}
.gh-bar{flex:1 0 34px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:96px}
.gh-bar i{display:block;width:70%;background:#e8913a;border-radius:4px 4px 0 0}
.gh-bar b{font-size:11px;order:-1;margin-bottom:2px}.gh-bar small{font-size:10px;color:var(--muted,#6b675f);margin-top:3px;white-space:nowrap}
.gh-list{margin:6px 0 0;padding-left:18px;line-height:1.5}
.ga-rc{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:13px;color:#4a463f}.ga-rc b{color:#2b2823}
.ga-period .chip{border:1.5px solid var(--line-2,#e2dbcd);background:#fff;cursor:pointer}
.ga-period .chip.on{background:var(--brand,#f08a1c);border-color:var(--brand,#f08a1c);color:#fff;font-weight:700;box-shadow:0 1px 3px rgba(240,138,28,.35)}
.ga-period .chip.on::before{content:'✓';margin-right:2px}
.so-list,.so-lines{display:grid;gap:10px;margin-bottom:12px}
.so-card{display:block;color:inherit;text-decoration:none;border-left:5px solid #cfc6b6}
.so-card.st-draft,.so-head.st-draft{border-left:5px solid #e67e22}.so-card.st-sent,.so-head.st-sent{border-left:5px solid #1f5fa8}
.so-card.st-received,.so-head.st-received{border-left:5px solid #27ae60}.so-card.st-cancelled{opacity:.6}
.so-top{display:flex;gap:10px;align-items:flex-start}.so-no{font-size:12px;font-weight:700;color:#b0742a;text-transform:uppercase;letter-spacing:.04em}
.so-sup{font-size:19px;font-weight:800;line-height:1.2}
.so-st{font-size:11px;font-weight:700;text-transform:uppercase;padding:3px 9px;border-radius:20px;background:#eee;white-space:nowrap}
.st-draft .so-st{background:#fdf0e1;color:#c56a12}.st-sent .so-st{background:#e6eefa;color:#1f5fa8}.st-received .so-st{background:#e5f5ea;color:#1e8449}
.so-nums{display:flex;flex-wrap:wrap;gap:4px 14px;margin:6px 0 4px}
.so-line{display:flex;gap:10px;align-items:center;padding:10px 12px}
.so-ctl{display:flex;gap:6px;align-items:center}.so-q{font-size:18px}
@media(max-width:560px){.so-line{flex-wrap:wrap}.so-ctl{margin-left:auto}}
.ga-toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%,20px);background:#2b2823;color:#fff;padding:12px 18px;border-radius:12px;
  font-weight:600;box-shadow:0 6px 20px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:.25s;z-index:50;text-decoration:none;max-width:92vw}
.ga-toast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.so-ctl .ga-qty{flex:0 0 90px;width:90px}
@media(max-width:560px){.so-line .so-ctl{width:100%;justify-content:flex-end;margin-left:0}}
.ga-sups{margin-top:8px;border:1px solid #eee3cf;border-radius:10px;padding:6px 10px;background:#fffdf8;font-size:13px}
.ga-sups-h{font-weight:700;margin-bottom:2px}
.ga-sup-row{display:grid;grid-template-columns:minmax(0,2fr) auto minmax(0,2fr) auto;gap:4px 12px;align-items:center;padding:4px 0;border-top:1px dashed #efe6d4}
.ga-sup-row:first-of-type{border-top:0}.ga-sup-row.best{color:#1e6b3a}.ga-sup-row.cur .ga-sup-n{text-decoration:underline}
.ga-sup-n{font-weight:600;overflow:hidden;text-overflow:ellipsis}
.ga-osup{max-width:220px;padding:8px;border-radius:10px;border:1px solid #d6ccba;font-size:14px}
@media(max-width:560px){.ga-sup-row{grid-template-columns:1fr auto}.ga-osup{max-width:100%;flex:1 1 100%}}
.ga-last{color:#1f5fa8}
.ga-src{display:block;font-style:normal;font-size:10px;color:var(--muted,#8a857b);margin-top:1px;white-space:nowrap}
.ga-mon{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px;margin-top:8px;font-size:13px}
.ga-mon-h{color:#4a463f;margin-right:4px;align-self:center}
.ga-m{display:flex;flex-direction:column;align-items:center;min-width:44px;padding:3px 5px;border-radius:7px;background:#f3f0e8}
.ga-m small{font-size:10.5px;color:var(--muted,#6b675f)}.ga-m b{font-size:13px}
.ga-m.zero{background:#fde8e6}.ga-m.zero b{color:#c0392b}.ga-m.top{background:#e5f5ea}.ga-m.top b{color:#1e6b3a}
.ga-m.cur{outline:1px dashed #cfc6b6}
.gh-tbl{width:100%;border-collapse:collapse;font-size:13px;margin-top:6px}.gh-tbl th,.gh-tbl td{padding:4px 6px;border-bottom:1px solid #eee5d5;text-align:left}
.gh-tbl .num{text-align:right}.gh-tbl tr.zero td{color:#c0392b}.gh-tbl tr.tot td{font-weight:700;border-top:2px solid #ddd2bd}
/* ===== карточка товара 6.86 ===== */
.ga-card .ga-top{align-items:center}
.ga-big{text-align:center;min-width:92px;padding:6px 10px;border-radius:12px;background:#f3f0e8}
.ga-big small{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b675f);font-weight:700}
.ga-big b{display:block;font-size:24px;line-height:1.1}.ga-big i{display:block;font-style:normal;font-size:10.5px;color:var(--muted,#6b675f)}
.ga-big.on{background:#fde8e6}.ga-big.on b,.ga-big.on small{color:#c0392b}
.ga-grid{display:grid;grid-template-columns:1.25fr 1fr 1.25fr;gap:10px;margin-top:10px}
@media(max-width:900px){.ga-grid{grid-template-columns:1fr}}
.ga-sec{border:1px solid #eee5d5;border-radius:12px;padding:8px 10px;background:#fffdf9;min-width:0}
.ga-sec h4{margin:0 0 6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:#8a6a3c;font-weight:800}
.ga-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ga-kv div{background:#f6f3ec;border-radius:9px;padding:5px 4px;text-align:center;min-width:0}
.ga-kv small{display:block;font-size:10.5px;color:var(--muted,#6b675f)}.ga-kv b{display:block;font-size:17px;line-height:1.2}
.ga-kv i{display:block;font-style:normal;font-size:10px;color:var(--muted,#8a857b)}.ga-kv .neg b{color:#c0392b}
.ga-sec .ga-mon{margin-top:6px}.ga-sec .ga-m{min-width:38px}
.ga-small{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:13px;color:#4a463f;margin-top:6px}.ga-small .pos{color:#1e8449}.ga-small .neg{color:#c0392b}
.ga-sec .ga-rc{margin-top:4px;gap:3px 10px}
.ga-sec .ga-sups{margin-top:6px;padding:4px 8px}
.ga-sup-row{grid-template-columns:minmax(0,1fr) auto auto !important;gap:2px 10px}
.ga-sup-n{white-space:nowrap}.ga-sup-p b{font-size:14px}.ga-sup-d{font-size:12px;white-space:nowrap}
.ga-card .ga-hist{margin-top:8px}
.ga-card .ga-order{background:#faf7f0;margin:10px -12px -12px;padding:10px 12px;border-radius:0 0 14px 14px;border-top:1px solid #eee5d5}
.ga-pform{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:8px;border-radius:10px;background:#fff8ec;border:1px solid #efdcb8}
.ga-pform input[type=date]{padding:6px 8px;border-radius:8px;border:1px solid #d6ccba;font-size:15px}
.ga-period button.chip{font:inherit}
.ga-per{font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted,#8a857b);font-size:11px;margin-left:4px}
.ga-kv .ga-main{background:#fdf0e1}.ga-kv .ga-main b{color:#b35a0b}
.ga-kv2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ga-rc .inp{background:#fdf0e1;border-radius:6px;padding:0 5px}
.ga-m.inp{box-shadow:inset 0 -3px 0 #e8913a}
.ga-prices{display:flex;flex-wrap:wrap;gap:6px;margin:5px 0 2px}
.ga-prices .gp{display:inline-flex;align-items:baseline;gap:5px;padding:3px 10px;border-radius:9px;background:#f3f0e8;font-size:13px}
.ga-prices .gp small{font-size:11px;color:var(--muted,#6b675f);text-transform:uppercase;letter-spacing:.03em;font-weight:700}
.ga-prices .gp b{font-size:17px}
.ga-prices .buy{background:#e6eefa}.ga-prices .buy b{color:#1f4f8a}
.ga-prices .sell{background:#e5f5ea}.ga-prices .sell b{color:#1e6b3a}
.ga-prices .mk b{font-size:14px}.ga-prices .mk.neg{background:#fde8e6}.ga-prices .mk.neg b{color:#c0392b}
.ga-rcp{color:#1f4f8a}
.ga-pform[hidden]{display:none}
.so-index{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-bottom:10px}
.so-index a{padding:4px 10px;border-radius:20px;background:#fdf0e1;color:#7a4a12;text-decoration:none;font-weight:600;font-size:14px}
.so-index a small{font-weight:400;color:#8a6a3c}
.so-nosup{background:#fffaf0;border:1px solid #efdcb8;margin-bottom:10px}
.so-ns-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:6px 0;border-top:1px dashed #efe2c8}
.so-ns-row select{max-width:280px}
.so-card{position:relative}.so-link{display:block;color:inherit;text-decoration:none}
.so-del{display:flex;justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px dashed #eee5d5}
.so-card .so-top{padding-right:0}
.so-send{margin:10px 0;padding:12px;border-radius:12px;background:#eafaf0;border:1px solid #bfe8cd;display:grid;gap:6px}
.so-wa{background:#25d366 !important;border-color:#25d366 !important;color:#fff !important;font-size:17px;justify-content:center}
.so-ph{display:flex;gap:8px;flex-wrap:wrap}.so-ph[hidden]{display:none}.so-ph input{flex:1 1 180px;padding:9px;border-radius:10px;border:1px solid #c9dccf;font-size:16px}
.so-shop{margin-top:8px}.so-shop-f{display:grid;gap:6px;margin-top:6px}.so-shop-f input{padding:8px;border-radius:8px;border:1px solid #d6ccba}
.po-u{padding:3px 10px;border-radius:20px;background:#f3f0e8;font-size:14px}
.po-tbl select{min-width:180px}.po-tbl tr.free td:first-child b{color:#c0392b}
.rc-own{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}
.rv-info{margin-top:8px;padding-top:8px;border-top:1px dashed #e6d3a8;font-size:13.5px}
.rv-sh{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:5px}
.rv-c{padding:2px 9px;border-radius:20px;font-size:12.5px;font-weight:600}.rv-c.left{background:#fdf0e1;color:#9a5a12}.rv-c.ok{background:#e5f5ea;color:#1e6b3a}
.rv-more summary{cursor:pointer;color:#1f5fa8;margin-top:4px}
.kpi-tot{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}@media(max-width:600px){.kpi-tot{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kpi-list{display:grid;gap:10px}
.kpi-card{border-left:5px solid #cfc6b6}.kpi-card.ok{border-left-color:#27ae60}.kpi-card.warn{border-left-color:#e67e22}
.kpi-top{display:flex;gap:10px;align-items:flex-start}.kpi-name{font-weight:800;font-size:17px}
.kpi-help{font-size:12px;font-weight:600;color:#1f5fa8;background:#e6eefa;padding:1px 8px;border-radius:20px}
.kpi-bonus{text-align:center;min-width:90px;padding:4px 10px;border-radius:10px;background:#f3f0e8}.kpi-bonus small{display:block;font-size:11px;color:var(--muted,#6b675f)}
.kpi-bonus b{font-size:20px}.kpi-bonus.on{background:#e5f5ea}.kpi-bonus.on b{color:#1e6b3a}
.kpi-bar{position:relative;height:10px;border-radius:6px;background:#eee7da;margin:10px 0 6px;overflow:hidden}
.kpi-bar i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#e8913a,#27ae60);border-radius:6px}
.kpi-bar em{position:absolute;top:0;bottom:0;width:2px;background:#2b2823}
.kpi-nums{display:flex;flex-wrap:wrap;gap:3px 14px;font-size:14px}
.kpi-edit{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed #eee5d5}
.kpi-edit label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted,#6b675f)}.kpi-edit input{width:120px;padding:7px;border-radius:8px;border:1px solid #d6ccba}
.po-h{display:flex;gap:8px;align-items:center;padding:5px 0;border-top:1px dashed #eee5d5}.po-h select{max-width:260px}
.kpi-edit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.kpi-edit label{flex-direction:column;align-items:stretch;gap:2px;font-size:11.5px}.kpi-edit input{width:100%;min-width:0}
.ga-mv-t{width:100%;border-collapse:collapse;font-size:13.5px}
.ga-mv-t th{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#8a857b);font-weight:700;text-align:right;padding:2px 6px}
.ga-mv-t td{padding:4px 6px;border-top:1px solid #f0e9dc;text-align:right;white-space:nowrap}.ga-mv-t td:first-child{text-align:left;color:#4a463f}
.ga-mv-t i{font-style:normal;font-size:11px;color:var(--muted,#8a857b)}
.ga-mv-t tr.in td{background:#fdf6ec}.ga-mv-t tr.in b{color:#b35a0b;font-size:15px}
.ga-mv-t tr.neg td:not(:first-child){color:#c0392b}.ga-mv-t tr.pos td:not(:first-child){color:#1e8449}
.ga-mv-t tr.stk td{background:#f6f3ec;text-align:left}.ga-mv-t tr.stk td:first-child{font-weight:600}.ga-mv-t tr.stk.neg b{color:#c0392b}
.ga-rc-list{flex-direction:column;align-items:flex-start;gap:3px}
.kpi-comm{background:#e6eefa}.kpi-comm b{color:#1f4f8a}.kpi-top{flex-wrap:wrap}
.pct-ok{border-left:5px solid #27ae60}.pct-warn{border-left:5px solid #e67e22}
.rc-rp{display:inline-block;font-size:12px;font-weight:700;color:#1e6b3a;background:#e5f5ea;border-radius:8px;padding:0 6px;margin-left:4px}
.rc-nm{display:flex;gap:8px;align-items:flex-start}.rc-nm .ph-thumb{flex:0 0 auto}
.rc-phh{margin:4px 0 8px}
.kpi-own{background:#eef6ff;border-radius:6px;padding:0 6px}.kpi-own b{color:#1d5fbf}
.kpi-map{margin:10px 0;border-left:4px solid #e6a700}.kpi-map-r{gap:8px;align-items:center;margin:6px 0;flex-wrap:wrap}
.rc-iph{margin:10px 0}.rc-iph-btn{cursor:pointer;white-space:nowrap}
.rc-iph-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.rc-iph-it{position:relative;width:120px}.rc-iph-it img{width:120px;height:150px;object-fit:cover;border-radius:8px;border:1px solid #ddd;display:block}
.rc-iph-it form{position:absolute;top:4px;right:4px}.rc-iph-ok{background:#e8f6ec;color:#1b7a3a;border-radius:6px;padding:2px 8px;font-size:.9em}
.btn.rc-ai,.rc-ai{margin-top:10px;background:#1d5fbf!important;color:#fff!important;border-color:#1d5fbf!important}.rc-ai:disabled{opacity:.7}
.rc-sp{color:#c25a00;white-space:nowrap;margin-left:4px}
.rc-sup.need{border:2px solid #e6a700;background:#fffaf0}.rc-sup label{display:block;margin-bottom:6px}
.rc-unk{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:4px}.badge.bad{background:#fde8e8;color:#b42318}
.rc-linkbar{margin:0 0 8px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rc-probs div{margin-top:4px}
.rc-suplist{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.rc-suplist .btn{width:100%;text-align:left;justify-content:flex-start}
.rc-steps{display:flex;flex-direction:column;gap:2px;padding:10px 12px}
.rc-step{display:flex;gap:10px;align-items:flex-start;padding:7px 6px;border-radius:8px;opacity:.75}
.rc-step i{font-style:normal;flex:0 0 26px;height:26px;border-radius:50%;background:#e9e6df;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9em}
.rc-step b{display:block}.rc-step span{font-size:.9em;color:#6b6b6b}
.rc-step.ok{opacity:1}.rc-step.ok i{background:none}
.rc-step.now{opacity:1;background:#fff4e3;outline:2px solid #f0a030}.rc-step.now i{background:#f08a00;color:#fff}.rc-step.now span{color:#7a4a00}
.rc-step.bad{opacity:1;background:#fdecec}.rc-step.bad i{background:#c62828;color:#fff}
.rc-step.warn{opacity:1}.rc-step.warn i{background:#e6a700;color:#fff}
.ga-card{transition:opacity .4s,transform .4s}.ga-card.ga-gone{opacity:0;transform:translateX(30px)}
.ga-hidn{margin:6px 0;color:#1b7a3a}
.src-list{display:flex;flex-direction:column;gap:8px}.src-row{display:flex;gap:12px;align-items:center;margin:0}
.src-dot{flex:0 0 14px;height:14px;border-radius:50%;background:#bbb}.src-row.ok .src-dot{background:#2e9e4f}
.src-row.old .src-dot{background:#e6a700}.src-row.bad .src-dot{background:#c62828}.src-when{text-align:right;white-space:nowrap}
.ga-ordbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ga-slow{margin:8px 0;padding:8px 10px;border-radius:8px;background:#fff6e0;border-left:4px solid #e6a700}
.ga-slow.bad{background:#fdecec;border-left-color:#c62828}.ga-slow .small{margin-top:3px;color:#555}
.so-more{margin-top:10px}.so-more summary{cursor:pointer;color:#1d5fbf}
.ga-sz{border:1px dashed #bbb;background:none;border-radius:12px;padding:1px 8px;font-size:.85em;color:#777;cursor:pointer}
.ga-sz.in{border:1px solid #2e9e4f;color:#1b7a3a;background:#eaf7ee}.ga-sz.pre{border:1px solid #e6a700;color:#8a5a00;background:#fff6e0}
.ga-sz.off{border:1px solid #9aa;color:#566;background:#f0f3f3}
.ga-szf{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0;padding:8px 10px;background:#f7f5ef;border-radius:8px}
.ga-szf select{width:auto}.ga-szf .small{flex-basis:100%}
.ga-szf .btn{width:auto;flex:0 0 auto}
.so-phrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.so-ph{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.so-ph input{flex:1 1 180px;width:auto}
.rc-del{display:flex;justify-content:flex-end;margin:-6px 0 10px}.rc-del-b{color:#b42318;border-color:#f0c4c0;background:#fff}
.so-prices{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 4px}
/* продажи: все полки на одном экране (перенос строк), аккуратные карточки складов */
.chips-scroll.sl-shelves{flex-wrap:wrap;overflow:visible;gap:6px;padding:10px;margin:0 0 14px;background:#fff;border:1px solid var(--line-2);border-radius:14px}
.sl-shelves .chip{min-height:30px;padding:4px 10px;font-size:13px;border-width:1px;background:#faf8f3}
.sl-shelves .chip small{font-size:11px;opacity:.8;margin-left:2px}
.sl-shelves .chip:first-child{font-weight:700}
.wh-seg{gap:6px;padding:6px;border-radius:18px}
.wh-seg a{padding:12px 6px;border-radius:14px}
.wh-seg a span{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6f6a61}
.wh-seg a b{font-size:20px;color:#3a3732}
.wh-seg a.on{box-shadow:0 2px 8px rgba(0,0,0,.10)}
.wh-seg a.on span{color:#e67e22}.wh-seg a.on b{color:#1f1d1a}
@media(max-width:560px){.wh-seg a b{font-size:15px}.wh-seg a span{font-size:11px}}
.um-cap{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#a39b8c;padding:6px 12px 2px}
.usermenu-pop .um-group + .um-group{border-top:1px solid var(--line-2,#e7e1d6);margin-top:4px;padding-top:4px}
.usermenu-pop{max-height:calc(100vh - 80px);overflow-y:auto}
.rp-bar{height:10px;border-radius:6px;background:#3b82c4;overflow:hidden;margin:4px 0 14px}.rp-bar i{display:block;height:100%;background:#2e9e4f}
.rp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-bottom:12px}
.rp-k{margin:0}.rp-kh{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;font-size:17px}
.rp-row{display:grid;grid-template-columns:1fr auto 48px;gap:8px;padding:6px 0;border-top:1px solid var(--line-2,#eee);align-items:baseline}
.rp-row b{font-variant-numeric:tabular-nums}.rp-row em{font-style:normal;color:#8a8273;font-size:12px;text-align:right}
.rp-row.sub{padding-left:16px;font-size:13px;color:#555}.rp-row.tot{font-weight:800;border-top:2px solid #ddd}
.rp-mlist{display:flex;flex-direction:column;gap:10px}.rp-m{margin:0}
.rp-mh{display:flex;gap:10px;align-items:center;font-size:16px}.rp-place{width:28px;height:28px;border-radius:50%;background:#f4a23a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.rp-sum{font-size:18px;font-variant-numeric:tabular-nums}
.rp-mbar{height:8px;background:#eee8dd;border-radius:5px;margin:8px 0 6px;overflow:hidden}.rp-mbar i{display:block;height:100%;background:#e67e22;border-radius:5px}
.rp-days{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.rp-days span{display:flex;flex-direction:column;align-items:center;background:#faf8f3;border-radius:8px;padding:4px 8px;min-width:58px}
.rp-days small{color:#8a8273;font-size:11px}.rp-days b{font-size:12.5px}
.rp-tabs a b{font-size:13px!important}
.ga-skip{color:#8a8273}.ga-skip:hover{color:#b42318;border-color:#f0c4c0}
.rp-sup-n{display:flex;gap:6px 14px;flex-wrap:wrap;color:#555}.rp-tabs{grid-template-columns:repeat(2,1fr)}
@media(min-width:700px){.rp-tabs{grid-template-columns:repeat(4,1fr)!important}}
.rp-key.out{border-left:4px solid #c62828}.rp-tabs{grid-template-columns:repeat(3,1fr)}
@media(min-width:900px){.rp-tabs{grid-template-columns:repeat(5,1fr)!important}}
.kpi .k-v{word-break:break-word}
.rp-ord{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;justify-content:flex-end}
.rp-ord .rp-q{width:90px}.rp-key.rp-done{border-left:4px solid #2e9e4f}.rp-om a{font-weight:700}
.tk-own{color:#555}.tk-st{border-radius:6px;padding:0 6px;font-weight:600}
.tk-st.open{background:#eef6ff;color:#1d5fbf}.tk-st.warn{background:#fff3df;color:#9a5a00}.tk-st.ok{background:#e8f6ec;color:#1b7a3a}.tk-st.late{background:#fdecec;color:#b42318}
.kpi-tk{background:#f7f5ef;border-radius:6px;padding:0 6px}.kpi-tasks{margin-top:14px}
.mm-set{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}.mm-set label{display:flex;flex-direction:column;font-size:12px;color:#6f6a61}.mm-set input{width:120px}
.mm-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0}.mm-scale div{background:#faf8f3;border-radius:8px;padding:6px;text-align:center}
.mm-scale small{display:block;color:#8a8273;font-size:11px}.mm-scale b{font-size:18px}.warn{color:#b26a00}
.mm-badge{border-radius:6px;padding:1px 8px;font-size:12px;font-weight:700}.mm-badge.low{background:#fdecec;color:#b42318}.mm-badge.over{background:#fff3df;color:#9a5a00}.mm-badge.ok{background:#e8f6ec;color:#1b7a3a}
.rp-m.mm-low{border-left:4px solid #c62828}.rp-m.mm-over{border-left:4px solid #e6a700}.rp-ord.rp-key{border:0;padding:0;margin-top:8px}
.rp-tabs{grid-template-columns:repeat(3,1fr)}@media(min-width:900px){.rp-tabs{grid-template-columns:repeat(6,1fr)!important}}
.an-nav{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 4px;padding:8px;background:#fff;border:1px solid var(--line-2,#e7e1d6);border-radius:14px}
.an-nav a{padding:6px 12px;border-radius:999px;font-weight:600;font-size:14px;color:#3a3732;background:#f6f3ec;white-space:nowrap}
.an-nav a:hover{text-decoration:none;background:#efe9dd}.an-nav a.on{background:#232220;color:#fff}
@media(max-width:560px){.an-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.an-nav a{font-size:13px}}
.mr-note{margin-top:8px;padding:8px 10px;background:#faf8f3;border-radius:8px;font-size:14px;color:#3a3732;white-space:pre-line}
.mr-net{border:2px solid currentColor;border-radius:10px}.mr-total{margin-bottom:12px}
.back-btn{flex:0 0 auto;width:42px;height:42px;margin-right:8px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.back-btn svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.back-btn:active{background:rgba(255,255,255,.25)}
