:root { --rkp-cream: #f1faee; }
[data-theme="dark"] .rkp-fb-ok { color: #ecfdf5 !important; }
[data-theme="dark"] .rkp-fb-ok span { color: #ecfdf5 !important; }
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

/**
 * RheinKompass Portal — Frontend Intranet Styles
 * Brand: Rheinblau #1B3A5F · Gold #E8B86A · Sandstein #FAF6EC · Anthrazit #1A1A1A
 */

:root {
  --rkp-primary: #1a2332;
  --rkp-primary-dark: #0f1620;
  --rkp-primary-light: #2a3a52;
  --rkp-accent: #2d8b8b;
  --rkp-accent-dark: #226d6d;
  --rkp-surface: var(--rkp-cream);
  --rkp-surface-dark: #e3f1de;
  --rkp-bg: #FFFFFF;
  --rkp-text: #1a2332;
  --rkp-muted: #5a6b80;
  --rkp-border: #d6e2dd;
  --rkp-success: #2d8b8b;
  --rkp-warning: #b45309;
  --rkp-error: #b91c1c;
  --rkp-seafoam: #a8dadc;
  --rkp-radius: 10px;
  --rkp-radius-sm: 6px;
  --rkp-shadow: 0 1px 3px rgba(26,35,50,0.08), 0 4px 12px rgba(26,35,50,0.05);
  --rkp-font: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;
  --rkp-font-display: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
/* =========================================================================
   Layout / Reset (when used inside Hello Elementor)
   ========================================================================= */

.rkp-portal-page {
  background: var(--rkp-surface);
  min-height: 100vh;
  font-family: var(--rkp-font);
  color: var(--rkp-text);
}

/* Login page */
.rkp-login-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 80vh;
  padding: 40px 20px;
  background: linear-gradient(135deg, var(--rkp-surface) 0%, #f5efde 100%);
}

.rkp-login-card {
  background: var(--rkp-bg);
  border-radius: var(--rkp-radius);
  box-shadow: var(--rkp-shadow);
  padding: 40px;
  max-width: 420px;
  width: 100%;
  border: 1px solid var(--rkp-border);
}

.rkp-login-header {
  text-align: center;
  margin-bottom: 24px;
}

.rkp-login-logo {
  margin-bottom: 16px;
}

.rkp-login-card h2 {
  font-family: var(--rkp-font-display);
  font-size: 28px;
  margin: 0 0 4px;
  color: var(--rkp-primary);
  font-weight: 500;
}

.rkp-login-status {
  margin-top: 12px;
  padding: 10px 14px;
  border-radius: var(--rkp-radius-sm);
  display: none;
  font-size: 14px;
}
.rkp-login-status.error { display: block; background: #fee2e2; color: var(--rkp-error); border: 1px solid #fca5a5; }
.rkp-login-status.success { display: block; background: #dcfce7; color: var(--rkp-success); border: 1px solid #86efac; }
.rkp-login-status.loading { display: block; background: #fef3c7; color: var(--rkp-warning); border: 1px solid #fcd34d; }

/* =========================================================================
   Components: Cards, Buttons, Forms
   ========================================================================= */

.rkp-card {
  background: var(--rkp-bg);
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  padding: 24px;
  margin-bottom: 20px;
  box-shadow: var(--rkp-shadow);
}

.rkp-card h2, .rkp-card h3 {
  margin-top: 0;
  font-family: var(--rkp-font-display);
  color: var(--rkp-primary);
  font-weight: 500;
}

.rkp-card h3 { font-size: 18px; margin-bottom: 16px; }

.rkp-btn {
  display: inline-block;
  padding: 10px 18px;
  border-radius: var(--rkp-radius-sm);
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all 0.15s;
  font-family: inherit;
  line-height: 1.4;
}

.rkp-btn-primary {
  background: var(--rkp-primary);
  color: var(--rkp-bg);
  border-color: var(--rkp-primary);
}
.rkp-btn-primary:hover { background: var(--rkp-primary-light); border-color: var(--rkp-primary-light); color: var(--rkp-bg); }

.rkp-btn-accent {
  background: var(--rkp-accent);
  color: var(--rkp-primary);
  border-color: var(--rkp-accent);
}
.rkp-btn-accent:hover { background: var(--rkp-accent-dark); }

.rkp-btn-ghost {
  background: transparent;
  color: var(--rkp-primary);
  border-color: var(--rkp-border);
}
.rkp-btn-ghost:hover { background: var(--rkp-surface); border-color: var(--rkp-primary); }

.rkp-btn-block { display: block; width: 100%; text-align: center; }
.rkp-btn-sm { padding: 6px 12px; font-size: 13px; }

.rkp-form label { display: block; font-weight: 500; margin-bottom: 4px; color: var(--rkp-text); font-size: 14px; }
.rkp-form input[type="text"],
.rkp-form input[type="email"],
.rkp-form input[type="password"],
.rkp-form input[type="number"],
.rkp-form input[type="date"],
.rkp-form input[type="datetime-local"],
.rkp-form input[type="file"],
.rkp-form select,
.rkp-form textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius-sm);
  background: var(--rkp-bg);
  font-size: 14px;
  font-family: inherit;
  color: var(--rkp-text);
  box-sizing: border-box;
}
.rkp-form input:focus,
.rkp-form select:focus,
.rkp-form textarea:focus {
  outline: 2px solid var(--rkp-primary);
  outline-offset: -1px;
  border-color: var(--rkp-primary);
}
.rkp-form p { margin: 0 0 14px; }
.rkp-checkbox label { font-weight: 400; }
.rkp-checkbox input { margin-right: 6px; }

.rkp-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.rkp-form-grid .rkp-form-full { grid-column: 1 / -1; }
@media (max-width: 600px) { .rkp-form-grid { grid-template-columns: 1fr; } }

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

/* =========================================================================
   Notices
   ========================================================================= */
.rkp-notice {
  padding: 14px 18px;
  border-radius: var(--rkp-radius-sm);
  margin: 16px 0;
  border-left: 4px solid var(--rkp-accent);
  background: var(--rkp-surface);
}
.rkp-notice-warning { border-left-color: var(--rkp-warning); background: #fef3c7; }
.rkp-notice-error { border-left-color: var(--rkp-error); background: #fee2e2; }
.rkp-notice-success { border-left-color: var(--rkp-success); background: #dcfce7; }

/* =========================================================================
   Navigation (top bar inside content)
   ========================================================================= */
.rkp-nav {
  background: var(--rkp-primary);
  border-radius: var(--rkp-radius);
  padding: 4px;
  margin-bottom: 24px;
  box-shadow: var(--rkp-shadow);
}
.rkp-nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 2px;
}
.rkp-nav a.rkp-nav-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  color: rgba(255,255,255,0.85);
  text-decoration: none;
  border-radius: var(--rkp-radius-sm);
  font-size: 14px;
  font-weight: 500;
  transition: all 0.15s;
}
.rkp-nav a.rkp-nav-link:hover { background: rgba(255,255,255,0.1); color: var(--rkp-bg); }
.rkp-nav a.rkp-nav-active { background: var(--rkp-accent); color: var(--rkp-primary); }
.rkp-nav-icon { font-size: 16px; }

/* User card (top right) */
.rkp-user-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--rkp-bg);
  padding: 8px 12px;
  border-radius: var(--rkp-radius);
  border: 1px solid var(--rkp-border);
  box-shadow: var(--rkp-shadow);
  margin-bottom: 16px;
}
.rkp-user-card img { border-radius: 50%; }
.rkp-user-meta { flex: 1; }
.rkp-user-name { font-weight: 600; font-size: 14px; color: var(--rkp-text); }
.rkp-user-role { font-size: 12px; color: var(--rkp-muted); text-transform: uppercase; letter-spacing: 0.5px; }
.rkp-logout-link { font-size: 13px; color: var(--rkp-primary); text-decoration: none; padding: 6px 12px; border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius-sm); }
.rkp-logout-link:hover { background: var(--rkp-surface); }

/* =========================================================================
   Tables (reused for Pipeline, Zeit, etc.)
   ========================================================================= */
.rkp-table-wrap { overflow-x: auto; margin: 0 -8px; padding: 0 8px; }
.rkp-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--rkp-bg);
  border-radius: var(--rkp-radius-sm);
  overflow: hidden;
  font-size: 14px;
}
.rkp-table th {
  background: var(--rkp-surface);
  padding: 10px 14px;
  text-align: left;
  font-weight: 600;
  color: var(--rkp-primary);
  border-bottom: 2px solid var(--rkp-border);
}
.rkp-table td { padding: 10px 14px; border-bottom: 1px solid var(--rkp-border); vertical-align: top; }
.rkp-table tbody tr:hover { background: var(--rkp-surface); }
.rkp-badge { display: inline-block; padding: 2px 8px; border-radius: 12px; font-size: 11px; font-weight: 600; background: var(--rkp-surface); color: var(--rkp-primary); }
.rkp-tag { display: inline-block; padding: 2px 8px; border-radius: 12px; font-size: 11px; background: var(--rkp-surface); color: var(--rkp-primary); margin-left: 6px; }
.rkp-tag-lg { padding: 4px 12px; font-size: 13px; }
.rkp-tag-sm { padding: 1px 6px; font-size: 10px; }

/* =========================================================================
   Section header
   ========================================================================= */
.rkp-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 20px 0 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--rkp-accent);
}
.rkp-section-header h3 {
  margin: 0;
  font-family: var(--rkp-font-display);
  color: var(--rkp-primary);
  font-size: 20px;
  font-weight: 500;
}

/* =========================================================================
   KI-Assistent Chat
   ========================================================================= */
.rkp-chat-wrap { max-width: 900px; margin: 0 auto; }
.rkp-chat-quickactions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.rkp-chat-log {
  background: var(--rkp-bg);
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  padding: 20px;
  min-height: 320px;
  max-height: 60vh;
  overflow-y: auto;
  margin-bottom: 12px;
}
.rkp-chat-msg { display: flex; gap: 12px; margin-bottom: 16px; }
.rkp-chat-avatar {
  flex-shrink: 0;
  width: 36px; height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 600;
}
.rkp-chat-bot .rkp-chat-avatar { background: var(--rkp-primary); color: var(--rkp-accent); }
.rkp-chat-user .rkp-chat-avatar { background: var(--rkp-accent); color: var(--rkp-primary); }
.rkp-chat-bubble {
  flex: 1;
  background: var(--rkp-surface);
  padding: 12px 16px;
  border-radius: var(--rkp-radius-sm);
  white-space: pre-wrap;
  line-height: 1.6;
  font-size: 14px;
}
.rkp-chat-user .rkp-chat-bubble { background: var(--rkp-primary); color: var(--rkp-bg); }
.rkp-chat-msg.loading .rkp-chat-bubble::after {
  content: "▋"; animation: rkp-blink 1s steps(1) infinite;
}
@keyframes rkp-blink { 50% { opacity: 0; } }
.rkp-chat-form { display: flex; gap: 10px; align-items: flex-end; }
.rkp-chat-form textarea { flex: 1; padding: 10px; border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius-sm); font-family: inherit; font-size: 14px; resize: vertical; }

/* =========================================================================
   Calendar
   ========================================================================= */
.rkp-kalender-wrap { max-width: 900px; }
.rkp-kalender-list { list-style: none; padding: 0; margin: 0; }
.rkp-kalender-item {
  display: flex;
  gap: 20px;
  padding: 16px;
  background: var(--rkp-bg);
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  margin-bottom: 10px;
  align-items: flex-start;
}
.rkp-kalender-date {
  flex-shrink: 0;
  text-align: center;
  background: var(--rkp-primary);
  color: var(--rkp-bg);
  padding: 10px 14px;
  border-radius: var(--rkp-radius-sm);
  min-width: 70px;
}
.rkp-kalender-weekday { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: var(--rkp-accent); }
.rkp-kalender-day { font-size: 28px; font-weight: 700; line-height: 1; margin: 4px 0; }
.rkp-kalender-month { font-size: 11px; color: rgba(255,255,255,0.8); }
.rkp-kalender-info { flex: 1; }
.rkp-kalender-title { font-weight: 600; font-size: 15px; color: var(--rkp-text); }
.rkp-kalender-meta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 6px; font-size: 12px; color: var(--rkp-muted); }
.rkp-kalender-desc { margin-top: 8px; font-size: 13px; color: var(--rkp-text); }

/* =========================================================================
   Project detail
   ========================================================================= */
.rkp-projekt-detail .rkp-back-link { display: inline-block; margin-bottom: 12px; color: var(--rkp-primary); text-decoration: none; font-size: 13px; }
.rkp-projekt-detail .rkp-back-link:hover { text-decoration: underline; }
.rkp-projekt-header { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.rkp-projekt-header h1 { margin: 0; font-family: var(--rkp-font-display); font-weight: 500; color: var(--rkp-primary); font-size: 32px; }

.rkp-projekt-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}
.rkp-stat {
  background: var(--rkp-bg);
  border: 1px solid var(--rkp-border);
  border-left: 4px solid var(--rkp-accent);
  padding: 14px 16px;
  border-radius: var(--rkp-radius-sm);
}
.rkp-stat-label { font-size: 11px; color: var(--rkp-muted); text-transform: uppercase; letter-spacing: 0.5px; }
.rkp-stat-value { font-size: 18px; font-weight: 600; color: var(--rkp-primary); margin-top: 4px; }

.rkp-projekt-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.rkp-card-wide { grid-column: 1 / -1; }
@media (max-width: 800px) { .rkp-projekt-grid { grid-template-columns: 1fr; } }

.rkp-doc-list, .rkp-mini-list, .rkp-projekt-list { list-style: none; padding: 0; margin: 0; }
.rkp-doc-list li, .rkp-mini-list li, .rkp-projekt-list li {
  padding: 8px 0;
  border-bottom: 1px solid var(--rkp-border);
  font-size: 14px;
}
.rkp-doc-list li:last-child, .rkp-mini-list li:last-child, .rkp-projekt-list li:last-child { border-bottom: none; }
.rkp-doc-list a, .rkp-projekt-list a { color: var(--rkp-primary); text-decoration: none; }
.rkp-doc-list a:hover, .rkp-projekt-list a:hover { text-decoration: underline; }
.rkp-count { color: var(--rkp-muted); font-weight: 400; font-size: 13px; }
.rkp-upload-form { margin-top: 16px; padding-top: 16px; border-top: 1px dashed var(--rkp-border); }

/* =========================================================================
   Dashboard reuse
   ========================================================================= */
.rkp-dashboard h2 { font-family: var(--rkp-font-display); color: var(--rkp-primary); font-weight: 500; margin-bottom: 24px; }
.rkp-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.rkp-section { background: var(--rkp-bg); border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius); padding: 20px; }
.rkp-section h3 { margin-top: 0; font-family: var(--rkp-font-display); color: var(--rkp-primary); }
@media (max-width: 800px) { .rkp-grid { grid-template-columns: 1fr; } }

/* Inherit existing rki-* classes too — if rheinkompass-intranet renders dashboard, these match */
.rki-section { background: var(--rkp-bg); border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius); padding: 20px; margin-bottom: 16px; }
.rki-section h3 { margin-top: 0; font-family: var(--rkp-font-display); color: var(--rkp-primary); font-weight: 500; }
.rki-table-wrap { overflow-x: auto; }
.rki-table { width: 100%; border-collapse: collapse; }
.rki-table th { background: var(--rkp-surface); padding: 10px; text-align: left; color: var(--rkp-primary); border-bottom: 2px solid var(--rkp-border); }
.rki-table td { padding: 10px; border-bottom: 1px solid var(--rkp-border); }
.rki-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 800px) { .rki-grid { grid-template-columns: 1fr; } }
.rki-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.rki-card { background: var(--rkp-bg); border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius); padding: 16px; }
.rki-card h3 { margin-top: 0; color: var(--rkp-primary); font-size: 16px; }
.rki-card dl { margin: 8px 0; font-size: 13px; }
.rki-card dt { font-weight: 600; color: var(--rkp-muted); display: inline-block; min-width: 80px; }
.rki-card dd { display: inline; margin: 0; }
.rki-card dd::after { content: ""; display: block; height: 4px; }
.rki-doc-list { list-style: none; padding: 0; margin: 0; }
.rki-doc-list li { padding: 6px 0; border-bottom: 1px solid var(--rkp-border); font-size: 14px; }
.rki-doc-cat { background: var(--rkp-accent); color: var(--rkp-primary); padding: 2px 8px; border-radius: 12px; font-size: 11px; font-weight: 600; margin-right: 8px; }
.rki-form input, .rki-form select, .rki-form textarea { width: 100%; padding: 8px; border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius-sm); }
.rki-btn { background: var(--rkp-primary); color: var(--rkp-bg); padding: 10px 18px; border: none; border-radius: var(--rkp-radius-sm); cursor: pointer; font-weight: 500; }
.rki-btn:hover { background: var(--rkp-primary-light); }
.rki-notice { padding: 14px; background: var(--rkp-surface); border-left: 4px solid var(--rkp-accent); border-radius: var(--rkp-radius-sm); margin: 16px 0; }

/* ==================== v2 additions ==================== */
.rkp-foerder-list-wrap, .rkp-idee-list-wrap, .rkp-forum-wrap { margin: 16px 0; }
.rkp-foerder-table, .rkp-forum-table { width: 100%; border-collapse: collapse; margin-top: 12px; font-size: 14px; }
.rkp-foerder-table th, .rkp-forum-table th { background: var(--rkp-surface); padding: 10px; text-align: left; color: var(--rkp-primary); border-bottom: 2px solid var(--rkp-border); }
.rkp-foerder-table td, .rkp-forum-table td { padding: 10px; border-bottom: 1px solid var(--rkp-border); }
.rkp-foerder-table tr:hover, .rkp-forum-table tr:hover { background: var(--rkp-surface); }
.rkp-frist-urgent { color: #B86A1E; font-weight: 600; }
.rkp-frist-expired { color: #B33A3A; text-decoration: line-through; }
.rkp-foerder-detail, .rkp-idee-detail, .rkp-thread-detail { margin: 20px 0; }
.rkp-foerder-header { border-bottom: 2px solid var(--rkp-border); padding-bottom: 16px; margin-bottom: 20px; }
.rkp-foerder-badges { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.rkp-foerder-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; margin: 16px 0 24px; }
.rkp-foerder-stats .rkp-stat { background: var(--rkp-surface); border-radius: var(--rkp-radius-sm); padding: 12px; }
.rkp-foerder-stats .rkp-stat-label { font-size: 12px; color: var(--rkp-muted); text-transform: uppercase; }
.rkp-foerder-stats .rkp-stat-value { font-size: 18px; font-weight: 600; color: var(--rkp-primary); margin-top: 4px; }
.rkp-idee-cards { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.rkp-idee-card { background: var(--rkp-bg); border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius); padding: 14px; }
.rkp-idee-card a { color: var(--rkp-primary); text-decoration: none; }
.rkp-idee-meta { font-size: 12px; color: var(--rkp-muted); margin-top: 6px; }
.rkp-idee-list { list-style: none; padding: 0; }
.rkp-idee-list .rkp-idee-item { padding: 10px 0; border-bottom: 1px solid var(--rkp-border); }
.rkp-convert-box { background: linear-gradient(135deg, var(--rkp-surface), var(--rkp-bg)); border-left: 4px solid var(--rkp-accent); }
.rkp-tag-status { background: var(--rkp-primary); color: var(--rkp-bg); }
.rkp-tag-success { background: #C8E6D1; color: #1E5C32; }
.rkp-tag-muted { background: #E5E0D3; color: var(--rkp-muted); }
.rkp-tag-sm { font-size: 11px; padding: 2px 8px; }
.rkp-notice-info { background: #E0EAF2; border-left-color: #3F7BB0; }
.rkp-notice-success { background: #DAEEDF; border-left-color: #3CA56C; }
.rkp-notice-warning { background: #FBE8C8; border-left-color: #B86A1E; }
.rkp-forum-kats { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0; }
.rkp-forum-kats .rkp-active { background: var(--rkp-primary); color: var(--rkp-bg); }
.rkp-projekt-summary { padding: 12px; background: var(--rkp-surface); border-radius: var(--rkp-radius-sm); }
.rkp-dashboard-greeting { padding: 20px 0; border-bottom: 2px solid var(--rkp-border); margin-bottom: 24px; }
.rkp-dashboard-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.rkp-mini-list { list-style: none; padding: 0; }
.rkp-mini-list li { padding: 8px 0; border-bottom: 1px solid var(--rkp-border); font-size: 14px; }
.rkp-mini-list li:last-child { border-bottom: none; }
.rkp-mini-list a { color: var(--rkp-primary); text-decoration: none; }
#rkp-fullcalendar { background: var(--rkp-bg); border-radius: var(--rkp-radius); padding: 12px; margin: 12px 0; }
.fc .fc-button-primary { background: var(--rkp-primary); border-color: var(--rkp-primary); }
.fc .fc-toolbar-title { color: var(--rkp-primary); }
.rkp-kalender-legend { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; color: var(--rkp-muted); align-items: center; }
.rkp-legend-item { display: inline-flex; align-items: center; gap: 4px; }
.rkp-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; }
.rkp-back-link { display: inline-block; margin-bottom: 12px; color: var(--rkp-muted); text-decoration: none; }
.rkp-back-link:hover { color: var(--rkp-primary); }

/* ========================================================================
   Mobile + Tablet responsive (v2.2)
   ======================================================================== */

/* Tüm temel layout'lar mobilde tek sütun olsun */
@media (max-width: 800px) {
  body { font-size: 16px; -webkit-text-size-adjust: 100%; }

  /* Containers/sections */
  .rkp-foerder-detail,
  .rkp-idee-detail,
  .rkp-thread-detail,
  .rkp-dashboard,
  .rkp-kalender-wrap,
  .rkp-projekt-detail,
  .rkp-foerder-list-wrap,
  .rkp-idee-list-wrap,
  .rkp-forum-wrap,
  .rkp-admin-pending {
    padding: 8px;
    margin: 8px 0;
  }

  /* Section header → stack on mobile */
  .rkp-section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .rkp-section-header .rkp-btn { width: 100%; }

  /* Navigation → 2 sütun grid */
  .rkp-nav ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
  }
  .rkp-nav-link {
    padding: 10px 8px;
    font-size: 13px;
    justify-content: center;
  }

  /* User card */
  .rkp-user-card {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }

  /* Stats grid → 2 sütun */
  .rkp-foerder-stats,
  .rkp-projekt-stats {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .rkp-stat-value { font-size: 16px; }

  /* Dashboard grid → tek sütun */
  .rkp-dashboard-grid { grid-template-columns: 1fr; }

  /* Tablolar yatay kaydırılabilir */
  .rkp-foerder-table,
  .rkp-forum-table,
  .rkp-pending-table,
  .rkp-table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    font-size: 13px;
  }
  .rkp-foerder-table th,
  .rkp-foerder-table td,
  .rkp-forum-table th,
  .rkp-forum-table td,
  .rkp-pending-table th,
  .rkp-pending-table td { padding: 6px 8px; }

  /* Form grids → tek sütun */
  .rkp-form-grid { grid-template-columns: 1fr; gap: 8px; }
  .rkp-form-full { grid-column: 1; }
  .rkp-form input,
  .rkp-form select,
  .rkp-form textarea {
    width: 100%;
    padding: 12px;
    font-size: 16px; /* iOS zoom önler */
    box-sizing: border-box;
  }

  /* Buttons tam genişlik */
  .rkp-btn { padding: 12px 16px; font-size: 15px; }
  .rkp-btn-block { width: 100%; }

  /* Idee cards tek sütun */
  .rkp-idee-cards { grid-template-columns: 1fr; }

  /* Login card kenardan padding az */
  .rkp-login-wrap { padding: 12px; }
  .rkp-login-card { padding: 16px; max-width: 100%; }

  /* Forum kategori butonları */
  .rkp-forum-kats { gap: 4px; }
  .rkp-forum-kats .rkp-btn { font-size: 12px; padding: 6px 10px; }

  /* Kalender legend */
  .rkp-kalender-legend { font-size: 11px; flex-wrap: wrap; }

  /* FullCalendar mobil ayarlamaları */
  #rkp-fullcalendar { padding: 4px; }
  .fc .fc-toolbar.fc-header-toolbar {
    flex-wrap: wrap;
    gap: 6px;
  }
  .fc .fc-toolbar-chunk { display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; }
  .fc .fc-toolbar-title { font-size: 18px !important; }
  .fc .fc-button { padding: 6px 10px; font-size: 13px; }
  .fc-event-title { font-size: 11px; }

  /* Headings mobilde küçült */
  .rkp-foerder-header h1 { font-size: 22px; line-height: 1.2; }
  .rkp-dashboard-greeting h1 { font-size: 22px; }
}

/* Tablet */
@media (min-width: 801px) and (max-width: 1024px) {
  .rkp-foerder-stats,
  .rkp-projekt-stats { grid-template-columns: repeat(2, 1fr); }
  .rkp-dashboard-grid { grid-template-columns: repeat(2, 1fr); }
  .rkp-form-grid { grid-template-columns: 1fr 1fr; }
  .rkp-idee-cards { grid-template-columns: repeat(2, 1fr); }
  .rkp-nav ul { flex-wrap: wrap; }
  .rkp-nav-link { font-size: 13px; padding: 10px 12px; }
}

/* Çok küçük telefonlar */
@media (max-width: 380px) {
  .rkp-foerder-stats,
  .rkp-projekt-stats { grid-template-columns: 1fr; }
  .rkp-nav ul { grid-template-columns: 1fr; }
  .rkp-foerder-header h1, .rkp-dashboard-greeting h1 { font-size: 20px; }
}

/* Admin pending table specifics */
.rkp-admin-pending .rkp-pending-table .rkp-approve,
.rkp-admin-pending .rkp-pending-table .rkp-reject {
  margin: 2px;
}
@media (max-width: 800px) {
  .rkp-pending-table { white-space: normal; }
  .rkp-pending-table td:last-child { display: flex; flex-direction: column; gap: 4px; }
}

/* =========================================================================
   v2.4.2 — Site Shell (Hello-Elementor specific, prefix-free, high-specificity)
   ========================================================================= */

/* Hide WP toolbar and reset its forced top-margin */
html { margin-top: 0 !important; }
html.wp-toolbar { padding-top: 0 !important; }
#wpadminbar { display: none !important; }

/* Hide the theme's site-header that renders the giant pink "RheinKompass Team" title */
header.site-header,
.site-header,
.elementor-location-header,
.ehf-header,
.entry-header { display: none !important; }
.page-id-12 .entry-title, body .entry-title { display: none; }

/* App body */
body.wp-theme-hello-elementor {
  background: var(--rkp-surface);
  font-family: var(--rkp-font);
  color: var(--rkp-text);
  margin: 0;
}

/* Sidebar — replaces .rkp-nav horizontal */
.rkp-sidebar {
  position: fixed; top: 0; left: 0; bottom: 0; width: 240px;
  background: var(--rkp-primary);
  display: flex !important; flex-direction: column !important;
  padding: 24px 0 16px;
  box-shadow: 2px 0 12px rgba(0,0,0,0.06);
  z-index: 9999;
  overflow-y: auto;
}
.rkp-sidebar ul { list-style: none !important; margin: 0 !important; padding: 0 !important; flex: 1 1 auto; display: flex !important; flex-direction: column !important; gap: 0 !important; }
.rkp-sidebar li { margin: 0 !important; padding: 0 !important; display: block !important; }
.rkp-sidebar .rkp-nav-link {
  display: flex !important; align-items: center; gap: 12px;
  padding: 11px 24px;
  color: rgba(241,250,238,0.85) !important;
  text-decoration: none !important;
  font-size: 0.94rem; font-weight: 500;
  border-left: 3px solid transparent;
  transition: all 0.15s ease;
}
.rkp-sidebar .rkp-nav-link:hover { background: rgba(255,255,255,0.06); color: #fff !important; }
.rkp-sidebar .rkp-nav-link.rkp-nav-active {
  background: rgba(45,139,139,0.18); color: #fff !important;
  border-left-color: var(--rkp-accent);
}
.rkp-sidebar .rkp-nav-icon { width: 22px; text-align: center; font-size: 1rem; }
.rkp-sidebar-brand {
  display: flex; align-items: center; gap: 12px;
  padding: 0 22px 24px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 16px;
}
.rkp-sidebar-logo {
  width: 40px; height: 40px;
  background: var(--rkp-accent); color: #fff;
  display: flex; align-items: center; justify-content: center;
  border-radius: 9px; font-weight: 700; font-size: 1rem;
}
.rkp-sidebar-title { color: #fff; font-size: 1.02rem; font-weight: 600; line-height: 1.2; }
.rkp-sidebar-title small { display: block; font-size: 0.72rem; font-weight: 400; color: rgba(255,255,255,0.55); margin-top: 2px; }

/* Sidebar footer — user info + logout */
.rkp-sidebar-foot { margin-top: auto; padding: 16px 22px 8px; border-top: 1px solid rgba(255,255,255,0.08); }
.rkp-sidebar-user { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,0.85); margin-bottom: 10px; }
.rkp-avatar { width: 32px; height: 32px; border-radius: 50%; background: var(--rkp-accent); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 0.85rem; }
.rkp-user-meta { line-height: 1.2; }
.rkp-user-meta strong { display: block; font-size: 0.85rem; color: #fff; font-weight: 600; }
.rkp-user-meta small { color: rgba(255,255,255,0.55); font-size: 0.72rem; }
.rkp-sidebar-logout { display: block; padding: 8px 12px; color: rgba(255,255,255,0.7); text-decoration: none; font-size: 0.85rem; border-radius: 6px; }
.rkp-sidebar-logout:hover { background: rgba(255,255,255,0.06); color: #fff; }

/* Main content shifted right of sidebar */
main, main.site-main, body > main, .site main, .site-content, #content, #page > main {
  margin-left: 240px !important;
  padding: 28px 36px !important;
  max-width: 1240px !important;
  min-height: calc(100vh - 0px);
  box-sizing: border-box;
}

/* Hide default WP page H1 title for cleaner dashboards */
main.site-main > article > header,
main.site-main > .page header.entry-header { display: none; }

/* Dashboard layout */
.rkp-dash { display: flex; flex-direction: column; gap: 22px; }
.rkp-dash-quick { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 4px; }
.rkp-dash-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 22px;
}
@media (max-width: 1100px) { .rkp-dash-grid { grid-template-columns: 1fr; } }

.rkp-card {
  background: #fff;
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  padding: 18px 22px;
  box-shadow: var(--rkp-shadow);
}
.rkp-card-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.rkp-card-head h3 { margin: 0; font-size: 1rem; font-weight: 600; color: var(--rkp-primary); letter-spacing: -0.005em; }
.rkp-card-link { font-size: 0.85rem; color: var(--rkp-accent); text-decoration: none; font-weight: 500; }
.rkp-card-link:hover { color: var(--rkp-accent-dark); }

.rkp-list { list-style: none; margin: 0; padding: 0; }
.rkp-list li {
  display: flex; justify-content: space-between; align-items: center;
  padding: 10px 0; border-top: 1px solid #f0f3ef;
  font-size: 0.92rem;
}
.rkp-list li:first-child { border-top: none; }
.rkp-list li a { color: var(--rkp-text); text-decoration: none; font-weight: 500; }
.rkp-list li a:hover { color: var(--rkp-accent); }
.rkp-list li span { color: var(--rkp-muted); font-size: 0.82rem; }
.rkp-list li.rkp-soon span { color: #c2410c; font-weight: 600; }
.rkp-empty { color: var(--rkp-muted); font-style: italic; margin: 8px 0; }

/* Tables (rki-table override) */
.rki-table, table.rki-table {
  width: 100%; border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  box-shadow: var(--rkp-shadow);
  overflow: hidden;
}
.rki-table th {
  background: #f7fbfa;
  color: var(--rkp-muted);
  font-size: 0.72rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em;
  padding: 12px 14px; text-align: left;
  border-bottom: 1px solid var(--rkp-border);
}
.rki-table td { padding: 13px 14px; border-top: 1px solid #f0f3ef; font-size: 0.92rem; vertical-align: top; }
.rki-table tr:hover td { background: #fafbfa; }
.rki-todo-row td:first-child { font-weight: 500; }

/* Buttons (sade ve baz) */
.rkp-btn, .rki-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 14px;
  background: #fff;
  border: 1px solid var(--rkp-border);
  border-radius: 6px;
  font-size: 0.9rem; font-weight: 500; cursor: pointer;
  text-decoration: none; color: var(--rkp-primary);
  transition: all 0.15s ease;
}
.rkp-btn:hover, .rki-btn:hover { background: #f5f9f7; border-color: var(--rkp-accent); color: var(--rkp-primary); }
.rkp-btn-primary, .rki-btn-primary {
  background: var(--rkp-primary); color: #fff !important; border-color: var(--rkp-primary);
}
.rkp-btn-primary:hover, .rki-btn-primary:hover {
  background: var(--rkp-primary-dark); border-color: var(--rkp-primary-dark); color: #fff !important;
}
.rkp-btn-accent { background: var(--rkp-accent); color: #fff; border-color: var(--rkp-accent); }

/* Filter bar */
.rki-filter-bar {
  background: #fff;
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius);
  box-shadow: var(--rkp-shadow);
  padding: 12px 14px;
}

/* Activity feed */
.rki-akt-feed { border-left: none; padding-left: 0; }
.rki-akt-feed h4 { display: none; }
.rki-akt-list { list-style: none; padding: 0; margin: 0; }
.rki-akt-item {
  background: #fff;
  border: 1px solid var(--rkp-border);
  border-radius: var(--rkp-radius-sm);
  padding: 12px 14px;
  margin-bottom: 10px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}
.rki-akt-typ { background: var(--rkp-accent); color: #fff; padding: 2px 8px; border-radius: 4px; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em; }
.rki-akt-title { font-weight: 600; color: var(--rkp-text); margin-top: 4px; }
.rki-akt-meta { color: var(--rkp-muted); font-size: 0.78rem; margin-top: 4px; }

/* Split layout (todo + activity 2-col) */
.rki-split { display: grid; grid-template-columns: 1.6fr 1fr; gap: 22px; margin-top: 16px; }
@media (max-width: 1000px) { .rki-split { grid-template-columns: 1fr; } }
.rki-section-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.rki-section-head h3 { font-size: 1rem; font-weight: 600; color: var(--rkp-primary); margin: 0; }

/* Forms */
.rki-form { display: flex; flex-direction: column; gap: 12px; background: #fff; border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius); padding: 18px 22px; box-shadow: var(--rkp-shadow); }
.rki-form label { display: flex; flex-direction: column; font-size: 0.85rem; color: var(--rkp-muted); gap: 4px; font-weight: 500; }
.rki-form input[type="text"], .rki-form input[type="number"], .rki-form input[type="date"], .rki-form input[type="email"], .rki-form input[type="url"], .rki-form select, .rki-form textarea {
  padding: 8px 10px; border: 1px solid var(--rkp-border); border-radius: 6px;
  font-size: 0.95rem; font-family: inherit; color: var(--rkp-text); background: #fff;
}
.rki-form input:focus, .rki-form select:focus, .rki-form textarea:focus {
  outline: none; border-color: var(--rkp-accent); box-shadow: 0 0 0 3px rgba(45,139,139,0.15);
}
.rki-form-row { display: flex; gap: 12px; flex-wrap: wrap; }
.rki-form-row > label { flex: 1 1 200px; }

/* Headings inside main content */
main h1, main h2 { color: var(--rkp-primary); font-weight: 700; letter-spacing: -0.015em; }
main h1 { font-size: 1.75rem; margin: 0 0 8px; }
main h2 { font-size: 1.25rem; margin: 24px 0 12px; }

/* Responsive: mobile-friendly sidebar */
@media (max-width: 900px) {
  .rkp-sidebar { transform: translateX(-100%); transition: transform 0.25s ease; }
  .rkp-sidebar.rkp-sidebar-open { transform: translateX(0); }
  main, main.site-main, .site-content { margin-left: 0 !important; padding: 16px !important; }
}

/* =========================================================================
   v2.4.3 — Critical UX fixes (link colors, button consistency, hide redundant user-strip)
   ========================================================================= */

/* Hide the redundant author/role/abmelden strip rendered by the theme (above page content) */
main.site-main > article > header,
main.site-main > .post header,
.entry-header,
.post-thumbnail,
.author-info,
.posted-on,
.byline,
.cat-links,
.tags-links { display: none !important; }

/* Global link color — Ocean Depths accent (teal) */
main a, main.site-main a, .rki-table a, .rkp-card a, .rkp-list a, .entry-content a {
  color: var(--rkp-accent) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
main a:hover, main.site-main a:hover { color: var(--rkp-accent-dark) !important; }
main a:visited { color: var(--rkp-accent) !important; }

/* Sidebar links always white */
.rkp-sidebar a, .rkp-sidebar-logout { color: rgba(255,255,255,0.85) !important; }
.rkp-sidebar a:hover, .rkp-sidebar-logout:hover { color: #fff !important; }

/* Button: unify everything that looks like an action button */
.rki-btn, .rkp-btn, a.rki-btn, a.rkp-btn, button[type="submit"], input[type="submit"], .button {
  display: inline-flex !important; align-items: center; gap: 6px;
  padding: 8px 14px !important;
  background: #fff !important;
  border: 1px solid var(--rkp-border) !important;
  border-radius: 6px !important;
  font-size: 0.9rem !important; font-weight: 500 !important;
  color: var(--rkp-primary) !important;
  text-decoration: none !important; cursor: pointer;
  transition: all 0.15s ease;
  box-shadow: none !important;
}
.rki-btn:hover, .rkp-btn:hover, button[type="submit"]:hover, input[type="submit"]:hover, .button:hover {
  background: #f5f9f7 !important; border-color: var(--rkp-accent) !important; color: var(--rkp-primary) !important;
}
.rki-btn-primary, .rkp-btn-primary, button[type="submit"].primary, input[type="submit"].primary {
  background: var(--rkp-primary) !important; color: #fff !important; border-color: var(--rkp-primary) !important;
}
.rki-btn-primary:hover, .rkp-btn-primary:hover { background: var(--rkp-primary-dark) !important; }
.rki-btn-danger { background: #b91c1c !important; color: #fff !important; border-color: #b91c1c !important; }

/* "Anlegen" small button in pipeline (orig had beige) */
.rki-pipeline-btn, td a[href*="projekt-anlegen"], .rkp-anlegen-btn,
a[href*="projekt-anlegen"] {
  background: var(--rkp-accent) !important; color: #fff !important; border-color: var(--rkp-accent) !important;
  font-size: 0.78rem !important; padding: 4px 10px !important;
}
a[href*="projekt-anlegen"]:hover { background: var(--rkp-accent-dark) !important; }

/* Hide the auto-rendered user info card that the theme outputs (admin / ADMINISTRATOR / Abmelden) */
.entry-content > p.author, body main > p.author-strip, main > .user-strip-default { display: none; }
/* Catch-all: the "admin / ADMINISTRATOR / Abmelden" pattern often lives in a <p>/<div> wrapping author block */
main .entry-meta { display: none; }

/* Form button "Filtern" matches secondary style */
.rki-filter-bar button[type="submit"], .rki-filter-bar .rki-btn {
  background: var(--rkp-primary) !important; color: #fff !important; border-color: var(--rkp-primary) !important;
}

/* Empty-state friendlier */
.rki-empty, .rkp-empty, .rkp-card p:only-child { color: var(--rkp-muted); font-style: italic; text-align: center; padding: 20px 8px; }

/* =========================================================================
   v2.5.0 — Pipeline summary, Profile, Empty states, Mobile drawer
   ========================================================================= */
.rkp-stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin-bottom: 14px; }
.rkp-stat {
  background: #fff; border: 1px solid var(--rkp-border); border-radius: var(--rkp-radius);
  padding: 16px 18px; box-shadow: var(--rkp-shadow);
}
.rkp-stat-num { font-size: 1.8rem; font-weight: 700; color: var(--rkp-primary); letter-spacing: -0.02em; line-height: 1.1; }
.rkp-stat-lbl { color: var(--rkp-muted); font-size: 0.82rem; margin-top: 4px; }

.rkp-pipeline-summary { margin-bottom: 20px; }

/* Profile */
.rkp-profile { display: flex; flex-direction: column; gap: 18px; }
.rkp-profile-head { display: flex; align-items: center; gap: 18px; }
.rkp-avatar-lg { width: 64px; height: 64px; font-size: 1.5rem; }
.rkp-profile-head h2 { margin: 0 0 4px; color: var(--rkp-primary); font-size: 1.4rem; }
.rkp-muted { color: var(--rkp-muted); font-size: 0.9rem; }

/* Empty-state friendly */
.rki-table tbody tr td[colspan] {
  text-align: center; padding: 32px 16px;
  color: var(--rkp-muted); font-style: italic;
}
.rki-empty { text-align: center; padding: 24px 12px; color: var(--rkp-muted); }

/* Mobile drawer + toggle */
.rkp-menu-toggle {
  display: none;
  position: fixed; top: 12px; left: 12px; z-index: 10000;
  width: 42px; height: 42px; border: none; border-radius: 8px;
  background: var(--rkp-primary); color: #fff;
  font-size: 1.3rem; cursor: pointer;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
@media (max-width: 900px) {
  .rkp-menu-toggle { display: flex !important; align-items: center; justify-content: center; }
  .rkp-sidebar { transform: translateX(-100%); transition: transform 0.25s ease; }
  .rkp-sidebar.rkp-sidebar-open { transform: translateX(0); }
  main, main.site-main, .site-content { margin-left: 0 !important; padding: 64px 16px 16px !important; }
}

/* Headings inside main — page-title gibi büyük h1 yerine ufak h1 */
main h1 { font-size: 1.6rem; font-weight: 700; margin: 0 0 18px; color: var(--rkp-primary); letter-spacing: -0.02em; }
main h2 { font-size: 1.15rem; }

/* Foerder pipeline action button (the orig orange/beige one) */
.rki-pipeline-anlegen, td a.rki-btn-anlegen, td a:has(+ span):has-text("Anlegen") { background: var(--rkp-accent); color: #fff !important; }

/* Forum / Activity sektör spacing */
.rkp-card + .rkp-card { margin-top: 16px; }

/* =========================================================================
   v2.6.0 — P0+P1 — Status pills, empty-states, hide user-strip, polish
   ========================================================================= */

/* P0-4: Hide the redundant "admin / ADMINISTRATOR / Abmelden" header strip
   that the theme/widget renders above content (broader selectors) */
.entry-content > div:first-child:has(> .avatar),
main.site-main > article > div:first-of-type:has(img.avatar),
.user-card-top, .rkp-user-strip-top,
.entry-content > div.author-card,
body main:first-of-type > article:first-of-type > div.user-info,
.entry-content > p:first-child > strong:contains("admin") { display: none !important; }
/* Safer fallback — hide any element containing "ADMINISTRATOR" + "Abmelden" structure at top */
body main > .rki-user-bar, body main > .rkp-user-strip { display: none !important; }

/* P1-2: Status pills on tables */
.rki-table td:nth-child(6),  /* Status column (Foerder table layout: Programm|Geber|Tier|Frist|Max|Status|Projekt?|Ideen) */
.rki-foerder-status-pill {
  position: relative;
}
.rki-foerder-status-pill::before {
  content: '';
  display: inline-block; width: 8px; height: 8px;
  border-radius: 50%; margin-right: 8px;
  background: var(--rkp-muted);
  vertical-align: middle;
}
.rki-foerder-status-pill[data-status="scouting"]::before     { background: #2563eb; }
.rki-foerder-status-pill[data-status="fit-check"]::before    { background: #f59e0b; }
.rki-foerder-status-pill[data-status="in-arbeit"]::before    { background: #8b5cf6; }
.rki-foerder-status-pill[data-status="eingereicht"]::before  { background: #06b6d4; }
.rki-foerder-status-pill[data-status="bewilligt"]::before    { background: #16a34a; }
.rki-foerder-status-pill[data-status="abgelehnt"]::before    { background: #dc2626; }
.rki-foerder-status-pill[data-status="abgeschlossen"]::before { background: #64748b; }

/* P1-3: Friendly empty-state CTA wrapper */
.rki-table .rki-empty, .rki-table td.rki-empty {
  padding: 40px 16px !important;
  text-align: center; color: var(--rkp-muted);
}
.rki-table td[colspan]::after, .rki-empty::after {
  content: " "; display: block; margin-top: 12px;
}

/* P1-4: Quick Actions become real filled buttons */
.rkp-dash-quick a.rkp-btn, .rkp-dash-quick a.rki-btn,
.rkp-dash-quick a[href*="anlegen"]:not(.rkp-btn-primary) {
  background: var(--rkp-primary) !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 4px rgba(26,35,50,0.1);
}
.rkp-dash-quick a:hover { background: var(--rkp-primary-dark) !important; transform: translateY(-1px); transition: all 0.15s; }
.rkp-dash-quick a.rkp-btn:nth-child(1) { background: var(--rkp-accent) !important; }
.rkp-dash-quick a.rkp-btn:nth-child(1):hover { background: var(--rkp-accent-dark) !important; }

/* Detail-page sections nicer spacing */
.rkp-card-detail-todos, .rkp-card-detail-activity { margin-top: 22px; }
.rkp-card-detail-todos .rki-todos-table th { background: #f7fbfa; }

/* Pipeline-Summary kompakt — daha az yer kapla */
.rkp-pipeline-summary { margin-bottom: 16px; }
.rkp-pipeline-summary .rki-table { margin-top: 8px; }
.rkp-pipeline-summary .rki-table th { padding: 6px 12px; }
.rkp-pipeline-summary .rki-table td { padding: 6px 12px; }

/* Late-nav wrapper (sidebar fallback via wp_footer) — JS moves it to top of body */
.rkp-late-nav { display: contents; }

/* Polish: rounded card hover */
.rkp-card { transition: box-shadow 0.15s ease; }
.rkp-card:hover { box-shadow: 0 4px 16px rgba(26,35,50,0.08), 0 1px 2px rgba(26,35,50,0.04); }

/* Mobile: footer-fallback navigation appears */
@media (max-width: 900px) {
  .rkp-late-nav { display: block; }
}

/* v2.8.0 — Pipeline Kanban */
.rkp-kanban-wrap { padding: 4px 0 22px; }
.rkp-kanban-head { display:flex; justify-content:space-between; align-items:center; margin-bottom: 10px; }
.rkp-kanban-board { display: grid; grid-template-columns: repeat(5, minmax(190px, 1fr)); gap: 10px; overflow-x: auto; padding-bottom: 8px; }
.rkp-kanban-col { background: #1a2332; border:1px solid #2d3a4f; border-radius: 10px; padding: 10px; min-width: 180px; }
.rkp-kanban-col-untagged { background:#27313f; }
.rkp-kanban-col-head { display:flex; justify-content:space-between; align-items:center; margin-bottom: 8px; }
.rkp-kanban-col-title { font-weight: 600; color: #e8edf5; font-size: 13px; }
.rkp-kanban-col-count { background:#2d8b8b; color:#fff; padding:1px 8px; border-radius: 10px; font-size: 11px; font-weight:600; }
.rkp-kanban-col-sum { font-size: 11px; color: #a8dadc; margin-bottom: 8px; padding-bottom: 6px; border-bottom: 1px solid #2d3a4f; }
.rkp-kanban-col-body { min-height: 120px; display:flex; flex-direction: column; gap: 7px; }
.rkp-kanban-col-body.rkp-drop-over { background: rgba(45,139,139,0.18); border-radius: 6px; outline: 2px dashed #2d8b8b; outline-offset: -3px; }
.rkp-kanban-card { display:block; background: var(--rkp-cream); color: #1a2332 !important; padding: 9px 10px; border-radius: 7px; text-decoration: none; cursor: grab; border: 1px solid #cbd5d1; transition: transform .08s; }
.rkp-kanban-card:hover { transform: translateY(-1px); box-shadow: 0 2px 6px rgba(0,0,0,0.15); }
.rkp-kanban-card.rkp-drag { opacity: 0.4; }
.rkp-kanban-card-title { font-weight: 600; font-size: 13px; line-height: 1.3; margin-bottom: 3px; }
.rkp-kanban-card-traeger { font-size: 11px; color: #5f6e7a; margin-bottom: 4px; }
.rkp-kanban-card-meta { display:flex; gap:5px; flex-wrap:wrap; margin-top: 3px; }
.rkp-kanban-tag, .rkp-kanban-sum { background:#a8dadc; color:#0f3a3a; padding:1px 6px; border-radius: 4px; font-size: 10px; font-weight: 500; }
.rkp-kanban-sum { background:#2d8b8b; color:#fff; }
.rkp-kanban-card-frist { margin-top: 4px; font-size: 11px; color: #6b7a87; }
.rkp-kanban-card-frist.rkp-frist-soon { color: #c2410c; font-weight: 500; }
.rkp-kanban-card-frist.rkp-frist-over { color: #b91c1c; font-weight: 600; }
.rkp-kanban-empty { color: #6b7a87; font-size: 11px; font-style: italic; padding: 12px 4px; text-align:center; }
@media (max-width: 900px) { .rkp-kanban-board { grid-template-columns: repeat(5, 240px); } }

/* v2.8.0 — Inline add (dokument-anlegen on detail pages) */
.rkp-inline-add > summary { list-style: none; }
.rkp-inline-add > summary::-webkit-details-marker { display: none; }
.rkp-inline-add[open] > summary { display:none; }

/* v2.8.0 — Detail page 3-column layout */
.rkp-detail-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr) 180px; gap: 18px; align-items: flex-start; }
.rkp-detail-siblings, .rkp-detail-related { background: var(--rkp-card-bg, #ffffff); border: 1px solid var(--rkp-border, #cbd5e1); border-radius: 10px; padding: 10px; position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow-y: auto; }
.rkp-detail-aside-head { font-size: 10.5px; letter-spacing: 0.06em; color: #6b7a87; margin-bottom: 8px; font-weight: 600; }
.rkp-detail-sibling { display:block; padding: 6px 8px; font-size: 13px; color: #1a2332; text-decoration: none; border-radius: 5px; line-height: 1.3; margin-bottom: 2px; }
.rkp-detail-sibling:hover { background: var(--rkp-cream); color: #2d8b8b; }
.rkp-detail-sibling-current { background: #2d8b8b; color: #fff !important; font-weight: 500; }
.rkp-detail-sibling-current:hover { background: #2d8b8b; color: #fff !important; cursor: default; }
.rkp-detail-sibling-all { display:block; margin-top: 8px; padding-top: 8px; border-top: 1px solid #e2e8f0; font-size: 12px; color: #2d8b8b; text-decoration: none; text-align: right; }
.rkp-detail-related-item { display:flex; justify-content: space-between; align-items: center; padding: 7px 8px; color: #1a2332; text-decoration: none; border-radius: 5px; font-size: 13px; }
.rkp-detail-related-item:hover { background: var(--rkp-cream); }
.rkp-detail-related-item span { background: #a8dadc; color: #0f3a3a; padding: 0 7px; border-radius: 10px; font-size: 11px; font-weight: 600; min-width: 22px; text-align: center; }
@media (max-width: 1100px) { .rkp-detail-layout { grid-template-columns: 1fr; } .rkp-detail-siblings, .rkp-detail-related { position: static; max-height: 240px; } }

/* v2.8.0 — Filter Drawer */
.rkp-filter-toggle { position: fixed; right: 0; top: 50%; transform: translateY(-50%); background: #2d8b8b; color: #fff; border: none; padding: 18px 8px; border-radius: 8px 0 0 8px; cursor: pointer; box-shadow: -2px 2px 8px rgba(0,0,0,0.18); z-index: 9998; display: flex; flex-direction: column; align-items: center; gap: 4px; font-size: 12px; font-weight: 600; }
.rkp-filter-toggle:hover { background: #226d6d; }
.rkp-filter-toggle-arrow { font-size: 18px; line-height: 1; }
.rkp-filter-toggle-text { writing-mode: vertical-rl; transform: rotate(180deg); letter-spacing: 0.08em; }
.rkp-filter-drawer { position: fixed; right: -440px; top: 0; bottom: 0; width: 420px; max-width: 92vw; background: #ffffff; box-shadow: -8px 0 24px rgba(0,0,0,0.22); z-index: 9999; transition: right 0.28s ease; overflow-y: auto; }
.rkp-filter-drawer.rkp-open { right: 0; }
.rkp-filter-drawer-head { display:flex; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid #e2e8f0; font-size: 15px; color: #1a2332; position: sticky; top: 0; background: #ffffff; z-index: 1; }
.rkp-filter-close { background: transparent; border: none; font-size: 28px; cursor: pointer; color: #6b7a87; line-height: 1; padding: 0 6px; }
.rkp-filter-close:hover { color: #1a2332; }
.rkp-filter-drawer-body { padding: 16px 18px; }
.rkp-filter-drawer .rki-filter-bar, .rkp-filter-drawer .rkp-filter-form { display: flex !important; flex-direction: column; gap: 12px; }
.rkp-filter-drawer label { display: block; }
.rkp-filter-drawer label select, .rkp-filter-drawer label input { width: 100%; }
body.rkp-drawer-open { overflow: hidden; }

/* v2.8.0 — Dark Mode (True Black) */
:root {
  --rkp-bg: var(--rkp-cream);
  --rkp-bg-2: #ffffff;
  --rkp-card-bg: #ffffff;
  --rkp-text: #1a2332;
  --rkp-text-muted: #6b7a87;
  --rkp-border: #cbd5e1;
  --rkp-border-soft: #e2e8f0;
  --rkp-accent: #2d8b8b;
  --rkp-accent-2: #a8dadc;
  --rkp-accent-text-on: #ffffff;
  --rkp-sidebar-bg: #1a2332;
  --rkp-sidebar-text: var(--rkp-cream);
}

[data-theme="dark"] {
  --rkp-bg: #000000;
  --rkp-bg-2: #0a0a0c;
  --rkp-card-bg: #0d0d10;
  --rkp-text: #ffffff;
  --rkp-text-muted: #a0a0a8;
  --rkp-border: #1a1a1f;
  --rkp-border-soft: #16161b;
  --rkp-accent: #2d8b8b;
  --rkp-accent-2: #a8dadc;
  --rkp-accent-text-on: #000000;
  --rkp-sidebar-bg: #0a0a0c;
  --rkp-sidebar-text: #ffffff;
}

[data-theme="dark"] body,
[data-theme="dark"] .rkp-app,
[data-theme="dark"] .rkp-main { background: var(--rkp-bg) !important; color: var(--rkp-text); }
[data-theme="dark"] .rkp-card, [data-theme="dark"] .rki-card, [data-theme="dark"] .rkp-foerder-detail,
[data-theme="dark"] .rkp-detail-siblings, [data-theme="dark"] .rkp-detail-related,
[data-theme="dark"] .rkp-filter-drawer, [data-theme="dark"] .rkp-doc-card, [data-theme="dark"] .rki-doc-card,
[data-theme="dark"] .rki-link-card, [data-theme="dark"] .rki-todo-row,
[data-theme="dark"] .rki-table, [data-theme="dark"] .rki-table thead th,
[data-theme="dark"] .rki-todos-table, [data-theme="dark"] .rkp-stat, [data-theme="dark"] .rkp-stat-grid > div,
[data-theme="dark"] .rkp-projekt-summary { background: var(--rkp-card-bg) !important; color: var(--rkp-text) !important; border-color: var(--rkp-border) !important; }
[data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3, [data-theme="dark"] h4,
[data-theme="dark"] p, [data-theme="dark"] li, [data-theme="dark"] td, [data-theme="dark"] th,
[data-theme="dark"] label, [data-theme="dark"] strong, [data-theme="dark"] span, [data-theme="dark"] div,
[data-theme="dark"] summary { color: var(--rkp-text); }
[data-theme="dark"] .rkp-muted, [data-theme="dark"] .rki-muted, [data-theme="dark"] small,
[data-theme="dark"] .rkp-stat-label, [data-theme="dark"] .rkp-stat-lbl { color: var(--rkp-text-muted) !important; }
[data-theme="dark"] a { color: var(--rkp-accent-2); }
[data-theme="dark"] a:hover { color: #d4f1f2; }
[data-theme="dark"] input, [data-theme="dark"] textarea, [data-theme="dark"] select { background: #0a0a0c !important; color: var(--rkp-text) !important; border-color: var(--rkp-border) !important; }
[data-theme="dark"] input::placeholder, [data-theme="dark"] textarea::placeholder { color: #6e6e78; }
[data-theme="dark"] .rkp-btn, [data-theme="dark"] .rki-btn { background: #1a1a1f; color: var(--rkp-text); border-color: var(--rkp-border); }
[data-theme="dark"] .rkp-btn-primary, [data-theme="dark"] .rki-btn-primary { background: var(--rkp-accent) !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-tag, [data-theme="dark"] .rki-link-kat, [data-theme="dark"] .rki-link-tier { background: #14141a; color: var(--rkp-accent-2) !important; border: 1px solid var(--rkp-border); }
[data-theme="dark"] .rkp-tag-status, [data-theme="dark"] .rki-link-tier-1 { background: var(--rkp-accent); color: #fff !important; }
[data-theme="dark"] .rkp-sidebar, [data-theme="dark"] .rki-nav, [data-theme="dark"] nav.rkp-nav { background: var(--rkp-sidebar-bg) !important; }
[data-theme="dark"] .rkp-nav-link { color: #cbd5d1 !important; }
[data-theme="dark"] .rkp-nav-link:hover, [data-theme="dark"] .rkp-nav-active { background: #14141a !important; color: #fff !important; }
[data-theme="dark"] .rkp-kanban-col { background: #0a0a0c; border-color: #1a1a1f; }
[data-theme="dark"] .rkp-kanban-card { background: #14141a; color: #ffffff !important; border-color: #2a2a32; }
[data-theme="dark"] .rkp-kanban-card-traeger, [data-theme="dark"] .rkp-kanban-card-frist { color: #a0a0a8; }
[data-theme="dark"] .rkp-detail-sibling { color: #cbd5d1; }
[data-theme="dark"] .rkp-detail-sibling:hover { background: #14141a; color: var(--rkp-accent-2); }
[data-theme="dark"] .rkp-detail-related-item:hover { background: #14141a; }
[data-theme="dark"] .rkp-filter-drawer-head { background: #0a0a0c; border-color: var(--rkp-border); }
[data-theme="dark"] .rki-table thead th { background: #14141a !important; }
[data-theme="dark"] .rkp-back-link { color: var(--rkp-accent-2); }

/* Toggle button (bottom-left fixed) */
.rkp-theme-toggle { position: fixed !important; bottom: 24px !important; left: 24px !important; width: 52px !important; height: 52px !important; border-radius: 50% !important; background: #1a2332 !important; color: var(--rkp-cream) !important; border: 2px solid #2d8b8b !important; box-shadow: 0 4px 16px rgba(0,0,0,0.35) !important; cursor: pointer !important; font-size: 22px !important; line-height: 1 !important; display: flex !important; align-items: center !important; justify-content: center !important; z-index: 99999 !important; transition: all 0.18s !important; padding: 0 !important; outline: none !important; }
.rkp-theme-toggle:hover { background: #2d8b8b !important; transform: scale(1.06); }
[data-theme="dark"] .rkp-theme-toggle { background: #0d0d10 !important; color: #ffffff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rkp-theme-toggle:hover { background: #2d8b8b !important; }

/* v2.8.4 — View toggle (Liste / Pipeline) */
.rkp-view-toggle { display: inline-flex; background: #eef2f7; border-radius: 8px; padding: 3px; margin: 0 0 16px; gap: 2px; }
.rkp-view-btn { padding: 6px 14px; border-radius: 6px; color: #1a2332; font-size: 13px; text-decoration: none; font-weight: 500; transition: all 0.15s; }
.rkp-view-btn:hover { background: #ffffff; }
.rkp-view-active { background: #2d8b8b; color: #ffffff !important; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
.rkp-view-active:hover { background: #226d6d; color: #ffffff; }
[data-theme="dark"] .rkp-view-toggle { background: #14141a; }
[data-theme="dark"] .rkp-view-btn { color: #cbd5d1; }
[data-theme="dark"] .rkp-view-btn:hover { background: #1a1a1f; }
[data-theme="dark"] .rkp-view-active { background: #2d8b8b; color: #fff !important; }

/* v2.8.5 — Merged terminal column (Bewilligt / Abgelehnt) */
.rkp-kanban-col-terminal { display: flex; flex-direction: column; }
.rkp-kanban-sub { border-radius: 6px; margin-top: 8px; padding: 6px; }
.rkp-kanban-sub-bewilligt { background: rgba(34, 197, 94, 0.10); }
.rkp-kanban-sub-abgelehnt { background: rgba(239, 68, 68, 0.10); }
.rkp-kanban-sub-head { font-size: 12px; font-weight: 700; padding: 6px 10px; margin-bottom: 6px; display: flex; justify-content: space-between; align-items: center; border-radius: 4px; color: #ffffff !important; }
.rkp-kanban-sub-bewilligt .rkp-kanban-sub-head { background: #16a34a; }
.rkp-kanban-sub-abgelehnt .rkp-kanban-sub-head { background: #dc2626; }
.rkp-kanban-sub-count { background: rgba(255,255,255,0.25); color: #ffffff !important; padding: 1px 8px; border-radius: 8px; font-size: 11px; font-weight: 700; }
.rkp-kanban-zone-bewilligt.rkp-drop-over { outline: 2px dashed #22c55e !important; background: rgba(34, 197, 94, 0.12) !important; }
.rkp-kanban-zone-abgelehnt.rkp-drop-over { outline: 2px dashed #ef4444 !important; background: rgba(239, 68, 68, 0.12) !important; }
.rkp-kanban-card.rkp-card-bewilligt { background: #ecfdf5; border-color: #22c55e; border-left: 4px solid #16a34a; }
.rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-title { color: #14532d; }
.rkp-kanban-card.rkp-card-abgelehnt { background: #fef2f2; border-color: #ef4444; border-left: 4px solid #dc2626; }
.rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-title { color: #7f1d1d; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt { background: #0a2a18; border-color: #22c55e; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-title { color: #86efac !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt { background: #2a0a0a; border-color: #ef4444; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-title { color: #fca5a5 !important; }


/* v2.8.7 — Force readable text on Bewilligt/Abgelehnt cards in all states */
.rkp-kanban-card.rkp-card-bewilligt,
.rkp-kanban-card.rkp-card-bewilligt:hover,
.rkp-kanban-card.rkp-card-bewilligt:focus,
.rkp-kanban-card.rkp-card-bewilligt:visited { color: #14532d !important; background: #ecfdf5 !important; }
.rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-title,
.rkp-kanban-card.rkp-card-bewilligt:hover .rkp-kanban-card-title { color: #14532d !important; }
.rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-traeger { color: #15803d !important; }
.rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-meta * { color: #14532d !important; }

.rkp-kanban-card.rkp-card-abgelehnt,
.rkp-kanban-card.rkp-card-abgelehnt:hover,
.rkp-kanban-card.rkp-card-abgelehnt:focus,
.rkp-kanban-card.rkp-card-abgelehnt:visited { color: #7f1d1d !important; background: #fef2f2 !important; }
.rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-title,
.rkp-kanban-card.rkp-card-abgelehnt:hover .rkp-kanban-card-title { color: #7f1d1d !important; }
.rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-traeger { color: #991b1b !important; }
.rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-meta * { color: #7f1d1d !important; }

[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt,
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt:hover { background: #0a2a18 !important; color: #86efac !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-title,
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt:hover .rkp-kanban-card-title { color: #86efac !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-traeger { color: #4ade80 !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt .rkp-kanban-card-meta * { color: #86efac !important; }

[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt,
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt:hover { background: #2a0a0a !important; color: #fca5a5 !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-title,
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt:hover .rkp-kanban-card-title { color: #fca5a5 !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-traeger { color: #f87171 !important; }
[data-theme="dark"] .rkp-kanban-card.rkp-card-abgelehnt .rkp-kanban-card-meta * { color: #fca5a5 !important; }

/* Generic kanban card hover also locked to dark text in light mode */
.rkp-kanban-card,
.rkp-kanban-card:hover,
.rkp-kanban-card:focus,
.rkp-kanban-card:visited { color: #1a2332 !important; }
.rkp-kanban-card:hover .rkp-kanban-card-title { color: inherit !important; }

/* v2.8.8 — Comprehensive dark-mode bg overrides for ALL rki-/rkp- surfaces */
[data-theme="dark"] .rki-akt-item,
[data-theme="dark"] .rki-akt-feed,
[data-theme="dark"] .rki-akt-list,
[data-theme="dark"] .rki-akt-head,
[data-theme="dark"] .rki-akt-content,
[data-theme="dark"] .rki-akt-meta,
[data-theme="dark"] .rki-aktivitaet-item,
[data-theme="dark"] .rki-aktivitaet-feed,
[data-theme="dark"] .rki-form,
[data-theme="dark"] .rkp-form,
[data-theme="dark"] form.rki-form,
[data-theme="dark"] form.rkp-form,
[data-theme="dark"] form.rki-akt-form,
[data-theme="dark"] form.rki-todo-form,
[data-theme="dark"] form.rki-doc-form,
[data-theme="dark"] form.rki-zeit-form,
[data-theme="dark"] form.rkp-foerder-form,
[data-theme="dark"] form.rkp-projekt-form,
[data-theme="dark"] form.rkp-idee-form,
[data-theme="dark"] form.rkp-thread-form,
[data-theme="dark"] .rkp-projekt-detail,
[data-theme="dark"] .rkp-thread-detail,
[data-theme="dark"] .rkp-idee-detail,
[data-theme="dark"] .rkp-foerder-detail,
[data-theme="dark"] .rkp-idee-item,
[data-theme="dark"] .rkp-idee-list,
[data-theme="dark"] .rkp-projekt-list,
[data-theme="dark"] .rkp-foerder-list-wrap,
[data-theme="dark"] .rkp-thread-list,
[data-theme="dark"] .rkp-notice,
[data-theme="dark"] .rkp-projekt-summary,
[data-theme="dark"] .rki-zeit-list,
[data-theme="dark"] .rki-zeit-row,
[data-theme="dark"] .rki-todos-wrap,
[data-theme="dark"] .rki-table-wrap,
[data-theme="dark"] .rki-aktivitaeten-list,
[data-theme="dark"] details,
[data-theme="dark"] details > summary,
[data-theme="dark"] .rkp-card-head,
[data-theme="dark"] .rkp-detail-actions { background: var(--rkp-card-bg) !important; color: var(--rkp-text) !important; }

/* Force readable child text in dark mode forms */
[data-theme="dark"] form,
[data-theme="dark"] form *:not(button):not(input):not(select):not(textarea):not(option) { color: var(--rkp-text); }
[data-theme="dark"] form label,
[data-theme="dark"] form legend,
[data-theme="dark"] form span,
[data-theme="dark"] form small,
[data-theme="dark"] form strong { color: var(--rkp-text) !important; }
[data-theme="dark"] form .rkp-muted,
[data-theme="dark"] form .rki-muted { color: var(--rkp-text-muted) !important; }

/* Transparent containers — ensure text stays light when bg shows through dark body */
[data-theme="dark"] .rki-akt-feed,
[data-theme="dark"] .rki-akt-list { background: transparent !important; }

/* Catch-all fallback for any element with white inline background */
[data-theme="dark"] [style*="background:#fff"],
[data-theme="dark"] [style*="background: #fff"],
[data-theme="dark"] [style*="background:white"],
[data-theme="dark"] [style*="background: white"] { background: var(--rkp-card-bg) !important; }

/* Any nested element with light text inherits dark scheme */
[data-theme="dark"] .rki-akt-typ { color: #fff !important; }
[data-theme="dark"] .rki-akt-title { color: var(--rkp-text) !important; font-weight: 600; }
[data-theme="dark"] .rki-akt-time,
[data-theme="dark"] .rki-akt-author,
[data-theme="dark"] .rki-akt-ctx,
[data-theme="dark"] .rki-akt-content { color: var(--rkp-text-muted) !important; }
[data-theme="dark"] .rki-akt-item { border: 1px solid var(--rkp-border) !important; padding: 12px 14px; border-radius: 8px; margin-bottom: 10px; }

/* v2.8.9 — Override the original :root variables used by all rkp-table elements */
[data-theme="dark"] {
  --rkp-primary: #ffffff;
  --rkp-primary-dark: #cbd5d1;
  --rkp-primary-light: #2d8b8b;
  --rkp-surface: #14141a;
  --rkp-surface-dark: #1a1a1f;
  --rkp-bg: #0a0a0c;
  --rkp-border: #1f1f25;
}

/* Force table thead + tr:hover into dark surface */
[data-theme="dark"] .rkp-table,
[data-theme="dark"] table.rkp-table { background: var(--rkp-card-bg) !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-table th,
[data-theme="dark"] table.rkp-table th { background: #14141a !important; color: #ffffff !important; border-bottom-color: #2a2a32 !important; }
[data-theme="dark"] .rkp-table td,
[data-theme="dark"] table.rkp-table td { color: #ffffff !important; border-bottom-color: #1a1a1f !important; }
[data-theme="dark"] .rkp-table tbody tr:hover,
[data-theme="dark"] .rkp-table tbody tr:hover td { background: #1a1a1f !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-table tbody tr:hover a { color: #a8dadc !important; }
[data-theme="dark"] .rkp-tag,
[data-theme="dark"] .rkp-badge { background: #14141a !important; color: #a8dadc !important; border: 1px solid #2a2a32; }
[data-theme="dark"] .rkp-tag-status { background: #2d8b8b !important; color: #ffffff !important; }

/* v2.9.1 — Filter drawer dark-mode contrast fixes */
[data-theme="dark"] .rkp-filter-drawer { background: #0a0a0c !important; color: #ffffff !important; box-shadow: -8px 0 24px rgba(0,0,0,0.55) !important; }
[data-theme="dark"] .rkp-filter-drawer-head { background: #14141a !important; color: #ffffff !important; border-color: #1f1f25 !important; }
[data-theme="dark"] .rkp-filter-drawer-head strong { color: #ffffff !important; }
[data-theme="dark"] .rkp-filter-drawer-body { color: #ffffff !important; }
[data-theme="dark"] .rkp-filter-drawer label,
[data-theme="dark"] .rkp-filter-drawer label span,
[data-theme="dark"] .rkp-filter-drawer-body label { color: #ffffff !important; }
[data-theme="dark"] .rkp-filter-drawer select,
[data-theme="dark"] .rkp-filter-drawer input,
[data-theme="dark"] .rkp-filter-drawer textarea { background: #14141a !important; color: #ffffff !important; border: 1px solid #2a2a32 !important; }
[data-theme="dark"] .rkp-filter-drawer select option { background: #14141a !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-filter-drawer button,
[data-theme="dark"] .rkp-filter-drawer .rkp-btn { background: #2d8b8b !important; color: #ffffff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rkp-filter-drawer .rkp-btn:not(.rkp-btn-primary) { background: #14141a !important; border-color: #2a2a32 !important; }
[data-theme="dark"] .rkp-filter-close { color: #ffffff !important; }
[data-theme="dark"] .rkp-filter-close:hover { color: #a8dadc !important; }
[data-theme="dark"] .rkp-filter-toggle { box-shadow: -2px 2px 12px rgba(0,0,0,0.6) !important; }

/* Generic — all form inputs/selects readable in dark mode anywhere */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] textarea,
[data-theme="dark"] select { background: #14141a !important; color: #ffffff !important; border-color: #2a2a32 !important; }
[data-theme="dark"] select option { background: #14141a !important; color: #ffffff !important; }
[data-theme="dark"] ::placeholder { color: #6e6e78 !important; }

/* v2.10 — Empty state */
.rkp-empty-state { padding: 36px 16px; text-align: center; background: var(--rkp-bg, #fff); border: 2px dashed var(--rkp-border, #cbd5d1); border-radius: 12px; margin: 14px 0; }
.rkp-empty-icon { font-size: 38px; opacity: 0.4; margin-bottom: 8px; line-height: 1; }
.rkp-empty-state h4 { margin: 8px 0 4px; font-size: 16px; }
.rkp-empty-state p { color: var(--rkp-text-muted, #6b7a87); margin: 4px 0 14px; font-size: 13px; }
[data-theme="dark"] .rkp-empty-state { background: #0a0a0c !important; border-color: #1a1a1f !important; color: var(--rkp-text); }

/* v2.10 — Feedback banner */
.rkp-fb-banner { position: fixed; top: 50px; right: 16px; max-width: 420px; padding: 12px 40px 12px 16px; border-radius: 8px; font-size: 14px; z-index: 9990; box-shadow: 0 4px 16px rgba(0,0,0,0.2); display: flex; align-items: center; gap: 8px; animation: rkp-slide-in 0.25s ease; }
@keyframes rkp-slide-in { from { transform: translateX(20px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
.rkp-fb-ok { background: #ecfdf5; color: #14532d; border-left: 4px solid #16a34a; }
.rkp-fb-err { background: #fef2f2; color: #7f1d1d; border-left: 4px solid #dc2626; }
.rkp-fb-close { position: absolute; right: 6px; top: 6px; background: transparent; border: none; font-size: 18px; cursor: pointer; color: inherit; opacity: 0.5; }
.rkp-fb-close:hover { opacity: 1; }

/* v2.10 — Frist warner banner */
.rkp-frist-warner { display: flex; gap: 12px; padding: 12px 16px; background: #fef9e7; border: 1px solid #f59e0b; border-radius: 10px; align-items: center; margin: 0 0 16px; }
.rkp-frist-count { background: #f59e0b; color: #fff; font-weight: 700; padding: 4px 12px; border-radius: 14px; font-size: 13px; }
.rkp-frist-text { font-size: 13px; color: #713f12; flex: 1; }
.rkp-frist-text a { color: #b45309; font-weight: 600; }
[data-theme="dark"] .rkp-frist-warner { background: #1f1610 !important; border-color: #f59e0b !important; }
[data-theme="dark"] .rkp-frist-text { color: #fcd34d !important; }
[data-theme="dark"] .rkp-frist-text a { color: #fbbf24 !important; }

/* v2.10 — Sidebar Search + Bell */
.rkp-sidebar-search { padding: 8px 12px; position: relative; }
.rkp-sidebar-search input { width: 100%; padding: 7px 10px; padding-right: 32px; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); border-radius: 6px; color: inherit; font-size: 13px; }
.rkp-sidebar-search input::placeholder { color: rgba(255,255,255,0.5); }
.rkp-sidebar-search kbd { position: absolute; right: 20px; top: 14px; font-size: 10px; padding: 1px 4px; background: rgba(255,255,255,0.1); border-radius: 3px; color: rgba(255,255,255,0.6); }
.rkp-search-results { display: none; position: absolute; left: 12px; right: 12px; top: 100%; background: #fff; border: 1px solid #cbd5d1; border-radius: 8px; box-shadow: 0 4px 14px rgba(0,0,0,0.2); max-height: 420px; overflow-y: auto; z-index: 9991; }
.rkp-search-result { display: flex; gap: 8px; padding: 8px 12px; color: #1a2332; text-decoration: none; font-size: 13px; align-items: center; }
.rkp-search-result:hover { background: var(--rkp-cream); }
.rkp-search-type { font-size: 10px; padding: 2px 6px; background: #2d8b8b; color: #fff; border-radius: 6px; font-weight: 600; min-width: 60px; text-align: center; }
.rkp-search-empty { padding: 10px 12px; color: #6b7a87; font-size: 13px; }
[data-theme="dark"] .rkp-search-results { background: #14141a !important; border-color: #1a1a1f !important; }
[data-theme="dark"] .rkp-search-result { color: #fff !important; }
[data-theme="dark"] .rkp-search-result:hover { background: #1a1a1f !important; }

.rkp-sidebar-bell { padding: 6px 12px; position: relative; }
.rkp-sidebar-bell button { width: 100%; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); padding: 6px 10px; border-radius: 6px; color: inherit; cursor: pointer; font-size: 14px; display: flex; align-items: center; justify-content: flex-start; gap: 8px; }
.rkp-sidebar-bell button:hover { background: rgba(255,255,255,0.1); }
.rkp-bell-count { background: #dc2626; color: #fff; font-size: 10px; padding: 1px 6px; border-radius: 9px; font-weight: 700; margin-left: auto; }
.rkp-bell-dropdown { position: absolute; left: 12px; right: 12px; top: 100%; background: #fff; border: 1px solid #cbd5d1; border-radius: 8px; box-shadow: 0 4px 14px rgba(0,0,0,0.2); max-height: 420px; overflow-y: auto; z-index: 9991; color: #1a2332; }
.rkp-bell-head { padding: 10px 14px; border-bottom: 1px solid #e2e8f0; font-size: 13px; }
.rkp-bell-empty { padding: 16px; text-align: center; color: #6b7a87; font-size: 13px; }
.rkp-bell-item { display: flex; gap: 10px; padding: 10px 14px; border-bottom: 1px solid #f1f5f9; color: #1a2332; text-decoration: none; font-size: 13px; }
.rkp-bell-item:hover { background: var(--rkp-cream); }
.rkp-bell-item:last-child { border-bottom: none; }
.rkp-bell-icon { font-size: 16px; flex-shrink: 0; }
.rkp-bell-time { color: #94a3b8; font-size: 11px; margin-top: 2px; }
[data-theme="dark"] .rkp-bell-dropdown { background: #14141a !important; border-color: #1a1a1f !important; color: #fff !important; }
[data-theme="dark"] .rkp-bell-item { color: #fff !important; border-color: #1a1a1f !important; }
[data-theme="dark"] .rkp-bell-item:hover { background: #1a1a1f !important; }

/* v2.10 — Idee voting */
.rkp-vote-row { display: flex; gap: 8px; align-items: center; padding: 8px 0; margin-top: 10px; }
.rkp-vote-btn { background: var(--rkp-cream); border: 1px solid #cbd5d1; padding: 5px 12px; border-radius: 6px; cursor: pointer; font-size: 13px; }
.rkp-vote-btn:hover { background: #e3f1de; }
.rkp-vote-active { background: #2d8b8b !important; color: #fff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rkp-vote-btn { background: #14141a !important; color: #fff !important; border-color: #2a2a32 !important; }
[data-theme="dark"] .rkp-vote-btn:hover { background: #1a1a1f !important; }
[data-theme="dark"] .rkp-vote-active { background: #2d8b8b !important; }

/* v2.10 — Export buttons */
.rkp-export-bar { display: flex; gap: 8px; margin: 10px 0; flex-wrap: wrap; }
.rkp-export-btn { display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; background: #1a2332; color: #fff !important; border-radius: 6px; text-decoration: none; font-size: 12px; }
.rkp-export-btn:hover { background: #2d8b8b; color: #fff !important; }
[data-theme="dark"] .rkp-export-btn { background: #14141a !important; border: 1px solid #2a2a32; }

/* v2.11 — Grouped sidebar nav */
.rkp-nav-section { list-style: none; padding: 12px 16px 4px; margin: 0; }
.rkp-nav-section-label { font-size: 10px; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.45); font-weight: 600; }
.rkp-nav-section:first-child { padding-top: 4px; }
.rkp-nav ul { padding: 0; margin: 0; list-style: none; }
.rkp-nav-link { padding: 7px 16px; }
[data-theme="dark"] .rkp-nav-section-label { color: rgba(255,255,255,0.4); }

/* v2.11 — Pipeline progress bar */
.rkp-progress-track { display: flex; gap: 4px; margin: 14px 0 6px; padding: 0; }
.rkp-progress-step { flex: 1; text-align: center; min-width: 60px; }
.rkp-progress-step-bar { height: 8px; border-radius: 4px; background: #e2e8f0; }
.rkp-progress-step.is-done .rkp-progress-step-bar { background: #2d8b8b; }
.rkp-progress-step.is-current .rkp-progress-step-bar { background: #16a34a; box-shadow: 0 0 0 3px rgba(22,163,74,0.18); }
.rkp-progress-step.is-fail .rkp-progress-step-bar { background: #dc2626; }
.rkp-progress-step-label { font-size: 11px; margin-top: 6px; color: #6b7a87; }
.rkp-progress-step.is-done .rkp-progress-step-label { color: #2d8b8b; font-weight: 600; }
.rkp-progress-step.is-current .rkp-progress-step-label { color: #16a34a; font-weight: 700; }
.rkp-progress-step.is-fail .rkp-progress-step-label { color: #dc2626; font-weight: 700; }
[data-theme="dark"] .rkp-progress-step-bar { background: #1a1a1f; }
[data-theme="dark"] .rkp-progress-step-label { color: #6b7a87; }

/* v2.11 — FAB */
.rkp-fab { position: fixed; right: 22px; bottom: 22px; width: 56px; height: 56px; border-radius: 50%; background: #2d8b8b; color: #fff; font-size: 26px; border: none; cursor: pointer; box-shadow: 0 6px 16px rgba(45,139,139,0.4); z-index: 9996; display: flex; align-items: center; justify-content: center; transition: transform 0.18s, background 0.18s; }
.rkp-fab:hover { background: #226d6d; transform: scale(1.06); }
.rkp-fab-menu { position: fixed; right: 22px; bottom: 88px; background: #fff; border: 1px solid #cbd5d1; border-radius: 12px; box-shadow: 0 6px 18px rgba(0,0,0,0.18); padding: 8px; z-index: 9995; min-width: 220px; display: none; }
.rkp-fab-menu.is-open { display: block; animation: rkp-slide-in 0.18s ease; }
.rkp-fab-menu a { display: flex; gap: 10px; align-items: center; padding: 8px 12px; color: #1a2332; text-decoration: none; border-radius: 6px; font-size: 14px; }
.rkp-fab-menu a:hover { background: var(--rkp-cream); }
[data-theme="dark"] .rkp-fab-menu { background: #14141a !important; border-color: #1a1a1f !important; }
[data-theme="dark"] .rkp-fab-menu a { color: #fff !important; }
[data-theme="dark"] .rkp-fab-menu a:hover { background: #1a1a1f !important; }

/* v2.11 — Bulk actions */
.rkp-bulk-bar { position: sticky; top: 0; background: #1a2332; color: #fff; padding: 10px 16px; border-radius: 8px; display: none; gap: 14px; align-items: center; margin-bottom: 12px; box-shadow: 0 2px 8px rgba(0,0,0,0.15); z-index: 100; }
.rkp-bulk-bar.is-active { display: flex; }
.rkp-bulk-bar button { background: #2d8b8b; color: #fff; border: none; padding: 6px 14px; border-radius: 6px; cursor: pointer; font-size: 13px; }
.rkp-bulk-bar button.rkp-bulk-danger { background: #dc2626; }
.rkp-bulk-bar button.rkp-bulk-secondary { background: rgba(255,255,255,0.12); }
.rkp-bulk-count { font-weight: 600; }
.rkp-bulk-cb { width: 16px; height: 16px; cursor: pointer; }

/* v2.11 — Mobile bottom nav */
.rkp-bottom-nav { display: none; position: fixed; left: 0; right: 0; bottom: 0; background: #1a2332; color: #fff; padding: 6px 4px calc(6px + env(safe-area-inset-bottom)); justify-content: space-around; z-index: 9994; box-shadow: 0 -2px 12px rgba(0,0,0,0.18); }
.rkp-bottom-nav a { color: #cbd5d1; text-decoration: none; text-align: center; flex: 1; padding: 6px 2px; font-size: 10px; }
.rkp-bottom-nav a .rkp-bottom-icon { display: block; font-size: 22px; line-height: 1; margin-bottom: 2px; }
.rkp-bottom-nav a.is-active { color: #2d8b8b; }
[data-theme="dark"] .rkp-bottom-nav { background: #0a0a0c !important; }

/* v2.11 — Mobile overhaul */
@media (max-width: 768px) {
  body { padding-bottom: 64px !important; }
  .rkp-sidebar { display: none !important; }
  .rkp-menu-toggle { display: none !important; }
  .rkp-main, main { padding-left: 8px !important; padding-right: 8px !important; }
  .rkp-bottom-nav { display: flex !important; }
  .rkp-fab { right: 14px !important; bottom: 78px !important; }
  .rkp-fb-banner { right: 10px !important; left: 10px !important; max-width: none !important; top: 6px !important; }
  .rkp-kanban-board { grid-template-columns: 88vw !important; overflow-x: auto !important; gap: 12px !important; }
  .rkp-detail-layout { grid-template-columns: 1fr !important; }
  .rkp-detail-siblings, .rkp-detail-related { max-height: 200px !important; overflow-y: auto !important; }
  .rkp-form-grid { grid-template-columns: 1fr !important; }
  .rkp-table { font-size: 12px !important; }
  .rkp-table th, .rkp-table td { padding: 6px 8px !important; }
  .rkp-theme-toggle { bottom: 78px !important; left: 14px !important; }
  .rkp-frist-warner { flex-direction: column; align-items: flex-start; }
}

/* v2.11 — Activity heatmap (admin page) */
.rkp-heatmap { display: inline-grid; grid-auto-flow: column; grid-template-rows: repeat(7, 11px); gap: 2px; margin-top: 4px; }
.rkp-heatmap-cell { width: 11px; height: 11px; background: #e2e8f0; border-radius: 2px; }
.rkp-heatmap-l1 { background: #a8dadc; }
.rkp-heatmap-l2 { background: #2d8b8b; }
.rkp-heatmap-l3 { background: #1a5b5b; }
[data-theme="dark"] .rkp-heatmap-cell { background: #1a1a1f; }
[data-theme="dark"] .rkp-heatmap-l1 { background: #2a4d4d; }
[data-theme="dark"] .rkp-heatmap-l2 { background: #2d8b8b; }
[data-theme="dark"] .rkp-heatmap-l3 { background: #5ec5c5; }

/* v2.11 — @-Mention */
.rkp-mention { background: #dbeafe; color: #1e40af; padding: 1px 6px; border-radius: 4px; font-weight: 600; text-decoration: none; }
[data-theme="dark"] .rkp-mention { background: #1e293b !important; color: #93c5fd !important; }

/* v2.11.1 — Force pastel dark surface for filter forms + any whitish bg */
[data-theme="dark"] .rkp-filter-form,
[data-theme="dark"] .rki-filter-bar,
[data-theme="dark"] form.rkp-filter-form,
[data-theme="dark"] form.rki-filter-bar { background: #1e2433 !important; color: var(--rkp-cream) !important; padding: 12px 14px !important; border-radius: 10px !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rkp-filter-form *,
[data-theme="dark"] .rki-filter-bar * { color: var(--rkp-cream) !important; }
[data-theme="dark"] .rkp-filter-form label,
[data-theme="dark"] .rki-filter-bar label { color: #a8dadc !important; }
[data-theme="dark"] .rkp-filter-form select,
[data-theme="dark"] .rkp-filter-form input,
[data-theme="dark"] .rki-filter-bar select,
[data-theme="dark"] .rki-filter-bar input { background: #2a3142 !important; color: var(--rkp-cream) !important; border: 1px solid #3a4255 !important; }
[data-theme="dark"] .rkp-filter-form select option,
[data-theme="dark"] .rki-filter-bar select option { background: #1e2433 !important; color: var(--rkp-cream) !important; }
[data-theme="dark"] .rkp-filter-form .rkp-btn,
[data-theme="dark"] .rki-filter-bar .rkp-btn,
[data-theme="dark"] .rkp-filter-form button,
[data-theme="dark"] .rki-filter-bar button { background: #2d8b8b !important; color: #ffffff !important; border-color: #2d8b8b !important; }

/* Generic pastel surface fallback for any container with hardcoded white bg */
[data-theme="dark"] [style*="background:#fff"],
[data-theme="dark"] [style*="background: #fff"],
[data-theme="dark"] [style*="background:white"],
[data-theme="dark"] [style*="background: white"] { background: #1e2433 !important; color: var(--rkp-cream) !important; }
[data-theme="dark"] [style*="background:#fff"] *,
[data-theme="dark"] [style*="background: #fff"] * { color: var(--rkp-cream) !important; }

/* v2.11.3 — Aggressive button overrides (Elementor's button reset bypass) */
[data-theme="dark"] .rkp-btn,
[data-theme="dark"] a.rkp-btn,
[data-theme="dark"] button.rkp-btn { background: #1f2433 !important; color: #f1faee !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rkp-btn:hover,
[data-theme="dark"] a.rkp-btn:hover { background: #2a3142 !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-btn-primary,
[data-theme="dark"] a.rkp-btn-primary,
[data-theme="dark"] button.rkp-btn-primary { background: #2d8b8b !important; color: #ffffff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rkp-btn-primary:hover,
[data-theme="dark"] a.rkp-btn-primary:hover { background: #226d6d !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-btn-sm { padding: 5px 10px !important; font-size: 12px !important; }
[data-theme="dark"] .rki-btn,
[data-theme="dark"] button.rki-btn,
[data-theme="dark"] a.rki-btn { background: #1f2433 !important; color: #f1faee !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rki-btn-primary,
[data-theme="dark"] button.rki-btn-primary { background: #2d8b8b !important; color: #ffffff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rki-btn-mini,
[data-theme="dark"] button.rki-btn-mini { background: #1f2433 !important; color: #f1faee !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rki-btn-done,
[data-theme="dark"] button.rki-btn-done { background: #2d8b8b !important; color: #ffffff !important; border-color: #2d8b8b !important; }
[data-theme="dark"] .rki-btn-done:hover { background: #226d6d !important; }
[data-theme="dark"] .rki-btn-reopen,
[data-theme="dark"] button.rki-btn-reopen { background: #1f2433 !important; color: #a8dadc !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rki-todo-edit.rki-btn-mini { background: #1a1a1f !important; color: #f1faee !important; }
[data-theme="dark"] button { background: transparent; }


/* v2.11.4 — Dark mode bg overrides for elements that use cream as BG (not text) */
[data-theme="dark"] .rkp-kanban-card,
[data-theme="dark"] .rkp-kanban-card.rkp-card-bewilligt,
[data-theme="dark"] .rkp-kanban-card:hover { background: #14141a !important; color: #ffffff !important; border-color: #2a2a32 !important; }
[data-theme="dark"] .rkp-detail-sibling:hover { background: #14141a !important; color: #a8dadc !important; }
[data-theme="dark"] .rkp-detail-related-item:hover { background: #14141a !important; }
[data-theme="dark"] .rkp-search-result:hover { background: #14141a !important; }
[data-theme="dark"] .rkp-bell-item:hover { background: #14141a !important; }
[data-theme="dark"] .rkp-vote-btn { background: #14141a !important; color: #f1faee !important; border-color: #2a2a32 !important; }
[data-theme="dark"] .rkp-vote-btn:hover { background: #1a1a1f !important; }
[data-theme="dark"] .rkp-vote-active { background: #2d8b8b !important; color: #ffffff !important; }
[data-theme="dark"] .rkp-fab-menu a:hover { background: #14141a !important; }

/* Filter form text MUST contrast with bg #1e2433 — use cream */
[data-theme="dark"] .rkp-filter-form,
[data-theme="dark"] .rki-filter-bar,
[data-theme="dark"] form.rkp-filter-form,
[data-theme="dark"] form.rki-filter-bar { background: #1e2433 !important; color: #f1faee !important; }
[data-theme="dark"] .rkp-filter-form *,
[data-theme="dark"] .rki-filter-bar *,
[data-theme="dark"] .rkp-filter-form label,
[data-theme="dark"] .rki-filter-bar label { color: #f1faee !important; }
[data-theme="dark"] .rkp-filter-form select,
[data-theme="dark"] .rkp-filter-form input,
[data-theme="dark"] .rki-filter-bar select,
[data-theme="dark"] .rki-filter-bar input { background: #2a3142 !important; color: #f1faee !important; }
[data-theme="dark"] .rkp-filter-form select option,
[data-theme="dark"] .rki-filter-bar select option { background: #1e2433 !important; color: #f1faee !important; }

/* rki-link-filterbar (Dokumente + Links separate filter bar) */
[data-theme="dark"] .rki-link-filterbar { background: #1e2433 !important; color: #f1faee !important; padding: 12px 14px !important; border-radius: 10px !important; border: 1px solid #2a3142 !important; }
[data-theme="dark"] .rki-link-filterbar * { color: #f1faee !important; }
[data-theme="dark"] .rki-link-filterbar a { color: #a8dadc !important; }
[data-theme="dark"] .rki-link-filterbar a:hover { color: #ffffff !important; }
[data-theme="dark"] .rki-link-filterbar a.is-active { background: #2d8b8b !important; color: #ffffff !important; }
[data-theme="dark"] .rki-link-filterbar select,
[data-theme="dark"] .rki-link-filterbar input { background: #2a3142 !important; color: #f1faee !important; border-color: #3a4255 !important; }

/* v2.11.5 — Improved export button contrast in dark */
[data-theme="dark"] .rkp-export-btn { background: #2d8b8b !important; color: #ffffff !important; border: 1px solid #3dafaf !important; }
[data-theme="dark"] .rkp-export-btn:hover { background: #3dafaf !important; }
