* { box-sizing: border-box; }
body { margin:0; font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:#f5f6f3; color:#263026; line-height:1.45; }
.container { width:min(1180px, calc(100% - 32px)); margin:auto; }
.site-header { background:#25362a; color:#fff; }
.header-inner { min-height:64px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.brand { color:#fff; font-size:1.25rem; font-weight:700; text-decoration:none; }
nav { display:flex; gap:16px; flex-wrap:wrap; }
nav a { color:#eaf0ea; text-decoration:none; }
main.container { padding:28px 0 50px; min-height:calc(100vh - 120px); }
.site-footer { background:#e7ebe6; padding:18px 0; color:#596259; font-size:.9rem; }
h1,h2,h3 { line-height:1.2; }
.toolbar { display:flex; justify-content:space-between; gap:15px; align-items:center; flex-wrap:wrap; margin-bottom:20px; }
.button, button { display:inline-block; border:0; border-radius:7px; padding:10px 15px; background:#365b3e; color:white; text-decoration:none; cursor:pointer; font:inherit; }
.button.secondary { background:#69736b; }
.button.danger { background:#a33b31; }
.button.small { padding:7px 10px; font-size:.9rem; }
.card { background:#fff; border:1px solid #dfe4df; border-radius:10px; padding:20px; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:22px; }
.stat strong { display:block; font-size:1.8rem; }
.stat span { color:#687168; }
.grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.field.full { grid-column:1/-1; }
label { display:block; font-weight:600; margin-bottom:6px; }
input,select,textarea { width:100%; border:1px solid #cbd2cc; border-radius:6px; padding:10px; background:#fff; font:inherit; }
textarea { min-height:120px; resize:vertical; }
.table-wrap { overflow-x:auto; }
table { width:100%; border-collapse:collapse; background:#fff; }
th,td { padding:11px 10px; border-bottom:1px solid #e2e6e2; text-align:left; vertical-align:top; }
th { background:#f0f3ef; font-size:.9rem; }
.badge { display:inline-block; padding:3px 8px; border-radius:999px; background:#e6ece7; font-size:.82rem; }
.actions { display:flex; gap:7px; flex-wrap:wrap; }
.alert { padding:12px 15px; border-radius:7px; margin-bottom:18px; }
.alert.success { background:#dff1e2; color:#205a2b; }
.alert.error { background:#f8dfdd; color:#7b2923; }
.alert.warning { background:#fff0c7; color:#684d00; }
.search-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr auto; gap:10px; align-items:end; }
.item-header { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:20px; }
.photo-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; }
.photo img { width:100%; height:150px; object-fit:cover; border-radius:7px; display:block; }
.muted { color:#69736b; }
.kv { display:grid; grid-template-columns:180px 1fr; gap:8px 15px; }
.kv dt { font-weight:600; }
.kv dd { margin:0; }
.login { max-width:430px; margin:70px auto; }
hr { border:0; border-top:1px solid #e1e5e1; margin:22px 0; }
@media (max-width:800px) {
    .stats,.grid-2,.grid-3,.form-grid,.search-grid { grid-template-columns:1fr; }
    .field.full { grid-column:auto; }
    .item-header { flex-direction:column; }
    .kv { grid-template-columns:1fr; }
}
