:root{color-scheme:light;--nav:#14243b;--nav2:#1e3555;--blue:#235bd7;--blue-soft:#edf3ff;--ink:#192a40;--muted:#69768a;--line:#e2e8f0;--bg:#f3f6fa;--white:#fff;--orange:#ffb45d;--radius:14px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #83aafa;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #a2bffe;border-color:var(--blue)}input,select,textarea{width:100%;min-height:44px;border:1px solid #ccd5e1;border-radius:9px;padding:10px 12px;color:var(--ink);background:white}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--blue);flex-shrink:0}input[type=file]{padding:7px}textarea{resize:vertical;min-height:88px}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.7px;line-height:1.3}h2{font-size:19px;line-height:1.5}h3{font-size:16px}small,.muted,.help{color:var(--muted)}.help{font-size:14px;line-height:1.6}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.btn{border:1px solid var(--line);background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:9px 16px;border-radius:9px;font-weight:600;font-size:14px;line-height:1.45;transition:background .15s}.btn:hover{background:#edf1f7}.btn.primary{background:var(--blue);border-color:var(--blue);color:white}.btn.primary:hover{background:#1849b9}.btn.accent{background:var(--orange);color:#25354a;border-color:var(--orange)}.btn.danger{color:#ba3343;border-color:#f1ccd1;background:#fff8f8}.btn.small{min-height:34px;padding:6px 11px}.btn.icon-only{width:40px;padding:8px}.btn.ghost{background:transparent;border-color:transparent}.btn.wide{width:100%}.row{display:flex;align-items:center;gap:12px}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.stack{display:grid;gap:20px}.section-gap{margin-top:24px}.spacer{flex:1}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.section-number{width:28px;height:28px;border-radius:8px;background:var(--blue-soft);color:var(--blue);display:inline-grid;place-items:center;font-size:14px;font-weight:700;margin-right:10px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>span,.field>label{font-size:14px;font-weight:600}.field em{font-style:normal;color:#c64d40}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid>.full{grid-column:1/-1}.check-label{display:flex;gap:10px;align-items:center;font-size:14px;cursor:pointer}.notice{background:var(--blue-soft);border:1px solid #d6e3ff;padding:13px 16px;border-radius:10px;font-size:14px;color:#395b94}.notice.warn{background:#fff7ec;border-color:#f5dfbc;color:#845d25}.empty{padding:55px 24px;text-align:center;display:grid;justify-items:center;gap:10px}.empty>.icon{width:42px;height:42px;color:#8394ad;margin-bottom:4px}.empty p{color:var(--muted);max-width:470px;font-size:14px}.boot{padding:15vh 20px;text-align:center}.boot strong{letter-spacing:5px;font-size:25px}.boot p{color:var(--muted);margin-top:15px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand img{width:39px;height:39px}.brand b{font-size:22px;letter-spacing:2px;line-height:1.1}.brand small{display:block;font-size:12px;letter-spacing:.4px}.language{width:auto;max-width:155px;font-size:14px;padding:7px 9px;min-height:38px}.public-header{background:var(--nav);color:#fff;border-bottom:1px solid #32435b}.public-header .inner{max-width:1120px;margin:auto;padding:20px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px}.public-header a{color:#dbe7ff;font-size:14px}.public-header .brand{color:white}.public-header .brand small{color:#a9b9cf}.public-header .language{background:#203852;color:white;border-color:#47556b}.public-main{max-width:1060px;margin:0 auto;padding:34px 24px 64px}.public-title{margin-bottom:28px}.public-title p{margin-top:7px;color:var(--muted)}.public-footer{max-width:1060px;margin:auto;padding:0 24px 25px;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;gap:12px}.order-form{display:grid;gap:22px}.item-editor{display:grid;grid-template-columns:72px 1.6fr 1.5fr .55fr .6fr 36px;align-items:end;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.item-editor:first-child{padding-top:0}.item-editor:last-child{border-bottom:0}.photo-picker{position:relative;width:68px;height:68px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #b7c7db;border-radius:10px;background:#f5f8fc;overflow:hidden;cursor:pointer}.photo-picker img{width:100%;height:100%;object-fit:cover}.photo-picker small{font-size:12px}.photo-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.item-editor .remove-item{margin-bottom:2px}.location-bar{padding:14px;background:#f6f8fc;border-radius:10px;display:flex;gap:12px;align-items:center;justify-content:space-between}.location-bar p{font-size:14px}.pin-readout{font-size:13px;color:var(--muted)}.map-picker,.map-view{height:340px;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:12px;background:#edf1f6}.map-search{margin:14px 0 8px}.map-search gmp-place-autocomplete{width:100%;color-scheme:light}.submit-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.submit-row .help{max-width:620px}.success-card{max-width:680px;margin:30px auto;text-align:center}.success-icon{display:grid;place-items:center;width:66px;height:66px;background:#e8f6ef;color:#21814f;border-radius:50%;margin:0 auto 20px}.success-card h1{margin-bottom:10px}.receipt-card{text-align:left;background:#f5f8fc;border-radius:12px;padding:22px;margin:24px 0;display:grid;gap:15px;overflow-wrap:anywhere}.receipt-card strong{font-family:ui-monospace,monospace;font-size:15px}.login-wrap{max-width:440px;margin:55px auto}.login-wrap .panel{padding:32px}.login-wrap h1{font-size:24px;margin:15px 0 8px}.login-wrap form{margin-top:25px;display:grid;gap:18px}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--nav);color:white;padding:28px 19px;display:flex;flex-direction:column;gap:32px;position:sticky;top:0;height:100vh}.sidebar .brand{padding:0 10px}.sidebar .brand small{color:#acbcd0}.nav-links{display:grid;gap:8px}.nav-link{display:flex;align-items:center;gap:12px;padding:13px 15px;color:#b7c6da;border-radius:9px;font-size:15px}.nav-link:hover{background:#203550;color:white}.nav-link.active{background:#294b77;color:white;box-shadow:inset 3px 0 var(--orange)}.side-bottom{margin-top:auto;display:grid;gap:14px}.user-card{border-top:1px solid #34445b;padding:20px 10px 0;display:flex;align-items:center;gap:11px}.avatar{width:37px;height:37px;flex-shrink:0;background:#375579;border-radius:50%;display:grid;place-items:center;font-weight:700}.user-card small{display:block;color:#a9b7ca;font-size:12px}.side-bottom .btn{color:#b7c6da;font-weight:400}.main-area{min-width:0}.topbar{height:79px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:15px}.topbar .breadcrumb{font-size:14px;color:var(--muted)}.workspace{max-width:1560px;margin:auto;padding:30px 34px 95px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}.page-head .help{margin-top:5px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;min-width:0}.stat span{color:var(--muted);font-size:14px}.stat strong{font-size:31px;display:block;line-height:1.5;letter-spacing:-1px}.stat .stat-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#edf3ff;color:var(--blue)}.stat:nth-child(2) .stat-icon{background:#fff4e5;color:#b77b20}.stat:nth-child(3) .stat-icon{background:#e9f5ff;color:#2072b8}.stat:nth-child(4) .stat-icon{background:#e9f6ef;color:#27814e}.list-panel{padding:0;overflow:hidden}.list-toolbar{padding:19px 22px;display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line)}.search-box{position:relative;flex:1;max-width:420px}.search-box .icon{position:absolute;left:13px;top:13px;color:var(--muted)}.search-box input{padding-left:42px;background:#f7f9fc}.filter-select{width:180px;font-size:14px}.tabs{display:flex;gap:4px;overflow:auto;padding:0 18px;border-bottom:1px solid var(--line);white-space:nowrap}.tab{border:0;border-bottom:3px solid transparent;background:none;padding:15px 12px;font-size:14px;color:var(--muted)}.tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.tab small{font-size:12px;padding-left:6px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{color:var(--muted);font-weight:500;text-align:left;background:#f9fbfd;padding:13px 17px;white-space:nowrap}td{padding:18px 17px;border-top:1px solid #eef1f5;vertical-align:middle}tr:hover td{background:#fafcff}.order-table td:first-child,.order-table th:first-child{width:36px;padding-right:4px}.mono{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:13px;font-weight:600;letter-spacing:-.2px}.subline{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:4px}.goods-summary{display:flex;align-items:center;gap:10px;min-width:150px}.thumb{width:43px;height:43px;flex-shrink:0;border-radius:8px;object-fit:cover;background:#f0f3f8;display:grid;place-items:center;color:#8a9ab1}.thumb.large{width:60px;height:60px}.clip{display:block;max-width:225px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;align-items:center;font-size:13px;white-space:nowrap;border-radius:6px;padding:4px 9px;background:#eef1f5;color:#5e6e85;font-weight:500}.badge.pending,.badge.planned{color:#90631f;background:#fff2dc}.badge.assigned,.badge.picked_up{color:#3b61a6;background:#edf2ff}.badge.delivering,.badge.in_progress{color:#1e73a2;background:#e8f5fe}.badge.delivered,.badge.completed{color:#277c4b;background:#e8f6ed}.badge.exception{color:#b34747;background:#fff0ed}.pager{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.batch-bar{position:fixed;bottom:22px;left:calc(238px + 34px);right:34px;max-width:1445px;background:var(--nav);color:white;box-shadow:0 12px 30px #14243b30;border-radius:12px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;z-index:5;gap:14px}.batch-bar .btn.ghost{color:#d6e3f5}dialog{border:0;border-radius:18px;padding:0;max-width:1120px;width:calc(100vw - 48px);max-height:92vh;color:var(--ink);box-shadow:0 24px 100px #10243d50;background:#f6f8fb}dialog::backdrop{background:#101f36a3;backdrop-filter:blur(3px)}dialog.narrow{max-width:530px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:21px 27px;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2;gap:14px}.modal-body{padding:25px;overflow:auto}.modal-body>.stack{gap:18px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}.detail-item{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center}.detail-item:last-child{border-bottom:0}.detail-item .item-content{flex:1;min-width:0}.detail-item strong{display:block}.detail-item small{display:block;font-size:13px}.detail-item .qty{font-size:18px;white-space:nowrap}.detail-list{display:grid;gap:15px}.detail-list .help{display:block;margin-bottom:3px}.detail-list p{overflow-wrap:anywhere}.action-block{border-top:1px solid var(--line);padding-top:17px;margin-top:18px}.timeline{list-style:none;padding:0;margin:0}.timeline li{position:relative;border-left:2px solid #e4ebf4;padding:0 0 20px 18px;margin-left:4px;font-size:14px}.timeline li:before{content:"";position:absolute;left:-5px;top:7px;width:8px;height:8px;border-radius:50%;background:#93a9c5}.timeline li:last-child{padding-bottom:0}.timeline small{display:block;font-size:12px}.timeline .event-note{color:var(--muted);margin-top:3px}.route-grid,.driver-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.driver-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.route-card{display:grid;gap:18px}.route-card .route-metrics{display:flex;gap:28px}.route-metrics strong{font-size:21px;display:block}.route-metrics span{font-size:13px;color:var(--muted)}.route-stations{margin:0;padding:0;list-style:none}.route-stop{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.stop-number{width:30px;height:30px;flex-shrink:0;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:700;display:grid;place-items:center;font-size:14px}.route-stop.done .stop-number{background:#e6f4eb;color:#22824f}.stop-content{flex:1;min-width:0}.stop-content p{font-size:14px;margin-top:4px;overflow-wrap:anywhere}.stop-content .help{font-size:13px}.route-goods{background:#f5f8fc;padding:9px 11px;margin:10px 0;border-radius:7px;font-size:13px}.route-map{height:340px}.settings-layout{max-width:910px}.warehouse-editor{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}.warehouse-editor .full{grid-column:1/-1}.check-countries{display:flex;flex-wrap:wrap;gap:16px;margin:6px 0}.driver-avatar{width:48px;height:48px;font-size:20px;background:var(--blue-soft);color:var(--blue);border-radius:12px;display:grid;place-items:center}.error-box{background:#fff1f0;color:#a73939;padding:12px 16px;border-radius:9px;margin-bottom:18px}.mobile-nav{display:none}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#15283e;color:white;padding:13px 22px;border-radius:10px;box-shadow:0 6px 25px #10243d22;z-index:200;opacity:0;pointer-events:none;transition:.2s;max-width:90vw;font-size:14px}#toast.visible{opacity:1;transform:translate(-50%,0)}#toast.error{background:#963c3c}.hide{display:none!important}.password-panel{max-width:650px}.print-only{display:none}.loading-inline{padding:28px;color:var(--muted)}
@media(min-width:1500px){.order-table .clip{max-width:285px}}
@media(max-width:1150px){.shell{grid-template-columns:200px 1fr}.sidebar{padding:25px 13px}.workspace{padding:24px 22px 90px}.topbar{padding:0 22px}.batch-bar{left:222px;right:22px}.stat{padding:15px}.stat .stat-icon{display:none}.driver-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr}.order-table .address-col{min-width:210px}.route-grid{grid-template-columns:1fr}}
@media(max-width:760px){h1{font-size:24px}.shell{display:block}.sidebar{height:auto;position:static;padding:16px;gap:18px}.sidebar .brand{padding:0}.sidebar .brand img{width:32px;height:32px}.sidebar .brand b{font-size:19px}.sidebar .brand small,.side-bottom{display:none}.nav-links{display:flex;overflow-x:auto;gap:6px}.nav-link{padding:9px 12px;font-size:14px;white-space:nowrap}.nav-link .icon{width:17px;height:17px}.nav-link.active{box-shadow:none;background:#294b77}.topbar{height:63px;padding:0 17px}.topbar .breadcrumb{display:none}.mobile-nav{display:flex}.workspace{padding:22px 16px 100px}.page-head{align-items:flex-start;gap:12px}.page-head .help{font-size:13px}.page-head>.btn{padding:9px 12px;flex-shrink:0}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:18px}.stat{padding:13px 16px}.stat strong{font-size:26px}.stat .stat-icon{display:grid;width:35px;height:35px}.list-toolbar{padding:14px;flex-wrap:wrap}.search-box{max-width:none;flex:1 1 100%}.filter-select{flex:1}.tabs{padding:0 6px}.tab{padding:12px 10px}.order-table thead{display:none}.order-table tbody,.order-table tr,.order-table td{display:block}.order-table tr{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:9px 10px;padding:17px;border-bottom:1px solid var(--line)}.order-table td{border:0;padding:0;min-width:0}.order-table td:first-child{width:auto;padding:0;grid-column:1;grid-row:1/6}.order-table td:nth-child(2){grid-column:2;grid-row:1}.order-table td:nth-child(3){grid-column:2;grid-row:2}.order-table td:nth-child(4){grid-column:2;grid-row:3}.order-table td:nth-child(5){grid-column:3;grid-row:1}.order-table td:nth-child(6){grid-column:2;grid-row:4}.order-table td:nth-child(7){grid-column:3;grid-row:4}.order-table .address-col{min-width:0}.order-table .clip{max-width:100%;white-space:normal;line-height:1.45}.order-table .goods-summary{min-width:0}.order-table .thumb{width:35px;height:35px}.order-table .mono{font-size:12px;overflow-wrap:anywhere}.order-table .badge{font-size:12px;padding:3px 7px}.batch-bar{left:12px;right:12px;bottom:12px;padding:13px}.batch-bar .btn{font-size:13px;padding:9px}.batch-bar .count-label{font-size:14px}.public-header .inner{padding:15px 17px;gap:10px}.public-header .brand b{font-size:18px}.public-header .brand small{display:none}.public-header .brand img{width:32px;height:32px}.public-header .public-links{gap:10px}.public-header .public-links a{font-size:13px}.public-header .language{max-width:110px;font-size:13px}.public-main{padding:25px 15px 40px}.public-title{margin-bottom:20px}.panel{padding:19px}.form-grid{gap:15px}.item-editor{grid-template-columns:65px 1fr 1fr 34px;gap:10px;padding:18px 0}.item-editor .photo-picker{grid-row:1/3;align-self:start;margin-top:26px;width:59px;height:65px}.item-editor .item-name{grid-column:2/4}.item-editor .item-spec{grid-column:2/4;grid-row:2}.item-editor .item-quantity{grid-column:2;grid-row:3}.item-editor .item-unit{grid-column:3;grid-row:3}.item-editor .remove-item{grid-column:4;grid-row:1;align-self:end}.location-bar{align-items:flex-start;flex-direction:column}.location-bar .row{flex-wrap:wrap}.map-picker,.map-view{height:280px}.submit-row{display:grid}.submit-row .btn{width:100%;min-height:48px}.login-wrap{margin:15px auto}.login-wrap .panel{padding:25px}.public-footer{font-size:12px;padding:0 15px 20px}.driver-grid{grid-template-columns:1fr}.route-card .route-metrics{gap:22px}dialog{width:100%;max-width:100%;max-height:100dvh;height:100dvh;margin:0;border-radius:0}dialog.narrow{width:calc(100% - 24px);max-height:88dvh;height:auto;margin:auto;border-radius:16px}.modal-head{padding:17px}.modal-body{padding:16px}.modal-head h2{font-size:18px}.detail-layout{gap:16px}.detail-item .qty{font-size:16px}.settings-layout .form-grid{grid-template-columns:1fr}.route-grid{grid-template-columns:1fr}.warehouse-editor{grid-template-columns:1fr}.route-stop .row{flex-wrap:wrap}.success-card{margin-top:0}.page-head>.row{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:420px){.public-header .brand b{letter-spacing:.8px}.public-header .public-links a.staff-link{display:none}.public-header .brand{gap:6px}.public-header .inner{padding:14px 12px}.form-grid{grid-template-columns:1fr}.form-grid>.full{grid-column:auto}.language{max-width:112px}.page-head{flex-wrap:wrap}.stat span{font-size:13px}.stat .stat-icon{display:none}.nav-link{padding:9px 10px}.nav-link .icon{display:none}.order-table tr{padding:14px 10px;gap:8px}.order-table .btn.small{font-size:12px}}
@media print{body{background:white;font-size:12px}.sidebar,.topbar,.workspace,.public-header,.public-main,.public-footer,#toast,dialog:not([open]){display:none!important}dialog[open]{position:static;display:block;max-width:none;max-height:none;width:100%;height:auto;overflow:visible;box-shadow:none;border-radius:0;background:white;margin:0}dialog::backdrop{background:white}.modal-head{position:static}.modal-body{overflow:visible;padding:10px}.modal-body .btn,.modal-head .btn,.map-view,.map-picker,.no-print{display:none!important}.detail-layout{display:block}.panel{break-inside:avoid;border:1px solid #ddd;margin-bottom:12px;padding:15px}.route-stop,.detail-item{break-inside:avoid}.print-only{display:block}.badge{border:1px solid #aaa}.route-grid{display:block}a{color:inherit}}
@media print{body.printing-public .public-main{display:block!important}body.printing-public .public-main>*{display:none!important}body.printing-public #tracking-result{display:block!important}body.printing-public .btn{display:none!important}}
/* Operational views: use the same navy/blue visual language as delivery. */
.sidebar{gap:20px}.nav-links{overflow-y:auto;min-height:0}.nav-link{padding:9px 12px}.side-bottom{flex-shrink:0}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{padding:14px 12px;text-align:left;white-space:nowrap;background:#f7f9fd;color:var(--muted);font-weight:500}.data-table td{padding:14px 12px;text-align:left;border-top:1px solid var(--line);vertical-align:middle}.data-table .mono{white-space:nowrap}.data-table td .subline{min-width:120px}.stock-low td{background:#fff8ef}.stock-low .icon{color:#c97917}.pool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pool-group{padding:22px}.pool-order{border:1px solid var(--line);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px;background:#fbfcff;min-width:0}.pool-order .mono{overflow-wrap:anywhere}.pool-order .btn{margin-top:auto}.pool-goods{font-size:14px;display:grid;gap:8px;flex:1}.pool-goods span{white-space:nowrap}.volume-card{padding:12px 14px;background:#eaf1ff;border:1px solid #d8e5ff;border-radius:9px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.volume-card strong{font-size:20px;color:#224e9d}.volume-card span{font-size:14px;color:#456088}.volume-value{font-size:30px;color:var(--blue)}.fleet-strip{display:flex;gap:40px;flex-wrap:wrap;margin-bottom:20px}.fleet-strip>div{display:grid;gap:6px;flex:1;min-width:160px}.fleet-strip span{font-size:14px;color:var(--muted)}.fleet-strip strong{font-size:21px;line-height:1.4}.sku-picker{grid-column:1/-1}.item-editor input[readonly]{background:#f7f9fc;color:#65768d}.item-editor .photo-picker{grid-row:2}.item-editor .item-name,.item-editor .item-spec,.item-editor .item-quantity,.item-editor .item-unit,.item-editor .remove-item{grid-row:2}.public-links{flex-wrap:wrap}.table-wrap{max-width:100%;overflow-x:auto}.pool-batch{z-index:20}
@media(max-width:1200px){.pool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.nav-links{overflow-y:visible}.pool-grid{grid-template-columns:1fr}.pool-group{padding:16px}.fleet-strip{gap:18px}.fleet-strip strong{font-size:18px}.sku-picker{grid-column:1/-1;grid-row:1}.item-editor .photo-picker{grid-row:2/4}.item-editor .item-name{grid-row:2}.item-editor .item-spec{grid-row:3}.item-editor .item-quantity,.item-editor .item-unit{grid-row:4}.item-editor .remove-item{grid-row:2}.public-header .public-links a.staff-link{display:inline}.fleet-strip>div{min-width:140px}.data-table th,.data-table td{padding:12px 10px}.pool-order .volume-card{align-items:flex-start;flex-direction:column}}

/* Role entrances remain visible on phones; preserve independent menu scrolling. */
.login-roles{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.login-roles a{flex:1;min-width:90px;padding:10px;border:1px solid var(--line);border-radius:8px;text-align:center;font-size:14px}.login-roles a.active{background:var(--blue-soft);border-color:var(--blue);color:var(--blue);font-weight:600}.public-header .driver-entry{font-weight:700;color:white}.warehouse-summary{display:grid;gap:4px;font-size:14px}.nav-links{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#657b99 #14243b}.nav-link{overflow-anchor:none}.workspace{overflow-anchor:none}
@media(max-width:760px){.public-header .inner{flex-wrap:wrap}.public-header .public-links{width:100%;gap:12px}.public-header .public-links .language{margin-left:auto}.login-roles a{min-width:80px}.warehouse-summary{overflow-wrap:anywhere}}

.customer-item{grid-template-columns:minmax(0,1fr) 125px 38px;align-items:end;gap:14px}.customer-item .sku-picker{grid-column:1/3;grid-row:1}.customer-item .remove-item{grid-column:3;grid-row:1}.customer-item .sku-description{grid-column:1;grid-row:2;display:grid;gap:4px;align-self:center;overflow-wrap:anywhere}.customer-item .item-quantity{grid-column:2;grid-row:2}.sku-description span{font-size:14px;color:var(--muted)}.sku-search{min-height:44px}
@media(max-width:760px){.customer-item{grid-template-columns:minmax(0,1fr) 95px 34px;gap:10px}.customer-item .sku-picker{grid-column:1/3;grid-row:1}.customer-item .remove-item{grid-column:3;grid-row:1}.customer-item .item-quantity{grid-column:2;grid-row:2}}

/* Account onboarding and customer workspaces share the existing RUTA palette. */
.registration-wrap{max-width:900px;margin:0 auto}.register-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0;margin:0 0 28px}.register-steps li{padding:16px;border-bottom:3px solid #d9e1eb;color:#64748b;display:flex;align-items:center;gap:12px}.register-steps li span{font-weight:800;font-size:1.2rem}.register-steps .current{border-color:#e99a37;color:#14243b;font-weight:700}.register-steps .done{border-color:#238273;color:#176859}.eyebrow{font-size:.875rem;font-weight:700;letter-spacing:.06em;color:#527084;margin-bottom:8px}.auth-secondary{margin-top:24px;padding-top:20px;border-top:1px solid #e3e8ef;display:grid;gap:14px}.customer-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.saved-address{display:flex;gap:16px;align-items:end;margin-bottom:22px}.saved-address .field{flex:1;min-width:0}.registration-wrap .form-grid{gap:20px}.public-header .ghost{color:#fff}.public-links{flex-wrap:wrap}.customer-tabs .btn{background:#fff}.register-steps li,.customer-tabs .btn,.field input,.field select{min-width:0}.driver-grid .panel p{overflow-wrap:anywhere}
@media(max-width:640px){.public-header .inner{gap:16px;align-items:flex-start}.public-links{gap:10px!important;justify-content:flex-end}.public-links a{font-size:.875rem}.register-steps{gap:5px}.register-steps li{padding:10px 3px;gap:7px;font-size:.875rem;align-items:flex-start}.saved-address{align-items:stretch;flex-direction:column}.registration-wrap .page-head{align-items:flex-start;gap:16px;flex-wrap:wrap}.customer-tabs{gap:7px}.customer-tabs .btn{font-size:.875rem;padding:9px 11px}}

/* V2.2: task-oriented warehouse workspace and all-role mobile layouts. */
.warehouse-context{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:-6px 0 24px;color:var(--muted);font-size:14px}.warehouse-context strong{color:var(--ink)}
.scope-badge{display:inline-flex;max-width:100%;padding:5px 9px;border-radius:6px;background:#edf3fc;color:#345982;font-size:12px;overflow-wrap:anywhere}
.erp-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.erp-shortcuts .btn{white-space:normal;min-height:54px;text-align:center}
.warehouse-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.warehouse-overview-card{border:1px solid var(--line);border-radius:10px;padding:20px;display:grid;gap:12px}.warehouse-overview-card dl{margin:0;display:grid;gap:10px}.warehouse-overview-card dl>div{display:flex;justify-content:space-between;gap:16px}.warehouse-overview-card dt{font-size:14px;color:var(--muted)}.warehouse-overview-card dd{font-variant-numeric:tabular-nums;font-weight:700;margin:0}.warehouse-overview-card>.btn{justify-self:start}
.translation-panel{border:1px solid #dce6f3;background:#f2f6fc;padding:16px;border-radius:10px}.translation-panel h3{font-size:15px}.warehouse-stats .stat{transition:border-color .15s}.warehouse-stats .stat:hover{border-color:var(--blue)}
input,select,textarea{max-width:100%}.field,.stack,.panel,.row>*{min-width:0}.panel{overflow-wrap:anywhere}.btn:focus-visible,a:focus-visible{outline:3px solid #f59c41;outline-offset:3px}
@media(max-width:1000px){.erp-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  html,body{width:100%;min-width:0}.public-main,.workspace{padding-bottom:calc(95px + env(safe-area-inset-bottom))}
  .btn,.btn.small,input,select{min-height:44px}input,select,textarea,.language{font-size:16px!important}
  .topbar{height:auto;min-height:63px;flex-wrap:wrap;padding-block:10px}.mobile-nav{flex-wrap:wrap;gap:4px}.topbar .language{max-width:125px}
  .page-head{flex-wrap:wrap}.page-head>.row{justify-content:flex-start}.form-grid{grid-template-columns:1fr}.form-grid>.full{grid-column:1/-1}.panel{padding:16px}
  .warehouse-overview{grid-template-columns:1fr}.warehouse-context{gap:10px}.warehouse-context>span:last-child{flex-basis:100%}.erp-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .responsive-table,.responsive-table tbody{display:block;width:100%}.responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .responsive-table tr{display:block;border:1px solid var(--line);border-radius:10px;margin:12px 0;padding:8px 12px;background:white}
  .responsive-table td{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.4fr);gap:12px;border:0;border-bottom:1px solid #eff2f7;padding:9px 0;min-width:0;overflow-wrap:anywhere}
  .responsive-table td::before{content:attr(data-label);font-size:12px;font-weight:500;color:var(--muted)}.responsive-table td:last-child{border-bottom:0}.responsive-table td>span.subline{grid-column:2}.responsive-table td .subline{min-width:0}
  .responsive-table .mono{white-space:normal}.responsive-table .btn{justify-self:start}.responsive-table tr.stock-low{background:#fff8ef}.responsive-table tr.stock-low td{background:transparent}
  dialog.narrow{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.modal-body{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.modal-body form>.btn:last-child{position:sticky;bottom:0;min-height:46px;z-index:1}
  .customer-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.customer-tabs .btn{white-space:normal}.pager{padding:12px 0;flex-wrap:wrap;gap:10px}.fleet-strip>div{min-width:100px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.cell-value{display:contents}@media(max-width:760px){.responsive-table .cell-value{display:block;min-width:0}.responsive-table .cell-value>.subline{display:block}.responsive-table .cell-value>.btn{margin:2px}}
/* V2.5.2: product images and compact language editors. */
.product-cover{width:96px;height:96px;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:#f3f5f7;color:#687888;gap:4px}
.product-cover img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.product-cover.compact{width:48px;height:48px;flex:0 0 48px;border-radius:8px}
.product-cover.compact span{display:none}.product-table-name{display:flex;align-items:center;gap:10px;min-width:0}.product-table-name>div:last-child{min-width:0;overflow-wrap:anywhere}
.product-photo-editor{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px 14px;align-items:center;padding:12px;border:1px solid #dfe5eb;border-radius:12px}
.product-photo-editor h3,.product-photo-editor .help{grid-column:1/-1}.product-photo-editor>button{grid-column:2}.product-photo-editor input[type=file]{width:100%;min-width:0;font-size:13px}.product-photo-editor #product-image-preview{grid-row:2/4}
.product-language-groups{display:grid;gap:8px;min-width:0}.product-language{padding:12px;border:1px solid #dfe5eb;border-radius:10px;min-width:0}.product-language summary{cursor:pointer;font-weight:650}.product-language .form-grid{min-width:0}.product-language input{min-width:0}
.cart-line>.product-cover,.checkout-line>.product-cover{flex-shrink:0}.cart-line>div:not(.product-cover):not(.quantity-control),.checkout-line>div:not(.product-cover){flex:1;min-width:0}.cart-line,.checkout-line{gap:10px}.address-location-control .btn{min-height:44px;white-space:normal}.address-location-control p:empty{display:none}
@media(max-width:480px){.product-language .form-grid{grid-template-columns:minmax(0,1fr)}.product-photo-editor{grid-template-columns:80px minmax(0,1fr);padding:10px}.product-photo-editor .product-cover{width:80px;height:80px}.product-cover.compact{width:40px;height:40px;flex-basis:40px}.cart-line{flex-wrap:wrap}.cart-line .quantity-control{margin-left:auto}.product-language{padding:10px}}
