*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Onest,sans-serif}a{color:var(--ink);text-decoration:none}a:hover{text-decoration:underline}aside{position:fixed;width:232px;inset:0 auto 0 0;padding:var(--space-8) var(--space-6);background:var(--paper);border-right:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain}.brand img,.login-logo{display:block;height:28px;width:auto}nav{display:grid;gap:var(--space-1);margin-top:var(--space-8)}nav a{padding:var(--space-2) var(--space-3);color:var(--ink-2);border-left:2px solid transparent}nav a:hover{background:var(--hover);text-decoration:none}nav a.active{color:var(--ink);font-weight:600;border-left-color:var(--accent)}main{margin-left:232px}header{min-height:64px;padding:var(--space-3) var(--space-8);display:flex;flex-wrap:nowrap;gap:var(--space-4);align-items:center;border-bottom:1px solid var(--line)}header form:first-child{margin-right:auto}.header-user{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{max-width:1440px;padding:var(--space-8);padding-bottom:var(--space-24)}h1,h2,h3{line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(30px,3.6vw,48px)}h2{font-size:clamp(24px,2.4vw,34px)}.display,.metrics strong{font:300 clamp(48px,6vw,64px)/1 "JetBrains Mono",monospace}.metrics{display:flex;flex-wrap:wrap;gap:var(--space-12);padding:var(--space-8) 0}.metrics small{display:block;color:var(--ink-3);font-size:12px}.report-metrics{gap:var(--space-8)}.report-metrics>div{flex:1 1 200px;min-width:0}.report-metrics strong{font:300 clamp(20px,2.4vw,34px)/1.1 "JetBrains Mono",monospace}.columns{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6)}.panel,.columns section{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-6);margin:var(--space-4) 0}.table,.table-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}table{border-collapse:collapse;width:100%}th{height:40px;text-align:left;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--ink-3)}th,td{padding:0 var(--space-2);border-bottom:1px solid var(--line)}td{height:40px}tbody tr:hover{background:var(--hover)}.mono,td.number{font-family:"JetBrains Mono",monospace}.num{text-align:right;font-variant-numeric:tabular-nums}th.num{text-align:right}.nowrap{white-space:nowrap}tr.total-row td{font-weight:700;border-top:2px solid var(--ink)}.status.dot-green:before{background:var(--ok)}.status.dot-red:before{background:var(--bad)}.status.dot-amber:before{background:var(--warn)}.status.dot-muted:before{background:var(--ink-3)}.overdue-1{background:var(--overdue-1)}.overdue-2{background:var(--overdue-2)}.overdue-3{background:var(--overdue-3);color:var(--bad)}td.status:before{content:none}.status:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--info);margin-right:var(--space-2)}button,.button{height:36px;border:1px solid var(--ink);border-radius:var(--r-md);background:var(--ink);color:white;padding:0 var(--space-4);font:500 14px Onest;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast)}button:hover{opacity:.84}button:active{transform:scale(.98)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled,input:disabled{opacity:.45;cursor:not-allowed}.secondary{background:white;border-color:var(--line-strong);color:var(--ink)}.tertiary{background:transparent;color:var(--ink);border-color:transparent}.error,[aria-invalid=true]{border-color:var(--bad)!important;color:var(--bad)}.empty{color:var(--ink-2)}input,select,textarea{min-height:36px;max-width:100%;background:white;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:var(--space-2) var(--space-3);font:inherit}select{max-width:min(100%,320px)}input[type=file]{width:100%;max-width:280px}textarea{display:block;width:100%;min-height:96px}.inline-form,.filters,.page-head,.toolbar{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.inline-form>*,.filters>*,.toolbar>*,.row-actions>*{min-width:0}.page-head{justify-content:space-between}.login{max-width:400px;margin:10vh auto}.login-logo{margin-bottom:var(--space-8)}.login label,.login input{display:block;width:100%;margin-bottom:var(--space-3)}.exception-list{padding-left:var(--space-4)}.kanban{display:grid;grid-template-columns:repeat(7,minmax(220px,1fr));gap:var(--space-3);overflow-x:auto;align-items:start}.kanban-column{background:var(--paper);border-top:2px solid var(--line-strong);padding:var(--space-3);min-height:160px}.kanban-card{background:white;border:1px solid var(--line);padding:var(--space-3);margin:var(--space-2) 0;cursor:grab}.public-head{background:var(--deep);padding:var(--space-6)}.public-head img{height:28px}.row-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.nav-kit{margin-top:var(--space-6);font-size:12px}details>summary{cursor:pointer;padding:var(--space-4) 0;font-size:18px;font-weight:600}.nav-more{margin-top:var(--space-1)}.nav-more summary{padding:var(--space-2) var(--space-3);font-size:14px;font-weight:500;color:var(--ink-2);cursor:pointer;list-style:none}.nav-more summary::-webkit-details-marker{display:none}.nav-more summary:hover{background:var(--hover)}.nav-more summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-more[open] summary{color:var(--ink);font-weight:600}.nav-more a{display:block;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);color:var(--ink-2);font-size:14px;border-left:2px solid transparent}.nav-more a:hover{background:var(--hover);text-decoration:none}.nav-more a.active{color:var(--ink);font-weight:600;border-left-color:var(--accent)}@media(max-width:768px){aside{position:static;width:auto}nav{display:flex;overflow:auto}nav a{white-space:nowrap}header{padding:var(--space-3) var(--space-4)}.content{padding:var(--space-4);padding-bottom:var(--space-24)}main{margin:0}.columns{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.row-disabled{opacity:.5}
#invoice-lines td:first-child{min-width:200px}#invoice-lines td:first-child input{width:100%}#invoice-lines .qty{width:70px}#invoice-lines .unit{width:88px}#invoice-lines .price{width:96px}#invoice-lines .line-vat{width:96px}#invoice-lines .row-amount{display:inline-block;min-width:80px;text-align:right}
.contractor-picker{display:block;max-width:420px;margin-bottom:var(--space-2)}.contractor-picker input[type=text]{width:100%;max-width:100%}.picker-results:empty{display:none}.picker-results{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-1);max-height:220px;overflow-y:auto}.picker-option{justify-content:flex-start!important;text-align:left;height:auto!important;min-height:32px;padding:var(--space-2) var(--space-3);border:1px solid var(--line)!important}.field-note{display:block;color:var(--ink-3);font-size:12px;margin-top:2px}.field-note.diff{color:var(--warn)}.cargo-head-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4) var(--space-6)}.cargo-head-grid small{display:block;color:var(--ink-3);font-size:12px}
.assistant-chat{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);min-height:68vh;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);overflow:hidden}.assistant-chat .assistant-threads{position:static;width:auto;padding:var(--space-4);border:0;border-right:1px solid var(--line);background:var(--paper)}.thread-list{display:grid;margin-top:var(--space-4)}.thread-item{display:grid;gap:var(--space-1);padding:var(--space-3);border-left:2px solid transparent}.thread-item small,.chat-message>small,.chat-attachment small{color:var(--ink-3);font:400 12px "JetBrains Mono",monospace}.thread-item.active{background:var(--card);border-left-color:var(--accent)}.assistant-conversation{display:flex;min-width:0;flex-direction:column;padding:var(--space-6)}.message-list{display:flex;flex:1;flex-direction:column;gap:var(--space-4);overflow:auto}.chat-message{max-width:min(78%,65ch);padding:var(--space-3) var(--space-4);border-radius:var(--r-lg);background:var(--paper)}.chat-message.user{align-self:flex-end;background:var(--ink);color:white}.chat-message.user small{color:#d8e0e9}.chat-attachment{display:grid;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line)}.chat-message.user .chat-attachment a{color:white}.error-text{color:var(--bad);font-size:14px}.chat-composer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--line)}.chat-composer textarea{min-height:88px}.composer-actions{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.composer-actions small{margin-right:auto;color:var(--ink-3)}.file-button{position:relative;white-space:nowrap}.mascot-chat-link{position:fixed;right:72px;bottom:28px;font-size:12px}@media(max-width:768px){.assistant-chat{grid-template-columns:1fr}.assistant-chat .assistant-threads{border-right:0;border-bottom:1px solid var(--line)}.thread-list{display:flex;overflow-x:auto}.thread-item{min-width:200px}.assistant-conversation{padding:var(--space-4)}.chat-message{max-width:92%}.composer-actions{flex-wrap:wrap}.composer-actions small{order:3;width:100%}}

h1,h2,h3,strong,b{font-weight:600}h3{font-size:clamp(20px,1.4vw,24px)}.display,.metrics strong{font-weight:300}
input,select,textarea{color:var(--ink)}input:not([type=file]):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]),select{height:36px;min-height:36px;padding:0 var(--space-3)}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--ink)}textarea{min-height:96px;padding:var(--space-2) var(--space-3)}
select{width:100%;max-width:100%;padding-right:var(--space-8);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23616D7D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center}
input[type=date]{border:1px solid var(--line-strong)}input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.file-button{position:relative;white-space:nowrap}
th,td.nowrap,td.mono,td.date{white-space:nowrap}td.status>.status{white-space:nowrap;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}td.status{max-width:150px}.route-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-order-cell{max-width:220px}
.status.dot-green:before{background:var(--ok)}.status.dot-red:before{background:var(--bad)}.status.dot-amber:before{background:var(--warn)}.status.dot-muted:before{background:var(--ink-3)}.overdue-1{background:var(--overdue-1)}.overdue-2{background:var(--overdue-2)}.overdue-3{background:var(--overdue-3);color:var(--bad)}
.filters{display:grid;grid-template-columns:1fr;gap:var(--space-3) var(--space-4);align-items:end;margin:var(--space-4) 0}.filters>*{min-width:0}.filter-field{display:grid;gap:var(--space-1)}.filter-field>span{color:var(--ink-3);font-size:12px}.filter-field>input,.filter-field>select{width:100%}.filter-check{display:flex;align-items:center;gap:var(--space-2);min-height:36px;font-size:14px}.filter-check input{width:18px;height:18px;min-height:0}.filters-more{grid-column:1/-1}.filters-more>summary{padding:var(--space-2) 0;font-size:14px}.filters-more-grid{display:grid;grid-template-columns:inherit;gap:var(--space-3) var(--space-4);align-items:end}.filters>button{align-self:end}
footer{margin-top:var(--space-12);padding-top:var(--space-4);border-top:1px solid var(--line);font-size:14px}
@media(min-width:768px){.filters,.filters-more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){header form:first-child input{width:340px}.filters,.filters-more-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1280px){.filters,.filters-more-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Список заказов: девять колонок фиксированной ширины — авто-раскладка при nowrap выталкивала «Оплату» за край панели */
.list-orders{table-layout:fixed;min-width:1040px}.list-orders th:nth-child(1){width:110px}.list-orders th:nth-child(2){width:52px}.list-orders th:nth-child(3){width:130px}.list-orders th:nth-child(4){width:100px}.list-orders th:nth-child(5){width:140px}.list-orders th:nth-child(6){width:140px}.list-orders th:nth-child(7){width:140px}.list-orders th:nth-child(8){width:96px}.list-orders th:nth-child(9){width:134px}.list-orders td{overflow-wrap:anywhere}.list-orders td.route-cell{max-width:none}

/* v0.90B: mobile shell and dense search results. */
body{overflow-x:hidden}.desktop-header-links{display:flex;align-items:center;gap:var(--space-4)}.search-stage-date{display:block;margin-top:var(--space-1);color:var(--ink-3);font-size:12px}
@media(max-width:768px){aside{padding:var(--space-4)}aside nav{margin-top:var(--space-3)}header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-3)}header form:first-child{grid-column:1/-1;width:100%;margin:0}header form:first-child input{width:100%}.desktop-header-links{grid-column:1/-1;grid-row:2;display:flex;overflow-x:auto;gap:var(--space-1)}.desktop-header-links a{display:flex;align-items:center;min-height:44px;padding:0 var(--space-3);white-space:nowrap}header .header-user{grid-column:1;grid-row:3;min-height:44px;display:flex;align-items:center}header form:last-child{grid-column:2;grid-row:3}nav a,nav summary,button,.button{min-height:44px;height:auto}.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.weekly-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4) var(--space-6);margin-top:var(--space-4)}.weekly-card{min-width:0}.weekly-stat{display:grid;gap:var(--space-1)}.weekly-stat small{color:var(--ink-3);font-size:12px}.weekly-stat strong{font:300 26px/1.1 "JetBrains Mono",monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weekly-stat .status{margin:0;color:var(--ink-2);font-size:12px}.weekly-chart{display:block;width:100%;height:auto;margin-top:var(--space-2);overflow:visible}.chart-grid{stroke:var(--line);stroke-width:1}.chart-tick{fill:var(--ink-3);font:9px "JetBrains Mono",monospace}.chart-value{fill:var(--ink);font:9px "JetBrains Mono",monospace;paint-order:stroke;stroke:var(--bg);stroke-width:3px;stroke-linejoin:round}.chart-bar path{fill:var(--ink-2)}.chart-bar.accent path{fill:var(--accent)}.chart-bar.current path{fill:none;stroke:var(--line-strong);stroke-width:1}.chart-bar:focus{outline:none}.chart-bar:focus path{stroke:var(--accent);stroke-width:2}.weekly-report h3{margin-top:var(--space-8)}
