:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#21312d;background:#f5f7f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#176f56;text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.04em}h2{font-size:1.2rem;letter-spacing:-.02em}h3{font-size:1rem}p{line-height:1.55}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:#102c26;color:#e8f4ef;padding:28px 18px;display:flex;flex-direction:column;gap:26px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;color:white;font-weight:800;line-height:1.1;padding:4px}.brand:hover{text-decoration:none}.brand small{display:block;color:#a9c9ba;font-size:.7rem;font-weight:500;margin-top:4px}.brand-mark,.auth-logo{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#bde6bb;color:#10382d;font-weight:900;font-size:1.35rem}.nav{display:grid;gap:5px}.nav a{color:#d0e4d9;padding:12px 14px;border-radius:9px;font-size:.92rem}.nav a:hover,.nav a.active{color:#fff;background:#275246;text-decoration:none}.side-foot{display:flex;align-items:center;gap:10px;margin-top:auto;border-top:1px solid #416358;padding-top:20px;font-size:.85rem}.side-foot small{display:block;color:#b3d0c3;margin-top:2px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#72b792;color:#11382a;font-weight:800}.logout button{border:0;background:none;color:#c6dfd3;padding:0;text-align:left}.main{max-width:1600px;width:100%;padding:34px clamp(18px,3vw,54px) 70px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.page-heading h1{margin:7px 0}.page-heading p{margin:0;color:#63736b}.eyebrow{font-size:.68rem;letter-spacing:.17em;color:#278464;font-weight:800}.card,.metric,.hero-card,.cart-summary,.product-card,.admin-product,.auth-card{background:white;border:1px solid #dfe7e0;border-radius:16px;box-shadow:0 5px 24px #1b403208}.card{padding:24px;margin-bottom:18px}.card-heading,.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.card-heading p{color:#6a7b72;margin:5px 0}.section-title{margin:26px 0 15px}.section-title h2{margin:0}.section-title span{color:#708077;font-size:.84rem}.catalog-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:14px}.hero-card{background:linear-gradient(120deg,#103c30,#297859);color:white;padding:30px}.hero-card .eyebrow{color:#b0ead0}.hero-card h2{font-size:1.7rem;margin:10px 0}.hero-card p{max-width:620px;color:#d9eee1;margin:0}.cart-summary{padding:24px;display:flex;flex-direction:column;justify-content:center;color:#183a2a}.cart-summary span{font-size:.72rem;letter-spacing:.13em;color:#55836a;font-weight:800}.cart-summary strong{font-size:1.7rem;margin:6px 0}.cart-summary small{color:#247451}.filters,.period-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:#fff;padding:15px;border:1px solid #dfe7e0;border-radius:13px;margin:18px 0}.filters label{min-width:210px;flex:1}.period-filter label{min-width:190px}.period-state{margin-left:auto}.form-grid{display:grid;gap:14px}.form-grid label,.filters label,.period-filter label,.mini-form label{display:grid;gap:6px;color:#445a4e;font-size:.82rem;font-weight:700}input:not([type=checkbox]):not([type=file]),select{width:100%;min-height:42px;border:1px solid #cddbd0;background:#fff;border-radius:9px;padding:10px 12px;color:#19352a;outline:none}input:focus,select:focus{border-color:#248c67;box-shadow:0 0 0 3px #44b4802a}input[type=file]{max-width:100%;font-size:.8rem}.button{border:1px solid transparent;border-radius:9px;min-height:42px;padding:10px 16px;display:inline-flex;justify-content:center;align-items:center;gap:7px;font-weight:800;font-size:.83rem;white-space:nowrap}.button:hover{text-decoration:none;filter:brightness(.97)}.button.primary{background:#15865d;color:#fff}.button.secondary{background:#e4f2e9;color:#176d4f}.button.ghost{background:#fff;color:#336a50;border-color:#cdded2}.button.good{background:#ddf5e6;color:#116747}.button.tiny{min-height:32px;padding:6px 10px;font-size:.75rem}.button.full{width:100%}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:17px}.product-card{overflow:hidden;display:flex;flex-direction:column}.product-media{height:185px;background:#f4f7f3;display:grid;place-items:center;overflow:hidden}.product-media img,.admin-product-media img{width:100%;height:100%;object-fit:contain;padding:12px}.product-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:5px;background:linear-gradient(145deg,#edf4ed,#f9faf7);color:#729584}.product-placeholder span{font-size:3rem;font-weight:800;opacity:.35}.product-placeholder small{font-size:.7rem}.product-body{padding:17px;display:flex;flex-direction:column;flex:1}.category-label{font-size:.66rem;font-weight:800;letter-spacing:.1em;color:#348664;text-transform:uppercase}.product-body h3{margin:8px 0 6px;min-height:40px;line-height:1.3}.product-meta,.price-note,.admin-product-body p{font-size:.78rem;color:#718079}.price-row{display:flex;align-items:baseline;gap:5px;margin-top:auto}.price-row strong{font-size:1.5rem;letter-spacing:-.035em}.price-row span{font-size:.75rem;color:#7b8c80}.price-note{margin:5px 0 14px}.add-form{display:flex;gap:8px}.add-form input{max-width:62px}.add-form .button{flex:1}.unavailable{font-size:.8rem;background:#f7f3e9;padding:10px;border-radius:8px;color:#876f3c}.two-col{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.two-col .card{align-self:start}.narrow{max-width:560px}.cart-item{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid #e5ece6}.cart-item h3{margin:5px 0}.cart-item p{margin:0;color:#718079;font-size:.8rem}.cart-controls{display:flex;align-items:center;gap:16px}.cart-controls form{display:flex;gap:6px}.cart-controls input{max-width:63px}.total-card{position:sticky;top:20px}.sum-line{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #e2ebe4}.sum-line.grand{font-size:1.15rem;border:0;padding:20px 0}.fine-print{font-size:.78rem;color:#6a7d70}.check{display:flex!important;align-items:start;gap:9px;font-size:.8rem!important;line-height:1.4}.check input{margin-top:3px}.submit-form .button{margin-top:16px}.notice{padding:12px;border-radius:8px;background:#fff3de;color:#806329}.notice.success{background:#e7f5e9;color:#176843}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.metric{padding:19px}.metric span{display:block;color:#6e8074;font-size:.73rem}.metric strong{display:block;font-size:1.55rem;margin-top:7px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.83rem}th{text-align:left;color:#748a7b;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase}td,th{padding:12px;border-bottom:1px solid #e7eee8}td small{display:block;color:#819185;margin-top:3px}.status{display:inline-flex;border-radius:100px;background:#edf0ed;padding:5px 9px;font-size:.7rem;font-weight:700;white-space:nowrap}.status.submitted{background:#fff1d6;color:#946824}.status.delivered{background:#e5f6e9;color:#177248}.status.cancelled{background:#fbe7e2;color:#aa4f42}.status.closed{background:#e3e9fa;color:#465b9d}.detail-row td{padding:0 12px 12px}.detail-row details{font-size:.78rem;color:#4f795e}.detail-list{max-width:700px;padding:8px}.detail-list div{display:flex;justify-content:space-between;padding:5px 0}.inline-actions{display:flex;gap:6px}.close-card{display:flex;justify-content:space-between;gap:15px;align-items:center}.admin-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.admin-product{display:flex;overflow:hidden}.admin-product-media{width:100px;min-width:100px;background:#f6f8f4}.admin-product-body{padding:14px;min-width:0;flex:1}.admin-product-body h3{margin:5px 0}.admin-product-body details{margin-top:10px;border-top:1px solid #e2ebe4;padding-top:8px}.admin-product-body summary{cursor:pointer;color:#237856;font-size:.78rem;font-weight:700}.mini-form{display:grid;gap:9px;margin-top:10px;padding-top:8px;border-top:1px solid #ebf0eb}.mini-form input:not([type=checkbox]){min-height:34px}.users-layout{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}.empty{padding:35px;text-align:center;color:#77867b}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 20% 10%,#d7f1de,transparent 40%),#f5f7f4}.auth-card{padding:35px;width:min(100%,450px)}.auth-logo{margin-bottom:25px}.auth-card h1{margin:7px 0}.auth-card>p{color:#677a70}.auth-card .form-grid{margin:24px 0}.auth-help{border-top:1px solid #e6eee7;padding-top:15px;color:#77887b;font-size:.78rem}.flash{padding:12px 16px;border-radius:9px;margin-bottom:17px;background:#e3f6e9;color:#1a6a47}.flash.error{background:#fbe4dc;color:#9a4934}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.two-col,.users-layout{grid-template-columns:1fr}.total-card{position:static}}@media(max-width:700px){.shell{display:block}.sidebar{height:auto;position:static;padding:14px;gap:12px}.brand{font-size:.9rem}.nav{display:flex;overflow:auto;padding-bottom:3px}.nav a{white-space:nowrap;font-size:.78rem;padding:8px 10px}.side-foot,.logout{display:none}.main{padding:20px 13px 50px}.catalog-top{grid-template-columns:1fr}.hero-card{padding:21px}.hero-card h2{font-size:1.35rem}.cart-summary{padding:16px}.metrics{grid-template-columns:1fr 1fr}.card{padding:15px}.close-card,.card-heading{align-items:start;flex-direction:column}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-media{height:135px}.product-body{padding:12px}.product-body h3{font-size:.86rem}.product-meta{font-size:.69rem}.price-row strong{font-size:1.17rem}.add-form{flex-direction:column}.add-form input{max-width:none}.cart-item{flex-direction:column}.period-state{margin-left:0}}@media(max-width:430px){.product-grid{grid-template-columns:1fr}.product-media{height:180px}}
