
:root{
  --color-dashboard:#6b7280; --color-thermo:#ef4444; --color-scanner:#f97316;
  --color-naehrstoffe:#22c55e; --color-uebi:#a855f7; --color-musik:#14b8a6;
  --color-spiele:#eab308; --color-hoeren:#6366f1; --color-buecher:#d97706;
  --color-ki:#ec4899; --color-fitness:#0ea5e9; --color-kommunikation:#38bdf8;
  --color-fragebogen:#84cc16; --color-film:#8b5cf6; --color-migraene:#dc2626; --color-vitamind:#d4b84a; --color-koerper:#6366f1; --color-einstellungen:#94a3b8;
}
:root[data-theme="grau"]{
  --bg:#1e2330; --card:#2a3042; --muted:#8b95a8; --line:#373f52; --ink:#e8edf5;
  --tab-bg:#242938; --badge:#2a3042; --badgeLine:#3d4660; --focus:#60a5fa;
  --ok:#34d399; --bad:#f87171; --warn:#fbbf24; --turq1:#0d9488; --turq2:#14b8a6;
  --shadow:0 4px 20px rgba(0,0,0,.5);
}
:root[data-theme="hellgrau"]{
  --bg:#f7f8fa; --card:#ffffff; --muted:#6b7280; --line:#e3e6ea; --ink:#111827;
  --tab-bg:#ffffff; --badge:#f2f4f7; --badgeLine:#e3e6ea; --focus:#1b7f6f;
  --ok:#1fa97d; --bad:#f87171; --warn:#f59e0b; --turq1:#087c74; --turq2:#0f9d8f;
  --shadow:0 8px 24px rgba(0,0,0,.08);
}
:root[data-theme="dark"]{
  --bg:#0b0f14; --card:#12161c; --muted:#aeb6c2; --line:#1f2731; --ink:#ffffff;
  --tab-bg:#0d131b; --badge:#0d131b; --badgeLine:#1f2731; --focus:#1b7f6f;
  --ok:#1fa97d; --bad:#f87171; --warn:#f59e0b; --turq1:#087c74; --turq2:#0f9d8f;
  --shadow:none;
}
*{box-sizing:border-box}
html,body{overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 system-ui,-apple-system,'Segoe UI',Roboto,Ubuntu,Arial,sans-serif}
.wrap{max-width:1440px;margin:8px auto;padding:8px 14px}
.hero{background:linear-gradient(135deg,var(--turq1),var(--turq2));color:#e8f9f0;padding:8px;border-radius:14px;border:1px solid #0d6d66;box-shadow:var(--shadow);margin-bottom:8px}
h1{margin:0;font-size:18px;line-height:1.2;font-weight:900}
.legal{margin:2px 0 0;font-size:.8rem;opacity:.95}
.widgets{display:flex;flex-direction:column;gap:6px;min-width:0}
.widgets-row{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;overflow:auto}
.pill{display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.25);padding:0 8px;height:32px;border-radius:10px;font-weight:800;line-height:1}
.pill.budget{background:rgba(115,217,126,.18);border-color:rgba(114, 85, 47,.55);min-width:170px;justify-content:center}
.xs-btn,.tab,.ai-btn,.btn,.set-btn{height:32px;padding:6px 10px;border-radius:10px;font-size:.85rem;font-weight:800;border:1px solid var(--badgeLine);background:var(--tab-bg);color:var(--ink);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;line-height:1;user-select:none}
.btn.ok{background:linear-gradient(90deg,#22c55e,#16a34a);color:#001;border-color:#15803d}
.ai-bar{background:var(--badge);border:1px solid var(--badgeLine);border-radius:12px;padding:6px;box-shadow:var(--shadow);margin:0 0 8px}
.ai-row{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
.ai-input{flex:1 1 auto;min-width:0;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 12px;border-radius:10px;font:inherit;line-height:1.35;min-height:48px;max-height:90px;resize:vertical;overflow:auto}
.tabs{display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding:8px 10px 10px;margin:0 0 10px;align-items:stretch;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--card);border:1px solid var(--line);border-radius:18px;touch-action:pan-x;scroll-behavior:smooth}
.tabs::-webkit-scrollbar{display:none}
.tab{min-height:42px;padding:10px 16px;border-radius:14px;border:2px solid var(--badgeLine);background:var(--tab-bg);color:var(--muted);font-size:14px;font-weight:800;line-height:1;flex:0 0 auto;transition:color .15s,border-color .15s,background .15s,transform .15s;position:relative;touch-action:manipulation}
.tab.active{color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.14)}
.tab.color-dashboard.active{background:#6b7280;border-color:#6b7280}
.tab.color-fragebogen.active{background:#84cc16;border-color:#84cc16;color:#132400}
.tab.color-ki.active{background:#ec4899;border-color:#ec4899}
.tab.color-film.active{background:#8b5cf6;border-color:#8b5cf6}
.tab.color-naehrstoffe.active{background:#22c55e;border-color:#22c55e;color:#052e16}
.tab.color-thermo.active{background:#ef4444;border-color:#ef4444}
.tab.color-vitamind.active{background:#d4b84a;border-color:#d4b84a;color:#2b2300}
.tab.color-scanner.active{background:#f97316;border-color:#f97316;color:#3a1400}
.tab.color-buecher.active{background:#d97706;border-color:#d97706;color:#431407}
.tab.color-hoeren.active{background:#6366f1;border-color:#6366f1}
.tab.color-migraene.active{background:#dc2626;border-color:#dc2626}
.tab.color-einstellungen.active{background:#94a3b8;border-color:#94a3b8;color:#0f172a}
.tab.color-spiele.active{background:#eab308;border-color:#eab308;color:#2b2200}
.tab.color-koerper.active{background:#6366f1;border-color:#6366f1;color:#eef2ff}
.tab.dragging,.tab.move-source{opacity:.88;transform:scale(1.03)}
.tab.move-target{outline:2px solid #e8edf5;outline-offset:1px}

.tab.color-dashboard,.tab.color-fragebogen,.tab.color-ki,.tab.color-film,.tab.color-naehrstoffe,.tab.color-thermo,.tab.color-vitamind,.tab.color-scanner,.tab.color-buecher,.tab.color-hoeren,.tab.color-migraene,.tab.color-einstellungen,.tab.color-uebi,.tab.color-kommunikation,.tab.color-musik,.tab.color-fitnessuhr,.tab.color-wetter,.tab.color-sport{box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 0 1px color-mix(in srgb, currentColor 20%, transparent 80%)}
.tab.color-dashboard{border-color:rgba(107,114,128,.55)}
.tab.color-fragebogen{border-color:rgba(132,204,22,.55)}
.tab.color-ki{border-color:rgba(236,72,153,.6)}
.tab.color-film{border-color:rgba(139,92,246,.6)}
.tab.color-naehrstoffe{border-color:rgba(34,197,94,.6)}
.tab.color-thermo{border-color:rgba(239,68,68,.6)}
.tab.color-vitamind{border-color:rgba(212,184,74,.6)}
.tab.color-scanner{border-color:rgba(249,115,22,.6)}
.tab.color-buecher{border-color:rgba(217,119,6,.6)}
.tab.color-hoeren{border-color:rgba(99,102,241,.6)}
.tab.color-migraene{border-color:rgba(220,38,38,.6)}
.tab.color-einstellungen{border-color:rgba(148,163,184,.6)}
.tab.color-uebi{border-color:rgba(168,85,247,.6)}
.tab.color-kommunikation{border-color:rgba(56,189,248,.6)}
.tab.color-musik{border-color:rgba(20,184,166,.6)}
.tab.color-wetter{border-color:rgba(14,165,233,.6)}
.tab.color-sport{border-color:rgba(16,185,129,.6)}
.tab.color-fitnessuhr{border-color:rgba(14,165,233,.6)}
.move-hint{font-size:12px;color:var(--muted);margin:2px 0 8px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:10px;min-height:420px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:14px;margin-bottom:10px;overflow:hidden}
.card.mod-dashboard{border-left:3px solid #6b7280}.card.mod-fragebogen{border-left:3px solid #84cc16}.card.mod-ki{border-left:3px solid #ec4899}.card.mod-film{border-left:3px solid #8b5cf6}.card.mod-naehrstoffe{border-left:3px solid #22c55e}.card.mod-thermo{border-left:3px solid #ef4444}.card.mod-scanner{border-left:3px solid #f97316}.card.mod-buecher{border-left:3px solid #d97706}.card.mod-hoeren{border-left:3px solid #6366f1}.card.mod-einstellungen{border-left:3px solid #94a3b8}
.mod-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.mod-title{margin:0;font-size:18px;font-weight:900}
.mod-title.c-dashboard{color:#c7cdd7}.mod-title.c-fragebogen{color:#b9ea63}.mod-title.c-ki{color:#ff9fca}.mod-title.c-film{color:#c9b2ff}.mod-title.c-naehrstoffe{color:#86efac}.mod-title.c-thermo{color:#ff9a9a}.mod-title.c-scanner{color:#ffb27d}.mod-title.c-buecher{color:#f4b268}.mod-title.c-hoeren{color:#a7a9ff}.mod-title.c-migraene{color:#ff8a8a}.mod-title.c-einstellungen{color:#d7dde8}
.mod-info{width:38px;height:38px;border-radius:999px;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px;flex:0 0 auto}
.note{font-size:.86rem;opacity:.9}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.stat{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}
.stat-label{font-size:.84rem;color:var(--muted);font-weight:800;margin-bottom:8px}
.stat-value{font-size:2rem;font-weight:900;line-height:1.05}
.note-box{margin-top:10px;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);font-size:.96rem}
.settings-grid{display:grid;gap:12px}
.settings-row{display:grid;gap:6px}
.settings-row label{font-size:.9rem;color:var(--muted);font-weight:800}
.settings-row select{width:100%;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--tab-bg);color:var(--ink);font:inherit}
@media (max-width:760px){.wrap{padding:8px 12px}.tab{min-height:40px;padding:9px 14px;font-size:13px}.stats{grid-template-columns:1fr}}

.tab.color-uebi.active{background:#a855f7;border-color:#a855f7}
.tab.color-kommunikation.active{background:#38bdf8;border-color:#38bdf8;color:#082f49}
.tab.color-musik.active{background:#14b8a6;border-color:#14b8a6;color:#042f2e}
.tab.color-wetter.active{background:#0ea5e9;border-color:#0ea5e9;color:#082f49}
.tab.color-sport.active{background:#10b981;border-color:#10b981;color:#052e16}
.tab.color-fitnessuhr.active{background:#0ea5e9;border-color:#0ea5e9;color:#082f49}
#moduleHost{overflow:hidden}
.panel{display:none;background:transparent;border:0;box-shadow:none;padding:0}
.panel.active{display:block}
.mod-wide-shell{position:relative;width:100%;max-width:100%;box-sizing:border-box;margin:0 !important;padding:18px 16px 22px !important;border-left:8px solid var(--mod-accent,#60a5fa);border-right:8px solid var(--mod-accent,#60a5fa);border-top:6px solid color-mix(in srgb, var(--mod-accent,#60a5fa) 80%, white 20%);border-bottom:6px solid color-mix(in srgb, var(--mod-accent,#60a5fa) 80%, white 20%);border-radius:34px;background:linear-gradient(180deg,rgba(17,24,39,.94),rgba(19,28,48,.98));box-shadow:0 18px 42px rgba(0,0,0,.26);overflow:hidden}
.mod-wide-shell .card{border-radius:28px;padding:18px 16px;background:rgba(28,38,64,.92);border:1px solid rgba(255,255,255,.08);box-shadow:none}
.mod-wide-shell .section{font-size:30px;font-weight:900;margin:0 0 14px}
.mod-wide-shell .subtabs-top,.mod-wide-shell .tabs-sub{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;margin:0 0 14px;scrollbar-width:none}
.mod-wide-shell .subtabs-top::-webkit-scrollbar,.mod-wide-shell .tabs-sub::-webkit-scrollbar{display:none}
.mod-wide-shell .subtab{min-height:44px;padding:9px 14px;border-radius:14px;border:2px solid var(--badgeLine);background:var(--tab-bg);color:var(--ink);font-size:14px;font-weight:800;white-space:nowrap}
.mod-wide-shell .subtab[aria-selected="true"],.mod-wide-shell .subtab.active{box-shadow:0 0 0 2px rgba(255,255,255,.06) inset}
@media(max-width:760px){.mod-wide-shell{padding:16px 14px 20px !important}.mod-wide-shell .card{padding:16px 14px}.mod-wide-shell .section{font-size:28px}}


/* 3.2.8 unified module baseline */
:root{
  --module-surface: color-mix(in srgb, var(--card) 90%, #1f2a44 10%);
  --module-surface-2: color-mix(in srgb, var(--card) 82%, #101827 18%);
}
.mod-wide-shell,
#mod_naehrstoffe,
#mod_ki,
#mod_dashboard,
#mod_thermo,
#mod_scanner,
#mod_buecher,
#mod_hoeren,
#mod_kommunikation,
#mod_uebi,
#mod_musik,
#mod_fragebogen,
#mod_einstellungen{
  background:linear-gradient(180deg,var(--module-surface-2),var(--module-surface)) !important;
}
.mod-touch-accent,
.mod-wide-shell .subtab,
.mod-wide-shell .btnx,
.mod-wide-shell input,
.mod-wide-shell textarea,
.mod-wide-shell select{
  box-shadow:0 0 0 1px color-mix(in srgb, var(--mod-accent, #60a5fa) 22%, transparent 78%) inset;
}
.mod-head-strong{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 16px}
.mod-info-btn{width:40px;height:40px;min-width:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;border:2px solid var(--mod-accent,#60a5fa);color:var(--ink);background:rgba(255,255,255,.03);box-shadow:0 0 0 1px rgba(255,255,255,.04) inset}
@media(max-width:760px){.mod-info-btn{width:36px;height:36px;min-width:36px;font-size:15px}}


/* 3.2.9 module template touches */
#moduleHost{display:block !important;}
#moduleHost > section{display:block !important;}
#mod_dashboard .subtab, #mod_dashboard button, #mod_dashboard input, #mod_dashboard textarea, #mod_dashboard select{box-shadow:0 0 0 1px rgba(107,114,128,.12) inset !important;}
#mod_ki .nima-ki-subtab, #mod_ki .nima-ki-btn, #mod_ki .nima-ki-big-input, #mod_ki .nima-ki-out, #mod_ki .nima-ki-full-btn{box-shadow:0 0 0 1px rgba(236,72,153,.14) inset !important;}
#mod_naehrstoffe .subtab, #mod_naehrstoffe .btnx, #mod_naehrstoffe input, #mod_naehrstoffe textarea, #mod_naehrstoffe select{box-shadow:0 0 0 1px rgba(34,197,94,.15) inset !important;}
#mod_thermo .subtab, #mod_thermo button, #mod_thermo input, #mod_thermo textarea, #mod_thermo select{box-shadow:0 0 0 1px rgba(239,68,68,.14) inset !important;}


/* 3.2.11 thin module color border on controls */
.mod-wide-shell button,
.mod-wide-shell .subtab,
.mod-wide-shell input,
.mod-wide-shell textarea,
.mod-wide-shell select{
  border-color: color-mix(in srgb, var(--mod-accent,#60a5fa) 42%, var(--badgeLine) 58%) !important;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--mod-accent,#60a5fa) 18%, transparent 82%) inset !important;
}
.mod-wide-shell .subtab[aria-selected="true"],
.mod-wide-shell .subtab.active,
.mod-wide-shell button.is-active,
.mod-wide-shell .btnx.ok,
.mod-wide-shell .nima-ki-subtab.is-active,
.mod-wide-shell .nima-ki-btn.primary,
.mod-wide-shell .nima-ki-btn.change,
.mod-wide-shell .tab.active{
  border-width:2px !important;
  box-shadow:0 0 0 2px color-mix(in srgb, var(--mod-accent,#60a5fa) 22%, transparent 78%) inset !important;
}


/* 3.2.12 KI/Nährstoffe gemeinsame Geometrie + dünne Modulrahmen */

#mod_naehrstoffe{border-left-width:5px !important;border-right-width:5px !important;border-top-width:4px !important;border-bottom-width:4px !important;border-radius:28px !important}
#mod_ki .mod-info-btn,#nst27 .moduleInfoBtn{width:40px !important;height:40px !important;min-width:40px !important;font-size:17px !important;border-width:2px !important;margin-top:0 !important;margin-right:6px !important}
#mod_ki .mod-head-strong,#nst27 .headLine{margin:0 0 16px !important}
#mod_ki .section,#nst27 .section{padding-top:4px !important;padding-left:2px !important;padding-bottom:8px !important}
#mod_ki .nima-ki-subtab,#mod_ki .nima-ki-btn,#mod_ki .nima-ki-full-btn,#mod_ki .nima-ki-big-input,#mod_ki .nima-ki-out,#mod_ki .nima-ki-mini-btn{
  border-color:color-mix(in srgb,#ec4899 42%, var(--badgeLine) 58%) !important;
  box-shadow:0 0 0 1px rgba(236,72,153,.16) inset !important;
}
#mod_ki .nima-ki-subtab.is-active,#mod_ki .nima-ki-btn.primary,#mod_ki .nima-ki-btn.change,#mod_ki .nima-ki-mini-btn.primary,#mod_ki .nima-ki-mini-btn.change{
  border-width:2px !important;
  border-color:#ff6fae !important;
  background:rgba(236,72,153,.14) !important;
  box-shadow:0 0 0 2px rgba(236,72,153,.22) inset !important;
}
#mod_ki .nima-ki-subtab{min-height:40px !important;padding:8px 13px !important;font-size:13px !important;border-radius:12px !important;}
#mod_naehrstoffe .subtab,#mod_naehrstoffe .btnx,#mod_naehrstoffe input,#mod_naehrstoffe textarea,#mod_naehrstoffe select{
  border-color:color-mix(in srgb,#22c55e 42%, var(--badgeLine) 58%) !important;
  box-shadow:0 0 0 1px rgba(34,197,94,.16) inset !important;
}
#mod_naehrstoffe .subtab[aria-selected="true"],#mod_naehrstoffe .btnx.ok,#mod_naehrstoffe button.is-active{
  border-width:2px !important;
  box-shadow:0 0 0 2px rgba(34,197,94,.22) inset !important;
}
#mod_ki .nima-ki-subtabs .move-source,#mod_naehrstoffe .tabs-sub .move-source{transform:scale(1.03);opacity:.9}
#mod_ki .nima-ki-subtabs .move-target,#mod_naehrstoffe .tabs-sub .move-target{outline:2px solid rgba(255,255,255,.7);outline-offset:1px}
@media(max-width:699px){#mod_ki .mod-info-btn,#nst27 .moduleInfoBtn{width:36px !important;height:36px !important;min-width:36px !important;font-size:15px !important;margin-top:0 !important;margin-right:4px !important}}


.nima-module-footer{
  margin:14px 2px 2px;
  padding:10px 12px 2px;
  text-align:center;
  font-size:12px;
  color:var(--muted);
}
#moduleHost{padding-bottom:6px;}


/* 3.4.20 fragebogen fix */
#mod_fragebogen .mod-wide-shell{border-left-width:6px !important;border-right-width:6px !important;border-top-width:6px !important;border-bottom-width:6px !important;padding:18px 16px 18px !important;}
#mod_fragebogen .mod-head-strong{margin:0 0 12px !important;padding:0 4px 0 4px !important;}
#mod_fragebogen .section{margin:0 !important;}
#mod_fragebogen .mod-info-btn{width:40px !important;height:40px !important;min-width:40px !important;font-size:17px !important;border-width:2px !important;margin-top:0 !important;margin-right:0 !important;}
#mod_fragebogen .nima-module-footer{margin-top:10px !important;}
@media(max-width:760px){#mod_fragebogen .mod-wide-shell{padding:16px 14px 16px !important;}#mod_fragebogen .mod-info-btn{width:36px !important;height:36px !important;min-width:36px !important;font-size:15px !important;}}

/* 3.4.21 fragebogen follow-up */
#mod_fragebogen .mod-info-btn{width:40px !important;height:40px !important;min-width:40px !important;font-size:17px !important;border-width:2px !important;margin-top:0 !important;margin-right:0 !important;}
@media(max-width:760px){#mod_fragebogen .mod-info-btn{width:36px !important;height:36px !important;min-width:36px !important;font-size:15px !important;}}

.nima-ki-info-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:2147483000;padding:16px}.nima-ki-info-overlay.show{display:flex}.nima-ki-info-backdrop{position:absolute;inset:0;background:rgba(7,10,18,.72)}.nima-ki-info-card{position:relative;z-index:1;width:min(92vw,560px);max-height:82vh;overflow:auto;background:var(--card);border:1px solid rgba(96,165,250,.34);border-radius:22px;padding:16px;box-shadow:0 18px 44px rgba(0,0,0,.34)}.nima-ki-info-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.nima-ki-info-head h3{margin:0;font-size:22px;font-weight:900}.nima-ki-info-close{min-height:40px;padding:8px 14px;border-radius:12px;border:2px solid rgba(96,165,250,.42);background:rgba(96,165,250,.12);color:var(--ink);font-weight:800}.nima-ki-info-body p{margin:0 0 12px;line-height:1.55}.nima-ki-info-body p:last-child{margin-bottom:0}

.tab{box-shadow:0 0 0 1px rgba(255,255,255,.05) inset;}
.tab.color-dashboard,.tab.color-fragebogen,.tab.color-ki,.tab.color-film,.tab.color-naehrstoffe,.tab.color-thermo,.tab.color-vitamind,.tab.color-scanner,.tab.color-buecher,.tab.color-hoeren,.tab.color-migraene,.tab.color-einstellungen,.tab.color-uebi,.tab.color-kommunikation,.tab.color-musik{box-shadow:0 0 0 1px color-mix(in srgb, currentColor 28%, transparent 72%) inset !important;}


/* 3.8.37 light theme harmonization */
:root[data-theme="hellgrau"] .mod-wide-shell{
  background:linear-gradient(180deg, color-mix(in srgb, var(--card) 96%, #eef2f7 4%), color-mix(in srgb, var(--card) 90%, #e9edf3 10%)) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.08) !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .card,
:root[data-theme="hellgrau"] #mod_dashboard,
:root[data-theme="hellgrau"] #mod_thermo,
:root[data-theme="hellgrau"] #mod_scanner,
:root[data-theme="hellgrau"] #mod_buecher,
:root[data-theme="hellgrau"] #mod_hoeren,
:root[data-theme="hellgrau"] #mod_kommunikation,
:root[data-theme="hellgrau"] #mod_uebi,
:root[data-theme="hellgrau"] #mod_musik,
:root[data-theme="hellgrau"] #mod_fragebogen,
:root[data-theme="hellgrau"] #mod_einstellungen,
:root[data-theme="hellgrau"] #mod_naehrstoffe,
:root[data-theme="hellgrau"] #mod_vitamind,
:root[data-theme="hellgrau"] #mod_migraene,
:root[data-theme="hellgrau"] #mod_ki{
  background:linear-gradient(180deg, color-mix(in srgb, var(--card) 98%, #eef2f7 2%), color-mix(in srgb, var(--card) 93%, #e9edf3 7%)) !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .card{
  background:color-mix(in srgb, var(--card) 96%, #eef2f7 4%) !important;
  border-color:var(--line) !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .subtab,
:root[data-theme="hellgrau"] .mod-wide-shell .btnx,
:root[data-theme="hellgrau"] .mod-wide-shell input,
:root[data-theme="hellgrau"] .mod-wide-shell textarea,
:root[data-theme="hellgrau"] .mod-wide-shell select{
  background:var(--tab-bg) !important;
  color:var(--ink) !important;
}

:root[data-theme="hellgrau"] .mod-wide-shell .box,
:root[data-theme="hellgrau"] .mod-wide-shell .analysisOut,
:root[data-theme="hellgrau"] .mod-wide-shell .previewBox,
:root[data-theme="hellgrau"] .mod-wide-shell .quickItem,
:root[data-theme="hellgrau"] .mod-wide-shell .dishCard,
:root[data-theme="hellgrau"] .mod-wide-shell .helpPanel{
  background:color-mix(in srgb, var(--card) 97%, #eef2f7 3%) !important;
  color:var(--ink) !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .btnx.ok{color:#08210f !important;}

/* 3.9.1 theme consolidation */
:root[data-theme="hellgrau"]{
  --bg:#f5f6f8;
  --card:#ffffff;
  --muted:#677282;
  --line:#d9dee6;
  --ink:#162033;
  --tab-bg:#ffffff;
  --badge:#f3f5f8;
  --badgeLine:#d7dde6;
  --focus:#1b7f6f;
  --shadow:0 10px 26px rgba(15,23,42,.08);
  --module-light-surface:#f8f9fb;
  --module-light-surface-2:#eef2f7;
  --module-light-card:#f4f6fb;
  --module-light-card-2:#eef2f7;
}
:root[data-theme="hellgrau"] body{background:var(--bg);color:var(--ink);}
:root[data-theme="hellgrau"] .hero{box-shadow:0 10px 24px rgba(8,124,116,.14)}
:root[data-theme="hellgrau"] .ai-bar,
:root[data-theme="hellgrau"] .tabs{background:rgba(255,255,255,.86);backdrop-filter:blur(6px);}
:root[data-theme="hellgrau"] .tab{
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  color:#677282;
  border-color:var(--badgeLine);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 0 0 1px rgba(15,23,42,.02);
}
:root[data-theme="hellgrau"] .tab.active{
  color:#122033;
  box-shadow:0 8px 18px rgba(15,23,42,.08), inset 0 0 0 1px rgba(255,255,255,.7);
}
:root[data-theme="hellgrau"] .mod-wide-shell,
:root[data-theme="hellgrau"] .kommunikation-embed-card,
:root[data-theme="hellgrau"] .migraene-embed-card,
:root[data-theme="hellgrau"] .scanner-embed-card,
:root[data-theme="hellgrau"] .hoeren-embed-card,
:root[data-theme="hellgrau"] .vitamind-embed-card,
:root[data-theme="hellgrau"] .thermo-embed-card{
  background:linear-gradient(180deg,var(--module-light-surface) 0%, var(--module-light-surface-2) 100%) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.08) !important;
}
:root[data-theme="hellgrau"] .mod-head-strong h2,
:root[data-theme="hellgrau"] .mod-title,
:root[data-theme="hellgrau"] .section,
:root[data-theme="hellgrau"] .module-title,
:root[data-theme="hellgrau"] .nima-kommunikation-shell-title,
:root[data-theme="hellgrau"] .nima-migraene-shell-title{
  color:#172132 !important;
  text-shadow:none !important;
}
:root[data-theme="hellgrau"] .mod-info-btn,
:root[data-theme="hellgrau"] .scanner-info-btn,
:root[data-theme="hellgrau"] .nima-kommunikation-shell-info,
:root[data-theme="hellgrau"] .nima-migraene-shell-info{
  background:rgba(255,255,255,.84) !important;
  color:#1a2333 !important;
  box-shadow:0 2px 10px rgba(15,23,42,.06), inset 0 0 0 1px rgba(255,255,255,.85) !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .card,
:root[data-theme="hellgrau"] .mod-wide-shell .box,
:root[data-theme="hellgrau"] .mod-wide-shell .analysisOut,
:root[data-theme="hellgrau"] .mod-wide-shell .previewBox,
:root[data-theme="hellgrau"] .mod-wide-shell .quickItem,
:root[data-theme="hellgrau"] .mod-wide-shell .dishCard,
:root[data-theme="hellgrau"] .mod-wide-shell .helpPanel{
  background:linear-gradient(180deg,var(--module-light-card) 0%, var(--module-light-card-2) 100%) !important;
  border-color:#d7dde6 !important;
  color:#1b2535 !important;
  box-shadow:none !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .subtab,
:root[data-theme="hellgrau"] .mod-wide-shell .btnx,
:root[data-theme="hellgrau"] .mod-wide-shell button,
:root[data-theme="hellgrau"] .mod-wide-shell input,
:root[data-theme="hellgrau"] .mod-wide-shell textarea,
:root[data-theme="hellgrau"] .mod-wide-shell select,
:root[data-theme="hellgrau"] #musikMod .musik-btn,
:root[data-theme="hellgrau"] #musikMod .musik-btn-file,
:root[data-theme="hellgrau"] #musikMod .musik-pill{
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fc 100%) !important;
  color:#182235 !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .subtab.active,
:root[data-theme="hellgrau"] .mod-wide-shell .subtab[aria-selected="true"],
:root[data-theme="hellgrau"] #musikMod .subtab.is-active,
:root[data-theme="hellgrau"] #musikMod .musik-btn-primary{
  color:#182235 !important;
}
:root[data-theme="hellgrau"] #musikMod .musik-status,
:root[data-theme="hellgrau"] #musikMod .musik-subtitle{
  color:color-mix(in srgb, var(--mod-accent,#14b8a6) 74%, #172132 26%) !important;
}
:root[data-theme="hellgrau"] #musikMod .trackRow,
:root[data-theme="hellgrau"] #musikMod .musik-kpi,
:root[data-theme="hellgrau"] #musikMod .musik-list-item{
  background:rgba(255,255,255,.64) !important;
  border-color:#dbe2ea !important;
}
:root[data-theme="hellgrau"] .ndb{
  --bg:#f8fafc; --bg2:#eef2f7; --panel:#f4f7fb; --panel2:#edf2f7;
  --line:rgba(148,163,184,.26); --text:#162033; --muted:#627084; --blue:#74829b;
  --shadow:0 12px 26px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.82);
  color:var(--text) !important;
}
:root[data-theme="hellgrau"] .ndb-shell{
  background:linear-gradient(180deg,var(--bg) 0%, var(--bg2) 100%) !important;
  box-shadow:var(--shadow) !important;
}
:root[data-theme="hellgrau"] .ndb-title,
:root[data-theme="hellgrau"] .ndb-big,
:root[data-theme="hellgrau"] .ndb-wide .t{color:#162033 !important;}
:root[data-theme="hellgrau"] .ndb-label,
:root[data-theme="hellgrau"] .ndb-card .t,
:root[data-theme="hellgrau"] .ndb-mini .k,
:root[data-theme="hellgrau"] .ndb-wide .s,
:root[data-theme="hellgrau"] .ndb-card .s{color:#627084 !important;}
:root[data-theme="hellgrau"] .ndb-info{
  background:rgba(255,255,255,.84) !important;
  color:#162033 !important;
}
:root[data-theme="hellgrau"] .ndb-tab,
:root[data-theme="hellgrau"] .ndb-picker-toggle{
  background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%) !important;
  color:#1a2434 !important;
  border-color:rgba(148,163,184,.32) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.88) inset !important;
}
:root[data-theme="hellgrau"] .ndb-tab.active{
  background:linear-gradient(180deg, rgba(111,207,151,.16), rgba(111,207,151,.07)) !important;
}
:root[data-theme="hellgrau"] .ndb-panel,
:root[data-theme="hellgrau"] .ndb-mini,
:root[data-theme="hellgrau"] .ndb-card,
:root[data-theme="hellgrau"] .ndb-line,
:root[data-theme="hellgrau"] .ndb-options,
:root[data-theme="hellgrau"] .ndb-chip{
  background:linear-gradient(180deg,#f7f9fc 0%,#eff3f8 100%) !important;
  border-color:rgba(148,163,184,.22) !important;
  box-shadow:none !important;
}
:root[data-theme="hellgrau"] .ndb-hero.reset .ndb-shape{opacity:.35 !important; filter:blur(2px) !important;}
:root[data-theme="hellgrau"] .ndb-hero.migraine .ndb-shape,
:root[data-theme="hellgrau"] .ndb-hero.general .ndb-shape,
:root[data-theme="hellgrau"] .ndb-hero.sport .ndb-shape,
:root[data-theme="hellgrau"] .ndb-hero.reserve .ndb-shape{opacity:.18 !important;}
:root[data-theme="hellgrau"] #nimaScannerMount,
:root[data-theme="hellgrau"] #nimaThermoMount,
:root[data-theme="hellgrau"] #nimaHoerenMount,
:root[data-theme="hellgrau"] #nimaVitaminDMount,
:root[data-theme="hellgrau"] #nimaKommunikationMount,
:root[data-theme="hellgrau"] #nimaMigraeneMount{background:transparent !important;}


/* 3.9.2 focused light-theme cleanup: naehrstoffe + fotoanalyse + musik */
:root[data-theme="hellgrau"] #mod_naehrstoffe{
  background:linear-gradient(180deg,#fbfcfe 0%, #f1f5f9 100%) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.08) !important;
}
:root[data-theme="hellgrau"] #mod_naehrstoffe .mod-naehrstoffe{
  background:linear-gradient(180deg,#fbfcfe 0%, #f3f6fa 100%) !important;
  border-color:rgba(34,197,94,.14) !important;
}
:root[data-theme="hellgrau"] #mod_naehrstoffe .section,
:root[data-theme="hellgrau"] #nst27 .section,
:root[data-theme="hellgrau"] #mod_naehrstoffe .mod-title{
  color:#152033 !important;
}
:root[data-theme="hellgrau"] #nst27 .tabs-sub{
  background:rgba(255,255,255,.58) !important;
  border-color:rgba(34,197,94,.10) !important;
}
:root[data-theme="hellgrau"] #nst27 .box,
:root[data-theme="hellgrau"] #nst27 .dishCard,
:root[data-theme="hellgrau"] #nst27 .helpPanel,
:root[data-theme="hellgrau"] #nst27 .analysisOut,
:root[data-theme="hellgrau"] #nst27 .previewBox,
:root[data-theme="hellgrau"] #nst27 .quickItem,
:root[data-theme="hellgrau"] #nst27 .nutInfoBox{
  background:linear-gradient(180deg,#f7f9fc 0%, #eef3f8 100%) !important;
  border-color:rgba(34,197,94,.14) !important;
  color:#182235 !important;
  box-shadow:none !important;
}
:root[data-theme="hellgrau"] #nst27 .analysisOut,
:root[data-theme="hellgrau"] #nst27 .previewBox{
  background:linear-gradient(180deg,#f6f8fb 0%, #edf2f7 100%) !important;
}
:root[data-theme="hellgrau"] #nst27 .dishName,
:root[data-theme="hellgrau"] #nst27 .smallmuted,
:root[data-theme="hellgrau"] #nst27 .dishDesc,
:root[data-theme="hellgrau"] #nst27 .dishSub,
:root[data-theme="hellgrau"] #nst27 .listline,
:root[data-theme="hellgrau"] #nst27 .quickLabel,
:root[data-theme="hellgrau"] #nst27 .nutNameWrap,
:root[data-theme="hellgrau"] #nst27 .moduleInfoBtn{
  color:#182235 !important;
}
:root[data-theme="hellgrau"] #nst27 .moduleInfoBtn{
  background:rgba(255,255,255,.82) !important;
  border-color:#22c55e !important;
}
:root[data-theme="hellgrau"] #nst27 .btnx.ok{
  color:#06240f !important;
}
:root[data-theme="hellgrau"] #musikMod{
  background:linear-gradient(180deg,#fbfcfe 0%, #f1f5f9 100%) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.08) !important;
}
:root[data-theme="hellgrau"] #musikMod .card,
:root[data-theme="hellgrau"] #musikMod .musik-output,
:root[data-theme="hellgrau"] #musikMod .trackRow,
:root[data-theme="hellgrau"] #musikMod .musik-kpi,
:root[data-theme="hellgrau"] #musikMod .musik-list-item{
  background:linear-gradient(180deg,#f7f9fc 0%, #eef3f8 100%) !important;
  border-color:rgba(20,184,166,.15) !important;
  color:#182235 !important;
  box-shadow:none !important;
}
:root[data-theme="hellgrau"] #musikMod .musik-note,
:root[data-theme="hellgrau"] #musikMod .musik-mini,
:root[data-theme="hellgrau"] #musikMod label{
  color:#617084 !important;
}
:root[data-theme="hellgrau"] #musikMod .subtab.is-active,
:root[data-theme="hellgrau"] #musikMod .subtab.active,
:root[data-theme="hellgrau"] #musikMod .musik-btn-primary{
  background:linear-gradient(180deg, rgba(20,184,166,.16), rgba(20,184,166,.08)) !important;
  color:#182235 !important;
  box-shadow:inset 0 0 0 2px rgba(20,184,166,.18) !important;
}
:root[data-theme="hellgrau"] #musikMod .musik-status,
:root[data-theme="hellgrau"] #musikMod .musik-subtitle,
:root[data-theme="hellgrau"] #musikMod .musik-info{
  color:#0f766e !important;
}
:root[data-theme="hellgrau"] #musikMod .musik-info{
  background:rgba(255,255,255,.82) !important;
}


/* 3.9.3 title + info + tab harmonization */
:root[data-theme="hellgrau"] .mod-head-strong,
:root[data-theme="hellgrau"] .scanner-shell-head,
:root[data-theme="hellgrau"] .nima-kommunikation-shell-head{
  align-items:center !important;
  margin:0 0 18px !important;
}
:root[data-theme="hellgrau"] .mod-head-strong h2,
:root[data-theme="hellgrau"] .module-title,
:root[data-theme="hellgrau"] .mod-title,
:root[data-theme="hellgrau"] .section,
:root[data-theme="hellgrau"] .nima-kommunikation-shell-title,
:root[data-theme="hellgrau"] .nima-migraene-shell-title,
:root[data-theme="hellgrau"] #nst27 .section{
  font-size:clamp(26px, 5.8vw, 34px) !important;
  line-height:1.04 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
}
:root[data-theme="hellgrau"] .mod-info-btn,
:root[data-theme="hellgrau"] .scanner-info-btn,
:root[data-theme="hellgrau"] .nima-kommunikation-shell-info,
:root[data-theme="hellgrau"] .nima-migraene-shell-info,
:root[data-theme="hellgrau"] #nst27 .moduleInfoBtn,
:root[data-theme="hellgrau"] .ndb-info{
  width:64px !important;
  height:64px !important;
  min-width:64px !important;
  font-size:34px !important;
  border-width:3px !important;
  margin:0 !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .tabs-sub,
:root[data-theme="hellgrau"] .mod-wide-shell .subtabs-top,
:root[data-theme="hellgrau"] #nst27 .tabs-sub,
:root[data-theme="hellgrau"] .nima-ki-subtabs,
:root[data-theme="hellgrau"] .ndb-tabs{
  gap:12px !important;
  margin:0 0 16px !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .subtab,
:root[data-theme="hellgrau"] #nst27 .subtab,
:root[data-theme="hellgrau"] .nima-ki-subtab,
:root[data-theme="hellgrau"] .ndb-tab{
  min-height:52px !important;
  min-width:148px !important;
  padding:10px 18px !important;
  border-radius:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
  flex:0 0 auto !important;
}
:root[data-theme="hellgrau"] .mod-wide-shell .subtab.active,
:root[data-theme="hellgrau"] .mod-wide-shell .subtab[aria-selected="true"],
:root[data-theme="hellgrau"] #nst27 .subtab[aria-selected="true"],
:root[data-theme="hellgrau"] .nima-ki-subtab.is-active,
:root[data-theme="hellgrau"] .ndb-tab.active{
  border-width:2px !important;
  transform:none !important;
}
@media(max-width:760px){
  :root[data-theme="hellgrau"] .mod-head-strong h2,
  :root[data-theme="hellgrau"] .module-title,
  :root[data-theme="hellgrau"] .mod-title,
  :root[data-theme="hellgrau"] .section,
  :root[data-theme="hellgrau"] .nima-kommunikation-shell-title,
  :root[data-theme="hellgrau"] .nima-migraene-shell-title,
  :root[data-theme="hellgrau"] #nst27 .section{font-size:clamp(24px, 6.8vw, 30px) !important;}
  :root[data-theme="hellgrau"] .mod-info-btn,
  :root[data-theme="hellgrau"] .scanner-info-btn,
  :root[data-theme="hellgrau"] .nima-kommunikation-shell-info,
  :root[data-theme="hellgrau"] .nima-migraene-shell-info,
  :root[data-theme="hellgrau"] #nst27 .moduleInfoBtn,
  :root[data-theme="hellgrau"] .ndb-info{width:58px !important;height:58px !important;min-width:58px !important;font-size:30px !important;}
  :root[data-theme="hellgrau"] .mod-wide-shell .subtab,
  :root[data-theme="hellgrau"] #nst27 .subtab,
  :root[data-theme="hellgrau"] .nima-ki-subtab,
  :root[data-theme="hellgrau"] .ndb-tab{min-height:48px !important;min-width:134px !important;padding:9px 16px !important;font-size:13px !important;border-radius:16px !important;}
}


/* 4.1.4 cleanup */
#moduleHost .koerper-footer{display:none !important;}
#moduleHost .nima-module-footer + .nima-module-footer{display:none !important;}

#mod_film .film-subtab,#mod_film .film-btn,#mod_film .film-input,#mod_film .film-out,#mod_film .film-card{box-shadow:0 0 0 1px rgba(139,92,246,.16) inset !important;}
#mod_film .film-subtab.is-active,#mod_film .film-btn.primary,#mod_film .film-chip.is-active{border-width:2px !important;border-color:#a78bfa !important;background:rgba(139,92,246,.14) !important;box-shadow:0 0 0 2px rgba(139,92,246,.22) inset !important;}



/* NIMA header avatar overlay */
.nima-hero{padding:10px !important}
.nima-hero-stage{position:relative;min-height:160px;border-radius:12px;overflow:hidden}
.nima-hero-content{position:relative;z-index:1;transition:opacity .2s ease, transform .2s ease;padding:2px}
.nima-hero-avatar-overlay{position:absolute;inset:0;display:none;align-items:stretch;justify-content:center;border-radius:12px;overflow:hidden;background:#07141a}
.nima-hero-avatar-overlay.is-active{display:flex}
.nima-hero-avatar-overlay.is-speaking .nima-hero-avatar-video.is-active{animation:none}
.nima-hero-avatar-overlay.is-speaking .nima-hero-avatar-meta{transform:translateY(-1px)}
@keyframes nimaAvatarTalkZoom{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.05) translateY(-2px)}}
.nima-hero-avatar-overlay.is-active + .nima-hero-content{}
.nima-hero-stage.avatar-active .nima-hero-content{opacity:0;transform:scale(.985);pointer-events:none}
.nima-hero-avatar-fallback{position:absolute;inset:0;display:none;background:#07141a center 10%/cover no-repeat;filter:saturate(1.02) contrast(1.02)}
.nima-hero-avatar-fallback.is-active{display:block}
.nima-hero-avatar-fallback.is-hidden{display:none !important}
.nima-hero-avatar-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 10%;display:none;background:transparent;transform:none;transform-origin:center center;will-change:transform,filter}
.nima-hero-avatar-video.is-active{display:block;animation:none}
.nima-hero-avatar-video.is-alive{filter:saturate(1.02) contrast(1.02)}
@keyframes nimaAvatarAlive{
  0%{transform:scale(1.02) translate3d(0,0,0)}
  22%{transform:scale(1.04) translate3d(0,-0.7%,0)}
  48%{transform:scale(1.03) translate3d(0.3%,-0.2%,0)}
  74%{transform:scale(1.05) translate3d(-0.3%,-0.55%,0)}
  100%{transform:scale(1.02) translate3d(0,0,0)}
}

.nima-hero-avatar-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.28) 55%,rgba(0,0,0,.48) 100%)}
.nima-hero-avatar-meta,.nima-hero-avatar-title,.nima-hero-avatar-status{display:none !important}
@media (max-width:760px){
  .nima-hero-stage{min-height:138px}
}


.ai-input-panel{background:linear-gradient(180deg, rgba(251,191,36,.12), rgba(249,115,22,.10));border:1px solid rgba(251,191,36,.22);border-radius:12px;padding:8px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.ai-output-panel{background:linear-gradient(180deg, rgba(59,130,246,.12), rgba(16,185,129,.10));border:1px solid rgba(96,165,250,.22) !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.ai-panel-label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;padding:4px 8px;border-radius:999px;margin:0 0 8px}
.ai-panel-label-input{background:rgba(251,191,36,.18);color:#fef3c7;border:1px solid rgba(251,191,36,.26)}
.ai-panel-label-output{background:rgba(96,165,250,.16);color:#dbeafe;border:1px solid rgba(96,165,250,.24)}
.ai-input{background:rgba(10,14,22,.34);border-color:rgba(255,255,255,.10)}
.ai-output{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto;padding-right:2px}
.ai-output .msg{padding:10px 12px;border-radius:12px;line-height:1.42;border:1px solid rgba(255,255,255,.08)}
.ai-output .msg.user{background:rgba(251,191,36,.10);border-color:rgba(251,191,36,.18)}
.ai-output .msg.ai{background:rgba(96,165,250,.10);border-color:rgba(96,165,250,.18)}
.nima-hero-stage{min-height:180px}
@media (max-width:760px){
  .nima-hero-stage{min-height:150px}
  .ai-output{max-height:180px}
}
:root[data-theme="hellgrau"] .ai-input-panel{background:linear-gradient(180deg, rgba(251,191,36,.12), rgba(249,115,22,.08));border-color:rgba(245,158,11,.18)}
:root[data-theme="hellgrau"] .ai-output-panel{background:linear-gradient(180deg, rgba(59,130,246,.09), rgba(16,185,129,.08));border-color:rgba(59,130,246,.16) !important}
:root[data-theme="hellgrau"] .ai-panel-label-input{color:#7c4a03;background:rgba(251,191,36,.18)}
:root[data-theme="hellgrau"] .ai-panel-label-output{color:#1d4ed8;background:rgba(96,165,250,.14)}
:root[data-theme="hellgrau"] .ai-input{background:#fffdf8;border-color:#ead8b0}
:root[data-theme="hellgrau"] .ai-output .msg.user{background:#fff8e8;border-color:#f1d28a}
:root[data-theme="hellgrau"] .ai-output .msg.ai{background:#eef6ff;border-color:#bfdbfe}

@keyframes nimaAvatarMetaPulse{0%{opacity:1}50%{opacity:.86}100%{opacity:1}}
.nima-hero-avatar-overlay.is-speaking .nima-hero-avatar-status{animation:nimaAvatarMetaPulse .8s ease-in-out infinite}

#nimaHeroAvatarFemaleVideo{object-position:center 10%;}
#nimaHeroAvatarMaleVideo{object-position:center 10%;}
.nima-hero-stage.avatar-active{overflow:visible;z-index:22;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -152px 0;border-radius:12px 12px 18px 18px;box-shadow:0 14px 34px rgba(0,0,0,.26);}
.ai-bar{position:relative;z-index:1;transition:opacity .18s ease, visibility .18s ease;}
.ai-bar.avatar-covered{visibility:hidden;pointer-events:none;}
.ai-panel-label-input{display:none !important;}
.ai-input-panel{padding-top:10px !important;}

.nima-hero-avatar-overlay video{visibility:visible !important;opacity:1 !important;}
.nima-hero-avatar-fallback{z-index:1 !important;}
.nima-hero-avatar-video{z-index:2 !important;}
.nima-hero-avatar-shade{z-index:3 !important;pointer-events:none !important;}
.nima-hero-avatar-meta,.nima-hero-avatar-title,.nima-hero-avatar-status,.nima-hero-avatar-label{display:none !important;visibility:hidden !important;opacity:0 !important;}


/* 5.2.1 header avatar + input-only overlay fix */
.nima-hero-stage{overflow:visible !important;}
.nima-hero-avatar-overlay{pointer-events:none !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -78px 0 !important;border-radius:12px 12px 18px 18px !important;box-shadow:0 14px 34px rgba(0,0,0,.26) !important;}
.ai-bar{position:relative !important;z-index:8 !important;overflow:visible !important;}
.ai-input-panel{position:relative !important;z-index:1 !important;transition:opacity .18s ease, visibility .18s ease !important;}
.ai-input-panel.avatar-input-covered{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}
.ai-bar > .ai-row, .ai-output-panel{position:relative !important;z-index:12 !important;}
.nima-hero-avatar-video{display:block;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);}


/* 5.2.3 clean avatar reset */
.hero.nima-hero{background:transparent !important;border:none !important;box-shadow:none !important;padding:0 !important;margin-bottom:10px !important;}
.nima-hero-stage{min-height:196px !important;border-radius:20px !important;overflow:hidden !important;background:#05070b !important;box-shadow:0 12px 30px rgba(0,0,0,.24) !important;}
@media (max-width:760px){.nima-hero-stage{min-height:182px !important;border-radius:18px !important;}}
.nima-hero-content{display:none !important;}
.nima-hero-avatar-overlay{display:flex !important;inset:0 !important;border-radius:inherit !important;pointer-events:none !important;background:#05070b !important;box-shadow:none !important;}
.nima-hero-stage.avatar-active,.nima-hero-stage.avatar-expanded{overflow:hidden !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 !important;border-radius:inherit !important;box-shadow:none !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-video{inset:0 !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{background-position:center center !important;background-size:cover !important;filter:none !important;}
.nima-hero-avatar-video{object-fit:cover !important;object-position:center center !important;background:#05070b !important;filter:none !important;}
#nimaHeroAvatarFemaleVideo{object-position:center center !important;}
#nimaHeroAvatarMaleVideo,.nima-hero-avatar-overlay #nimaHeroAvatarMaleFallback{display:none !important;}
.nima-hero-avatar-shade{background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.16) 58%,rgba(0,0,0,.30) 100%) !important;}
.ai-bar{z-index:8 !important;}
.ai-input-panel.avatar-input-covered{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;}

/* 5.2.4 avatar video rebuild */
.nima-hero-avatar-overlay{display:none !important;inset:0 !important;border-radius:inherit !important;pointer-events:none !important;background:linear-gradient(180deg,#0b1020 0%,#0b1020 52%,#101831 100%) !important;box-shadow:none !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-stage.avatar-active,.nima-hero-stage.avatar-expanded{overflow:visible !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -108px 0 !important;border-radius:inherit !important;box-shadow:none !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-canvas,.nima-hero-avatar-video{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:inherit !important;}
.nima-hero-avatar-fallback{background-position:center top !important;background-size:contain !important;background-repeat:no-repeat !important;background-color:transparent !important;filter:none !important;}
.nima-hero-avatar-canvas{display:block !important;z-index:2 !important;background:transparent !important;}
.nima-hero-avatar-video{opacity:.001 !important;z-index:1 !important;object-fit:contain !important;object-position:center top !important;background:transparent !important;filter:none !important;}
.nima-hero-avatar-shade{z-index:3 !important;pointer-events:none !important;background:linear-gradient(180deg,rgba(4,6,12,.03),rgba(4,6,12,.07) 56%,rgba(6,8,16,.20) 100%) !important;}
.ai-input-panel.avatar-input-covered{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}


/* 5.2.5 avatar rebuild */
.nima-hero-stage{min-height:210px !important;border-radius:20px !important;overflow:visible !important;background:#08101c !important;}
@media (max-width:760px){.nima-hero-stage{min-height:196px !important;}}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -92px 0 !important;border-radius:inherit !important;box-shadow:none !important;}
.nima-hero-avatar-overlay{display:none !important;align-items:stretch !important;justify-content:center !important;pointer-events:none !important;background:linear-gradient(180deg,#0b1220 0%,#0d1730 100%) !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-canvas,.nima-hero-avatar-video{position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{z-index:1 !important;background-position:center 26% !important;background-size:cover !important;background-repeat:no-repeat !important;background-color:#0b1220 !important;display:block !important;opacity:1 !important;}
.nima-hero-avatar-canvas{z-index:2 !important;display:none !important;background:transparent !important;}
.nima-hero-avatar-overlay.use-canvas .nima-hero-avatar-canvas{display:block !important;}
.nima-hero-avatar-video{z-index:2 !important;opacity:0 !important;object-fit:contain !important;object-position:center bottom !important;background:transparent !important;}
.nima-hero-avatar-overlay:not(.use-canvas) .nima-hero-avatar-video{opacity:0 !important;}
.nima-hero-avatar-shade{z-index:3 !important;pointer-events:none !important;background:linear-gradient(180deg,rgba(3,6,12,.02),rgba(3,6,12,.08) 58%,rgba(4,8,18,.18) 100%) !important;}
.ai-input-panel.avatar-input-covered{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}
#nimaHeroAvatarMaleVideo,.nima-hero-avatar-overlay #nimaHeroAvatarMaleFallback{display:none !important;}


/* 5.2.6 avatar animated-image fallback */
.nima-hero-stage{min-height:208px !important;border-radius:20px !important;overflow:visible !important;background:#08101c !important;}
@media (max-width:760px){.nima-hero-stage{min-height:196px !important;}}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -96px 0 !important;border-radius:inherit !important;box-shadow:none !important;}
.nima-hero-avatar-overlay{display:none !important;align-items:stretch !important;justify-content:center !important;pointer-events:none !important;background:linear-gradient(180deg,#0b1220 0%,#0d1730 100%) !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-anim,.nima-hero-avatar-video{position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{z-index:1 !important;background-position:center 10% !important;background-size:106% auto !important;background-repeat:no-repeat !important;background-color:#0b1220 !important;display:block !important;opacity:1 !important;}
.nima-hero-avatar-anim{z-index:2 !important;display:none !important;object-fit:contain !important;object-position:center top !important;background:transparent !important;padding-top:2px !important;transform:scale(.94) translateY(6px) !important;transform-origin:center top !important;}
.nima-hero-avatar-anim.is-active{display:block !important;}
.nima-hero-avatar-video,.nima-hero-avatar-canvas{display:none !important;opacity:0 !important;visibility:hidden !important;}
.nima-hero-avatar-shade{z-index:3 !important;pointer-events:none !important;background:linear-gradient(180deg,rgba(3,6,12,.02),rgba(3,6,12,.07) 58%,rgba(4,8,18,.18) 100%) !important;}
.ai-input-panel.avatar-input-covered{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;}

/* 5.2.7 avatar larger moving state */
.nima-hero-avatar-fallback{background-position:center 12% !important;background-size:cover !important;}
.nima-hero-avatar-anim{display:block !important;object-fit:cover !important;object-position:center 12% !important;padding-top:0 !important;transform:scale(1.14) translateY(0) !important;transform-origin:center center !important;}
.nima-hero-avatar-overlay:not(.is-active) .nima-hero-avatar-anim{display:none !important;}
.nima-hero-avatar-overlay:not(.is-speaking) .nima-hero-avatar-anim.is-active{opacity:1 !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 0 -96px 0 !important;}

/* 5.2.8 avatar controller reset */
.nima-hero-stage{overflow:hidden !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 !important;border-radius:inherit !important;box-shadow:none !important;}
.nima-hero-avatar-overlay{display:none !important;align-items:stretch !important;justify-content:center !important;pointer-events:none !important;background:linear-gradient(180deg,#0a1120 0%,#0e1630 100%) !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{z-index:1 !important;background-position:center 8% !important;background-size:116% auto !important;background-repeat:no-repeat !important;background-color:#0a1120 !important;display:none !important;opacity:1 !important;}
.nima-hero-avatar-fallback.is-active{display:block !important;}
.nima-hero-avatar-fallback.is-hidden{display:none !important;}
.nima-hero-avatar-video{z-index:2 !important;display:none !important;opacity:1 !important;object-fit:cover !important;object-position:center 8% !important;background:#0a1120 !important;transform:none !important;}
.nima-hero-avatar-video.is-active{display:block !important;}
.nima-hero-avatar-anim,.nima-hero-avatar-canvas{display:none !important;visibility:hidden !important;opacity:0 !important;}
.nima-hero-avatar-shade{z-index:3 !important;pointer-events:none !important;background:linear-gradient(180deg,rgba(3,6,12,.03),rgba(3,6,12,.08) 58%,rgba(4,8,18,.16) 100%) !important;}
.ai-input-panel.avatar-input-covered{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;}


/* NIMA 5.4.5 header/avatar cleanup */
.nima-hero-stage{min-height:240px !important;border-radius:20px !important;overflow:hidden !important;background:linear-gradient(180deg,#1fd2ca 0%,#18c3c0 100%) !important;}
@media (max-width:760px){.nima-hero-stage{min-height:220px !important;}}
.nima-hero-content{position:relative !important;z-index:2 !important;opacity:1 !important;transform:none !important;pointer-events:auto !important;}
.nima-hero-avatar-overlay{display:none !important;position:absolute !important;inset:0 !important;border-radius:inherit !important;overflow:hidden !important;background:transparent !important;box-shadow:none !important;pointer-events:none !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-stage.avatar-active .nima-hero-content{opacity:0 !important;pointer-events:none !important;}
.nima-hero-stage.avatar-expanded,.nima-hero-stage.avatar-active{overflow:hidden !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:0 !important;box-shadow:none !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{background-position:center center !important;background-size:cover !important;background-repeat:no-repeat !important;background-color:#0f1628 !important;display:none !important;}
.nima-hero-avatar-fallback.is-active{display:block !important;}
.nima-hero-avatar-video{display:none !important;object-fit:cover !important;object-position:center center !important;background:#0f1628 !important;opacity:1 !important;visibility:visible !important;}
.nima-hero-avatar-video.is-active{display:block !important;}
.nima-hero-avatar-shade{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.08) 58%,rgba(0,0,0,.16) 100%) !important;}


/* 5.4.6 stable header + avatar separation */
.hero.nima-hero{background:linear-gradient(135deg,var(--turq1),var(--turq2)) !important;color:#e8f9f0 !important;padding:8px !important;border-radius:14px !important;border:1px solid #0d6d66 !important;box-shadow:var(--shadow) !important;margin-bottom:8px !important;}
.nima-hero-stage{min-height:0 !important;height:auto !important;display:flex !important;flex-direction:column !important;gap:10px !important;border-radius:12px !important;overflow:visible !important;background:transparent !important;box-shadow:none !important;}
.nima-hero-content{display:block !important;position:relative !important;z-index:2 !important;opacity:1 !important;transform:none !important;pointer-events:auto !important;padding:2px !important;}
.nima-hero-stage.avatar-active .nima-hero-content,.nima-hero-stage.avatar-expanded .nima-hero-content{opacity:1 !important;transform:none !important;pointer-events:auto !important;}
.nima-hero-avatar-overlay{display:none !important;position:relative !important;inset:auto !important;width:100% !important;min-height:188px !important;border-radius:16px !important;overflow:hidden !important;background:linear-gradient(180deg,#0c1526 0%,#121d32 100%) !important;box-shadow:0 12px 30px rgba(0,0,0,.22) !important;pointer-events:none !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-stage[data-avatar-mode="hidden"] .nima-hero-avatar-overlay,.nima-hero-stage:not(.avatar-active):not(.avatar-expanded) .nima-hero-avatar-overlay{display:none !important;}
.nima-hero-stage.avatar-active,.nima-hero-stage.avatar-expanded{overflow:visible !important;}
.nima-hero-stage.avatar-expanded .nima-hero-avatar-overlay{inset:auto !important;}
.nima-hero-avatar-fallback,.nima-hero-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
.nima-hero-avatar-fallback{background-position:center center !important;background-size:cover !important;background-repeat:no-repeat !important;background-color:#0f1628 !important;display:none !important;}
.nima-hero-avatar-fallback.is-active{display:block !important;}
.nima-hero-avatar-fallback.is-hidden{display:none !important;}
.nima-hero-avatar-video{display:none !important;object-fit:cover !important;object-position:center 18% !important;background:transparent !important;opacity:1 !important;visibility:visible !important;}
.nima-hero-avatar-video.is-active{display:block !important;}
.nima-hero-avatar-shade{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.06) 58%,rgba(0,0,0,.14) 100%) !important;}
.ai-bar,.ai-input-panel,.ai-bar > .ai-row,.ai-output-panel{visibility:visible !important;opacity:1 !important;pointer-events:auto !important;}
.nima-ki-out .nima-ki-preview-note{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);}
.nima-ki-gallery.is-video-history{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);}
@media (max-width:760px){.nima-hero-avatar-overlay{min-height:168px !important;}}


/* 5.4.11 server folder + film library */
.nima-ki-server-box{margin-top:10px;padding:12px;border:1px solid rgba(84,242,209,.18);border-radius:16px;background:rgba(255,255,255,.03);} 
.nima-ki-server-strip{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 6px}
.nima-ki-server-status{margin-top:8px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);opacity:.92}
.nima-ki-collapse{border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);overflow:hidden}
.nima-ki-collapse summary{cursor:pointer;padding:10px 12px;font-weight:800;list-style:none}
.nima-ki-collapse summary::-webkit-details-marker{display:none}
.nima-ki-collapse-body{padding:10px 12px;border-top:1px solid rgba(255,255,255,.08)}


/* 5.4.12 avatar replay + visible character tools */
.nima-hero-avatar-replay{position:absolute;right:10px;bottom:10px;z-index:4;border:1px solid rgba(255,255,255,.28);background:rgba(6,10,18,.56);color:#fff;border-radius:12px;padding:7px 11px;font-weight:800;backdrop-filter:blur(6px);display:inline-flex;align-items:center;gap:6px;}
.nima-hero-stage[data-avatar-mode="hidden"] .nima-hero-avatar-replay{display:none;}
.nima-ki-filmtools{margin-top:10px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.03);}
.nima-ki-filmtools .nima-ki-preview-title{font-weight:900;}
.nima-ki-options,.nima-ki-video-options{position:relative;z-index:2;}
.nima-ki-options .nima-ki-btn.is-active,.nima-ki-video-options .nima-ki-btn.is-active{outline:2px solid rgba(90,220,200,.55);background:rgba(90,220,200,.16);}

/* 5.4.13 visible filmtools + character box */
.nima-ki-filmtools{display:block}
.nima-ki-filmtools .nima-ki-row{align-items:center;flex-wrap:wrap}
.nima-ki-filmtools input.nima-ki-select{min-width:180px;flex:1 1 180px}
.nima-ki-filmtools .nima-ki-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}

/* 5.4.16 book-film voices */
#nimaKiBookInput{width:100%;margin-top:8px;}
#nimaKiBookSceneList{margin-top:10px;}
.nima-ki-job.done{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px;background:rgba(255,255,255,.03);}
.nima-hero-avatar-replay{display:inline-flex !important;}
.nima-hero-stage[data-avatar-mode="hidden"] .nima-hero-avatar-replay{display:inline-flex !important;}


/* 5.4.17 welcome flicker + character page cleanup */
.nima-hero-avatar-overlay{background:linear-gradient(180deg,#0c1526 0%,#121d32 100%) !important;}
.nima-hero-avatar-video{background:transparent !important;}
.nima-hero-avatar-replay{display:inline-flex !important;}
.nima-hero-stage[data-avatar-mode="hidden"] .nima-hero-avatar-replay{display:inline-flex !important;opacity:.96;}
.nima-ki-character-nav{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 10px}
.nima-ki-character-nav .nima-ki-btn{min-width:auto}
.nima-ki-character-nav .nima-ki-btn.is-active{outline:2px solid rgba(90,220,200,.55);background:rgba(90,220,200,.16)}
.nima-ki-character-section{display:none}
.nima-ki-character-section.is-active{display:block}
.nima-ki-character-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.nima-ki-character-folder-note{margin:0 0 8px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
@media (max-width:760px){
  .nima-ki-character-form{grid-template-columns:1fr}
}


/* 5.4.18 welcome avatar no-black-flicker */
.nima-hero-avatar-overlay{display:none !important;background:transparent !important;}
.nima-hero-avatar-overlay.is-active{display:flex !important;}
.nima-hero-avatar-video{opacity:0 !important;visibility:hidden !important;background:transparent !important;}
.nima-hero-avatar-video.is-active.is-ready{opacity:1 !important;visibility:visible !important;}
.nima-hero-avatar-fallback{display:none !important;}


/* === 5.5.9 hard reset top block === */
.hero.nima-top-switcher{background:transparent !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 0 10px !important;}
.nima-top-header-panel,.nima-top-avatar-panel{position:relative !important;width:100% !important;border-radius:22px !important;overflow:hidden !important;box-shadow:0 12px 30px rgba(0,0,0,.22) !important;}
.nima-top-header-panel{display:block;background:linear-gradient(180deg,#1fd2ca 0%,#18c3c0 100%) !important;padding:12px !important;}
.nima-top-header-inner{background:#041228 !important;border-radius:18px !important;min-height:196px !important;padding:18px 18px 16px !important;color:#ecf4ff !important;display:flex !important;flex-direction:column !important;justify-content:flex-start !important;gap:14px !important;}
.nima-top-header-copy h1{margin:0 0 12px !important;font-size:34px !important;line-height:1.05 !important;font-weight:900 !important;color:#f4f7ff !important;}
.nima-top-header-copy .legal{font-size:18px !important;line-height:1.35 !important;color:#eaf1fb !important;max-width:680px !important;}
.nima-top-header-inner .widgets{display:block !important;min-width:0 !important;}
.nima-top-header-inner .widgets-row{display:flex !important;gap:12px !important;flex-wrap:nowrap !important;overflow-x:auto !important;padding-bottom:2px !important;}
.nima-top-header-inner .pill,.nima-top-header-inner .btn{flex:0 0 auto !important;min-height:48px !important;border-radius:16px !important;font-size:24px !important;font-weight:900 !important;padding:10px 16px !important;}
.nima-top-header-inner .pill{display:inline-flex !important;align-items:center !important;justify-content:center !important;white-space:nowrap !important;}
.nima-top-header-inner .pill.budget{max-width:none !important;}
.nima-top-avatar-panel{display:none;background:#111827 !important;min-height:232px !important;}
.nima-top-avatar-panel.is-visible{display:block !important;}
.nima-top-avatar-media{position:relative !important;min-height:232px !important;background:#111827 !important;}
.nima-top-avatar-fallback,.nima-top-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;}
.nima-top-avatar-fallback{display:block !important;background-position:center center !important;background-size:cover !important;background-repeat:no-repeat !important;background-color:#111827 !important;z-index:1 !important;}
.nima-top-avatar-video{display:block !important;object-fit:cover !important;object-position:center center !important;background:#111827 !important;z-index:2 !important;opacity:0 !important;visibility:hidden !important;transition:opacity .18s ease !important;}
.nima-top-avatar-video.is-ready{opacity:1 !important;visibility:visible !important;}
.nima-top-avatar-shade{position:absolute !important;inset:0 !important;z-index:3 !important;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.08) 56%,rgba(0,0,0,.18) 100%) !important;pointer-events:none !important;}
.nima-top-avatar-replay{position:absolute !important;right:12px !important;bottom:12px !important;z-index:4 !important;border:1px solid rgba(255,255,255,.28) !important;background:rgba(6,10,18,.52) !important;color:#fff !important;border-radius:14px !important;padding:8px 12px !important;font-weight:800 !important;backdrop-filter:blur(6px) !important;display:inline-flex !important;align-items:center !important;}
.ai-bar{position:relative !important;z-index:5 !important;visibility:visible !important;opacity:1 !important;pointer-events:auto !important;}
@media (max-width:760px){
  .nima-top-header-panel{padding:10px !important;}
  .nima-top-header-inner{min-height:172px !important;padding:16px 16px 14px !important;}
  .nima-top-header-copy h1{font-size:28px !important;}
  .nima-top-header-copy .legal{font-size:17px !important;}
  .nima-top-header-inner .pill,.nima-top-header-inner .btn{min-height:42px !important;font-size:22px !important;padding:8px 14px !important;}
  .nima-top-avatar-panel,.nima-top-avatar-media{min-height:196px !important;}
}


/* 5.6.0 full top-area reset */
#nimaHero.nima-top-switcher{position:relative !important;display:block !important;margin-bottom:10px !important;}
#nimaHero .nima-top-header-panel,#nimaHero .nima-top-avatar-panel{position:relative !important;width:100% !important;border-radius:24px !important;overflow:hidden !important;box-shadow:0 12px 28px rgba(0,0,0,.22) !important;}
#nimaHero .nima-top-header-panel{display:block !important;background:linear-gradient(180deg,#02122d 0%,#031634 100%) !important;border:3px solid #29e4db !important;}
#nimaHero .nima-top-header-inner{padding:18px 18px 16px !important;min-height:238px !important;display:flex !important;flex-direction:column !important;justify-content:space-between !important;}
#nimaHero .nima-top-header-copy h1{font-size:44px !important;line-height:1.02 !important;margin:0 0 12px !important;}
#nimaHero .nima-top-header-copy .legal{font-size:22px !important;line-height:1.24 !important;max-width:92% !important;}
#nimaHero .nima-top-header-panel .widgets-row{flex-wrap:nowrap !important;overflow-x:auto !important;padding-bottom:2px !important;}
#nimaHero .nima-top-avatar-panel{display:none !important;background:#8fd35f !important;min-height:238px !important;}
#nimaHero .nima-top-avatar-panel.is-visible{display:block !important;}
#nimaHero .nima-top-avatar-media{position:relative !important;min-height:238px !important;background:#8fd35f !important;}
#nimaHero .nima-top-avatar-fallback,#nimaHero .nima-top-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border-radius:inherit !important;}
#nimaHero .nima-top-avatar-fallback{display:block !important;z-index:1 !important;background-color:#8fd35f !important;background-repeat:no-repeat !important;background-size:cover !important;background-position:center 4% !important;}
#nimaHero .nima-top-avatar-video{display:block !important;z-index:2 !important;background:#8fd35f !important;object-fit:cover !important;object-position:center 4% !important;opacity:0 !important;visibility:hidden !important;transition:opacity .18s ease !important;}
#nimaHero .nima-top-avatar-video.is-active.is-ready{opacity:1 !important;visibility:visible !important;}
#nimaHero .nima-top-avatar-shade{display:none !important;}
#nimaHero .nima-top-avatar-replay{display:none !important;}
#aiBar.avatar-covered-mode .ai-input-panel{display:none !important;}
#aiBar.avatar-covered-mode{margin-top:8px !important;}
#aiBar.avatar-covered-mode .ai-row:first-of-type{display:none !important;}
#aiBar.avatar-covered-mode .ai-output-panel{display:none !important;}
@media (max-width:760px){
  #nimaHero .nima-top-header-inner{min-height:190px !important;padding:16px 16px 14px !important;}
  #nimaHero .nima-top-header-copy h1{font-size:30px !important;margin-bottom:10px !important;}
  #nimaHero .nima-top-header-copy .legal{font-size:16px !important;line-height:1.28 !important;max-width:100% !important;}
  #nimaHero .nima-top-avatar-panel,#nimaHero .nima-top-avatar-media{min-height:200px !important;}
  #nimaHero .nima-top-avatar-fallback{background-position:center 3% !important;background-size:cover !important;}
  #nimaHero .nima-top-avatar-video{object-position:center 3% !important;}
}


/* 5.5.10 top block hard clean */
#nimaHero.nima-top-switcher{margin:0 0 8px !important;}
#nimaHero .nima-top-header-panel,#nimaHero .nima-top-avatar-panel{border-radius:28px !important;overflow:hidden !important;box-shadow:0 12px 28px rgba(0,0,0,.20) !important;}
#nimaHero .nima-top-header-panel{background:linear-gradient(180deg,#02122d 0%,#031634 100%) !important;border:3px solid #29e4db !important;}
#nimaHero .nima-top-header-inner{min-height:188px !important;padding:18px 18px 16px !important;}
#nimaHero .nima-top-header-copy h1{font-size:30px !important;line-height:1.04 !important;margin:0 0 14px !important;}
#nimaHero .nima-top-header-copy .legal{font-size:17px !important;line-height:1.25 !important;max-width:100% !important;}
#nimaHero .nima-top-header-panel .widgets-row{gap:18px !important;overflow-x:auto !important;flex-wrap:nowrap !important;padding-top:10px !important;}
#nimaHero .nima-top-header-panel .pill,#nimaHero .nima-top-header-panel .btn{font-size:18px !important;min-height:52px !important;border-radius:22px !important;padding:12px 18px !important;}
#nimaHero .nima-top-header-panel .budget{display:none !important;}
#nimaHero .nima-top-avatar-panel{display:none !important;background:#84d84f !important;border:none !important;min-height:188px !important;}
#nimaHero .nima-top-avatar-panel.is-visible{display:block !important;}
#nimaHero .nima-top-avatar-media{position:relative !important;min-height:188px !important;background:#84d84f !important;}
#nimaHero .nima-top-avatar-fallback{position:absolute !important;inset:0 !important;display:flex !important;align-items:flex-start !important;justify-content:center !important;z-index:1 !important;background:#84d84f !important;}
#nimaHero .nima-top-avatar-fallback-img{display:block !important;width:100% !important;height:100% !important;object-fit:contain !important;object-position:center top !important;background:#84d84f !important;}
#nimaHero .nima-top-avatar-video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;z-index:2 !important;object-fit:contain !important;object-position:center top !important;background:#84d84f !important;opacity:0 !important;visibility:hidden !important;transition:opacity .18s ease !important;display:block !important;}
#nimaHero .nima-top-avatar-video.is-active.is-ready{opacity:1 !important;visibility:visible !important;}
#nimaHero .nima-top-avatar-shade,#nimaHero .nima-top-avatar-replay{display:none !important;}
#aiBar.avatar-covered-mode .ai-input-panel,#aiBar.avatar-covered-mode #aiOutBox{display:none !important;}
#aiBar.avatar-covered-mode{margin-top:0 !important;}
@media (max-width:760px){
  #nimaHero .nima-top-header-inner{min-height:176px !important;padding:16px 16px 14px !important;}
  #nimaHero .nima-top-header-copy h1{font-size:28px !important;margin-bottom:10px !important;}
  #nimaHero .nima-top-header-copy .legal{font-size:16px !important;}
  #nimaHero .nima-top-avatar-panel,#nimaHero .nima-top-avatar-media{min-height:176px !important;}
}


/* 6.2.1 — Einheitliche Button-Größen (Nährstoffe als Vorbild) */
/* Info-Button: klein, rund, konsistent überall */
.mod-info-btn{
  width:42px !important;height:42px !important;min-width:42px !important;
  font-size:18px !important;border-width:2px !important;
  border-radius:50% !important;
  flex-shrink:0 !important;
}
@media(max-width:760px){
  .mod-info-btn{width:38px !important;height:38px !important;min-width:38px !important;font-size:16px !important}
}

/* Subtabs: einheitlich 44px, 14px */
.mod-wide-shell .subtab{min-height:44px !important;padding:9px 14px !important;font-size:14px !important}

/* KI-Subtabs: 40px, 13px */
#mod_ki .nima-ki-subtab{min-height:40px !important;padding:8px 13px !important;font-size:13px !important}

/* KI Actions Row: horizontal scrollbar ausblenden */
#nimaKiActions{overflow-x:auto !important;overflow-y:hidden !important;scrollbar-width:none !important}
#nimaKiActions::-webkit-scrollbar{display:none !important}
#nimaKiActions > *{flex-shrink:0 !important}

/* Wetter Tab Farbe */
.tab.color-wetter{border-color:rgba(14,165,233,.6)}
.tab.color-wetter.active{background:#0ea5e9;border-color:#0ea5e9;color:#082f49}


/* 6.2.3 — Senden-Button immer sichtbar */
/* KI Actions: scrollbare Row + Senden sticky rechts */
#nimaKiActionsWrap {
  display: flex !important;
  gap: 6px !important;
  align-items: center !important;
}
#nimaKiActions {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  display: flex !important;
  gap: 6px !important;
  flex-wrap: nowrap !important;
}
#nimaKiActions::-webkit-scrollbar { display: none !important; }
#nimaKiActions > * { flex-shrink: 0 !important; }

/* Senden-Button: immer rechts, niemals in der scrollenden Row */
#nimaKiSendBtn {
  flex-shrink: 0 !important;
  min-width: 70px !important;
  font-weight: 900 !important;
  z-index: 2 !important;
}
