/* RV Studio – Insights, Einstellungen und Studio im Design der Startseite */
body:has(#finance:not(.hidden)), body:has(#settingsPage:not(.hidden)), body:has(#steps:not(.hidden)) {
  background: radial-gradient(ellipse 60% 26% at 50% 20%, rgba(50,100,200,.14), transparent 70%), url('/rv-bg.webp') center top / cover no-repeat fixed, #070a11 !important; color:#eef1f6; }
html:has(#finance:not(.hidden)), html:has(#settingsPage:not(.hidden)), html:has(#steps:not(.hidden)) { background:#070a11; }
body:has(#finance:not(.hidden)) header.rv-crafted-header, body:has(#settingsPage:not(.hidden)) header.rv-crafted-header, body:has(#steps:not(.hidden)) header.rv-crafted-header { display:none !important; }
#finance, #settingsPage, body:has(#steps:not(.hidden)) main.wrap { max-width:1000px !important; margin:0 auto !important; padding:22px 16px 120px !important; background:none !important;
  --g1:#fff0c8; --g2:#ffd585; --g3:#ffb24e;
  --glass:linear-gradient(180deg, rgba(185,205,230,.14), rgba(120,140,170,.06) 55%, rgba(90,110,140,.08)) padding-box, linear-gradient(180deg, rgba(18,26,40,.70), rgba(14,20,32,.76)) padding-box, linear-gradient(165deg, rgba(255,255,255,.55), rgba(255,255,255,.14) 30%, rgba(255,255,255,.06) 65%, rgba(255,255,255,.28)) border-box;
  --panel:linear-gradient(180deg, rgba(150,175,210,.10), rgba(80,100,135,.04) 60%, rgba(70,90,120,.06)) padding-box, linear-gradient(180deg, rgba(16,24,36,.78), rgba(12,18,28,.84)) padding-box, linear-gradient(165deg, rgba(255,255,255,.55), rgba(255,255,255,.14) 25%, rgba(255,255,255,.05) 60%, rgba(255,255,255,.30)) border-box;
  --warm:radial-gradient(ellipse 80% 120% at 50% 0%, rgba(255,170,80,.35), rgba(255,140,60,.08) 70%) padding-box, linear-gradient(180deg, rgba(60,40,24,.7), rgba(30,22,16,.8)) padding-box, linear-gradient(165deg, #ffe2b0, rgba(255,170,90,.6) 40%, rgba(255,150,60,.3) 70%, #ffc888) border-box;
  font-family:'Segoe UI','Inter','Roboto','Helvetica Neue',system-ui,sans-serif !important; color:#eef1f6 !important; }
:is(#finance, #settingsPage, #steps, #s0, #s1, #s2, #s3, #nav) :is(h1, h2, h3, p, small, strong, label, button, input, select, textarea, div, span) { font-family:'Segoe UI','Inter','Roboto','Helvetica Neue',system-ui,sans-serif !important; }

/* Überschriften */
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3) .eyebrow { color:#ffd585 !important; letter-spacing:.14em; font-weight:600; }
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3) h1 { color:#f3f5f9 !important; font-weight:600 !important; text-shadow:none !important; }
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3) h1 em { font-style:normal; background:linear-gradient(100deg, #ffb24e, #ffd585 35%, #fff2d2 50%, #ffd585 65%, #ffb24e); background-size:250% 100%; -webkit-background-clip:text; background-clip:text; color:transparent; animation:cc-goldtext 4.5s ease-in-out infinite; }
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3) :is(h2, h3, .sectionheading) { color:#f3f5f9 !important; font-weight:600 !important; }
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3) :is(.muted, .rvcloud-small, .v7-help, .ai-note, .status, small, label) { color:#c3cad6 !important; }
:is(#finance, #settingsPage) .eyebrow + h1, :is(#finance, #settingsPage) .settings-card > .eyebrow { color:#ffd585 !important; }
#finance .finance-mark, #settingsPage .settings-mark { border:1px solid rgba(255,205,130,.45) !important; border-radius:14px !important; color:#ffd585 !important;
  background:radial-gradient(circle at 35% 25%, rgba(255,215,150,.22), rgba(60,40,22,.35) 70%) !important; box-shadow:0 0 14px rgba(255,160,70,.25) !important; animation:cc-goldshimmer 4.2s ease-in-out infinite; }
#settingsPage .settings-mark img { filter:sepia(1) saturate(2.5) hue-rotate(-12deg) brightness(1.15); }

/* Glasflächen */
:is(#finance .finance-big, #finance .finance-split > *, #settingsPage .settings-card, #settingsPage .v7-panel, #s0 .panel, #s1 .panel, #s2 .panel, #s3 .panel) {
  border:1px solid transparent !important; border-radius:22px !important; background:var(--panel) !important; color:#eef1f6 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2), inset 0 -40px 60px -44px rgba(255,150,70,.3), 0 16px 40px rgba(0,0,0,.45) !important; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
:is(#finance .stat, #finance .insight, #finance .item, #settingsPage .settings-list > div, #settingsPage .v7-mini) {
  border:1px solid transparent !important; border-radius:16px !important; background:var(--glass) !important; color:#eef1f6 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2), inset 0 -10px 18px -14px rgba(200,220,255,.35), 0 6px 18px rgba(0,0,0,.3) !important; }
#settingsPage .settings-list > div { padding:10px 12px !important; margin-top:6px; }
#finance .stat small, #finance .insight small, #finance .finance-big small { color:#ffd585 !important; letter-spacing:.1em; }
#finance .stat strong, #finance .insight strong, #finance .item, #settingsPage .settings-list strong { color:#fff !important; font-weight:500 !important; }
#finance #financeProfitHero { font-weight:600 !important; background:linear-gradient(100deg, #ffb24e, #ffd585 35%, #fff2d2 50%, #ffd585 65%, #ffb24e); background-size:250% 100%;
  -webkit-background-clip:text; background-clip:text; color:transparent !important; animation:cc-goldtext 4.5s ease-in-out infinite; }

/* Knöpfe */
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3, #nav) button, #settingsPage .settings-import {
  border:1px solid transparent !important; border-radius:14px !important; color:#eef1f6 !important; background:var(--glass) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18), 0 4px 12px rgba(0,0,0,.25) !important; transition:transform .2s ease, box-shadow .25s ease, filter .25s ease !important; }
:is(#rvCloudConnect, #settingsAiApply, #settingsBackup, #v7BackupNow, #aiBtn, #next, #saveArticle), #s0 .btn:not(.secondary), #s1 .btn:not(.secondary), #s2 .btn:not(.secondary), #s3 .btn:not(.secondary) {
  background:var(--warm) !important; color:#fff4e2 !important; font-weight:600 !important; box-shadow:0 0 18px rgba(255,150,60,.35), inset 0 1px 0 rgba(255,240,210,.35) !important; animation:cc-segwarm 4.2s ease-in-out infinite; }
@media(hover:hover) { :is(#finance, #settingsPage, #s0, #s1, #s2, #s3, #nav) button:hover { filter:brightness(1.15); transform:translateY(-1px); box-shadow:0 0 0 1px rgba(255,190,120,.45), 0 0 16px rgba(255,150,60,.35) !important; } }
:is(#finance, #settingsPage, #s0, #s1, #s2, #s3, #nav) button:active { transform:scale(.97); box-shadow:0 0 0 1px rgba(255,180,100,.7), 0 0 22px rgba(255,150,60,.7) !important; }

/* Eingabefelder */
:is(#settingsPage, #s0, #s1, #s2, #s3) :is(input:not([type=file]):not([type=checkbox]):not([type=radio]), select, textarea, .inp) {
  border:1px solid rgba(255,255,255,.2) !important; border-radius:14px !important; background:rgba(14,18,26,.72) !important; color:#eef1f6 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important; }
:is(#settingsPage, #s0, #s1, #s2, #s3) :is(input, textarea)::placeholder { color:#8f9aad !important; }
:is(#settingsPage, #s0, #s1, #s2, #s3) :is(input, select, textarea):focus { outline:2px solid rgba(255,200,130,.6) !important; outline-offset:1px; }

/* Studio: Schrittleiste, Foto-Feld, Zustand */
body:has(#steps:not(.hidden)) #steps { gap:8px !important; }
#steps .step { border:1px solid transparent !important; border-radius:999px !important; background:var(--glass) !important; color:#c3cad6 !important; }
#steps .step.active { color:#fff0d6 !important; background:radial-gradient(ellipse at 50% 0, rgba(255,160,80,.30), rgba(60,30,12,.35)) !important;
  box-shadow:inset 0 0 0 1.5px #ffd585, 0 0 12px rgba(255,160,70,.55) !important; animation:cc-segwarm 4.2s ease-in-out infinite; }
#s0 .dropzone { border:1.5px dashed rgba(255,205,130,.55) !important; border-radius:18px !important; background:rgba(20,28,42,.55) !important; color:#eef1f6 !important; }
#s0 .dropzone b { color:#ffd585 !important; }
#s0 .condition-scale button.on, #s0 .condition-scale button.selected, #s0 .condition-scale button[aria-pressed="true"] { background:radial-gradient(ellipse at 50% 0, rgba(255,160,80,.35), rgba(60,30,12,.4)) !important; box-shadow:inset 0 0 0 1.5px #ffd585, 0 0 10px rgba(255,160,70,.55) !important; color:#fff0d6 !important; }
body:has(#steps:not(.hidden)) #nav { background:none !important; border:0 !important; box-shadow:none !important; }

@media (prefers-reduced-motion: reduce) { :is(#finance, #settingsPage, #s0, #s1, #s2, #s3, #nav, #steps) * { animation:none !important; } }
body #nav #next, body #nav button#next.btn { background:var(--warm, radial-gradient(ellipse 80% 120% at 50% 0%, rgba(255,170,80,.35), rgba(255,140,60,.08) 70%)) !important; color:#fff4e2 !important;
  background:radial-gradient(ellipse 80% 120% at 50% 0%, rgba(255,170,80,.35), rgba(255,140,60,.08) 70%) padding-box, linear-gradient(180deg, rgba(60,40,24,.7), rgba(30,22,16,.8)) padding-box, linear-gradient(165deg, #ffe2b0, rgba(255,170,90,.6) 40%, rgba(255,150,60,.3) 70%, #ffc888) border-box !important;
  border:1px solid transparent !important; box-shadow:0 0 18px rgba(255,150,60,.35), inset 0 1px 0 rgba(255,240,210,.35) !important; }
