/* Mein Finance Planer V15.1 - reference-aligned Neon Dynamic dashboard. Data & API untouched. */
:root{--v151-green:#13edb5;--v151-blue:#4e99ff;--v151-pink:#ff578a;--v151-violet:#a47aff;--v151-gold:#ffc54f}
#application{--panel:#101f35;--line:rgba(115,150,221,.2);--muted:#93a9c8}
#application .side{width:240px;min-width:240px;padding:28px 16px;border-right:1px solid rgba(77,125,221,.2);background:linear-gradient(180deg,#07172d,#070e1f);box-shadow:8px 0 55px #01071688}
#application .side .brand{font-size:19px;line-height:1.3;color:#f6f8ff;display:flex;flex-wrap:wrap;align-items:center;gap:3px;letter-spacing:-.5px}
#application .brand-icon{background:linear-gradient(135deg,#132f54,#172850);color:#51e4d7;border-radius:11px;padding:9px;box-shadow:0 0 26px #357cff20;margin-right:7px}
#application .sub{color:#669bea;font-size:10px}
#application .cap{color:#90a7cf;font-weight:760}
#application .nav{margin:2px 0;border:1px solid transparent;border-radius:12px;font-size:12px;color:#b3c6e2;transition:.2s ease}
#application .nav:hover{background:#162c4f;color:#fff;transform:translateX(3px)}
#application .nav.active{background:linear-gradient(110deg,#17377d,#104baa,#213b92);border:1px solid #417fff;box-shadow:0 0 19px #3682ff67,inset 0 1px 1px #83aaff66;color:#fff}
#application .main{max-width:none;padding:22px clamp(15px,1.4vw,30px);background:radial-gradient(ellipse 48% 26% at 68% 0%,#12347454,transparent),transparent}
#application .top{margin-bottom:16px}
#application .top h1{font-size:24px}
#dashboard .v15-welcome{display:flex;align-items:center;min-height:75px;max-height:none;margin-bottom:14px;padding:12px 20px;border-color:#254b7b77;box-shadow:inset 0 1px #a4d9ff12;background:linear-gradient(105deg,#101d3be0,#0b1c35a1)}
#dashboard .v15-welcome h2{font-size:17px;margin:2px 0}
#dashboard .v15-welcome p{font-size:11px;margin:2px 0}
#dashboard .v15-welcome .welcome-deco{max-width:230px;opacity:.55}
#dashboard .privacy-chip{padding:4px 8px;font-size:10px;margin-top:3px}
#dashboard .v15-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:14px}
#dashboard .stat{min-height:138px;padding:15px 16px;overflow:hidden}
#dashboard .v151-stat{background:linear-gradient(128deg,#102742d9,#112038f2);border:1px solid #25517b88;box-shadow:inset 0 1px #87baff12,0 11px 35px #010c1b59}
#dashboard .v151-stat:nth-child(1){background:radial-gradient(ellipse at 0 100%,#065c4a36,transparent 70%),linear-gradient(135deg,#10233e,#10223a)}
#dashboard .v151-stat:nth-child(2){background:radial-gradient(ellipse at 0 100%,#1757b545,transparent 70%),linear-gradient(135deg,#10233e,#10223a)}
#dashboard .v151-stat:nth-child(3){background:radial-gradient(ellipse at 0 100%,#81265550,transparent 70%),linear-gradient(135deg,#10233e,#10223a)}
#dashboard .v151-stat:nth-child(4){background:radial-gradient(ellipse at 0 100%,#83631630,transparent 70%),linear-gradient(135deg,#10233e,#10223a)}
#dashboard .v151-stat:nth-child(5){background:radial-gradient(ellipse at 85% 70%,#5045cb55,transparent 65%),linear-gradient(135deg,#10233e,#10223a)}
#dashboard .v151-stat-header{display:flex;align-items:center;gap:10px;min-width:0}
#dashboard .v151-stat-header .eyebrow{font-size:10px;line-height:1.3;letter-spacing:.25px}
#dashboard .v151-stat .stat-icon{height:36px;width:36px;flex-shrink:0;font-size:18px;border-radius:11px;background:linear-gradient(130deg,#1e3d68,#13284d);color:#60b9ff;border:1px solid #3c70a388;display:grid;place-items:center}
#dashboard .v151-stat:nth-child(1) .stat-icon{color:var(--v151-green);background:#06675350;border-color:#28b59470;box-shadow:0 0 17px #22cb9e29}
#dashboard .v151-stat:nth-child(3) .stat-icon{color:var(--v151-pink);background:#86295750;border-color:#a7457070;box-shadow:0 0 17px #fc488326}
#dashboard .v151-stat:nth-child(4) .stat-icon{color:var(--v151-gold);background:#9f721f50;border-color:#bb8a3670}
#dashboard .v151-stat:nth-child(5) .stat-icon{color:var(--v151-violet);background:#593abd60;border-color:#7958e170}
#dashboard .v151-stat .value{margin-top:12px;font-size:clamp(15px,1.55vw,23px);letter-spacing:-.8px;line-height:1.22;white-space:normal;overflow-wrap:anywhere}
#dashboard .v151-stat-bottom{display:flex;align-items:center;justify-content:space-between;gap:3px;min-height:27px;margin-top:6px}
#dashboard .v151-stat-note{font-size:10px;color:#8ba7c9}
#dashboard .v151-spark{width:75px;height:30px;min-width:48px;color:var(--v151-blue);filter:drop-shadow(0 0 4px currentColor);animation:v15-enter 700ms ease both}
#dashboard .v151-stat.green .v151-spark{color:var(--v151-green)}
#dashboard .v151-stat.red .v151-spark{color:var(--v151-pink)}
#dashboard .v151-chart-row{display:grid;grid-template-columns:minmax(0,1.63fr) minmax(300px,1fr);gap:14px;margin-bottom:14px}
#dashboard .v151-three-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}
#dashboard .v151-lower-row{display:grid;grid-template-columns:1.2fr 1.3fr .9fr;gap:14px;margin-bottom:14px}
#dashboard .v151-chart-row > .card{min-height:315px}
#dashboard .v151-three-row > .card{min-height:252px;max-height:340px;overflow:hidden}
#dashboard .v151-lower-row > .card{min-height:222px}
#dashboard .v151-panel-header{align-items:center;margin-bottom:11px;gap:6px}
#dashboard .v151-panel-header .ctitle{margin:0;font-size:14px}
#dashboard .panel-icon{width:31px;height:31px;border:1px solid #4479ad55;background:linear-gradient(145deg,#143c6a,#162b4e);box-shadow:0 0 20px #2b7dff25}
#dashboard .v151-link{color:#68afff;font-size:11px;white-space:nowrap}
#dashboard .v151-cash-panel,#dashboard .v151-category-panel,#dashboard .v151-bill-panel,#dashboard .v151-goal-panel,#dashboard .v151-budget-panel,#dashboard .v151-insight-panel,#dashboard .v151-trend-panel,#dashboard .v151-account-panel{padding:15px 17px}
#dashboard .v151-legend{display:flex;align-items:center;justify-content:flex-start;gap:13px;text-align:left;margin:10px 0 0;color:#b1c6e4;font-size:11px}
#dashboard .v151-legend .dot{margin:0 6px 0 0}
#dashboard .v151-chart{height:255px;margin-top:10px;overflow:visible}
#dashboard .v151-chart-frame{position:relative;width:100%;height:100%}
#dashboard .v151-chart-frame svg{width:100%;height:100%;overflow:visible}
#dashboard .v151-axis{fill:#89a3c8;font-size:11px}
#dashboard .v151-gridline{stroke:#45648e66;stroke-width:1}
#dashboard .v151-chart-stroke{filter:drop-shadow(0 0 5px currentColor);animation:v15-draw 1.25s ease forwards}
#dashboard .v151-hit{cursor:crosshair;pointer-events:all}
#dashboard .v151-chart-tooltip{pointer-events:none;position:absolute;z-index:6;top:13px;transform:translateX(-50%);width:180px;max-width:52%;border:1px solid #446391;background:linear-gradient(135deg,#0f1c36f8,#152d51f8);box-shadow:0 14px 35px #0009;border-radius:12px;padding:9px 12px;display:grid;gap:6px;font-size:10px;color:#e9f3ff}
#dashboard .v151-chart-tooltip[hidden]{display:none}
#dashboard .v151-chart-tooltip strong{font-size:11px;margin-bottom:2px}
#dashboard .v151-chart-tooltip span{display:flex;align-items:center;gap:5px}
#dashboard .v151-tooltip-dot{display:inline-block;flex-shrink:0;height:7px;width:7px;border-radius:100%;background:#52a0ff}
#dashboard .v151-tooltip-dot.inc{background:#11e4ac}#dashboard .v151-tooltip-dot.exp{background:#ff537e}
#dashboard .v151-donut-layout{display:grid;grid-template-columns:minmax(126px,45%) 1fr;align-items:center;gap:11px;height:238px}
#dashboard .v151-donut{width:min(100%,182px);aspect-ratio:1;margin:auto;border-radius:100%;position:relative;display:grid;place-items:center;animation:v15-donut .85s cubic-bezier(.2,.8,.2,1) both;box-shadow:0 0 30px #4e91ff39,0 0 0 7px #25476b2b}
#dashboard .v151-donut-hole{width:72%;height:72%;border-radius:100%;background:radial-gradient(circle,#132542,#101c32);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;overflow:hidden;padding:6px}
#dashboard .v151-donut-hole span{font-size:10px;color:#99b3d6}
#dashboard .v151-donut-hole strong{font-size:clamp(12px,1.15vw,18px);line-height:1.25;overflow-wrap:anywhere}
#dashboard .v151-category-legend{display:flex;flex-direction:column;gap:12px;max-height:230px;overflow-y:auto;scrollbar-width:thin}
#dashboard .v151-cat-line{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:7px;row-gap:2px;font-size:10px}
#dashboard .v151-cat-name{display:flex;min-width:0;gap:6px;align-items:center;overflow-wrap:anywhere}
#dashboard .v151-cat-name i{display:inline-block;flex:0 0 7px;height:7px;border-radius:100%;box-shadow:0 0 6px currentColor}
#dashboard .v151-cat-line strong{font-size:11px}
#dashboard .v151-cat-value{grid-column:1/-1;padding-left:13px;color:#8ca8c9}
#dashboard .v151-three-row .entry{font-size:11px}
#dashboard .v151-budget-panel .budget-scroll{max-height:236px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#33679d transparent}
#dashboard .v151-budget-panel .budget-entry{padding:10px 0}
#dashboard .v151-budget-panel .budget-note{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
#dashboard .v151-insight-panel .readout{font-size:11px;line-height:1.9;white-space:pre-wrap;color:#bddaf4}
#dashboard .v151-trend-panel .chart{height:170px}
#dashboard .v151-health-chip{display:flex;align-items:center;justify-content:space-between;border:1px solid #3a886e55;border-radius:12px;padding:9px 11px;background:#12463a30;color:#9df4d2;font-size:11px;margin-top:9px}
#dashboard .v151-lower-row .entry{padding:9px 0;font-size:11px}
#dashboard .v151-chart-row .card,#dashboard .v151-three-row .card,#dashboard .v151-lower-row .card{animation:v15-enter .45s ease both}
#dashboard .v151-three-row .card:nth-child(2){animation-delay:.05s}#dashboard .v151-three-row .card:nth-child(3){animation-delay:.10s}
/* Dark theme fine-tuning */
html[data-theme="dark"] #application .main{background-color:transparent}
/* Light theme: complete intentional palette, not an inverted screenshot */
html[data-theme="light"] #application .side{background:linear-gradient(165deg,#f7fbff,#e9f2ff);border-color:#d6e4f5;box-shadow:4px 0 16px #23456a14}
html[data-theme="light"] #application .nav{color:#334966}html[data-theme="light"] #application .nav.active{color:#fff}
html[data-theme="light"] #application .side .brand{color:#16293f}html[data-theme="light"] #application .sub{color:#436baa}
html[data-theme="light"] #dashboard .v151-stat{background:linear-gradient(135deg,#ffffff,#f0f6fe);border-color:#d6e3f3;box-shadow:0 8px 20px #4469a818}
html[data-theme="light"] #dashboard .v151-stat .eyebrow,html[data-theme="light"] #dashboard .v151-stat-note{color:#526880}
html[data-theme="light"] #dashboard .v151-cash-panel,html[data-theme="light"] #dashboard .v151-category-panel,html[data-theme="light"] #dashboard .v151-bill-panel,html[data-theme="light"] #dashboard .v151-goal-panel,html[data-theme="light"] #dashboard .v151-budget-panel,html[data-theme="light"] #dashboard .v151-insight-panel,html[data-theme="light"] #dashboard .v151-trend-panel,html[data-theme="light"] #dashboard .v151-account-panel{background:linear-gradient(150deg,#fff,#f5f9ff);border-color:#d2deeb}
html[data-theme="light"] #dashboard .v151-donut-hole{background:#fff}
html[data-theme="light"] #dashboard .v151-axis{fill:#667b98}html[data-theme="light"] #dashboard .v151-gridline{stroke:#9cb4d640}
html[data-theme="light"] #dashboard .v151-category-legend,html[data-theme="light"] #dashboard .v151-donut-hole span{color:#435a77}
html[data-theme="light"] #dashboard .v151-cat-value{color:#6d829d}
html[data-theme="light"] #dashboard .v151-insight-panel .readout{color:#344e68}
html[data-theme="light"] #dashboard .v151-chart-tooltip{color:#fff}
@media(max-width:1500px){#dashboard .v15-stats{gap:8px}#dashboard .v151-stat{padding:12px}#dashboard .v151-chart-row{grid-template-columns:minmax(0,1.4fr) minmax(290px,1fr)}}
@media(max-width:1200px){#dashboard .v15-stats{grid-template-columns:repeat(3,minmax(0,1fr))}#dashboard .v151-chart-row{grid-template-columns:1fr 1fr}#dashboard .v151-three-row{grid-template-columns:1fr 1fr}#dashboard .v151-lower-row{grid-template-columns:1fr 1fr}#dashboard .v151-account-panel{grid-column:1/-1}}
@media(max-width:860px){#dashboard .v151-chart-row,#dashboard .v151-three-row,#dashboard .v151-lower-row{grid-template-columns:1fr}#dashboard .v151-account-panel{grid-column:auto}#dashboard .v151-three-row>.card{max-height:none;min-height:185px}#dashboard .v151-chart-row>.card{min-height:270px}#dashboard .v151-cash-panel{min-width:0}#dashboard .v15-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#dashboard .v15-welcome{padding:12px}#dashboard .v15-welcome .welcome-deco{display:none}#dashboard .v151-chart{height:204px}#dashboard .v151-stat{min-height:129px}#dashboard .v151-donut-layout{grid-template-columns:1fr;justify-items:center;height:auto;gap:22px}#dashboard .v151-donut{width:150px}#dashboard .v151-category-legend{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){#dashboard .v151-stat,#dashboard .v151-chart-row .card,#dashboard .v151-three-row .card,#dashboard .v151-lower-row .card,#dashboard .v151-donut{animation:none!important}#dashboard .v151-chart-stroke{stroke-dasharray:none;stroke-dashoffset:0;animation:none!important}}

/* Overrides for the earlier V15 donut selector: animation belongs only to the ring, not the new two-column layout. */
#dashboard #categoryChart>.v151-donut-layout{animation:none;box-shadow:none}
#dashboard .v151-chart-stroke{stroke-dasharray:4000;stroke-dashoffset:4000;animation:v15-draw 1.6s cubic-bezier(.2,.7,.1,1) forwards}
#dashboard .v151-bill-panel #billPreview,#dashboard .v151-goal-panel #goalPreview{max-height:248px;overflow:auto;scrollbar-width:thin}
@media(prefers-reduced-motion:reduce){#dashboard .v151-chart-stroke{stroke-dasharray:none;stroke-dashoffset:0;animation:none!important}}
