/*
 * MEAI – globale Styles (css/styles.css)
 * Reine CSS-Datei (keine <style>-Tags). Eingebunden in index.html.
 */

@import url('./tokens.css');

/* ============================= */
/* DESIGN-TOKENS / VARIABLEN */
/* Farben, Radii, Schatten */
/* ============================= */
:root {
--bg: #070b14;
--bg-2: #0b1020;
--panel: rgba(14, 20, 36, 0.88);
--panel-2: rgba(18, 26, 45, 0.9);
--panel-3: rgba(11, 17, 30, 0.92);
--line: rgba(255, 255, 255, 0.09);
--text: #f5f7fb;
--muted: #a5b0c5;
--blue: #2f7cff;
--blue-2: #60a5ff;
--green: #1fd38a;
--orange: #ffb545;
--red: #ff5d73;
--purple: #9c6bff;
--cyan: #39d5ff;
--shadow: 0 18px 60px rgba(0, 0, 0, 0.35);
--shadow-context: 0 4px 18px rgba(0, 0, 0, 0.16);
--shadow-command: 0 28px 88px rgba(0, 0, 0, 0.52);
--surface-context: linear-gradient(180deg, rgba(16, 20, 36, 0.82), rgba(10, 14, 26, 0.92));
--surface-command: linear-gradient(165deg, rgba(14, 22, 44, 0.98) 0%, rgba(7, 11, 24, 0.99) 100%);
--line-context: rgba(255, 255, 255, 0.055);
--line-command: rgba(96, 165, 255, 0.26);
--surface-dropdown: #121a2e;
--radius-xl: 24px;
--radius-lg: 18px;
--radius-md: 14px;
--radius-sm: 12px;
/* Typografie-System (eine Skala für Shell + Module) */
--mei-type-page: 32px;
--mei-type-page-weight: 600;
--mei-type-page-lh: 1.12;
--mei-type-h2: 17px;
--mei-type-h2-weight: 550;
--mei-type-h3: 15px;
--mei-type-h3-weight: 500;
--mei-type-body: 14px;
--mei-type-body-weight: 400;
--mei-type-secondary: 13px;
--mei-type-secondary-weight: 400;
--mei-type-meta: 12px;
--mei-type-meta-weight: 450;
--mei-type-label: 10px;
--mei-type-label-weight: 600;
--mei-type-label-track: 0.05em;
--mei-shadow-card: var(--shadow);
--mei-shadow-card-elevated: 0 18px 48px rgba(0, 0, 0, 0.28);
--mei-space-1: 8px;
--mei-space-2: 12px;
--mei-space-3: 16px;
--mei-space-4: 24px;
}

/* Demo: Light-Modus (Toggle Topbar) – nur Token-Shift, gleiche Struktur */
html.theme-light {
  --bg: #f2f5fb;
  --bg-2: #e8edf6;
  --panel: rgba(255, 255, 255, 0.94);
  --panel-2: rgba(255, 255, 255, 0.92);
  --panel-3: rgba(248, 250, 255, 0.96);
  --line: rgba(12, 24, 48, 0.12);
  --text: #0e1424;
  --muted: #5a6478;
  --shadow: 0 18px 48px rgba(15, 35, 70, 0.12);
  --surface-dropdown: #ffffff;
  --surface-command: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(240, 245, 255, 0.99) 100%);
  --line-command: rgba(47, 124, 255, 0.22);
  --surface-context: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(242, 246, 252, 0.95));
  --line-context: rgba(12, 24, 48, 0.1);
}

html.theme-light body {
  background:
    radial-gradient(circle at top left, rgba(47, 124, 255, 0.14), transparent 28%),
    radial-gradient(circle at bottom left, rgba(31, 211, 138, 0.1), transparent 26%),
    linear-gradient(135deg, #eef2fb 0%, #f6f8fd 55%, #eef1f8 100%);
}

html.theme-light .sidebar {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 248, 255, 0.96));
}

html.theme-light .card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 255, 0.94));
}

html.theme-light .chat-input input {
  color: var(--text);
}

html.theme-light .searchbar input {
  color: var(--text);
}

html.theme-light .icon-btn.theme-toggle.is-light-active {
  color: #c47a00;
  border-color: rgba(255, 180, 60, 0.35);
  background: rgba(255, 200, 80, 0.12);
}

/* Light mode contrast hardening */
html.theme-light .sidebar {
  color: #1c2940;
  border-right-color: rgba(20, 36, 66, 0.14);
}

html.theme-light .sidebar .nav-item,
html.theme-light .sidebar .nav-group,
html.theme-light .sidebar .user-name,
html.theme-light .sidebar .user-status {
  color: #1f2d45;
}

html.theme-light .sidebar .nav-icon,
html.theme-light .sidebar .nav-item .nav-icon,
html.theme-light .sidebar .nav-item i {
  color: #1b2f4f;
  opacity: 1;
}

html.theme-light .sidebar .nav-item:hover {
  background: rgba(26, 54, 108, 0.08);
  border-color: rgba(26, 54, 108, 0.16);
}

html.theme-light .sidebar .nav-item.active {
  background: rgba(47, 124, 255, 0.16);
  color: #17365f;
  border-color: rgba(47, 124, 255, 0.2);
}

html.theme-light .sidebar .nav-item.active .nav-icon,
html.theme-light .sidebar .nav-item.active i {
  color: #17365f;
  opacity: 1;
}

html.theme-light .card,
html.theme-light .col.col-right > .card:not(.ai-card),
html.theme-light .col-left > .card:not(.ai-card),
html.theme-light .col-middle > .card {
  background: linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
  border-color: rgba(18, 34, 64, 0.12);
}

html.theme-light .card--at-a-glance,
html.theme-light .card--at-a-glance .card-inner {
  background: linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
  border-color: rgba(18, 34, 64, 0.12);
}

html.theme-light .topbar,
html.theme-light .topbar--chrome {
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(20, 36, 66, 0.1);
  border-radius: 14px;
  padding: 8px 10px;
}

html.theme-light .topbar--chrome .welcome h1,
html.theme-light .topbar--chrome .welcome p,
html.theme-light .topbar--chrome .icon-btn,
html.theme-light .topbar--chrome .icon-btn .icon-svg {
  color: #18263d;
}

html.theme-light .searchbar {
  background: #ffffff;
  border-color: rgba(20, 36, 66, 0.16);
}

html.theme-light .ai-card,
html.theme-light .col.col-right .card.ai-card {
  background: linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
  border-color: rgba(18, 34, 64, 0.12);
}

html.theme-light .chat-input {
  background: #ffffff;
  border-color: rgba(20, 36, 66, 0.16);
}

html.theme-light .chat-input input {
  background: transparent;
  color: #1b2a42;
}

html.theme-light .tabs .tab,
html.theme-light .tab {
  background: #eef3fb;
  border-color: rgba(20, 36, 66, 0.12);
  color: #24344d;
}

html.theme-light .tabs .tab.active,
html.theme-light .tab.active {
  background: rgba(47, 124, 255, 0.18);
  border-color: rgba(47, 124, 255, 0.28);
  color: #123763;
}

html.theme-light .ai-head {
  background: rgba(238, 244, 252, 0.95);
  border-bottom-color: rgba(20, 36, 66, 0.12);
}

html.theme-light .ai-body,
html.theme-light .chat-log,
html.theme-light .chat-msg,
html.theme-light .chat-msg.user {
  color: #1b2a42;
}

html.theme-light .chat-msg {
  background: rgba(238, 244, 252, 0.8);
  border: 1px solid rgba(20, 36, 66, 0.1);
}

html.theme-light .chat-msg.user {
  background: rgba(47, 124, 255, 0.12);
  border-color: rgba(47, 124, 255, 0.24);
}

html.theme-light .icon-btn,
html.theme-light .ghost-btn {
  background: #ffffff;
  color: #1d2d47;
  border: 1px solid rgba(20, 36, 66, 0.16);
}

html.theme-light .primary-btn,
html.theme-light .send-btn {
  background: linear-gradient(180deg, #2f7cff 0%, #2a66c9 100%);
  color: #ffffff;
  border: 1px solid rgba(31, 85, 171, 0.5);
}

/* ============================= */
/* BASIS / RESET */
/* Box-Model, Body, Grundlayout */
/* ============================= */
* {
box-sizing: border-box;
}

html, body {
margin: 0;
padding: 0;
min-height: 100%;
background:
  radial-gradient(circle at top left, rgba(47,124,255,0.18), transparent 25%),
  radial-gradient(circle at bottom left, rgba(31,211,138,0.12), transparent 25%),
  radial-gradient(circle at top right, rgba(156,107,255,0.12), transparent 22%),
  linear-gradient(135deg, #060914 0%, #0a1020 55%, #09101a 100%);
color: var(--text);
font-family: var(--mei-font-family);
}

body {
overflow-x: hidden;
}

/* ============================= */
/* APP-LAYOUT */
/* Grid: Sidebar + Hauptbereich */
/* ============================= */
.app {
display: grid;
grid-template-columns: 260px minmax(0, 1fr);
min-height: 100vh;
}

/* ============================= */
/* SIDEBAR – BASIS */
/* Container, Marken-Bereich */
/* ============================= */
.sidebar {
position: sticky;
top: 0;
width: 260px;
height: 100vh;
min-height: 100vh;
overflow-y: auto;
background: linear-gradient(180deg, rgba(8,12,24,0.98), rgba(7,10,18,0.95));
border-right: 1px solid var(--line);
padding: 32px 16px 18px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: inset -1px 0 0 rgba(255,255,255,0.03);
}

/* ============================= */
/* SIDEBAR — Brand Anchor (Full-Logo, kein Karten-Container; js/mei-brand.js: .mei-full-logo) */
/* ============================= */
.brand {
display: flex;
align-items: center;
gap: 0;
padding: 6px 8px 0;
margin-bottom: 24px;
}

.brand--compact {
padding: 0;
margin-bottom: 0;
}

.brand--mobile-mark {
flex: 1;
min-width: 0;
justify-content: flex-start;
align-items: center;
}

.sidebar-brand-anchor {
flex-shrink: 0;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
padding: 4px 6px 26px;
margin: 0 0 6px;
border-bottom: 1px solid rgba(255, 255, 255, 0.07);
box-sizing: border-box;
}

html.theme-light .sidebar-brand-anchor {
border-bottom-color: rgba(12, 24, 48, 0.09);
}

.mei-brand-sidebar-full {
height: 68px;
width: auto;
max-width: 100%;
display: block;
object-fit: contain;
object-position: center center;
}

.mei-brand-lockup {
height: 44px;
width: auto;
max-width: min(100%, 320px);
display: block;
object-fit: contain;
object-position: left center;
}

/* ============================= */
/* SIDEBAR – NAVIGATION */
/* Navigations-Layout + Scrollbereich */
/* ============================= */
.nav{
display:flex;
flex-direction:column;
gap:0;
margin-top:6px;
flex:0 0 auto;
overflow:visible;
padding-bottom:6px;
}

/* Sidebar Gruppenüberschriften */
/* ÜBERSICHT / BETRIEB / STRATEGIE / GESCHÄFT / SYSTEM */
.nav-group{
margin-top:10px;
margin-bottom:-4px;
font-size:10px;
letter-spacing:1px;
color:rgba(255,255,255,0.35);
font-weight:600;
padding:0 14px 4px 14px;
border-bottom:1px solid rgba(255,255,255,0.06);
}

/* Sidebar Navigationspunkte */
/* Menüeinträge mit Hover + Active Status */
.nav-item {
display: flex;
align-items: center;
gap: 12px;
padding: 2px 14px;
border-radius: 16px;
color: #dce5f4;
text-decoration: none;
font-size: 14px;
font-weight: 400;
border: 1px solid transparent;
transition: 0.22s ease;
cursor: pointer;
}

.nav-item + .nav-item{
margin-top:-2px;
}
.nav-group + .nav-item{
margin-top:-4px;
}
.sidebar{
display:flex;
flex-direction:column;
height:100vh;
}

.nav-item:hover {
background: rgba(255,255,255,0.04);
border-color: rgba(255,255,255,0.05);
transform: translateX(2px);
}

.nav-item.active {
background: linear-gradient(180deg, rgba(33,105,255,0.24), rgba(14,46,115,0.20));
border-color: rgba(96,165,255,0.25);
box-shadow: inset 3px 0 0 #4ea1ff, 0 0 18px rgba(47,124,255,0.18);
}

.nav-icon {
width: 24px;
text-align: center;
opacity: 0.95;
}

.sidebar-bottom {
margin-top: 12px;
padding-bottom: 18px;
display: flex;
flex-direction: column;
gap: 16px;
}

.sidebar-today-card {
  margin-top: 0;
  background: var(--panel-3);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 14px 14px 12px;
  box-shadow: var(--mei-shadow-card);
}

.sidebar-today-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(130, 145, 175, 0.9);
  margin-bottom: 8px;
}

.sidebar-today-date {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.015em;
  color: rgba(248, 250, 255, 0.98);
  line-height: 1.35;
  margin-bottom: 6px;
}

.sidebar-today-time {
  font-size: 22px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
  color: rgba(195, 208, 230, 0.92);
}

.sidebar-product-line {
  margin: 0;
  font-size: 10px;
  line-height: 1.45;
  color: rgba(130, 145, 175, 0.78);
  letter-spacing: 0.02em;
  padding: 0 2px;
}


/* ============================= */
/* SIDEBAR MODULE: Vision 2028 — Entscheidungskompass (V3) */
/* ============================= */
.vision-card {
  background: var(--panel-3);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 14px 14px 12px;
  box-shadow: var(--mei-shadow-card);
  overflow: hidden;
}

.vision-header {
  margin: 0 0 16px;
}

.vision-heading {
  margin: 0 0 5px;
  font-size: var(--mei-type-h2);
  font-weight: var(--mei-type-h2-weight);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: rgba(232, 240, 255, 0.98);
}

.vision-tagline {
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  color: var(--muted);
  font-weight: 500;
}

.vision-lever-block {
  margin: 0 0 14px;
  padding: 2px 0 16px 12px;
  border: none;
  border-radius: 0;
  border-left: 2px solid rgba(96, 165, 255, 0.4);
  background: transparent;
}

.vision-block-label {
  display: block;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(175, 190, 218, 0.88);
  margin-bottom: 8px;
}

.vision-block-label--sub {
  margin-bottom: 4px;
  font-size: 8px;
  letter-spacing: 0.06em;
  color: rgba(145, 160, 188, 0.85);
}

.vision-lever-text {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.32;
  letter-spacing: -0.015em;
  color: rgba(248, 250, 255, 0.99);
}

.vision-context {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
}

.vision-context-text {
  margin: 0;
  font-size: 10px;
  line-height: 1.38;
  color: rgba(168, 182, 210, 0.95);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}

.vision-alignment {
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.vision-alignment-line {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 450;
  color: rgba(158, 172, 200, 0.92);
}

.vision-metric-pct {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(195, 208, 230, 0.88);
}

.vision-alignment-sep {
  font-weight: 450;
  color: rgba(120, 135, 165, 0.65);
}

.vision-alignment-read {
  font-weight: 450;
  color: rgba(165, 178, 205, 0.92);
}

.vision-horizon {
  margin: 12px 0 0;
  font-size: 10px;
  line-height: 1.45;
  color: rgba(155, 170, 198, 0.92);
  font-weight: 600;
  letter-spacing: 0.025em;
}

.vision-line .vision-status {
  font-weight: 600;
  color: #7dd3fc;
}

.vision-card.vision-active {
  border-color: rgba(96, 165, 255, 0.22);
  box-shadow: var(--mei-shadow-card);
}


/* ============================= */
/* SIDEBAR MODULE: User Profile */
/* Benutzerinformationen */
/* ============================= */
.user-card {
display: flex;
align-items: center;
gap: 12px;
background: rgba(255,255,255,0.03);
border: 1px solid var(--line);
border-radius: 18px;
padding: 12px;
}

.avatar {
width: 44px;
height: 44px;
border-radius: 50%;
background: linear-gradient(135deg, #2f7cff, #7ab8ff);
display: grid;
place-items: center;
color: white;
font-weight: 600;
font-size: 16px;
box-shadow: 0 8px 18px rgba(47,124,255,0.28);
flex-shrink: 0;
}

.user-meta {
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
}

.user-name {
font-size: 16px;
font-weight: 500;
}

.user-status {
font-size: 13px;
color: var(--muted);
}


/* ============================= */
/* HAUPTINHALTSBEREICH */
/* Hauptbereich des Dashboards */
/* ============================= */
.main {
padding: var(--mei-space-4);
min-height: 100vh;
min-width: 0;
width: 100%;
}

.main-header-zone {
  min-height: 106px;
  display: flex;
  align-items: center;
  padding-top: 4px;
  padding-bottom: 12px;
}

.main-header-zone .topbar {
  width: 100%;
}

.main-header-divider {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.08);
}

html.theme-light .main-header-divider {
  background: rgba(12, 24, 48, 0.1);
}

.main-content-shell {
  margin-top: 20px;
}

/* Planer & Finanzen: Abstand Inhalt zur bestehenden Header-Trennlinie = 16px. */
.main.main--planner .main-content-shell {
  margin-top: 16px;
}

.main.main--planner {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  /* Gleicher Abstand wie zwischen Planner-Karten (.mei-grid column-gap: 20px) */
  padding-left: 20px;
  padding-right: 20px;
}

.topbar {
display: grid;
grid-template-columns: 1fr auto;
gap: 16px;
align-items: center;
margin-bottom: 0;
}

.topbar-controls {
display: inline-flex;
align-items: center;
justify-content: flex-end;
gap: 10px;
justify-self: end;
margin-left: auto;
}

.welcome h1 {
margin: 0;
font-size: var(--mei-type-page);
font-weight: var(--mei-type-page-weight);
line-height: var(--mei-type-page-lh);
letter-spacing: -0.01em;
}

.welcome p {
margin: 8px 0 0;
color: var(--muted);
font-size: var(--mei-type-h3);
font-weight: 300;
}

.searchbar {
min-width: 300px;
display: flex;
align-items: center;
gap: 12px;
background: rgba(255,255,255,0.05);
border: 1px solid var(--line);
border-radius: 18px;
padding: 14px 16px;
color: var(--muted);
box-shadow: var(--shadow);
}

.searchbar input {
width: 100%;
background: transparent;
border: none;
outline: none;
color: var(--text);
font-family: inherit;
font-size: 15px;
}

.top-actions {
display: flex;
align-items: center;
gap: 10px;
}

/* Topbar: UI-Chrome absichtlich zurückhaltend — Marke (Sidebar) bleibt führend */
.topbar--chrome .searchbar {
min-width: 200px;
max-width: 280px;
padding: 9px 12px;
background: rgba(255, 255, 255, 0.028);
box-shadow: none;
border-color: rgba(255, 255, 255, 0.07);
opacity: 0.88;
}

html.theme-light .topbar--chrome .searchbar {
background: rgba(255, 255, 255, 0.72);
border-color: var(--line);
opacity: 1;
}

.topbar--chrome .searchbar .searchbar-icon .icon-svg {
width: 18px;
height: 18px;
opacity: 0.85;
}

.topbar--chrome .searchbar input {
font-size: 14px;
}

.topbar--chrome .icon-btn {
width: 38px;
height: 38px;
border-radius: 13px;
font-size: 14px;
box-shadow: none;
background: rgba(255, 255, 255, 0.028);
border-color: rgba(255, 255, 255, 0.08);
opacity: 0.85;
}

.topbar--chrome .icon-btn:hover {
transform: none;
background: rgba(255, 255, 255, 0.07);
}

.topbar--chrome .icon-btn .icon-svg {
width: 19px;
height: 19px;
opacity: 0.88;
}

.topbar--chrome .primary-btn {
padding: 9px 13px;
font-size: 13px;
font-weight: 500;
box-shadow: 0 4px 12px rgba(47, 124, 255, 0.16);
opacity: 0.92;
}

.topbar--chrome .primary-btn:hover {
transform: none;
box-shadow: 0 8px 18px rgba(47, 124, 255, 0.24);
}

/* Begrüßung: nicht gleiche visuelle Stufe wie globale Marke (Sidebar) */
.topbar--chrome .welcome h1 {
font-size: clamp(1.35rem, 2.2vw, 1.65rem);
font-weight: 600;
letter-spacing: -0.02em;
opacity: 0.96;
}

.topbar--chrome .welcome p {
opacity: 0.92;
}

.mei-breadcrumb {
  margin: 6px 0 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: rgba(164, 178, 206, 0.9);
}

.mei-breadcrumb__link {
  color: inherit;
  text-decoration: none;
}

.mei-breadcrumb__link--current {
  color: rgba(229, 236, 250, 0.98);
  font-weight: 600;
}

.mei-breadcrumb__sep {
  color: rgba(130, 145, 175, 0.7);
}

html.theme-light .mei-breadcrumb {
  color: rgba(80, 96, 124, 0.92);
}

html.theme-light .mei-breadcrumb__link--current {
  color: rgba(21, 38, 66, 0.95);
}

.icon-btn, .primary-btn, .ghost-btn {
border: none;
outline: none;
font-family: inherit;
cursor: pointer;
transition: 0.2s ease;
}

.icon-btn {
width: 46px;
height: 46px;
border-radius: 16px;
background: rgba(255,255,255,0.05);
color: var(--text);
border: 1px solid var(--line);
box-shadow: var(--shadow);
font-size: 17px;
display: inline-flex;
align-items: center;
justify-content: center;
line-height: 0;
}

.icon-btn:hover {
transform: translateY(-1px);
background: rgba(255,255,255,0.08);
}

/* Topbar: einheitliche SVG-Icons (eine visuelle Sprache) */
.icon-btn .icon-svg {
  display: block;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  margin: 0;
  transform: translateY(0.5px);
}

/* Theme-Toggle: gleiche Fläche wie .icon-btn, ruhiger Aktivzustand */
.icon-btn.theme-toggle.is-dark-active {
  color: rgba(180, 200, 230, 0.95);
  border-color: rgba(96, 165, 255, 0.22);
  background: rgba(47, 124, 255, 0.1);
}

html.theme-light .icon-btn.theme-toggle .theme-icon-sun {
  display: none;
}

html.theme-light .icon-btn.theme-toggle .theme-icon-moon {
  display: block !important;
}

html:not(.theme-light) .icon-btn.theme-toggle .theme-icon-moon {
  display: none !important;
}

.searchbar .searchbar-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}

.searchbar .searchbar-icon .icon-svg {
  width: 20px;
  height: 20px;
  opacity: 0.92;
}

.primary-btn {
background: linear-gradient(135deg, #2f7cff, #0f62ff);
color: white;
padding: 13px 18px;
border-radius: 16px;
font-size: 15px;
font-weight: 500;
box-shadow: 0 12px 22px rgba(47,124,255,0.28);
}

.primary-btn:hover {
transform: translateY(-1px);
box-shadow: 0 16px 28px rgba(47,124,255,0.34);
}

.ghost-btn {
background: rgba(255,255,255,0.04);
color: #dfe8f8;
border: 1px solid var(--line);
padding: 12px 16px;
border-radius: 14px;
font-size: 14px;
font-weight: 400;
}

.ghost-btn:hover {
background: rgba(255,255,255,0.07);
}

/* ============================= */
/* DASHBOARD-LAYOUT */
/* 3 Spalten: Inhalt | Analyse | KI-Assistent */
/* ============================= */
.dashboard {
display: grid;
grid-template-columns: minmax(0, 0.92fr) minmax(0, 0.72fr) minmax(548px, 1.22fr);
gap: 10px 22px;
align-items: stretch;
}

.dashboard .col {
gap: 16px;
}

.col {
display: flex;
flex-direction: column;
gap: 18px;
min-width: 0;
}

/* =============================================================================
   COMMAND SURFACE vs. CONTEXT SURFACE (mutige Hierarchie)
   Rechts = Arbeitskonsole (meAI). Links/Mitte = gedämpfter Kontext — keine zweite Bühne.
   ============================================================================= */

.col.col-right {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 0;
  align-items: stretch;
  padding-left: 22px;
  margin-left: 2px;
  border-left: 1px solid rgba(96, 165, 255, 0.14);
  background:
    linear-gradient(90deg, rgba(47, 124, 255, 0.04) 0%, transparent 42%),
    linear-gradient(180deg, rgba(8, 14, 30, 0.42) 0%, rgba(5, 8, 18, 0.2) 100%);
  border-radius: 0 var(--radius-xl) var(--radius-xl) 0;
}

/* Kontext-Karten: flacher, weniger „Premium-Dashboard“ (inkl. Split-Bereiche in links) */
.col-left > .card:not(.ai-card),
.col-left .split-2 .card,
.col-middle > .card {
  background: var(--surface-context);
  box-shadow: var(--shadow-context);
  border-color: var(--line-context);
}

/* Heute: KPIs entschärfen — Agenda vor Zahlen-Theater */
.card--today .mini-stat {
  background: rgba(255, 255, 255, 0.028) !important;
  border-color: rgba(255, 255, 255, 0.06) !important;
}

.card--today .mini-stat-label {
  font-size: 11px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  opacity: 0.85;
}

.card--today .mini-stat-value {
  font-size: 18px;
  font-weight: 600;
  color: rgba(232, 240, 252, 0.94);
}

.card--today .mini-stat.blue .mini-stat-value {
  color: rgba(130, 176, 255, 0.88);
}

.card--today .mini-stat.orange .mini-stat-value {
  color: rgba(255, 200, 130, 0.88);
}

.card--today .mini-stat.green .mini-stat-value {
  color: rgba(120, 220, 180, 0.85);
}

.card--today .mini-stat.red .mini-stat-value {
  color: rgba(255, 150, 165, 0.88);
}

.card--today .today-item {
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(255, 255, 255, 0.045);
}

/* =============================================================================
   LAYOUT-RUNDE — Hierarchie, Proportionen, Kontext zurückgenommen
   ============================================================================= */

/* —— Heute: Mikro-Finalisierung (keine Verkleinerung der KPI-Fläche) —— */
.card--today .card-inner {
  padding: 16px 18px 18px;
}

.card--today .card-title-row {
  margin-bottom: 14px;
}

.card--today .card-title {
  font-size: 16px;
  font-weight: 600;
}

.card--today .card-subtitle {
  font-size: 12px;
}

.card--today .stat-grid {
  gap: 8px;
  margin-bottom: 14px;
  align-items: stretch;
}

.card--today .mini-stat {
  padding: 11px 9px 11px;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  min-height: 94px;
}

.card--today .mini-stat-label {
  margin-bottom: 0;
  min-height: 2.65em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.16;
  hyphens: manual;
  word-break: break-word;
  padding: 0 3px;
}

.card--today .mini-stat-value {
  margin-top: auto;
  padding-top: 5px;
  text-align: center;
  width: 100%;
  line-height: 1.05;
}

.card--today .today-list {
  gap: 8px;
  margin-bottom: 12px;
}

.card--today .today-item {
  padding: 11px 13px;
  border-radius: 14px;
  gap: 12px;
}

.card--today .time {
  font-size: 14px;
}

.card--today .today-text strong {
  font-size: 15px;
  font-weight: 500;
}

.card--today .today-text span {
  font-size: 13px;
}

.card--today .badge {
  padding: 6px 10px;
  font-size: 11px;
}

/* —— Linke Spalte: untere Kontext-Karten ruhiger —— */
.col-left .split-2 .card .card-inner,
.col-left > .card:not(.card--today) .card-inner {
  padding: 16px 16px 17px;
}

.col-left .split-2 .card-title,
.col-left > .card:not(.card--today) .card-title {
  font-size: 16px;
  font-weight: 600;
}

.col-left .split-2 .card-subtitle,
.col-left > .card:not(.card--today) .card-subtitle {
  font-size: 13px;
}

.col-left .focus-row {
  padding: 11px 12px;
  border-radius: 14px;
}

.col-left .focus-top {
  font-size: 14px;
  margin-bottom: 8px;
}

.col-left .focus-list {
  gap: 10px;
}

.col-left .bar {
  height: 8px;
}

.col-left .project-card .project-title {
  font-size: 15px;
}

.col-left .project-card .project-sub {
  font-size: 13px;
}

.col-left .project-chip {
  min-width: 36px;
  height: 36px;
  border-radius: 12px;
  font-size: 15px;
}

.col-left .project-progress .bar {
  height: 7px;
}

.col-left .task-item {
  padding: 11px 13px;
  border-radius: 14px;
}

.col-left .task-main strong {
  font-size: 16px;
}

.col-left .task-main span {
  font-size: 13px;
}

.col-left .tabs .tab {
  padding: 8px 12px;
  font-size: 12px;
}

/* —— Focus Areas (Mitte): mehr Luft, ruhiger Header —— */
.card--focus-areas .card-inner {
  padding: 16px 16px 17px;
}

.card--focus-areas .card-title {
  font-size: 14px;
  font-weight: 600;
  color: rgba(200, 210, 228, 0.88);
}

.card--focus-areas .card-subtitle {
  font-size: 11px;
}

.card--focus-areas .card-title-row {
  margin-bottom: 14px;
  align-items: flex-start;
}

.card--focus-areas .card-title-row .ghost-btn {
  padding: 5px 9px;
  font-size: 11px;
  border-radius: 9px;
  font-weight: 500;
  opacity: 0.92;
}

.card--focus-areas #areasDefault.project-grid,
.card--focus-areas .project-grid {
  gap: 14px;
}

.card--focus-areas #areasDefault .project-card {
  padding: 14px 15px;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.015));
}

.card--focus-areas #areasDefault .project-title {
  font-size: 14px;
  margin-bottom: 2px;
}

.card--focus-areas #areasDefault .project-sub {
  font-size: 11px;
}

.card--focus-areas #areasDefault .project-chip {
  min-width: 24px;
  height: 24px;
  border-radius: 7px;
  font-size: 10px;
  box-shadow: none;
  opacity: 0.72;
}

.card--focus-areas #areasDefault .project-head {
  align-items: flex-start;
  gap: 10px;
}

.card--focus-areas #areasDefault .project-head > div:first-child {
  min-width: 0;
  flex: 1;
}

.card--focus-areas #areasDefault .project-progress .bar {
  height: 7px;
}

.card--focus-areas #areasDefault .project-progress span:last-child {
  font-size: 13px;
}

.card--focus-areas .areas-list {
  margin-top: 14px;
}

.card--focus-areas .list-item {
  padding: 10px 0;
  font-size: 12px;
}

/* —— Finanzen: Kontext, nicht Hauptbühne (Chart + KPI ohne Hero-Doppelung) —— */
.card--finance .card-inner {
  padding: 16px 16px 18px;
}

.card--finance .card-title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(210, 220, 238, 0.92);
}

.card--finance .card-subtitle {
  font-size: 12px;
}

.card--finance .finance-main .amount {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

/* € + Betrag: eine Baseline-Einheit, kein Umbruch */
.card--finance .amount-inline,
.card--finance .finance-metric .value.amount-inline {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: baseline;
  gap: 0.28em;
  white-space: nowrap;
}

.card--finance .amount-inline .currency {
  font-size: 0.78em;
  font-weight: 600;
  opacity: 0.88;
  line-height: 1;
  letter-spacing: 0;
}

.card--finance .amount-inline .amount-num {
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
}

.card--finance .finance-main .card-subtitle {
  font-size: 11px;
}

.card--finance .finance-metric .value {
  font-size: 19px;
}

.card--finance .finance-metric .label {
  font-size: 12px;
  line-height: 1.25;
  min-height: 3.1em;
  display: flex;
  align-items: flex-start;
}

.card--finance .chart {
  height: 84px;
  margin-top: 12px;
  opacity: 0.98;
}

.card--finance .chart svg path[stroke] {
  stroke-width: 2.5;
}

.card--finance .finance-chart-line {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation: meiFinanceChartDraw 1.75s cubic-bezier(0.4, 0, 0.2, 1) forwards 0.2s;
}

.card--finance .finance-chart-fill {
  opacity: 0;
  animation: meiFinanceChartFill 1.1s ease forwards 0.35s;
}

@keyframes meiFinanceChartDraw {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes meiFinanceChartFill {
  to {
    opacity: 1;
  }
}

.card--finance .finance-main,
.card--finance .finance-metric {
  border-radius: 12px;
}

.card--finance .finance-main {
  padding: 12px 13px;
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.045);
}

.card--finance .finance-main .delta {
  font-size: 11px;
  padding: 5px 9px;
  font-weight: 500;
}

.card--finance .finance-layout--stacked {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.card--finance .finance-main {
  width: 100%;
}

.card--finance .finance-metrics-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
}

.card--finance .finance-metric {
  padding: 13px 12px;
  min-height: 110px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 6px;
}

.card--finance .finance-metric .label {
  flex: 0 0 auto;
}

.card--finance .finance-metric .value {
  line-height: 1.2;
}

.card--finance .finance-metric .tiny {
  flex: 0 0 auto;
  margin-top: auto;
  padding-top: 4px;
  font-size: 11px;
  line-height: 1.3;
}

.card--finance .ghost-btn {
  font-size: 12px;
  padding: 8px 12px;
}

/* —— Auf einen Blick: Monitoring-Panel, unteres Ensemble —— */
.card--at-a-glance .card-inner {
  padding: 16px 16px 22px;
}

.card--at-a-glance .card-title {
  font-size: 14px;
  font-weight: 600;
  color: rgba(200, 210, 228, 0.88);
}

.card--at-a-glance .card-subtitle {
  font-size: 11px;
  color: rgba(130, 145, 172, 0.95);
}

.card--at-a-glance .card-title-row {
  margin-bottom: 12px;
}

.glance-list {
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(5, 8, 18, 0.45);
  overflow: hidden;
}

.glance-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 13px;
  min-height: 44px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.glance-row:last-child {
  border-bottom: none;
}

.glance-row-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.glance-title {
  font-size: 13px;
  font-weight: 600;
  color: rgba(225, 232, 246, 0.94);
  line-height: 1.25;
}

.glance-sub {
  font-size: 11px;
  font-weight: 400;
  color: rgba(145, 158, 182, 0.95);
}

.glance-metric {
  flex-shrink: 0;
  min-width: 2.25rem;
  text-align: right;
  font-size: 13px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(185, 198, 220, 0.88);
  letter-spacing: 0.02em;
}

/* —— Rechte Spalte: Woche & Status ruhiger —— */
.col-right .week-card .card-title {
  font-size: 16px;
}

.col-right .week-card .card-subtitle {
  font-size: 13px;
}

.col-right .week-row {
  padding: 10px 12px;
  border-radius: 14px;
}

.col-right .day-badge {
  padding: 8px 6px;
  font-size: 12px;
}

.col-right .bottom-status {
  gap: 8px;
  margin-top: 14px;
}

.col-right .status-chip {
  padding: 8px 11px;
  font-size: 12px;
  opacity: 0.92;
}

/* Untere Overview-Ensemble: gleiche End- & Titel-Qualität (keine Zwangshöhe) */
.col-left .split-2 .card .card-inner,
.col-middle .card--at-a-glance .card-inner,
.col-right > .week-card .card-inner {
  padding-bottom: 22px;
}

.col-left .split-2 .card .card-title-row,
.col-right .week-card .card-title-row {
  margin-bottom: 15px;
}


/* ============================= */
/* KARTEN-SYSTEM */
/* Basis-Design aller Dashboard-Karten */
/* ============================= */
.card {
background:
  linear-gradient(180deg, rgba(20,28,48,0.92), rgba(11,17,30,0.95));
border: 1px solid var(--line);
border-radius: var(--radius-xl);
box-shadow: var(--mei-shadow-card);
overflow: hidden;
}

.card-inner {
padding: var(--mei-space-4);
}

.card-title-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-bottom: 16px;
}

.card-title {
font-size: var(--mei-type-h2);
font-weight: var(--mei-type-h2-weight);
}

.card-subtitle {
color: var(--muted);
font-size: var(--mei-type-secondary);
margin-top: 6px;
font-weight: 300;
}

/* Einheitliche Card-/Header-Aktionen (kein weißer Flächen-Kontrast) */
.card-menu-btn {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.04);
  color: rgba(200, 214, 235, 0.88);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 1px;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.card-menu-btn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(96, 165, 255, 0.22);
  color: #fff;
}

.card-menu-btn:focus-visible {
  outline: 2px solid rgba(96, 165, 255, 0.45);
  outline-offset: 2px;
}

.ai-menu-btn {
  /* Heute-Karte & Legacy: gleiche Sprache wie card-menu-btn */
  width: 36px;
  height: 36px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.04);
  color: rgba(200, 214, 235, 0.88);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 1px;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.ai-menu-btn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(96, 165, 255, 0.22);
  color: #fff;
}

/* ============================= */
/* KARTENINHALT – KENNZAHLEN & HEUTE */
/* Mini-Statistiken, Heute-Liste, Badges */
/* ============================= */
.stat-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
margin-bottom: 16px;
}

.mini-stat {
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 18px;
padding: 14px 14px 12px;
}

.mini-stat-label {
color: var(--muted);
font-size: 13px;
margin-bottom: 8px;
}

.mini-stat-value {
font-size: 28px;
font-weight: 600;
line-height: 1;
}

.mini-stat.red .finance-main .amount { color: var(--red); }
.mini-stat.blue .mini-stat-value { color: var(--blue-2); }
.mini-stat.orange .mini-stat-value { color: var(--orange); }
.mini-stat.green .mini-stat-value { color: var(--green); }

.today-list {
display: flex;
flex-direction: column;
gap: 10px;
margin-bottom: 14px;
}

.today-item {
display: grid;
grid-template-columns: 84px 1fr auto;
gap: 14px;
align-items: center;
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 18px;
padding: 14px 16px;
}

.time {
color: #cdd8eb;
font-size: 16px;
font-weight: 400;
}

.today-text strong {
display: block;
font-size: 18px;
font-weight: 500;
margin-bottom: 3px;
}

.today-text span {
color: var(--muted);
font-size: 14px;
font-weight: 300;
}

.badge {
padding: 8px 12px;
border-radius: 999px;
font-size: 12px;
font-weight: 500;
white-space: nowrap;
}

.badge.live { background: rgba(47,124,255,0.15); color: #88b7ff; }
.badge.red { background: rgba(255,93,115,0.14); color: #ff8ea0; }
.badge.green { background: rgba(31,211,138,0.12); color: #82efc0; }
.badge.orange { background: rgba(255,181,69,0.12); color: #ffd089; }

/* ============================= */
/* KARTENINHALT – FOKUS & FORTSCHRITT */
/* Fokus-Liste, Fortschrittsbalken, Projekt-Karten */
/* ============================= */
.split-2 {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 18px;
}

.focus-list {
display: flex;
flex-direction: column;
gap: 14px;
}

.focus-row {
background: rgba(255,255,255,0.03);
border-radius: 18px;
border: 1px solid rgba(255,255,255,0.04);
padding: 14px;
}

.focus-top {
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
margin-bottom: 10px;
font-size: 16px;
}

.focus-top strong {
font-weight: 500;
}

.bar {
width: 100%;
height: 10px;
background: rgba(255,255,255,0.07);
border-radius: 999px;
overflow: hidden;
}

.bar > span {
display: block;
height: 100%;
border-radius: 999px;
background: linear-gradient(90deg, #2f7cff, #39d5ff);
}

.bar.green > span { background: linear-gradient(90deg, #14c57d, #54f0b1); }
.bar.orange > span { background: linear-gradient(90deg, #ff9e2f, #ffd166); }
.bar.purple > span { background: linear-gradient(90deg, #7b5cff, #ae87ff); }

.project-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
}

.project-card {
background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.025));
border: 1px solid rgba(255,255,255,0.05);
border-radius: 20px;
padding: 16px;
position: relative;
overflow: hidden;
}

.project-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
margin-bottom: 12px;
}

.project-title {
font-size: 17px;
font-weight: 600;
margin-bottom: 4px;
}

.project-sub {
font-size: 14px;
color: var(--muted);
font-weight: 300;
}

.project-chip {
min-width: 42px;
height: 42px;
border-radius: 14px;
display: grid;
place-items: center;
color: white;
font-size: 18px;
box-shadow: 0 8px 18px rgba(0,0,0,0.2);
}

.chip-green { background: linear-gradient(135deg, #12bf77, #34efad); }
.chip-blue { background: linear-gradient(135deg, #2f7cff, #5ab0ff); }
.chip-orange { background: linear-gradient(135deg, #ff992a, #ffd15d); }
.chip-purple { background: linear-gradient(135deg, #7b5cff, #b18cff); }

/* ============================= */
/* KARTENINHALT – PROJEKT-FORTSCHRITT */
/* Fortschrittsbalken in Projekt-Karten */
/* ============================= */
.project-progress {
margin-top: 8px;
display: flex;
align-items: center;
gap: 10px;
}

.project-progress .bar {
flex: 1;
height: 9px;
}

.project-progress span:last-child {
font-size: 14px;
color: #d7e4fb;
}

/* ============================= */
/* FINANZ-MODUL */
/* Umsatz, Diagramm, Metriken */
/* ============================= */
.finance-big {
display: grid;
grid-template-columns: 1.2fr 1fr;
gap: 16px;
align-items: stretch;
}

.finance-main {
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 22px;
padding: 18px;
}

.finance-main .amount {
font-size: 36px;
font-weight: 600;
margin: 6px 0 8px;
}

.finance-main .delta {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 12px;
border-radius: 999px;
background: rgba(31,211,138,0.14);
color: #88edbf;
font-size: 13px;
}

/* ============================= */
/* DIAGRAMM-BEREICH */
/* Finanzverlauf-Diagramm */
/* ============================= */
.chart {
position: relative;
height: 140px;
margin-top: 18px;
border-radius: 16px;
background:
  linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.00)),
  repeating-linear-gradient(
    to top,
    rgba(255,255,255,0.04),
    rgba(255,255,255,0.04) 1px,
    transparent 1px,
    transparent 28px
  );
overflow: hidden;
}

.chart svg {
width: 100%;
height: 100%;
display: block;
}

.finance-side {
display: flex;
flex-direction: column;
gap: 12px;
}

.finance-metric {
flex: 1;
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 18px;
padding: 16px 16px 15px;
display: flex;
flex-direction: column;
justify-content: flex-start;
gap: 8px;
min-height: 108px;
}

.finance-metric .label {
color: var(--muted);
font-size: 14px;
line-height: 1.25;
min-height: 2.5em;
}

.finance-metric .value {
font-size: 28px;
font-weight: 600;
line-height: 1.15;
}

.finance-metric .tiny {
font-size: 13px;
color: var(--muted);
margin-top: auto;
padding-top: 2px;
}

/* ============================= */
/* TABS & AUFGABEN-LISTE */
/* Tab-Navigation, Aufgaben-Einträge */
/* ============================= */
.tabs {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin-bottom: 14px;
}

.tab {
padding: 10px 14px;
border-radius: 999px;
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.06);
color: #d9e2f2;
font-size: 13px;
cursor: pointer;
font-family: inherit;
margin: 0;
appearance: none;
}

.tab.active {
background: rgba(47,124,255,0.16);
color: #aecdff;
border-color: rgba(96,165,255,0.22);
}

.task-list {
display: flex;
flex-direction: column;
gap: 10px;
}

.task-item {
display: grid;
grid-template-columns: auto 1fr auto;
gap: 12px;
align-items: center;
padding: 14px 16px;
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 18px;
}

.task-dot {
width: 12px;
height: 12px;
border-radius: 50%;
box-shadow: 0 0 10px currentColor;
}

.task-dot.green { color: var(--green); background: var(--green); }
.task-dot.orange { color: var(--orange); background: var(--orange); }
.task-dot.blue { color: var(--blue-2); background: var(--blue-2); }
.task-dot.red { color: var(--red); background: var(--red); }

.task-main strong {
display: block;
font-size: 18px;
font-weight: 500;
margin-bottom: 3px;
}

.task-main span {
font-size: 14px;
color: var(--muted);
font-weight: 300;
}

.task-price {
text-align: right;
font-size: 16px;
font-weight: 500;
}

.task-price small {
display: block;
color: var(--muted);
margin-top: 4px;
font-size: 12px;
font-weight: 300;
}

/* ============================= */
/* KI-ASSISTENT MODUL */
/* Chat-Oberfläche + Schnellaktionen */
/* ============================= */
.ai-summary{
background:rgba(255,255,255,0.03);
border:1px solid var(--line);
border-radius:var(--radius-md);
padding: var(--mei-space-2) var(--mei-space-3);
}

.summary-title{
font-size: var(--mei-type-label);
font-weight: var(--mei-type-label-weight);
letter-spacing: var(--mei-type-label-track);
text-transform: uppercase;
color: var(--muted);
margin-bottom: var(--mei-space-2);
}

.summary-items{
display:flex;
flex-direction:column;
gap: var(--mei-space-1);
}

.summary-item{
display:flex;
align-items:flex-start;
gap:10px;
font-size: var(--mei-type-secondary);
font-weight: var(--mei-type-body-weight);
line-height: 1.35;
color: var(--muted);
}

.dot{
width:8px;
height:8px;
border-radius:50%;
}

.dot.blue{background:#6ea8ff;}
.dot.orange{background:#ffb545;}
.dot.green{background:#33d69f;}

.quick-icon{
width:18px;
height:18px;
display:inline-flex;
align-items:center;
justify-content:center;
color:#8fb6ff;
font-size:14px;
}

.ai-card{
flex:1;
display:flex;
flex-direction:column;
min-height:0;
}

.ai-head {
padding: var(--mei-space-2) var(--mei-space-3);
border-bottom:1px solid rgba(255,255,255,0.06);

display:flex;
align-items:center;
justify-content:space-between;
gap: var(--mei-space-2);

background:rgba(10,16,30,0.55);
}

.menu-compact .ai-menu-item{
padding:6px 10px;
font-size:13px;
border-radius:8px;
}

.menu-compact .ai-menu-item + .ai-menu-item{
border-top:1px solid rgba(255,255,255,0.06);
margin-top:3px;
padding-top:8px;
}

.ai-title {
display: flex;
align-items: center;
gap: 12px;
}

.ai-badge {
width: 38px;
height: 38px;
border-radius: var(--radius-sm);
display: grid;
place-items: center;
background: linear-gradient(135deg, rgba(47,124,255,0.22), rgba(57,213,255,0.12));
border: 1px solid rgba(96,165,255,0.2);
color: #9ec8ff;
box-shadow: 0 0 10px rgba(47,124,255,0.1);
}

.ai-title h3 {
margin: 0;
font-size: var(--mei-type-h2);
font-weight: 500;
letter-spacing: -0.01em;
}

.ai-title p {
margin: 4px 0 0;
font-size: var(--mei-type-secondary);
color: var(--muted);
}

.ai-title .ai-online {
  color: var(--green);
  font-weight: 500;
}

.ai-title .ai-focus {
  color: var(--muted);
  font-weight: 400;
}

.ai-body{
flex:1;
overflow-y:auto;
padding: var(--mei-space-3);
display:flex;
flex-direction:column;
gap: var(--mei-space-3);
}

.assistant-msg {
display: flex;
gap: 10px;
align-items: flex-start;
}

.assistant-bubble {
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 16px;
padding: 12px 14px;
flex: 1;
font-size:14px;
}

.assistant-bubble strong {
display: block;
margin-bottom: 8px;
font-size: 16px;
font-weight: 500;
}

.assistant-bubble ul {
margin: 0;
padding-left: 18px;
color: #dbe6f5;
}

.assistant-bubble li {
margin-bottom: 6px;
font-size: 14px;
color: #dfe8f8;
}

/* AI-Empfehlung: eigene Karte (wie im Screenshot) */
.ai-recommendation {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--mei-shadow-card);
  padding: var(--mei-space-3);
  display: flex;
  flex-direction: column;
  gap: var(--mei-space-2);
}

.ai-recommendation-title {
  font-size: var(--mei-type-label);
  font-weight: var(--mei-type-label-weight);
  letter-spacing: var(--mei-type-label-track);
  text-transform: uppercase;
  color: var(--muted);
}

.ai-recommendation-text {
  font-size: var(--mei-type-h2);
  font-weight: 600;
  color: var(--text);
  line-height: 1.28;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ai-recommendation-meta {
  font-size: var(--mei-type-secondary);
  color: var(--muted);
  font-weight: 400;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ai-recommendation-btn {
  margin-top: 4px;
  align-self: flex-start;
}

/* Vorgeschlagener Prompt: klickbares Element mit Hintergrund */
.ai-suggested-prompt {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: var(--radius-md);
  font-size: 14px;
  color: var(--text);
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease;
}

.ai-suggested-prompt:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(96, 165, 255, 0.2);
}

.ai-suggested-prompt-icon {
  color: var(--blue-2);
  font-size: 14px;
  flex-shrink: 0;
}

.quick-actions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.quick-btn{
background:rgba(255,255,255,0.02);
border:1px solid rgba(255,255,255,0.05);
border-radius:12px;

padding:8px 10px;

font-size:13px;

display:flex;
align-items:center;
gap:8px;

color:#cfd9eb;

transition:0.2s ease;
}

.quick-btn:hover {
background: rgba(255,255,255,0.05);
transform: translateY(-1px);
}

.chat-log {
display:flex;
flex-direction:column;
gap:12px;

flex:1;
min-height:220px;

overflow:auto;
padding-right:4px;
}

.chat-msg {
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 16px;
padding: 12px 14px;
font-size: 14px;
line-height: 1.45;
}

.chat-msg.user {
background: rgba(47,124,255,0.12);
border-color: rgba(96,165,255,0.14);
}

.chat-msg--clickable {
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.chat-msg--clickable:hover {
  background: rgba(255, 255, 255, 0.055);
  border-color: rgba(255, 255, 255, 0.09);
}

.chat-msg--clickable.user:hover {
  background: rgba(47, 124, 255, 0.18);
  border-color: rgba(96, 165, 255, 0.22);
}

.chat-msg--clickable:active {
  transform: scale(0.992);
}

.chat-input-wrap {
display: flex;
align-items: center;
gap: 10px;
margin-top: 4px;
}

.chat-input {
flex: 1;
display: flex;
align-items: center;
gap: 10px;
border-radius: 16px;
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.06);
padding: 12px 14px;
}

.chat-input input {
width: 100%;
background: transparent;
border: none;
outline: none;
color: white;
font-family: inherit;
font-size: 14px;
}

.send-btn {
min-width: 48px;
height: 48px;
border-radius: 16px;
border: none;
cursor: pointer;
background: linear-gradient(135deg, #2f7cff, #0f62ff);
color: white;
font-size: 18px;
box-shadow: 0 10px 20px rgba(47,124,255,0.24);
display: inline-grid;
place-items: center;
padding: 0;
}

.send-btn svg {
  display: block;
}

/* =============================================================================
   PHASE 1 — AI-NAVIGATOR (nur .col.col-right / .card.ai-card)
   Ziel: Hero, eine Zone, fixe Eingabe, scrollbarer Mittelteil
   Command Surface: ai-card wirkt wie eigenes Panel (siehe auch Tokens --surface-command)
   ============================================================================= */

/* AI-Card: feste Rahmenhöhe → Mittelteil scrollt, Eingabe bleibt unten */
.col.col-right .card.ai-card {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  min-height: min(72vh, 680px);
  max-height: min(86vh, 920px);
  overflow: hidden;
  background: var(--surface-command);
  border: 1px solid var(--line-command);
  box-shadow:
    var(--shadow-command),
    0 0 0 1px rgba(96, 165, 255, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

/* Woche & Status: Kontext-Karten unterhalb der Konsole (nicht zweite Bühne) */
.col.col-right > .card:not(.ai-card) {
  background: var(--surface-context);
  border-color: var(--line-context);
  box-shadow: var(--shadow-context);
}

.col.col-right .ai-head {
  flex-shrink: 0;
  background: linear-gradient(180deg, rgba(12, 22, 44, 0.98), rgba(8, 14, 30, 0.96));
  border-bottom: 1px solid rgba(96, 165, 255, 0.16);
}

.col.col-right .ai-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 16px 16px 12px;
  gap: 16px;
  -webkit-overflow-scrolling: touch;
}

/* Hero: dominantes Element */
.col.col-right .ai-recommendation {
  background: linear-gradient(165deg, rgba(47, 124, 255, 0.18) 0%, rgba(255, 255, 255, 0.05) 55%, rgba(11, 17, 30, 0.4) 100%);
  border: 1px solid rgba(96, 165, 255, 0.28);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  border-radius: var(--radius-xl);
  padding: 22px 22px 24px;
  gap: 14px;
}

.col.col-right .ai-recommendation-title {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(165, 176, 200, 0.95);
}

.col.col-right .ai-recommendation-text {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.col.col-right .ai-recommendation-meta {
  font-size: 14px;
  color: var(--muted);
}

.col.col-right .ai-recommendation-btn {
  align-self: stretch;
  width: 100%;
  text-align: center;
  padding: 14px 20px;
  font-size: 15px;
  font-weight: 600;
  margin-top: 2px;
}

/* Quick Actions: klar untergeordnet zur Hero-Karte */
.col.col-right .quick-actions {
  margin-top: 2px;
  gap: 8px;
}

.col.col-right .quick-btn {
  font-size: 12px;
  padding: 7px 8px;
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.06);
  color: rgba(220, 230, 245, 0.88);
}

.col.col-right .quick-btn .quick-icon {
  opacity: 0.8;
  font-size: 13px;
}

/* Chat im Panel: kein eigenes Mindestgewicht — scrollt mit .ai-body */
.col.col-right .ai-body .chat-log {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
}

/* Eingabe: fix unten, eigene Leiste = eine Zone */
.col.col-right .chat-input-wrap {
  flex-shrink: 0;
  margin-top: 0;
  padding: 14px 16px 16px;
  position: relative;
  border-top: 1px solid rgba(96, 165, 255, 0.22);
  background:
    linear-gradient(180deg, rgba(47, 124, 255, 0.07) 0%, transparent 42%),
    linear-gradient(180deg, rgba(7, 11, 20, 0.92) 0%, rgba(6, 10, 18, 0.98) 100%);
  box-shadow: inset 0 1px 0 rgba(96, 165, 255, 0.12);
}

.col.col-right .ai-suggested-prompt {
  margin-top: 8px;
}

@media (max-width: 1180px) {
  .col.col-right .card.ai-card {
    min-height: min(58vh, 520px);
    max-height: min(78vh, 800px);
  }
  /* Globales 1-Spalten-Grid für .quick-actions nicht im AI-Panel anwenden */
  .col.col-right .quick-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


/* ============================= */
/* WOCHE-PLANER MODUL */
/* Kalenderübersicht der Woche */
/* ============================= */
.week-card .card-inner {
padding-bottom: 22px;
}
.week-card{
margin-top:auto;
}
.week-list {
display: flex;
flex-direction: column;
gap: 10px;
}

.week-row {
display: grid;
grid-template-columns: 52px 1fr auto;
gap: 12px;
align-items: center;
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.05);
border-radius: 18px;
padding: 12px 14px;
}

.day-badge {
text-align: center;
padding: 10px 8px;
border-radius: 14px;
background: rgba(255,255,255,0.05);
border: 1px solid rgba(255,255,255,0.04);
font-size: 13px;
color: #d4def0;
}

.week-row strong {
display: block;
font-size: 16px;
font-weight: 500;
margin-bottom: 3px;
}

.week-row span {
font-size: 13px;
color: var(--muted);
font-weight: 300;
}

.status-pill {
padding: 8px 10px;
border-radius: 999px;
background: rgba(255,255,255,0.05);
color: #dce4f4;
font-size: 12px;
white-space: nowrap;
}

.bottom-status {
margin-top: 18px;
display: flex;
gap: 12px;
flex-wrap: wrap;
align-items: center;
}

.status-chip {
padding: 10px 14px;
border-radius: 999px;
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.06);
color: #dce6f7;
font-size: 13px;
}

.status-chip .ok {
color: #87efc0;
}

.status-chip .warn {
color: #ffd089;
}

/* ============================= */
/* RESPONSIV – MOBIL / TABLET */
/* Breakpoints: 1500px, 1180px, 700px */
/* ============================= */
.mobile-top {
display: none;
}

.mei-mobile-nav-overlay {
  display: none;
}

@media (max-width: 1500px) {
.dashboard {
  grid-template-columns: 1.05fr 1fr;
}

.col-right {
display:flex;
flex-direction:column;
height:100%;
flex:1;
}

/* Untereinander: keine künstliche „Command-Rail“-Kante */
.col.col-right {
  border-left: none;
  padding-left: 0;
  margin-left: 0;
  border-radius: 0;
  background: transparent;
}
}


@media (max-width: 1180px) {
.app {
  display: block;
  min-height: 100vh;
}

/* Mobile: Sidebar als Off-Canvas-Drawer (Desktop-Regeln >1180px unverändert) */
.sidebar {
  display: flex;
  position: fixed;
  z-index: 210;
  left: 0;
  top: 0;
  width: min(86vw, 300px);
  max-width: 320px;
  height: 100vh;
  min-height: 100vh;
  margin: 0;
  transform: translate3d(-102%, 0, 0);
  pointer-events: none;
  visibility: hidden;
  transition:
    transform 0.3s cubic-bezier(0.32, 0.72, 0, 1),
    visibility 0.3s;
  box-shadow:
    8px 0 40px rgba(0, 0, 0, 0.45),
    inset -1px 0 0 rgba(255, 255, 255, 0.04);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  overscroll-behavior: contain;
}

body.nav-open .sidebar {
  transform: translate3d(0, 0, 0);
  pointer-events: auto;
  visibility: visible;
}

.mei-mobile-nav-overlay {
  display: block;
  position: fixed;
  inset: 0;
  z-index: 200;
  margin: 0;
  padding: 0;
  border: none;
  cursor: pointer;
  background: rgba(2, 6, 16, 0.58);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.28s ease,
    visibility 0.28s ease;
}

body.nav-open .mei-mobile-nav-overlay {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body.nav-open {
  overflow: hidden;
}

html.theme-light .mei-mobile-nav-overlay {
  background: rgba(12, 20, 40, 0.42);
}

.mobile-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  padding: 6px 0 4px;
  min-height: 48px;
  position: relative;
  z-index: 205;
}

.mobile-top--brand {
  align-items: center;
  padding: 10px 0 12px;
  margin-bottom: 18px;
  min-height: 56px;
  gap: 14px;
}

.mobile-top--brand .mei-brand-lockup {
  height: 46px;
  max-width: min(100%, 280px);
}

.mobile-top__menu-btn {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  border-radius: 12px;
  font-size: 16px;
  box-shadow: none;
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.09);
  color: rgba(220, 228, 244, 0.75);
  opacity: 0.88;
}

.mobile-top__menu-btn:hover {
  transform: none;
  background: rgba(255, 255, 255, 0.07);
  color: rgba(220, 228, 244, 0.92);
}

html.theme-light .mobile-top__menu-btn {
  background: rgba(12, 24, 48, 0.05);
  border-color: rgba(12, 24, 48, 0.1);
  color: rgba(30, 40, 60, 0.65);
}

.dashboard {
  grid-template-columns: 1fr;
}

.topbar {
  grid-template-columns: 1fr;
}

.searchbar {
  min-width: unset;
}

.split-2, .finance-metrics-row, .project-grid, .stat-grid, .quick-actions {
  grid-template-columns: 1fr;
}

.welcome h1 {
  font-size: 32px;
}
}

@media (max-width: 700px) {
.main {
  padding: 16px;
}

.main-header-zone {
  min-height: 84px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.main-content-shell {
  margin-top: 16px;
}

.card-inner {
  padding: 16px;
}

.today-item, .task-item, .week-row {
  grid-template-columns: 1fr;
}

.top-actions {
  flex-wrap: wrap;
}

.welcome h1 {
  font-size: 28px;
}
}

/* ============================= */
/* MEAI MODUL: FOKUSBEREICHE DESIGN */
/* Styling für Karten, Fortschrittsbalken und Listenansicht */
/* ============================= */

.focus-areas .panel-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}

.panel-btn{
background:#1f1f1f;
color:#fff;
border:none;
padding:8px 14px;
border-radius:8px;
cursor:pointer;
font-size:13px;
}

.areas-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:14px;
}

.area-card{
background:#111;
padding:14px;
border-radius:10px;
}

.area-card h3{
font-size:13px;
margin-bottom:4px;
}

.area-card p{
font-size:11px;
color:#888;
margin-bottom:10px;
}

.progress{
background:#2a2a2a;
height:6px;
border-radius:4px;
overflow:hidden;
}

.progress-bar{
background:#4ea3ff;
height:100%;
}

.progress-text{
font-size:11px;
color:#aaa;
margin-top:6px;
display:block;
}

/* ============================= */
/* MEAI ANSICHT: Erweiterte Bereiche Liste */
/* Liste aller Fokusbereiche */
/* ============================= */
.areas-list{
max-height:220px;
overflow-y:auto;
padding-right:4px;
margin-top:18px;
}

/* ============================= */
/* Fokus-Status Layout */
/* Bereich | Balken | Prozent | Status */
/* ============================= */
.list-item{
display:grid;
grid-template-columns:160px 1fr 40px 90px;
align-items:center;
gap:12px;

padding:12px 0;
border-bottom:1px solid rgba(255,255,255,0.06);

font-size:13px;
}
.list-item:last-child{
border-bottom:none;
}

/* Bereich Name */
.area-name{
color:#e6e8ec;
font-weight:500;
}
/* Fortschrittsbalken */

.list-progress{
background:#2a2a2a;
height:6px;
border-radius:4px;
overflow:hidden;
}

.list-bar{
background:#4ea3ff;
height:100%;
}

/* Prozent */

.area-percent{
font-size:12px;
color:#9aa1a9;
text-align:right;
}

/* Status rechts */

.area-status{
font-size:12px;
}

.area-status.good{
color:#7ce0a1;
}

.area-status.ok{
color:#8fb6ff;
}

.area-status.warn{
color:#ffd36c;
}

.area-status.critical{
color:#ff7c8b;
}

/* ============================= */
/* KI-MENÜ – DROPDOWN */
/* Kontextmenü im KI-Bereich */
/* ============================= */
.ai-menu{
position:relative;
}
.ai-online{
color:#1fd38a;
font-weight:500;
}

.ai-focus{
color:#9fb0cc;
margin-left:6px;
}

.ai-menu-dropdown{
position:absolute;
right:0;
top:calc(100% + 8px);
z-index:10050;

background:var(--surface-dropdown);
opacity:1;
backdrop-filter:none;

border:1px solid rgba(255,255,255,0.14);
border-radius:14px;

padding:10px;
display:none;
flex-direction:column;

min-width:220px;
width:max-content;

box-shadow:
  0 2px 0 rgba(0,0,0,0.2),
  0 22px 56px rgba(0,0,0,0.62),
  inset 0 1px 0 rgba(255,255,255,0.06);
}

.ai-menu-item{
padding:9px 12px;
border-radius:10px;
cursor:pointer;

color:#e6ecf7;
font-size:13px;
line-height:1.25;

display:flex;
align-items:center;
}

.ai-menu-item + .ai-menu-item{
border-top:1px solid rgba(255,255,255,0.07);
margin-top:4px;
padding-top:10px;
}

.ai-menu-item:hover{
background:rgba(255,255,255,0.07);
}

/* Assistant: innerer Abschnitt „Konversation“ */
.ai-section-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(145, 160, 190, 0.88);
}

.col.col-right .ai-section-label {
  margin: 14px 0 8px;
  padding-top: 6px;
  border-top: 1px solid rgba(96, 165, 255, 0.12);
}

/* Demo-Toasts — macht „tote“ Klicks zu erklärbarem Produktverhalten */
#meiToast {
  position: fixed;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%) translateY(130%);
  z-index: 9999;
  max-width: min(440px, 92vw);
  padding: 14px 18px 16px;
  border-radius: 14px;
  background: rgba(16, 22, 40, 0.97);
  border: 1px solid rgba(96, 165, 255, 0.28);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.5);
  font-size: 14px;
  line-height: 1.45;
  color: #e8eef8;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.28s ease;
}

#meiToast.is-visible {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
  pointer-events: auto;
}

#meiToast .mei-toast-kicker {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(130, 150, 185, 0.85);
  margin-bottom: 0.35rem;
}

/* Assistant-Aktionen: sichtbare Reaktion im bestehenden UI */
.ai-action-active {
  border-color: rgba(96, 165, 255, 0.34) !important;
  box-shadow: 0 0 0 1px rgba(96, 165, 255, 0.24), 0 10px 28px rgba(20, 54, 104, 0.3);
}

.ai-action-progress {
  border-color: rgba(46, 208, 150, 0.44) !important;
  box-shadow: 0 0 0 1px rgba(46, 208, 150, 0.26), 0 12px 26px rgba(14, 78, 60, 0.32);
}

.ai-action-done {
  border-color: rgba(126, 141, 170, 0.3) !important;
  opacity: 0.72;
}

.assistant-injected {
  border-style: dashed !important;
  border-color: rgba(96, 165, 255, 0.32) !important;
}

.ai-system-log {
  margin-top: var(--mei-space-2);
}

.ai-system-line {
  padding: var(--mei-space-2) var(--mei-space-2);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  font-size: var(--mei-type-meta);
  font-weight: var(--mei-type-meta-weight);
  line-height: 1.4;
  color: var(--muted);
}

.ai-system-line--primary {
  color: rgba(185, 200, 226, 0.92);
}

.ai-exec-controls {
  margin-top: 10px;
  display: flex;
  gap: 8px;
}

.ai-exec-btn {
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.04);
  color: #e6ecf7;
  font-family: inherit;
  font-size: 12px;
  padding: 7px 10px;
  cursor: pointer;
}

.ai-exec-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.08);
}

.ai-exec-btn:disabled {
  opacity: 0.45;
  cursor: default;
}

@media (max-width: 700px) {
  .card--finance .finance-metrics-row {
    grid-template-columns: 1fr;
  }
}

/* Planner — Execution + Adaptive Planning V1 */
.mei-root-planner {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.mei-root-finance {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.mei-finance-mount {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-family: var(--mei-font-family);
}

.mei-finance-detail-dock {
  width: 100%;
  margin-top: 16px;
  box-sizing: border-box;
  border-radius: 12px;
  border: 1px solid rgba(110, 132, 196, 0.22);
  background: rgba(4, 8, 20, 0.55);
  overflow: hidden;
  font-family: var(--mei-font-family);
}

.mei-finance-detail-dock__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(110, 132, 196, 0.14);
}

.mei-finance-detail-dock__status {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(200, 210, 235, 0.92);
  flex: 1;
  min-width: 0;
}

.mei-finance-detail-dock__toggle {
  flex-shrink: 0;
  border: 1px solid rgba(110, 132, 196, 0.35);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(245, 247, 255, 0.92);
  font-family: var(--mei-font-family);
  font-size: 12px;
  font-weight: 600;
  padding: 7px 12px;
  border-radius: 999px;
  cursor: pointer;
}

.mei-finance-detail-dock__toggle:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

.mei-finance-detail-dock__panel {
  padding: 12px 14px 14px;
}

.mei-finance-detail-dock__title {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 600;
  color: rgba(245, 247, 255, 0.96);
}

.mei-finance-detail-dock__body {
  margin: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.9);
}

.mei-finance-bc-form-hint--mode {
  margin-top: 4px;
  font-size: 11px;
  color: rgba(180, 196, 230, 0.78);
}

.mei-finance-mon-risk-row--hit {
  cursor: pointer;
}

.mei-finance-mon-risk-row--hit:hover {
  background: rgba(255, 255, 255, 0.04);
}

.mei-planner-mount {
  display: flex;
  flex-direction: column;
  gap: var(--mei-space-4);
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.mei-planner-mount[data-planner-mode='planner-v2-root'] {
  gap: 0;
}

.mei-planner-mount[data-planner-mode='planner-v2-root'] .mei-grid,
.mei-planner-mount[data-planner-mode='planner-v2-root'] .mei-planner-layout,
.mei-planner-mount[data-planner-mode='planner-v2-root'] .mei-planner-page,
.mei-planner-mount[data-planner-mode='planner-v2-root'] .mei-planner-legacy-empty {
  display: none !important;
}

.mei-planner-v2-root {
  --mei-v2-line-gap: 16px;
  /* Karte → Abstand → Linie (1px) → Abstand → Karte (je line-gap) */
  --mei-v2-slot-gap: calc(var(--mei-v2-line-gap) + 1px + var(--mei-v2-line-gap));
  /* Vertikaler Rhythmus: gleiche Abstände zwischen Card-Abschnitten (alle drei Cards) */
  --mei-v2-section-gap: 18px;
  --mei-v2-intra-gap: 12px;
  width: 100%;
  min-width: 0;
  display: block;
  box-sizing: border-box;
  color: var(--text);
}

/* —— Finanz-OS: Tabs → Divider → Fokus-Card (nur unterhalb App-Header-Linie) —— */
.mei-finance-os-top {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin-bottom: 24px;
}

.mei-finance-os-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.mei-finance-os-tab {
  box-sizing: border-box;
  height: 38px;
  padding: 0 16px;
  margin: 0;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: rgba(160, 174, 204, 0.58);
  font-family: var(--mei-font-family);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  white-space: nowrap;
}

.mei-finance-os-tab.is-active {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.mei-finance-os-tab:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

.mei-finance-os-tabs-divider {
  margin-top: 16px;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.07);
}

.mei-finance-os-focus-card {
  margin-top: 24px;
  box-sizing: border-box;
  width: 100%;
  min-height: 128px;
  padding: 24px;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.34);
  background:
    radial-gradient(120% 95% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 52%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.mei-finance-os-focus-card__left {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
  flex: 1;
}

.mei-finance-os-focus-card__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(239, 68, 68, 0.22);
}

.mei-finance-os-focus-card__icon-svg {
  width: 24px;
  height: 24px;
  display: block;
}

.mei-finance-os-focus-card__copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mei-finance-os-focus-card__title {
  margin: 0;
  font-family: var(--mei-font-family);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #fff;
}

.mei-finance-os-focus-card__sub {
  margin: 0;
  font-family: var(--mei-font-family);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.82);
}

.mei-finance-os-focus-card__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.mei-finance-os-btn {
  box-sizing: border-box;
  height: 40px;
  margin: 0;
  padding: 0 20px;
  border-radius: 10px;
  font-family: var(--mei-font-family);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  white-space: nowrap;
}

.mei-finance-os-btn--primary {
  border: none;
  color: #fff;
  background: linear-gradient(90deg, #2563eb 0%, #4f46e5 48%, #7c3aed 100%);
}

.mei-finance-os-btn--secondary {
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: transparent;
  color: rgba(245, 247, 255, 0.95);
}

.mei-finance-os-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

html.theme-light .mei-finance-os-tab {
  color: rgba(70, 82, 112, 0.72);
}

html.theme-light .mei-finance-os-tab.is-active {
  background: rgba(12, 24, 48, 0.08);
  color: rgba(12, 24, 48, 0.95);
}

html.theme-light .mei-finance-os-tabs-divider {
  background: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-os-focus-card {
  border-color: rgba(12, 24, 48, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 248, 252, 0.98) 100%);
  box-shadow: 0 10px 28px rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-os-focus-card__title {
  color: rgba(12, 24, 48, 0.95);
}

html.theme-light .mei-finance-os-focus-card__sub {
  color: rgba(70, 82, 112, 0.82);
}

html.theme-light .mei-finance-os-btn--secondary {
  border-color: rgba(12, 24, 48, 0.14);
  color: rgba(12, 24, 48, 0.88);
}

/* —— Finanzen: 3er-Reihen strikt 1/3 – 1/3 – 1/3 (Gesamtlayout) —— */
.mei-finance-row-3 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.mei-finance-row-3__slot {
  min-width: 0;
  box-sizing: border-box;
}

.mei-finance-row-bottom {
  margin-top: 20px;
}

.mei-finance-bottom-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.mei-finance-bottom-card__body {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.mei-finance-bc-sub {
  margin: 0 0 12px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.88);
}

.mei-finance-bc-summary {
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(4, 8, 20, 0.35);
  border: 1px solid rgba(110, 132, 196, 0.14);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mei-finance-bc-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  font-size: 12px;
}

.mei-finance-bc-summary-k {
  color: rgba(160, 174, 204, 0.82);
  font-weight: 500;
}

.mei-finance-bc-summary-v {
  font-weight: 600;
  letter-spacing: 0.02em;
  color: rgba(245, 247, 255, 0.92);
  font-variant-numeric: tabular-nums;
}

.mei-finance-bc-summary-v--pos {
  color: rgba(130, 239, 192, 0.95);
}

.mei-finance-bc-summary-v--neg {
  color: rgba(255, 159, 176, 0.95);
}

.mei-finance-bc-form {
  margin: 0 0 14px;
  padding: 10px 12px 12px;
  border-radius: 10px;
  border: 1px solid rgba(110, 132, 196, 0.16);
  background: rgba(4, 8, 20, 0.28);
}

.mei-finance-bc-form-hint {
  margin: 0 0 10px;
  font-size: 11px;
  line-height: 1.4;
  color: rgba(160, 174, 204, 0.78);
}

.mei-finance-bc-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 10px;
}

@media (max-width: 720px) {
  .mei-finance-bc-form-grid {
    grid-template-columns: 1fr;
  }
}

.mei-finance-bc-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.mei-finance-bc-field__l {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(160, 174, 204, 0.72);
}

.mei-finance-bc-field__i {
  width: 100%;
  box-sizing: border-box;
  border-radius: 8px;
  border: 1px solid rgba(110, 132, 196, 0.22);
  background: rgba(4, 8, 20, 0.55);
  color: rgba(245, 247, 255, 0.92);
  font-size: 13px;
  padding: 7px 9px;
  font-variant-numeric: tabular-nums;
}

.mei-finance-bc-field__i:focus {
  outline: none;
  border-color: rgba(212, 175, 55, 0.45);
}

.mei-finance-bc-form-save {
  margin-top: 10px;
  width: 100%;
  border: none;
  border-radius: 9px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  background: linear-gradient(180deg, rgba(212, 175, 55, 0.95), rgba(180, 140, 40, 0.92));
  color: #0f1118;
}

.mei-finance-bc-form-save:hover {
  filter: brightness(1.05);
}

.mei-finance-in-open-strip {
  margin-bottom: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(212, 175, 55, 0.06);
  border: 1px solid rgba(212, 175, 55, 0.2);
}

.mei-finance-in-open-strip__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
}

.mei-finance-in-open-strip__k {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(230, 195, 90, 0.88);
}

.mei-finance-in-open-strip__v {
  font-size: 15px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(255, 214, 140, 0.96);
}

.mei-finance-in-open-strip__meta {
  margin-top: 4px;
  font-size: 11px;
  color: rgba(160, 174, 204, 0.82);
}

.mei-finance-mon-risk-banner {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 9px;
  margin-bottom: 8px;
  border: 1px solid rgba(110, 132, 196, 0.18);
  background: rgba(4, 8, 20, 0.35);
}

.mei-finance-mon-risk-banner__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  background: rgba(160, 174, 204, 0.5);
}

.mei-finance-mon-risk-banner--ok .mei-finance-mon-risk-banner__dot {
  background: rgba(130, 239, 192, 0.85);
}

.mei-finance-mon-risk-banner--warn {
  border-color: rgba(251, 191, 36, 0.35);
  background: rgba(251, 191, 36, 0.08);
}

.mei-finance-mon-risk-banner--warn .mei-finance-mon-risk-banner__dot {
  background: rgba(251, 191, 36, 0.9);
}

.mei-finance-mon-risk-banner--crit {
  border-color: rgba(248, 113, 113, 0.4);
  background: rgba(248, 113, 113, 0.1);
}

.mei-finance-mon-risk-banner--crit .mei-finance-mon-risk-banner__dot {
  background: rgba(248, 113, 113, 0.92);
}

.mei-finance-mon-risk-banner__title {
  font-size: 12px;
  font-weight: 700;
  color: rgba(245, 247, 255, 0.92);
}

.mei-finance-mon-risk-lede {
  margin: 0 0 10px;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.85);
}

.mei-finance-bc-chart {
  flex: 1;
  min-height: 140px;
  border-radius: 10px;
  background: rgba(4, 8, 20, 0.45);
  border: 1px solid rgba(110, 132, 196, 0.16);
  padding: 12px 14px 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mei-finance-bc-chart__bars {
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
  min-height: 0;
}

.mei-finance-bc-chart__col {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.mei-finance-bc-chart__stack {
  width: 100%;
  max-width: 36px;
  height: 100px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 2px;
}

.mei-finance-bc-chart__seg {
  width: 100%;
  border-radius: 3px 3px 0 0;
}

.mei-finance-bc-chart__seg--in {
  background: linear-gradient(180deg, rgba(96, 165, 250, 0.85), rgba(37, 99, 235, 0.55));
}

.mei-finance-bc-chart__seg--out {
  background: linear-gradient(180deg, rgba(251, 191, 36, 0.75), rgba(217, 119, 6, 0.45));
}

.mei-finance-bc-chart__kw {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(160, 174, 204, 0.75);
}

.mei-finance-bc-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  font-size: 11px;
  font-weight: 500;
  color: rgba(180, 196, 230, 0.82);
}

.mei-finance-bc-legend span::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  margin-right: 6px;
  vertical-align: middle;
}

.mei-finance-bc-legend__in::before {
  background: rgba(59, 130, 246, 0.85);
}

.mei-finance-bc-legend__out::before {
  background: rgba(245, 158, 11, 0.85);
}

.mei-finance-bc-legend__trend {
  font-size: 11px;
  font-weight: 500;
  color: rgba(180, 196, 230, 0.82);
}

.mei-finance-bc-legend__trend::before {
  background: #e6c35a;
}

.mei-finance-bc-chart--horizon {
  border-radius: 10px;
  background: rgba(4, 8, 20, 0.45);
  border: 1px solid rgba(110, 132, 196, 0.16);
  padding: 10px 12px 8px;
  box-sizing: border-box;
}

.mei-finance-bc-chart__svg-wrap {
  width: 100%;
  line-height: 0;
}

.mei-finance-bc-horizon-svg {
  width: 100%;
  height: 64px;
  display: block;
}

.mei-finance-tip {
  margin-top: 20px;
  width: 100%;
  box-sizing: border-box;
  padding: 14px 18px;
  border-radius: 12px;
  border: 1px solid rgba(110, 132, 196, 0.28);
  background: linear-gradient(135deg, rgba(76, 29, 149, 0.35) 0%, rgba(30, 58, 138, 0.32) 100%);
}

.mei-finance-tip__text {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  color: rgba(220, 228, 248, 0.92);
}

.mei-finance-tr-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 6px;
  margin-bottom: 12px;
}

.mei-finance-tr-tab {
  box-sizing: border-box;
  height: 32px;
  margin: 0;
  padding: 0 6px;
  border-radius: 8px;
  border: 1px solid rgba(110, 132, 196, 0.28);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(180, 196, 230, 0.85);
  font-family: var(--mei-font-family);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.mei-finance-tr-tab.is-active {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(245, 247, 255, 0.95);
}

.mei-finance-tr-list {
  flex: 1;
  min-height: 0;
  border-radius: 10px;
  background: rgba(4, 8, 20, 0.45);
  border: 1px solid rgba(110, 132, 196, 0.16);
  padding: 10px 12px;
  box-sizing: border-box;
}

.mei-finance-tr-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(245, 247, 255, 0.94);
}

.mei-finance-tr-row + .mei-finance-tr-row {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-finance-tr-row__cb {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  border-radius: 4px;
  border: 1px solid rgba(110, 132, 196, 0.45);
  flex-shrink: 0;
  box-sizing: border-box;
}

.mei-finance-tr-row__tx {
  flex: 1;
  min-width: 0;
}

.mei-finance-tools-grid {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  align-content: start;
}

.mei-finance-tools-btn {
  box-sizing: border-box;
  min-height: 44px;
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(110, 132, 196, 0.3);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(200, 210, 235, 0.92);
  font-family: var(--mei-font-family);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
  cursor: pointer;
}

.mei-finance-tools-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

html.theme-light .mei-finance-bc-chart {
  background: rgba(12, 24, 48, 0.04);
  border-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-bc-chart--horizon {
  background: rgba(12, 24, 48, 0.04);
  border-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-tip {
  border-color: rgba(12, 24, 48, 0.12);
  background: linear-gradient(135deg, rgba(237, 233, 254, 0.95) 0%, rgba(219, 234, 254, 0.92) 100%);
}

html.theme-light .mei-finance-tip__text {
  color: rgba(12, 24, 48, 0.82);
}

html.theme-light .mei-finance-bc-sub {
  color: rgba(70, 82, 112, 0.82);
}

html.theme-light .mei-finance-detail-dock {
  border-color: rgba(12, 24, 48, 0.12);
  background: rgba(12, 24, 48, 0.04);
}

html.theme-light .mei-finance-detail-dock__bar {
  border-bottom-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-detail-dock__status {
  color: rgba(12, 24, 48, 0.78);
}

html.theme-light .mei-finance-detail-dock__toggle {
  border-color: rgba(12, 24, 48, 0.14);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(12, 24, 48, 0.88);
}

html.theme-light .mei-finance-detail-dock__title {
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-detail-dock__body {
  color: rgba(70, 82, 112, 0.85);
}

html.theme-light .mei-finance-bc-chart__kw {
  color: rgba(70, 82, 112, 0.65);
}

html.theme-light .mei-finance-bc-legend {
  color: rgba(70, 82, 112, 0.78);
}

html.theme-light .mei-finance-tr-tab {
  border-color: rgba(12, 24, 48, 0.12);
  color: rgba(70, 82, 112, 0.82);
}

html.theme-light .mei-finance-tr-tab.is-active {
  background: rgba(12, 24, 48, 0.06);
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-tr-list {
  background: rgba(12, 24, 48, 0.04);
  border-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-tr-row {
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-tr-row + .mei-finance-tr-row {
  border-top-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-tools-btn {
  border-color: rgba(12, 24, 48, 0.12);
  background: rgba(12, 24, 48, 0.03);
  color: rgba(12, 24, 48, 0.82);
}

/* Rechte Card: Monitoring & Risiko */
.mei-finance-mon-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.mei-finance-mon-sep {
  margin: 16px 0;
  border-top: 1px solid rgba(110, 132, 196, 0.2);
}

.mei-finance-mon-sec {
  margin: 0 0 8px;
  font-family: var(--mei-font-family);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(160, 174, 204, 0.78);
}

.mei-finance-mon-chart {
  width: 100%;
  line-height: 0;
}

.mei-finance-mon-chart-svg {
  width: 100%;
  height: 52px;
  display: block;
}

.mei-finance-mon-risk-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
}

.mei-finance-mon-risk-row + .mei-finance-mon-risk-row {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-finance-mon-risk-left {
  flex-shrink: 0;
  width: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mei-finance-mon-risk-num {
  font-size: 14px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.95);
}

.mei-finance-mon-risk-num--gold {
  color: rgba(250, 204, 21, 0.92);
}

.mei-finance-mon-risk-ic-wrap {
  display: flex;
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
}

.mei-finance-mon-risk-ic-wrap svg {
  width: 20px;
  height: 20px;
  display: block;
}

.mei-finance-mon-risk-tx {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(245, 247, 255, 0.94);
}

.mei-finance-mon-risk-ch {
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1;
  color: rgba(160, 174, 204, 0.52);
}

.mei-finance-mon-inv-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 10px;
}

.mei-finance-mon-sec + .mei-finance-mon-inv-row {
  margin-top: 6px;
}

.mei-finance-mon-inv-row--stack {
  align-items: flex-start;
  margin-top: 12px;
}

.mei-finance-mon-inv-col {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mei-finance-mon-inv-box {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mei-finance-mon-kv {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.mei-finance-mon-kv--action .mei-finance-mon-kv__k {
  flex: 1;
  text-align: left;
}

.mei-finance-mon-kv--action .mei-finance-mon-kv__action {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.mei-finance-mon-kv__k {
  font-size: 12px;
  font-weight: 500;
  color: rgba(160, 174, 204, 0.88);
  min-width: 0;
}

.mei-finance-mon-kv__v {
  font-size: 13px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.95);
  text-align: right;
}

.mei-finance-mon-inv-hint {
  margin: 0;
  font-size: 11px;
  font-weight: 450;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.78);
}

.mei-finance-mon-inv-box + .mei-finance-mon-inv-row--stack {
  margin-top: 12px;
}

.mei-finance-mon-inv-amt {
  font-size: 17px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.97);
}

.mei-finance-mon-inv-sub {
  font-size: 12px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: rgba(147, 197, 253, 0.9);
}

.mei-finance-mon-inv-btn {
  flex-shrink: 0;
  height: 32px;
  padding: 0 12px;
  margin: 0;
  border-radius: 8px;
  border: 1px solid rgba(110, 132, 196, 0.35);
  background: rgba(14, 24, 53, 0.65);
  color: rgba(200, 210, 235, 0.92);
  font-family: var(--mei-font-family);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.mei-finance-mon-inv-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

.mei-finance-mon-badge {
  flex-shrink: 0;
  text-align: right;
  padding: 6px 10px;
  border-radius: 8px;
  border: 1px solid rgba(110, 132, 196, 0.3);
  background: rgba(4, 8, 20, 0.55);
  min-width: 72px;
}

.mei-finance-mon-badge__l1 {
  display: block;
  font-size: 10px;
  font-weight: 500;
  color: rgba(160, 174, 204, 0.82);
  line-height: 1.2;
}

.mei-finance-mon-badge__l2 {
  display: block;
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.95);
  line-height: 1.2;
  margin-top: 2px;
}

html.theme-light .mei-finance-mon-sep {
  border-top-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-mon-sec {
  color: rgba(70, 82, 112, 0.72);
}

html.theme-light .mei-finance-mon-risk-row + .mei-finance-mon-risk-row {
  border-top-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-mon-risk-tx {
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-mon-risk-num {
  color: rgba(12, 24, 48, 0.88);
}

html.theme-light .mei-finance-mon-inv-amt {
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-mon-inv-sub {
  color: rgba(37, 99, 235, 0.85);
}

html.theme-light .mei-finance-mon-inv-btn {
  border-color: rgba(12, 24, 48, 0.14);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(12, 24, 48, 0.78);
}

html.theme-light .mei-finance-mon-badge {
  border-color: rgba(12, 24, 48, 0.12);
  background: rgba(12, 24, 48, 0.04);
}

html.theme-light .mei-finance-mon-badge__l1 {
  color: rgba(70, 82, 112, 0.75);
}

html.theme-light .mei-finance-mon-badge__l2 {
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-mon-kv__k {
  color: rgba(70, 82, 112, 0.78);
}

html.theme-light .mei-finance-mon-kv__v {
  color: rgba(12, 24, 48, 0.88);
}

html.theme-light .mei-finance-mon-inv-hint {
  color: rgba(70, 82, 112, 0.72);
}

html.theme-light .mei-finance-cf-conseq {
  border-color: rgba(12, 24, 48, 0.1);
  background: rgba(12, 24, 48, 0.04);
}

html.theme-light .mei-finance-cf-conseq__line {
  color: rgba(70, 82, 112, 0.85);
}

/* Mittlere Card: Aktive Cashflow-Steuerung */
.mei-finance-cf-card {
  position: relative;
}

.mei-finance-cf-card__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
}

.mei-finance-cf-card__head-spacer {
  flex-shrink: 0;
  width: 22px;
  height: 1px;
}

.mei-finance-cf-lead {
  margin: 0 0 6px;
  font-family: var(--mei-font-family);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: rgba(245, 247, 255, 0.98);
}

.mei-finance-cf-sub {
  margin: 0 0 16px;
  font-family: var(--mei-font-family);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(160, 174, 204, 0.88);
}

.mei-finance-cf-hero {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}

.mei-finance-cf-hero__bar {
  flex: 1;
  min-width: 0;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6d28d9 0%, #4f46e5 38%, #2563eb 68%, #22d3ee 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.mei-finance-cf-hero__meta {
  flex-shrink: 0;
  text-align: right;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.mei-finance-cf-hero__sum {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.96);
}

.mei-finance-cf-hero__trend {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  color: rgba(252, 165, 165, 0.92);
}

.mei-finance-cf-steps {
  margin-bottom: 0;
}

.mei-finance-cf-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 0;
}

.mei-finance-cf-step + .mei-finance-cf-step {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-finance-cf-step__num {
  flex-shrink: 0;
  min-width: 1.1em;
  font-size: 14px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(180, 196, 230, 0.75);
}

.mei-finance-cf-step__label {
  flex: 1;
  min-width: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(245, 247, 255, 0.96);
}

.mei-finance-cf-p40 {
  margin-bottom: 0;
}

.mei-finance-cf-p40__pct {
  text-align: right;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.95);
  margin-bottom: 8px;
}

.mei-finance-cf-p40__track {
  height: 8px;
  border-radius: 999px;
  background: rgba(4, 8, 20, 0.55);
  border: 1px solid rgba(110, 132, 196, 0.2);
  overflow: hidden;
  box-sizing: border-box;
}

.mei-finance-cf-p40__fill {
  height: 100%;
  width: 40%;
  border-radius: inherit;
  background: linear-gradient(90deg, #5b21b6 0%, #4338ca 45%, #2563eb 100%);
}

.mei-finance-cf-tail {
  margin-top: auto;
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}

.mei-finance-cf-cta {
  box-sizing: border-box;
  width: 100%;
  height: 48px;
  margin: 0;
  padding: 0 20px;
  border: none;
  border-radius: 12px;
  background: linear-gradient(90deg, #5b21b6 0%, #4f46e5 42%, #2563eb 100%);
  color: #fff;
  font-family: var(--mei-font-family);
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}

.mei-finance-cf-cta:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.65);
  outline-offset: 2px;
}

.mei-finance-cf-result {
  align-self: center;
  max-width: 100%;
  box-sizing: border-box;
  padding: 8px 14px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(110, 132, 196, 0.22);
  text-align: center;
}

.mei-finance-cf-result__tx {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  font-variant-numeric: tabular-nums;
  color: rgba(200, 210, 235, 0.9);
}

.mei-finance-cf-conseq {
  align-self: stretch;
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(110, 132, 196, 0.18);
  background: rgba(4, 8, 20, 0.38);
  text-align: left;
}

.mei-finance-cf-conseq__line {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: rgba(186, 200, 230, 0.9);
}

.mei-finance-cf-conseq__line + .mei-finance-cf-conseq__line {
  margin-top: 5px;
}

.mei-finance-cf-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding-top: 4px;
}

.mei-finance-cf-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
  flex-shrink: 0;
}

.mei-finance-cf-dot--active {
  width: 20px;
  height: 6px;
  border-radius: 999px;
  background: rgba(245, 247, 255, 0.55);
}

html.theme-light .mei-finance-cf-lead {
  color: rgba(12, 24, 48, 0.94);
}

html.theme-light .mei-finance-cf-sub {
  color: rgba(70, 82, 112, 0.85);
}

html.theme-light .mei-finance-cf-hero__sum {
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-cf-hero__trend {
  color: rgba(185, 28, 28, 0.85);
}

html.theme-light .mei-finance-cf-step__label {
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-cf-step__num {
  color: rgba(70, 82, 112, 0.65);
}

html.theme-light .mei-finance-cf-p40__pct {
  color: rgba(12, 24, 48, 0.9);
}

html.theme-light .mei-finance-cf-p40__track {
  background: rgba(12, 24, 48, 0.06);
  border-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-cf-result {
  background: rgba(12, 24, 48, 0.04);
  border-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-cf-result__tx {
  color: rgba(70, 82, 112, 0.88);
}

html.theme-light .mei-finance-cf-dot {
  background: rgba(12, 24, 48, 0.2);
}

html.theme-light .mei-finance-cf-dot--active {
  background: rgba(12, 24, 48, 0.45);
}

.mei-finance-in-card {
  height: auto;
  min-height: 0;
  min-width: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  padding: 18px;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.34);
  background:
    radial-gradient(120% 95% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 52%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 18px 34px rgba(6, 10, 24, 0.46), inset 0 1px 0 rgba(142, 166, 255, 0.16);
  color: var(--text);
}

.mei-finance-in-card__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
}

.mei-finance-in-card__icon {
  width: 14px;
  height: 10px;
  flex-shrink: 0;
  color: rgba(167, 139, 250, 0.95);
  display: inline-flex;
}

.mei-finance-in-card__icon-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.mei-finance-in-card__title {
  margin: 0;
  font-family: var(--mei-font-family);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.065em;
  text-transform: uppercase;
  color: rgba(215, 225, 248, 0.88);
}

.mei-finance-in-card__rule {
  height: 1px;
  background: rgba(110, 132, 196, 0.24);
  margin: 0 0 16px;
}

.mei-finance-in-subtitle {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: rgba(245, 247, 255, 0.96);
}

.mei-finance-in-stack {
  border-radius: 10px;
  background: rgba(4, 8, 20, 0.45);
  border: 1px solid rgba(110, 132, 196, 0.16);
  padding: 12px 14px;
  box-sizing: border-box;
}

.mei-finance-in-item + .mei-finance-in-item {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-finance-in-item__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
}

.mei-finance-in-item__row + .mei-finance-in-item__row {
  margin-top: 4px;
}

.mei-finance-in-item__primary {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(245, 247, 255, 0.96);
  min-width: 0;
}

.mei-finance-in-item__val {
  flex-shrink: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  font-variant-numeric: tabular-nums;
  color: rgba(245, 247, 255, 0.95);
  text-align: right;
}

.mei-finance-in-item__meta {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(160, 174, 204, 0.82);
  min-width: 0;
}

.mei-finance-in-item__meta--span {
  flex: 1;
}

.mei-finance-in-val--pos {
  color: rgba(134, 239, 172, 0.92);
}

.mei-finance-in-val--warn {
  color: rgba(253, 224, 71, 0.92);
}

.mei-finance-in-val--risk {
  color: rgba(252, 165, 165, 0.92);
}

.mei-finance-in-val--info {
  color: rgba(147, 197, 253, 0.95);
}

.mei-finance-in-val--urgent {
  color: rgba(251, 146, 60, 0.95);
}

.mei-finance-in-val--done {
  color: rgba(250, 204, 21, 0.92);
}

.mei-finance-in-between {
  margin: 22px 0;
  padding-top: 22px;
  border-top: 1px solid rgba(110, 132, 196, 0.22);
}

.mei-finance-in-between--compact {
  margin: 14px 0 12px;
  padding-top: 14px;
}

/* Finanzen-Inbox = gleiche Bausteine wie Übersicht (card-title, tabs, task-list) */
.mei-finance-inbox-os {
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid rgba(110, 132, 196, 0.2);
}

.mei-finance-inbox-os .card-title-row {
  margin-bottom: 14px;
}

.mei-finance-inbox-os .tabs {
  margin-bottom: 12px;
}

.mei-finance-in-card .mei-finance-inbox-os .task-item {
  cursor: pointer;
}

.mei-finance-in-card .mei-finance-inbox-os .task-item:focus-visible {
  outline: 2px solid rgba(96, 165, 255, 0.45);
  outline-offset: 2px;
}

.mei-finance-in-caps {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  margin-bottom: 4px;
}

.mei-finance-in-cap-btn {
  box-sizing: border-box;
  height: 36px;
  margin: 0;
  padding: 0 8px;
  border-radius: 10px;
  border: 1px solid rgba(110, 132, 196, 0.32);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(200, 210, 235, 0.9);
  font-family: var(--mei-font-family);
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.mei-finance-in-cap-btn.is-active {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(245, 247, 255, 0.96);
}

.mei-finance-in-cap-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

.mei-finance-in-tasks {
  display: flex;
  flex-direction: column;
  margin-top: 14px;
}

.mei-finance-in-task + .mei-finance-in-task {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-finance-in-footer {
  margin-top: auto;
  padding-top: 18px;
}

.mei-finance-in-btn-all {
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 0 16px;
  border-radius: 10px;
  border: 1px solid rgba(110, 132, 196, 0.32);
  background: rgba(14, 24, 53, 0.55);
  color: rgba(200, 210, 235, 0.92);
  font-family: var(--mei-font-family);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.mei-finance-in-btn-all:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

html.theme-light .mei-finance-in-card {
  border-color: rgba(12, 24, 48, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 248, 252, 0.98) 100%);
  box-shadow: 0 10px 28px rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-in-card__title {
  color: rgba(12, 24, 48, 0.72);
}

html.theme-light .mei-finance-in-card__rule {
  background: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-in-subtitle {
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-in-stack {
  background: rgba(12, 24, 48, 0.04);
  border-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-in-item + .mei-finance-in-item,
html.theme-light .mei-finance-in-task + .mei-finance-in-task {
  border-top-color: rgba(12, 24, 48, 0.08);
}

html.theme-light .mei-finance-in-item__primary {
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-in-item__val {
  color: rgba(12, 24, 48, 0.88);
}

html.theme-light .mei-finance-in-item__meta {
  color: rgba(70, 82, 112, 0.82);
}

html.theme-light .mei-finance-in-between {
  border-top-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-inbox-os {
  border-top-color: rgba(12, 24, 48, 0.1);
}

html.theme-light .mei-finance-in-cap-btn {
  border-color: rgba(12, 24, 48, 0.14);
  background: rgba(12, 24, 48, 0.03);
  color: rgba(70, 82, 112, 0.88);
}

html.theme-light .mei-finance-in-cap-btn.is-active {
  background: rgba(12, 24, 48, 0.07);
  color: rgba(12, 24, 48, 0.92);
}

html.theme-light .mei-finance-in-btn-all {
  border-color: rgba(12, 24, 48, 0.14);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(12, 24, 48, 0.82);
}

.mei-v2-first-row {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  column-gap: var(--mei-v2-slot-gap);
  row-gap: var(--mei-v2-line-gap);
  align-items: stretch;
  padding-bottom: var(--mei-v2-line-gap);
  border-bottom: 1px solid rgba(142, 166, 255, 0.1);
  margin-bottom: var(--mei-v2-line-gap);
}

/* Vertikale Führung zwischen Entscheidung & KPI (nur Kartenhöhe, nicht den unteren Zwischenraum). */
.mei-v2-first-row::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: var(--mei-v2-line-gap);
  width: 1px;
  transform: translateX(-50%);
  pointer-events: none;
  background: rgba(142, 166, 255, 0.1);
  left: calc(2 * (100% - var(--mei-v2-slot-gap)) / 3 + var(--mei-v2-line-gap) + 0.5px);
}

.mei-v2-rows-block {
  display: flex;
  flex-direction: column;
  gap: var(--mei-v2-line-gap);
  width: 100%;
  min-width: 0;
}

.mei-v2-second-row {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  column-gap: var(--mei-v2-slot-gap);
  row-gap: var(--mei-v2-line-gap);
  margin-top: 0;
  align-items: stretch;
  justify-items: stretch;
}

/* Vertikale Führung: Linie mittig im erweiterten Gutter (1fr : 2fr : 1fr, zwei Slots). */
.mei-v2-second-row::before,
.mei-v2-second-row::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: calc(-1 * var(--mei-v2-line-gap));
  width: 1px;
  transform: translateX(-50%);
  pointer-events: none;
  background: rgba(142, 166, 255, 0.1);
}

.mei-v2-second-row::before {
  left: calc((100% - 2 * var(--mei-v2-slot-gap)) / 4 + var(--mei-v2-line-gap) + 0.5px);
}

.mei-v2-second-row::after {
  left: calc(3 * (100% - 2 * var(--mei-v2-slot-gap)) / 4 + var(--mei-v2-slot-gap) + var(--mei-v2-line-gap) + 0.5px);
}

.mei-v2-third-row {
  position: relative;
  z-index: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  column-gap: var(--mei-v2-slot-gap);
  margin-top: 0;
  align-items: stretch;
  justify-items: stretch;
}

/* Vertikale Führung in Zeile 3 (1fr : 1fr : 1fr). */
.mei-v2-third-row::before,
.mei-v2-third-row::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  transform: translateX(-50%);
  pointer-events: none;
  background: rgba(142, 166, 255, 0.1);
}

.mei-v2-third-row::before {
  left: calc((100% - 2 * var(--mei-v2-slot-gap)) / 3 + var(--mei-v2-slot-gap) / 2);
}

.mei-v2-third-row::after {
  left: calc(2 * (100% - 2 * var(--mei-v2-slot-gap)) / 3 + var(--mei-v2-slot-gap) + var(--mei-v2-slot-gap) / 2);
}

.mei-v2-tip-end {
  width: 100%;
  box-sizing: border-box;
  margin-top: var(--mei-v2-line-gap);
  margin-bottom: var(--mei-v2-line-gap);
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.22);
  background: rgba(10, 14, 30, 0.92);
  font-family: var(--mei-font-family);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-width: 0;
}

.mei-v2-tip-end-left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}

.mei-v2-tip-end-ic {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  color: rgba(167, 124, 255, 0.95);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.mei-v2-tip-end-ic svg {
  width: 14px;
  height: 14px;
}

.mei-v2-tip-end-tx {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 500;
  color: rgba(188, 202, 236, 0.88);
}

.mei-v2-tip-end-affirm {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(100, 120, 178, 0.28);
  background: rgba(18, 26, 52, 0.75);
}

.mei-v2-tip-end-affirm-tx {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 600;
  color: rgba(206, 218, 244, 0.88);
}

.mei-v2-tip-end-heart {
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  color: rgba(248, 110, 118, 0.95);
}

.mei-v2-bottom-card {
  width: 100%;
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.3);
  background:
    radial-gradient(125% 100% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 50%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 16px 30px rgba(6, 10, 24, 0.42), inset 0 1px 0 rgba(142, 166, 255, 0.12);
  padding: 12px;
  box-sizing: border-box;
  font-family: var(--mei-font-family);
}

.mei-v2-bottom-head {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: var(--mei-v2-intra-gap);
  border-bottom: 1px solid rgba(110, 132, 196, 0.24);
}

.mei-v2-bottom-head-title {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(214, 223, 247, 0.9);
}

.mei-v2-bottom-head-btn {
  font-family: var(--mei-font-family);
  height: 28px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(97, 120, 185, 0.42);
  background: rgba(21, 34, 72, 0.84);
  color: rgba(203, 214, 241, 0.94);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.mei-v2-bottom-head-tools {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.mei-v2-bottom-icon-btn {
  font-family: var(--mei-font-family);
  width: 28px;
  height: 28px;
  border-radius: 8px;
  border: 1px solid rgba(97, 120, 185, 0.38);
  background: rgba(16, 28, 62, 0.78);
  color: rgba(206, 217, 244, 0.94);
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.mei-v2-bottom-days {
  flex-shrink: 0;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

.mei-v2-bottom-day {
  border-radius: 10px;
  border: 1px solid rgba(95, 116, 178, 0.28);
  background: rgba(12, 20, 47, 0.72);
  min-height: 44px;
  padding: 6px 0 5px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 2px;
}

.mei-v2-bottom-day.is-active {
  border-color: rgba(112, 133, 230, 0.72);
  background: rgba(55, 69, 142, 0.55);
}

.mei-v2-bottom-day-lbl {
  font-size: 11px;
  line-height: 1;
  font-weight: 500;
  color: rgba(147, 166, 208, 0.86);
}

.mei-v2-bottom-day-num {
  font-size: 22px;
  line-height: 1;
  font-weight: 600;
  color: rgba(219, 229, 250, 0.96);
}

.mei-v2-bottom-week-stats {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.mei-v2-bottom-week-stats-tx {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.mei-v2-bottom-week-line {
  font-size: 12px;
  line-height: 1.35;
  font-weight: 500;
  color: rgba(188, 202, 236, 0.92);
}

.mei-v2-bottom-week-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.mei-v2-bottom-week-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(95, 226, 156, 0.98);
  box-shadow: 0 0 0 2px rgba(55, 228, 173, 0.2);
}

.mei-v2-bottom-week-badge-tx {
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  color: rgba(120, 226, 173, 0.95);
}

.mei-v2-bottom-bars {
  flex: 1 1 auto;
  min-height: 72px;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
  align-items: end;
}

.mei-v2-bottom-bar-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  min-height: 72px;
}

.mei-v2-bottom-bar {
  display: block;
  width: 100%;
  max-width: 12px;
  min-height: 6px;
  border-radius: 4px 4px 2px 2px;
  align-self: center;
}

.mei-v2-bottom-bar.is-blue {
  background: linear-gradient(180deg, rgba(96, 140, 255, 0.95) 0%, rgba(56, 92, 210, 0.85) 100%);
}

.mei-v2-bottom-bar.is-violet {
  background: linear-gradient(180deg, rgba(167, 124, 255, 0.95) 0%, rgba(110, 70, 210, 0.85) 100%);
}

.mei-v2-bottom-bar.is-teal {
  background: linear-gradient(180deg, rgba(110, 220, 210, 0.95) 0%, rgba(52, 150, 160, 0.85) 100%);
}

.mei-v2-bottom-tabs {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.mei-v2-bottom-tab {
  font-family: var(--mei-font-family);
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(97, 120, 185, 0.32);
  background: rgba(14, 23, 52, 0.55);
  color: rgba(176, 192, 228, 0.9);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-bottom-tab.is-active {
  border-color: rgba(122, 90, 255, 0.55);
  background: rgba(72, 58, 160, 0.55);
  color: rgba(236, 240, 255, 0.98);
}

.mei-v2-bottom-triage-list {
  flex-shrink: 0;
  display: grid;
  gap: 0;
}

.mei-v2-bottom-triage-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(106, 124, 180, 0.18);
}

.mei-v2-bottom-triage-row:last-of-type {
  border-bottom: 0;
}

.mei-v2-bottom-triage-ic {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  border: 1px solid rgba(98, 118, 182, 0.4);
  background: rgba(29, 44, 90, 0.62);
  color: rgba(166, 183, 221, 0.9);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.mei-v2-bottom-triage-ic svg {
  width: 12px;
  height: 12px;
}

.mei-v2-bottom-triage-title {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 500;
  color: rgba(206, 219, 246, 0.95);
}

.mei-v2-bottom-triage-tag {
  font-size: 10px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(105, 121, 184, 0.4);
  white-space: nowrap;
}

.mei-v2-bottom-triage-tag.is-high {
  color: rgba(255, 168, 140, 0.98);
  border-color: rgba(255, 140, 110, 0.45);
  background: rgba(90, 36, 32, 0.45);
}

.mei-v2-bottom-triage-tag.is-med {
  color: rgba(255, 220, 140, 0.98);
  border-color: rgba(230, 190, 90, 0.45);
  background: rgba(70, 56, 22, 0.45);
}

.mei-v2-bottom-triage-tag.is-low {
  color: rgba(150, 200, 255, 0.96);
  border-color: rgba(110, 160, 230, 0.45);
  background: rgba(28, 48, 90, 0.45);
}

.mei-v2-bottom-triage-chev {
  font-size: 16px;
  font-weight: 600;
  color: rgba(152, 168, 233, 0.75);
}

.mei-v2-bottom-triage-all {
  font-family: var(--mei-font-family);
  flex-shrink: 0;
  width: 100%;
  height: 36px;
  border-radius: 10px;
  border: 1px solid rgba(98, 121, 184, 0.36);
  background: rgba(17, 29, 64, 0.82);
  color: rgba(207, 218, 245, 0.95);
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-bottom-tools-grid {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--mei-v2-intra-gap);
  align-content: start;
}

.mei-v2-bottom-tool {
  font-family: var(--mei-font-family);
  margin: 0;
  text-align: left;
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
  padding: 10px 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  cursor: pointer;
  color: inherit;
}

.mei-v2-bottom-tool-ic {
  width: 34px;
  height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(98, 118, 182, 0.4);
  background: rgba(29, 44, 90, 0.62);
  color: rgba(166, 183, 221, 0.92);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.mei-v2-bottom-tool-ic svg {
  width: 18px;
  height: 18px;
}

.mei-v2-bottom-tool-body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.mei-v2-bottom-tool-title {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
  color: rgba(228, 236, 253, 0.97);
}

.mei-v2-bottom-tool-open {
  font-size: 10px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(147, 166, 208, 0.86);
}

.mei-v2-entry-card,
.mei-v2-active-card,
.mei-v2-monitor-card,
.mei-v2-bottom-card {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: var(--mei-v2-section-gap);
}

.mei-v2-entry-card::after,
.mei-v2-active-card::after,
.mei-v2-monitor-card::after,
.mei-v2-bottom-card::after {
  content: '';
  flex: 1 1 auto;
  min-height: 0;
}

.mei-v2-entry-card {
  gap: 0;
  grid-column: 1 / 2;
  justify-self: stretch;
  width: 100%;
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.3);
  background:
    radial-gradient(125% 100% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 50%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 16px 30px rgba(6, 10, 24, 0.42), inset 0 1px 0 rgba(142, 166, 255, 0.12);
  padding: 12px;
  box-sizing: border-box;
  font-family: var(--mei-font-family);
}

.mei-v2-active-card {
  grid-column: 2 / 3;
  justify-self: stretch;
  width: 100%;
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.32);
  background:
    radial-gradient(125% 100% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 50%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 16px 30px rgba(6, 10, 24, 0.42), inset 0 1px 0 rgba(142, 166, 255, 0.12);
  padding: 12px;
  box-sizing: border-box;
  font-family: var(--mei-font-family);
}

.mei-v2-active-head {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(110, 132, 196, 0.24);
  padding-bottom: 8px;
  margin-bottom: 0;
}

.mei-v2-active-head-left {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.mei-v2-active-head-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(122, 90, 255, 0.98);
}

.mei-v2-active-head-title {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(214, 223, 247, 0.9);
}

.mei-v2-active-state {
  height: 21px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(100, 123, 186, 0.38);
  background: rgba(28, 45, 86, 0.65);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 700;
  color: rgba(120, 226, 173, 0.95);
}

.mei-v2-active-focus {
  flex-shrink: 0;
  border-radius: 12px;
  border: 1px solid rgba(100, 122, 184, 0.34);
  background: rgba(10, 18, 42, 0.66);
  padding: 9px 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.mei-v2-active-check {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid rgba(116, 93, 255, 0.95);
  background: radial-gradient(circle at 45% 35%, rgba(67, 79, 240, 0.36), rgba(20, 30, 72, 0.9));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1;
  font-weight: 700;
  color: rgba(236, 243, 255, 0.98);
}

.mei-v2-active-focus-title {
  font-size: 16px;
  line-height: 1.12;
  font-weight: 600;
  letter-spacing: -0.006em;
  color: rgba(242, 248, 255, 0.99);
}

.mei-v2-active-focus-sub {
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-active-focus-btn {
  font-family: var(--mei-font-family);
  height: 32px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(97, 120, 185, 0.42);
  background: rgba(21, 34, 72, 0.84);
  color: rgba(203, 214, 241, 0.94);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.mei-v2-active-steps {
  flex-shrink: 0;
  margin-top: 0;
  border-radius: 11px;
  border: 1px solid rgba(98, 119, 178, 0.28);
  background: rgba(10, 17, 40, 0.5);
  padding: var(--mei-v2-intra-gap) 10px calc(var(--mei-v2-intra-gap) + 1px);
}

.mei-v2-active-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-active-section-title {
  margin: 0;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(201, 214, 242, 0.9);
}

.mei-v2-active-count {
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid rgba(104, 124, 186, 0.35);
  background: rgba(41, 54, 97, 0.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  color: rgba(228, 235, 254, 0.95);
}

.mei-v2-active-step-row {
  min-height: 40px;
  border-radius: 10px;
  border: 1px solid rgba(99, 119, 178, 0.3);
  background: rgba(14, 23, 50, 0.75);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 0 10px;
  margin-bottom: 6px;
}

.mei-v2-active-step-row:last-child {
  margin-bottom: 0;
}

.mei-v2-active-step-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 1px solid rgba(132, 151, 205, 0.9);
}

.mei-v2-active-step-label {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
  color: rgba(232, 239, 255, 0.97);
}

.mei-v2-active-step-time {
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  color: rgba(172, 188, 224, 0.9);
}

.mei-v2-active-progress {
  flex-shrink: 0;
  margin-top: 0;
  padding: 0 2px;
}

.mei-v2-active-progress-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-active-progress-label,
.mei-v2-active-progress-value {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
  color: rgba(214, 226, 250, 0.93);
}

.mei-v2-active-progress-bar {
  height: 8px;
  border-radius: 999px;
  border: 1px solid rgba(100, 121, 178, 0.3);
  background: rgba(12, 21, 47, 0.86);
  overflow: hidden;
}

.mei-v2-active-progress-fill {
  display: block;
  height: 100%;
  width: 60%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(70, 102, 255, 0.98) 0%, rgba(147, 67, 255, 0.95) 100%);
}

.mei-v2-active-primary {
  font-family: var(--mei-font-family);
  flex-shrink: 0;
  margin-top: 0;
  width: 100%;
  height: 38px;
  border-radius: 10px;
  border: 1px solid rgba(109, 128, 246, 0.58);
  background: linear-gradient(180deg, rgba(72, 105, 255, 0.95) 0%, rgba(146, 66, 251, 0.95) 100%);
  color: rgba(248, 251, 255, 0.99);
  font-size: 13px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-active-actions {
  flex-shrink: 0;
  margin-top: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 52px;
  gap: 8px;
}

.mei-v2-active-secondary,
.mei-v2-active-more {
  font-family: var(--mei-font-family);
  height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(98, 121, 184, 0.36);
  background: rgba(17, 29, 64, 0.82);
  color: rgba(207, 218, 245, 0.95);
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-active-triple {
  flex-shrink: 0;
  margin-top: 0;
  border-radius: 11px;
  border: 1px solid rgba(97, 119, 180, 0.24);
  background: rgba(9, 16, 38, 0.45);
  padding: var(--mei-v2-intra-gap) 10px calc(var(--mei-v2-intra-gap) + 1px);
}

.mei-v2-active-triple > .mei-v2-active-section-title {
  margin: 0 0 var(--mei-v2-intra-gap);
}

.mei-v2-active-triple-grid {
  margin-top: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.mei-v2-active-triple-card {
  border-radius: 10px;
  border: 1px solid rgba(99, 119, 179, 0.34);
  background: rgba(14, 24, 54, 0.84);
  padding: 8px;
  min-height: 146px;
  display: grid;
  grid-template-rows: auto auto auto auto 1fr;
}

.mei-v2-active-triple-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
}

.mei-v2-active-triple-title {
  font-size: 9px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(181, 198, 232, 0.9);
}

.mei-v2-active-triple-plus {
  font-size: 10px;
  line-height: 1;
  font-weight: 700;
  color: rgba(159, 124, 255, 0.95);
}

.mei-v2-active-triple-value {
  margin-top: 9px;
  font-size: 42px;
  line-height: 0.95;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: rgba(242, 248, 255, 0.98);
}

.mei-v2-active-triple-sub {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(159, 175, 211, 0.88);
}

.mei-v2-active-triple-text {
  margin-top: 7px;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 500;
  color: rgba(209, 221, 245, 0.93);
}

.mei-v2-active-triple-cta {
  align-self: end;
  margin-top: 9px;
  height: 22px;
  border-radius: 8px;
  border: 1px solid rgba(97, 120, 186, 0.34);
  background: rgba(22, 34, 72, 0.75);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
  color: rgba(189, 205, 239, 0.94);
}

.mei-v2-active-triple-card.is-magenta .mei-v2-active-triple-plus,
.mei-v2-active-triple-card.is-magenta .mei-v2-active-triple-cta {
  color: rgba(241, 145, 209, 0.95);
}

.mei-v2-active-triple-card.is-cyan .mei-v2-active-triple-cta {
  color: rgba(127, 211, 239, 0.95);
}

.mei-v2-active-track {
  flex-shrink: 0;
  margin-top: 0;
  border-radius: 11px;
  border: 1px solid rgba(97, 119, 180, 0.24);
  background: rgba(9, 16, 38, 0.45);
  padding: var(--mei-v2-intra-gap) 10px calc(var(--mei-v2-intra-gap) + 1px);
}

.mei-v2-active-track-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-active-track-btn {
  font-family: var(--mei-font-family);
  height: 24px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(96, 118, 182, 0.38);
  background: rgba(16, 28, 62, 0.78);
  color: rgba(206, 217, 244, 0.94);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-active-days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

.mei-v2-active-day {
  border-radius: 8px;
  border: 1px solid rgba(95, 116, 178, 0.28);
  background: rgba(12, 20, 47, 0.72);
  min-height: 44px;
  padding: 6px 0 5px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 2px;
}

.mei-v2-active-day span {
  font-size: 11px;
  line-height: 1;
  font-weight: 500;
  color: rgba(147, 166, 208, 0.86);
}

.mei-v2-active-day strong {
  font-size: 22px;
  line-height: 1;
  font-weight: 600;
  color: rgba(219, 229, 250, 0.96);
}

.mei-v2-active-day.is-active {
  border-color: rgba(112, 133, 230, 0.72);
  background: rgba(55, 69, 142, 0.55);
}

.mei-v2-active-track-blocks {
  margin-top: 8px;
  display: grid;
  grid-template-columns: 1.15fr 1fr 1fr;
  gap: 7px;
}

.mei-v2-active-track-block {
  min-height: 54px;
  border-radius: 9px;
  padding: 8px 8px;
  border: 1px solid rgba(104, 124, 186, 0.3);
  background: rgba(16, 27, 61, 0.82);
  display: grid;
  align-content: start;
  gap: 3px;
}

.mei-v2-active-track-block strong {
  font-size: 12px;
  line-height: 1.15;
  font-weight: 600;
  color: rgba(228, 236, 253, 0.97);
}

.mei-v2-active-track-block span {
  font-size: 10px;
  line-height: 1.15;
  font-weight: 500;
  color: rgba(171, 186, 220, 0.9);
}

.mei-v2-active-track-block.is-blue {
  background: rgba(28, 57, 123, 0.56);
}

.mei-v2-active-track-block.is-violet {
  background: rgba(58, 50, 118, 0.54);
}

.mei-v2-active-track-block.is-rose {
  background: rgba(98, 48, 90, 0.54);
}

.mei-v2-monitor-card {
  grid-column: 3 / 4;
  justify-self: stretch;
  width: 100%;
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.3);
  background:
    radial-gradient(125% 100% at 18% 0%, rgba(76, 106, 255, 0.14) 0%, rgba(76, 106, 255, 0) 50%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 16px 30px rgba(6, 10, 24, 0.42), inset 0 1px 0 rgba(142, 166, 255, 0.12);
  padding: 12px;
  box-sizing: border-box;
  font-family: var(--mei-font-family);
}

.mei-v2-monitor-header {
  flex-shrink: 0;
  padding: 2px 4px 11px;
  border-bottom: 1px solid rgba(112, 132, 192, 0.24);
  margin-bottom: 0;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(214, 223, 247, 0.9);
}

.mei-v2-monitor-section {
  flex-shrink: 0;
  padding: var(--mei-v2-intra-gap) 6px;
  border-bottom: 1px solid rgba(106, 124, 180, 0.18);
}

.mei-v2-monitor-section:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.mei-v2-monitor-title,
.mei-v2-monitor-panel-title,
.mei-v2-monitor-replan-title {
  margin: 0;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(201, 214, 242, 0.88);
}

.mei-v2-monitor-section > .mei-v2-monitor-title,
.mei-v2-monitor-section > .mei-v2-monitor-panel-title,
.mei-v2-monitor-section > .mei-v2-monitor-replan-title {
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-monitor-health {
  margin-top: 0;
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
  padding: 9px 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.mei-v2-monitor-ring {
  width: 86px;
  height: 86px;
  border-radius: 50%;
  border: 4px solid rgba(55, 228, 173, 0.92);
  display: grid;
  place-items: center;
  box-shadow: inset 0 0 0 6px rgba(21, 44, 71, 0.9);
}

.mei-v2-monitor-ring-value {
  font-size: 30px;
  line-height: 1;
  font-weight: 600;
  color: rgba(222, 247, 239, 0.98);
}

.mei-v2-monitor-health-state {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 600;
  color: rgba(95, 226, 156, 0.96);
  margin-bottom: 6px;
}

.mei-v2-monitor-health-item {
  font-size: 11px;
  line-height: 1.25;
  font-weight: 500;
  color: rgba(179, 195, 230, 0.9);
  margin-bottom: 4px;
}

.mei-v2-monitor-health-item:last-child {
  margin-bottom: 0;
}

.mei-v2-monitor-health-checks {
  display: grid;
  gap: 11px;
}

.mei-v2-monitor-check {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid rgba(74, 208, 150, 0.45);
  background: rgba(29, 103, 76, 0.35);
  color: rgba(98, 232, 171, 0.96);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
}

.mei-v2-monitor-panel {
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
}

.mei-v2-monitor-integrity {
  margin-top: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.mei-v2-monitor-integrity strong {
  display: block;
  font-size: 34px;
  line-height: 0.95;
  font-weight: 600;
  color: rgba(236, 243, 255, 0.98);
}

.mei-v2-monitor-integrity span {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-monitor-mini-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.mei-v2-monitor-mini-value {
  font-size: 42px;
  line-height: 0.95;
  font-weight: 600;
  color: rgba(236, 243, 255, 0.98);
}

.mei-v2-monitor-mini-title {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(201, 214, 242, 0.88);
}

.mei-v2-monitor-mini-sub {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-monitor-replan {
  position: relative;
}

.mei-v2-monitor-replan-sub {
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-monitor-chevron {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  line-height: 1;
  font-weight: 600;
  color: rgba(166, 183, 221, 0.9);
}

.mei-v2-monitor-insight-row {
  margin-top: var(--mei-v2-intra-gap);
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
  padding: 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.mei-v2-monitor-insight-ic {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  border: 1px solid rgba(98, 118, 182, 0.4);
  background: rgba(29, 44, 90, 0.62);
}

.mei-v2-monitor-insight-title {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(201, 214, 242, 0.88);
}

.mei-v2-monitor-title + .mei-v2-monitor-insight-row {
  margin-top: 0;
}

.mei-v2-monitor-insight-text {
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.24;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-monitor-handover-sub {
  margin: 0 0 var(--mei-v2-intra-gap);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(164, 180, 218, 0.9);
}

.mei-v2-monitor-task-row {
  margin-top: 0;
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
  min-height: 34px;
  padding: 0 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.mei-v2-monitor-task-row + .mei-v2-monitor-task-row {
  margin-top: var(--mei-v2-intra-gap);
}

.mei-v2-monitor-task-check {
  width: 11px;
  height: 11px;
  border-radius: 3px;
  border: 1px solid rgba(127, 146, 198, 0.72);
}

.mei-v2-monitor-task-label {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(206, 219, 246, 0.95);
}

.mei-v2-monitor-task-btn {
  font-family: var(--mei-font-family);
  height: 24px;
  min-width: 58px;
  border-radius: 8px;
  border: 1px solid rgba(96, 118, 182, 0.38);
  background: rgba(16, 28, 62, 0.78);
  color: rgba(206, 217, 244, 0.94);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-monitor-more-link {
  margin-top: var(--mei-v2-intra-gap);
  border: 0;
  background: transparent;
  color: rgba(152, 168, 233, 0.94);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 600;
  padding: 0;
  cursor: pointer;
}

.mei-v2-entry-head {
  flex-shrink: 0;
  padding: 2px 4px 11px;
  border-bottom: 1px solid rgba(112, 132, 192, 0.24);
  margin-bottom: var(--mei-v2-section-gap);
}

.mei-v2-entry-head-title {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(214, 223, 247, 0.9);
}

.mei-v2-entry-section {
  flex-shrink: 0;
  margin-bottom: var(--mei-v2-section-gap);
  padding: 0 4px var(--mei-v2-intra-gap);
  border-bottom: 1px solid rgba(106, 124, 180, 0.18);
}

.mei-v2-entry-section:last-child {
  margin-bottom: 0;
  border-bottom: 0;
  padding-bottom: 0;
}

.mei-v2-entry-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-entry-section-title {
  margin: 0;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(201, 214, 242, 0.88);
}

.mei-v2-entry-section > .mei-v2-entry-section-title:first-child {
  margin-bottom: var(--mei-v2-intra-gap);
}

.mei-v2-entry-count {
  min-width: 24px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid rgba(105, 121, 184, 0.4);
  background: rgba(43, 54, 96, 0.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
  color: rgba(229, 236, 255, 0.95);
}

.mei-v2-entry-detected-list {
  display: grid;
  gap: 8px;
}

.mei-v2-entry-detected-item {
  border-radius: 10px;
  border: 1px solid rgba(101, 120, 183, 0.3);
  background: rgba(10, 17, 40, 0.62);
  padding: 7px 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.mei-v2-entry-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  box-shadow: 0 0 0 2px rgba(118, 135, 198, 0.2);
}

.mei-v2-entry-dot.is-blue {
  background: rgba(129, 200, 255, 0.98);
}

.mei-v2-entry-dot.is-purple {
  background: rgba(167, 124, 255, 0.98);
}

.mei-v2-entry-detected-title {
  font-size: 12px;
  line-height: 1.22;
  font-weight: 600;
  color: rgba(236, 243, 255, 0.97);
}

.mei-v2-entry-detected-sub {
  margin-top: 3px;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(149, 167, 207, 0.86);
}

.mei-v2-entry-see-btn {
  font-family: var(--mei-font-family);
  width: 64px;
  height: 28px;
  border-radius: 10px;
  border: 1px solid rgba(102, 124, 187, 0.45);
  background: rgba(26, 38, 76, 0.84);
  color: rgba(229, 236, 252, 0.95);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
}

.mei-v2-entry-input {
  border-radius: 10px;
  border: 1px solid rgba(96, 118, 182, 0.3);
  background: rgba(8, 15, 35, 0.62);
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(111, 130, 170, 0.9);
}

.mei-v2-entry-capture {
  margin-top: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.mei-v2-entry-capture-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

.mei-v2-entry-tab {
  font-family: var(--mei-font-family);
  height: 34px;
  border-radius: 8px;
  border: 1px solid rgba(95, 117, 180, 0.36);
  background: rgba(10, 18, 42, 0.78);
  color: rgba(188, 202, 232, 0.92);
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-entry-send {
  font-family: var(--mei-font-family);
  width: 34px;
  height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(108, 128, 246, 0.56);
  background: linear-gradient(180deg, rgba(72, 105, 255, 0.95) 0%, rgba(68, 79, 246, 0.95) 100%);
  color: rgba(249, 251, 255, 0.98);
  font-size: 13px;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
}

.mei-v2-entry-filter {
  font-family: var(--mei-font-family);
  height: 26px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(96, 118, 182, 0.4);
  background: rgba(14, 24, 53, 0.72);
  color: rgba(200, 213, 240, 0.92);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-entry-task-list {
  display: grid;
  gap: 3px;
}

.mei-v2-entry-task-row {
  min-height: 31px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-bottom: 1px solid rgba(101, 121, 182, 0.16);
}

.mei-v2-entry-task-title {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(226, 235, 251, 0.95);
}

.mei-v2-entry-task-tag {
  flex-shrink: 0;
  min-width: 42px;
  height: 21px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
}

.mei-v2-entry-task-tag.is-high {
  color: rgba(255, 205, 170, 0.96);
  background: rgba(156, 86, 38, 0.32);
  border: 1px solid rgba(214, 125, 68, 0.44);
}

.mei-v2-entry-task-tag.is-day {
  color: rgba(204, 215, 242, 0.94);
  background: rgba(52, 69, 112, 0.36);
  border: 1px solid rgba(106, 124, 180, 0.34);
}

.mei-v2-entry-task-tag.is-low {
  color: rgba(172, 192, 239, 0.94);
  background: rgba(54, 74, 132, 0.3);
  border: 1px solid rgba(104, 131, 206, 0.36);
}

.mei-v2-entry-more {
  margin-top: 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.mei-v2-entry-more-text {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(172, 189, 227, 0.9);
}

.mei-v2-entry-open-link {
  font-family: var(--mei-font-family);
  border: 0;
  background: transparent;
  color: rgba(152, 168, 233, 0.94);
  font-size: 16px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
}

.mei-v2-entry-loop-list {
  display: grid;
  gap: 3px;
}

.mei-v2-entry-loop-row {
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-bottom: 1px solid rgba(101, 121, 182, 0.16);
}

.mei-v2-entry-loop-title {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(226, 235, 251, 0.95);
}

.mei-v2-entry-loop-age {
  min-width: 52px;
  height: 21px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
}

.mei-v2-entry-loop-age.is-danger {
  color: rgba(255, 194, 200, 0.96);
  background: rgba(165, 52, 75, 0.28);
  border: 1px solid rgba(214, 92, 121, 0.44);
}

.mei-v2-entry-loop-age.is-warn {
  color: rgba(255, 213, 166, 0.96);
  background: rgba(153, 92, 37, 0.28);
  border: 1px solid rgba(216, 142, 76, 0.44);
}

.mei-v2-entry-loop-age.is-soft {
  color: rgba(255, 228, 176, 0.96);
  background: rgba(151, 116, 53, 0.26);
  border: 1px solid rgba(202, 159, 81, 0.42);
}

.mei-v2-entry-all-loops {
  font-family: var(--mei-font-family);
  margin-top: 10px;
  width: 100%;
  height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(96, 118, 182, 0.36);
  background: rgba(18, 29, 64, 0.82);
  color: rgba(209, 220, 245, 0.95);
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-card {
  border-radius: 14px;
  border: 1px solid rgba(92, 118, 178, 0.34);
  background:
    radial-gradient(120% 95% at 18% 0%, rgba(76, 106, 255, 0.18) 0%, rgba(76, 106, 255, 0) 52%),
    linear-gradient(180deg, rgba(11, 18, 40, 0.98) 0%, rgba(8, 14, 34, 0.98) 100%);
  box-shadow: 0 18px 34px rgba(6, 10, 24, 0.46), inset 0 1px 0 rgba(142, 166, 255, 0.16);
  padding: 12px 14px;
  min-height: 164px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.mei-v2-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(110, 132, 196, 0.24);
}

.mei-v2-card-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.mei-v2-card-title-ic {
  width: 14px;
  height: 14px;
  color: rgba(166, 140, 255, 0.95);
  display: inline-flex;
}

.mei-v2-card-title-ic svg {
  width: 100%;
  height: 100%;
  display: block;
}

.mei-v2-card-title-tx {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.065em;
  text-transform: uppercase;
  color: rgba(215, 225, 248, 0.88);
}

.mei-v2-head-link {
  font-family: var(--mei-font-family);
  border: 1px solid rgba(96, 118, 182, 0.42);
  background: rgba(14, 24, 53, 0.72);
  color: rgba(180, 196, 232, 0.9);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  padding: 4px 10px;
  border-radius: 9px;
  cursor: pointer;
}

.mei-v2-decision-body {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 12px;
  flex: 1;
  min-height: 0;
}

.mei-v2-date-box {
  border-radius: 14px;
  border: 1px solid rgba(122, 145, 218, 0.35);
  background:
    linear-gradient(180deg, rgba(30, 44, 98, 0.58) 0%, rgba(14, 24, 56, 0.72) 100%),
    rgba(7, 14, 34, 0.82);
  box-shadow: inset 0 1px 0 rgba(170, 190, 255, 0.16);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 7px 4px 6px;
}

.mei-v2-date-day {
  font-size: 54px;
  line-height: 0.92;
  letter-spacing: -0.02em;
  font-weight: 700;
  color: rgba(243, 247, 255, 0.98);
}

.mei-v2-date-month {
  font-size: 13px;
  line-height: 1.1;
  font-weight: 500;
  color: rgba(190, 204, 238, 0.92);
}

.mei-v2-date-weekday {
  font-size: 10px;
  line-height: 1.15;
  font-weight: 500;
  color: rgba(150, 167, 207, 0.86);
}

.mei-v2-decision-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    'top top'
    'headline headline'
    'meta action'
    'why why';
  row-gap: 6px;
  column-gap: 10px;
  align-content: start;
  min-width: 0;
}

.mei-v2-content-top {
  grid-area: top;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2px;
  gap: 12px;
}

.mei-v2-kicker {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(146, 162, 198, 0.92);
}

.mei-v2-plan-btn {
  font-family: var(--mei-font-family);
  border: 1px solid rgba(98, 121, 188, 0.56);
  background: rgba(18, 29, 64, 0.84);
  color: rgba(221, 231, 252, 0.94);
  border-radius: 9px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.1;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
}

.mei-v2-headline-row {
  grid-area: headline;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-bottom: 2px;
}

.mei-v2-headline {
  margin: 0;
  font-size: clamp(18px, 1.6vw, 26px);
  line-height: 1.1;
  letter-spacing: -0.009em;
  font-weight: 600;
  color: rgba(246, 250, 255, 0.99);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-v2-badge {
  flex-shrink: 0;
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  color: rgba(229, 216, 255, 0.95);
  background: rgba(87, 60, 186, 0.44);
  border: 1px solid rgba(135, 102, 241, 0.52);
}

.mei-v2-meta-row {
  grid-area: meta;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 0;
  align-items: center;
}

.mei-v2-meta-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(98, 118, 176, 0.42);
  background: rgba(8, 16, 38, 0.62);
  padding: 4px 8px;
  color: rgba(213, 225, 248, 0.93);
}

.mei-v2-meta-ic {
  width: 12px;
  height: 12px;
  color: rgba(170, 186, 224, 0.9);
  display: inline-flex;
}

.mei-v2-meta-ic svg {
  width: 100%;
  height: 100%;
  display: block;
}

.mei-v2-meta-tx {
  font-size: 11px;
  line-height: 1.1;
  font-weight: 500;
}

.mei-v2-why {
  grid-area: why;
  margin: 0;
  font-size: 12px;
  line-height: 1.32;
  font-weight: 500;
  color: rgba(173, 190, 228, 0.9);
  margin-top: 4px;
  padding-top: 6px;
  border-top: 1px solid rgba(104, 126, 187, 0.2);
}

.mei-v2-action-row {
  grid-area: action;
  align-self: center;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 0;
  padding-left: 8px;
}

.mei-v2-cta-start {
  font-family: var(--mei-font-family);
  border: 1px solid rgba(109, 128, 246, 0.58);
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(72, 105, 255, 0.95) 0%, rgba(68, 79, 246, 0.95) 100%);
  color: rgba(248, 251, 255, 0.99);
  padding: 10px 20px;
  font-size: 16px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.005em;
  cursor: pointer;
  min-height: 42px;
}

.mei-v2-menu-btn {
  border: 1px solid rgba(99, 119, 184, 0.5);
  background: rgba(12, 21, 49, 0.8);
  color: rgba(228, 236, 252, 0.96);
  border-radius: 10px;
  width: 42px;
  height: 42px;
  font-size: 17px;
  line-height: 1;
  font-weight: 600;
  cursor: pointer;
}

.mei-v2-card--kpi {
  justify-content: flex-start;
  padding-left: 12px;
  padding-right: 12px;
}

.mei-v2-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  flex: 1;
  padding-top: 2px;
}

.mei-v2-kpi-card {
  border-radius: 11px;
  border: 1px solid rgba(98, 117, 182, 0.35);
  background: rgba(7, 14, 34, 0.58);
  padding: 8px 6px 8px;
  min-height: 108px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  border-left: 1px solid rgba(103, 125, 186, 0.2);
}

.mei-v2-kpi-card:first-child {
  border-left-color: rgba(103, 125, 186, 0.32);
}

.mei-v2-kpi-label {
  font-size: 10px;
  line-height: 1.15;
  font-weight: 500;
  color: rgba(171, 187, 220, 0.9);
}

.mei-v2-kpi-ring {
  --mei-v2-kpi-color: rgba(87, 196, 255, 0.94);
  width: 60px;
  height: 60px;
  border-radius: 50%;
  position: relative;
  display: grid;
  place-items: center;
  background:
    conic-gradient(var(--mei-v2-kpi-color) calc(var(--mei-v2-kpi-pct) * 1%), rgba(80, 96, 135, 0.28) 0);
}

.mei-v2-kpi-ring::before {
  content: '';
  width: 49px;
  height: 49px;
  border-radius: 50%;
  background: rgba(9, 16, 37, 0.95);
  border: 1px solid rgba(138, 156, 208, 0.16);
  position: absolute;
}

.mei-v2-kpi-ring-value {
  position: relative;
  z-index: 1;
  font-size: 17px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: rgba(244, 248, 255, 0.98);
}

.mei-v2-kpi-sub {
  font-size: 10px;
  line-height: 1.2;
  font-weight: 500;
  color: rgba(153, 170, 206, 0.88);
  text-align: center;
}

.mei-v2-kpi-card.is-focus .mei-v2-kpi-ring,
.mei-v2-kpi-card.is-progress .mei-v2-kpi-ring,
.mei-v2-kpi-card.is-integrity .mei-v2-kpi-ring {
  --mei-v2-kpi-color: rgba(91, 219, 184, 0.95);
}

.mei-v2-kpi-card.is-capacity .mei-v2-kpi-ring {
  --mei-v2-kpi-color: rgba(255, 113, 123, 0.92);
}

@media (max-width: 1280px) {
  .mei-v2-headline {
    font-size: clamp(17px, 1.5vw, 23px);
  }

  .mei-v2-cta-start {
    font-size: 15px;
    padding: 9px 16px;
  }
}

@media (max-width: 1100px) {
  .mei-v2-first-row {
    grid-template-columns: 1fr;
  }

  .mei-v2-first-row::before {
    display: none;
  }

  .mei-v2-third-row {
    grid-template-columns: 1fr;
    row-gap: var(--mei-v2-line-gap);
  }

  .mei-v2-third-row::before,
  .mei-v2-third-row::after {
    display: none;
  }

  .mei-v2-kpi-grid {
    gap: 10px;
  }
}

.mei-planner-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  column-gap: 20px;
  row-gap: 24px;
  align-items: start;
  width: 100%;
  min-width: 0;
}

@media (max-width: 900px) {
  .mei-planner-layout {
    grid-template-columns: 1fr;
  }
}

.mei-planner-col-main {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}

.mei-planner-header.card {
  margin: 0;
}

.mei-planner-form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
  align-items: center;
}

.mei-planner-input {
  flex: 1 1 200px;
  min-width: 0;
  padding: 12px 14px;
  border-radius: var(--radius-md, 14px);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.04);
  color: var(--text);
  font-family: inherit;
  font-size: 15px;
  outline: none;
}

.mei-planner-input:focus {
  border-color: rgba(47, 124, 255, 0.45);
}

.mei-planner-list.card {
  margin: 0;
}

.mei-planner-legacy-empty {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.mei-planner-day-group {
  margin-top: 14px;
}

.mei-planner-day-group:first-of-type {
  margin-top: 4px;
}

.mei-planner-day-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px;
}

.mei-planner-task--done .task-main strong {
  text-decoration: line-through;
  opacity: 0.72;
}

.mei-planner-toggle.status-pill {
  cursor: pointer;
  border: none;
  font: inherit;
}

html.theme-light .mei-planner-input {
  background: rgba(12, 24, 48, 0.04);
}

/* MEAI Planner — 12-Spalten-System (einzige Struktur-Spaltenlogik) */
.mei-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: 24px;
  width: 100%;
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
  min-width: 0;
}

.mei-grid__12 {
  grid-column: 1 / -1;
}

.mei-grid__8 {
  grid-column: span 8;
}

.mei-grid__4 {
  grid-column: span 4;
}

.mei-grid__3 {
  grid-column: span 3;
}

/* MEAI Planner — Execution Mode + Design Tokens (Card / Typo / Icon) */
.mei-planner-page {
  width: 100%;
  min-width: 0;
  --mei-ds-radius: 16px;
  --mei-ds-pad: 22px;
  --mei-ds-border: 1px solid rgba(255, 255, 255, 0.075);
  --mei-ds-shadow: 0 6px 22px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  --mei-ds-divider: rgba(255, 255, 255, 0.08);
  --mei-ds-divider-margin: 14px 0;
  --mei-ds-h1: clamp(1.28rem, 1.85vw, 1.72rem);
  --mei-ds-h1-weight: 650;
  --mei-ds-h2: 12px;
  --mei-ds-h2-weight: 700;
  --mei-ds-h2-lh: 1.28;
  --mei-ds-h2-track: 0.09em;
  --mei-ds-body: 14px;
  --mei-ds-body-lh: 1.45;
  --mei-ds-label: 12px;
  --mei-ds-ic: 18px;
  --mei-ds-ic-gap: 8px;
  --mei-ds-head-minh: 40px;
  --mei-ds-icon-box: 32px;
  --mei-ds-head-mb: 12px;
}

/* Planner: nutzt Breite im Main; kein zweites Außenpadding (Rand = main padding = Card-Abstand) */
.mei-planner-page.mei-grid {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
  box-sizing: border-box;
}

/* —— Planner: einheitliches Card-System (Radius, Rand, Schatten, Padding) —— */
.mei-planner-page .mei-decision-hero-card,
.mei-planner-page .mei-kpi-card,
.mei-planner-page .mei-active-exec-card,
.mei-planner-page .mei-detected-card,
.mei-planner-page .mei-triple-card,
.mei-planner-page .mei-insight-card,
.mei-planner-page .mei-exec-integrity-card,
.mei-planner-page section.mei-system-health-card {
  border-radius: var(--mei-ds-radius);
  border: var(--mei-ds-border);
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-page .mei-planner-rail-card.card {
  border-radius: var(--mei-ds-radius);
}

.mei-planner-page .mei-planner-bottom-col.card {
  border-radius: var(--mei-ds-radius);
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-page .mei-decision-hero-card::before {
  opacity: 0.32;
}

.mei-planner-page .mei-decision-hero-shell {
  padding: 14px var(--mei-ds-pad);
  grid-template-columns: 5fr 2fr 3fr;
  column-gap: 0;
  row-gap: 0;
  align-items: center;
}

.mei-planner-page .mei-decision-consequence {
  border-radius: var(--mei-ds-radius);
  border: 1px solid rgba(255, 255, 255, 0.055);
  background: rgba(5, 9, 18, 0.42);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  padding: var(--mei-ds-pad);
}

.mei-planner-page .mei-decision-hero-title {
  font-size: var(--mei-ds-h1);
  font-weight: var(--mei-ds-h1-weight);
  line-height: 1.18;
  letter-spacing: -0.02em;
}

.mei-planner-page .mei-decision-hero-subline,
.mei-planner-page .mei-decision-consequence-line {
  font-size: var(--mei-ds-body);
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-kpi-card {
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-page .mei-kpi-card-inner {
  padding: var(--mei-kpi-inner-pad-y) var(--mei-kpi-inner-pad-x);
}

.mei-planner-page .mei-kpi-title {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-kpi-value,
.mei-planner-page .mei-kpi-status {
  font-size: 14px;
  line-height: 1.32;
}

.mei-planner-page .mei-kpi-sub,
.mei-planner-page .mei-kpi-meta,
.mei-planner-page .mei-kpi-meta--soft {
  font-size: var(--mei-ds-label);
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-kpi-card:hover {
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-top-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 67fr) minmax(0, 33fr);
  gap: 14px;
  align-items: stretch;
}

.mei-planner-top-row-left,
.mei-planner-top-row-right {
  min-width: 0;
}

.mei-decision-top-card {
  height: 100%;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: linear-gradient(165deg, rgba(12, 18, 32, 0.99), rgba(8, 13, 24, 0.99));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 6px 22px rgba(0, 0, 0, 0.22);
  padding: 14px 16px 12px;
}

.mei-decision-top-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.mei-decision-top-head-left {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mei-decision-top-crown {
  font-size: 11px;
  color: rgba(148, 110, 255, 0.94);
}

.mei-decision-top-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(244, 248, 255, 0.96);
}

.mei-decision-top-flow {
  min-height: 32px;
  border-radius: 10px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mei-decision-top-body {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.mei-decision-top-date {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: linear-gradient(175deg, rgba(30, 34, 76, 0.6), rgba(10, 15, 29, 0.62));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 8px 20px rgba(42, 30, 92, 0.24);
  min-height: 126px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
}

.mei-decision-top-date-num {
  font-size: 52px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(248, 251, 255, 0.98);
}

.mei-decision-top-date-mon {
  font-size: 16px;
  font-weight: 650;
  line-height: 1;
  color: rgba(216, 228, 247, 0.94);
}

.mei-decision-top-date-weekday {
  font-size: 12px;
  font-weight: 500;
  color: rgba(170, 186, 212, 0.82);
}

.mei-decision-top-main {
  min-width: 0;
  position: relative;
}

.mei-decision-top-kicker {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(150, 164, 190, 0.82);
}

.mei-decision-top-title-row {
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-right: 142px;
}

.mei-decision-top-title {
  margin: 0;
  font-size: clamp(1.95rem, 2.45vw, 2.35rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  color: rgba(247, 250, 255, 0.98);
}

.mei-decision-top-prio {
  border-radius: 999px;
  border: 1px solid rgba(124, 92, 220, 0.38);
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 620;
  color: rgba(228, 222, 252, 0.94);
  background: rgba(104, 72, 200, 0.18);
}

.mei-decision-top-meta {
  margin-top: 7px;
  display: flex;
  gap: 8px;
}

.mei-decision-top-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(8, 14, 26, 0.72);
  padding: 6px 10px;
  font-size: 12px;
  color: rgba(208, 220, 241, 0.92);
}

.mei-decision-top-why {
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.3;
  color: rgba(158, 174, 202, 0.82);
}

.mei-decision-top-actions {
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.mei-decision-top-cta {
  width: 300px;
  min-width: 300px;
  min-height: 48px;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 650;
  background: linear-gradient(95deg, rgba(64, 118, 255, 0.96), rgba(118, 72, 220, 0.88));
}

.mei-decision-top-more {
  min-width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(208, 220, 241, 0.9);
}

.mei-decision-top-plan {
  position: absolute;
  right: 0;
  top: 0;
  min-height: 34px;
  border-radius: 10px;
  padding: 0 14px;
  font-size: 12px;
  color: rgba(214, 226, 245, 0.94);
}

.mei-planner-page .mei-main-grid--planner .mei-active-exec-card,
.mei-planner-page .mei-main-grid--planner .mei-detected-card {
  padding: var(--mei-ds-pad);
}

.mei-planner-page .mei-active-exec-card::before {
  opacity: 0.45;
  box-shadow: inset 0 0 0 1px rgba(120, 86, 220, 0.06);
}

.mei-planner-page .mei-active-exec-head,
.mei-planner-page .mei-detected-head {
  min-height: var(--mei-ds-head-minh);
  margin-bottom: var(--mei-ds-ic-gap);
  align-items: center;
}

.mei-planner-page .mei-active-exec-label,
.mei-planner-page .mei-detected-title {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-detected-subtitle {
  font-size: var(--mei-ds-label);
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-active-exec-kicker {
  font-size: var(--mei-ds-label);
  font-weight: 600;
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-active-exec-title {
  font-size: 16px;
  font-weight: 650;
  letter-spacing: -0.015em;
  line-height: 1.22;
}

.mei-planner-page .mei-active-exec-flow-icon svg {
  width: var(--mei-ds-ic);
  height: var(--mei-ds-ic);
}

.mei-planner-page .mei-triple-card {
  padding: var(--mei-ds-pad);
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-page .mei-triple-card--steps::before,
.mei-planner-page .mei-triple-card--loops::before,
.mei-planner-page .mei-triple-card--tomorrow::before {
  opacity: 0.32;
}

.mei-planner-page .mei-triple-head {
  gap: var(--mei-ds-ic-gap);
  min-height: var(--mei-ds-head-minh);
  margin-bottom: var(--mei-ds-head-mb);
  align-items: center;
}

.mei-planner-page .mei-triple-head-icon {
  width: var(--mei-ds-icon-box);
  height: var(--mei-ds-icon-box);
  box-shadow: none;
}

.mei-planner-page .mei-triple-head-icon--steps,
.mei-planner-page .mei-triple-head-icon--loops,
.mei-planner-page .mei-triple-head-icon--tomorrow {
  box-shadow: none;
}

.mei-planner-page .mei-triple-head-icon svg {
  width: var(--mei-ds-ic);
  height: var(--mei-ds-ic);
}

.mei-planner-page .mei-triple-kicker {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-triple-sub {
  font-size: var(--mei-ds-label);
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-triple-step {
  border-top-color: rgba(255, 255, 255, 0.08);
}

.mei-planner-page .mei-insight-card {
  padding: var(--mei-ds-pad);
  box-shadow: var(--mei-ds-shadow);
}

.mei-planner-page .mei-insight-card--feedback::before,
.mei-planner-page .mei-insight-card--capacity::before,
.mei-planner-page .mei-insight-card--history::before {
  opacity: 0.28;
}

.mei-planner-page .mei-insight-title,
.mei-planner-page .mei-insight-title-block {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-insight-title:not(.mei-insight-title--feedback) {
  text-transform: uppercase;
}

.mei-planner-page .mei-insight-title--feedback {
  font-size: var(--mei-ds-h2);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: none;
  line-height: var(--mei-ds-h2-lh);
}

.mei-planner-page .mei-insight-title-by {
  font-size: var(--mei-ds-h2);
  font-weight: 600;
  letter-spacing: var(--mei-ds-h2-track);
}

.mei-planner-page .mei-insight-head {
  min-height: var(--mei-ds-head-minh);
  margin-bottom: var(--mei-ds-head-mb);
  align-items: center;
}

.mei-planner-page .mei-insight-feedback-body {
  gap: var(--mei-ds-ic-gap);
  align-items: center;
}

.mei-planner-page .mei-insight-brain {
  width: var(--mei-ds-icon-box);
  height: var(--mei-ds-icon-box);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(120, 70, 200, 0.08);
  box-shadow: none;
  filter: none;
}

.mei-planner-page .mei-insight-brain svg {
  width: var(--mei-ds-ic);
  height: var(--mei-ds-ic);
}

.mei-planner-page .mei-insight-brain svg path:first-of-type {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linejoin: round;
}

.mei-planner-page .mei-insight-root--planner > .mei-insight-card {
  min-height: 268px;
  max-height: 268px;
}

.mei-planner-page .mei-insight-cap-body {
  grid-template-columns: minmax(0, 100px) minmax(0, 1fr);
  gap: 16px 18px;
  align-items: center;
}

.mei-planner-page .mei-insight-cap-ring {
  width: 92px;
  height: 92px;
}

.mei-planner-page .mei-insight-cap-ring::after {
  inset: 9px;
}

.mei-planner-page .mei-insight-cap-ring-label {
  font-size: 18px;
}

.mei-planner-page .mei-insight-timeline::before {
  width: 1px;
  left: 12px;
  background: var(--mei-ds-divider);
  border-radius: 0;
}

.mei-planner-page .mei-insight-tl-dot {
  width: 9px;
  height: 9px;
  margin-left: 7px;
  background: transparent;
  border: 2px solid rgba(100, 155, 255, 0.88);
  box-shadow: none;
}

.mei-planner-page .mei-insight-tl-line {
  font-size: var(--mei-ds-body);
  font-weight: 500;
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-insight-tl-time {
  font-size: var(--mei-ds-label);
  font-weight: 600;
}

.mei-planner-page .mei-kpi-signal-slot {
  width: var(--mei-kpi-signal-size);
  height: var(--mei-kpi-signal-size);
}

.mei-planner-page .mei-insight-rule,
.mei-planner-page .mei-insight-rule--soft {
  height: 1px;
  margin: var(--mei-ds-divider-margin);
  background: var(--mei-ds-divider);
  opacity: 1;
}

.mei-planner-page .mei-main-grid--planner .mei-detected-head {
  align-items: center;
  min-height: var(--mei-ds-head-minh);
  margin-bottom: var(--mei-ds-head-mb);
}

.mei-planner-page .mei-active-exec-head {
  min-height: var(--mei-ds-head-minh);
  margin-bottom: var(--mei-ds-head-mb);
}

.mei-planner-page .mei-insight-pill-ic svg {
  width: var(--mei-ds-ic);
  height: var(--mei-ds-ic);
}

.mei-planner-page .mei-exec-integrity-card {
  width: 100%;
  max-width: none;
  margin-top: 0;
  padding: var(--mei-ds-pad);
}

.mei-planner-page .mei-exec-integrity-title,
.mei-planner-page .mei-system-health-title {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
  color: rgba(219, 228, 245, 0.92);
}

.mei-planner-page section.mei-system-health-card {
  padding: var(--mei-ds-pad);
}

.mei-planner-page .mei-planner-rail-card .card-inner {
  padding: var(--mei-ds-pad);
}

.mei-planner-page .mei-triple-step-go svg {
  width: var(--mei-ds-ic);
  height: var(--mei-ds-ic);
}

.mei-planner-page .mei-insight-pill-text {
  font-size: var(--mei-ds-body);
  line-height: var(--mei-ds-body-lh);
}

.mei-planner-page .mei-active-exec-why-title {
  font-size: var(--mei-ds-h2);
  font-weight: var(--mei-ds-h2-weight);
  letter-spacing: var(--mei-ds-h2-track);
  text-transform: uppercase;
  line-height: var(--mei-ds-h2-lh);
}

html.theme-light .mei-planner-page .mei-insight-card,
html.theme-light .mei-planner-page .mei-kpi-card,
html.theme-light .mei-planner-page .mei-triple-card,
html.theme-light .mei-planner-page .mei-active-exec-card,
html.theme-light .mei-planner-page .mei-detected-card {
  box-shadow: 0 6px 20px rgba(20, 40, 80, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

html.theme-light .mei-detected-title {
  color: rgba(18, 26, 44, 0.92);
}

html.theme-light .mei-detected-subtitle {
  color: rgba(70, 82, 110, 0.85);
}

html.theme-light .mei-kpi-title {
  color: rgba(18, 26, 44, 0.92);
}

/* Planner: weniger Glow, leichtere Ausführungskarte, Triple-Höhe, ruhigeres „Neu erkannt“ */
.mei-planner-page .mei-decision-hero-card {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 8px 28px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(100, 80, 200, 0.08);
}

.mei-planner-page .mei-decision-hero-card::before {
  opacity: 0.22;
}

.mei-planner-page .mei-active-exec-card::before {
  box-shadow:
    inset 0 0 0 1px rgba(120, 86, 220, 0.05),
    -16px 20px 40px -22px rgba(47, 124, 255, 0.06),
    16px 24px 40px -26px rgba(255, 160, 90, 0.05);
}

.mei-planner-page .mei-active-exec-title {
  font-size: clamp(1.12rem, 1.9vw, 1.42rem);
  font-weight: 650;
  letter-spacing: -0.02em;
}

.mei-planner-page .mei-active-exec-meta-chip {
  font-size: 12px;
  padding: 6px 9px;
  opacity: 0.9;
}

.mei-planner-page .mei-active-exec-why {
  opacity: 0.9;
}

.mei-planner-page .mei-row-triple--planner > .mei-triple-card {
  min-height: 280px;
}

.mei-planner-page .mei-detected-tabs {
  gap: 6px;
}

.mei-planner-page .mei-detected-tab {
  font-size: 11px;
  font-weight: 600;
  padding: 5px 5px;
  border-color: rgba(255, 255, 255, 0.06);
}

.mei-decision-hero-card {
  position: relative;
  width: 100%;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.085);
  background:
    radial-gradient(100% 120% at 12% 0%, rgba(120, 92, 220, 0.1) 0%, rgba(12, 18, 32, 0) 52%),
    linear-gradient(165deg, rgba(13, 18, 30, 0.98) 0%, rgba(9, 13, 24, 0.99) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 14px 36px rgba(0, 0, 0, 0.28);
  overflow: hidden;
}

.mei-decision-hero-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  border: 1px solid transparent;
  background:
    linear-gradient(125deg, rgba(140, 100, 240, 0.22), rgba(90, 120, 220, 0.1), rgba(200, 150, 90, 0.14))
    border-box;
  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.mei-decision-hero-shell {
  display: grid;
  grid-template-columns: 5fr 2fr 3fr;
  column-gap: 0;
  row-gap: 0;
  align-items: center;
  padding: 14px 22px;
  min-height: 0;
}

.mei-decision-hero-main {
  min-width: 0;
  padding-right: clamp(14px, 2.2vw, 22px);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  box-sizing: border-box;
}

.mei-decision-hero-center {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  padding: 2px clamp(10px, 1.6vw, 16px);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  box-sizing: border-box;
}

.mei-decision-hero-side {
  min-width: 0;
  padding-left: clamp(14px, 2.2vw, 22px);
  box-sizing: border-box;
}

/* —— Decision Core (MITTE): Daily Focus Ring — dünn, präzise, leicht —— */
.mei-decision-core {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 204px;
  min-width: min(204px, 100%);
}

.mei-decision-core-visual {
  position: relative;
  width: min(198px, 100%);
  aspect-ratio: 1;
  margin: 0 auto;
}

.mei-decision-core-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.mei-decision-core-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  padding: 18% 10% 16%;
  box-sizing: border-box;
}

.mei-decision-core-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transform: translateY(-0.14em);
}

.mei-decision-core-mainline {
  display: block;
  text-align: center;
  font-size: clamp(14px, 2.35vw, 16px);
  font-weight: 620;
  letter-spacing: -0.018em;
  line-height: 1.22;
  color: rgba(248, 250, 255, 0.96);
  text-shadow: 0 1px 6px rgba(6, 10, 18, 0.55);
}

.mei-decision-core-seg {
  stroke: rgba(255, 255, 255, 0.09);
  stroke-width: 0.36;
  vector-effect: non-scaling-stroke;
}

.mei-decision-core-seg--neutral {
  fill: rgba(36, 42, 54, 0.82);
}

.mei-decision-core-seg--done {
  fill: url(#mei-decision-core-arc);
  stroke: rgba(255, 255, 255, 0.1);
  opacity: 0.88;
}

.mei-decision-core-seg--current {
  fill: rgba(175, 125, 88, 0.26);
  stroke: rgba(210, 175, 140, 0.32);
}

.mei-decision-core-horizon {
  pointer-events: none;
  opacity: 0.85;
}

.mei-decision-core-marker {
  fill: rgba(150, 195, 228, 0.95);
  stroke: rgba(255, 255, 255, 0.22);
  stroke-width: 0.35;
}

.mei-decision-core-week {
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
  justify-content: center;
  margin-top: 6px;
  font-size: 10px;
  font-weight: 620;
  letter-spacing: 0.05em;
  color: rgba(105, 120, 148, 0.52);
}

.mei-decision-core-dow {
  min-width: 1.1em;
  text-align: center;
}

.mei-decision-core-dow--today {
  color: rgba(240, 246, 255, 0.95);
}

.mei-decision-hero-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.mei-decision-hero-label-icon {
  color: rgba(255, 206, 118, 0.95);
  font-size: 13px;
}

.mei-decision-hero-label-text {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(182, 196, 222, 0.8);
}

.mei-decision-hero-title {
  margin: 0;
  font-size: clamp(1.32rem, 2vw, 1.78rem);
  font-weight: 620;
  line-height: 1.18;
  letter-spacing: -0.02em;
  color: rgba(248, 251, 255, 0.98);
}

.mei-decision-hero-title-accent {
  color: rgba(159, 126, 255, 0.98);
}

.mei-decision-hero-subline {
  margin: 14px 0 0;
  max-width: 62ch;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(175, 190, 216, 0.84);
}

.mei-decision-meta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 18px;
}

.mei-decision-meta-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.mei-decision-meta-icon {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  color: rgba(150, 168, 198, 0.72);
  display: flex;
  align-items: center;
  justify-content: center;
}

.mei-decision-meta-svg {
  display: block;
}

.mei-decision-meta-text {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.01em;
  color: rgba(158, 174, 204, 0.82);
}

.mei-decision-consequence {
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.055);
  background: rgba(5, 9, 18, 0.4);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
  padding: 18px 20px;
}

.mei-decision-consequence-eyebrow {
  margin: 0 0 10px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(148, 162, 190, 0.72);
}

.mei-decision-consequence-line {
  margin: 0;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.45;
}

.mei-decision-consequence-line + .mei-decision-consequence-line {
  margin-top: 10px;
}

.mei-decision-consequence-arrow {
  font-weight: 700;
  line-height: 1.25;
}

.mei-decision-consequence-line--positive {
  color: rgba(168, 206, 196, 0.88);
}

.mei-decision-consequence-line--negative {
  color: rgba(196, 184, 168, 0.82);
}

.mei-decision-consequence-item {
  margin-top: 14px;
}

.mei-decision-consequence-eyebrow + .mei-decision-consequence-item {
  margin-top: 0;
}

.mei-decision-consequence-kicker {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(138, 152, 178, 0.72);
  margin-bottom: 6px;
  line-height: 1.25;
}

.mei-decision-consequence-item .mei-decision-consequence-line {
  display: block;
  gap: 0;
}

.mei-planner-page .mei-decision-hero-label {
  margin-bottom: 8px;
}

.mei-planner-page .mei-decision-hero-subline {
  margin-top: 12px;
}

.mei-planner-page .mei-decision-meta {
  margin-top: 16px;
  gap: 9px;
}

.mei-planner-page .mei-decision-meta-text {
  font-size: 12px;
  font-weight: 520;
}

/* KPI strip: volle Zeile, innen 12 Spalten → 3+3+3+3 */
.mei-kpi-strip {
  width: 100%;
  min-width: 0;
}

.mei-kpi-strip--planner {
  --mei-kpi-inner-pad-y: 12px;
  --mei-kpi-inner-pad-x: 14px;
  --mei-kpi-signal-size: 48px;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  align-items: stretch;
}

.mei-kpi-strip--planner > .mei-kpi-card {
  grid-column: span 3;
  min-height: 100%;
}

.mei-kpi-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: rgba(255, 255, 255, 0.03);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
  transition: border-color 0.18s ease, background 0.18s ease;
}

.mei-kpi-card:hover {
  border-color: rgba(255, 255, 255, 0.09);
  background: rgba(255, 255, 255, 0.035);
}

.mei-kpi-card-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: var(--mei-kpi-inner-pad-y, 12px) var(--mei-kpi-inner-pad-x, 14px);
  box-sizing: border-box;
}

.mei-kpi-signal {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: var(--mei-kpi-signal-size, 48px);
}

.mei-kpi-signal-slot {
  width: var(--mei-kpi-signal-size, 48px);
  height: var(--mei-kpi-signal-size, 48px);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.mei-kpi-divider {
  flex-shrink: 0;
  height: 1px;
  margin: 8px 0;
  background: rgba(255, 255, 255, 0.09);
  border: none;
}

.mei-kpi-divider--under-title {
  margin: 6px 0 8px;
}

.mei-kpi-kern {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.mei-kpi-footer {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: auto;
  padding-top: 2px;
  min-height: 0;
}

.mei-kpi-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(244, 248, 255, 0.96);
  line-height: 1.28;
  margin: 0;
}

.mei-kpi-value {
  font-size: 14px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  color: rgba(240, 244, 252, 0.96);
  line-height: 1.32;
  margin: 0;
}

.mei-kpi-status {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.32;
  margin: 0;
}

.mei-kpi-status--green {
  color: rgba(86, 230, 168, 0.92);
}

.mei-kpi-status--warn {
  color: rgba(255, 186, 120, 0.92);
}

.mei-kpi-sub {
  font-size: 11px;
  line-height: 1.38;
  color: rgba(150, 164, 190, 0.78);
  margin: 0;
}

.mei-kpi-sub--extra {
  margin-top: 4px;
}

.mei-kpi-meta {
  font-size: 11px;
  line-height: 1.35;
  color: rgba(168, 182, 208, 0.88);
}

.mei-kpi-meta--soft {
  color: rgba(130, 144, 170, 0.72);
}

.mei-kpi-exec-detail {
  margin-top: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mei-kpi-exec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  font-size: 11px;
  line-height: 1.35;
  color: rgba(150, 164, 190, 0.85);
}

.mei-kpi-exec-row strong {
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  color: rgba(230, 238, 252, 0.92);
}

.mei-kpi-exec-foot {
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.35;
  color: rgba(130, 144, 168, 0.78);
}

/* Fortschritt: dünner Ring, gleiche Bounding Box wie .mei-kpi-icon (40px im 48px-Slot) */
.mei-kpi-ring {
  position: relative;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 50%;
  --mei-kpi-pct: 0;
  background: conic-gradient(
    rgba(72, 190, 175, 0.82) calc(var(--mei-kpi-pct, 0) * 1%),
    rgba(255, 255, 255, 0.08) 0
  );
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.mei-kpi-ring::after {
  content: '';
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: linear-gradient(165deg, rgba(16, 22, 38, 0.98), rgba(8, 12, 22, 0.99));
}

.mei-kpi-ring-label {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(248, 251, 255, 0.95);
}

/* Einheitliche Outline-Icons in der Signal-Box */
.mei-kpi-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: rgba(178, 192, 218, 0.88);
}

.mei-kpi-icon-svg {
  width: 28px;
  height: 28px;
  display: block;
}

.mei-kpi-icon--cal {
  flex-direction: column;
  gap: 1px;
  justify-content: center;
  color: rgba(178, 192, 218, 0.88);
}

.mei-kpi-icon-svg--cal {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

.mei-kpi-cal-num {
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(236, 240, 248, 0.95);
  line-height: 1;
}

.mei-main-grid {
  width: 100%;
  min-width: 0;
}

.mei-main-grid--planner {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  align-items: stretch;
}

.mei-main-grid--planner > .mei-main-grid-left,
.mei-main-grid--planner > .mei-main-grid-right {
  min-width: 0;
  min-height: 0;
}

.mei-main-grid--planner > .mei-main-grid-left > .mei-active-exec-card,
.mei-main-grid--planner > .mei-main-grid-right > .mei-detected-card {
  min-height: 100%;
  height: 100%;
  box-sizing: border-box;
}

.mei-main-grid--planner .mei-active-exec-card {
  padding: 20px;
}

.mei-main-grid--planner .mei-detected-card {
  padding: 20px;
}

.mei-main-grid-left,
.mei-main-grid-right {
  min-width: 0;
}

.mei-main-grid-placeholder {
  min-height: 100%;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.01);
}

/* Triple Control Layer: eine Zeile → 4+4+4 (nur Planner: .mei-row-triple--planner) */
.mei-row-triple {
  width: 100%;
  min-width: 0;
}

.mei-row-triple--planner {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  align-items: stretch;
}

.mei-row-triple--planner > .mei-triple-card {
  grid-column: span 4;
  min-height: 100%;
}

.mei-triple-card {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: rgba(255, 255, 255, 0.028);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 6px 22px rgba(0, 0, 0, 0.18);
  padding: 22px;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.mei-triple-card--steps::before {
  content: '';
  position: absolute;
  inset: auto 0 0 0;
  height: 42%;
  pointer-events: none;
  background: radial-gradient(80% 100% at 10% 100%, rgba(120, 94, 190, 0.1), transparent 62%);
  opacity: 0.45;
}

.mei-triple-card--loops::before {
  content: '';
  position: absolute;
  inset: auto 40% -20% -10%;
  height: 55%;
  pointer-events: none;
  background: radial-gradient(ellipse at center, rgba(120, 94, 190, 0.1), transparent 70%);
}

.mei-triple-card--tomorrow::before {
  content: '';
  position: absolute;
  inset: auto -10% -25% 45%;
  height: 55%;
  pointer-events: none;
  background: radial-gradient(ellipse at 80% 100%, rgba(120, 94, 190, 0.1), transparent 65%);
}

.mei-triple-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
}

.mei-triple-head-icon {
  width: 18px;
  height: 18px;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  color: rgba(170, 188, 220, 0.92);
}

.mei-triple-head-icon svg {
  width: 18px;
  height: 18px;
}

.mei-triple-head-icon--steps {
  color: rgba(170, 188, 220, 0.92);
}

.mei-triple-head-icon--loops {
  color: rgba(170, 188, 220, 0.92);
}

.mei-triple-head-icon--tomorrow {
  color: rgba(170, 188, 220, 0.92);
}

.mei-triple-head-text {
  flex: 1;
  min-width: 0;
}

.mei-triple-head > .mei-triple-link,
.mei-triple-head > .mei-triple-count {
  display: none;
}

.mei-triple-kicker {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(244, 248, 255, 0.96);
  line-height: 1.28;
}

.mei-triple-sub {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 500;
  color: rgba(150, 164, 190, 0.78);
}

.mei-triple-link {
  font-size: 12px;
  font-weight: 600;
  color: rgba(120, 175, 255, 0.92);
  white-space: nowrap;
  flex-shrink: 0;
  padding-top: 2px;
}

.mei-triple-count {
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 750;
  color: rgba(230, 218, 255, 0.96);
  background: rgba(120, 80, 200, 0.35);
  border: 1px solid rgba(160, 120, 255, 0.35);
}

.mei-triple-steps {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
}

.mei-triple-step {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 36px;
  gap: 8px 10px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-triple-step:first-of-type {
  border-top: none;
  padding-top: 2px;
}

.mei-triple-step-rail {
  position: relative;
  display: flex;
  justify-content: center;
}

.mei-triple-step-rail::after {
  content: '';
  position: absolute;
  top: 28px;
  bottom: -10px;
  left: 50%;
  width: 1px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.03));
}

.mei-triple-step:last-child .mei-triple-step-rail::after {
  display: none;
}

.mei-triple-step-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 750;
  color: rgba(235, 240, 252, 0.95);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(10, 16, 30, 0.65);
  z-index: 1;
}

.mei-triple-step-meta {
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.02em;
}

.mei-triple-step-meta.is-ok {
  color: rgba(86, 220, 170, 0.95);
}

.mei-triple-step-meta.is-warn {
  color: rgba(255, 190, 120, 0.92);
}

.mei-triple-step-meta.is-muted {
  color: rgba(140, 154, 180, 0.65);
}

.mei-triple-step-title {
  font-size: 13px;
  font-weight: 600;
  color: rgba(244, 248, 255, 0.95);
  line-height: 1.35;
  margin-top: 2px;
}

.mei-triple-step-badge {
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.02em;
  color: rgba(120, 220, 170, 0.95);
  background: rgba(40, 120, 90, 0.2);
  border: 1px solid rgba(72, 200, 150, 0.22);
}

.mei-triple-step-go {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(8, 12, 22, 0.75);
  color: rgba(190, 205, 235, 0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: default;
  padding: 0;
}

.mei-triple-loops {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

.mei-triple-status {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1 1 auto;
}

.mei-triple-foot {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.mei-triple-foot-text {
  font-size: 12px;
  line-height: 1.4;
  color: rgba(142, 158, 186, 0.82);
}

/* Planner: konsistente Empty States (Triple + Neu erkannt + KPI-Fuß) */
.mei-triple-empty,
.mei-detected-empty {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 4px 10px;
  min-height: 0;
}

.mei-triple-empty-ic,
.mei-detected-empty-ic {
  flex-shrink: 0;
  margin-top: 1px;
  opacity: 0.55;
  color: rgba(150, 164, 190, 0.85);
}

.mei-triple-empty-ic svg,
.mei-detected-empty-ic svg {
  display: block;
}

.mei-triple-empty-text,
.mei-detected-empty-text {
  flex: 1;
  min-width: 0;
}

.mei-triple-empty-text strong,
.mei-detected-empty-text strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  color: rgba(200, 212, 235, 0.92);
}

.mei-triple-empty-sub,
.mei-detected-empty-sub {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.4;
  color: rgba(142, 158, 186, 0.82);
}

.mei-planner-legacy-empty-inline {
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  font-size: 12px;
  line-height: 1.4;
  color: rgba(142, 158, 186, 0.82);
}

.mei-triple-loop {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px 12px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: rgba(6, 10, 20, 0.45);
}

.mei-triple-loop-ic {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
}

.mei-triple-loop-ic.is-block {
  color: rgba(255, 130, 130, 0.95);
  background: rgba(160, 40, 50, 0.18);
  border: 1px solid rgba(255, 120, 120, 0.25);
}

.mei-triple-loop-ic.is-wait {
  color: rgba(255, 210, 120, 0.95);
  background: rgba(180, 120, 30, 0.15);
  border: 1px solid rgba(255, 190, 100, 0.22);
}

.mei-triple-loop-title {
  font-size: 13px;
  font-weight: 600;
  color: rgba(244, 248, 255, 0.95);
  line-height: 1.3;
}

.mei-triple-pill {
  display: inline-block;
  margin-top: 4px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.mei-triple-pill--block {
  color: rgba(255, 160, 160, 0.95);
  background: rgba(140, 30, 45, 0.25);
  border: 1px solid rgba(255, 120, 120, 0.28);
}

.mei-triple-pill--wait {
  color: rgba(255, 200, 130, 0.95);
  background: rgba(160, 90, 20, 0.2);
  border: 1px solid rgba(255, 170, 80, 0.25);
}

.mei-triple-loop-age {
  font-size: 11px;
  font-weight: 650;
  color: rgba(255, 186, 120, 0.9);
  white-space: nowrap;
}

.mei-triple-tomorrow-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  flex: 1;
  align-items: stretch;
}

.mei-triple-tomorrow-cell {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(5, 9, 18, 0.5);
  padding: 10px 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 0;
}

.mei-triple-tomorrow-label {
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(140, 154, 180, 0.75);
}

.mei-triple-tomorrow-value {
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  color: rgba(236, 242, 252, 0.94);
}

.mei-triple-tomorrow-time,
.mei-triple-tomorrow-focus,
.mei-triple-tomorrow-tasks {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: rgba(92, 220, 170, 0.94);
}

.mei-triple-tomorrow-time-ic {
  display: flex;
  color: rgba(120, 200, 255, 0.85);
}

.mei-triple-tomorrow-time-ic.is-green {
  color: rgba(86, 220, 170, 0.9);
}

.mei-triple-tomorrow-ctx {
  margin-top: 4px;
  font-size: 11px;
  color: rgba(160, 175, 205, 0.75);
  line-height: 1.3;
}

.mei-triple-tomorrow-hint {
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 500;
  color: rgba(142, 158, 186, 0.82);
}

html.theme-light .mei-triple-card {
  background: rgba(255, 255, 255, 0.55);
  border-color: rgba(12, 24, 48, 0.1);
  box-shadow: 0 12px 32px rgba(20, 40, 80, 0.08);
}

html.theme-light .mei-triple-step-title,
html.theme-light .mei-triple-kicker {
  color: rgba(18, 26, 44, 0.94);
}

html.theme-light .mei-triple-sub {
  color: rgba(70, 82, 110, 0.85);
}

html.theme-light .mei-triple-empty-ic,
html.theme-light .mei-detected-empty-ic {
  color: rgba(80, 92, 118, 0.75);
}

html.theme-light .mei-triple-empty-text strong,
html.theme-light .mei-detected-empty-text strong {
  color: rgba(28, 36, 54, 0.92);
}

html.theme-light .mei-triple-empty-sub,
html.theme-light .mei-detected-empty-sub,
html.theme-light .mei-planner-legacy-empty-inline {
  color: rgba(70, 82, 110, 0.88);
}

html.theme-light .mei-triple-tomorrow-hint {
  color: rgba(70, 82, 110, 0.85);
}

html.theme-light .mei-planner-legacy-empty-inline {
  border-top-color: rgba(12, 24, 48, 0.08);
}

/* System Insight Layer: unterhalb Triple-Control */
.mei-insight-root {
  width: 100%;
  min-width: 0;
}

.mei-insight-root--planner {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: 0;
}

.mei-insight-root--planner > .mei-insight-card {
  grid-column: span 4;
}

.mei-insight-layer {
  width: 100%;
  min-width: 0;
}

.mei-insight-layer--planner {
  display: contents;
}

.mei-insight-card {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: rgba(255, 255, 255, 0.028);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 6px 22px rgba(0, 0, 0, 0.18);
  padding: 22px;
  overflow: hidden;
  height: 268px;
  min-height: 268px;
  max-height: 268px;
  display: flex;
  flex-direction: column;
}

.mei-insight-card--feedback::before {
  content: '';
  position: absolute;
  inset: auto -20% -35% 0;
  height: 55%;
  pointer-events: none;
  background: radial-gradient(ellipse at 0% 100%, rgba(120, 94, 190, 0.1), transparent 68%);
  opacity: 0.5;
}

.mei-insight-card--capacity::before {
  content: '';
  position: absolute;
  inset: auto -15% -30% 55%;
  height: 50%;
  pointer-events: none;
  background: radial-gradient(ellipse at 100% 100%, rgba(120, 94, 190, 0.1), transparent 65%);
}

.mei-insight-card--history::before {
  content: '';
  position: absolute;
  inset: -10% -10% auto auto;
  width: 55%;
  height: 45%;
  pointer-events: none;
  background: radial-gradient(ellipse at 100% 0%, rgba(120, 94, 190, 0.1), transparent 70%);
}

.mei-insight-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 40px;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
}

.mei-insight-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  line-height: 1.28;
  color: rgba(244, 248, 255, 0.96);
}

.mei-insight-title--feedback {
  text-transform: none;
  letter-spacing: 0.09em;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.28;
}

.mei-insight-title-block {
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(244, 248, 255, 0.96);
}

.mei-insight-title-by {
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
  color: rgba(150, 164, 190, 0.82);
}

.mei-insight-context {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: rgba(150, 164, 190, 0.78);
  flex-shrink: 0;
}

.mei-insight-rule {
  height: 1px;
  margin: 14px 0;
  background: rgba(255, 255, 255, 0.08);
  position: relative;
  z-index: 1;
}

.mei-insight-rule--soft {
  margin: 12px 0 10px;
  opacity: 1;
}

.mei-insight-body {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 0;
}

.mei-insight-status {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  padding: 6px 0;
}

.mei-insight-status-ic {
  flex-shrink: 0;
  margin-top: 1px;
  color: rgba(150, 164, 190, 0.82);
}

.mei-insight-status-text {
  min-width: 0;
}

.mei-insight-status-text strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  color: rgba(200, 212, 235, 0.92);
}

.mei-insight-status-sub {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.4;
  color: rgba(142, 158, 186, 0.82);
}

.mei-insight-feedback-body {
  display: none;
}

.mei-insight-brain {
  flex-shrink: 0;
  color: rgba(168, 110, 255, 0.95);
  filter: drop-shadow(0 0 14px rgba(140, 90, 255, 0.12));
}

.mei-insight-feedback-stack {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mei-insight-pill {
  border-radius: 12px;
  padding: 10px 12px 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.mei-insight-pill-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.mei-insight-pill--strength {
  background: rgba(40, 110, 75, 0.18);
  border-color: rgba(72, 200, 150, 0.22);
}

.mei-insight-pill--hint {
  background: rgba(120, 70, 25, 0.18);
  border-color: rgba(255, 170, 90, 0.22);
}

.mei-insight-pill-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  flex-shrink: 0;
}

.mei-insight-pill--strength .mei-insight-pill-label {
  color: rgba(110, 230, 175, 0.95);
}

.mei-insight-pill--hint .mei-insight-pill-label {
  color: rgba(255, 186, 120, 0.95);
}

.mei-insight-pill-ic {
  display: flex;
  color: inherit;
}

.mei-insight-pill-sep {
  width: 1px;
  align-self: stretch;
  min-height: 28px;
  background: rgba(255, 255, 255, 0.1);
  flex-shrink: 0;
}

.mei-insight-pill-text {
  flex: 1;
  min-width: 0;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 500;
  color: rgba(244, 248, 255, 0.94);
}

.mei-insight-cap-body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 120px) minmax(0, 1fr);
  gap: 10px 16px;
  align-items: center;
}

.mei-insight-cap-summary {
  grid-column: 1 / -1;
  font-size: 12px;
  line-height: 1.4;
  color: rgba(142, 158, 186, 0.82);
}

.mei-insight-cap-zeit {
  grid-column: 1 / -1;
  margin-bottom: 2px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mei-insight-cap-zeit-head {
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.01em;
  color: rgba(248, 251, 255, 0.94);
  margin-bottom: 6px;
}

.mei-insight-cap-zeit-body,
.mei-insight-cap-zeit-avail,
.mei-insight-cap-zeit-meta,
.mei-insight-cap-zeit-hint,
.mei-insight-cap-zeit-mode,
.mei-insight-cap-zeit-energy,
.mei-insight-cap-zeit-replan {
  margin: 0 0 6px 0;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(214, 206, 248, 0.92);
}

.mei-insight-cap-zeit-avail {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(180, 210, 255, 0.95);
}

.mei-insight-cap-zeit-meta {
  font-size: 11px;
  color: rgba(150, 164, 190, 0.82);
}

.mei-insight-cap-zeit-hint {
  font-size: 11px;
  color: rgba(168, 182, 208, 0.8);
}

.mei-insight-cap-zeit-mode,
.mei-insight-cap-zeit-energy,
.mei-insight-cap-zeit-replan {
  font-size: 11px;
  color: rgba(150, 164, 190, 0.78);
}

.mei-insight-empty {
  font-size: 12px;
  line-height: 1.45;
  font-weight: 500;
  color: rgba(150, 164, 190, 0.82);
  padding: 4px 0;
}

.mei-insight-empty--sub {
  padding-top: 0;
  margin-top: -2px;
  font-size: 12px;
  color: rgba(130, 148, 178, 0.78);
}

.mei-insight-tl-sub {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 500;
  color: rgba(130, 148, 178, 0.78);
}

.mei-insight-cap-ring-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.mei-insight-cap-ring {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  --mei-insight-cap-pct: 0;
  background: conic-gradient(
    rgba(52, 200, 170, 0.95) calc(var(--mei-insight-cap-pct, 0) * 1%),
    rgba(70, 130, 255, 0.75) calc(var(--mei-insight-cap-pct, 0) * 1%),
    rgba(255, 255, 255, 0.09) 0
  );
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.06),
    0 0 20px rgba(60, 160, 200, 0.1);
}

.mei-insight-cap-ring::after {
  content: '';
  position: absolute;
  inset: 10px;
  border-radius: 50%;
  background: linear-gradient(165deg, rgba(14, 20, 34, 0.98), rgba(8, 12, 22, 0.99));
}

.mei-insight-cap-ring-label {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 750;
  font-variant-numeric: tabular-nums;
  color: rgba(248, 251, 255, 0.96);
}

.mei-insight-cap-sub {
  font-size: 11px;
  color: rgba(150, 164, 190, 0.78);
  text-align: center;
}

.mei-insight-cap-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mei-insight-cap-row {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  gap: 10px 12px;
  align-items: center;
}

.mei-insight-cap-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.mei-insight-cap-dot.is-avail {
  background: rgba(72, 210, 150, 0.95);
  box-shadow: 0 0 10px rgba(72, 210, 150, 0.12);
}

.mei-insight-cap-dot.is-bound {
  background: rgba(150, 110, 255, 0.92);
  box-shadow: 0 0 10px rgba(150, 110, 255, 0.12);
}

.mei-insight-cap-dot.is-buffer {
  background: rgba(130, 170, 220, 0.75);
  box-shadow: 0 0 8px rgba(130, 170, 220, 0.1);
}

.mei-insight-cap-label {
  font-size: 12px;
  color: rgba(165, 180, 205, 0.82);
}

.mei-insight-cap-val {
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: rgba(244, 248, 255, 0.95);
}

.mei-insight-cta {
  position: relative;
  z-index: 1;
  margin-top: auto;
  font-size: 12px;
  font-weight: 600;
  color: rgba(160, 182, 220, 0.9);
  text-align: left;
}

.mei-insight-cta--center {
  text-align: left;
  margin-top: auto;
}

.mei-insight-timeline {
  position: relative;
  z-index: 1;
  padding-left: 4px;
  overflow: hidden;
}

.mei-insight-timeline::before {
  content: '';
  position: absolute;
  left: 11px;
  top: 6px;
  bottom: 10px;
  width: 2px;
  border-radius: 1px;
  background: linear-gradient(180deg, rgba(80, 140, 255, 0.45), rgba(80, 140, 255, 0.12));
}

.mei-insight-tl-row {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 10px;
  align-items: flex-start;
  padding: 4px 0 8px;
  position: relative;
}

.mei-insight-tl-dot {
  width: 10px;
  height: 10px;
  margin-top: 3px;
  margin-left: 5px;
  border-radius: 50%;
  background: rgba(80, 150, 255, 0.95);
  box-shadow: 0 0 10px rgba(80, 150, 255, 0.14);
  z-index: 1;
}

.mei-insight-tl-mid {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.mei-insight-tl-time {
  font-size: 11px;
  font-weight: 650;
  color: rgba(150, 164, 190, 0.78);
  font-variant-numeric: tabular-nums;
}

.mei-insight-tl-line {
  font-size: 13px;
  font-weight: 500;
  color: rgba(244, 248, 255, 0.94);
  line-height: 1.35;
}

html.theme-light .mei-insight-card {
  background: rgba(255, 255, 255, 0.55);
  border-color: rgba(12, 24, 48, 0.1);
  box-shadow: 0 10px 28px rgba(20, 40, 80, 0.08);
}

html.theme-light .mei-insight-title,
html.theme-light .mei-insight-title-block {
  color: rgba(18, 26, 44, 0.92);
}

html.theme-light .mei-insight-pill-text {
  color: rgba(22, 30, 48, 0.92);
}

html.theme-light .mei-insight-pill-sep {
  background: rgba(12, 24, 48, 0.12);
}

.mei-active-exec-card {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: linear-gradient(165deg, rgba(12, 18, 32, 0.99), rgba(8, 13, 24, 0.99));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 6px 22px rgba(0, 0, 0, 0.22);
  padding: 18px 20px 16px;
  overflow: hidden;
}

.mei-active-exec-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(120, 100, 200, 0.06);
}

.mei-active-exec-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 40px;
  margin-bottom: 12px;
}

.mei-active-exec-head-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mei-active-exec-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(148, 110, 255, 0.88);
}

.mei-active-exec-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  line-height: 1.28;
  color: rgba(244, 248, 255, 0.96);
}

.mei-active-exec-flow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(170, 188, 220, 0.92);
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px 4px 8px;
}

.mei-active-exec-flow.is-compact-hidden {
  visibility: visible;
  pointer-events: auto;
}

.mei-active-exec-crown {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  color: rgba(148, 110, 255, 0.94);
  font-size: 11px;
  line-height: 1;
}

.mei-active-exec-flow-icon {
  display: flex;
  color: rgba(140, 190, 255, 0.95);
}

.mei-active-exec-flow-text {
  letter-spacing: 0.02em;
}

.mei-active-exec-body {
  display: grid;
  grid-template-columns: minmax(84px, 92px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.mei-active-exec-date {
  position: relative;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: linear-gradient(175deg, rgba(30, 34, 76, 0.6), rgba(10, 15, 29, 0.62));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 12px 8px 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 8px 20px rgba(42, 30, 92, 0.24);
}

.mei-active-exec-date::before {
  content: '';
  position: absolute;
  top: 6px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 3px;
  border-radius: 999px;
  background: rgba(148, 110, 255, 0.35);
  pointer-events: none;
}

.mei-active-exec-date-num {
  margin-top: 4px;
  font-size: 66px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(248, 251, 255, 0.98);
  text-shadow: 0 0 18px rgba(165, 120, 255, 0.38);
}

.mei-active-exec-date-mon {
  font-size: 16px;
  font-weight: 650;
  letter-spacing: 0.01em;
  line-height: 1;
  color: rgba(216, 228, 247, 0.94);
}

.mei-active-exec-date-weekday {
  margin-top: 2px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(170, 186, 212, 0.82);
}

.mei-active-exec-main {
  min-width: 0;
}

.mei-active-exec-kicker {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  line-height: 1.28;
  color: rgba(150, 164, 190, 0.82);
  white-space: nowrap;
}

.mei-active-exec-title-row {
  margin-top: 6px;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex-wrap: nowrap;
}

.mei-active-exec-title {
  margin: 0;
  font-size: clamp(2rem, 2.55vw, 2.55rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  color: rgba(247, 250, 255, 0.98);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-active-exec-prio {
  border-radius: 999px;
  border: 1px solid rgba(124, 92, 220, 0.38);
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 620;
  color: rgba(228, 222, 252, 0.94);
  background: rgba(104, 72, 200, 0.18);
  white-space: nowrap;
}

.mei-active-exec-plan-btn {
  margin-left: auto;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 12px;
  color: rgba(214, 226, 245, 0.94);
}

.mei-active-exec-meta {
  margin-top: 8px;
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  overflow: hidden;
}

.mei-active-exec-meta-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(8, 14, 26, 0.72);
  backdrop-filter: blur(8px);
  padding: 6px 10px;
  font-size: 12px;
  color: rgba(208, 220, 241, 0.92);
}

.mei-active-exec-meta-ic {
  font-size: 12px;
  opacity: 0.88;
}

.mei-active-exec-ic {
  flex-shrink: 0;
  display: block;
  color: rgba(170, 188, 220, 0.9);
}

.mei-active-exec-meta-chip .mei-active-exec-ic {
  opacity: 0.92;
}

.mei-active-exec-ic--fill {
  color: inherit;
}

.mei-active-exec-rationale {
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.3;
  color: rgba(158, 174, 202, 0.82);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-active-exec-rationale-label {
  font-weight: 600;
  color: rgba(188, 200, 224, 0.78);
}

.mei-active-exec-actions {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(260px, 46%) minmax(170px, 1fr) minmax(170px, 1fr);
  gap: 8px;
  align-items: stretch;
}

.mei-active-exec-card--top .mei-active-exec-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.mei-active-exec-card--top .mei-active-exec-cta.primary-btn {
  width: min(320px, 48%);
  min-width: 220px;
}

.mei-active-exec-card--top .mei-active-exec-rationale {
  margin-top: 8px;
  max-width: 100%;
}

.mei-active-exec-action-menu {
  min-width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(208, 220, 241, 0.9);
  line-height: 1;
}

.mei-kpi-strip-card {
  height: 100%;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: linear-gradient(165deg, rgba(12, 18, 32, 0.99), rgba(8, 13, 24, 0.99));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 6px 22px rgba(0, 0, 0, 0.22);
  padding: 14px 14px 12px;
}

.mei-kpi-strip-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.mei-kpi-strip-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(244, 248, 255, 0.96);
}

.mei-kpi-strip-plus {
  color: rgba(148, 110, 255, 0.92);
  font-size: 11px;
}

.mei-kpi-strip-details {
  font-size: 12px;
  color: rgba(170, 188, 220, 0.92);
  text-decoration: none;
}

.mei-kpi-strip--planner-inline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.mei-kpi-inline-item {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(8, 14, 26, 0.65);
  padding: 8px 8px;
  text-align: center;
}

.mei-kpi-inline-label {
  font-size: 11px;
  font-weight: 600;
  color: rgba(194, 210, 235, 0.92);
  margin-bottom: 6px;
}

.mei-kpi-inline-ring {
  --mei-kpi-pct: 0;
  width: 70px;
  height: 70px;
  margin: 0 auto 6px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background:
    conic-gradient(var(--ring-color) calc(var(--mei-kpi-pct, 0) * 1%), rgba(255, 255, 255, 0.08) 0);
  position: relative;
}

.mei-kpi-inline-ring::after {
  content: '';
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  background: rgba(9, 14, 24, 0.96);
}

.mei-kpi-inline-ring-value {
  position: relative;
  z-index: 1;
  font-size: 32px;
  font-weight: 650;
  color: rgba(246, 250, 255, 0.97);
  letter-spacing: -0.02em;
}

.mei-kpi-inline-sub {
  font-size: 11px;
  color: rgba(170, 186, 212, 0.84);
}

.mei-kpi-inline-ring.is-blue { --ring-color: rgba(79, 163, 255, 0.95); }
.mei-kpi-inline-ring.is-green { --ring-color: rgba(72, 210, 160, 0.95); }
.mei-kpi-inline-ring.is-orange { --ring-color: rgba(255, 164, 82, 0.95); }
.mei-kpi-inline-ring.is-teal { --ring-color: rgba(86, 220, 196, 0.95); }

.mei-planner-hero-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 12px;
  margin-bottom: 14px;
  align-items: stretch;
}

.mei-planner-hero-card {
  min-height: 222px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(164deg, rgba(11, 17, 32, 0.98), rgba(7, 12, 24, 0.99));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 8px 22px rgba(0, 0, 0, 0.24);
}

.mei-planner-hero-card--decision {
  padding: 12px 14px 12px;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.mei-planner-hero-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mei-planner-hero-head-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.mei-planner-hero-crown {
  color: rgba(164, 120, 255, 0.94);
  font-size: 12px;
  line-height: 1;
}

.mei-planner-hero-head-text {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(233, 241, 255, 0.96);
}

.mei-planner-hero-flow-btn {
  height: 28px;
  border-radius: 10px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(205, 218, 242, 0.92);
  font-size: 12px;
  font-weight: 600;
}

.mei-planner-hero-body {
  margin-top: 12px;
  display: grid;
  grid-template-columns: 92px 1fr auto;
  gap: 12px;
  align-items: start;
}

.mei-planner-hero-date-box {
  width: 92px;
  min-height: 140px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  background: linear-gradient(180deg, rgba(31, 43, 89, 0.55), rgba(10, 16, 31, 0.95));
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 2px;
  padding: 10px 8px;
}

.mei-planner-hero-date-day {
  font-size: 62px;
  line-height: 0.95;
  letter-spacing: -0.03em;
  font-weight: 620;
  color: rgba(248, 252, 255, 0.98);
}

.mei-planner-hero-date-month {
  margin-top: 2px;
  font-size: 29px;
  line-height: 1;
  font-weight: 520;
  color: rgba(241, 247, 255, 0.94);
}

.mei-planner-hero-date-weekday {
  margin-top: 2px;
  font-size: 20px;
  font-weight: 450;
  color: rgba(197, 212, 236, 0.9);
}

.mei-planner-hero-main {
  min-width: 0;
  padding-top: 6px;
}

.mei-planner-hero-kicker {
  font-size: 25px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(203, 217, 241, 0.68);
}

.mei-planner-hero-headline-row {
  margin-top: 3px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mei-planner-hero-headline {
  margin: 0;
  font-size: 37px;
  font-weight: 680;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: rgba(250, 252, 255, 0.98);
}

.mei-planner-hero-priority-badge {
  align-self: center;
  height: 28px;
  border-radius: 14px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  font-size: 18px;
  font-weight: 620;
  color: rgba(233, 225, 255, 0.95);
  border: 1px solid rgba(156, 122, 255, 0.45);
  background: linear-gradient(120deg, rgba(66, 79, 167, 0.55), rgba(73, 34, 158, 0.64));
}

.mei-planner-hero-meta-chips {
  margin-top: 9px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.mei-planner-hero-chip {
  min-height: 31px;
  border-radius: 16px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  font-size: 17px;
  font-weight: 520;
  color: rgba(206, 219, 241, 0.94);
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(11, 17, 31, 0.8);
}

.mei-planner-hero-why {
  margin: 11px 0 0;
  font-size: 22px;
  line-height: 1.28;
  color: rgba(174, 193, 224, 0.88);
}

.mei-planner-hero-side {
  padding-top: 3px;
}

.mei-planner-hero-plan-btn {
  height: 36px;
  border-radius: 10px;
  padding: 0 14px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(218, 229, 247, 0.94);
  font-size: 17px;
  font-weight: 570;
}

.mei-planner-hero-actions {
  margin-top: 10px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}

.mei-planner-hero-start-btn {
  height: 56px;
  min-width: 190px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: linear-gradient(98deg, rgba(52, 114, 255, 0.97), rgba(112, 62, 224, 0.9));
  color: rgba(246, 250, 255, 0.99);
  font-size: 30px;
  font-weight: 650;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 8px 20px rgba(39, 29, 84, 0.34);
}

.mei-planner-hero-start-play {
  font-size: 16px;
  opacity: 0.96;
}

.mei-planner-hero-menu-btn {
  width: 52px;
  height: 56px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(213, 225, 243, 0.93);
  font-size: 24px;
  line-height: 1;
}

.mei-planner-hero-card--kpi {
  padding: 12px 12px 11px;
  display: grid;
  grid-template-rows: auto 1fr;
}

.mei-planner-hero-kpi-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.mei-planner-hero-kpi-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(241, 247, 255, 0.96);
}

.mei-planner-hero-kpi-plus {
  color: rgba(157, 118, 255, 0.94);
  font-size: 11px;
}

.mei-planner-hero-kpi-details {
  font-size: 12px;
  color: rgba(171, 189, 220, 0.92);
  text-decoration: none;
}

.mei-planner-hero-kpi-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

.mei-planner-hero-kpi-box {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(9, 14, 26, 0.68);
  padding: 7px 6px 8px;
  text-align: center;
}

.mei-planner-hero-kpi-label {
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 620;
  color: rgba(193, 209, 235, 0.92);
}

.mei-planner-hero-kpi-ring {
  --mei-planner-hero-pct: 0;
  width: 68px;
  height: 68px;
  margin: 0 auto 6px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  position: relative;
  background: conic-gradient(var(--mei-planner-hero-ring) calc(var(--mei-planner-hero-pct) * 1%), rgba(255, 255, 255, 0.08) 0);
}

.mei-planner-hero-kpi-ring::after {
  content: '';
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  background: rgba(9, 14, 24, 0.97);
}

.mei-planner-hero-kpi-value {
  position: relative;
  z-index: 1;
  font-size: 29px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: -0.02em;
  color: rgba(246, 250, 255, 0.97);
}

.mei-planner-hero-kpi-sub {
  font-size: 11px;
  color: rgba(170, 186, 212, 0.86);
}

.mei-planner-hero-kpi-ring.is-blue { --mei-planner-hero-ring: rgba(79, 163, 255, 0.95); }
.mei-planner-hero-kpi-ring.is-green { --mei-planner-hero-ring: rgba(72, 210, 160, 0.95); }
.mei-planner-hero-kpi-ring.is-orange { --mei-planner-hero-ring: rgba(255, 164, 82, 0.95); }
.mei-planner-hero-kpi-ring.is-teal { --mei-planner-hero-ring: rgba(86, 220, 196, 0.95); }

.mei-planner-page--empty .mei-planner-top-row {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 16px;
  align-items: stretch;
}

.mei-planner-page--empty .mei-planner-top-left,
.mei-planner-page--empty .mei-planner-top-right {
  min-width: 0;
}

.mei-empty-top-card {
  min-height: 236px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(164deg, rgba(11, 17, 32, 0.98), rgba(7, 12, 24, 0.99));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 8px 22px rgba(0, 0, 0, 0.24);
}

.mei-empty-top-card--decision {
  padding: 10px 14px 10px;
  display: grid;
  grid-template-rows: auto auto auto;
}

.mei-empty-top-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.mei-empty-top-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.mei-empty-top-title-icon {
  color: rgba(164, 120, 255, 0.94);
  font-size: 12px;
}

.mei-empty-top-title-text {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(233, 241, 255, 0.96);
}

.mei-empty-top-flow-btn {
  height: 30px;
  border-radius: 10px;
  padding: 0 13px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(205, 218, 242, 0.92);
  font-size: 12px;
  font-weight: 560;
}

.mei-empty-top-body {
  margin-top: 0;
  display: grid;
  grid-template-columns: 82px 1fr auto;
  gap: 11px;
  align-items: start;
}

.mei-empty-top-date {
  width: 82px;
  min-height: 118px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  background: linear-gradient(180deg, rgba(31, 43, 89, 0.55), rgba(10, 16, 31, 0.95));
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 0;
  padding: 8px 6px 9px;
}

.mei-empty-top-date-day {
  font-size: 56px;
  line-height: 0.9;
  letter-spacing: -0.03em;
  font-weight: 600;
  color: rgba(248, 252, 255, 0.98);
}

.mei-empty-top-date-month {
  margin-top: 1px;
  font-size: 18px;
  line-height: 1.05;
  font-weight: 500;
  color: rgba(241, 247, 255, 0.94);
}

.mei-empty-top-date-weekday {
  margin-top: 0;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 430;
  color: rgba(183, 201, 228, 0.86);
}

.mei-empty-top-main {
  min-width: 0;
  padding-top: 2px;
}

.mei-empty-top-kicker {
  font-size: 12px;
  font-weight: 620;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(203, 217, 241, 0.68);
}

.mei-empty-top-headline-row {
  margin-top: 2px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.mei-empty-top-headline {
  margin: 0;
  font-size: 35px;
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: rgba(250, 252, 255, 0.98);
}

.mei-empty-top-badge {
  height: 24px;
  border-radius: 12px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 560;
  color: rgba(233, 225, 255, 0.95);
  border: 1px solid rgba(156, 122, 255, 0.45);
  background: linear-gradient(120deg, rgba(66, 79, 167, 0.55), rgba(73, 34, 158, 0.64));
}

.mei-empty-top-chips {
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.mei-empty-top-chip {
  min-height: 25px;
  border-radius: 13px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 500;
  color: rgba(206, 219, 241, 0.94);
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(11, 17, 31, 0.8);
}

.mei-empty-top-why {
  margin: 7px 0 0;
  font-size: 12px;
  line-height: 1.35;
  color: rgba(174, 193, 224, 0.88);
}

.mei-empty-top-side {
  padding-top: 0;
  align-self: start;
}

.mei-empty-top-plan-btn {
  height: 30px;
  border-radius: 10px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(218, 229, 247, 0.94);
  font-size: 12px;
  font-weight: 540;
}

.mei-empty-top-actions {
  margin-top: 8px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 93px;
  gap: 6px;
}

.mei-empty-top-cta {
  height: 44px;
  min-width: 176px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: linear-gradient(98deg, rgba(52, 114, 255, 0.97), rgba(112, 62, 224, 0.9));
  color: rgba(246, 250, 255, 0.99);
  font-size: 14px;
  font-weight: 560;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  box-shadow: 0 8px 20px rgba(39, 29, 84, 0.34);
}

.mei-empty-top-cta-play {
  font-size: 12px;
  line-height: 1;
}

.mei-empty-top-cta-text {
  line-height: 1;
}

.mei-empty-top-menu {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(213, 225, 243, 0.93);
  font-size: 18px;
  line-height: 1;
}

.mei-empty-top-card--kpi {
  padding: 10px 10px 10px;
  display: grid;
  grid-template-rows: auto 1fr;
}

.mei-empty-kpi-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 7px;
}

.mei-empty-kpi-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mei-empty-kpi-plus {
  color: rgba(157, 118, 255, 0.94);
  font-size: 10px;
}

.mei-empty-kpi-title-text {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(241, 247, 255, 0.96);
}

.mei-empty-kpi-details {
  font-size: 12px;
  color: rgba(171, 189, 220, 0.92);
  text-decoration: none;
}

.mei-empty-kpi-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  align-items: stretch;
}

.mei-empty-kpi-item {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(9, 14, 26, 0.68);
  padding: 7px 5px 8px;
  text-align: center;
}

.mei-empty-kpi-label {
  margin-bottom: 5px;
  font-size: 11px;
  font-weight: 620;
  color: rgba(193, 209, 235, 0.92);
}

.mei-empty-kpi-ring {
  --mei-empty-kpi-pct: 0;
  width: 72px;
  height: 72px;
  margin: 0 auto 5px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  position: relative;
  background: conic-gradient(var(--mei-empty-kpi-ring) calc(var(--mei-empty-kpi-pct) * 1%), rgba(255, 255, 255, 0.08) 0);
}

.mei-empty-kpi-ring::after {
  content: '';
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  background: rgba(9, 14, 24, 0.97);
}

.mei-empty-kpi-value {
  position: relative;
  z-index: 1;
  font-size: 20px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: -0.02em;
  color: rgba(246, 250, 255, 0.97);
}

.mei-empty-kpi-sub {
  font-size: 11px;
  line-height: 1.25;
  color: rgba(170, 186, 212, 0.86);
}

.mei-empty-kpi-ring.is-blue { --mei-empty-kpi-ring: rgba(79, 163, 255, 0.95); }
.mei-empty-kpi-ring.is-green { --mei-empty-kpi-ring: rgba(72, 210, 160, 0.95); }
.mei-empty-kpi-ring.is-orange { --mei-empty-kpi-ring: rgba(255, 164, 82, 0.95); }
.mei-empty-kpi-ring.is-teal { --mei-empty-kpi-ring: rgba(86, 220, 196, 0.95); }

.mei-active-exec-cta.primary-btn {
  width: 100%;
  min-height: 48px;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 650;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(95deg, rgba(64, 118, 255, 0.96), rgba(118, 72, 220, 0.88));
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 8px 20px rgba(40, 30, 80, 0.35);
}

.mei-active-exec-cta-play {
  display: inline-flex;
  align-items: center;
  opacity: 0.95;
}

.mei-active-exec-btn {
  min-height: 48px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 500;
  padding-inline: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
}

.mei-active-exec-btn--delegate {
  border-color: rgba(255, 255, 255, 0.08);
  color: rgba(190, 204, 228, 0.85);
}

.mei-active-exec-btn--block {
  border-color: rgba(255, 255, 255, 0.08);
  color: rgba(190, 204, 228, 0.85);
}

.mei-active-exec-btn-ic {
  font-size: 14px;
  opacity: 0.85;
}

.mei-active-exec-why {
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(8, 13, 24, 0.55);
  backdrop-filter: blur(10px);
  padding: 12px 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.mei-active-exec-why-title {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.07em;
  color: rgba(232, 239, 252, 0.95);
}

.mei-active-exec-why-list {
  margin: 0;
  padding-left: 16px;
  display: grid;
  gap: 7px;
}

.mei-active-exec-why-list li {
  font-size: 14px;
  line-height: 1.35;
  color: rgba(188, 202, 226, 0.9);
}

.mei-detected-card {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  background: linear-gradient(165deg, rgba(12, 18, 32, 0.99), rgba(8, 13, 24, 0.99));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 6px 22px rgba(0, 0, 0, 0.18);
  padding: 22px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.mei-detected-stack {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  gap: 0;
}

.mei-detected-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 40px;
  margin-bottom: 12px;
}

.mei-detected-head-text {
  min-width: 0;
}

.mei-detected-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  line-height: 1.28;
  color: rgba(244, 248, 255, 0.96);
}

.mei-detected-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: rgba(150, 164, 190, 0.82);
  letter-spacing: 0.02em;
}

.mei-detected-total {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: rgba(228, 238, 255, 0.96);
  border: 1px solid rgba(142, 110, 220, 0.35);
  background: rgba(104, 86, 200, 0.2);
}

.mei-detected-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.mei-detected-tab {
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
  padding: 6px 6px;
  font-size: 12px;
  font-weight: 600;
}

.mei-detected-tab.is-critical {
  color: rgba(230, 170, 170, 0.9);
  background: rgba(80, 40, 48, 0.22);
}

.mei-detected-tab.is-important {
  color: rgba(220, 190, 140, 0.9);
  background: rgba(90, 70, 36, 0.2);
}

.mei-detected-tab.is-info {
  color: rgba(170, 196, 235, 0.9);
  background: rgba(40, 58, 88, 0.22);
}

.mei-detected-list {
  flex: 1 1 auto;
  display: grid;
  gap: 8px;
  align-content: start;
  min-height: 0;
}

.mei-detected-row {
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(10px);
  padding: 10px 10px 10px 12px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border-left-width: 3px;
  border-left-style: solid;
}

.mei-detected-row--critical {
  border-left-color: rgba(220, 100, 100, 0.55);
}

.mei-detected-row--important {
  border-left-color: rgba(230, 170, 80, 0.5);
}

.mei-detected-row--info {
  border-left-color: rgba(90, 150, 240, 0.5);
}

.mei-detected-icon {
  width: 28px;
  height: 28px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
}

.mei-detected-icon--mail {
  color: rgba(200, 210, 240, 0.95);
  background: rgba(60, 90, 150, 0.4);
}

.mei-detected-row--critical .mei-detected-icon--mail {
  color: rgba(255, 200, 200, 0.95);
  background: rgba(120, 50, 60, 0.45);
}

.mei-detected-icon--wa {
  color: rgba(170, 245, 210, 0.95);
  background: rgba(30, 110, 80, 0.42);
}

.mei-detected-icon--task {
  color: rgba(200, 210, 255, 0.92);
  background: rgba(70, 60, 140, 0.4);
}

.mei-detected-row-title {
  font-size: 14px;
  font-weight: 600;
  color: rgba(236, 244, 255, 0.96);
  line-height: 1.25;
}

.mei-detected-row-sub {
  margin-top: 2px;
  font-size: 12px;
  color: rgba(174, 190, 216, 0.86);
}

.mei-detected-side {
  display: grid;
  justify-items: end;
  gap: 5px;
}

.mei-detected-time {
  font-size: 11px;
  color: rgba(170, 185, 210, 0.82);
  font-variant-numeric: tabular-nums;
}

.mei-detected-action {
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  min-height: 28px;
  font-weight: 600;
}

.mei-detected-action--reply {
  border-color: rgba(90, 150, 240, 0.45);
  color: rgba(170, 200, 255, 0.95);
}

.mei-detected-action--clarify {
  border-color: rgba(52, 200, 140, 0.45);
  color: rgba(170, 235, 205, 0.95);
}

.mei-detected-action--delegate {
  border-color: rgba(90, 150, 240, 0.4);
  color: rgba(180, 205, 245, 0.95);
}

.mei-detected-foot {
  flex-shrink: 0;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.mei-detected-show-all {
  border: none;
  background: transparent;
  color: rgba(194, 211, 240, 0.94);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
}

.mei-detected-filtered {
  font-size: 11px;
  color: rgba(142, 160, 188, 0.78);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.mei-detected-filter-star {
  color: rgba(230, 190, 90, 0.85);
  font-size: 11px;
}

@media (max-width: 980px) {
  .mei-main-grid--planner {
    grid-template-columns: 1fr;
  }

  .mei-main-grid--planner > .mei-main-grid-left,
  .mei-main-grid--planner > .mei-main-grid-right {
    grid-column: 1 / -1;
  }

  .mei-main-grid-placeholder {
    min-height: 120px;
  }

  .mei-row-triple--planner {
    grid-template-columns: 1fr;
  }

  .mei-row-triple--planner > .mei-triple-card {
    grid-column: 1 / -1;
  }

  .mei-insight-root--planner {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }

  .mei-insight-root--planner > .mei-insight-card {
    grid-column: 1 / -1;
  }

  .mei-insight-cap-body {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .mei-insight-cap-list {
    width: 100%;
    max-width: 320px;
  }

  .mei-triple-tomorrow-grid {
    grid-template-columns: 1fr;
  }

  .mei-kpi-strip--planner {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .mei-kpi-strip--planner > .mei-kpi-card {
    grid-column: span 3;
  }

  .mei-decision-hero-shell,
  .mei-planner-page .mei-decision-hero-shell {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 0;
    align-items: stretch;
  }

  .mei-decision-hero-main,
  .mei-planner-page .mei-decision-hero-main {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-right: 0;
    padding-bottom: 14px;
    margin-bottom: 14px;
  }

  .mei-decision-hero-center,
  .mei-planner-page .mei-decision-hero-center {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 0 0 14px;
    margin-bottom: 14px;
  }

  .mei-decision-hero-side,
  .mei-planner-page .mei-decision-hero-side {
    padding-left: 0;
  }

  .mei-active-exec-body {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .mei-kpi-strip--planner {
    grid-template-columns: 1fr;
  }

  .mei-kpi-strip--planner > .mei-kpi-card {
    grid-column: 1 / -1;
  }

  .mei-decision-hero-shell,
  .mei-planner-page .mei-decision-hero-shell {
    padding: 12px 16px;
  }

  .mei-decision-hero-title {
    font-size: clamp(1.22rem, 5.2vw, 1.62rem);
  }

  .mei-decision-meta-text {
    font-size: 12px;
  }
}

.mei-planner-topbar {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px 16px;
  margin-bottom: 4px;
}

.mei-planner-product {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.mei-planner-mode {
  font-size: 13px;
  color: rgba(200, 210, 235, 0.85);
}

.mei-planner-page--today .mei-planner-col-main {
  gap: 20px;
}

.mei-planner-page--week .mei-exec-stage {
  border-color: rgba(96, 165, 255, 0.2);
  box-shadow: 0 0 0 1px rgba(47, 124, 255, 0.04), 0 10px 28px rgba(0, 0, 0, 0.3);
}

/* Rechte Planner-Spalte bleibt in der V3-Ansicht sichtbar (Woche + Heute). */

.mei-status-strip {
  margin: 0;
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.012);
}

.mei-status-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
}

.mei-status-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(150, 166, 196, 0.9);
}

.mei-status-pressure {
  font-size: 11px;
  font-weight: 600;
  color: rgba(194, 208, 234, 0.92);
}

.mei-status-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 6px;
  font-size: 11px;
  color: rgba(165, 182, 212, 0.88);
}

.mei-status-progress {
  margin-top: 8px;
  height: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.mei-status-progress-fill {
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, rgba(86, 160, 255, 0.95), rgba(126, 186, 255, 0.95));
}

.mei-status-foot {
  margin-top: 6px;
  font-size: 10px;
  color: rgba(130, 146, 176, 0.84);
}

.mei-exec-core {
  margin: 0;
  border: 1px solid rgba(96, 165, 255, 0.18);
  box-shadow: none;
}

.mei-exec-stage {
  position: relative;
  background: linear-gradient(
    165deg,
    rgba(22, 36, 58, 0.92) 0%,
    rgba(12, 20, 38, 0.98) 55%,
    rgba(10, 16, 32, 1) 100%
  );
  border-color: rgba(96, 165, 255, 0.28);
  box-shadow: 0 0 0 1px rgba(47, 124, 255, 0.06), 0 18px 48px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(96, 165, 255, 0.28);
  border-radius: var(--radius-lg, 18px);
  overflow: hidden;
}

.mei-exec-stage-inner {
  padding: 24px 26px 20px;
}

.mei-exec-kicker {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(140, 155, 185, 0.9);
  margin-bottom: 10px;
}

.mei-exec-leitung-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(175, 190, 220, 0.95);
  margin-bottom: 12px;
}

.mei-exec-title {
  margin: 0 0 18px;
  font-size: clamp(1.45rem, 2.8vw, 1.85rem);
  font-weight: 600;
  line-height: 1.28;
  letter-spacing: -0.02em;
  color: rgba(248, 250, 255, 0.99);
}

.mei-exec-hero-step {
  margin: 0 0 14px;
  font-size: clamp(1.35rem, 2.6vw, 1.75rem);
  font-weight: 600;
  line-height: 1.32;
  letter-spacing: -0.02em;
  color: rgba(252, 252, 255, 0.99);
  max-width: 52ch;
}

.mei-exec-context-title {
  margin: 0 0 16px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  color: rgba(155, 170, 200, 0.88);
  max-width: 48ch;
}

.mei-exec-field {
  margin: 0 0 12px;
  max-width: 48ch;
}

.mei-exec-field--why {
  margin-bottom: 8px;
}

.mei-exec-field--next {
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-exec-field-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(130, 145, 175, 0.88);
  margin-bottom: 4px;
}

.mei-exec-field-value {
  font-size: 14px;
  line-height: 1.45;
  color: rgba(210, 220, 242, 0.95);
}

.mei-exec-field--next .mei-exec-field-value {
  font-weight: 500;
  color: rgba(232, 240, 255, 0.98);
}

.mei-exec-micro {
  margin: 14px 0 0;
  font-size: 10px;
  line-height: 1.35;
  color: rgba(105, 120, 150, 0.9);
  max-width: 52ch;
  letter-spacing: 0.02em;
}

.mei-exec-empty {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 500;
  color: rgba(210, 220, 240, 0.9);
  max-width: 42ch;
}

.mei-exec-empty-hint {
  margin: 0 0 16px;
  font-size: 13px;
  color: var(--muted);
  max-width: 48ch;
}

.mei-exec-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
  align-items: center;
}

.mei-exec-actions .primary-btn {
  flex: 1 1 280px;
  min-height: 46px;
  font-weight: 600;
}

.mei-exec-btn-secondary {
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: transparent;
}

.mei-exec-structure {
  margin: 0;
  margin-top: 38px;
}

.mei-planner-layout--v3 .mei-exec-structure {
  margin-top: 0;
}

.mei-exec-structure--muted {
  opacity: 0.88;
  border-color: rgba(255, 255, 255, 0.06);
  background: rgba(255, 255, 255, 0.015);
}

.mei-exec-structure-inner {
  padding-top: 12px;
  padding-bottom: 12px;
}

.mei-exec-structure-head {
  margin-bottom: 8px;
}

.mei-exec-structure-title {
  margin: 0 0 6px;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(108, 122, 152, 0.66);
}

.mei-exec-structure-note {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
  color: rgba(130, 145, 175, 0.78);
  max-width: 56ch;
}

.mei-exec-blocks {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mei-exec-block {
  padding: 6px 8px;
  border-radius: var(--radius-sm, 10px);
  background: rgba(255, 255, 255, 0.018);
  border: 1px solid rgba(255, 255, 255, 0.04);
  opacity: 0.78;
}

.mei-exec-block--current {
  opacity: 1;
  border-color: rgba(96, 165, 255, 0.22);
  background: rgba(47, 124, 255, 0.05);
}

.mei-exec-block--next {
  opacity: 0.88;
  border-color: rgba(255, 255, 255, 0.06);
}

.mei-exec-block-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin-bottom: 4px;
}

.mei-exec-block-seq {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(130, 148, 180, 0.88);
}

.mei-exec-block-mode-tag {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(110, 128, 160, 0.78);
}

.mei-exec-block-time {
  margin-top: 6px;
  font-size: 10px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
  color: rgba(105, 120, 150, 0.82);
}

.mei-exec-block-task {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.38;
  color: rgba(174, 188, 218, 0.9);
}

.mei-exec-block-reason {
  margin-top: 3px;
  font-size: 10px;
  line-height: 1.35;
  color: rgba(115, 130, 158, 0.8);
}

.mei-planner-context {
  margin: 0;
}

.mei-planner-context--subdued {
  opacity: 0.82;
  border-color: rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.012);
}

.mei-planner-context--subdued .card-inner {
  padding: 12px 14px 14px;
}

.mei-planner-context--subdued .mei-planner-context-body {
  font-size: 11px;
  line-height: 1.4;
  color: rgba(145, 158, 188, 0.85);
  margin-bottom: 6px;
}

.mei-planner-context--subdued .mei-planner-context-meta {
  font-size: 9px;
  color: rgba(95, 110, 140, 0.82);
}

.mei-planner-context-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(130, 145, 175, 0.85);
  margin-bottom: 8px;
}

.mei-planner-context-body {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(175, 188, 215, 0.92);
}

.mei-planner-context-meta {
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  color: rgba(110, 125, 155, 0.85);
  font-variant-numeric: tabular-nums;
}

.mei-exec-pool {
  margin: 0;
  opacity: 0.92;
}

.mei-exec-pool--subdued {
  opacity: 0.78;
  border-color: rgba(255, 255, 255, 0.05);
}

.mei-exec-pool--subdued .card-inner {
  padding-top: 8px;
  padding-bottom: 8px;
}

.mei-exec-pool-title {
  margin: 0 0 8px;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(95, 110, 140, 0.72);
}

.mei-exec-pool--subdued .mei-exec-pool-list .mei-planner-task--pool {
  padding: 8px 0;
}

.mei-exec-pool-list .mei-planner-task--pool {
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-exec-pool-list .mei-planner-task--pool:last-child {
  border-bottom: none;
}

.mei-exec-pool-list .task-main strong {
  font-size: 12px;
  font-weight: 500;
  color: rgba(185, 198, 220, 0.88);
}

.mei-exec-pool-list .task-main span {
  font-size: 10px;
  color: rgba(105, 120, 150, 0.82);
}

.mei-planner-form--footer {
  margin: 0;
  border-style: dashed;
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.015);
}

.mei-planner-form-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(120, 135, 160, 0.75);
  margin-bottom: 8px;
}

.mei-planner-capture-hint {
  margin: -2px 0 10px;
  font-size: 11px;
  color: rgba(115, 132, 162, 0.82);
}

.mei-planner-form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.mei-planner-input--capture {
  flex: 1 1 340px;
  background: rgba(255, 255, 255, 0.03);
}

.mei-planner-input--time {
  flex: 0 0 140px;
  min-width: 120px;
  padding: 10px 12px;
  font-size: 13px;
}

.mei-planner-select {
  border: 1px solid var(--line);
  border-radius: var(--radius-md, 14px);
  background: rgba(255, 255, 255, 0.03);
  color: var(--text);
  font-family: inherit;
  font-size: 13px;
  padding: 10px 12px;
  min-height: 40px;
}

.mei-planner-select--type {
  flex: 0 1 170px;
}

.mei-planner-select--prio {
  flex: 0 1 190px;
}

.mei-planner-add-btn {
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.mei-exec-pool-empty {
  font-size: 11px;
  color: rgba(120, 135, 160, 0.75);
}

/* Abmelden (Zugangskette: data-mei-sign-out, Handler in auth.js nach app.js-Load) */
.user-signout {
  margin-top: 10px;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 11px;
  color: var(--muted);
  cursor: pointer;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.user-signout:hover {
  color: var(--text);
}

/* MEAI Planner — Layout V3 (Planner-3-Referenz) */
.mei-planner-layout--v3 {
  grid-template-columns: minmax(0, 1fr) 340px;
  column-gap: 20px;
  row-gap: 24px;
  align-items: start;
  width: 100%;
}

.mei-planner-col-aside--rail {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 340px;
  min-width: 340px;
}

.mei-planner-rail-card {
  margin: 0;
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.012);
}

.mei-planner-rail-card .card-inner {
  padding: 12px 14px 14px;
}

.mei-planner-rail-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(130, 145, 175, 0.88);
  margin-bottom: 4px;
}

.mei-planner-rail-status-line {
  font-size: 11px;
  line-height: 1.45;
  color: rgba(175, 190, 218, 0.88);
  margin-bottom: 6px;
}

.mei-planner-rail-foot {
  margin-top: 8px;
  font-size: 10px;
  color: rgba(130, 146, 176, 0.84);
}

.mei-planner-rail-ring-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 4px 0 2px;
}

.mei-planner-rail-ring {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  border-radius: 50%;
  --mei-ring-pct: 0;
  background: conic-gradient(
    rgba(86, 160, 255, 0.92) calc(var(--mei-ring-pct, 0) * 1%),
    rgba(255, 255, 255, 0.1) 0
  );
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.mei-planner-rail-ring::after {
  content: '';
  position: absolute;
  inset: 7px;
  border-radius: 50%;
  background: linear-gradient(165deg, rgba(18, 26, 44, 0.98), rgba(10, 14, 26, 0.99));
}

.mei-planner-rail-ring-label {
  font-size: 13px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(210, 220, 242, 0.95);
}

.mei-planner-rail-body {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(145, 158, 188, 0.88);
}

.mei-planner-rail-meta {
  margin: 0 0 6px;
  font-size: 9px;
  line-height: 1.35;
  color: rgba(105, 120, 150, 0.78);
}

.mei-planner-rail-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  color: rgba(130, 145, 175, 0.78);
}

.mei-planner-rail-zeit-head {
  font-size: 12px;
  font-weight: 600;
  color: rgba(220, 230, 250, 0.92);
  margin-bottom: 4px;
}

.mei-planner-rail-loop {
  font-size: 12px;
  font-weight: 600;
  color: rgba(220, 230, 250, 0.92);
  margin-bottom: 4px;
}

.mei-planner-rail-loop-detail {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
  color: rgba(155, 170, 200, 0.88);
}

.mei-planner-rail-week-line {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.4;
  color: rgba(175, 190, 218, 0.88);
}

.mei-planner-rail-bars {
  display: flex;
  height: 7px;
  border-radius: 4px;
  overflow: hidden;
  gap: 2px;
  margin: 4px 0 8px;
  background: rgba(255, 255, 255, 0.05);
}

.mei-planner-rail-bar-seg {
  min-width: 2px;
  min-height: 7px;
  border-radius: 2px;
}

.mei-planner-rail-bar-seg--done {
  background: rgba(59, 130, 246, 0.85);
}

.mei-planner-rail-bar-seg--open {
  background: rgba(251, 191, 36, 0.55);
}

.mei-planner-rail-bar-seg--plan {
  background: rgba(148, 163, 184, 0.45);
}

.mei-planner-rail-bar-seg--neutral {
  flex: 1;
  background: rgba(255, 255, 255, 0.08);
}

.mei-planner-rail-legend {
  font-size: 9px;
  color: rgba(120, 135, 165, 0.75);
}

.mei-planner-rail-legend .l-done {
  color: rgba(130, 180, 255, 0.9);
}

.mei-planner-rail-legend .l-open {
  color: rgba(251, 191, 36, 0.85);
}

.mei-planner-rail-legend .l-plan {
  color: rgba(180, 190, 210, 0.85);
}

.mei-planner-rail-legend .l-done,
.mei-planner-rail-legend .l-open,
.mei-planner-rail-legend .l-plan {
  margin-right: 10px;
}

.mei-capacity-reality-card {
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.052);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.01);
  padding: 10px 12px 11px;
}

.mei-capacity-reality-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.mei-capacity-reality-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.76);
}

.mei-capacity-reality-mode {
  font-size: 10px;
  font-weight: 550;
  color: rgba(152, 168, 194, 0.8);
}

.mei-capacity-reality-rows {
  display: grid;
  gap: 5px;
}

.mei-capacity-reality-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  color: rgba(124, 140, 168, 0.8);
}

.mei-capacity-reality-row strong {
  font-weight: 550;
  font-variant-numeric: tabular-nums;
  color: rgba(178, 192, 216, 0.84);
}

.mei-capacity-reality-row--micro {
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-capacity-reality-note {
  margin-top: 6px;
  font-size: 10px;
  color: rgba(132, 148, 176, 0.76);
}

.mei-capacity-reality-foot {
  margin-top: 6px;
  font-size: 10px;
  color: rgba(126, 142, 170, 0.76);
}

.mei-system-health-card {
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.009);
  padding: 9px 11px 10px;
}

.mei-system-health-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
}

.mei-system-health-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.74);
}

.mei-system-health-level {
  font-size: 10px;
  font-weight: 550;
  color: rgba(150, 166, 192, 0.78);
}

.mei-system-health-score {
  font-size: 15px;
  font-weight: 600;
  color: rgba(180, 194, 218, 0.84);
  font-variant-numeric: tabular-nums;
  margin-bottom: 6px;
}

.mei-system-health-signals {
  display: grid;
  gap: 4px;
}

.mei-system-health-signal {
  font-size: 10px;
  color: rgba(126, 142, 170, 0.78);
  line-height: 1.35;
}

.mei-system-health-foot {
  margin-top: 7px;
  padding-top: 4px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  font-size: 10px;
  color: rgba(126, 142, 170, 0.76);
}

.mei-execution-kpi-card {
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.048);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.008);
  padding: 9px 11px 10px;
}

.mei-execution-kpi-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 7px;
}

.mei-execution-kpi-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.74);
}

.mei-execution-kpi-window {
  font-size: 10px;
  color: rgba(140, 156, 184, 0.74);
}

.mei-execution-kpi-rows {
  display: grid;
  gap: 5px;
}

.mei-execution-kpi-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 10px;
  color: rgba(124, 140, 168, 0.78);
}

.mei-execution-kpi-row strong {
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: rgba(178, 192, 216, 0.84);
}

.mei-execution-kpi-row--micro {
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-execution-kpi-foot {
  margin-top: 7px;
  padding-top: 4px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  font-size: 10px;
  color: rgba(126, 142, 170, 0.76);
}

.mei-planner-bottom-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
  margin-top: 4px;
}

@media (max-width: 1100px) {
  .mei-planner-bottom-grid {
    grid-template-columns: 1fr;
  }
}

.mei-planner-bottom-col {
  min-width: 0;
}

.mei-danach-strip {
  margin: 0 0 18px;
  padding: 2px 0 0;
}

.mei-danach-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(120, 135, 165, 0.78);
  margin-bottom: 8px;
}

.mei-danach-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  font-size: 12px;
  line-height: 1.4;
  color: rgba(185, 198, 220, 0.88);
}

.mei-danach-arrow {
  color: rgba(110, 128, 160, 0.65);
  font-weight: 500;
}

.mei-danach-chip {
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.06);
  max-width: 100%;
}

.mei-danach-muted {
  font-size: 12px;
  color: rgba(130, 145, 175, 0.88);
}

.mei-exec-next-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(162, 176, 206, 0.78);
  margin-bottom: 14px;
}

.mei-exec-hero-task {
  margin: 0 0 20px;
  font-size: clamp(1.9rem, 3.05vw, 2.65rem);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.035em;
  color: rgba(252, 252, 255, 0.99);
  max-width: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.mei-exec-hero-sub {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(165, 182, 210, 0.9);
  max-width: 52ch;
}

.mei-exec-stage {
  background: linear-gradient(180deg, rgba(12, 18, 31, 0.94) 0%, rgba(10, 15, 27, 0.98) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.24);
  border-radius: 20px;
}

.mei-exec-cta.primary-btn {
  background: linear-gradient(135deg, rgba(50, 120, 240, 0.96), rgba(116, 88, 235, 0.9));
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 22px rgba(38, 74, 160, 0.18);
  min-height: 60px;
  border-radius: 16px;
  font-size: 17px;
  font-weight: 650;
  letter-spacing: -0.01em;
}

.mei-exec-stage::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, rgba(96, 165, 255, 0), rgba(96, 165, 255, 0.34), rgba(96, 165, 255, 0));
  pointer-events: none;
}

.mei-exec-stage-inner {
  padding: 36px 38px 34px;
}

.mei-exec-kicker {
  margin-bottom: 8px;
  color: rgba(136, 150, 180, 0.76);
}

.mei-exec-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(220px, 3fr);
  gap: 24px 30px;
  align-items: start;
}

.mei-exec-hero-main {
  min-width: 0;
}

.mei-exec-support {
  min-width: 0;
  padding-left: 26px;
  border-left: 1px solid rgba(255, 255, 255, 0.06);
}

.mei-exec-actions {
  margin: 0 0 22px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

.mei-exec-actions-primary,
.mei-exec-actions-secondary {
  display: flex;
  gap: 8px;
  min-width: 0;
}

.mei-exec-actions-primary .primary-btn {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}

.mei-exec-actions-secondary {
  opacity: 0.78;
}

.mei-exec-btn-secondary {
  flex: 0 1 auto;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 12px;
  color: rgba(174, 188, 214, 0.8);
  border-color: rgba(255, 255, 255, 0.09);
  background: rgba(255, 255, 255, 0.015);
}

.mei-exec-field {
  margin: 0;
  max-width: 66ch;
}

.mei-exec-field--why {
  margin-bottom: 0;
}

.mei-exec-field-label {
  margin-bottom: 6px;
  color: rgba(118, 132, 160, 0.72);
}

.mei-exec-field-value {
  font-size: 14px;
  line-height: 1.45;
  color: rgba(188, 200, 224, 0.82);
}

.mei-exec-support-panel {
  margin: 0;
}

.mei-exec-support-list {
  display: grid;
  gap: 12px;
}

.mei-exec-support-row {
  display: grid;
  gap: 4px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.mei-exec-support-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.mei-exec-support-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(123, 137, 165, 0.7);
}

.mei-exec-support-value {
  font-size: 12px;
  line-height: 1.42;
  color: rgba(190, 201, 223, 0.9);
}

.mei-exec-support-row--critical .mei-exec-support-label {
  color: rgba(247, 180, 85, 0.86);
}

.mei-exec-support-row--critical .mei-exec-support-value {
  color: rgba(235, 208, 156, 0.92);
}

.mei-replan-card {
  margin: 0;
  border-color: rgba(247, 180, 85, 0.24);
  background: rgba(247, 180, 85, 0.06);
}

.mei-replan-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(247, 190, 110, 0.9);
  margin-bottom: 8px;
}

.mei-replan-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(236, 222, 190, 0.92);
}

/* Backlog / Capture: außerhalb der Execution Stage, sekundär zum Fokus */
.mei-planner-secondary-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin: 0;
  padding: 14px 0 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.045);
}

.mei-planner-secondary-tools-btn {
  flex: 0 1 auto;
  min-height: 36px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 500;
  border-radius: 10px;
  color: rgba(148, 162, 192, 0.85);
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.02);
}

.mei-planner-secondary-tools-btn:hover:not(:disabled) {
  color: rgba(188, 200, 224, 0.92);
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.035);
}

.mei-exec-integrity-card {
  width: min(94%, 980px);
  margin-top: -4px;
  padding: 10px 12px 11px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.055);
  border-top-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.012);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

.mei-exec-integrity-card--compact {
  opacity: 0.72;
}

.mei-exec-integrity-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.mei-exec-integrity-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(128, 144, 172, 0.8);
}

.mei-exec-integrity-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: rgba(170, 184, 210, 0.84);
}

.mei-exec-integrity-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(160, 176, 204, 0.62);
}

.mei-exec-integrity-dot.is-stable {
  background: rgba(125, 205, 170, 0.82);
}

.mei-exec-integrity-dot.is-risk {
  background: rgba(228, 186, 112, 0.86);
}

.mei-exec-integrity-dot.is-unstable {
  background: rgba(214, 145, 145, 0.76);
}

.mei-exec-integrity-state-text {
  font-size: 11px;
  font-weight: 550;
}

.mei-exec-integrity-score {
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  color: rgba(145, 160, 188, 0.84);
}

.mei-exec-integrity-rows {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 14px;
}

.mei-exec-integrity-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  color: rgba(122, 138, 166, 0.82);
}

.mei-exec-integrity-row strong {
  font-weight: 550;
  color: rgba(182, 195, 218, 0.86);
}

.mei-exec-integrity-row--micro {
  grid-column: 1 / -1;
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-sequencing-horizon-card {
  width: min(92%, 960px);
  margin-top: -8px;
  padding: 10px 12px 11px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.01);
}

.mei-sequencing-horizon-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.mei-sequencing-horizon-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.78);
}

.mei-sequencing-horizon-state {
  font-size: 10px;
  font-weight: 550;
  color: rgba(152, 168, 194, 0.78);
}

.mei-sequencing-horizon-rows {
  display: grid;
  gap: 6px;
}

.mei-sequencing-horizon-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  font-size: 11px;
  color: rgba(122, 138, 166, 0.8);
}

.mei-sequencing-horizon-row span {
  flex-shrink: 0;
}

.mei-sequencing-horizon-row strong {
  font-weight: 550;
  text-align: right;
  color: rgba(180, 194, 218, 0.84);
}

.mei-sequencing-horizon-row--micro {
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-blocker-control-card {
  width: min(90%, 940px);
  margin-top: -10px;
  padding: 10px 12px 11px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.048);
  background: rgba(255, 255, 255, 0.009);
}

.mei-blocker-control-card--compact {
  opacity: 0.76;
}

.mei-blocker-control-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.mei-blocker-control-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.76);
}

.mei-blocker-control-state {
  font-size: 10px;
  font-weight: 550;
  color: rgba(152, 168, 194, 0.78);
}

.mei-blocker-control-list {
  display: grid;
  gap: 7px;
}

.mei-blocker-control-empty {
  font-size: 11px;
  color: rgba(126, 142, 170, 0.76);
}

.mei-blocker-control-item {
  padding: 6px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.035);
}

.mei-blocker-control-item:first-child {
  border-top: none;
  padding-top: 0;
}

.mei-blocker-control-item-top {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.mei-blocker-control-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  margin-top: 1px;
  flex-shrink: 0;
  background: rgba(156, 170, 195, 0.64);
}

.mei-blocker-control-dot.is-blocking {
  background: rgba(220, 160, 130, 0.78);
}

.mei-blocker-control-dot.is-risk {
  background: rgba(220, 186, 120, 0.8);
}

.mei-blocker-control-dot.is-low {
  background: rgba(140, 180, 170, 0.76);
}

.mei-blocker-control-item-title {
  min-width: 0;
  flex: 1 1 auto;
  font-size: 12px;
  font-weight: 550;
  line-height: 1.35;
  color: rgba(182, 194, 218, 0.84);
}

.mei-blocker-control-item-age {
  flex-shrink: 0;
  font-size: 10px;
  color: rgba(130, 146, 174, 0.78);
  font-variant-numeric: tabular-nums;
}

.mei-blocker-control-item-meta {
  margin-top: 2px;
  font-size: 10px;
  color: rgba(122, 138, 166, 0.78);
}

.mei-blocker-control-item-next {
  margin-top: 3px;
  font-size: 11px;
  color: rgba(164, 178, 204, 0.82);
}

.mei-blocker-control-foot {
  margin-top: 8px;
  padding-top: 4px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  font-size: 10px;
  color: rgba(126, 142, 170, 0.76);
}

.mei-replan-decision-card {
  width: min(88%, 900px);
  margin-top: -10px;
  padding: 9px 11px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.045);
  background: rgba(255, 255, 255, 0.008);
}

.mei-replan-decision-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 7px;
}

.mei-replan-decision-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.74);
}

.mei-replan-decision-state {
  font-size: 10px;
  font-weight: 550;
  color: rgba(152, 168, 194, 0.76);
}

.mei-replan-decision-rows {
  display: grid;
  gap: 5px;
}

.mei-replan-decision-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 10px;
  color: rgba(122, 138, 166, 0.76);
}

.mei-replan-decision-row strong {
  font-weight: 550;
  text-align: right;
  color: rgba(176, 190, 214, 0.82);
}

.mei-replan-decision-row--micro {
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.mei-replan-decision-foot {
  margin-top: 7px;
  font-size: 10px;
  color: rgba(126, 142, 170, 0.74);
}

.mei-open-loops-aging-card,
.mei-decision-log-card,
.mei-inbox-triage-card,
.mei-assistant-handoff-card {
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.045);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.007);
  padding: 8px 10px 9px;
}

.mei-open-loops-aging-title,
.mei-decision-log-title,
.mei-inbox-triage-title,
.mei-assistant-handoff-title {
  margin: 0 0 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(124, 140, 168, 0.74);
}

.mei-open-loops-aging-list,
.mei-decision-log-list,
.mei-inbox-triage-list {
  display: grid;
  gap: 5px;
}

.mei-open-loops-aging-item {
  padding-top: 4px;
  border-top: 1px solid rgba(255, 255, 255, 0.035);
}

.mei-open-loops-aging-item:first-child {
  border-top: none;
  padding-top: 0;
}

.mei-open-loops-aging-main {
  font-size: 10px;
  color: rgba(172, 186, 210, 0.82);
}

.mei-open-loops-aging-sub {
  margin-top: 2px;
  font-size: 10px;
  color: rgba(124, 140, 168, 0.74);
}

.mei-decision-log-item {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  font-size: 10px;
  color: rgba(154, 170, 198, 0.8);
}

.mei-decision-log-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(132, 160, 206, 0.72);
}

.mei-decision-log-age {
  font-variant-numeric: tabular-nums;
  color: rgba(124, 140, 168, 0.74);
}

.mei-inbox-triage-item {
  font-size: 10px;
  line-height: 1.35;
  color: rgba(154, 170, 198, 0.8);
}

.mei-inbox-triage-card--reduced {
  opacity: 0.78;
}

.mei-assistant-handoff-card--readonly {
  opacity: 0.84;
}

.mei-assistant-handoff-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 10px;
  color: rgba(124, 140, 168, 0.78);
  padding-top: 3px;
}

.mei-assistant-handoff-row strong {
  text-align: right;
  font-weight: 550;
  color: rgba(176, 190, 214, 0.84);
}

.mei-assistant-handoff-row--micro {
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  margin-top: 3px;
}

.mei-assistant-handoff-foot {
  margin-top: 6px;
  font-size: 10px;
  color: rgba(124, 140, 168, 0.74);
}

body.execution-active .mei-exec-btn-secondary {
  opacity: 0.62;
}

body.execution-active .mei-planner-add-btn,
body.execution-active .mei-planner-toggle,
body.execution-active .mei-planner-secondary-tools-btn {
  opacity: 0.55;
}

@media (max-width: 980px) {
  .mei-exec-hero-grid {
    grid-template-columns: 1fr;
  }

  .mei-exec-support {
    padding-left: 0;
    padding-top: 18px;
    border-left: none;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

@media (max-width: 640px) {
  .mei-exec-stage-inner {
    padding: 24px 22px 22px;
  }

  .mei-exec-hero-task {
    font-size: clamp(1.55rem, 6.5vw, 2.05rem);
  }

  .mei-exec-actions-secondary {
    flex-wrap: wrap;
  }
}

.topbar.topbar--chrome {
  opacity: 0.96;
}

.topbar.topbar--chrome .welcome h1 {
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  font-weight: 600;
  letter-spacing: -0.02em;
}

.topbar.topbar--chrome .welcome p {
  font-size: 12px;
  color: rgba(130, 145, 175, 0.88);
}

/* Final Premium Polish — UI only, no behavior/layout logic changes */

.mei-exec-stage {
  border-color: rgba(255, 255, 255, 0.085);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.04) inset,
    0 14px 34px rgba(0, 0, 0, 0.24);
}

.mei-exec-stage-inner {
  padding: 34px 36px 32px;
}

.mei-exec-kicker,
.mei-exec-next-label {
  letter-spacing: 0.115em;
}

.mei-exec-next-label {
  margin-bottom: 16px;
  color: rgba(168, 182, 210, 0.72);
}

.mei-exec-hero-task {
  margin-bottom: 22px;
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  line-height: 1.1;
}

.mei-exec-actions {
  margin-bottom: 20px;
  gap: 9px;
}

.mei-exec-cta.primary-btn {
  min-height: 62px;
  border-radius: 15px;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.07) inset,
    0 10px 20px rgba(34, 60, 135, 0.18);
  transition:
    transform 130ms ease,
    box-shadow 180ms ease,
    filter 180ms ease;
}

.mei-exec-cta.primary-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  filter: brightness(1.02);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.1) inset,
    0 12px 24px rgba(34, 60, 135, 0.24);
}

.mei-exec-cta.primary-btn:active:not(:disabled) {
  transform: translateY(0);
  filter: brightness(0.985);
}

.mei-exec-btn-secondary {
  border-color: rgba(255, 255, 255, 0.075);
  background: rgba(255, 255, 255, 0.012);
  transition:
    border-color 160ms ease,
    color 160ms ease,
    background-color 160ms ease,
    transform 120ms ease;
}

.mei-exec-btn-secondary:hover:not(:disabled) {
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(190, 202, 226, 0.92);
  background: rgba(255, 255, 255, 0.024);
  transform: translateY(-1px);
}

.mei-exec-btn-secondary:active:not(:disabled) {
  transform: translateY(0);
}

.mei-exec-field-label {
  margin-bottom: 5px;
  letter-spacing: 0.095em;
}

.mei-exec-field-value {
  font-size: 13px;
  line-height: 1.5;
  color: rgba(186, 198, 222, 0.78);
}

.mei-exec-support {
  padding-left: 24px;
}

.mei-exec-support-list {
  gap: 11px;
}

.mei-exec-support-row {
  gap: 5px;
  padding-bottom: 11px;
  border-bottom-color: rgba(255, 255, 255, 0.045);
}

.mei-exec-support-label {
  letter-spacing: 0.075em;
  color: rgba(122, 136, 164, 0.66);
}

.mei-exec-support-value {
  color: rgba(182, 194, 218, 0.9);
}

.mei-planner-rail-card {
  border-color: rgba(255, 255, 255, 0.06);
  background: rgba(255, 255, 255, 0.01);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}

.mei-planner-rail-card .card-inner {
  padding: 12px 13px 13px;
}

.mei-planner-rail-kicker {
  letter-spacing: 0.09em;
  color: rgba(130, 145, 175, 0.8);
}

.mei-danach-strip {
  margin-bottom: 14px;
}

.mei-danach-chip {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.05);
}

.mei-planner-bottom-grid {
  gap: 14px;
}

.mei-replan-card {
  border-color: rgba(247, 180, 85, 0.2);
  background: rgba(247, 180, 85, 0.045);
}

body.execution-active .mei-planner-rail-card,
body.execution-active .mei-planner-bottom-col {
  opacity: 0.84;
}

body.execution-active .mei-exec-stage {
  opacity: 1;
}

body.execution-active .mei-planner-rail-card:hover,
body.execution-active .mei-planner-bottom-col:hover {
  opacity: 0.9;
}

@media (max-width: 900px) {
  .mei-planner-layout--v3 {
    grid-template-columns: 1fr;
  }

  .mei-planner-col-aside--rail {
    width: 100%;
    min-width: 0;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .mei-planner-rail-card {
    flex: 1 1 280px;
  }

  .mei-active-exec-actions {
    grid-template-columns: 1fr;
  }

  .mei-planner-top-row {
    grid-template-columns: 1fr;
  }

  .mei-kpi-strip--planner-inline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mei-active-exec-btn {
    font-size: 16px;
  }

  .mei-active-exec-date-num {
    font-size: 42px;
  }

  .mei-active-exec-date-mon {
    font-size: 14px;
  }

  .mei-active-exec-date-weekday {
    font-size: 12px;
  }
}

.mei-v2-shell {
  width: 100%;
  min-height: 100%;
  display: flex;
  justify-content: center;
  padding: 10px 0;
  background:
    radial-gradient(130% 80% at 50% -10%, rgba(118, 72, 220, 0.22) 0%, rgba(15, 22, 42, 0) 62%),
    radial-gradient(140% 90% at 50% 100%, rgba(47, 124, 255, 0.16) 0%, rgba(7, 11, 22, 0) 68%),
    linear-gradient(180deg, #070d1e 0%, #050916 100%);
}

.mei-v2-frame {
  width: 534px;
  min-height: 1136px;
  border-radius: 24px;
  border: 1px solid rgba(157, 176, 220, 0.2);
  background: linear-gradient(180deg, rgba(8, 14, 29, 0.84), rgba(5, 9, 20, 0.92));
  box-shadow:
    inset 0 1px 0 rgba(210, 225, 255, 0.08),
    0 20px 60px rgba(0, 0, 0, 0.5);
  padding: 18px 20px 20px;
  display: grid;
  grid-auto-rows: min-content;
  gap: 14px;
}

.mei-v2-block {
  border-radius: 18px;
  border: 1px solid rgba(152, 172, 212, 0.15);
  background: linear-gradient(180deg, rgba(11, 18, 36, 0.92) 0%, rgba(8, 14, 28, 0.9) 100%);
  box-shadow: inset 0 1px 0 rgba(212, 224, 255, 0.04);
  padding: 14px 14px 13px;
}

.mei-v2-block-top {
  padding: 14px 14px 14px;
}

.mei-v2-top-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.mei-v2-kicker {
  font-size: 19px;
  line-height: 1.05;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: rgba(235, 242, 255, 0.96);
}

.mei-v2-flow-btn {
  min-height: 30px;
  border-radius: 999px;
  border: 1px solid rgba(168, 187, 228, 0.26);
  background: rgba(129, 158, 223, 0.08);
  color: rgba(220, 232, 255, 0.9);
  padding: 0 12px 0 9px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 620;
}

.mei-v2-flow-ic {
  color: rgba(136, 182, 255, 0.95);
}

.mei-v2-top-body {
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 12px;
}

.mei-v2-date {
  border-radius: 14px;
  border: 1px solid rgba(154, 171, 210, 0.18);
  background: linear-gradient(180deg, rgba(28, 36, 69, 0.72), rgba(13, 20, 39, 0.82));
  min-height: 170px;
  padding: 16px 8px 11px;
  text-align: center;
}

.mei-v2-date-num {
  font-size: 72px;
  line-height: 0.9;
  letter-spacing: -0.04em;
  font-weight: 700;
  color: rgba(245, 249, 255, 0.98);
  text-shadow: 0 0 15px rgba(152, 112, 255, 0.28);
}

.mei-v2-date-mon {
  margin-top: 5px;
  font-size: 19px;
  line-height: 1;
  font-weight: 650;
  color: rgba(212, 226, 246, 0.94);
}

.mei-v2-date-week {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1;
  font-weight: 550;
  color: rgba(166, 184, 214, 0.86);
}

.mei-v2-top-main {
  min-width: 0;
}

.mei-v2-mini-kicker {
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.09em;
  font-weight: 620;
  color: rgba(159, 178, 210, 0.86);
}

.mei-v2-title {
  margin: 8px 0 0;
  font-size: 32px;
  line-height: 1.06;
  letter-spacing: -0.025em;
  font-weight: 580;
  color: rgba(243, 248, 255, 0.98);
}

.mei-v2-plan-btn {
  margin-top: 9px;
  min-height: 32px;
  border-radius: 9px;
  border: 1px solid rgba(157, 178, 218, 0.2);
  background: rgba(129, 150, 194, 0.07);
  color: rgba(214, 227, 247, 0.92);
  padding: 0 11px;
  font-size: 12px;
  font-weight: 590;
}

.mei-v2-chip-row {
  margin-top: 8px;
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.mei-v2-chip {
  border-radius: 999px;
  border: 1px solid rgba(154, 173, 211, 0.2);
  background: rgba(125, 146, 190, 0.08);
  min-height: 25px;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 560;
  color: rgba(201, 217, 244, 0.92);
}

.mei-v2-cta-row {
  margin-top: 10px;
  display: flex;
  gap: 9px;
}

.mei-v2-cta {
  flex: 1;
  min-height: 43px;
  border-radius: 11px;
  border: 1px solid rgba(185, 205, 255, 0.22);
  background: linear-gradient(95deg, rgba(54, 111, 246, 0.98), rgba(118, 72, 220, 0.9));
  color: rgba(244, 248, 255, 0.98);
  font-size: 15px;
  font-weight: 650;
}

.mei-v2-more {
  width: 43px;
  min-width: 43px;
  min-height: 43px;
  border-radius: 11px;
  border: 1px solid rgba(164, 183, 220, 0.2);
  background: rgba(131, 152, 195, 0.08);
  color: rgba(212, 226, 246, 0.94);
  font-size: 24px;
  line-height: 1;
}

.mei-v2-row-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.mei-v2-section-title {
  margin: 0;
  font-size: 23px;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: rgba(236, 244, 255, 0.97);
}

.mei-v2-count {
  min-width: 28px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(156, 135, 218, 0.4);
  background: rgba(121, 90, 206, 0.24);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: rgba(232, 240, 255, 0.95);
}

.mei-v2-list {
  display: grid;
  gap: 8px;
}

.mei-v2-item {
  border-radius: 14px;
  border: 1px solid rgba(158, 176, 212, 0.17);
  background: rgba(117, 139, 181, 0.08);
  min-height: 60px;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.mei-v2-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
}

.mei-v2-dot-blue {
  background: radial-gradient(circle at 30% 30%, #b7dbff 0%, #5a9eff 50%, #3f72cf 100%);
}

.mei-v2-dot-violet {
  background: radial-gradient(circle at 30% 30%, #d5beff 0%, #9a72ff 50%, #6647cb 100%);
}

.mei-v2-item-text {
  min-width: 0;
}

.mei-v2-item-title {
  font-size: 16px;
  line-height: 1.2;
  font-weight: 560;
  color: rgba(234, 242, 255, 0.95);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-v2-item-sub {
  margin-top: 2px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 520;
  color: rgba(158, 179, 211, 0.82);
}

.mei-v2-side-btn {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(124, 154, 223, 0.36);
  background: rgba(76, 108, 182, 0.24);
  color: rgba(206, 222, 248, 0.94);
  font-size: 15px;
  font-weight: 630;
}

.mei-v2-input {
  margin-top: 10px;
  border-radius: 13px;
  border: 1px solid rgba(153, 174, 213, 0.16);
  background: rgba(113, 134, 176, 0.08);
  min-height: 52px;
  padding: 15px 14px;
  font-size: 15px;
  font-weight: 540;
  color: rgba(132, 155, 191, 0.82);
}

.mei-v2-tabs {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) 48px;
  gap: 7px;
}

.mei-v2-tab {
  min-height: 46px;
  border-radius: 11px;
  border: 1px solid rgba(155, 174, 212, 0.16);
  background: rgba(116, 137, 177, 0.08);
  color: rgba(202, 217, 241, 0.91);
  font-size: 14px;
  font-weight: 580;
}

.mei-v2-send {
  min-height: 46px;
  border-radius: 11px;
  border: 1px solid rgba(168, 194, 255, 0.28);
  background: linear-gradient(180deg, rgba(84, 135, 255, 0.94), rgba(76, 98, 236, 0.93));
  color: rgba(244, 249, 255, 0.98);
  font-size: 20px;
  font-weight: 700;
}

.mei-v2-filter {
  min-height: 33px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(157, 179, 216, 0.24);
  background: rgba(125, 146, 187, 0.1);
  color: rgba(214, 228, 248, 0.93);
  font-size: 15px;
  font-weight: 600;
}

.mei-v2-task-list {
  display: grid;
  gap: 6px;
}

.mei-v2-task {
  min-height: 43px;
  border-bottom: 1px solid rgba(148, 170, 208, 0.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.mei-v2-task:last-child {
  border-bottom: none;
}

.mei-v2-task-name {
  font-size: 33px;
  line-height: 0.95;
  letter-spacing: -0.03em;
  font-weight: 530;
  color: rgba(236, 245, 255, 0.96);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-v2-task-time {
  font-size: 17px;
  line-height: 1;
  font-weight: 620;
  color: rgba(165, 183, 216, 0.84);
  flex-shrink: 0;
}

.mei-v2-tag {
  height: 27px;
  border-radius: 999px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  font-weight: 650;
}

.mei-v2-tag-high {
  border: 1px solid rgba(250, 154, 110, 0.45);
  background: rgba(170, 92, 64, 0.28);
  color: rgba(255, 194, 166, 0.96);
}

.mei-v2-tag-low {
  border: 1px solid rgba(132, 168, 227, 0.34);
  background: rgba(73, 98, 149, 0.26);
  color: rgba(195, 217, 251, 0.95);
}

.mei-v2-more-row {
  margin-top: 4px;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mei-v2-more-left {
  font-size: 16px;
  font-weight: 560;
  color: rgba(168, 186, 218, 0.84);
}

.mei-v2-open-btn {
  border: none;
  background: transparent;
  color: rgba(176, 195, 232, 0.94);
  font-size: 23px;
  line-height: 1;
  font-weight: 600;
  padding: 0;
}

.mei-v2-loops {
  margin-top: 2px;
}

.mei-v2-loop-list {
  display: grid;
  gap: 6px;
}

.mei-v2-loop {
  min-height: 44px;
  border-bottom: 1px solid rgba(148, 170, 208, 0.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.mei-v2-loop:last-child {
  border-bottom: none;
}

.mei-v2-loop-name {
  font-size: 33px;
  line-height: 0.95;
  letter-spacing: -0.03em;
  font-weight: 530;
  color: rgba(236, 245, 255, 0.96);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mei-v2-loop-tag {
  height: 28px;
  border-radius: 999px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1;
  font-weight: 650;
}

.mei-v2-loop-tag-red {
  border: 1px solid rgba(242, 119, 102, 0.48);
  background: rgba(161, 69, 63, 0.3);
  color: rgba(255, 187, 178, 0.98);
}

.mei-v2-loop-tag-amber {
  border: 1px solid rgba(239, 166, 88, 0.46);
  background: rgba(151, 105, 58, 0.28);
  color: rgba(255, 210, 153, 0.97);
}

.mei-v2-loop-tag-yellow {
  border: 1px solid rgba(227, 185, 102, 0.46);
  background: rgba(146, 118, 58, 0.28);
  color: rgba(251, 224, 166, 0.97);
}

.mei-v2-all-loops {
  margin-top: 10px;
  width: 100%;
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(155, 176, 216, 0.2);
  background: rgba(124, 146, 186, 0.14);
  color: rgba(214, 228, 248, 0.96);
  font-size: 24px;
  font-weight: 580;
}

/* —— meAI Interaction Contract v1: globales Bottom Panel + Feedback —— */
.mei-bottom-panel {
  position: fixed;
  inset: 0;
  z-index: 12000;
  pointer-events: none;
}

.mei-bottom-panel.mei-bottom-panel--visible {
  pointer-events: auto;
}

.mei-bottom-panel__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 6, 18, 0.55);
  opacity: 0;
  transition: opacity 0.22s ease;
  pointer-events: auto;
  cursor: pointer;
}

.mei-bottom-panel__sheet {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  max-height: min(72vh, 640px);
  padding: 18px 20px 22px;
  border-radius: 18px 18px 0 0;
  background: linear-gradient(180deg, rgba(18, 26, 48, 0.98), rgba(10, 14, 28, 0.99));
  border: 1px solid rgba(96, 165, 255, 0.22);
  box-shadow: 0 -18px 60px rgba(0, 0, 0, 0.45);
  transform: translateY(110%);
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: auto;
  overflow: auto;
}

.mei-bottom-panel--visible .mei-bottom-panel__backdrop {
  opacity: 1;
}

.mei-bottom-panel--visible .mei-bottom-panel__sheet {
  transform: translateY(0);
}

.mei-bottom-panel__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(245, 247, 255, 0.92);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.mei-bottom-panel__status {
  margin: 0 48px 8px 0;
  font-size: 13px;
  font-weight: 600;
  color: rgba(160, 174, 204, 0.95);
}

.mei-bottom-panel__title {
  margin: 0 48px 12px 0;
  font-size: 20px;
  font-weight: 700;
  color: rgba(245, 247, 255, 0.98);
}

.mei-bottom-panel__body {
  font-size: 15px;
  line-height: 1.45;
  color: rgba(214, 224, 246, 0.92);
}

.mei-bottom-panel__body .mei-bottom-panel__kv {
  margin: 0 0 10px;
}

.mei-bottom-panel__body .mei-bottom-panel__muted {
  margin: 12px 0 0;
  font-size: 13px;
  color: rgba(160, 174, 204, 0.88);
}

.mei-bottom-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.mei-bottom-panel__btn {
  min-height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(245, 247, 255, 0.94);
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

.mei-bottom-panel__btn--primary {
  border-color: rgba(96, 165, 255, 0.45);
  background: rgba(47, 124, 255, 0.35);
}

.mei-task-modal {
  position: fixed;
  inset: 0;
  z-index: 12100;
  display: grid;
  place-items: center;
  pointer-events: none;
}

.mei-task-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 8, 20, 0.68);
  opacity: 0;
  transition: opacity 0.2s ease;
}

.mei-task-modal__card {
  position: relative;
  width: min(520px, calc(100vw - 32px));
  border-radius: 18px;
  border: 1px solid rgba(96, 165, 255, 0.24);
  background: linear-gradient(180deg, rgba(17, 25, 46, 0.98), rgba(10, 14, 26, 0.99));
  box-shadow: 0 22px 64px rgba(0, 0, 0, 0.48);
  padding: 18px 18px 16px;
  transform: translateY(12px) scale(0.98);
  opacity: 0;
  transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s ease;
}

.mei-task-modal.is-visible {
  pointer-events: auto;
}

.mei-task-modal.is-visible .mei-task-modal__backdrop {
  opacity: 1;
}

.mei-task-modal.is-visible .mei-task-modal__card {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.mei-task-modal__title {
  margin: 0;
  font-size: 20px;
  font-weight: 680;
  color: rgba(245, 248, 255, 0.98);
}

.mei-task-modal__subtitle {
  margin: 8px 0 14px;
  color: rgba(178, 190, 218, 0.95);
  font-size: 14px;
}

.mei-task-modal__form {
  display: grid;
  gap: 14px;
}

.mei-task-modal__input {
  width: 100%;
  min-height: 48px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(10, 16, 30, 0.88);
  color: rgba(245, 248, 255, 0.98);
  padding: 0 14px;
  font-size: 15px;
  outline: none;
}

.mei-task-modal__input:focus {
  border-color: rgba(96, 165, 255, 0.62);
  box-shadow: 0 0 0 3px rgba(47, 124, 255, 0.2);
}

.mei-task-modal__actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.mei-task-modal__btn {
  min-height: 42px;
  min-width: 116px;
}

.mei-ix-quick-form {
  display: grid;
  gap: 12px;
  margin-top: 4px;
}

.mei-ix-toast-host {
  position: fixed;
  left: 50%;
  bottom: 96px;
  transform: translateX(-50%);
  z-index: 12001;
  pointer-events: none;
  max-width: min(520px, 92vw);
}

.mei-ix-toast {
  padding: 12px 16px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.mei-ix-toast--success {
  background: rgba(31, 211, 138, 0.22);
  color: rgba(220, 255, 240, 0.98);
}

.mei-ix-toast--error {
  background: rgba(255, 93, 115, 0.2);
  color: rgba(255, 220, 224, 0.98);
}

.mei-ix-toast--pending {
  background: rgba(96, 165, 255, 0.2);
  color: rgba(230, 240, 255, 0.98);
}

.mei-finance-in-item--interactive,
.mei-finance-cf-step.mei-finance-in-item--interactive,
.mei-finance-tr-row.mei-finance-in-item--interactive,
.mei-finance-in-open-strip.mei-finance-in-item--interactive {
  cursor: pointer;
}

.mei-finance-in-item--interactive:focus-visible {
  outline: 2px solid rgba(96, 165, 255, 0.55);
  outline-offset: 2px;
}

.mei-ix-pending {
  opacity: 0.72;
  pointer-events: none;
}

:root {
  --mei-sidebar-width: 240px;
}

@media (min-width: 1181px) {
  .app {
    grid-template-columns: var(--mei-sidebar-width) minmax(0, 1fr);
    transition: grid-template-columns 0.25s ease;
  }

  .sidebar.sidebar--pro {
    width: var(--mei-sidebar-width);
    padding: 16px 10px 12px;
    gap: 10px;
    overflow: visible;
    transition: width 0.25s ease;
  }

  .sidebar.sidebar--pro .sidebar-brand-anchor {
    justify-content: flex-start;
    padding: 8px 8px 14px;
    margin-bottom: 4px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .mei-sidebar-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
  }

  .mei-sidebar-logo-img {
    display: block;
    max-width: 100%;
    height: auto;
  }

  .mei-sidebar-logo-img--full {
    width: auto !important;
    height: 40px !important;
    object-fit: contain;
    object-position: left center;
  }

  .mei-sidebar-logo-img--compact {
    width: 40px !important;
    height: 40px !important;
    object-fit: contain;
    object-position: center center;
  }

  .mei-sidebar-logo--compact {
    display: none;
  }

  .sidebar.sidebar--pro .nav {
    margin-top: 2px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow: visible;
    flex: 0 0 auto;
    padding-right: 2px;
  }

  .sidebar.sidebar--pro .sidebar-nav,
  .sidebar.sidebar--pro .sidebar-nav ul {
    overflow: visible;
  }

  .sidebar.sidebar--pro .nav-group {
    border: none;
    margin: 12px 6px 6px;
    padding: 0 10px;
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(136, 153, 183, 0.72);
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }

  .sidebar.sidebar--pro .nav-item {
    min-height: 38px;
    margin: 0 4px;
    padding: 8px 10px;
    border-radius: 8px;
    gap: 10px;
    font-size: 13px;
    border: 1px solid transparent;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
  }

  .sidebar.sidebar--pro .nav-icon {
    width: 20px;
    height: 20px;
    font-size: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0.95;
  }

  .sidebar.sidebar--pro .nav-label {
    white-space: nowrap;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }

  .sidebar.sidebar--pro .nav-item:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.08);
    transform: none;
  }

  .sidebar.sidebar--pro .nav-item.active {
    color: #9bc4ff;
    background: var(--accent-soft, rgba(96, 165, 255, 0.18));
    border-color: transparent;
    box-shadow: none;
    filter: none;
    border-radius: 8px;
  }

  .sidebar.sidebar--pro .sidebar-bottom {
    margin-top: auto;
    gap: 10px;
    padding-bottom: 6px;
  }

  .sidebar.sidebar--pro .sidebar-today-card,
  .sidebar.sidebar--pro .user-card {
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
  }

  .sidebar.sidebar--pro .user-card {
    border-radius: 12px;
    padding: 8px;
    gap: 10px;
  }

  .sidebar.sidebar--pro .avatar {
    width: 34px;
    height: 34px;
    font-size: 13px;
  }

  .sidebar.sidebar--pro .user-name {
    font-size: 13px;
    font-weight: 500;
  }

  .sidebar.sidebar--pro .user-status {
    font-size: 11px;
  }

  .mei-sidebar-control {
    position: relative;
    display: flex;
    justify-content: flex-start;
  }

  .mei-sidebar-control__trigger {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(232, 240, 252, 0.92);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .mei-sidebar-control__trigger i {
    font-size: 18px;
  }

  .mei-sidebar-control__menu {
    position: absolute;
    left: 0;
    bottom: calc(100% + 8px);
    min-width: 160px;
    padding: 6px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    background: rgba(12, 18, 33, 0.97);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    display: none;
    gap: 2px;
    flex-direction: column;
    z-index: 30;
  }

  .mei-sidebar-control__menu.is-open {
    display: flex;
  }

  .mei-sidebar-control__option {
    width: 100%;
    min-height: 30px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: rgba(220, 230, 248, 0.95);
    font-size: 12px;
    padding: 0 10px;
    text-align: left;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
  }

  .mei-sidebar-control__option:hover {
    background: rgba(255, 255, 255, 0.07);
  }

  .mei-sidebar-control__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: transparent;
  }

  .mei-sidebar-control__option.is-active .mei-sidebar-control__dot {
    background: #60a5ff;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .sidebar-brand-anchor {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .mei-sidebar-logo--full,
  .sidebar.sidebar--pro.is-collapsed .mei-sidebar-logo--full {
    display: none;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .mei-sidebar-logo--compact,
  .sidebar.sidebar--pro.is-collapsed .mei-sidebar-logo--compact {
    display: flex;
    justify-content: center;
  }

  .sidebar.sidebar--pro.is-expanded .mei-sidebar-logo--full {
    display: flex;
  }

  .sidebar.sidebar--pro.is-expanded .mei-sidebar-logo--compact {
    display: none;
  }

  body[data-sidebar-mode="collapsed"] .sidebar.sidebar--pro .mei-sidebar-logo--full {
    display: none !important;
  }

  body[data-sidebar-mode="collapsed"] .sidebar.sidebar--pro .mei-sidebar-logo--compact {
    display: flex !important;
    justify-content: center;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .nav-group,
  body.mei-sidebar-collapsed .sidebar.sidebar--pro .nav-label,
  body.mei-sidebar-collapsed .sidebar.sidebar--pro .sidebar-today-card,
  body.mei-sidebar-collapsed .sidebar.sidebar--pro .user-meta {
    display: none;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .nav-item {
    justify-content: center;
    padding: 0;
    width: 40px;
    height: 40px;
    min-height: 40px;
    flex: 0 0 40px;
    margin: 0 auto;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .user-card {
    justify-content: center;
    padding: 6px;
    background: transparent;
    border-color: transparent;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .mei-sidebar-control {
    justify-content: center;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .nav-icon {
    opacity: 1;
    margin: 0;
  }

  body.mei-sidebar-collapsed .sidebar.sidebar--pro .nav-item.active {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    box-shadow: none;
    filter: none;
  }
}
