:root{--ink:#15231e;--muted:#77827d;--line:#e7ebe7;--paper:#f7f9f6;--white:#fff;--green:#154d3c;--green-2:#216a52;--mint:#dff1e8;--orange:#ed8b55;--red:#c95151;--shadow:0 18px 50px #173c2b0d}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:14px 'DM Sans',sans-serif;background:var(--paper)}button,input,select{font:inherit}button{cursor:pointer;border:0}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#f3f7f3}.login-art{position:relative;overflow:hidden;background:var(--green);color:#fff;padding:10vh 9vw;display:flex;flex-direction:column;justify-content:center}.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.35}.orb-one{width:520px;height:520px;background:#398a6a;right:-130px;top:-90px}.orb-two{width:340px;height:340px;background:#ea8a53;left:-180px;bottom:-100px}.route-line{position:absolute;width:75%;height:42%;right:5%;bottom:13%;border:1px solid #ffffff38;border-left:0;border-bottom:0;border-radius:50%}.art-copy{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:#8aa49a}.login-art .eyebrow{color:#9bc6b3}.art-copy h1{font:600 clamp(48px,6vw,90px)/.95 'Space Grotesk';margin:24px 0}.art-copy h1 em{color:#f3a370;font-style:normal}.art-copy p{font-size:16px;color:#c4ddd3;max-width:310px}.route-pills{position:absolute;bottom:9%;display:flex;gap:16px;align-items:center;font-size:11px;letter-spacing:.12em;color:#bee0d0}.route-arrow{font-size:22px;color:#f4a16f}.login-card{background:#fff;max-width:620px;width:100%;padding:8vh 9vw;display:flex;flex-direction:column;justify-content:center;box-shadow:-15px 0 60px #153d2a0c}.brand-mark{display:flex;align-items:center;gap:10px;font:700 16px 'Space Grotesk';letter-spacing:.08em}.brand-mark small{display:block;color:var(--muted);font:500 8px 'DM Sans';letter-spacing:.22em;margin-top:3px}.mark-icon{height:33px;width:33px;display:grid;place-items:center;border-radius:10px;background:var(--green);color:#f4a16f;font-size:18px}.login-heading{margin:72px 0 28px}.login-heading h2{font:600 38px 'Space Grotesk';margin:10px 0 6px}.login-heading p,.section-intro p{color:var(--muted);margin:0}.region-tabs{display:flex;padding:4px;background:#f1f5f1;border-radius:12px;margin-bottom:24px}.region-tab{flex:1;text-align:left;padding:11px 14px;background:transparent;color:var(--muted);border-radius:9px}.region-tab b{float:right;font-size:10px;color:#99a49f}.region-tab.active{background:white;box-shadow:0 3px 12px #183c2d14;color:var(--green);font-weight:700}.login-card form{display:grid;gap:18px}.login-card label,.form-panel label,.lookup-panel label{display:grid;gap:8px;color:#41514a;font-weight:600;font-size:12px}.login-card input,.form-panel input,.form-panel select,.lookup-panel input{width:100%;border:1px solid #dfe7e1;border-radius:9px;background:#fbfdfb;padding:13px 14px;color:var(--ink);outline:none}.login-card input:focus,.form-panel input:focus,.form-panel select:focus,.lookup-panel input:focus{border-color:#6aa58b;box-shadow:0 0 0 3px #b7ddca55}.password-wrap{position:relative}.password-wrap input{padding-right:60px}.password-wrap button{position:absolute;right:10px;top:9px;color:var(--green);background:transparent;font-size:11px;font-weight:700}.login-options{display:flex;justify-content:space-between;align-items:center;font-size:12px}.check{display:flex!important;align-items:center;gap:6px!important}.check input{width:auto!important}.login-options a{color:var(--green);font-weight:600}.primary,.secondary{border-radius:9px;padding:13px 18px;font-weight:700;transition:.2s}.primary{background:var(--green);color:white;box-shadow:0 6px 16px #154d3c2b}.primary:hover{background:var(--green-2);transform:translateY(-1px)}.primary span{float:right}.secondary{background:#edf3ef;color:var(--green)}.wide{width:100%}.login-hint{font-size:11px!important;color:#98a39e!important;text-align:center;margin:0!important}.login-card footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:72px;padding-top:18px;color:#9ba59f;font-size:10px}.app-shell{min-height:100vh;display:flex}.sidebar{width:245px;background:var(--green);color:white;padding:30px 18px;display:flex;flex-direction:column}.sidebar .brand-mark{padding:0 12px}.sidebar .brand-mark small{color:#8aa99b}.node-badge{margin:44px 5px 27px;padding:11px 12px;border:1px solid #ffffff25;border-radius:10px;background:#ffffff0d;font-size:11px;color:#bdd7ca}.node-badge b{float:right;color:#f2a16f;font-size:10px}.status-dot,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#70d3a6;margin-right:6px}.sidebar nav{display:grid;gap:6px}.nav-item{display:flex;gap:14px;align-items:center;padding:13px 12px;border-radius:8px;background:transparent;color:#a9c6ba;text-align:left}.nav-item.active,.nav-item:hover{background:#ffffff18;color:#fff}.nav-item:first-letter{font-size:18px}.sidebar-bottom{margin-top:auto}.user-chip{display:flex;align-items:center;gap:10px;padding:12px 6px;border-top:1px solid #ffffff1c}.avatar,.top-avatar{height:32px;width:32px;border-radius:50%;background:#f0a06f;color:white;display:grid;place-items:center;font-size:11px;font-weight:700}.user-chip strong{font-size:12px;display:block}.user-chip small{font-size:10px;color:#9ab4a9}.user-chip button{margin-left:auto;background:transparent;color:#a9c6ba;font-size:18px}.main-content{flex:1;padding:38px 5vw;overflow:auto}.topbar,.section-intro,.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.topbar h1{font:600 30px 'Space Grotesk';margin:8px 0 0}.top-actions{display:flex;align-items:center;gap:15px}.currency-pill{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:9px 12px;border-radius:20px;background:#fff;color:#51615a;font-size:11px}.currency-pill small{color:#9da9a3;margin-left:4px}.pulse{height:7px;width:7px;border-radius:50%;background:#6acc9a}.icon-button{background:#fff;border:1px solid var(--line);height:34px;width:34px;border-radius:9px;color:var(--green);font-size:18px}.top-avatar{background:var(--green)}.section{margin-top:32px}.hero-strip{background:var(--green);border-radius:16px;color:white;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative}.hero-strip h2{font:500 27px 'Space Grotesk';margin:10px 0 4px}.hero-strip p{color:#b4d2c6;margin:0}.hero-route{display:flex;align-items:center;gap:20px;margin-right:20px}.hero-route>div{display:grid;gap:3px;text-align:center}.hero-route b{font:600 30px 'Space Grotesk';color:#f2a16f}.hero-route small{font-size:10px;color:#bed9cd}.hero-route>span{font-size:28px;color:#8cbdaa}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.metric-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px;box-shadow:var(--shadow)}.metric-card.accent{background:#fff8f3;border-color:#f7dece}.metric-card>span{font-size:11px;color:var(--muted)}.metric-card strong{font:600 25px 'Space Grotesk';display:block;margin:12px 0 2px}.metric-card small{color:#98a59e;font-size:11px}.metric-trend{margin-top:14px;color:#319369;font-size:11px;font-weight:700}.metric-trend i{font-style:normal;color:#9aa59f;font-weight:400}.metric-trend.warn{color:#d48655}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:22px;box-shadow:var(--shadow)}.panel h3{font:600 18px 'Space Grotesk';margin:7px 0}.period-pill{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:8px 10px;border-radius:7px}.bars{height:175px;display:flex;align-items:end;justify-content:space-around;gap:10px;padding:15px 5px 0}.bar-group{height:100%;display:flex;align-items:end;gap:4px;position:relative;flex:1}.bar{width:50%;border-radius:4px 4px 0 0;background:#d7ebe1;min-height:4px}.bar.zm{background:#f4bb91}.bar-label{position:absolute;bottom:-20px;width:100%;text-align:center;color:#a0aaa5;font-size:10px}.legend{display:flex;gap:22px;margin-top:22px;color:var(--muted);font-size:11px}.legend-dot{width:8px;height:8px;display:inline-block;border-radius:2px;margin-right:5px}.legend-dot.za{background:#d7ebe1}.legend-dot.zm{background:#f4bb91}.text-button{background:transparent;color:var(--green);font-size:11px;font-weight:700}.aging-row{display:grid;grid-template-columns:25px 1fr auto;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.aging-row:last-child{border:0}.aging-icon{height:22px;width:22px;border-radius:50%;display:grid;place-items:center;font-weight:700}.aging-icon.danger{background:#f9e0db;color:var(--red)}.aging-icon.warn{background:#fcebdc;color:#cb8c50}.aging-icon.neutral{background:#e7f0eb;color:#5f9d7d}.aging-row b{font-size:12px;display:block}.aging-row small{font-size:10px;color:var(--muted)}.aging-row strong{font-size:12px}.recent-panel{margin-top:14px}.small{padding:9px 12px;font-size:11px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#9aa59f;font-size:10px;letter-spacing:.08em;padding:13px 10px;border-bottom:1px solid var(--line)}td{padding:14px 10px;border-bottom:1px solid #eff2ef;color:#4d5b54}.status{padding:5px 8px;border-radius:15px;font-size:10px;font-weight:700}.status.paid{background:#e2f3e8;color:#308259}.status.pending{background:#fff0e5;color:#c87943}.status.collected{background:#e9eceb;color:#6f7d75}.section-intro{align-items:end;margin-bottom:24px}.section-intro h2{font:600 29px 'Space Grotesk';margin:8px 0}.step-pill{font-size:11px;background:#fff;border:1px solid var(--line);padding:9px;border-radius:20px;color:var(--muted)}.step-pill span{display:inline-grid;place-items:center;height:20px;width:20px;border-radius:50%;background:#edf2ee;margin-right:6px}.step-pill span.active{background:var(--green);color:white}.step-pill i{margin:0 8px;font-style:normal}.form-layout{display:grid;grid-template-columns:1fr 310px;gap:15px}.form-panel{padding:0}.form-section{padding:24px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border:0}.form-section-title{display:flex;gap:13px;align-items:flex-start;margin-bottom:18px}.form-section-title>span{font:600 14px 'Space Grotesk';color:#f09b6c}.form-section-title h3{margin:0 0 2px}.form-section-title small{color:var(--muted);font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.unit{color:#a1aba5;font-weight:400}.money-input{position:relative}.money-input span{position:absolute;left:13px;top:13px;color:var(--green);font-weight:700}.money-input input{padding-left:37px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px;background:#fbfcfb;border-radius:0 0 13px 13px}.price-panel{height:max-content;background:var(--green);color:white;position:sticky;top:20px}.price-panel .eyebrow{color:#9bc6b3}.price-panel h3{font-size:20px}.quote-total{padding:17px 0;border-bottom:1px solid #ffffff25}.quote-total small{color:#a7c8b9;display:block;font-size:10px}.quote-total strong{display:block;font:600 35px 'Space Grotesk';margin:4px 0}.quote-total span{color:#f1a172;font-weight:600}.quote-breakdown{padding:15px 0}.quote-breakdown>div{display:flex;justify-content:space-between;padding:9px 0;font-size:12px}.quote-breakdown small{display:block;color:#9ebdaf;font-size:10px;margin-top:3px}.quote-note{font-size:10px;color:#a7c8b9;line-height:1.5;background:#ffffff12;padding:10px;border-radius:7px}.route-mini{display:flex;justify-content:space-between;margin-top:25px;font-size:10px;color:#bad8cb}.route-mini i{color:#f1a172;font-style:normal}.scanner-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:15px}.scanner-panel{min-height:390px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.scanner-placeholder{text-align:center;color:var(--muted)}.scan-frame{width:210px;height:150px;border:2px solid #77b795;border-radius:14px;margin:0 auto 20px;position:relative;background:linear-gradient(90deg,#fff0 49%,#70bb9144 50%,#fff0 51%)}.scan-frame:after{content:'';position:absolute;left:10%;right:10%;top:50%;border-top:2px solid #e69769;box-shadow:0 0 8px #e69769}.scanner-controls{display:flex;gap:8px;margin-top:20px}.lookup-panel{height:max-content}.lookup-panel h3{margin:9px 0 22px}.lookup-panel label{margin-bottom:15px}.scan-result{margin-top:20px;border-radius:9px;padding:14px;font-size:12px;line-height:1.5}.scan-result.success{background:#e4f4e9;color:#276f4d}.scan-result.error{background:#fde9e5;color:#a44343}.modal{position:fixed;inset:0;background:#102b2199;display:grid;place-items:center;padding:20px;z-index:10}.modal-card{background:white;width:min(560px,100%);border-radius:16px;padding:28px;position:relative;box-shadow:0 25px 80px #0003}.modal-close{position:absolute;right:15px;top:10px;background:transparent;font-size:26px;color:var(--muted)}.ticket-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:18px}.ticket-head h2{font:600 22px 'Space Grotesk';margin:6px 0}.ticket-id{color:var(--green);font-weight:700}.ticket-meta{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}.ticket-meta small{color:var(--muted);font-size:10px;display:block}.ticket-meta b{font-size:12px}.qr-wrap{display:flex;justify-content:center;margin:14px}.ticket-total{background:#f3f8f4;border-radius:9px;padding:14px;display:flex;justify-content:space-between}.ticket-actions{display:flex;gap:10px;margin-top:22px}.ticket-actions button{flex:1}.toast{position:fixed;right:25px;bottom:25px;z-index:20;background:var(--green);color:#fff;padding:13px 17px;border-radius:9px;box-shadow:var(--shadow);transform:translateY(120px);transition:.3s;font-size:12px}.toast.show{transform:translateY(0)}
@media(max-width:950px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.login-card{max-width:none;padding:40px 8vw}.sidebar{width:75px;padding:25px 10px}.sidebar .brand-mark span:not(.mark-icon),.node-badge span:not(.status-dot),.node-badge b,.nav-item span,.user-chip>div:not(.avatar),.user-chip button{display:none}.node-badge{padding:13px 10px;text-align:center}.nav-item{justify-content:center}.main-content{padding:25px}.metric-grid{grid-template-columns:1fr 1fr}.form-layout,.scanner-layout,.dashboard-grid{grid-template-columns:1fr}.price-panel{position:static}.hero-route{display:none}}
@media(max-width:600px){.main-content{padding:20px 14px}.topbar h1{font-size:25px}.top-actions .currency-pill{display:none}.metric-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.hero-strip{padding:22px}.hero-strip h2{font-size:23px}.section-intro{display:block}.section-intro .step-pill{display:inline-block;margin-top:15px}.login-card footer{display:grid;gap:8px;margin-top:45px}}
.launch-overlay{position:fixed;inset:0;z-index:100;background:#071b16;display:grid;place-items:center;color:#fff;opacity:0;overflow:hidden;transition:opacity .45s ease}.launch-overlay.active{opacity:1}.launch-overlay.complete{opacity:0}.launch-stars,.launch-stars:before,.launch-stars:after{position:absolute;inset:-50%;content:"";background-image:radial-gradient(#b5e8cf 1px,transparent 1px),radial-gradient(#f3a370 1px,transparent 1px);background-size:87px 87px,131px 131px;background-position:13px 22px,71px 48px;opacity:.25;animation:starDrift 9s linear infinite}.launch-stars:before{transform:rotate(35deg);animation-duration:13s;opacity:.18}.launch-stars:after{transform:rotate(-25deg);animation-duration:17s;opacity:.13}.portal-ring{position:absolute;width:min(70vw,620px);height:min(70vw,620px);border-radius:50%;border:1px solid #6fd2aa66;box-shadow:0 0 35px #55d29a33,inset 0 0 35px #55d29a33;animation:portalSpin 3s cubic-bezier(.2,.8,.2,1) forwards;transform:scale(.15) rotate(-30deg)}.portal-ring:before,.portal-ring:after{content:"";position:absolute;inset:8%;border-radius:50%;border:1px solid #f3a37066;transform:rotate(55deg)}.portal-ring:after{inset:18%;border-color:#8be0bb77;transform:rotate(-32deg)}.portal-core{position:absolute;inset:32%;border-radius:50%;background:radial-gradient(circle,#fff 0,#a9f0ce 5%,#328d6b 29%,#0a2c22 67%,transparent 70%);filter:blur(1px);box-shadow:0 0 70px #7ce0b3aa;animation:corePulse 1.1s ease-in-out infinite alternate}.launch-copy{position:relative;text-align:center;z-index:2;margin-top:380px}.launch-copy .eyebrow{color:#9fe2c2}.launch-copy h2{font:600 clamp(25px,4vw,40px) 'Space Grotesk';margin:12px 0 8px}.launch-copy p{color:#9cbcaf;margin:0 0 23px}.launch-copy small{display:block;color:#789b8c;margin-top:10px;font-size:10px;letter-spacing:.08em}.launch-progress{width:min(310px,70vw);height:4px;background:#ffffff1d;border-radius:4px;overflow:hidden;margin:auto}.launch-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ee9b6d,#8ce0b7);box-shadow:0 0 12px #8ce0b7;animation:loadThree 3s linear forwards}.portal-arrival{animation:portalArrival .9s cubic-bezier(.2,.8,.2,1) both}@keyframes loadThree{to{width:100%}}@keyframes starDrift{to{transform:translate(110px,70px) rotate(8deg)}}@keyframes portalSpin{0%{transform:scale(.15) rotate(-30deg);opacity:0}28%{opacity:1}100%{transform:scale(1.25) rotate(210deg);opacity:.8}}@keyframes corePulse{to{transform:scale(1.14);filter:blur(3px)}}@keyframes portalArrival{0%{opacity:0;transform:scale(1.08);filter:blur(10px)}60%{opacity:1;transform:scale(.995);filter:blur(0)}100%{transform:scale(1)}}
.login-brand-logo{position:relative;z-index:2;width:min(760px,92%);max-height:72vh;object-fit:contain;margin:-3vh auto 0;filter:drop-shadow(0 28px 45px #0008);animation:brandFloat 5.5s ease-in-out infinite}.route-visual{position:absolute;right:5%;bottom:24%;width:min(560px,62vw);height:260px;opacity:.92;z-index:1}.route-visual svg{width:100%;height:100%;overflow:visible}.route-path{fill:none;stroke:url(#routeGlow);stroke-width:2;stroke-dasharray:8 10;filter:url(#glow);opacity:.85}.route-node{fill:#153f31;stroke:#a4e7c5;stroke-width:2;filter:url(#glow)}.route-packet{fill:#fff1df;filter:url(#glow)}.map-label{position:absolute;display:grid;gap:3px;color:#c8e5d8;font-size:10px}.map-label b{font:700 20px 'Space Grotesk';color:#f2a16f}.map-label span{font-size:9px;letter-spacing:.08em;text-transform:uppercase}.za-label{left:2%;bottom:11%}.zm-label{right:0;top:0;text-align:right}.float-card{position:absolute;z-index:3;display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid #ffffff26;border-radius:11px;background:#174d3dcc;backdrop-filter:blur(8px);box-shadow:0 14px 30px #051b1240;animation:floatCard 5s ease-in-out infinite}.float-card small{display:block;color:#9fc9b7;font-size:8px;letter-spacing:.12em}.float-card b{display:block;font-size:11px;margin-top:3px;color:#fff}.float-card-one{right:8%;top:17%}.float-card-two{left:8%;bottom:13%;animation-delay:-2.5s}.mini-icon{height:23px;width:23px;border-radius:7px;background:#4caa7d;color:#fff;display:grid;place-items:center;font-weight:700}.mini-icon.orange{background:#e99969}@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes brandFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}.login-art .art-copy{z-index:2;max-width:430px;margin-top:18px}.login-art .art-copy p{max-width:520px;text-align:center;margin:8px auto 0}.login-art .route-pills{z-index:3}.hero-strip:after{content:"";position:absolute;right:-40px;top:-90px;width:300px;height:300px;border-radius:50%;border:1px solid #ffffff25;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff05}.hero-strip>div{position:relative;z-index:1}.hero-route{position:relative;z-index:2}.metric-card{position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-18px;bottom:-25px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#d8efe3 0 2px,transparent 3px);background-size:12px 12px;opacity:.55}.panel{position:relative;overflow:hidden}.panel-head{position:relative;z-index:1}
.bin-nav{margin-top:12px;color:#f5b997}.inventory-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.inventory-layout{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}.category-panel{display:grid;gap:18px;position:sticky;top:20px}.inventory-tabs{display:grid;gap:8px}.inventory-tabs button{display:flex;justify-content:space-between;align-items:center;text-align:left;background:#f3f8f4;color:#4c5e55;border:1px solid #e3ece6;border-radius:8px;padding:12px 13px;font-weight:700}.inventory-tabs button small{height:22px;min-width:22px;padding:0 7px;border-radius:12px;background:#fff;color:#759285;display:grid;place-items:center;font-size:10px}.inventory-tabs button.active,.inventory-tabs button:hover{background:var(--green);border-color:var(--green);color:#fff}.inventory-tabs button.active small,.inventory-tabs button:hover small{color:var(--green)}.sync-card{display:grid;gap:5px;padding:15px;border-radius:10px;background:#fff8f3;border:1px solid #f5d7c4;color:#43534c}.sync-card b{font:600 15px 'Space Grotesk'}.sync-card span,.sync-card small{font-size:11px;color:#8a958f;word-break:break-word}.inventory-main{display:grid;gap:14px}.inventory-form textarea{width:100%;min-height:94px;border:1px solid #dfe7e1;border-radius:9px;background:#fbfdfb;padding:13px 14px;color:var(--ink);resize:vertical}.table-search{min-width:250px}.table-search input{margin-top:6px}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.danger{border-radius:9px;padding:13px 18px;font-weight:700;background:#fde9e5;color:#a44343;transition:.2s}.danger:hover{background:#f8d9d3;transform:translateY(-1px)}.history-list{display:grid;gap:10px}.history-list article{display:grid;grid-template-columns:170px 1fr;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--line)}.history-list article:last-child{border:0}.history-list b{font-size:12px;color:var(--green)}.history-list span{font-size:12px;color:#42524a}.history-list small{grid-column:2;color:#8d9993;font-size:10px}.empty-note{margin:0;color:#8d9993;font-size:12px}.recycle-hero{min-height:270px;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;background:linear-gradient(135deg,#103d31,#1c6b50);color:#fff}.recycle-hero h2{font:600 34px 'Space Grotesk';margin:9px 0}.recycle-hero p{color:#c2ded3;max-width:500px}.recycle-hero .eyebrow{color:#a9dbc4}.truck-scene{position:relative;min-height:180px;overflow:hidden}.road-line{position:absolute;left:0;right:0;bottom:42px;height:5px;border-radius:5px;background:repeating-linear-gradient(90deg,#f3a370 0 32px,transparent 32px 52px);opacity:.9;animation:roadRun 1.1s linear infinite}.truck-body{position:absolute;left:8%;bottom:54px;width:210px;height:70px;border-radius:11px 22px 8px 8px;background:#fff;color:var(--green);display:grid;place-items:center;font:700 18px 'Space Grotesk';box-shadow:0 16px 30px #061e174a;animation:truckBounce 1.6s ease-in-out infinite}.truck-body:before,.truck-body:after{content:"";position:absolute;bottom:-16px;width:31px;height:31px;border-radius:50%;background:#102920;border:6px solid #8ce0b7}.truck-body:before{left:26px}.truck-body:after{right:23px}.truck-body i{position:absolute;right:-42px;bottom:0;border-left:42px solid #f0a06f;border-top:35px solid transparent;border-bottom:35px solid transparent}.cargo-box{position:absolute;right:12%;bottom:58px;width:75px;height:65px;border-radius:8px;background:#f2a16f;box-shadow:inset 0 0 0 2px #ffd0af,0 16px 30px #061e1740;animation:boxFloat 2.4s ease-in-out infinite}.cargo-box:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:#ffd0af}.cargo-box:after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:#ffd0af}.bin-card p{color:var(--muted);margin-top:0}.bin-card #binHint{display:block;min-height:18px;color:var(--red);font-size:11px;margin-top:10px}.bin-drive{height:96px;position:relative;overflow:hidden;margin-bottom:18px;border-radius:12px;background:#f4f8f5}.mini-road{position:absolute;left:0;right:0;bottom:18px;height:4px;background:repeating-linear-gradient(90deg,#154d3c 0 26px,transparent 26px 42px);animation:roadRun .8s linear infinite}.mini-bus{position:absolute;left:22px;bottom:28px;width:118px;height:38px;border-radius:7px 15px 5px 5px;background:var(--green);color:#fff;display:grid;place-items:center;font:700 12px 'Space Grotesk';transition:transform 1.1s ease}.mini-bus:before,.mini-bus:after{content:"";position:absolute;bottom:-9px;width:17px;height:17px;border-radius:50%;background:#102920;border:3px solid #8ce0b7}.mini-bus:before{left:14px}.mini-bus:after{right:14px}.mini-box{position:absolute;right:28px;bottom:30px;width:38px;height:34px;border-radius:5px;background:#f0a06f}.bin-card.driving .mini-bus{transform:translateX(340px)}.bin-card.driving .mini-box{animation:boxLoad 1.1s ease forwards}@keyframes roadRun{to{background-position:-52px 0}}@keyframes truckBounce{50%{transform:translateY(-5px)}}@keyframes boxFloat{50%{transform:translateY(-9px)}}@keyframes boxLoad{0%{transform:translateX(0)}45%{transform:translateX(-170px) translateY(-15px)}100%{transform:translateX(-318px) translateY(0);opacity:0}}
@media(max-width:950px){.inventory-layout,.recycle-hero{grid-template-columns:1fr}.category-panel{position:static}.history-list article{grid-template-columns:1fr}.history-list small{grid-column:1}.table-search{min-width:0;width:100%}}
@media(max-width:600px){.inventory-actions{justify-content:flex-start}.row-actions{display:grid}.truck-body{width:165px}.cargo-box{right:4%}.bin-card.driving .mini-bus{transform:translateX(230px)}}
.login-art{isolation:isolate;perspective:1200px;background:radial-gradient(circle at 20% 12%,#7d1c18 0 9%,transparent 28%),radial-gradient(circle at 80% 18%,#164f82 0 10%,transparent 30%),radial-gradient(circle at 74% 74%,#0f6139 0 9%,transparent 30%),linear-gradient(135deg,#07110f 0%,#10281f 42%,#08110f 100%);align-items:center;text-align:center}.login-art:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0008,#0000 32%,#0005),radial-gradient(circle at center,#fff1 0 1px,transparent 2px);background-size:auto,38px 38px;opacity:.8;z-index:0}.login-art:after{content:"";position:absolute;inset:-12%;background:conic-gradient(from 210deg,#f3a37000,#f3a37044,#236bff36,#41e59632,#f3a37000);filter:blur(22px);opacity:.65;animation:auroraSweep 12s linear infinite;z-index:0}.map-stage{position:absolute;inset:6% 5% 7%;z-index:1;transform:rotateX(58deg) rotateZ(-10deg) translateY(4%);transform-style:preserve-3d;filter:drop-shadow(0 30px 35px #0008)}.map-grid{position:absolute;inset:0;border-radius:50%;background:linear-gradient(#66d7ff1a 1px,transparent 1px),linear-gradient(90deg,#66d7ff18 1px,transparent 1px),radial-gradient(ellipse at center,#0c5c7940,#08271f11 54%,transparent 72%);background-size:44px 44px,44px 44px,auto;box-shadow:inset 0 0 55px #69dfff22,0 0 70px #0af2ff1c;animation:gridDrift 12s linear infinite}.africa-map{position:absolute;left:18%;top:10%;width:64%;height:76%;clip-path:polygon(45% 0,58% 7%,64% 16%,75% 14%,82% 25%,73% 35%,77% 49%,65% 58%,58% 79%,45% 100%,39% 78%,29% 66%,30% 50%,20% 38%,27% 24%,36% 20%);background:linear-gradient(155deg,#0f4f75aa,#143d37dd 56%,#09251eee);border:1px solid #75dcff66;box-shadow:inset 0 0 35px #71d9ff45,0 0 38px #6cdcff44;transform:translateZ(36px);animation:mapPulse 4.8s ease-in-out infinite}.africa-map:before,.africa-map:after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 42%,#ffd16b55 48%,transparent 56%);opacity:.8;animation:routeSweep 3.2s ease-in-out infinite}.africa-map:after{animation-delay:1.55s;opacity:.45}.pin{position:absolute;width:16px;height:16px;border-radius:50% 50% 50% 0;background:#ff7a1a;border:2px solid #ffd76a;box-shadow:0 0 0 8px #ff9e3530,0 0 24px #ffb23e;transform:rotate(-45deg) translateZ(72px);animation:pinBeat 1.8s ease-in-out infinite}.pin b{position:absolute;left:18px;top:-8px;transform:rotate(45deg);white-space:nowrap;color:#fff;font:700 10px 'Space Grotesk';text-shadow:0 2px 10px #000}.pin-jhb{left:42%;top:62%}.pin-lsk{left:58%;top:26%;animation-delay:.35s}.pin-liv{left:50%;top:42%;animation-delay:.7s}.pin-ksa{left:64%;top:17%;animation-delay:1.05s}.route-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff7d1;box-shadow:0 0 18px #fff,0 0 30px #f4a16f;offset-path:path("M 42 62 C 48 49, 50 39, 58 26");offset-rotate:0deg;animation:routeTravel 3.4s linear infinite}.route-dot-one{animation-delay:0s}.route-dot-two{animation-delay:1.1s;animation-direction:reverse;background:#89ffd0}.route-dot-three{animation-delay:2.15s;width:7px;height:7px;background:#76c7ff}.logo-stage{position:relative;z-index:3;width:min(820px,94%);transform-style:preserve-3d;transition:transform .18s ease;will-change:transform}.login-brand-logo{width:100%;max-height:70vh;margin:0;transform:translateZ(72px);filter:drop-shadow(0 35px 32px #000b) drop-shadow(0 0 18px #3d8dff55);animation:brandHover 5.2s ease-in-out infinite}.logo-stage:before{content:"";position:absolute;inset:18% 8% 7%;border-radius:50%;background:radial-gradient(ellipse,#f5a54455,transparent 68%);filter:blur(18px);transform:translateZ(18px);animation:haloPulse 2.7s ease-in-out infinite}.login-art .art-copy{position:relative;z-index:4;margin-top:8px;padding:10px 18px;border:1px solid #ffffff1f;border-radius:14px;background:#071f18aa;backdrop-filter:blur(10px);box-shadow:0 18px 34px #0005}.login-art .art-copy p{color:#d2eadf}.route-pills{z-index:5}.route-visual{z-index:2;right:2%;bottom:12%;opacity:.88;transform:translateZ(50px) rotateX(8deg)}.float-card{transform:translateZ(95px)}.float-card-one{right:7%;top:12%}.float-card-two{left:7%;bottom:16%}@keyframes auroraSweep{to{transform:rotate(1turn)}}@keyframes gridDrift{to{background-position:44px 44px,44px 44px,0 0}}@keyframes mapPulse{50%{filter:brightness(1.28);transform:translateZ(54px) scale(1.025)}}@keyframes routeSweep{0%{transform:translateX(-55%) translateY(38%);opacity:0}35%,65%{opacity:.85}100%{transform:translateX(55%) translateY(-38%);opacity:0}}@keyframes pinBeat{50%{box-shadow:0 0 0 15px #ff9e350c,0 0 32px #ffbd4e;transform:rotate(-45deg) translateZ(88px) scale(1.14)}}@keyframes routeTravel{to{offset-distance:100%}}@keyframes brandHover{0%,100%{transform:translateZ(72px) translateY(0) scale(1)}50%{transform:translateZ(96px) translateY(-10px) scale(1.018)}}@keyframes haloPulse{50%{opacity:.55;transform:translateZ(18px) scale(1.08)}}
@media(max-width:1200px){.login-brand-logo{max-height:58vh}.map-stage{inset:8% 3% 13%}.login-art .art-copy{max-width:520px}.route-visual{width:min(470px,72vw)}}
.map-stage{inset:1% -3% 2%;transform:rotateX(48deg) rotateZ(-6deg) translateY(-1%);opacity:1;z-index:4}.map-grid{opacity:.9;background-size:34px 34px,34px 34px,auto}.southern-map{position:absolute;inset:-8% -8%;width:116%;height:116%;overflow:visible;transform:translateZ(104px);filter:drop-shadow(0 44px 34px #000b) drop-shadow(0 0 28px #60d8ff55)}.country{fill:url(#countryGlow);stroke:#b8edff;stroke-width:3.2;stroke-linejoin:round;filter:url(#mapGlow);opacity:.96;animation:countryBreath 5.6s ease-in-out infinite}.country.zambia{fill:#0c7556;stroke:#c8fff0}.country.south-africa{fill:#124f82;stroke:#d8f3ff}.country.malawi{fill:#176b44}.country.zimbabwe,.country.botswana,.country.mozambique,.country.namibia{opacity:.72;stroke:#9ed7e0}.route{fill:none;stroke:url(#routeGold);stroke-width:8;stroke-linecap:round;stroke-dasharray:16 10;filter:url(#mapGlow);animation:routeMarch 1.35s linear infinite}.return-route{stroke:#8dffd1;stroke-width:5.4;opacity:.92;stroke-dasharray:9 12;animation-duration:1.9s}.secondary-route{stroke:#93d6ff;stroke-width:5.2;opacity:.98;stroke-dasharray:8 9;animation-duration:2.2s}.city{fill:#ff701a;stroke:#fff7c7;stroke-width:4.5;filter:url(#mapGlow);animation:cityPulse 1.55s ease-in-out infinite}.city-lsk{animation-delay:.3s}.city-liv{animation-delay:.65s}.city-ksa{animation-delay:1s}.map-label-svg text{fill:#fff;font:800 17px 'Space Grotesk';letter-spacing:.08em;text-shadow:0 3px 16px #000,0 0 10px #001}.label-jhb text{font-size:15px}.label-liv text,.label-ksa text{font-size:13px}.moving-unit{fill:#fff6cc;filter:url(#mapGlow)}.moving-unit circle{r:8}.unit-two,.unit-four{fill:#ff964b}.unit-three{fill:#8affcf}.logo-stage{z-index:2;margin-top:-2vh;opacity:.48;filter:saturate(.88) contrast(.92);transform:translateZ(18px) scale(.9)}.login-brand-logo{max-height:46vh;filter:drop-shadow(0 24px 24px #0007) blur(.15px);animation:brandGhost 7s ease-in-out infinite}.login-art .art-copy{z-index:6;margin-top:12px;background:#061b17d9}.route-visual{opacity:.2;right:0;bottom:8%;mix-blend-mode:screen}.float-card{z-index:7}@keyframes routeMarch{to{stroke-dashoffset:-52}}@keyframes cityPulse{50%{r:13;filter:drop-shadow(0 0 22px #ffc664)}}@keyframes countryBreath{50%{opacity:1;stroke-width:4}}@keyframes brandGhost{0%,100%{transform:translateZ(12px) translateY(0) scale(.97)}50%{transform:translateZ(20px) translateY(-5px) scale(.99)}}
@media(max-width:1200px){.southern-map{inset:1% -8%;width:116%;height:98%}.login-brand-logo{max-height:49vh}.logo-stage{margin-top:2vh}}
.login-art{padding:0;align-items:stretch}.map-stage{z-index:1;inset:0;opacity:.18;transform:rotateX(52deg) rotateZ(-7deg) translateY(2%) scale(1.08);pointer-events:none}.southern-map{transform:translateZ(24px);filter:drop-shadow(0 22px 30px #0008) drop-shadow(0 0 22px #60d8ff3f)}.logo-stage{position:absolute;inset:0;z-index:5;width:100%;height:100%;margin:0;opacity:1;display:grid;place-items:center;overflow:hidden;filter:none;transform:none;padding:clamp(18px,3vw,42px)}.login-brand-logo{width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 24px 28px #0008);animation:none!important;transform:none!important}.logo-stage:before,.logo-stage:after{display:none}.login-art .art-copy{z-index:8;margin:auto auto 11vh;background:#061b17c9}.login-art .route-pills{z-index:8;left:9vw}.float-card{z-index:9}.route-visual{z-index:6;opacity:.12}.inventory-thumb{width:74px;height:56px;border-radius:8px;object-fit:cover;background:#eef4ef;border:1px solid #dfe7e1;display:grid;place-items:center;color:#8b9a92;font-size:10px;text-align:center}.inventory-thumb.empty{padding:8px}.inventory-form input[type=file]{padding:10px;background:#fff}.inventory-form textarea#inventorySaleDescription{min-height:78px}
.view-only #inventoryForm,.view-only #crmPayfastForm{opacity:.72}.view-only button:disabled,.view-only input:disabled,.view-only select:disabled,.view-only textarea:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.62}

/* Shalom website theme alignment */
:root{--ink:#252b35;--muted:#627086;--line:#eceef3;--paper:#f7f9ff;--white:#fff;--green:#06215c;--green-2:#0d7cf3;--mint:#dce8ff;--orange:#ffbf24;--red:#bd2b75;--shadow:0 22px 60px rgba(2,8,23,.10);--site-navy:#020817;--site-blue:#0d7cf3;--site-blue-dark:#0049c7;--site-gold:#ffbf24;--site-gold-soft:#ffcf48;--site-ink:#061333}body{background:radial-gradient(circle at 12% 0%,rgb(255 191 36 / .12),transparent 23rem),radial-gradient(circle at 90% 4%,rgb(13 124 243 / .13),transparent 28rem),#f7f9ff;color:var(--ink)}.login-shell{background:#fff}.login-card{background:#fff;box-shadow:-18px 0 70px rgb(2 8 23 / .08)}.brand-mark{color:var(--site-ink)}.mark-icon,.sidebar,.hero-strip,.price-panel,.toast{background:linear-gradient(145deg,#020817 0%,#06215c 58%,#091020 100%)}.mark-icon{color:var(--site-gold)}.primary{background:linear-gradient(135deg,#0049c7,#0d7cf3);box-shadow:0 16px 38px rgb(13 124 243 / .28)}.primary:hover{background:linear-gradient(135deg,#0d7cf3,#0049c7);box-shadow:0 18px 44px rgb(13 124 243 / .34)}.secondary{background:#fff8e5;color:#061333;border:1px solid rgb(255 191 36 / .42)}.secondary:hover{background:#ffbf24;color:#061333}.danger{background:#f8e8f1;color:#96215d}.danger:hover{background:#f1d4e4}.eyebrow,.metric-card>span,.panel-head .eyebrow,.form-section-title>span,.route-arrow,.hero-route b,.quote-total span,.route-mini i,.node-badge b{color:var(--site-gold-soft)}.login-heading h2,.topbar h1,.section-intro h2,.panel h3,.hero-strip h2,.price-panel h3{color:var(--site-ink)}.hero-strip h2,.price-panel h3,.sidebar .brand-mark,.hero-strip .eyebrow,.price-panel .eyebrow{color:#fff}.hero-strip p,.price-panel small,.price-panel .quote-note,.route-mini,.sidebar .brand-mark small,.node-badge,.nav-item{color:#dce8ff}.nav-item.active,.nav-item:hover{background:rgb(255 191 36 / .16);color:#fff;box-shadow:inset 3px 0 0 #ffbf24}.bin-nav{color:#ffcf48}.panel,.metric-card,.login-card input,.form-panel input,.form-panel select,.form-panel textarea,.lookup-panel input,.currency-pill,.icon-button,.modal-card{border-color:var(--line);background:#fff;box-shadow:var(--shadow)}.metric-card.accent,.sync-card{background:linear-gradient(145deg,#fff8e5,#eef5ff);border-color:rgb(255 191 36 / .36)}.login-card input:focus,.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus,.lookup-panel input:focus{border-color:#0d7cf3;box-shadow:0 0 0 3px rgb(13 124 243 / .16)}.region-tabs{background:#eef3fb}.region-tab.active{color:#061333;box-shadow:0 4px 18px rgb(13 124 243 / .12)}.status.paid{background:#e9f2ff;color:#0049c7}.status.pending{background:#fff4cf;color:#8c5c00}.status.collected{background:#f3e8ff;color:#61338e}.inventory-tabs button{background:#f6f9ff;color:#34465f;border-color:#e2e8f2}.inventory-tabs button.active,.inventory-tabs button:hover{background:linear-gradient(135deg,#0049c7,#0d7cf3);border-color:#0d7cf3;color:#fff}.inventory-tabs button.active small,.inventory-tabs button:hover small{color:#0049c7}.table-wrap table th{color:#6b7c96;background:#f9fbff}.table-wrap table td{border-bottom-color:#edf1f7}.avatar,.top-avatar,.mini-icon.orange{background:linear-gradient(135deg,#ffbf24,#ff8c1a);color:#061333}.scanner-panel .scan-frame{border-color:#0d7cf3;background:linear-gradient(90deg,#fff0 49%,rgb(13 124 243 / .24) 50%,#fff0 51%)}.scan-frame:after{border-color:#ffbf24;box-shadow:0 0 10px #ffbf24}.recycle-hero{background:radial-gradient(circle at 22% 12%,rgb(255 191 36 / .18),transparent 16rem),linear-gradient(145deg,#020817,#06215c 58%,#091020);border-color:rgb(255 191 36 / .2)}.truck-body,.mini-bus{background:#fff;color:#061333}.cargo-box,.mini-box{background:#ffbf24}.launch-overlay{background:linear-gradient(145deg,#020817,#06215c 58%,#091020)}.portal-ring{border-color:rgb(255 191 36 / .42);box-shadow:0 0 45px rgb(13 124 243 / .34),inset 0 0 38px rgb(255 191 36 / .18)}.portal-core{background:radial-gradient(circle,#fff 0,#ffcf48 8%,#0d7cf3 32%,#061333 68%,transparent 71%);box-shadow:0 0 80px rgb(13 124 243 / .72)}
:root {
  --request-glow: rgba(6, 87, 209, .18);
}

.request-metrics .metric-card.accent {
  box-shadow: 0 22px 54px var(--request-glow);
}

#requestsSection .table-wrap td {
  vertical-align: top;
}

.field-note {
  display: block;
  margin-top: 6px;
  color: #6b7c96;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
}

.brand-filter-title {
  display: block;
  margin-top: 18px;
  color: var(--site-gold-soft);
}

.brand-tabs {
  max-height: 230px;
  overflow: auto;
  padding-right: 4px;
}

#inventoryCategory:disabled {
  background: #eef3fb;
  color: #34465f;
  cursor: not-allowed;
  border-color: #d8e2f0;
}

.inventory-price-retired {
  display: none !important;
}

.inventory-request-note {
  display: grid;
  gap: 5px;
  padding: 13px 14px;
  border: 1px solid rgba(255, 191, 36, .38);
  border-radius: 12px;
  background: linear-gradient(145deg, #fff8e5, #eef5ff);
  color: #34465f;
}

.inventory-request-note b {
  color: #061333;
  font: 700 13px 'Space Grotesk';
}

.inventory-request-note span {
  color: #627086;
  font-size: 12px;
  line-height: 1.45;
}

.mobile-crm-bar,
.mobile-nav-scrim {
  display: none;
}

@media (max-width: 780px) {
  body:has(#appView:not(.hidden)) {
    background: #f7f9ff;
  }

  .app-shell {
    display: block;
    min-height: 100svh;
    padding-top: 72px;
  }

  .mobile-crm-bar {
    position: fixed;
    inset: 0 0 auto;
    z-index: 60;
    display: grid;
    grid-template-columns: 44px 1fr 44px;
    gap: 10px;
    align-items: center;
    padding: 12px 14px calc(12px + env(safe-area-inset-top));
    background: linear-gradient(135deg, #020817, #06215c 62%, #0a1224);
    color: #fff;
    box-shadow: 0 12px 30px rgba(2, 8, 23, .18);
  }

  .mobile-crm-bar b {
    display: block;
    font: 700 16px 'Space Grotesk';
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .mobile-crm-bar small {
    display: block;
    margin-top: 2px;
    color: #ffcf48;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
  }

  .mobile-menu-button,
  .mobile-quick-action {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font-size: 22px;
    border: 1px solid rgba(255, 255, 255, .14);
  }

  .mobile-quick-action {
    background: linear-gradient(135deg, #0d7cf3, #0049c7);
    color: #fff;
  }

  .sidebar {
    position: fixed;
    z-index: 80;
    inset: 0 auto 0 0;
    width: min(86vw, 330px);
    padding: calc(22px + env(safe-area-inset-top)) 16px 18px;
    transform: translateX(-105%);
    transition: transform .26s ease;
    box-shadow: 24px 0 70px rgba(2, 8, 23, .28);
  }

  .mobile-nav-open .sidebar {
    transform: translateX(0);
  }

  .mobile-nav-scrim {
    position: fixed;
    z-index: 70;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(2, 8, 23, .48);
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease;
  }

  .mobile-nav-open .mobile-nav-scrim {
    display: block;
    opacity: 1;
    pointer-events: auto;
  }

  .sidebar .brand-mark span:not(.mark-icon),
  .node-badge span:not(.status-dot),
  .node-badge b,
  .nav-item span,
  .user-chip > div:not(.avatar),
  .user-chip button {
    display: block;
  }

  .sidebar .brand-mark {
    padding: 2px 8px 14px;
  }

  .node-badge {
    margin: 14px 4px 18px;
    padding: 12px;
  }

  .sidebar nav {
    gap: 8px;
  }

  .nav-item {
    min-height: 48px;
    justify-content: flex-start;
    border-radius: 12px;
    font-size: 14px;
  }

  .sidebar-bottom {
    margin-top: 18px;
  }

  .main-content {
    padding: 16px 12px 24px;
    overflow: visible;
  }

  .topbar {
    display: none;
  }

  .section {
    margin-top: 0;
  }

  .section-intro,
  .panel-head {
    display: grid;
    gap: 12px;
    margin-bottom: 14px;
  }

  .section-intro h2 {
    margin: 5px 0 4px;
    font-size: 24px;
    line-height: 1.05;
  }

  .section-intro p,
  .panel p {
    font-size: 13px;
    line-height: 1.5;
  }

  .hero-strip {
    display: block;
    padding: 20px;
    border-radius: 16px;
  }

  .hero-strip h2 {
    font-size: 24px;
    line-height: 1.05;
  }

  .metric-grid,
  .dashboard-grid,
  .form-layout,
  .scanner-layout,
  .inventory-layout {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .metric-card,
  .panel {
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 14px 34px rgba(2, 8, 23, .08);
  }

  .metric-card strong {
    font-size: 22px;
    margin: 8px 0 2px;
  }

  .form-section {
    padding: 16px;
  }

  .form-grid {
    grid-template-columns: 1fr;
    gap: 13px;
  }

  .login-card input,
  .form-panel input,
  .form-panel select,
  .form-panel textarea,
  .lookup-panel input {
    min-height: 46px;
    border-radius: 12px;
    font-size: 16px;
  }

  .form-actions {
    position: sticky;
    bottom: 0;
    z-index: 8;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
    margin: 0 -16px -16px;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(12px);
    border-radius: 0 0 14px 14px;
    box-shadow: 0 -12px 30px rgba(2, 8, 23, .07);
  }

  .primary,
  .secondary,
  .danger {
    min-height: 46px;
    border-radius: 12px;
  }

  .price-panel {
    position: static;
    order: -1;
  }

  .quote-total strong {
    font-size: 30px;
  }

  .inventory-actions {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
  }

  .category-panel {
    position: static;
    gap: 12px;
  }

  .inventory-tabs,
  .brand-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    max-height: none;
    padding: 3px 2px 8px;
    scroll-snap-type: x proximity;
  }

  .inventory-tabs button {
    flex: 0 0 auto;
    min-width: 132px;
    min-height: 46px;
    scroll-snap-align: start;
  }

  .sync-card {
    display: none;
  }

  .table-search {
    min-width: 0;
    width: 100%;
  }

  .table-wrap {
    overflow: visible;
  }

  .table-wrap table,
  .table-wrap thead,
  .table-wrap tbody,
  .table-wrap tr,
  .table-wrap td {
    display: block;
    width: 100%;
  }

  .table-wrap thead {
    display: none;
  }

  .table-wrap tr {
    margin-bottom: 12px;
    padding: 12px;
    border: 1px solid #e5ebf3;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(2, 8, 23, .06);
  }

  .table-wrap td {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 10px;
    align-items: start;
    padding: 8px 0;
    border: 0;
    color: #34465f;
    word-break: break-word;
  }

  .table-wrap td:before {
    color: #6b7c96;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  #recentRows td:nth-child(1):before,
  #manifestRows td:nth-child(1):before {
    content: "Tracking";
  }

  #recentRows td:nth-child(2):before {
    content: "Route";
  }

  #recentRows td:nth-child(3):before {
    content: "Item";
  }

  #recentRows td:nth-child(4):before,
  #manifestRows td:nth-child(4):before {
    content: "Weight";
  }

  #recentRows td:nth-child(5):before {
    content: "Total";
  }

  #recentRows td:nth-child(6):before,
  #manifestRows td:nth-child(6):before {
    content: "Status";
  }

  #manifestRows td:nth-child(2):before {
    content: "Sender";
  }

  #manifestRows td:nth-child(3):before {
    content: "Category";
  }

  #manifestRows td:nth-child(5):before {
    content: "Value";
  }

  #inventoryRows td:nth-child(1):before {
    content: "Photo";
  }

  #inventoryRows td:nth-child(2):before {
    content: "SKU";
  }

  #inventoryRows td:nth-child(3):before {
    content: "Item";
  }

  #inventoryRows td:nth-child(4):before,
  #requestRows td:nth-child(3):before,
  #binRows td:nth-child(3):before {
    content: "Category";
  }

  #inventoryRows td:nth-child(5):before,
  #binRows td:nth-child(4):before {
    content: "Qty";
  }

  #inventoryRows td:nth-child(6):before {
    content: "Website";
  }

  #inventoryRows td:nth-child(7):before {
    content: "Updated";
  }

  #inventoryRows td:nth-child(8):before,
  #binRows td:nth-child(6):before {
    content: "Actions";
  }

  #requestRows td:nth-child(1):before,
  #paymentRows td:nth-child(1):before,
  #binRows td:nth-child(1):before {
    content: "Date";
  }

  #requestRows td:nth-child(2):before {
    content: "Client";
  }

  #requestRows td:nth-child(4):before {
    content: "Brand / item";
  }

  #requestRows td:nth-child(5):before {
    content: "Vehicle";
  }

  #requestRows td:nth-child(6):before,
  #paymentRows td:nth-child(6):before {
    content: "Status";
  }

  #requestRows td:nth-child(7):before {
    content: "Details";
  }

  #paymentRows td:nth-child(2):before {
    content: "Reference";
  }

  #paymentRows td:nth-child(3):before {
    content: "Customer";
  }

  #paymentRows td:nth-child(4):before {
    content: "Item";
  }

  #paymentRows td:nth-child(5):before {
    content: "Amount";
  }

  #binRows td:nth-child(2):before {
    content: "Item";
  }

  #binRows td:nth-child(5):before {
    content: "Deleted by";
  }

  .row-actions,
  .scanner-controls,
  .ticket-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .inventory-thumb {
    width: 86px;
    height: 64px;
  }

  .history-list article {
    display: block;
    padding: 12px;
    border: 1px solid #e5ebf3;
    border-radius: 12px;
    background: #fff;
  }

  .history-list span,
  .history-list small {
    display: block;
    margin-top: 4px;
  }

  .modal {
    align-items: end;
    padding: 10px;
  }

  .modal-card {
    width: 100%;
    max-height: 88svh;
    overflow: auto;
    border-radius: 18px;
    padding: 22px;
  }

  .ticket-meta {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .metric-grid {
    grid-template-columns: 1fr;
  }

  .main-content {
    padding-inline: 10px;
  }

  .metric-card,
  .panel {
    padding: 14px;
  }

  .table-wrap td {
    grid-template-columns: 82px 1fr;
    font-size: 12px;
  }

  .login-card {
    padding-inline: 18px;
  }
}
