@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--pine:#073c31;--pine-2:#0f5c47;--mint:#14bd81;--mint-pale:#eaf9f1;--ink:#18342e;--muted:#71827d;--edge:#e3eae7;--paper:#fff;--back:#f5f8f6;--shadow:0 6px 26px rgba(8,49,37,.045)}
*{box-sizing:border-box}html{font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:14px}body{margin:0;color:var(--ink);background:var(--back)}h1,h2,h3,p{margin-top:0}h1{font-size:27px;letter-spacing:-.95px;margin:2px 0 17px}h2{font-size:17px;letter-spacing:-.4px;margin-bottom:9px}h3{font-size:14px;margin-bottom:3px}p{line-height:1.55}a{color:var(--pine-2);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}input,select{min-height:40px;border:1px solid #dbe5e0;border-radius:10px;background:white;padding:0 12px;color:var(--ink);outline:none;width:100%;transition:border .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--mint);box-shadow:0 0 0 3px #14bd8126}input[type=checkbox]{accent-color:var(--pine-2);height:17px;min-height:0;width:17px;vertical-align:middle;cursor:pointer}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.muted{color:var(--muted);font-size:13px;margin:6px 0}.layout{min-height:100vh;display:grid;grid-template-columns:245px minmax(0,1fr)}.sidebar{background:linear-gradient(170deg,#05382e,#0b4c3c);color:#effff8;padding:28px 14px 22px;display:flex;flex-direction:column;gap:39px;min-height:100vh;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 13px}.brandmark,.auth-mark{width:43px;height:43px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;font-size:27px;font-weight:800;color:white;background:linear-gradient(140deg,#1cce91,#048456);box-shadow:inset 0 0 0 1px #4affb04f}.brand strong{font-size:17px;letter-spacing:2.1px}.brand small{display:block;font-size:9px;letter-spacing:1.15px;color:#9dd5bf;margin-top:4px}.sidebar nav{display:grid;gap:7px}.sidebar nav a{display:flex;align-items:center;gap:13px;color:#b8d9ca;padding:13px 15px;border-radius:11px;font-weight:600;font-size:12.7px;transition:.15s}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff1b;color:white;text-decoration:none}.sidebar nav a.active{box-shadow:inset 3px 0 0 #19d597}.sidebar nav a span{display:grid;place-items:center;border:1px solid #ffffff28;width:27px;height:27px;border-radius:8px;font-size:15px}.sidebottom{margin-top:auto;border-top:1px solid #ffffff24;padding:20px 13px 0;color:#b9d9ca;font-size:11px}.sidebottom small{display:block;margin:9px 0 0 15px;color:#7fb39c}.dot{display:inline-block;width:7px;height:7px;background:#26de96;border-radius:50%;margin-right:5px;box-shadow:0 0 10px #26de96}.main{display:flex;flex-direction:column;min-width:0}.topbar{min-height:70px;background:var(--paper);border-bottom:1px solid var(--edge);display:flex;align-items:center;justify-content:flex-end;padding:15px clamp(15px,3.3vw,50px)}.topright{display:flex;align-items:center;gap:25px}.user-chip{font-weight:700;font-size:12px;color:#365b4c}.user-chip:first-letter{color:#18ae78}.logout{font-size:12px;font-weight:700}.mobile-brand{display:none}.content{width:100%;max-width:1800px;margin:0 auto;padding:34px clamp(15px,3.3vw,50px) 26px;flex:1}.pagehead{display:flex;justify-content:space-between;align-items:flex-end}.eyebrow{font-size:10px;letter-spacing:2.1px;color:#13a673;font-weight:800;margin:0 0 5px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:23px}.statcard{min-height:143px;background:var(--paper);border:1px solid var(--edge);border-radius:15px;box-shadow:var(--shadow);padding:23px 24px;position:relative;overflow:hidden}.statcard .stat-icon{position:absolute;right:23px;top:19px;background:var(--mint-pale);color:#12996b;display:grid;place-items:center;width:33px;height:33px;border-radius:9px;font-size:19px}.statcard p{font-size:12px;color:#71877e;margin:0 0 7px}.statcard strong{font-size:29px;letter-spacing:-1px}.statcard small{display:block;color:#98a7a0;font-size:11px;margin-top:1px}.panel{border-radius:15px;background:white;border:1px solid var(--edge);padding:22px 23px;margin-bottom:20px;box-shadow:var(--shadow)}.panel.narrow{max-width:900px}.panel-head{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:19px}.panel-head h2{margin-bottom:3px}.panel-head .muted{margin:0}.count{font-size:12px;color:#8da09a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-radius:9px;border:1px solid transparent;padding:10px 16px;font-size:12px;font-weight:800;white-space:nowrap;transition:transform .13s,background .13s;vertical-align:middle}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn.primary{color:white;background:#087e58;box-shadow:0 4px 11px #04845628}.btn.primary:hover{background:#066849}.btn.secondary{color:#096f4f;background:#e9f7ef;border-color:#d1eadb}.btn.ghost{color:#556e63;background:#f7f9f7;border-color:#e5ece8}.btn.danger{color:#a63737;background:#fff1f1;border-color:#f4dddd}.btn.sm{padding:7px 10px;min-height:30px;font-size:11px}.searchbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:4px 0 23px}.searchbar .search-field{flex:2 1 300px;position:relative}.searchbar .search-field span{position:absolute;top:4px;left:13px;font-size:23px;color:#8da69c}.searchbar .search-field input{padding-left:39px;height:41px}.date-field{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;color:#60796d}.date-field input{width:156px}.table-wrap{max-width:100%;overflow:auto;border:1px solid #eaf0ec;border-radius:12px}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}thead{background:#f6faf7}th{font-size:10px;text-transform:uppercase;letter-spacing:.55px;color:#7f9489;text-align:left;font-weight:800;padding:15px 16px;border-bottom:1px solid #e5ede7}td{padding:16px;border-bottom:1px solid #edf2ee;vertical-align:middle;color:#3c554a}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfefd}td b,td strong{font-weight:800;color:#24463b}.orders-table td.address-cell{white-space:normal;min-width:240px;max-width:330px;color:#778a80;line-height:1.4;font-size:11px}.sub{display:block;font-size:11px;color:#9bac9f;margin-top:5px}.status{display:inline-flex;align-items:center;border-radius:20px;padding:5px 9px;font-weight:800;font-size:10.5px;white-space:nowrap}.status.green{color:#098257;background:#e6f7ee}.status.amber{color:#a77219;background:#fff3d9}.status.red{color:#ab4141;background:#ffeceb}.status.gray{color:#67786f;background:#eef2ef}td .volumes{width:63px;min-height:35px;padding:4px 7px;font-size:12px}.unavailable{background:#fafbfa}.unavailable td{color:#a4afa9}.empty{height:110px;text-align:center;color:#90a299!important}.tablefoot{display:flex;gap:16px;align-items:center;justify-content:flex-end;padding:15px 3px 0;font-size:11px;color:#879b90}.generation-bar{background:#f2faf5;border:1px solid #d9f0e1;border-radius:12px;display:flex;align-items:end;gap:15px;flex-wrap:wrap;padding:19px 20px;margin-top:18px}.selected-badge{display:flex;align-items:center;gap:9px;margin-right:auto}.selected-badge strong{font-size:26px;display:grid;place-items:center;border-radius:11px;background:#ddf3e7;color:#087a53;min-width:46px;height:48px}.selected-badge span{font-weight:800;font-size:12px}.selected-badge small{display:block;font-size:10px;color:#779184;font-weight:500;margin-top:4px}.generation-bar label{display:grid;gap:7px;color:#507364;font-size:11px;font-weight:800}.generation-bar select{min-width:175px;min-height:41px}.hint{color:#839a8b;font-size:11px;padding:10px 4px 0}.alert{border:1px solid #e2ebe2;background:#f3f9f2;border-radius:11px;padding:14px 17px;font-size:12px;color:#426b52;margin:12px 0 21px;line-height:1.5}.alert.success{background:#eef9f1;border-color:#caead6}.alert.error{background:#fff4f4;border-color:#f4d3d3;color:#9e3131}.alert.info{background:#f3fafc;border-color:#dbeaf0;color:#456977}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label,.auth-form label{display:grid;gap:8px;color:#607c6b;font-size:11px;font-weight:800}.form-grid .span-all{grid-column:1/-1}.form-grid h3{margin:13px 0 0;border-bottom:1px solid #eff3ef;padding-bottom:9px}.callout{background:#f5f8f5;border:1px solid #e6eee7;border-radius:10px;padding:12px;font-size:11px;color:#759082;line-height:1.6}.form-grid .btn{justify-self:start}.meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:6px 0 22px}.meta-grid div{display:grid;gap:7px}.meta-grid span{font-size:11px;color:#8ea399}.meta-grid b{font-size:14px}.buttonbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-top:1px solid #eaf0ec;padding-top:21px}.delivery-row{padding:16px 0;border-top:1px solid #e9efeb;display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.delivery-info{flex:1 1 310px;display:grid;gap:6px}.delivery-info b{font-size:13px}.delivery-info span{font-size:11px;color:#758e81}.delivery-info small{font-size:11px;color:#88988b;line-height:1.5}.delivery-actions{display:flex;gap:8px;flex:1 1 100%;align-items:center;flex-wrap:wrap}.delivery-actions select{width:145px}.delivery-actions input{flex:1 1 170px}.dangerzone{display:flex;justify-content:flex-end}.footer{padding:15px 20px;text-align:center;color:#93a39b;font-size:10px}.auth-bg{min-height:100vh;background:radial-gradient(circle at 90% 10%,#0b7255,#064132 56%,#032e28);display:grid;place-items:center;padding:25px}.auth-card,.install-wrap{width:100%;max-width:430px}.auth-card{background:white;border-radius:22px;padding:38px;box-shadow:0 22px 60px #02281b45}.auth-brand{display:flex;align-items:center;gap:15px;margin-bottom:35px}.auth-mark{width:49px;height:49px}.auth-brand h1{letter-spacing:2px;font-size:23px;margin:0 0 2px}.auth-brand p{font-size:11px;color:#839b8b;margin:0}.auth-card h2{font-size:22px;margin-bottom:2px}.auth-card .muted{margin-bottom:27px}.auth-form{display:grid;gap:17px}.auth-form button{margin-top:7px;min-height:44px;font-size:13px}.auth-footer{margin-top:28px;font-size:10px;color:#a2b0a7;text-align:center}.install-wrap{max-width:720px}.install-wrap .auth-brand h1,.install-wrap .auth-brand p{color:white}.install-wrap .panel{padding:28px}.install-wrap .form-grid{gap:13px}
@media(max-width:1200px){.layout{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding-left:11px;padding-right:11px}.panel{padding:17px}.generation-bar .selected-badge{flex:1 1 100%}.generation-bar label{flex:1 1 160px}.generation-bar .btn{flex:1 1 auto}.meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.layout{display:block}.sidebar{height:auto;position:relative;min-height:0;gap:10px;padding:12px 13px}.sidebar>.brand,.sidebottom{display:none}.sidebar nav{display:flex;gap:6px;overflow:auto;scrollbar-width:none}.sidebar nav a{padding:9px 12px;white-space:nowrap;font-size:11px}.sidebar nav a span{display:none}.topbar{min-height:55px;padding:8px 19px;justify-content:space-between}.mobile-brand{display:block;font-size:12px;font-weight:800;letter-spacing:1.5px;color:#0b7255}.mobile-brand small{font-weight:500;letter-spacing:.8px}.topright{gap:13px}.content{padding:22px 14px}.pagehead h1{font-size:22px}.stats-grid{gap:10px}.statcard{padding:16px;min-height:117px}.statcard strong{font-size:25px}.statcard .stat-icon{display:none}.statcard p{font-size:11px}.panel-head{align-items:flex-start}.searchbar .search-field{flex-basis:100%}.form-grid.three{grid-template-columns:1fr 1fr}.delivery-actions input{flex-basis:100%}}
@media(max-width:520px){.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.statcard{padding:12px 10px;min-height:115px}.statcard p{font-size:10px;line-height:1.3}.statcard strong{font-size:22px}.statcard small{font-size:9px}.panel{border-radius:12px;padding:14px}.panel-head{flex-wrap:wrap;gap:12px}.panel-head .btn{width:100%}.form-grid,.form-grid.three{grid-template-columns:1fr}.date-field{flex:1 1 100%}.date-field input{flex:1}.searchbar>.btn{flex:1 1 35%}.generation-bar{padding:13px}.generation-bar label,.generation-bar .btn{flex-basis:100%}.meta-grid{gap:14px}.meta-grid b{font-size:12px}.auth-card{padding:25px}.auth-brand{margin-bottom:25px}}
