@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#173f32;--green2:#245844;--mint:#eaf1ec;--cream:#f8f8f4;--ink:#1c2822;--muted:#78827b;--line:#e5e9e4;--white:#fff;--danger:#b33c32}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}.topbar{height:78px;padding:0 max(24px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;color:var(--green);text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:14px;background:var(--green);color:#fff;display:grid;place-items:center;font-family:Manrope;font-size:23px;font-weight:800}.brand strong{display:block;font:800 20px Manrope;letter-spacing:-.7px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;color:var(--muted);margin-top:1px}.admin-link{border:1px solid var(--line);background:white;color:var(--green);padding:10px 16px;border-radius:999px;font:600 13px "DM Sans";cursor:pointer}.admin-link:hover,.secondary:hover{background:var(--mint)}.container{max-width:1120px;margin:auto;padding:0 24px}.intro{padding:78px 0 72px;max-width:680px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#66806f;margin:0 0 14px}.intro h1{font:800 clamp(38px,6vw,64px)/1.08 Manrope;margin:0;letter-spacing:-2.8px;color:var(--green)}.intro h1 em{font-style:normal;color:#8a9b8d}.intro-copy{max-width:470px;color:var(--muted);font-size:16px;line-height:1.7;margin:22px 0 0}.catalog-head{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--line);padding-top:34px}.catalog-head h2,.dialog h2{font:800 27px Manrope;letter-spacing:-1px;margin:0;color:var(--green)}.catalog-head .eyebrow{margin-bottom:8px}.count{font-size:12px;color:var(--muted);background:#edf1ec;padding:7px 11px;border-radius:30px}.tools{display:flex;gap:10px;margin:24px 0 22px}.search-wrap{height:46px;flex:1;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 14px;color:#829087}.search-wrap span{font-size:23px}.search-wrap input{border:0;outline:0;width:100%;font:14px "DM Sans";background:transparent}.tools select{border:1px solid var(--line);border-radius:12px;padding:0 32px 0 13px;background:#fff;color:#435148;font:13px "DM Sans";max-width:190px}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;min-height:120px}.product-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s,border-color .18s}.product-card:hover{transform:translateY(-2px);border-color:#bdcfc1}.product-top{display:flex;justify-content:space-between;gap:12px}.product-name{font:700 16px/1.35 Manrope;margin:0;color:var(--green)}.category{font-size:10px;color:#78907f;background:var(--mint);padding:5px 8px;border-radius:20px;white-space:nowrap;height:max-content}.description{font-size:12px;line-height:1.5;color:var(--muted);margin:9px 0 18px}.price{font:800 24px Manrope;color:var(--green);letter-spacing:-.8px}.price small{font:500 12px "DM Sans";color:#839087}.empty-state{grid-column:1/-1;padding:46px 20px;text-align:center;border:1px dashed #d5ded6;border-radius:16px;color:var(--muted);font-size:14px}.footnote{font-size:11px;color:#929b94;margin:24px 0 64px}footer{border-top:1px solid var(--line);padding:22px max(24px,calc((100% - 1120px)/2));display:flex;justify-content:space-between;color:#929b94;font-size:11px;background:#fff}.dialog{border:0;padding:0;background:transparent;max-width:calc(100% - 28px);width:460px;max-height:90vh}.dialog::backdrop{background:#12231dbb;backdrop-filter:blur(4px)}.dialog-card{position:relative;background:#fff;padding:32px;border-radius:20px;box-shadow:0 20px 80px #10251d30;max-height:90vh;overflow:auto}.close{position:absolute;right:20px;top:15px;border:0;background:transparent;font-size:27px;color:#829087;cursor:pointer}.field{display:block;font-size:12px;font-weight:600;color:#536158;margin:18px 0}.field input{display:block;width:100%;height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;margin-top:7px;font:14px "DM Sans";outline-color:#7b9d85}.primary,.secondary{border:0;border-radius:10px;padding:12px 18px;font:700 13px "DM Sans";cursor:pointer}.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green2)}.secondary{background:#f0f3ef;color:var(--green)}.dialog-card>.primary{width:100%;margin-top:8px}.error{color:var(--danger);font-size:12px;min-height:16px}.wide{width:680px}.admin-heading{display:flex;justify-content:space-between;align-items:center;padding-right:32px}.admin-heading h2{font-size:25px}.product-form{margin-top:20px;padding:16px;background:#f8faf7;border-radius:14px}.product-form .field{margin:8px 0 14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;gap:8px}.message{font-size:12px;color:var(--green);min-height:16px;margin:10px 0 0}.admin-list-head{display:flex;justify-content:space-between;align-items:center;margin:24px 0 10px}.admin-list-head h3{font:700 15px Manrope;margin:0}.admin-list{display:grid;gap:8px}.admin-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px}.admin-item strong{display:block;font-size:13px}.admin-item small{color:var(--muted);font-size:11px}.admin-item-actions{display:flex;gap:6px}.admin-item-actions button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;font-size:11px;cursor:pointer}.admin-item-actions .delete{color:var(--danger)}[hidden]{display:none!important}
@media(max-width:760px){.intro{padding:55px 0}.catalog{grid-template-columns:repeat(2,1fr)}.tools{flex-wrap:wrap}.search-wrap{flex-basis:100%}.tools select{flex:1;max-width:none;height:44px}.topbar{height:68px}.catalog-head h2{font-size:24px}}
@media(max-width:480px){.container{padding:0 17px}.catalog{grid-template-columns:1fr}.product-card{min-height:130px}.intro h1{letter-spacing:-1.8px}.intro-copy{font-size:14px}.topbar{padding:0 17px}.admin-link{padding:9px 12px;font-size:12px}.dialog-card{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}footer{padding:20px 17px;gap:10px;flex-wrap:wrap}}
