/* MODN 0.10 — one compact, neutral visual language for all product screens. */
:root{--green:#0f766e;--green-dark:#0b5f59;--ink:#182330;--muted:#667482;--line:#dfe4e8;--paper:#f5f6f8;--surface:#fff;--soft:#f8fafb;--danger:#b42318;--warning:#a15c00;--radius:10px;--shadow:0 1px 2px #1823300b}
body{background:var(--paper);color:var(--ink);font-size:14px;line-height:1.45}
.shell{grid-template-columns:224px minmax(0,1fr)}aside{background:#fff;color:var(--ink);border-right:1px solid var(--line);padding:24px 16px;box-shadow:none}.brand{color:var(--ink);font-size:27px;letter-spacing:-.6px}.brand span{color:var(--muted);font-size:9px;letter-spacing:2px;margin-top:6px}.workspace{color:var(--muted);font-size:11px;margin:24px 10px 8px;text-transform:uppercase;letter-spacing:.06em}aside nav{gap:2px}aside nav a{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;color:#344250;padding:8px 10px;border-radius:7px;font-size:13px}aside nav a svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}aside nav a:hover,aside nav a[aria-current]{background:#e9f3f1;color:var(--green-dark);text-decoration:none}.account{padding-top:28px;color:var(--ink)}.account a,.account .ghost{color:var(--muted)}.brand-row{align-items:center}.sidebar-toggle{color:var(--muted);background:transparent;border-color:var(--line)}
main{padding:22px 30px 56px}.topline{padding-bottom:16px;font-size:12px}.badge{background:#edf1f3;color:#50606e;border-radius:999px;padding:4px 9px}header,.page-head{margin:24px 0 18px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.page-head p{color:var(--muted);margin:4px 0 0}.compact-head h1{font-size:28px;margin:2px 0}h1{font-size:29px}h2{font-size:18px}p{margin:6px 0 12px}.eyebrow{font-size:10px;letter-spacing:1.4px}
button,.button{min-height:36px;padding:7px 12px;border-radius:7px;background:var(--green);border-color:var(--green);font-size:13px}.secondary{background:#fff;color:var(--green)}input,select,textarea{min-height:36px;padding:7px 9px;border-color:#cbd5db;border-radius:7px;font-size:13px}.panel,.surface{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:18px;margin-bottom:16px}.surface{padding:16px;margin-bottom:14px}.metrics,.kpi-grid,.compact-metrics{gap:10px;margin-bottom:16px}.metrics section,.kpi{padding:15px;border-radius:var(--radius);box-shadow:var(--shadow)}.metrics strong,.kpi>strong{font-size:23px}.notice{padding:12px 16px;margin-bottom:14px}.tabs{gap:4px;margin:0 0 14px}.tabs a{padding:7px 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-weight:600}.tabs a.selected,.tabs a[aria-current=page]{background:#e7f2f0;color:var(--green-dark)}
table{font-size:13px}th{padding:10px 9px;font-size:11px;text-transform:none}td{padding:11px 9px}.filter-bar{display:flex;align-items:end;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px;margin-bottom:14px}.filter-bar label{display:grid;gap:3px;min-width:130px;color:var(--muted);font-size:10px}.filter-bar label:first-of-type{flex:1 1 260px}.filter-bar input,.filter-bar select{width:100%}.source-strip{display:flex;gap:8px 18px;align-items:center;flex-wrap:wrap;margin:0 0 14px;color:var(--muted);font-size:11px}.source-strip strong{color:var(--ink)}
.icon-button{display:inline-grid;place-items:center;flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;border-radius:7px;background:transparent;color:var(--green);border:1px solid var(--line)}.icon-button:hover{background:#e9f3f1;color:var(--green-dark)}.icon-button svg,.expand-button svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-button.danger{color:var(--danger)}.icon-button.danger:hover{background:#fff0ef}.expand-button{display:grid;place-items:center;width:28px;height:28px;color:var(--muted);transition:transform .15s}.product-cell{display:flex;align-items:center;gap:9px;min-width:230px}.product-cell img{width:34px;height:44px;object-fit:contain;border-radius:5px;background:var(--soft)}.product-cell strong,.product-cell small{display:block}.product-cell small,td small{font-size:11px;color:var(--muted)}.status-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border-radius:999px;background:#eef2f4;color:#455563;font-size:11px}.status-chip.succeeded{background:#e8f5ef;color:#08724f}.status-chip.failed,.status-chip.uncertain{background:#fff1e5;color:#934d00}.row-actions,.row-actions form{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.row-actions select{max-width:130px;min-height:32px}.row-actions button{min-height:32px;padding:5px 9px}.table-surface{padding:0;overflow:hidden}.responsive-table{overflow:auto}.compact-table{min-width:820px}.empty{text-align:center;padding:28px;color:var(--muted)}
.fbs-tabs{border-bottom:1px solid var(--line)}.fbs-tabs a{border-radius:7px 7px 0 0}.fbs-tabs a[aria-current=page]{box-shadow:inset 0 -2px var(--green)}.fbs-order-table{min-width:1110px}.fbs-deadline time,.fbs-deadline strong,.fbs-deadline small{display:block;white-space:nowrap}.fbs-deadline time{font-size:11px;color:var(--muted)}.fbs-deadline strong{font-size:12px;color:var(--green)}.fbs-deadline.warning strong{color:#a06a00}.fbs-deadline.urgent strong,.fbs-deadline.overdue strong{color:var(--danger)}.fbs-deadline.overdue{background:#fff7f6}.action-panel summary{font-weight:700}.action-panel[open] summary{margin-bottom:12px}.inline-form{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.inline-form label{display:grid;gap:3px;color:var(--muted);font-size:10px}.inline-form label:last-of-type{flex:1 1 260px}.supply-list{display:grid;gap:8px}.supply-card{padding:0;overflow:hidden}.supply-card>summary{display:grid;grid-template-columns:minmax(260px,1fr) auto auto 28px;align-items:center;gap:12px;padding:12px 14px;list-style:none;color:var(--ink)}.supply-card>summary::-webkit-details-marker{display:none}.supply-card>summary strong,.supply-card>summary small{display:block}.supply-card>summary small{color:var(--muted);font-size:11px}.supply-card[open] .expand-button{transform:rotate(180deg)}.supply-body{border-top:1px solid var(--line);padding:12px 14px}.compact-lines{display:grid;gap:1px;margin-bottom:10px}.compact-lines label{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px;border-bottom:1px solid #eef1f3}.compact-lines input{min-height:auto}.compact-lines small{color:var(--muted)}.hint{color:var(--muted);font-size:11px}.timeline{display:grid}.timeline>div{display:grid;grid-template-columns:125px minmax(180px,1fr) 1fr;gap:12px;padding:9px 0;border-top:1px solid #eef1f3}.timeline time,.timeline span{color:var(--muted);font-size:12px}
.bulk-operation{margin-bottom:14px}.bulk-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;background:#eef4f3;border:1px solid #d6e5e2;border-radius:9px 9px 0 0}.bulk-bar span{margin-right:auto;color:var(--muted);font-size:11px}.bulk-operation .table-surface{border-radius:0 0 var(--radius) var(--radius);border-top:0}.check-column{width:36px;text-align:center}.check-column input{min-height:auto}.meta-form{margin-top:5px}.meta-form summary{font-size:11px}.meta-form form{display:flex;gap:4px;margin-top:5px}.meta-form input{min-width:120px;height:31px;min-height:31px;padding:4px 6px}.meta-form button{height:31px;min-height:31px;padding:4px 7px;font-size:11px}
/* Stable column contract for FBO / FBS / total values. */
.stock-head,.stock-product>summary,.stock-size-row{grid-template-columns:minmax(300px,1fr) repeat(3,96px) 130px}.stock-head>span:not(:first-child),.stock-product>summary>b,.stock-size-row>b{text-align:right;font-variant-numeric:tabular-nums}.stock-product>summary,.stock-size-row{column-gap:10px}
/* Supply cell help is anchored once and intentionally disappears during scroll. */
.supply-popover{width:260px;padding:12px 34px 12px 12px;border-radius:9px;box-shadow:0 12px 32px #1823302b}.supply-popover .popover-close{position:absolute;right:6px;top:6px;width:25px;height:25px;min-height:25px}.supply-popover .popover-close svg{width:14px;height:14px}
.sidebar-collapsed .shell{grid-template-columns:68px minmax(0,1fr)}.sidebar-collapsed aside{padding-left:10px;padding-right:10px}.sidebar-collapsed nav a{grid-template-columns:1fr;justify-items:center}.sidebar-collapsed nav a svg{display:block}.sidebar-collapsed nav a:before{display:none}
@media(max-width:760px){main{padding:58px 12px 40px}.mobile-menu{position:fixed;z-index:30;top:10px;left:10px;width:38px;height:38px;min-height:38px;background:#fff;color:var(--green);box-shadow:0 4px 16px #1823301c}.shell aside{width:min(82vw,280px);padding:18px 14px}.sidebar-collapsed nav a{display:grid;font-size:13px;grid-template-columns:20px minmax(0,1fr);justify-items:start}.sidebar-collapsed nav a svg{display:block}.page-head{align-items:flex-start;flex-direction:column}.compact-head h1{font-size:24px}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar label,.filter-bar label:first-of-type{min-width:0;flex:auto}.filter-bar label:first-of-type{grid-column:1/-1}.filter-bar button{grid-column:1/-1}.responsive-table{overflow:visible}.fbs-order-table,.compact-table{display:block;min-width:0}.fbs-order-table thead,.compact-table thead{display:none}.fbs-order-table tbody,.fbs-order-table tr,.fbs-order-table td,.compact-table tbody,.compact-table tr,.compact-table td{display:block;width:100%}.fbs-order-table tr,.compact-table tr{padding:10px 12px;border-bottom:1px solid var(--line)}.fbs-order-table td,.compact-table td{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px;padding:5px 0;border:0}.fbs-order-table td:before{content:attr(data-label);color:var(--muted);font-size:10px}.fbs-order-table td:first-child{display:block}.fbs-order-table td:first-child:before{display:none}.supply-card>summary{grid-template-columns:minmax(0,1fr) auto 28px}.supply-card>summary>span:nth-child(3){display:none}.timeline>div{grid-template-columns:1fr;gap:2px}.inline-form{display:grid}.inline-form label,.inline-form button{width:100%}.stock-head{display:none}.stock-product>summary,.stock-size-row{grid-template-columns:minmax(150px,1fr) 58px 58px!important}.stock-product>summary>b:nth-last-child(-n+2),.stock-size-row>b:nth-last-child(-n+2){display:none}.topline{padding-left:48px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.tabs{flex-direction:row}
.sidebar-collapsed main nav a{display:block;place-items:initial;font-size:13px;padding:7px 11px}
.fbs-order-table th:last-child{min-width:285px}.fbs-order-table td:last-child>.row-actions,.fbs-order-table td:last-child>.meta-form{display:inline-flex;vertical-align:middle}.fbs-order-table td:last-child>.meta-form{position:relative;margin:0 0 0 4px}.fbs-order-table td:last-child>.meta-form>summary{display:inline-flex;align-items:center;min-height:32px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;font-size:0;color:var(--green)}.fbs-order-table td:last-child>.meta-form>summary:after{content:'Скан';font-size:10px}.fbs-order-table td:last-child>.meta-form>form{position:absolute;z-index:15;right:0;top:36px;width:260px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px #1823301f}.fbs-order-table td{padding-top:8px;padding-bottom:8px}
.fbs-counters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-5px 0 10px}.fbs-counters span{display:inline-flex;gap:4px;align-items:center;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:11px}.fbs-counters strong{color:var(--ink);font-variant-numeric:tabular-nums}.filter-more{position:relative;align-self:end}.filter-more>summary{display:flex;align-items:center;min-height:36px;padding:7px 10px;border:1px solid #cbd5db;border-radius:7px;color:var(--green);font-size:12px;cursor:pointer}.filter-more>div{position:absolute;z-index:20;right:0;top:42px;display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px;width:min(520px,calc(100vw - 40px));padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 12px 32px #1823301f}.filter-more label:first-of-type{grid-column:auto}.filter-more label{min-width:0}
@media(max-width:760px){.filter-more{grid-column:1/-1}.filter-more>div{position:fixed;left:12px;right:12px;top:96px;width:auto;grid-template-columns:1fr;max-height:70vh;overflow:auto}.fbs-counters{overflow:auto;flex-wrap:nowrap;padding-bottom:3px}.fbs-counters span{white-space:nowrap}.icon-button{width:44px;height:44px;min-height:44px}.meta-form form{flex-wrap:wrap}}
.fbs-order-table tr:has(.warning-text) td:last-child>.meta-form:last-child>summary:after{content:'Данные'}
.supply-filter label:first-of-type{flex:2 1 300px}.supply-kpis{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px;margin-bottom:8px}.supply-kpis>span,.supply-facts>span{display:grid;gap:2px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff}.supply-kpis small,.supply-facts small{color:var(--muted);font-size:10px}.supply-kpis strong,.supply-facts strong{font-size:14px;font-variant-numeric:tabular-nums}.supply-method{margin:0 2px 10px}.supply-card>summary{grid-template-columns:minmax(240px,1.4fr) auto minmax(145px,.65fr) minmax(170px,.75fr) 28px}.supply-summary-numbers strong,.supply-summary-numbers small{display:block}.supply-summary-numbers{text-align:right}.supply-card>summary>.fbs-deadline{text-align:right}.supply-facts{display:grid;grid-template-columns:repeat(5,minmax(125px,1fr));gap:7px;margin-bottom:10px}.supply-order-table{min-width:900px;margin-bottom:10px}.supply-order-table td{vertical-align:middle}.supply-order-table td small{display:block;color:var(--muted);font-size:10px}.supply-order-table .product-cell img{width:36px;height:46px}
@media(max-width:1100px){.supply-kpis{grid-template-columns:repeat(3,1fr)}.supply-facts{grid-template-columns:repeat(3,1fr)}.supply-card>summary{grid-template-columns:minmax(210px,1.2fr) auto minmax(155px,.7fr) 28px}.supply-card>summary>.supply-summary-numbers{display:none}}
@media(max-width:760px){.supply-kpis{display:flex;overflow:auto;padding-bottom:4px}.supply-kpis>span{min-width:125px}.supply-facts{grid-template-columns:1fr 1fr}.supply-card>summary{grid-template-columns:minmax(0,1fr) auto 24px;gap:8px}.supply-card>summary>.fbs-deadline{grid-column:1/-1;text-align:left}.supply-card>summary>.status-chip{grid-column:2}.supply-card>summary>.expand-button{grid-column:3}.supply-order-table{display:block;min-width:0}.supply-order-table thead{display:none}.supply-order-table tbody,.supply-order-table tr,.supply-order-table td{display:block;width:100%}.supply-order-table tr{padding:9px 0;border-bottom:1px solid var(--line)}.supply-order-table td{display:grid;grid-template-columns:90px minmax(0,1fr);gap:7px;padding:4px 0;border:0}.supply-order-table td:before{content:attr(data-label);color:var(--muted);font-size:10px}.supply-order-table .product-cell{align-items:start}}

/* Scanner feedback stays inside the row so table scrolling cannot clip it. */
.fbs-order-table td:last-child>.meta-form:has([data-fbs-scan]){display:inline-block;vertical-align:top}
.fbs-order-table td:last-child>.meta-form>form[data-fbs-scan]{position:static;flex-wrap:wrap}
[data-scan-result]{flex:1 0 100%;white-space:normal;color:var(--danger);font-size:12px;line-height:1.4}
[data-scan-result]:empty{display:none}
