/* ==========================================================================
   LEVYRA NOVA — Design- & Motion-Layer
   Wird als letzte Stylesheet-Schicht geladen und überschreibt nur Darstellung.
   Keine Funktion, kein Formular, keine Route wird verändert.
   Abschalten: <html data-nova> entfernen bzw. includes/nova.php → LEVYRA_NOVA=false
   ========================================================================== */

@font-face{font-family:"Nova Display";src:url("fonts/unbounded-latin-wght-normal.woff2") format("woff2");font-weight:200 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nova Display";src:url("fonts/unbounded-latin-ext-wght-normal.woff2") format("woff2");font-weight:200 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nova Text";src:url("fonts/figtree-latin-wght-normal.woff2") format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nova Text";src:url("fonts/figtree-latin-ext-wght-normal.woff2") format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- 1 · Tokens ------------------------------------------------- */
html[data-nova]{
  /* Kernpalette „Biolumen“ */
  --nv-abyss:#060714;      /* Grund – blauviolett getönt, nicht neutral */
  --nv-deep:#0b0d22;
  --nv-nebula:#14173a;     /* Flächen */
  --nv-violet:#8b74ff;     /* Marke */
  --nv-violet-2:#5f47e6;
  --nv-lume:#3ef0d4;       /* Fortschritt, „lebendes Licht“ */
  --nv-ion:#6cc7ff;
  --nv-solar:#ffc86b;      /* Meilensteine */
  --nv-ember:#ff7a9c;      /* Warnung, Anstieg */
  --nv-mist:#eef0ff;       /* Text */
  --nv-haze:#a3a9cf;       /* Sekundärtext */
  --nv-dim:#6e7499;

  --nv-surface:linear-gradient(158deg,rgba(33,37,86,.84) 0%,rgba(16,18,46,.82) 46%,rgba(10,11,30,.86) 100%);
  --nv-surface-solid:#11132f;
  --nv-line:rgba(170,160,255,.14);
  --nv-line-strong:rgba(170,160,255,.28);
  --nv-glow-v:0 0 0 1px rgba(139,116,255,.22),0 18px 60px -18px rgba(95,71,230,.55);
  --nv-glow-l:0 0 0 1px rgba(62,240,212,.25),0 18px 60px -20px rgba(62,240,212,.45);
  --nv-shadow:0 30px 80px -30px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.055);
  --nv-spot:radial-gradient(520px circle at var(--mx,50%) var(--my,-30%),rgba(139,116,255,.16),transparent 42%);
  --nv-grad-brand:linear-gradient(118deg,#9d86ff 0%,#6a52f0 45%,#3ec9e0 100%);
  --nv-grad-lume:linear-gradient(90deg,#3ef0d4,#6cc7ff 60%,#8b74ff);
  --nv-grad-text:linear-gradient(180deg,#ffffff 10%,#c9c3ff 120%);

  --nv-display:"Nova Display","Unbounded",ui-sans-serif,system-ui,sans-serif;
  --nv-body:"Nova Text","Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;

  --nv-r-xl:28px;--nv-r-l:22px;--nv-r-m:16px;--nv-r-s:12px;
  --nv-ease:cubic-bezier(.2,.8,.2,1);
  --nv-spring:cubic-bezier(.34,1.56,.64,1);

  /* Legacy-Tokens aller bisherigen Schichten auf NOVA umleiten */
  --bg:var(--nv-abyss);--panel:#0f1130;--panel2:#141739;--line:var(--nv-line);--text:var(--nv-mist);--muted:var(--nv-haze);--purple:var(--nv-violet);--mint:var(--nv-lume);
  --levyra-mint:rgba(62,240,212,.12);--levyra-glow:rgba(139,116,255,.18);
  --ck-panel:rgba(16,18,46,.6);--ck-panel-2:rgba(24,27,64,.55);--ck-line:var(--nv-line);--ck-line-soft:rgba(170,160,255,.08);--ck-text:var(--nv-mist);--ck-muted:var(--nv-haze);--ck-label:#b7acff;--ck-up:var(--nv-ember);--ck-down:var(--nv-lume);--ck-accent:var(--nv-violet);--ck-font:var(--nv-body);
  --lvn-bg:#0a0c22;--lvn-bg2:#11143a;--lvn-line:var(--nv-line);--lvn-line2:rgba(170,160,255,.07);--lvn-text:var(--nv-mist);--lvn-muted:var(--nv-haze);--lvn-label:#b7acff;--lvn-acc:var(--nv-grad-brand);--lvn-glass:rgba(9,10,28,.86);--lvn-font:var(--nv-body);
  --lvf-bg:var(--nv-abyss);--lvf-text:var(--nv-mist);--lvf-muted:var(--nv-haze);--lvf-line:var(--nv-line);--lvf-mint:var(--nv-lume);--lvf-lav:#b7acff;--lvf-font:var(--nv-body);--lvf-head:var(--nv-display);
  color-scheme:dark;
  scrollbar-color:rgba(139,116,255,.45) transparent;
}
html[data-nova][data-theme="light"]{
  --nv-abyss:#f2f3fb;--nv-deep:#e8eaf8;--nv-nebula:#ffffff;
  --nv-violet:#5b45d6;--nv-violet-2:#4430c0;--nv-lume:#008f7d;--nv-ion:#1c7fc4;--nv-solar:#b8740a;--nv-ember:#d43d63;
  --nv-mist:#141633;--nv-haze:#53587a;--nv-dim:#7c809e;
  --nv-surface:linear-gradient(158deg,rgba(255,255,255,.92),rgba(247,248,255,.86));
  --nv-surface-solid:#ffffff;
  --nv-line:rgba(70,60,170,.13);--nv-line-strong:rgba(70,60,170,.26);
  --nv-shadow:0 24px 60px -32px rgba(40,34,110,.35),inset 0 1px 0 #fff;
  --nv-spot:radial-gradient(520px circle at var(--mx,50%) var(--my,-30%),rgba(91,69,214,.08),transparent 42%);
  --nv-grad-text:linear-gradient(180deg,#141633 30%,#4b3aa8 130%);
  --bg:var(--nv-abyss);--panel:#fff;--panel2:#f6f7fd;--text:var(--nv-mist);--muted:var(--nv-haze);
  --ck-panel:rgba(255,255,255,.88);--ck-panel-2:#f6f7fd;--ck-text:var(--nv-mist);--ck-muted:var(--nv-haze);--ck-label:#5b45d6;
  --lvn-bg:#ffffff;--lvn-bg2:#f4f5fc;--lvn-text:var(--nv-mist);--lvn-muted:var(--nv-haze);--lvn-label:#5b45d6;--lvn-glass:rgba(255,255,255,.9);
  color-scheme:light;
}

/* ---------- 2 · Basis -------------------------------------------------- */
html[data-nova] body{
  background:
    radial-gradient(1100px 700px at 8% -10%,rgba(95,71,230,.28),transparent 60%),
    radial-gradient(900px 700px at 105% 110%,rgba(62,240,212,.12),transparent 60%),
    var(--nv-abyss)!important;
  background-attachment:fixed!important;
  color:var(--nv-mist);
  font-family:var(--nv-body)!important;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
html[data-nova][data-theme="light"] body{
  background:
    radial-gradient(1100px 700px at 8% -10%,rgba(91,69,214,.13),transparent 60%),
    radial-gradient(900px 700px at 105% 110%,rgba(0,143,125,.09),transparent 60%),
    var(--nv-abyss)!important;
}
html[data-nova] body :where(p,span,a,li,td,th,dd,dt,label,small,em,input,select,textarea,button,summary,b,strong,div,section,article,header,nav,footer,figcaption,legend,option){font-family:var(--nv-body)}
html[data-nova] body :is(button,input,select,textarea){font-family:var(--nv-body)!important}
html[data-nova] body :is(h1,h2){font-family:var(--nv-display)!important;font-weight:600;letter-spacing:-.025em}
html[data-nova] body h3{font-family:var(--nv-body)!important;font-weight:750;letter-spacing:-.01em}
/* Unbounded läuft breit: lange Headlines (Wissen, SEO-Seiten) begrenzen */
html[data-nova] main h1{font-size:clamp(30px,4.6vw,66px)!important;line-height:1.05!important;text-wrap:balance}
html[data-nova] main h2{text-wrap:balance}
html[data-nova] body h1{font-weight:650}
html[data-nova] ::selection{background:rgba(139,116,255,.45);color:#fff}
html[data-nova] :focus-visible{outline:2px solid var(--nv-lume)!important;outline-offset:3px!important;border-radius:10px}
html[data-nova] ::-webkit-scrollbar{width:10px;height:10px}
html[data-nova] ::-webkit-scrollbar-thumb{background:linear-gradient(var(--nv-violet),var(--nv-violet-2));border-radius:99px;border:3px solid transparent;background-clip:padding-box}
html[data-nova] ::-webkit-scrollbar-track{background:transparent}

/* alte Hintergrund-Orbs ersetzt der lebende Himmel */
html[data-nova] .orb{display:none!important}

/* ---------- 3 · Lebender Himmel + Korn -------------------------------- */
#nv-sky{position:fixed;inset:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.6s var(--nv-ease)}
#nv-sky.on{opacity:1}
html[data-nova][data-theme="light"] #nv-sky{mix-blend-mode:multiply;opacity:.0}
html[data-nova][data-theme="light"] #nv-sky.on{opacity:.55}
html[data-nova] body::after{content:"";position:fixed;inset:-50%;z-index:-1;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
html[data-nova][data-theme="light"] body::after{opacity:.035}

/* Cursor-Licht (nur Desktop) */
#nv-cursor{position:fixed;left:0;top:0;width:420px;height:420px;margin:-210px 0 0 -210px;border-radius:50%;pointer-events:none;z-index:-1;
  background:radial-gradient(circle,rgba(139,116,255,.13),rgba(62,240,212,.05) 40%,transparent 68%);transform:translate3d(-999px,-999px,0);transition:opacity .4s;mix-blend-mode:screen}
html[data-nova][data-theme="light"] #nv-cursor{mix-blend-mode:multiply;background:radial-gradient(circle,rgba(91,69,214,.07),transparent 65%)}

/* Seitenwechsel: native View Transitions (Chromium, Safari 18.2+) */
@view-transition{navigation:auto}
html[data-nova] .app-topbar,html[data-nova] .lvn-top{view-transition-name:nv-top}
html[data-nova] .lvn-dock{view-transition-name:nv-dock}
::view-transition-old(root){animation:nv-vt-out .32s var(--nv-ease) both}
::view-transition-new(root){animation:nv-vt-in .55s var(--nv-ease) both}
@keyframes nv-vt-out{to{opacity:0;transform:scale(.985);filter:blur(6px)}}
@keyframes nv-vt-in{from{opacity:0;transform:translateY(14px) scale(1.01);filter:blur(8px)}}

/* ---------- 4 · Navigation ------------------------------------------- */
html[data-nova] .app-topbar.lvn-top,html[data-nova] header.lvn-top{
  background:linear-gradient(180deg,rgba(8,9,26,.86),rgba(8,9,26,.62))!important;
  backdrop-filter:blur(22px) saturate(160%)!important;-webkit-backdrop-filter:blur(22px) saturate(160%)!important;
  border-bottom:1px solid transparent!important;
  border-image:linear-gradient(90deg,transparent,rgba(139,116,255,.5),rgba(62,240,212,.45),transparent) 1!important;
}
html[data-nova][data-theme="light"] .app-topbar.lvn-top{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.72))!important}
html[data-nova] .app-wordmark,html[data-nova] .lvs-wordmark{font-family:var(--nv-display)!important;font-weight:700!important;letter-spacing:.2em!important;
  background:linear-gradient(100deg,var(--nv-mist) 0 40%,#bfb4ff 55%,var(--nv-lume) 70%,var(--nv-mist) 85%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:nv-sheen 9s ease-in-out infinite}
html[data-nova] .app-wordmark span,html[data-nova] .lvs-wordmark span{color:inherit!important;-webkit-text-fill-color:transparent}
@keyframes nv-sheen{0%,100%{background-position:100% 0}50%{background-position:0 0}}
html[data-nova] .lvn-tab-btn{font-weight:650!important;letter-spacing:.005em;position:relative;border-radius:12px!important;transition:color .25s,background .25s!important}
html[data-nova] .lvn-tab-btn:hover{background:rgba(139,116,255,.1)!important}
html[data-nova] .lvn-tab.is-current>.lvn-tab-btn::after{content:"";position:absolute;left:14%;right:14%;bottom:-2px;height:3px;border-radius:3px;background:var(--nv-grad-lume);box-shadow:0 0 14px var(--nv-lume),0 0 2px var(--nv-lume)}
html[data-nova] .lvn-panel{border-radius:0 0 var(--nv-r-xl) var(--nv-r-xl)!important;background:linear-gradient(180deg,rgba(12,13,36,.97),rgba(9,10,28,.97))!important;border:1px solid var(--nv-line)!important;box-shadow:0 40px 90px -20px rgba(0,0,0,.8),0 0 0 1px rgba(139,116,255,.06)!important}
html[data-nova][data-theme="light"] .lvn-panel{background:rgba(255,255,255,.98)!important}
html[data-nova] .lvn-tile a{border-radius:var(--nv-r-m)!important;transition:transform .35s var(--nv-spring),background .25s,box-shadow .25s!important}
html[data-nova] .lvn-tile a:hover{transform:translateY(-2px);background:rgba(139,116,255,.1)!important;box-shadow:var(--nv-glow-v)}
html[data-nova] .lvn-tile .ic{border-radius:14px!important;background:linear-gradient(140deg,rgba(139,116,255,.28),rgba(62,240,212,.14))!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
html[data-nova] .lvn-act{border-radius:14px!important;transition:transform .3s var(--nv-spring),background .2s!important}
html[data-nova] .lvn-act:hover{transform:translateX(3px);background:rgba(62,240,212,.09)!important}
html[data-nova] .lvn-import-direct{border-radius:999px!important;background:rgba(139,116,255,.12)!important;border-color:rgba(139,116,255,.45)!important}
html[data-nova] .lvn-search,html[data-nova] [class*="lvn-profile"]:is(button,a,summary){border-radius:999px!important}

/* Mobile-Dock als schwebende Glas-Kapsel */
html[data-nova] .lvn-dock{left:12px!important;right:12px!important;bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;border-radius:26px!important;
  background:rgba(10,11,30,.78)!important;backdrop-filter:blur(22px) saturate(170%)!important;-webkit-backdrop-filter:blur(22px) saturate(170%)!important;
  border:1px solid var(--nv-line-strong)!important;box-shadow:0 20px 50px -10px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.07)!important}
html[data-nova][data-theme="light"] .lvn-dock{background:rgba(255,255,255,.86)!important}
html[data-nova] .lvn-dock a.is-active{color:var(--nv-lume)!important}
html[data-nova] .lvn-dock a.is-active i{filter:drop-shadow(0 0 8px var(--nv-lume))}
html[data-nova] .lvn-dock-plus{position:relative;background:var(--nv-grad-brand)!important;color:#fff!important;border:0!important;box-shadow:0 10px 30px -6px rgba(95,71,230,.8)!important;isolation:isolate}
html[data-nova] .lvn-dock-plus::before{content:"";position:absolute;inset:-4px;border-radius:inherit;z-index:-1;background:conic-gradient(from var(--nv-a,0deg),transparent 0 60%,var(--nv-lume) 80%,transparent);animation:nv-spin 4s linear infinite;filter:blur(3px)}
@property --nv-a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes nv-spin{to{--nv-a:360deg}}

/* ---------- 5 · Cockpit (Dashboard & Login-Bereich) -------------------- */
html[data-nova] .ck-head h1{font-size:clamp(32px,4.6vw,58px)!important;line-height:1.02!important;
  background:linear-gradient(100deg,var(--nv-mist) 0 42%,#cfc6ff 50%,var(--nv-lume) 56%,var(--nv-mist) 64%);background-size:300% 100%;background-position:100% 0;
  -webkit-background-clip:text;background-clip:text;color:transparent!important;animation:nv-title-sweep 2.4s .35s var(--nv-ease) both}
@keyframes nv-title-sweep{from{background-position:100% 0}to{background-position:0 0}}
html[data-nova] .ck-eyebrow{color:var(--nv-lume)!important;font-weight:700!important;letter-spacing:.04em!important}
html[data-nova] .ck-sub{color:var(--nv-haze)!important}

html[data-nova] .ck-kpis{gap:12px!important;border:0!important;background:transparent!important;overflow:visible!important}
html[data-nova] .ck-kpi{position:relative;border:1px solid var(--nv-line)!important;border-radius:var(--nv-r-l)!important;
  background:var(--nv-spot),var(--nv-surface)!important;box-shadow:var(--nv-shadow)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  overflow:hidden;transition:transform .45s var(--nv-spring),box-shadow .35s,border-color .35s!important}
html[data-nova] .ck-kpi:hover{transform:translateY(-4px);border-color:var(--nv-line-strong)!important;box-shadow:var(--nv-shadow),var(--nv-glow-v)!important}
html[data-nova] .ck-kpi>span{color:var(--nv-haze)!important;font-weight:600!important}
html[data-nova] .ck-kpi b{font-family:var(--nv-display)!important;font-weight:600!important;font-size:clamp(24px,2.3vw,34px)!important;letter-spacing:-.03em!important;font-variant-numeric:tabular-nums;
  background:var(--nv-grad-text);-webkit-background-clip:text;background-clip:text;color:transparent!important}
html[data-nova] .ck-kpi b small{-webkit-text-fill-color:var(--nv-haze);font-family:var(--nv-body)!important;font-size:.42em!important;font-weight:700!important;margin-left:4px;letter-spacing:0}
html[data-nova] .ck-kpi b.is-down{background:var(--nv-grad-lume);-webkit-background-clip:text;background-clip:text}
html[data-nova] .ck-kpi b.is-up{background:linear-gradient(90deg,var(--nv-ember),var(--nv-solar));-webkit-background-clip:text;background-clip:text}
html[data-nova] .ck-kpi-goal{border-color:rgba(62,240,212,.3)!important}
html[data-nova] .ck-kpi-goal b{background:var(--nv-grad-lume);-webkit-background-clip:text;background-clip:text}
html[data-nova] .ck-bar{height:6px!important;border-radius:99px!important;background:rgba(255,255,255,.07)!important;overflow:hidden}
html[data-nova] .ck-bar u{border-radius:inherit!important;background:var(--nv-grad-lume)!important;box-shadow:0 0 12px rgba(62,240,212,.6);position:relative;overflow:hidden;display:block}
html[data-nova] .ck-bar u::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);transform:translateX(-100%);animation:nv-shimmer 2.8s 1.2s ease-in-out infinite}
@keyframes nv-shimmer{60%,100%{transform:translateX(100%)}}

html[data-nova] .ck-panel,html[data-nova] .ck-health .card.ck-panel{
  border:1px solid var(--nv-line)!important;border-radius:var(--nv-r-xl)!important;
  background:var(--nv-spot),var(--nv-surface)!important;
  box-shadow:var(--nv-shadow)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  transition:border-color .4s,box-shadow .4s!important}
html[data-nova] .ck-panel:hover{border-color:var(--nv-line-strong)!important}
html[data-nova] .ck-ph span{color:#b7acff!important;font-weight:700!important;letter-spacing:.06em!important}
html[data-nova][data-theme="light"] .ck-ph span{color:var(--nv-violet)!important}
html[data-nova] .ck-ph h2{font-size:clamp(17px,1.4vw,21px)!important}
html[data-nova] .ck-ph a,html[data-nova] .ck-link{color:var(--nv-lume)!important;font-weight:700!important;text-decoration:none!important;transition:letter-spacing .3s var(--nv-ease)}
html[data-nova] .ck-ph a:hover{letter-spacing:.02em}
html[data-nova] .ck-stats{border-radius:var(--nv-r-m)!important;border-color:var(--nv-line)!important;background:rgba(255,255,255,.025)!important;overflow:hidden}
html[data-nova] .ck-stats dd{font-family:var(--nv-display)!important;font-weight:550!important;font-size:15px!important;letter-spacing:-.02em}
html[data-nova] .is-down,html[data-nova] .down{color:var(--nv-lume)}
html[data-nova] .is-up,html[data-nova] .up{color:var(--nv-ember)}

/* Pulse: unverändert, nur mehr Strahlkraft */
html[data-nova] .ck-pulse{position:relative}
html[data-nova] .ck-pulse::before{content:"";position:absolute;inset:6%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(139,116,255,.28),rgba(62,240,212,.08) 55%,transparent 70%)}
html[data-nova] .ck-pulse svg{position:relative;overflow:visible}
html[data-nova] .ck-pulse-panel{background:radial-gradient(420px circle at 50% 42%,rgba(139,116,255,.2),transparent 60%),var(--nv-surface)!important}

/* ---------- 6 · Universelle Komponenten (alle Altseiten) -------------- */
html[data-nova] main :is(.card,.panel,.box,.tile,.widget,.stat,.metric,[class$="-card"],[class*="-card "]):not(.lvn-tile):not(.ck-panel):not(.ck-kpi):not([class*="lvn-"]){
  border-color:var(--nv-line)!important;border-radius:var(--nv-r-l)!important;
  background:var(--nv-spot),var(--nv-surface)!important;box-shadow:var(--nv-shadow)!important}

html[data-nova] :is(.btn,button.btn,a.btn,.button,.ac-btn,.lvs-start,.lv-btn,.cta):not(.ghost):not(.alt):not(.secondary){
  position:relative;overflow:hidden;isolation:isolate;
  background:var(--nv-grad-brand)!important;background-size:160% 100%!important;color:#fff!important;border:0!important;border-radius:999px!important;
  font-weight:750!important;letter-spacing:.01em;box-shadow:0 12px 32px -12px rgba(95,71,230,.9),inset 0 1px 0 rgba(255,255,255,.25)!important;
  transition:transform .35s var(--nv-spring),box-shadow .35s,background-position .6s var(--nv-ease)!important}
html[data-nova] :is(.btn,.button,.ac-btn,.lvs-start,.lv-btn,.cta):not(.ghost):not(.alt):not(.secondary):hover{transform:translateY(-2px);background-position:100% 0!important;box-shadow:0 18px 40px -12px rgba(95,71,230,1),0 0 0 4px rgba(139,116,255,.15),inset 0 1px 0 rgba(255,255,255,.3)!important}
html[data-nova] :is(.btn,.button):not(.ghost):active{transform:translateY(0) scale(.97)}
html[data-nova]:not([data-theme="light"]) :is(.ck-ghost,.btn.ghost,.ghost,.btn.alt,.secondary,.lvs-login){
  border:1px solid var(--nv-line-strong)!important;background:rgba(139,116,255,.07)!important;color:var(--nv-mist)!important;border-radius:999px!important;
  backdrop-filter:blur(10px);transition:transform .35s var(--nv-spring),background .25s,border-color .25s!important}
html[data-nova]:not([data-theme="light"]) :is(.ck-ghost,.btn.ghost,.ghost,.lvs-login):hover{transform:translateY(-2px);background:rgba(139,116,255,.16)!important;border-color:rgba(139,116,255,.6)!important}

html[data-nova] main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]),select,textarea),
html[data-nova] .entry-modal :is(input,select,textarea){
  background:rgba(6,7,22,.55)!important;border:1px solid var(--nv-line-strong)!important;border-radius:14px!important;color:var(--nv-mist)!important;
  transition:border-color .25s,box-shadow .25s,background .25s!important}
html[data-nova][data-theme="light"] main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea),
html[data-nova][data-theme="light"] .entry-modal :is(input,select,textarea){background:#fff!important}
html[data-nova] main :is(input,select,textarea):focus,html[data-nova] .entry-modal :is(input,select,textarea):focus{
  border-color:var(--nv-lume)!important;box-shadow:0 0 0 4px rgba(62,240,212,.14),0 0 24px -4px rgba(62,240,212,.4)!important;outline:none!important}
html[data-nova] input[type=checkbox],html[data-nova] input[type=radio],html[data-nova] input[type=range]{accent-color:var(--nv-violet)}

html[data-nova] main table{border-collapse:separate!important;border-spacing:0!important}
html[data-nova] main table th{color:#b7acff!important;font-weight:700!important;font-size:12px;letter-spacing:.04em;border-bottom:1px solid var(--nv-line-strong)!important}
html[data-nova][data-theme="light"] main table th{color:var(--nv-violet)!important}
html[data-nova] main table td{border-bottom:1px solid var(--nv-line)!important}
html[data-nova] main table tbody tr{transition:background .2s}
html[data-nova] main table tbody tr:hover{background:rgba(139,116,255,.07)!important}
/* automatische Datenbalken (nova.js) */
html[data-nova] td.nv-databar{background-image:linear-gradient(90deg,rgba(139,116,255,.20),rgba(62,240,212,.14));background-repeat:no-repeat;background-size:0% 62%;background-position:0 50%;transition:background-size 1.2s var(--nv-ease)}
html[data-nova] td.nv-databar.nv-in{background-size:var(--nv-bar,0%) 62%}

html[data-nova] .tag,html[data-nova] .pill,html[data-nova] [class*="-pill"]:not(.lvn-pill){border-radius:999px!important}
html[data-nova] .tag{color:var(--nv-lume)!important;font-weight:700!important}

/* Quick-Add-Modal, Sheets, Toasts */
html[data-nova] .entry-modal-sheet,html[data-nova] .pwa-install-sheet section,html[data-nova] .push-onboarding section,html[data-nova] .lvn-sheet,html[data-nova] .lvn-plus-sheet,html[data-nova] .lvn-pal-in{
  background:linear-gradient(165deg,rgba(26,29,72,.96),rgba(10,11,30,.97))!important;border:1px solid var(--nv-line-strong)!important;border-radius:var(--nv-r-xl)!important;
  box-shadow:0 50px 120px -20px rgba(0,0,0,.85),0 0 0 1px rgba(139,116,255,.1),0 0 80px -30px rgba(139,116,255,.6)!important}
html[data-nova][data-theme="light"] :is(.entry-modal-sheet,.lvn-sheet,.lvn-plus-sheet,.lvn-pal-in,.pwa-install-sheet section,.push-onboarding section){background:rgba(255,255,255,.98)!important}
html[data-nova] .entry-modal[aria-hidden="false"] .entry-modal-sheet,html[data-nova] .entry-modal.open .entry-modal-sheet,html[data-nova] .entry-modal.is-open .entry-modal-sheet{animation:nv-pop .55s var(--nv-spring) both}
@keyframes nv-pop{from{opacity:0;transform:translateY(24px) scale(.94)}}
html[data-nova] .entry-quick-types button{border-radius:var(--nv-r-m)!important;transition:transform .35s var(--nv-spring),box-shadow .3s,border-color .3s!important}
html[data-nova] .entry-quick-types button:hover{transform:translateY(-3px);box-shadow:var(--nv-glow-l)}
html[data-nova] .toast{border-radius:18px!important;background:linear-gradient(120deg,rgba(18,40,52,.96),rgba(26,22,70,.96))!important;border:1px solid rgba(62,240,212,.4)!important;
  color:var(--nv-mist)!important;box-shadow:0 20px 50px -10px rgba(0,0,0,.6),0 0 40px -10px rgba(62,240,212,.5)!important;animation:nv-toast .7s var(--nv-spring) both}
@keyframes nv-toast{from{opacity:0;transform:translateY(30px) scale(.9)}}

/* Footer */
html[data-nova] .app-footer{border-top:1px solid transparent!important;border-image:linear-gradient(90deg,transparent,var(--nv-line-strong),transparent) 1!important;background:transparent!important}
html[data-nova] .app-footer-claim{font-family:var(--nv-display)!important;letter-spacing:.14em!important;background:var(--nv-grad-lume);-webkit-background-clip:text;background-clip:text;color:transparent!important}
html[data-nova] .app-global-share{border-radius:999px!important;border:1px solid var(--nv-line)!important;background:linear-gradient(90deg,rgba(139,116,255,.12),rgba(62,240,212,.06))!important}

/* ---------- 7 · Bewegung (von nova.js gesteuert) ----------------------- */
html[data-nova].nv-js .nv-reveal{opacity:0;transform:translateY(22px)}
html[data-nova].nv-js .nv-reveal.nv-in{opacity:1;transform:none;transition:opacity .8s var(--nv-ease),transform .9s var(--nv-ease);transition-delay:var(--nv-d,0ms)}
.nv-tilt{transform-style:preserve-3d;will-change:transform}
.nv-ripple{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(255,255,255,0) 70%);transform:scale(0);animation:nv-ripple .7s var(--nv-ease) forwards;z-index:0}
@keyframes nv-ripple{to{transform:scale(1);opacity:0}}
.nv-burst{position:fixed;inset:0;pointer-events:none;z-index:2147483000}
.nv-num{font-variant-numeric:tabular-nums}

/* Motion-Schalter im Menü */
.nv-motion-toggle{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:7px 12px 7px 8px;border-radius:999px;border:1px solid var(--nv-line-strong);background:rgba(139,116,255,.08);color:var(--nv-haze);font:700 11px/1 var(--nv-body);cursor:pointer;transition:background .25s,color .25s;justify-self:start;width:max-content}
.nv-motion-toggle:hover{background:rgba(139,116,255,.18);color:var(--nv-mist)}
.nv-motion-toggle i{width:14px;height:14px;border-radius:50%;background:var(--nv-grad-lume);box-shadow:0 0 10px var(--nv-lume);font-style:normal}
html[data-motion="off"] .nv-motion-toggle i{background:var(--nv-dim);box-shadow:none}

/* ---------- 8 · Admin Control Center -------------------------------- */
html[data-nova] .ac-shell{background:transparent!important}
html[data-nova] .ac-side{background:linear-gradient(180deg,rgba(12,13,36,.92),rgba(7,8,22,.92))!important;border-right:1px solid var(--nv-line)!important;backdrop-filter:blur(18px)}
html[data-nova] .ac-logo>span{color:transparent!important;background:var(--nv-grad-lume);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 12px rgba(62,240,212,.5))}
html[data-nova] .ac-logo b{font-family:var(--nv-display)!important;letter-spacing:.18em!important}
html[data-nova] .ac-logo small{color:var(--nv-lume)!important}
html[data-nova] .ac-side nav a{border-radius:12px!important;transition:background .2s,transform .3s var(--nv-spring),color .2s!important;border:1px solid transparent!important}
html[data-nova] .ac-side nav a:hover{background:rgba(139,116,255,.1)!important;transform:translateX(3px);color:#fff!important}
html[data-nova] .ac-side nav a.on{background:linear-gradient(90deg,rgba(139,116,255,.26),rgba(62,240,212,.08))!important;border-color:rgba(139,116,255,.4)!important;box-shadow:0 0 30px -8px rgba(139,116,255,.55)!important}
html[data-nova] .ac-side nav a em{background:rgba(62,240,212,.14)!important;border-color:rgba(62,240,212,.4)!important;color:var(--nv-lume)!important}
html[data-nova] .ac-head h1{font-size:clamp(26px,3vw,40px)!important;background:var(--nv-grad-text);-webkit-background-clip:text;background-clip:text;color:transparent!important}
html[data-nova] .ac-kicker{color:var(--nv-lume)!important}
html[data-nova] :is(.ac-kpi,.ac-card){border:1px solid var(--nv-line)!important;border-radius:var(--nv-r-l)!important;background:var(--nv-spot),var(--nv-surface)!important;box-shadow:var(--nv-shadow)!important;transition:transform .45s var(--nv-spring),border-color .3s!important}
html[data-nova] .ac-kpi:hover{transform:translateY(-3px);border-color:var(--nv-line-strong)!important}
html[data-nova] .ac-kpi :is(strong,b,.v,.val){font-family:var(--nv-display)!important;letter-spacing:-.03em}
html[data-nova][data-theme="light"] .ac-side{background:rgba(255,255,255,.92)!important}
html[data-nova][data-theme="light"] .ac-side nav a{color:var(--nv-haze)!important}
html[data-nova][data-theme="light"] .ac-side nav a.on{color:var(--nv-mist)!important}

/* ---------- 9 · Öffentliche Seiten ----------------------------------- */
html[data-nova] .lvs-header{background:rgba(7,8,22,.72)!important;backdrop-filter:blur(20px) saturate(160%)!important;-webkit-backdrop-filter:blur(20px) saturate(160%)!important;border-bottom:1px solid transparent!important;border-image:linear-gradient(90deg,transparent,rgba(139,116,255,.45),rgba(62,240,212,.4),transparent) 1!important}
html[data-nova][data-theme="light"] .lvs-header{background:rgba(255,255,255,.85)!important}
html[data-nova] .lvs-menu a{position:relative;transition:color .2s}
html[data-nova] .lvs-menu a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:var(--nv-grad-lume);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--nv-ease)}
html[data-nova] .lvs-menu a:hover::after,html[data-nova] .lvs-menu a[aria-current]::after{transform:scaleX(1)}

/* ---------- 10 · Weniger Bewegung -------------------------------------- */
@media (prefers-reduced-motion:reduce){
  html[data-nova] *,html[data-nova] *::before,html[data-nova] *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  #nv-sky,#nv-cursor,.nv-motion-toggle{display:none!important}
  .nv-kv,.nv-kv *,.nv-rb-now,.nv-rb-mid{animation:none!important;opacity:1!important;stroke-dashoffset:0!important}
  html[data-nova].nv-js .nv-reveal{opacity:1;transform:none;filter:none}
}
html[data-motion="off"] #nv-sky,html[data-motion="off"] #nv-cursor{display:none!important}
html[data-motion="off"].nv-js .nv-reveal{opacity:1!important;transform:none!important;filter:none!important}
html[data-motion="off"] :is(.app-wordmark,.lvs-wordmark,.ck-bar u,.ck-head h1){animation:none!important}
html[data-motion="off"] .ck-head h1{background-position:0 0}
html[data-motion="off"] .lvn-dock-plus::before,html[data-motion="off"] .ck-bar u::after{animation:none!important;display:none}
html[data-motion="off"] ::view-transition-group(*),html[data-motion="off"] ::view-transition-old(*),html[data-motion="off"] ::view-transition-new(*){animation:none!important}

/* ---------- 11 · Zündung (Intro, einmal pro Sitzung) ------------------- */
.nv-intro{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;align-content:center;gap:18px;background:radial-gradient(600px circle at 50% 50%,#17123f,#060714 70%);cursor:pointer;transition:opacity .8s var(--nv-ease),filter .8s var(--nv-ease),transform .8s var(--nv-ease)}
.nv-intro.out{opacity:0;filter:blur(14px);transform:scale(1.08);pointer-events:none}
.nv-intro-word{display:flex;gap:.18em;font:700 clamp(40px,9vw,110px)/1 var(--nv-display);color:#fff;letter-spacing:.06em}
.nv-intro-word span{display:inline-block;opacity:0;transform:translateY(40%) scale(.6);filter:blur(16px);animation:nv-letter .9s calc(var(--i)*70ms) var(--nv-spring) forwards;background:linear-gradient(180deg,#fff,#b9adff);-webkit-background-clip:text;background-clip:text;color:transparent}
.nv-intro-word span:nth-child(n+5){background:linear-gradient(180deg,#bffff3,#3ef0d4);-webkit-background-clip:text;background-clip:text}
@keyframes nv-letter{to{opacity:1;transform:none;filter:none}}
.nv-intro-sub{font:600 14px/1 var(--nv-body);color:#a3a9cf;letter-spacing:.24em;opacity:0;animation:nv-fade .8s .6s forwards}
@keyframes nv-fade{to{opacity:1}}
.nv-intro-ring{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;border:2px solid rgba(62,240,212,.8);box-shadow:0 0 40px rgba(62,240,212,.6),inset 0 0 30px rgba(139,116,255,.6);animation:nv-ring 1.5s var(--nv-ease) forwards}
@keyframes nv-ring{0%{transform:scale(.2);opacity:0}25%{opacity:1}100%{transform:scale(40);opacity:0}}

/* ---------- 12 · Journey-Band (gerade Fortschrittslinie Start → Heute → Ziel) */
.nv-ribbon{position:relative;margin:4px 0 22px;padding:26px 4px 0;height:84px}
.nv-rb-track{position:absolute;left:4px;right:4px;top:26px;height:8px;border-radius:99px;background:rgba(170,160,255,.16);box-shadow:inset 0 0 0 1px rgba(170,160,255,.12)}
html[data-nova][data-theme="light"] .nv-rb-track{background:rgba(70,60,170,.12)}
.nv-rb-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:inherit;background:var(--nv-grad-lume);box-shadow:0 0 14px rgba(62,240,212,.45);transition:width 1.6s var(--nv-ease)}
.nv-ribbon.nv-go .nv-rb-fill{width:var(--p)}
.nv-rb-tick{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--nv-deep);border:2px solid var(--nv-line-strong)}
.nv-rb-tick.on{background:var(--nv-solar);border-color:#fff3d6;box-shadow:0 0 10px rgba(255,200,107,.7)}
.nv-rb-comet{position:absolute;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:#fff;border:4px solid var(--nv-lume);box-shadow:0 0 16px rgba(62,240,212,.8);transform:scale(0);transition:transform .6s 1.2s var(--nv-spring)}
.nv-ribbon.nv-go .nv-rb-comet{transform:scale(1)}
.nv-rb-comet::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:2px solid var(--nv-lume);opacity:0;animation:nv-halo2 2.4s 2s ease-out infinite}
.nv-rb-l{position:absolute;top:46px;display:grid;gap:3px;font-size:12px;font-weight:600;color:var(--nv-haze);line-height:1.1;white-space:nowrap}
.nv-rb-l b{font:600 clamp(14px,1.3vw,17px)/1.1 var(--nv-display);color:var(--nv-mist);letter-spacing:-.02em}
.nv-rb-start{left:4px}.nv-rb-goal{right:4px;text-align:right}
.nv-rb-goal b{color:var(--nv-lume)}
.nv-rb-mid{transform:translateX(-50%);text-align:center}
.nv-rb-mid b{color:var(--nv-lume)}
@media(max-width:560px){.nv-rb-mid{top:-2px}.nv-rb-mid small{display:none}.nv-ribbon{padding-top:30px;height:90px}.nv-rb-track{top:30px}.nv-rb-l:not(.nv-rb-mid){top:50px}}
html[data-nv-lite] .nv-rb-comet::after{animation:none}
html[data-nv-lite] .nv-rb-fill{box-shadow:none}

/* ---------- 13 · KPI-Mikrovisualisierung ----------------------------- */
.nv-kv{position:absolute;right:14px;top:14px;display:block;pointer-events:none;opacity:0;animation:nv-fade .8s 1.1s forwards}
.nv-kv svg{display:block;width:100%;height:100%;overflow:visible}
.nv-kv-spark{width:42%;height:30px}
.nv-kv-spark .nv-spk-line{stroke-dasharray:300;stroke-dashoffset:300;animation:nv-draw 1.8s 1.2s var(--nv-ease) forwards}
@keyframes nv-draw{to{stroke-dashoffset:0}}
.nv-kv-bmi{left:18px;right:18px;top:auto;bottom:12px;height:12px;width:auto}
.nv-kv-bmi .nv-kv-pin{fill:#fff;stroke:var(--nv-deep);stroke-width:2;filter:drop-shadow(0 0 6px rgba(255,255,255,.7));transform-box:fill-box;transform-origin:center;animation:nv-pin .9s 1.4s var(--nv-spring) both}
@keyframes nv-pin{from{transform:translateX(-60px) scale(0)}}
html[data-nova] .ck-kpi:has(.nv-kv-bmi){padding-bottom:30px!important}
.nv-kv-week{width:38px;height:38px}
.nv-kv-week circle{fill:var(--nv-line-strong);transition:fill .3s}
.nv-kv-week circle.on{fill:var(--nv-lume);filter:drop-shadow(0 0 4px var(--nv-lume));animation:nv-dot .5s calc(1.2s + var(--i)*90ms) var(--nv-spring) both}
@keyframes nv-dot{from{transform:scale(0);transform-box:fill-box;transform-origin:center}}
.nv-kv-bars{width:40px;height:32px}
.nv-kv-bars rect{transform-box:fill-box;transform-origin:center bottom;animation:nv-grow .6s calc(1.3s + var(--i)*110ms) var(--nv-spring) both}
.nv-kv-bars rect.dn{fill:var(--nv-lume);transform-origin:center top}
.nv-kv-bars rect.up{fill:var(--nv-ember)}
.nv-kv-base{stroke:var(--nv-line-strong);stroke-width:1}
@keyframes nv-grow{from{transform:scaleY(0)}}
html[data-motion="off"] .nv-kv,html[data-motion="off"] .nv-kv *{animation:none!important;opacity:1;stroke-dashoffset:0}

/* Chart-Leuchtfeuer am letzten Messpunkt */
.nv-beacon{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--nv-lume),0 0 18px 4px rgba(62,240,212,.7);pointer-events:none;z-index:2;opacity:0;transition:opacity .5s}
.nv-beacon.on{opacity:1}
.nv-beacon::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px solid var(--nv-lume);animation:nv-halo2 2.2s ease-out infinite}
@keyframes nv-halo2{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.8);opacity:0}}

/* Wortmarke in der App-Navigation (höhere Spezifität als nav.css/app-facelift.css) */
html[data-nova] body .app-topbar>.app-brand>.app-wordmark{font-family:var(--nv-display)!important;font-weight:700!important;font-size:22px!important;letter-spacing:.2em!important;color:transparent!important;
  background:linear-gradient(100deg,#fff 0 38%,#c9bfff 50%,#3ef0d4 62%,#fff 78%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;animation:nv-sheen 9s ease-in-out infinite}
html[data-nova][data-theme="light"] body .app-topbar>.app-brand>.app-wordmark{background-image:linear-gradient(100deg,#141633 0 38%,#5b45d6 50%,#008f7d 62%,#141633 78%)}
html[data-nova] body .app-topbar>.app-brand>.app-wordmark>span{background:none!important;-webkit-text-fill-color:transparent}
html[data-nova] body .app-topbar>.app-brand>.app-wordmark::after{background:var(--nv-grad-lume)!important;box-shadow:0 0 14px var(--nv-lume)!important}
html[data-nova] .app-brand small{font-family:var(--nv-body)!important;color:var(--nv-haze)!important;letter-spacing:.03em}

html[data-nova][data-theme="light"] :is(.ck-ghost,.btn.ghost,.ghost,.btn.alt,.secondary,.lvs-login){border-radius:999px!important;transition:transform .35s var(--nv-spring),background .25s!important}
html[data-nova][data-theme="light"] :is(.ck-ghost,.btn.ghost,.ghost):hover{transform:translateY(-2px)}
html[data-nova][data-theme="light"] .lvn-import-direct{color:var(--nv-violet)!important;background:rgba(91,69,214,.08)!important;border-color:rgba(91,69,214,.35)!important}
html[data-nova][data-theme="light"] .lvn-import-direct:hover{color:#fff!important;background:var(--nv-grad-brand)!important}


/* ---------- 14 · Leicht-Modus: Handy, Tablet, sparsame Geräte ----------
   Gesetzt per <html data-nv-lite> (includes/nova.php). Gleicher Look,
   aber ohne GPU-teure Effekte: kein Unschärfe-Glas, kein Korn, keine
   Dauer-Animationen, die ständig neu gezeichnet werden müssen. */
html[data-nv-lite] body{background-attachment:scroll!important}
html[data-nv-lite] body::after{display:none!important}
html[data-nv-lite] #nv-sky,html[data-nv-lite] #nv-cursor{display:none!important}
html[data-nv-lite] *:not(.lvn-dock):not(.app-topbar):not(.lvn-top){backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html[data-nv-lite]:not([data-theme="light"]) .app-topbar.lvn-top,html[data-nv-lite]:not([data-theme="light"]) header.lvn-top{background:rgba(8,9,26,.96)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html[data-nv-lite][data-theme="light"] .app-topbar.lvn-top{background:rgba(255,255,255,.97)!important}
html[data-nv-lite]:not([data-theme="light"]) .lvn-dock{background:rgba(10,11,30,.95)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html[data-nv-lite][data-theme="light"] .lvn-dock{background:rgba(255,255,255,.97)!important}
html[data-nv-lite] :is(.app-wordmark,.lvs-wordmark),html[data-nv-lite] body .app-topbar>.app-brand>.app-wordmark{animation:none!important;background-position:0 0!important}
html[data-nv-lite] .ck-bar u::after,html[data-nv-lite] .lvn-dock-plus::before{display:none!important;animation:none!important}
html[data-nv-lite] .ck-head h1{animation:none!important;background-position:0 0!important}
html[data-nv-lite] .nv-rb-glow{display:none}
html[data-nv-lite] .nv-rb-halo,html[data-nv-lite] .nv-beacon::after{animation-iteration-count:3!important}
html[data-nv-lite] :is(.ck-kpi,.ck-panel,.card,.panel){box-shadow:0 14px 30px -18px rgba(0,0,0,.7)!important;transition:none!important}
html[data-nv-lite] .ck-kpi:hover,html[data-nv-lite] .lvn-tile a:hover{transform:none}
html[data-nv-lite] .toast{animation-duration:.35s!important}
@media (max-width:900px),(pointer:coarse) and (hover:none){@view-transition{navigation:none}}
html[data-nv-lite]:not([data-theme="light"]) :is(.ck-kpi,.ck-panel,.ck-health .card.ck-panel,.ac-kpi,.ac-card),html[data-nv-lite]:not([data-theme="light"]) main :is(.card,.panel,.box,.tile,.widget,.stat,.metric,[class$="-card"],[class*="-card "]):not(.lvn-tile):not([class*="lvn-"]){background:linear-gradient(170deg,#191c45,#0e1030)!important;box-shadow:none!important}
html[data-nv-lite][data-theme="light"] :is(.ck-kpi,.ck-panel,.ac-kpi,.ac-card),html[data-nv-lite][data-theme="light"] main :is(.card,.panel,.box,.tile,.widget,.stat,.metric,[class$="-card"]):not(.lvn-tile):not([class*="lvn-"]){background:#fff!important}
html[data-nv-lite]:not([data-theme="light"]) .ck-pulse-panel{background:radial-gradient(320px circle at 50% 42%,rgba(139,116,255,.18),transparent 60%),linear-gradient(170deg,#191c45,#0e1030)!important}
html[data-nv-lite][data-theme="light"] .ck-pulse-panel{background:#fff!important}
html[data-nv-lite] td.nv-databar{transition:none}
html[data-nv-lite] .nv-rb-halo,html[data-nv-lite] .nv-beacon::after,html[data-nv-lite] .ck-ping{animation:none!important}
html[data-nv-lite] .nv-rb-halo{opacity:.5}
/* Leicht-Modus: teure Malarbeiten vermeiden (Verlaufs-Text, große Schatten, seitenhohe Verläufe) */
html[data-nv-lite]:not([data-theme="light"]) body{background:linear-gradient(180deg,#120f33 0,var(--nv-abyss) 560px)!important}
html[data-nv-lite][data-theme="light"] body{background:linear-gradient(180deg,#e7e5fb 0,var(--nv-abyss) 560px)!important}
html[data-nv-lite] :is(.ck-kpi b,.ck-head h1,.ac-head h1,.app-footer-claim){background:none!important;-webkit-text-fill-color:currentColor;color:var(--nv-mist)!important}
html[data-nv-lite] :is(.ck-kpi b.is-down,.ck-kpi-goal b){color:var(--nv-lume)!important}
html[data-nv-lite] .ck-kpi b.is-up{color:var(--nv-ember)!important}
html[data-nv-lite] :is(.btn,.button,.ac-btn,.lvs-start,.lv-btn,.cta):not(.ghost):not(.alt):not(.secondary){box-shadow:none!important;transition:none!important}
html[data-nv-lite] .lvn-dock-plus{box-shadow:none!important}
html[data-nv-lite] :is(.ck-bar u,.nv-rb-core){box-shadow:none!important;filter:none!important}
html[data-nv-lite] .nv-rb-tick.on circle{filter:none}
html[data-nv-lite]:not([data-theme="light"]) body .lvn-dock,html[data-nv-lite]:not([data-theme="light"]) body nav.lvn-dock{background:#0b0c22!important;background-image:none!important}
html[data-nv-lite][data-theme="light"] body .lvn-dock{background:#ffffff!important}
html[data-nv-lite]:not([data-theme="light"]) body .app-topbar.lvn-top{background:#08091a!important;background-image:none!important}
html[data-nv-lite][data-theme="light"] body .app-topbar.lvn-top{background:#ffffff!important}

/* Zielweg-Leiste: Spur immer sichtbar, aktuelle Position auch bei 0 % als Punkt */
html[data-nova] .ck-bar{background:rgba(170,160,255,.18)!important;box-shadow:inset 0 0 0 1px rgba(170,160,255,.14)}
html[data-nova][data-theme="light"] .ck-bar{background:rgba(70,60,170,.12)!important}
html[data-nova] .ck-bar u{min-width:6px}

/* ---------- 15 · Merch-Sticker (Mini-Polaroid unter „LEVYRA unterstützen“) */
.nv-sticker{position:fixed;z-index:35;right:calc(max(8px,env(safe-area-inset-right,0px)) + 5px);top:calc(43% + 108px);width:66px}
.nv-sticker[hidden]{display:none}
.nv-sticker-pola{position:relative;display:block;padding:5px 5px 6px;border-radius:7px;background:#fff;color:#1d1a4a;text-decoration:none;transform:rotate(6deg);
  box-shadow:0 10px 24px -8px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.6);transition:transform .45s var(--nv-spring,cubic-bezier(.34,1.56,.64,1));animation:nv-stick-in .8s 1.4s both var(--nv-spring,ease-out)}
.nv-sticker-pola:hover,.nv-sticker-pola:focus-visible{transform:rotate(0deg) scale(1.08) translateX(-4px)}
.nv-sticker-img{position:relative;display:block;aspect-ratio:1;border-radius:3px;overflow:hidden;background:#1b1d4a}
.nv-sticker-img img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .5s ease}
.nv-sticker-img img.out{opacity:0}
.nv-sticker-cap{display:block;margin-top:4px;text-align:center;font:700 11px/1 var(--nv-body,system-ui);letter-spacing:.02em;color:#2a2470}
.nv-sticker-new{position:absolute;top:-9px;left:-11px;padding:3px 7px;border-radius:99px;background:#ff7a9c;color:#fff;font:800 10px/1 var(--nv-body,system-ui);transform:rotate(-14deg);box-shadow:0 4px 10px -2px rgba(255,122,156,.6)}
.nv-sticker.seen .nv-sticker-new{display:none}
.nv-sticker-x{position:absolute;top:-8px;right:-8px;width:20px;height:20px;display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#14163a;color:#c9cdf0;font-size:13px;line-height:1;cursor:pointer;opacity:0;transition:opacity .2s}
.nv-sticker:hover .nv-sticker-x,.nv-sticker-x:focus-visible{opacity:1}
.nv-sticker.bye{animation:nv-stick-out .45s ease-in forwards}
@keyframes nv-stick-in{from{opacity:0;transform:rotate(30deg) translateX(40px) scale(.6)}}
@keyframes nv-stick-out{to{opacity:0;transform:translateX(60px) rotate(20deg)}}
@media(max-width:720px){
  .nv-sticker{right:calc(max(5px,env(safe-area-inset-right,0px)) + 4px);top:auto;bottom:calc(196px + env(safe-area-inset-bottom,0px));width:50px}
  .nv-sticker-pola{padding:4px 4px 5px}
  .nv-sticker-cap{font-size:9px;margin-top:3px}
  .nv-sticker-new{font-size:9px;padding:2px 6px}
  .nv-sticker-x{opacity:1;width:18px;height:18px;font-size:12px}
}
html[data-nv-lite] .nv-sticker-pola{animation:none;box-shadow:0 6px 14px -6px rgba(0,0,0,.6)}
@media (prefers-reduced-motion:reduce){.nv-sticker-pola{animation:none;transition:none}}

/* App-Rahmen durchsichtig, damit der Himmel (z-index -1) sichtbar bleibt.
   app.css gibt .app-v2714 einen deckenden Verlauf; den übernimmt NOVA über body. */
html[data-nova] .app,html[data-nova] .app-v2714,html[data-nova] main.dash,html[data-nova] .ac-shell,html[data-nova] .ac-main{background:transparent!important;background-image:none!important}
/* Sticker auf eigener Grafikebene: kein Neuzeichnen beim Scrollen */
.nv-sticker{will-change:transform;transform:translateZ(0);contain:layout paint style}
html[data-nv-lite] .nv-sticker-pola{box-shadow:none;outline:1px solid rgba(255,255,255,.5)}
/* Alte Vollbild-Effektebenen aus app.css (Raster mit Maske, Lichtschein) im Leicht-Modus aus.
   Sie lagen früher unter dem deckenden App-Rahmen und kosten beim Scrollen viel Leistung. */
html[data-nv-lite] body::before{display:none!important}
/* Leicht-Modus: kein Himmel, also App-Rahmen wieder deckend und einfarbig (schnellstes Scrollen) */
html[data-nv-lite] .app-v2714{background:#0b0c22!important}
html[data-nv-lite][data-theme="light"] .app-v2714{background:#f2f3fb!important}
