:root{
  --brand:#2f6b3f;
  --text:#1b1f23;
  --muted:#6b7280;
  --bg:#ffffff;
  --soft:#f5f7f6;
  --border:#e5e7eb;
  --danger:#b42318;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.45;
}
a{color:inherit}
.container{max-width:1100px;margin:0 auto;padding:0 16px}

.topbar{
  border-bottom:1px solid var(--border);
  background:linear-gradient(0deg, #fff, #fff);
}
.topbar__inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;
  padding:14px 0;
}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand__link{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand__logo{height:40px;width:auto;display:block}
.brand__logo2{height:34px;width:auto;opacity:.9}
.brand__name{font-weight:750;letter-spacing:.2px}

.nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.nav a{
  text-decoration:none;
  padding:8px 10px;
  border-radius:10px;
  color:var(--text);
}
.nav a:hover{background:var(--soft)}

.main{padding:22px 0 40px}

.hero{
  background:var(--soft);
  border:1px solid var(--border);
  border-radius:18px;
  padding:18px;
}
.hero h1{margin:0 0 8px;font-size:28px}
.hero p{margin:0;color:var(--muted)}

.grid{display:grid;gap:16px}
.grid--2{grid-template-columns:repeat(2, minmax(0,1fr))}
@media (max-width: 820px){.grid--2{grid-template-columns:1fr}}

.card{
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  padding:16px;
}
.card h2{margin:0 0 12px;font-size:18px}

.alert{border-radius:14px;padding:12px 14px;margin:0 0 14px}
.alert--error{background:#fff1f2;border:1px solid #fecdd3;color:#7f1d1d}
.alert--success{background:#ecfdf5;border:1px solid #bbf7d0;color:#14532d}

.form-row{display:grid;gap:10px;margin-bottom:12px}
label{font-size:13px;color:#111827;font-weight:650}
input[type=text], input[type=email], input[type=password], input[type=url], textarea, select{
  width:100%;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  font-size:14px;
  background:#fff;
}
.input--error{border-color:var(--danger)}
textarea{min-height:110px;resize:vertical}
.help{font-size:12px;color:var(--muted)}
.form-error{font-size:12px;color:var(--danger);margin-top:6px}

.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid var(--border);
  background:#fff;
  text-decoration:none;
  font-weight:650;
  cursor:pointer;
}
.btn--primary{background:var(--brand);border-color:var(--brand);color:#fff}
.btn--primary:hover{filter:brightness(0.95)}
.btn--ghost:hover{background:var(--soft)}
.btn--danger{background:var(--danger);border-color:var(--danger);color:#fff}

.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:12px;color:var(--muted)}

.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:top;font-size:14px}
.table th{text-align:left;color:#374151;font-size:12px;text-transform:uppercase;letter-spacing:.06em}

.footer{border-top:1px solid var(--border);background:#fff}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 0;color:var(--muted);font-size:13px}
.footer__text a{color:inherit}
.footer__logo2{height:28px;width:auto;opacity:.9;display:block}

.fieldset{border:1px dashed var(--border);border-radius:14px;padding:12px;margin:14px 0}
.fieldset legend{padding:0 8px;color:var(--muted);font-size:12px}

.list-inputs{display:grid;gap:8px}
.list-item{display:flex;gap:8px}
.list-item input{flex:1}

.small{font-size:12px;color:var(--muted)}
