:root{--g:#1f6f4a;--bg:#f6f7f6;--line:#dfe3e0}
*{box-sizing:border-box}body{margin:0;font:16px/1.4 system-ui,sans-serif;background:var(--bg);color:#1c1f1d;padding-bottom:env(safe-area-inset-bottom)}
header{display:flex;justify-content:space-between;align-items:center;background:var(--g);color:#fff;padding:.7rem 1rem;padding-top:calc(.7rem + env(safe-area-inset-top))}
header nav a{color:#fff;margin-left:1rem;text-decoration:none}
main{max-width:720px;margin:0 auto;padding:1rem}
.toolbar{display:flex;justify-content:space-between;align-items:center}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;display:grid;gap:.8rem}
.narrow{max-width:380px;margin:3rem auto}
label{display:grid;gap:.25rem;font-size:.9rem}label.inline{display:flex;gap:.5rem;align-items:center}
input,select,textarea{font:inherit;padding:.65rem;border:1px solid var(--line);border-radius:8px;width:100%}
input[type=checkbox]{width:auto}
button,.btn{background:var(--g);color:#fff;border:0;border-radius:8px;padding:.7rem 1rem;font:inherit;text-decoration:none;cursor:pointer;display:inline-block}
.btn.secondary{background:#fff;color:#333;border:1px solid var(--line)}
.filters{display:grid;gap:.5rem;margin:1rem 0}
.row{display:flex;gap:.8rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.6rem;margin-bottom:.5rem;color:inherit;text-decoration:none}
.row img,.noimg{width:52px;height:52px;border-radius:8px;object-fit:cover;background:#e9ecea;flex:none}
.grow{flex:1}.muted{color:#777}.error{color:#b00020}.ok{color:var(--g)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.preview{max-width:100%;border-radius:8px}
