
:root{--ink:#202a25;--green:#214f3c;--mint:#e8f3ec;--paper:#f6f7f5;--line:#dce3dd;--muted:#66736b;--danger:#a12c2c}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
header{background:var(--green);color:#fff;padding:15px max(16px,calc((100% - 1050px)/2));display:flex;justify-content:space-between;align-items:center;gap:12px}
header a{color:white;text-decoration:none}
.brand{font-size:21px;font-weight:800;letter-spacing:.2px}
.wrap{max-width:1050px;margin:0 auto;padding:18px 14px 48px}
h1{font-size:24px;margin:4px 0 14px}
h2{font-size:18px;margin:0 0 12px}
.muted{color:var(--muted);font-size:14px}
.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:16px;margin:14px 0;box-shadow:0 3px 12px #17251c08}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
label{display:block;font-size:14px;font-weight:700;margin-bottom:5px}
input,select,button,.btn,textarea{font:inherit}
input,select,textarea{width:100%;border:1px solid #cbd5cd;border-radius:10px;padding:12px;background:white;min-height:45px}
input[type=file]{padding:8px}
button,.btn{border:0;border-radius:10px;background:var(--green);color:white;padding:12px 16px;font-weight:750;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;min-height:44px}
.btn.secondary,button.secondary{background:var(--mint);color:var(--green)}
button.danger,.btn.danger{background:#faeaea;color:var(--danger)}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.searchrow{display:flex;gap:8px}
.searchrow input{flex:1;min-width:0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px}
.card img{width:100%;height:210px;object-fit:cover;display:block;background:#e9eee9}
.cardbody{padding:12px}
.card h3{margin:0 0 5px;font-size:17px;overflow-wrap:anywhere}
.price{font-weight:800;color:var(--green)}
.meta{font-size:13px;color:var(--muted);margin:5px 0;overflow-wrap:anywhere}
.badge{display:inline-block;background:var(--mint);color:var(--green);padding:3px 8px;border-radius:99px;font-size:12px;font-weight:750}
.flash{padding:12px 14px;border-radius:10px;background:var(--mint);margin:12px 0}
.flash.error{background:#faeaea;color:var(--danger)}
.thumbrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.thumbrow img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
hr{border:0;border-top:1px solid var(--line);margin:16px 0}
.empty{padding:35px 12px;text-align:center;color:var(--muted)}
input:focus,button:focus,.btn:focus{outline:3px solid #8abca0;outline-offset:1px}
@media(max-width:720px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card img{height:170px}.grid{grid-template-columns:1fr}.wrap{padding:14px 11px 35px}header{padding:13px 14px}}
@media(max-width:390px){.cards{grid-template-columns:1fr}.card img{height:230px}.searchrow{flex-direction:column}}
