:root {
    --green: #006633;
    --gold: #d4af37;
    --border: #d7dfd8;
    --bg: #f5f7f6;
    --text: #1c1c1c;
}
body { margin:0; font-family: Arial, Helvetica, sans-serif; background:var(--bg); color:var(--text); }
.topbar { background:var(--green); color:#fff; padding:14px 22px; display:flex; justify-content:space-between; align-items:center; border-bottom:4px solid var(--gold); }
.topbar a { color:#fff; text-decoration:none; margin-left:14px; }
.brand { font-weight:700; }
.container { max-width:1200px; margin:24px auto; padding:0 16px 40px; }
.card { background:#fff; border:1px solid var(--border); border-radius:12px; padding:18px; margin-bottom:16px; box-shadow:0 6px 18px rgba(0,0,0,.05); }
.grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:12px; }
label { display:block; font-weight:700; margin-bottom:6px; }
input[type=text], input[type=password], input[type=number], select, textarea, input[type=file] { width:100%; padding:10px; border:1px solid #cbd5ce; border-radius:8px; box-sizing:border-box; }
button, .btn { display:inline-block; padding:10px 14px; background:var(--green); color:#fff; border:none; border-radius:8px; cursor:pointer; text-decoration:none; }
button.secondary, .btn.secondary { background:#666; }
button.danger, .btn.danger { background:#a12622; }
table { width:100%; border-collapse:collapse; background:#fff; }
th, td { border:1px solid var(--border); padding:10px; vertical-align:top; }
th { background:#f1f5f2; text-align:left; }
.alert { padding:12px 14px; border-radius:8px; margin-bottom:14px; }
.alert.success { background:#edf9f0; border:1px solid #b9e3c0; color:#185a2a; }
.alert.error { background:#fff1f0; border:1px solid #f0c4bf; color:#8c1d18; }
.muted { color:#e9f0ea; font-size:.93rem; }
.small { font-size:.9rem; color:#555; }
.actions a, .actions form { display:inline-block; margin-right:6px; }
