:root { --brand: #f9b232; }

.ea body, body {
  background: #ffffff;
  color: #111827;
}

.ea .sidebar { background: #ffffff; border-right: 1px solid #eee; }
.ea .menu .menu-item.active > a, .ea .menu .menu-item > a:hover { color: #111827; background: rgba(249,178,50,0.15); }
.ea .menu .menu-item.active > a::before { background: var(--brand); }
.ea .logo { color: #111827; font-weight: 700; letter-spacing: .2px; }

.btn-brand { background-color: var(--brand); color: #111827; border-radius: 8px; }
.btn-brand:hover { filter: brightness(0.95); }
.btn-brand:focus { outline: 3px solid rgba(249,178,50,0.5); outline-offset: 2px; }
.btn-secondary { background-color: #f3f4f6; color: #111827; border: 1px solid #e5e7eb; border-radius: 8px; }
.btn-secondary:hover { filter: brightness(0.98); }
.btn-secondary:focus { outline: 3px solid rgba(17,24,39,0.15); outline-offset: 2px; }
.text-brand { color: var(--brand); }
.bg-brand { background-color: var(--brand); }

/* Kartenstil für Dashboard */
.card {
  border: 1px solid #eee;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04);
}
.card .card-title { font-size: 13px; color: #6b7280; border-bottom: 1px solid #f1f1f1; padding: 12px 16px; }
.card .card-value { font-size: 28px; font-weight: 700; padding: 18px 16px; }
.card .card-link { padding: 0 16px 14px; }
.card .card-link a { color: var(--brand); text-decoration: none; }
.card .card-link a:hover { text-decoration: underline; }

/* Formulare – klare Felder, starke Labels, Fokus deutlich */
.form-section { border: 1px solid #e5e7eb; border-radius: 12px; background: #ffffff; }
.form-section-header { padding: 16px; border-bottom: 1px solid #f1f1f1; }
.form-section-title { font-weight: 600; font-size: 15px; color: #111827; }
.form-section-hint { font-size: 12px; color: #6b7280; margin-top: 4px; }
.form-section-body { padding: 16px; }

.form-row { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 768px) { .form-row-2 { grid-template-columns: repeat(2, 1fr); } .form-row-3 { grid-template-columns: repeat(3, 1fr); } }

.form-label { display: block; font-weight: 600; font-size: 14px; color: #111827; margin-bottom: 6px; }
.form-hint { font-size: 12px; color: #6b7280; margin-top: 6px; }
.form-control { width: 100%; padding: 11px 12px; border: 1.5px solid #d1d5db; border-radius: 10px; background: #fff; color: #111827; }
.form-control::placeholder { color: #9ca3af; }
.form-control:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(249,178,50,0.35); outline: none; }
.form-checkbox { width: 18px; height: 18px; border: 1.5px solid #d1d5db; border-radius: 4px; }
.form-checkbox:focus { box-shadow: 0 0 0 3px rgba(249,178,50,0.35); outline: none; }

.form-actions { display: flex; gap: 12px; justify-content: flex-start; padding-top: 8px; }

