
:root{--forest:#173d32;--deep:#123329;--jade:#268064;--lime:#b7db82;--cream:#f7f8f3;--white:#fff;--ink:#172b26;--muted:#748079;--border:#e1e7df;--soft:#edf6ee;--gold:#c8973c;--red:#b55148;--shadow:0 8px 28px rgba(18,51,41,.05)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #9bd9b4;outline-offset:2px}.app{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--forest);color:#e7f2e8;position:sticky;top:0;height:100vh;padding:29px 16px 20px;display:flex;flex-direction:column;gap:31px}.branding{display:flex;align-items:center;gap:12px;padding:0 9px}.mark{background:#d8e9a9;color:var(--deep);border-radius:15px;width:48px;height:48px;display:grid;place-items:center;flex:none;font-size:26px}.brand-label{font-weight:900;letter-spacing:-.035em;font-size:22px;line-height:1}.brand-sub{font-size:10px;letter-spacing:.19em;margin-top:6px;color:#bcd3c8;font-weight:800}.nav-label{padding:0 13px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#a3c3b5;font-weight:900;margin:0 0 10px}.navs{display:grid;gap:5px}.nav-btn{border:0;background:transparent;color:#c9ddd3;text-align:left;width:100%;padding:13px 14px;border-radius:12px;display:flex;align-items:center;gap:11px;font-weight:750}.nav-btn .navico{font-size:18px;width:22px;display:inline-grid;place-items:center}.nav-btn:hover{background:#ffffff16}.nav-btn.current{background:#e9f2e9;color:#1a4b3a;box-shadow:0 7px 18px #071b1530}.side-bottom{margin-top:auto;background:#ffffff0c;border:1px solid #ffffff22;border-radius:16px;padding:14px}.side-bottom strong{font-size:12px}.side-bottom p{color:#c0d8cd;margin:5px 0 0;font-size:11px;line-height:1.6}.workspace{min-width:0}.topbar{height:88px;background:#ffffffd9;backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:18px clamp(20px,3.5vw,55px);display:flex;justify-content:space-between;align-items:center;gap:20px}.heading-crumb{color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.page-name{font-size:23px;font-weight:900;letter-spacing:-.04em;margin-top:2px}.top-actions{display:flex;align-items:center;gap:9px}.demo-chip{color:#88601d;background:#fff5db;border:1px solid #f0e0ad;border-radius:100px;padding:8px 11px;font-size:11px;font-weight:850}.role-select{background:#f5f8f5;color:var(--forest);border:1px solid #dce9dd;border-radius:12px;padding:10px 28px 10px 11px;font-size:12px;font-weight:800;max-width:170px}.content{padding:26px clamp(20px,3.5vw,55px) 110px;max-width:1520px;margin:0 auto}.notice{background:#fffae9;border:1px solid #f1e3b7;border-radius:14px;padding:12px 16px;color:#745d2c;font-size:12px;line-height:1.5;margin-bottom:23px}.notice strong{color:#674f20}.view-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:23px}.view-head h1{font-size:27px;line-height:1.15;letter-spacing:-.045em;margin:0 0 7px;font-weight:900}.view-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.overline{color:var(--jade);font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;margin:0 0 7px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{min-height:42px;padding:10px 16px;border-radius:12px;border:1px solid transparent;background:var(--jade);color:white;font-weight:850;font-size:12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:8px;white-space:nowrap}.btn:hover{filter:brightness(.97)}.btn.dark{background:var(--forest)}.btn.outline{background:white;color:var(--forest);border-color:#dbe4dc}.btn.soft{background:#ebf5ed;color:#1e6a4b}.btn.warn{background:#fff5ea;color:#ac633b}.btn.danger{background:#fff0ec;color:#b74e43}.btn.tiny{padding:6px 10px;min-height:32px;border-radius:9px;font-size:11px}.btn.block{width:100%}.layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.9fr);align-items:start;gap:20px}.panel{background:var(--white);border:1px solid var(--border);border-radius:19px;box-shadow:var(--shadow);padding:22px;margin-bottom:18px}.panel.plain{box-shadow:none}.panel-title{font-size:16px;letter-spacing:-.025em;font-weight:900;margin:0 0 6px}.panel-note{font-size:12px;color:var(--muted);line-height:1.5;margin:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--border);padding:18px;border-radius:18px;min-width:0}.metric .lab{font-size:11px;color:var(--muted);font-weight:700}.metric strong{font-size:25px;letter-spacing:-.04em;display:block;margin:8px 0 3px;overflow-wrap:anywhere}.metric .minor{font-size:10px;color:#7b8e84}.metric.green{background:var(--forest);color:#fff;border-color:var(--forest)}.metric.green .lab,.metric.green .minor{color:#d1e9d6}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:11px;color:#53675c;font-weight:850}.field input,.field select,.field textarea,.input{width:100%;min-height:44px;border:1px solid #dce5df;background:white;border-radius:11px;padding:10px 12px;color:var(--ink)}.field textarea{min-height:75px;resize:vertical}.field input[type=number]{font-variant-numeric:tabular-nums}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.small-text{font-size:11px;color:var(--muted);line-height:1.55}.checkbox{accent-color:var(--jade);width:19px;height:19px;flex:none;cursor:pointer}.person{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #edf0eb}.person:last-child{border:0}.person label{display:flex;gap:11px;align-items:center;flex:1;cursor:pointer;min-width:0}.avatar{width:40px;height:40px;border-radius:12px;background:#e8f3e8;color:#2d704e;display:grid;place-items:center;font-size:16px;font-weight:900;flex:none}.person-title{font-weight:850;font-size:13px}.person-sub{font-size:11px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted{color:var(--muted)}.tag{display:inline-flex;align-items:center;padding:5px 9px;border-radius:100px;font-size:10px;font-weight:850;white-space:nowrap;background:#eff4ee;color:#54715d}.tag.green{background:#e7f6e9;color:#247046}.tag.gold{background:#fff1d6;color:#96661e}.tag.red{background:#ffede8;color:#a5483b}.tag.dark{background:#e8f0eb;color:#214f3f}.empty{background:#fafcf9;border:1px dashed #d8e4d9;border-radius:14px;text-align:center;padding:26px 13px;color:#819184;font-size:13px;line-height:1.6}.empty strong{display:block;color:#3f6550;margin:7px 0}.separator{border:0;border-top:1px solid var(--border);margin:17px 0}.qty-card{background:#f9fbf8;border:1px solid #e3eae2;border-radius:13px;padding:14px;margin-bottom:11px}.qty-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}.qty-top b{font-size:13px}.qty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.qty-grid .field label{font-size:10px}.qty-grid input{text-align:center;font-weight:800;padding:9px 5px}.total-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;font-size:12px}.total-line b{font-size:17px;letter-spacing:-.04em}.progress{height:9px;border-radius:20px;background:#e7eee8;overflow:hidden}.progress>span{display:block;height:100%;background:var(--jade);border-radius:20px;transition:width .3s}.stop{display:flex;gap:12px;align-items:flex-start;position:relative;padding:4px 0 20px}.stop:not(:last-child):before{content:"";position:absolute;width:2px;left:18px;top:42px;bottom:0;background:#dce9df}.bubble{position:relative;flex:none;z-index:1;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e8f4eb;color:#327a54;font-weight:900}.bubble.done{background:#d9f1df;color:#247046}.bubble.active{background:var(--forest);color:white}.stop-content{flex:1;min-width:0}.stop-content h3{font-size:13px;letter-spacing:-.01em;margin:3px 0 3px}.stop-content p{font-size:11px;color:var(--muted);margin:0 0 9px;line-height:1.5}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.ribbons{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.guide{background:#f0f7ef;border-radius:14px;border:1px solid #dcebdc;padding:15px 16px;font-size:12px;color:#3d6b53;line-height:1.65}.guide b{color:#22573b}.wide-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.wide-table th{color:#718177;font-size:11px;font-weight:800;background:#f8faf7}.wide-table th,.wide-table td{border-bottom:1px solid #e9eee7;padding:13px 11px}.wide-table td{font-size:12px}.wide-table tr:last-child td{border:0}.table-wrap{overflow:auto}.align-right{text-align:right}.money{font-weight:900;white-space:nowrap}.small-date{color:var(--muted);font-size:12px}.searchrow{display:flex;gap:9px;margin-bottom:14px}.searchrow .input{flex:1}.list-card{padding:16px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.list-card:last-child{border:0}.list-card h3{margin:0 0 4px;font-size:14px}.list-card p{font-size:11px;color:var(--muted);margin:0 0 7px;line-height:1.5}.list-card .price-chips{display:flex;flex-wrap:wrap;gap:5px}.list-card .price-chips span{font-size:10px;background:#f4f7f4;border:1px solid #edf0ed;padding:4px 7px;border-radius:7px;color:#53725e}.notice-info{background:#f1f6f4;border:1px solid #dce9e3;border-radius:12px;padding:12px;color:#537466;font-size:11px;line-height:1.6}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#0b201aa3;display:grid;place-items:center;padding:15px;overflow:auto}.modal{background:#fff;width:min(570px,100%);border-radius:22px;box-shadow:0 22px 60px #001a183d;padding:24px;max-height:calc(100vh - 30px);overflow-y:auto}.modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:19px}.modal-top h2{font-size:21px;letter-spacing:-.04em;margin:0}.modal-top p{color:var(--muted);font-size:12px;margin:5px 0 0}.close{background:#f2f6f2;border:1px solid #e1e9e1;border-radius:11px;min-width:36px;height:36px;font-size:20px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.toast{position:fixed;z-index:80;bottom:29px;left:50%;transform:translateX(-50%);background:var(--forest);color:white;padding:12px 18px;border-radius:13px;font-size:12px;font-weight:750;box-shadow:0 20px 42px #0924173d;max-width:calc(100vw - 30px);text-align:center}.mobile-nav{display:none}.row-between{display:flex;align-items:center;justify-content:space-between;gap:10px}.flag{background:#eaf5ea;padding:9px 12px;border-radius:11px;color:#256d4d;font-weight:800;font-size:11px}.hidden{display:none!important}
@media(max-width:1050px){.app{grid-template-columns:215px minmax(0,1fr)}.layout{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{padding:25px 12px}.brand-label{font-size:19px}}
@media(max-width:740px){.app{display:block}.sidebar{display:none}.topbar{height:auto;min-height:74px;padding:12px 15px}.page-name{font-size:18px}.top-actions{gap:6px}.role-select{font-size:11px;padding:9px 23px 9px 9px;max-width:125px}.demo-chip{font-size:10px;padding:7px 8px}.content{padding:18px 13px 90px}.view-head{align-items:stretch;flex-direction:column;gap:14px;margin-bottom:16px}.view-head h1{font-size:24px}.panel{padding:16px;border-radius:17px}.stats{gap:9px}.metric{padding:14px;border-radius:13px}.metric strong{font-size:23px}.qty-grid{gap:6px}.qty-grid .field label{font-size:9px}.qty-grid input{min-height:42px}.mobile-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -8px 25px #20442e10;border-top:1px solid var(--border);display:flex;align-items:stretch;justify-content:space-around;gap:1px;padding:8px 5px max(7px,env(safe-area-inset-bottom))}.mobile-nav button{flex:1;min-width:0;padding:4px 1px 3px;border:0;background:transparent;color:#7e8b80;font-size:10px;font-weight:800;display:flex;flex-direction:column;align-items:center;gap:3px}.mobile-nav button .navico{font-size:20px}.mobile-nav button.current{color:#15724f}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{display:grid;grid-template-columns:1fr 1fr}.modal{padding:19px}.list-card{flex-direction:column}.ribbons{flex-wrap:wrap}}

/* Admin history */
.history-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.segment{display:inline-flex;gap:4px;border:1px solid var(--border);background:#f2f6f0;padding:4px;border-radius:12px;flex-wrap:wrap}
.segment button{border:0;border-radius:9px;padding:10px 14px;background:transparent;color:#627469;font-size:12px;font-weight:850}
.segment button.active{background:var(--forest);color:#fff;box-shadow:0 3px 9px #1a4a3130}
.history-period{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.history-period .period-label{font-size:17px;font-weight:900;letter-spacing:-.02em}
.icon-btn{background:white;color:var(--forest);width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;font-size:20px}
.history-range{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:10px 0 19px}
.history-range .field{flex:1;min-width:165px;max-width:245px}
.history-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal-dayname{text-align:center;font-size:11px;font-weight:900;color:#829186;padding:0 3px 5px}
.cal-tile{min-width:0;min-height:94px;text-align:left;display:flex;flex-direction:column;gap:5px;border:1px solid #e4ebe4;background:#fff;border-radius:11px;padding:10px;color:var(--ink)}
.cal-tile:hover{border-color:#8abfa1;background:#f7fbf7}
.cal-tile.outside{background:#f9faf7;opacity:.48}
.cal-tile.outofrange{background:#f6f7f4;opacity:.48}
.cal-tile.today{border-color:#78ac83}
.cal-tile.hasdata{background:#eff7ee;border-color:#cce5cf}
.cal-tile .day-num{font-weight:900;font-size:13px}
.cal-tile .day-rev{font-size:12px;font-weight:900;color:#1a6245;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-tile .day-bags{font-size:10px;color:#677c6c;font-weight:700}
.cal-tile .day-dot{height:6px;width:6px;border-radius:50%;background:#8da99a;margin-top:auto}
.range-note{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:13px 0 3px;font-size:11px;color:var(--muted)}
.summary-details{display:flex;flex-wrap:wrap;gap:9px;margin:8px 0 18px}
.summary-details .detail-pill{border:1px solid var(--border);border-radius:10px;padding:9px 12px;background:white;font-size:11px}
.summary-details .detail-pill b{font-size:13px;color:var(--forest)}
.history-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.history-product-grid .product-stat{background:#f7faf6;border:1px solid #e6ede5;border-radius:12px;padding:13px}
.history-product-grid .product-stat .label{font-size:11px;font-weight:800;color:#607768}
.history-product-grid .product-stat strong{display:block;font-size:21px;letter-spacing:-.03em;margin:7px 0}
.history-product-grid .product-stat .small{font-size:10px;color:#7c8b7f}
.history-client-head{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.history-client-head .field{min-width:190px;max-width:310px;flex:1}
.customer-link{border:none;background:transparent;padding:3px 0;color:#146b4a;font-weight:900;text-align:left;text-decoration:underline;text-underline-offset:3px}
.payment-explain{border-radius:12px;border:1px solid #dfe9df;background:#f6faf6;color:#586f5f;font-size:11px;line-height:1.65;padding:12px 15px}
@media(max-width:740px){.history-calendar{gap:3px}.cal-dayname{font-size:10px}.cal-tile{min-height:80px;border-radius:8px;padding:6px 4px;gap:3px}.cal-tile .day-num{font-size:11px}.cal-tile .day-rev{font-size:10px;letter-spacing:-.045em}.cal-tile .day-bags{font-size:8px}.history-toolbar{align-items:stretch}.history-period .period-label{font-size:15px}.segment{width:100%}.segment button{flex:1}.history-product-grid{gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.history-product-grid .product-stat{padding:10px}.history-product-grid .product-stat strong{font-size:18px}.history-client-head .field{max-width:none}.summary-details .detail-pill{flex:1}}


/* Live app enhancements */
.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 8%,#e7f1df,transparent 50%),#f7f8f3;padding:24px}.login-card{width:min(100%,410px);background:#fff;border:1px solid var(--border);padding:30px;border-radius:24px;box-shadow:0 26px 70px #143c3013}.login-card .mark{margin:0 auto 15px}.login-card h1{text-align:center;font-size:28px;letter-spacing:-1px}.login-card p{text-align:center;color:var(--muted)}.login-card .field{margin-top:17px}.login-card button{margin-top:23px}.login-card .field input{font-size:16px}.login-note{margin-top:20px!important;font-size:12px}.banner{border:1px solid #c7dfcc;background:#f0f9f0;border-radius:12px;padding:12px 15px;margin-bottom:19px;color:#27614a;font-size:12px;line-height:1.6}.banner.warn{background:#fff8e5;border-color:#ebd49b;color:#74521d}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.subhead{font-size:19px;font-weight:900;letter-spacing:-.03em;margin:0 0 12px}.name-label{font-weight:900;font-size:14px}.inline-buttons{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.badgenum{display:inline-flex;background:#e9f4e8;color:#286747;border-radius:10px;padding:7px 10px;font-weight:900}.divider{height:1px;background:var(--border);margin:18px 0}.timesgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calday{min-height:92px;border:1px solid #e2e9de;border-radius:10px;background:#fff;text-align:left;padding:8px 6px;display:flex;flex-direction:column;gap:5px;align-items:flex-start}.calday b{font-size:12px}.calday .calamount{font-size:11px;color:#246346;font-weight:800}.calday .calbags{font-size:10px;color:#809089}.calday:hover{border-color:#2f8667;background:#f7fcf8}.calday.today{border-color:#91bd9e}.calday.blank{visibility:hidden}.calday.selected{background:#e4f3e9;border-color:#268064}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:6px;color:var(--muted);font-weight:800;font-size:10px;margin-bottom:7px}.product-box{border-radius:12px;border:1px solid var(--border);padding:12px;background:#f9fbf8}.tabular{font-variant-numeric:tabular-nums}.listresult{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.listresult:last-child{border:0}.textbtn{border:0;background:none;color:var(--jade);font-weight:800;cursor:pointer;padding:4px}.settingsrow{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--border)}.settingsrow:last-child{border:0}.smallcaps{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--jade)}.mobile-nav{display:none}.modal-backdrop{position:fixed;inset:0;background:rgba(13,39,30,.48);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal-panel{background:#fff;border-radius:21px;padding:24px;width:min(100%,620px);max-height:92dvh;overflow-y:auto;box-shadow:0 30px 100px #0004}.modal-title{font-size:21px;font-weight:900;letter-spacing:-.04em}.modal-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:17px}.modal-top button{background:none;border:none;font-size:22px}.toaster{position:fixed;bottom:24px;right:20px;z-index:99;max-width:360px;background:var(--forest);color:white;padding:13px 18px;border-radius:13px;box-shadow:0 12px 40px #112d2640;display:none}.loadmask{position:fixed;inset:0;z-index:80;background:#ffffffe8;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;color:var(--forest)}.footnote{font-size:11px;color:#7f8e81;line-height:1.6}.d-none{display:none!important}.nowrap{white-space:nowrap}.app-top-pill{border:1px solid #dce9df;background:#f2f8f2;color:#29634c;padding:8px 11px;border-radius:10px;font-size:11px;font-weight:900}.role-pill{font-size:11px;background:#edf5ef;color:#387257;padding:7px 11px;border-radius:100px;font-weight:900}.tag.status-ready{background:#e7f3ff;color:#355a9e}.tag.status-active{background:#fff3d7;color:#996c16}.tag.status-finished{background:#e6f4e8;color:#26744d}.customer-row{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--border)}.customer-row:last-child{border:0}.customer-row .grow{flex:1;min-width:0}.customer-row input[type=checkbox]{width:19px;height:19px;accent-color:var(--jade)}.right{text-align:right}.w100{width:100%}.error-block{padding:13px 14px;background:#ffebe7;border:1px solid #f0c1b9;color:#a13b32;border-radius:11px;margin-top:13px;font-size:12px;line-height:1.6}.pair{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0}.pair strong{font-variant-numeric:tabular-nums}.qty-row{display:grid;grid-template-columns:minmax(150px,1fr) repeat(4,minmax(65px,90px));gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.qty-row:last-child{border:0}.badge{border-radius:6px;background:#f1f7f2;color:#347354;font-size:10px;font-weight:900;padding:5px}.scroll-x{overflow-x:auto}.muted-dark{color:#50655b}.skeleton{opacity:.55}.hero-callout{background:linear-gradient(120deg,var(--forest),#306c51);padding:26px;color:white;border-radius:19px;margin-bottom:20px}.hero-callout h2{font-size:25px;letter-spacing:-.03em}.hero-callout p{color:#d1ead8}.mobile-actions{display:flex;gap:7px;flex-wrap:wrap}.input-mini{width:76px;min-height:40px;border:1px solid #dce5df;border-radius:10px;padding:7px;text-align:center;font-weight:800}.pillhead{font-size:12px;font-weight:850;color:#5c7567}.client-filter{min-width:180px}.overlayhint{font-size:11px;color:#7b9181;margin-top:5px}.nowrap{white-space:nowrap}
@media(max-width:880px){.app{display:block}.sidebar{display:none}.workspace{padding-bottom:76px}.topbar{height:auto;min-height:68px;padding:11px 15px;position:sticky;top:0;z-index:9}.content{padding:18px 14px 55px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;padding:7px 4px calc(7px + env(safe-area-inset-bottom));background:white;border-top:1px solid var(--border);z-index:15;display:flex;justify-content:space-around;gap:3px}.mobile-nav button{border:0;background:transparent;font-size:10px;font-weight:900;color:#7c9584;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;flex:1}.mobile-nav button.active{color:var(--forest)}.mobile-nav span{font-size:17px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:1fr}.panel{padding:16px}.view-head h1{font-size:24px}.qty-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.qty-row{min-width:520px}.timesgrid{gap:3px}.calday{min-height:72px;padding:5px 3px}.calday .calamount,.calday .calbags{font-size:9px}.calday b{font-size:10px}.role-pill{display:none}.top-actions{gap:5px}.page-name{font-size:17px}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:13px}.metric strong{font-size:21px}.mobile-stack{flex-direction:column;align-items:stretch}}
@media(max-width:390px){.qty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid{grid-template-columns:1fr}.calday{min-height:66px}.app-top-pill{padding:6px}}
