/* ============================================================
   DIVOTLOG – CD-Farben über die TS24-Tokens (Beschluss K3/UI:
   Aufbau, Font, Icons = TorService24; Logo + Farben = Divotlog-CD)
   ============================================================ */
:root, [data-theme="light"] {
  --brand-primary: #1E6F5A;
  --brand-primary-hover: #0F3D32;
  --brand-primary-light: #E4F3E2;
  --brand-primary-text: #0F3D32;
  --brand-primary-rgb: 30, 111, 90;
  --sidebar-bg: #0F3D32;
  --sidebar-text: #B9CFC8;
  --sidebar-hover: rgba(255,255,255,0.07);
  --sidebar-active-bg: rgba(109,190,106,0.18);
  --sidebar-active-text: #A7D46F;
  --sidebar-border: rgba(255,255,255,0.08);
  --sidebar-category-text: #7FA69A;
}
[data-theme="dark"] {
  --brand-primary: #6DBE6A;
  --brand-primary-hover: #A7D46F;
  --brand-primary-light: rgba(109,190,106,0.16);
  --brand-primary-text: #A7D46F;
  --sidebar-bg: #0A2A23;
  --sidebar-active-bg: rgba(109,190,106,0.20);
  --sidebar-active-text: #A7D46F;
}
/* Divotlog-spezifische Ergänzungen (klein halten!) */
.sidebar-brand svg { display:block; }
.login-page { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px;
  background:linear-gradient(135deg,#0F3D32,#1E6F5A); }
.login-card { width:100%; max-width:400px; background:var(--card-bg); border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg); padding:28px 28px 22px; }
.login-brand { display:flex; justify-content:center; margin-bottom:18px; }
.form-grid.cols-3 { grid-template-columns:1fr 1fr auto; }
.form-grid.cols-4 { grid-template-columns:repeat(3,1fr) auto; }
.form-grid.cols-5 { grid-template-columns:repeat(4,1fr) auto; }

.form-grid .form-group { margin-bottom:0; }
@media (max-width:900px){ .form-grid.cols-3,.form-grid.cols-4,.form-grid.cols-5 { grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .form-grid,.form-grid.cols-3,.form-grid.cols-4,.form-grid.cols-5 { grid-template-columns:1fr; } }
.cloudconfig { width:100%; font-family:var(--font-mono); font-size:12px; border:1px solid var(--border);
  border-radius:var(--radius-sm); background:var(--bg); color:var(--text); padding:10px; }
.hint-inline { font-size:var(--font-sm); color:var(--text-muted); display:flex; align-items:center; gap:8px; margin:6px 0 10px; }
.matrix-mod td { background:var(--brand-primary-light); color:var(--brand-primary-text); font-weight:700; }
.color-badge { display:inline-flex; align-items:center; gap:6px; }
.color-badge i { width:12px; height:12px; border-radius:3px; display:inline-block; }
/* Brand-Bausteine (UI\Brand aus dem CD, Klassen aus 1.x style.css) */
:root { --cd-dark:#0F3D32; --cd-mid:#1E6F5A; --cd-green:#6DBE6A; --cd-light:#A7D46F; }
.brand-logo { display:inline-flex; align-items:center; gap:10px; line-height:1; color:#fff; }
.brand-signet { display:block; flex:0 0 auto; }
.brand-word { font-weight:700; font-size:21px; letter-spacing:-0.02em; color:inherit; white-space:nowrap; }
.brand-word__accent { color:var(--cd-green); }
.login-brand .brand-logo { color:var(--cd-dark); }
.login-brand .brand-word { font-size:26px; }
.stat-icon { background:var(--brand-primary-light); color:var(--brand-primary); }

/* ---- Ausrichtung (Feedback Ralf 03.09.) ---- */
/* 2) Aktionsspalten: festes Raster -> Knoepfe stehen zeilenuebergreifend exakt uebereinander */
.action-cell.actions-2 { display:grid; grid-template-columns:repeat(2,150px); gap:6px; justify-content:end; }
.action-cell.actions-3 { display:grid; grid-template-columns:repeat(3,150px); gap:6px; justify-content:end; }
.action-cell.actions-2 form, .action-cell.actions-3 form { display:contents; }
.action-cell.actions-2 .btn, .action-cell.actions-3 .btn { width:100%; justify-content:center; height:34px; }
.action-cell .slot-empty { display:block; }

/* ---- Kompakte Formularreihe (Feedback Ralf 03.09., p1.3c) ---- */
.form-grid .form-group input, .form-grid .form-group select { height:34px; padding:5px 10px; font-size:var(--font-sm); }
.form-grid .form-group label { font-size:var(--font-xs); }
.form-grid .form-btn { display:flex; flex-direction:column; justify-content:flex-end; }
.form-grid .form-btn .btn { height:34px; white-space:nowrap; padding-top:0; padding-bottom:0; }

/* Knopf-Spalte: nur so breit wie die Beschriftung (p1.3d) */
.form-grid .form-btn .btn { width:auto; }
