/* =========================================================
   Finance Portal UX2026 V7 — One World Design System
   Goal: calm customer app, high contrast, responsive, one theme source.
   Theme is owned by user.settings.theme; no per-page switches.
   ========================================================= */
:root{
  color-scheme:light;
  --fp-bg:#f6f3ea;
  --fp-bg-soft:#ebe5d6;
  --fp-surface:#fffdf8;
  --fp-surface-2:#f8f5ee;
  --fp-card:#ffffff;
  --fp-text:#111827;
  --fp-text-strong:#0f172a;
  --fp-muted:#5b6472;
  --fp-soft-text:#7a8493;
  --fp-line:#ddd6c5;
  --fp-line-strong:#c8bea8;
  --fp-accent:#b68b22;
  --fp-accent-2:#d6b35f;
  --fp-accent-soft:#f5ead0;
  --fp-good:#16794c;
  --fp-good-soft:#ddf7e9;
  --fp-warn:#a15c00;
  --fp-warn-soft:#fff0d6;
  --fp-bad:#b42318;
  --fp-bad-soft:#fde4e2;
  --fp-info:#2456a6;
  --fp-info-soft:#e4ecff;
  --fp-radius-xs:10px;
  --fp-radius-sm:14px;
  --fp-radius:22px;
  --fp-radius-lg:30px;
  --fp-shadow:0 20px 60px rgba(17,24,39,.10);
  --fp-shadow-soft:0 12px 34px rgba(17,24,39,.08);
  --fp-focus:0 0 0 4px rgba(182,139,34,.22);
  --fp-topbar-h:74px;

  /* compatibility for old pages */
  --primary-color:var(--fp-accent);
  --secondary-color:var(--fp-bg-soft);
  --accent-color:var(--fp-accent);
  --secondary-accent-color:var(--fp-accent-2);
  --text-color:var(--fp-text);
  --background-color:var(--fp-bg);
  --dropdown-background:var(--fp-surface);
  --dropdown-border:var(--fp-line);
  --font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme="dark"]{
  color-scheme:dark;
  --fp-bg:#0e1320;
  --fp-bg-soft:#121929;
  --fp-surface:#151d2c;
  --fp-surface-2:#111827;
  --fp-card:#182234;
  --fp-text:#e9edf5;
  --fp-text-strong:#ffffff;
  --fp-muted:#a8b0be;
  --fp-soft-text:#8791a3;
  --fp-line:#2b3548;
  --fp-line-strong:#3d4a61;
  --fp-accent:#e2bc64;
  --fp-accent-2:#f0d58e;
  --fp-accent-soft:#2d2618;
  --fp-good:#62d89b;
  --fp-good-soft:#123425;
  --fp-warn:#ffc266;
  --fp-warn-soft:#392815;
  --fp-bad:#ff8a80;
  --fp-bad-soft:#3a1918;
  --fp-info:#8fb6ff;
  --fp-info-soft:#152641;
  --fp-shadow:0 24px 70px rgba(0,0,0,.34);
  --fp-shadow-soft:0 16px 38px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--fp-bg);scroll-behavior:smooth}
body.fp2026-body{
  margin:0;min-height:100vh;background:var(--fp-bg);color:var(--fp-text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.5;letter-spacing:-.01em;overflow-x:hidden;display:block;
}
body.fp2026-body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(760px 460px at 4% -10%, color-mix(in srgb,var(--fp-accent) 18%, transparent), transparent 62%),
    radial-gradient(640px 420px at 100% 2%, color-mix(in srgb,var(--fp-info) 10%, transparent), transparent 60%),
    linear-gradient(180deg,var(--fp-bg),color-mix(in srgb,var(--fp-bg-soft) 45%, var(--fp-bg)) 72%,var(--fp-bg));
}
a{color:inherit;text-decoration:none}a:hover{text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
button{cursor:pointer}

/* Core app shell */
.fp-topbar{position:sticky;top:0;z-index:80;background:color-mix(in srgb,var(--fp-bg) 84%, transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--fp-line)}
.fp-topbar-inner{height:var(--fp-topbar-h);max-width:1540px;margin:0 auto;padding:0 clamp(14px,2.4vw,34px);display:flex;align-items:center;gap:18px}
.fp-brand{display:inline-flex;align-items:center;gap:12px;min-width:0;color:var(--fp-text-strong) !important}
.fp-brand-mark{width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--fp-accent),var(--fp-accent-2));color:#201400;display:grid;place-items:center;font-weight:900;box-shadow:0 10px 24px color-mix(in srgb,var(--fp-accent) 24%, transparent);flex:0 0 auto}
.fp-brand-copy{display:flex;flex-direction:column;font-weight:900;line-height:1.03;letter-spacing:-.04em;white-space:nowrap}
.fp-brand-copy small,.fp-brand small{font-size:.72rem;font-weight:700;color:var(--fp-muted);letter-spacing:-.01em;margin-top:4px}
.fp-nav-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--fp-line);border-radius:14px;background:var(--fp-surface);color:var(--fp-text)}
.fp-nav-toggle span{display:block;width:19px;height:2px;background:currentColor;margin:4px auto;border-radius:99px}
.fp-topnav{margin-left:auto;display:flex;align-items:center;gap:4px}
.fp-topnav a{padding:10px 12px;border-radius:999px;color:var(--fp-muted);font-weight:760;font-size:.93rem;transition:.18s ease}
.fp-topnav a:hover,.fp-topnav a.active{background:var(--fp-accent-soft);color:var(--fp-text-strong)}
.fp-topnav .fp-nav-cta{background:var(--fp-text-strong);color:var(--fp-bg) !important;padding:10px 16px;margin-left:6px}
.fp-user-menu{position:relative;margin-left:6px}
.fp-user-pill{border:1px solid var(--fp-line);background:var(--fp-surface);color:var(--fp-text);border-radius:999px;padding:6px 10px 6px 6px;display:flex;align-items:center;gap:8px;box-shadow:var(--fp-shadow-soft)}
.fp-user-pill img,.fp-user-pill span{width:30px;height:30px;border-radius:50%;object-fit:cover;background:var(--fp-accent-soft);display:grid;place-items:center;font-weight:900;color:var(--fp-accent)}
.fp-user-pill strong{font-size:.88rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp-user-dropdown{display:none;position:absolute;right:0;top:calc(100% + 10px);min-width:230px;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:20px;box-shadow:var(--fp-shadow);padding:8px;z-index:90}
.fp-user-dropdown.open{display:block}.fp-user-dropdown a{display:block;padding:11px 12px;border-radius:12px;color:var(--fp-text);font-weight:700}.fp-user-dropdown a:hover{background:var(--fp-accent-soft)}

.fp-app-shell{max-width:1540px;margin:0 auto;display:grid;grid-template-columns:264px minmax(0,1fr);gap:24px;padding:24px clamp(14px,2.4vw,34px) 38px;align-items:start}
.fp-side{position:sticky;top:calc(var(--fp-topbar-h) + 22px);max-height:calc(100vh - var(--fp-topbar-h) - 42px);overflow:auto;border:1px solid var(--fp-line);border-radius:28px;background:color-mix(in srgb,var(--fp-surface) 93%, transparent);box-shadow:var(--fp-shadow-soft);padding:16px}
.fp-side-section+.fp-side-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--fp-line)}
.fp-side-label{display:block;margin:3px 8px 10px;color:var(--fp-soft-text);font-size:.73rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}
.fp-side a{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:10px;padding:10px;border-radius:16px;color:var(--fp-text);transition:.16s ease}
.fp-side a span{grid-row:1/3;width:38px;height:38px;border-radius:14px;background:var(--fp-surface-2);border:1px solid var(--fp-line);display:grid;place-items:center;color:var(--fp-accent);font-weight:900}
.fp-side a strong{font-size:.94rem;letter-spacing:-.03em}.fp-side a small{color:var(--fp-muted);font-size:.76rem;font-weight:650}
.fp-side a:hover,.fp-side a.active{background:var(--fp-accent-soft)}.fp-side a.active span{background:linear-gradient(135deg,var(--fp-accent),var(--fp-accent-2));color:#201400;border-color:transparent}
.fp-content{min-width:0;display:grid;gap:18px}.fp-public-content{min-height:60vh}.fp-public-content>.fp-shell{max-width:1260px;margin:0 auto;padding:26px clamp(16px,3vw,34px) 48px}
.fp-footer-inner{max-width:1540px;margin:0 auto;padding:20px clamp(14px,2.4vw,34px);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--fp-muted);font-size:.9rem}.fp-global-footer{border-top:1px solid var(--fp-line);background:color-mix(in srgb,var(--fp-bg) 90%, transparent)}

/* Layout primitives */
.fp-shell{max-width:1260px;margin:0 auto;padding:26px clamp(16px,3vw,34px) 48px}.fp-section{margin:clamp(24px,5vw,76px) 0}.fp-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:26px;align-items:end;margin-bottom:18px}.fp-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--fp-accent);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.fp-h1,.fp-h2{margin:0;color:var(--fp-text-strong);line-height:.97;letter-spacing:-.07em}.fp-h1{font-size:clamp(2.55rem,7vw,6.25rem);max-width:980px}.fp-h2{font-size:clamp(1.85rem,4vw,3.9rem)}.fp-lead{font-size:clamp(1.02rem,1.6vw,1.22rem);color:var(--fp-muted);max-width:760px;line-height:1.65}.fp-muted{color:var(--fp-muted)}
.fp-card,.fp-glass,.fp-table-card,.fp-price-card,.fp-panel{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:var(--fp-radius-lg);box-shadow:var(--fp-shadow-soft);padding:clamp(18px,2.2vw,28px);color:var(--fp-text)}
.fp-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fp-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fp-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fp-flow{display:grid;gap:16px}.fp-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:var(--fp-accent-soft);color:var(--fp-accent);font-weight:900}.fp-badge,.fp-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:var(--fp-accent-soft);color:var(--fp-accent);border:1px solid color-mix(in srgb,var(--fp-accent) 25%, transparent);font-weight:850;font-size:.82rem}.fp-status-dot{width:8px;height:8px;border-radius:50%;background:var(--fp-good);display:inline-block}
.fp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1px solid transparent;padding:11px 16px;font-weight:900;line-height:1;text-align:center;min-height:44px;transition:.18s ease}.fp-btn-primary{background:var(--fp-text-strong);color:var(--fp-bg) !important;box-shadow:var(--fp-shadow-soft)}.fp-btn-secondary{background:var(--fp-surface);color:var(--fp-text-strong) !important;border-color:var(--fp-line)}.fp-btn-quiet{background:transparent;color:var(--fp-muted) !important;border-color:transparent}.fp-btn:hover{transform:translateY(-1px);filter:saturate(1.05)}.fp-hero-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.fp-list{display:grid;gap:9px;margin-top:12px}.fp-list div{display:flex;gap:8px;align-items:flex-start;color:var(--fp-muted);font-weight:650}.fp-list div::before{content:"✓";color:var(--fp-good);font-weight:900}.fp-input,.fp-select,.fp-textarea,input:not([type="checkbox"]):not([type="radio"]),select,textarea{width:100%;background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:14px;color:var(--fp-text);padding:11px 13px;outline:none}.fp-textarea,textarea{min-height:110px;resize:vertical}.fp-input:focus,.fp-select:focus,.fp-textarea:focus,input:focus,select:focus,textarea:focus{box-shadow:var(--fp-focus);border-color:var(--fp-accent)}

/* Public landing */
.fp-public-hero{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(320px,.94fr);gap:clamp(24px,5vw,54px);align-items:center;padding:clamp(34px,6vw,80px) 0 30px}.fp-public-hero h1{margin-top:12px}.fp-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px}.fp-proof-card{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:20px;padding:14px;box-shadow:var(--fp-shadow-soft)}.fp-proof-card strong{display:block;color:var(--fp-text-strong);font-size:1.25rem}.fp-proof-card span{font-size:.86rem;color:var(--fp-muted);font-weight:650}.fp-demo-card{display:grid;gap:16px}.fp-demo-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.fp-metric-large{border-radius:24px;background:linear-gradient(135deg,var(--fp-accent-soft),var(--fp-surface-2));padding:22px;border:1px solid var(--fp-line)}.fp-metric-large label,.fp-mini label,.fp-kpi-card label{display:block;color:var(--fp-muted);font-size:.82rem;font-weight:800}.fp-metric-large strong{display:block;font-size:clamp(2.2rem,4vw,3.8rem);letter-spacing:-.08em;color:var(--fp-text-strong)}.fp-bars{height:10px;border-radius:99px;background:color-mix(in srgb,var(--fp-line) 70%, transparent);overflow:hidden;margin-top:14px}.fp-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--fp-good),var(--fp-accent))}.fp-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fp-mini{background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:18px;padding:14px}.fp-mini strong{display:block;margin-top:4px;color:var(--fp-text-strong)}
.fp-pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fp-price-card{position:relative}.fp-price-card.featured{border-color:color-mix(in srgb,var(--fp-accent) 58%, var(--fp-line));box-shadow:0 20px 70px color-mix(in srgb,var(--fp-accent) 15%, transparent)}.fp-price-tag{font-size:2.15rem;font-weight:950;letter-spacing:-.07em;color:var(--fp-text-strong);margin:14px 0}.fp-price-tag small{font-size:.9rem;color:var(--fp-muted);letter-spacing:0}.fp-persona-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fp-persona-card{min-height:240px;display:flex;flex-direction:column;justify-content:space-between}

/* Auth and settings */
.fp-settings-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start}.fp-settings-nav{position:sticky;top:calc(var(--fp-topbar-h) + 18px);display:grid;gap:8px}.fp-settings-nav a,.fp-settings-nav button{display:flex;align-items:center;gap:10px;text-align:left;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:16px;padding:13px 14px;color:var(--fp-text);font-weight:850}.fp-settings-card{display:grid;gap:14px}.fp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-field{display:grid;gap:7px}.fp-field label{font-weight:850;color:var(--fp-text-strong)}.fp-field small{color:var(--fp-muted)}.fp-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface-2)}.fp-radio-pills{display:flex;gap:10px;flex-wrap:wrap}.fp-radio-pill{position:relative}.fp-radio-pill input{position:absolute;opacity:0}.fp-radio-pill span{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--fp-line);border-radius:999px;padding:10px 13px;background:var(--fp-surface);font-weight:850}.fp-radio-pill input:checked+span{background:var(--fp-accent-soft);color:var(--fp-accent);border-color:color-mix(in srgb,var(--fp-accent) 35%, var(--fp-line))}

/* App pages */
.fp-page-title{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;margin-bottom:14px}.fp-page-title h1{font-size:clamp(2.05rem,4.8vw,4.8rem);line-height:.96;letter-spacing:-.075em;margin:6px 0;color:var(--fp-text-strong)}.fp-page-title p{color:var(--fp-muted);max-width:760px;margin:0;line-height:1.65}.fp-page-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.fp-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fp-kpi-card{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:22px;padding:16px;box-shadow:var(--fp-shadow-soft)}.fp-kpi-card strong{display:block;margin-top:4px;color:var(--fp-text-strong);font-size:1.55rem;letter-spacing:-.055em}.fp-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fp-action{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:24px;padding:18px;display:grid;gap:10px;color:var(--fp-text);box-shadow:var(--fp-shadow-soft)}.fp-action strong{color:var(--fp-text-strong);font-size:1.1rem}.fp-action span:not(.fp-icon){color:var(--fp-muted);font-weight:620}.fp-action:hover{border-color:color-mix(in srgb,var(--fp-accent) 50%, var(--fp-line));transform:translateY(-1px)}.fp-step-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface-2)}.fp-step-row+.fp-step-row{margin-top:10px}.fp-step-no{width:42px;height:42px;border-radius:15px;background:var(--fp-accent-soft);color:var(--fp-accent);display:grid;place-items:center;font-weight:950}.fp-step-row h4{margin:0;color:var(--fp-text-strong)}.fp-step-row p{margin:4px 0 0;color:var(--fp-muted)}
.fp-finance-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:16px}.fp-contract-list{display:grid;gap:10px}.fp-contract-row{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface-2)}.fp-contract-row strong{color:var(--fp-text-strong)}.fp-contract-row small{display:block;color:var(--fp-muted)}.fp-progress-ring{width:132px;height:132px;border-radius:50%;background:conic-gradient(var(--fp-good) 0 68%, var(--fp-line) 68% 100%);display:grid;place-items:center;margin:auto}.fp-progress-ring::before{content:"";position:absolute}.fp-progress-ring span{width:96px;height:96px;border-radius:50%;background:var(--fp-surface);display:grid;place-items:center;font-weight:950;color:var(--fp-text-strong);font-size:1.35rem}

/* Builder */
.fp-builder-canvas{display:grid;grid-template-columns:minmax(280px,.74fr) minmax(0,1.26fr);gap:18px}.fp-builder-panel{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:var(--fp-radius-lg);padding:20px;box-shadow:var(--fp-shadow-soft)}.fp-preview{background:var(--fp-bg-soft);border:1px solid var(--fp-line);border-radius:32px;padding:18px;min-height:520px}.fp-preview-hero{height:100%;border-radius:26px;background:var(--fp-surface);border:1px solid var(--fp-line);padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;justify-content:center}.fp-preview-hero h2{font-size:clamp(2rem,5vw,4.8rem);line-height:.95;letter-spacing:-.08em;color:var(--fp-text-strong);margin:12px 0}.fp-form-demo{display:grid;gap:10px;margin-top:14px}

/* Alerts, chat, cookie */
.fp-message-stack{position:fixed;top:calc(var(--fp-topbar-h) + 12px);right:16px;z-index:120;display:grid;gap:8px;max-width:min(420px,calc(100vw - 32px))}.fp-alert{padding:13px 14px;border-radius:16px;background:var(--fp-surface);border:1px solid var(--fp-line);box-shadow:var(--fp-shadow);font-weight:800}.fp-alert-success{border-color:color-mix(in srgb,var(--fp-good) 55%, var(--fp-line));color:var(--fp-good)}.fp-alert-error{border-color:color-mix(in srgb,var(--fp-bad) 55%, var(--fp-line));color:var(--fp-bad)}
.fp-toast{display:none;position:fixed;right:18px;bottom:92px;z-index:120;width:min(360px,calc(100vw - 36px));background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:22px;padding:16px;box-shadow:var(--fp-shadow)}.fp-toast p{color:var(--fp-muted);margin:4px 0 12px}.fp-chatbot-button{position:fixed;right:20px;bottom:20px;z-index:110;width:56px;height:56px;border:0;border-radius:22px;background:linear-gradient(135deg,var(--fp-accent),var(--fp-accent-2));color:#201400;font-weight:950;box-shadow:var(--fp-shadow)}.fp-chatbot-window{display:none;position:fixed;right:20px;bottom:88px;z-index:111;width:min(410px,calc(100vw - 40px));height:min(610px,calc(100vh - 120px));background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:26px;box-shadow:var(--fp-shadow);overflow:hidden}.fp-chatbot-window.open{display:grid;grid-template-rows:auto 1fr auto auto}#chatbot-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--fp-line)}#chatbot-header h3{margin:0;color:var(--fp-text-strong)}#chatbot-close{border:0;background:transparent;color:var(--fp-muted);font-size:1.4rem}#chatbot-messages{padding:14px;overflow:auto;display:grid;align-content:start;gap:10px}.chat-message{display:flex}.chat-message.user{justify-content:flex-end}.chat-message-bubble{max-width:82%;padding:11px 13px;border-radius:16px;background:var(--fp-surface-2);border:1px solid var(--fp-line);color:var(--fp-text)}.chat-message.user .chat-message-bubble{background:var(--fp-accent-soft);color:var(--fp-text-strong)}#chatbot-input{display:grid;grid-template-columns:1fr 46px;gap:8px;padding:12px;border-top:1px solid var(--fp-line)}#chatbot-input button{border:0;border-radius:14px;background:var(--fp-text-strong);color:var(--fp-bg);font-weight:900}#chatbot-footer{padding:0 12px 12px}#chatbot-reset{border:0;background:transparent;color:var(--fp-muted);font-weight:800}.fp-cookie-banner{display:none;position:fixed;left:18px;bottom:18px;z-index:130;width:min(520px,calc(100vw - 36px));grid-template-columns:1fr auto;gap:12px;align-items:center;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:22px;padding:14px;box-shadow:var(--fp-shadow)}.fp-cookie-banner p{margin:0;color:var(--fp-muted)}.fp-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:140;place-items:center;padding:20px}.fp-modal-card{width:min(560px,100%);background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:28px;padding:22px;box-shadow:var(--fp-shadow);position:relative}.fp-modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:var(--fp-muted);font-size:1.4rem}

/* Responsive */
@media (max-width:1180px){.fp-app-shell{grid-template-columns:1fr}.fp-side{position:relative;top:auto;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fp-side-section+.fp-side-section{margin-top:0;padding-top:0;border-top:0}.fp-kpi-grid,.fp-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-public-hero,.fp-finance-layout,.fp-builder-canvas,.fp-settings-grid{grid-template-columns:1fr}.fp-settings-nav{position:relative;top:auto}}
@media (max-width:900px){:root{--fp-topbar-h:66px}.fp-topbar-inner{height:auto;min-height:var(--fp-topbar-h);flex-wrap:wrap}.fp-brand-copy small{display:none}.fp-nav-toggle{display:block}.fp-topnav{display:none;order:5;width:100%;margin:0;padding:0 0 12px;flex-direction:column;align-items:stretch}.fp-topnav.open{display:flex}.fp-topnav a{border:1px solid var(--fp-line);background:var(--fp-surface);border-radius:14px}.fp-user-menu{margin-left:0}.fp-public-hero{padding-top:24px}.fp-section-head,.fp-page-title{grid-template-columns:1fr}.fp-page-actions{justify-content:flex-start}.fp-grid-3,.fp-pricing,.fp-persona-grid{grid-template-columns:1fr}.fp-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-proof{grid-template-columns:1fr}.fp-cookie-banner{grid-template-columns:1fr}}
@media (max-width:640px){.fp-app-shell{padding:14px 12px 28px}.fp-shell,.fp-public-content>.fp-shell{padding:18px 12px 36px}.fp-side{grid-template-columns:1fr;padding:10px;border-radius:22px}.fp-side a{grid-template-columns:34px 1fr;padding:9px}.fp-side a span{width:34px;height:34px}.fp-kpi-grid,.fp-action-grid,.fp-grid-2,.fp-grid-4,.fp-form-grid,.fp-metric-grid{grid-template-columns:1fr}.fp-card,.fp-glass,.fp-table-card,.fp-price-card,.fp-panel{border-radius:22px;padding:16px}.fp-step-row{grid-template-columns:38px 1fr}.fp-step-row .fp-btn{grid-column:1/3}.fp-h1{font-size:2.55rem}.fp-h2{font-size:2rem}.fp-page-title h1{font-size:2.25rem}.fp-user-pill strong{display:none}.fp-footer-inner{display:grid}.fp-chatbot-button{right:14px;bottom:14px}.fp-chatbot-window{right:10px;bottom:80px;width:calc(100vw - 20px);height:min(620px,calc(100vh - 98px))}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto !important;transition:none !important;animation:none !important}}

/* =========================================================
   UX2026 V8 — Mandanten-Cockpit ohne Altportal-Navigation
   ========================================================= */
.fp-customer-app .fp-topbar{background:color-mix(in srgb,var(--fp-bg) 90%, transparent)}
.fp-topnav-clean{gap:6px}.fp-topnav-clean a{font-size:.92rem;padding:10px 14px}.fp-topnav-clean a.active{background:var(--fp-text-strong);color:var(--fp-bg)!important}
.fp-app-shell-clean{max-width:1440px;display:block;padding:clamp(18px,2.6vw,40px) clamp(14px,3vw,42px) 46px}
.fp-app-shell-clean>*+*{margin-top:18px}

.fp-cockpit-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(18px,3vw,34px);align-items:stretch;min-height:min(560px,calc(100vh - 160px));border:1px solid var(--fp-line);border-radius:42px;padding:clamp(22px,4.2vw,58px);overflow:hidden;background:
  linear-gradient(135deg,color-mix(in srgb,var(--fp-surface) 92%, transparent),color-mix(in srgb,var(--fp-bg-soft) 84%, transparent)),
  radial-gradient(540px 280px at 85% 10%,color-mix(in srgb,var(--fp-accent) 22%, transparent),transparent 70%);
box-shadow:var(--fp-shadow)}
.fp-cockpit-hero::after{content:"";position:absolute;right:-110px;bottom:-150px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 20%, transparent),transparent 68%);pointer-events:none}
.fp-cockpit-copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;max-width:900px}
.fp-cockpit-copy h1{margin:12px 0 18px;font-size:clamp(3.1rem,7.4vw,7.8rem);line-height:.88;letter-spacing:-.09em;color:var(--fp-text-strong);max-width:940px}
.fp-cockpit-copy p{font-size:clamp(1.05rem,1.35vw,1.28rem);color:var(--fp-muted);line-height:1.7;max-width:760px;margin:0 0 26px}.fp-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.fp-cockpit-status{position:relative;z-index:1;align-self:center;min-height:360px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:color-mix(in srgb,var(--fp-surface) 86%, transparent);backdrop-filter:blur(18px)}
.fp-status-head{display:inline-flex;align-items:center;justify-content:center;gap:9px;margin:0 auto 18px;padding:8px 12px;border-radius:999px;background:var(--fp-surface-2);border:1px solid var(--fp-line);font-weight:900;color:var(--fp-text-strong)}
.fp-live-dot{width:10px;height:10px;border-radius:50%;background:var(--fp-warn);box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-warn) 18%, transparent)}.fp-live-dot.fp-tone-good{background:var(--fp-good);box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-good) 18%, transparent)}.fp-live-dot.fp-tone-warn{background:var(--fp-warn)}
.fp-score-ring{--score:0%;width:min(220px,64vw);aspect-ratio:1;border-radius:50%;margin:4px auto 18px;background:conic-gradient(var(--fp-good) 0 var(--score),color-mix(in srgb,var(--fp-line) 80%, transparent) var(--score) 100%);display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px var(--fp-line)}
.fp-score-ring::before{content:"";position:absolute;inset:18px;border-radius:50%;background:var(--fp-surface);border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft)}.fp-score-ring span{position:relative;font-size:clamp(2.1rem,4vw,3.4rem);font-weight:950;letter-spacing:-.08em;color:var(--fp-text-strong)}.fp-cockpit-status p{max-width:330px;margin:0 auto;color:var(--fp-muted);line-height:1.62}

.fp-cockpit-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fp-cockpit-strip article{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:24px;padding:18px 20px;box-shadow:var(--fp-shadow-soft);min-width:0}.fp-cockpit-strip span{display:block;color:var(--fp-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;font-weight:950}.fp-cockpit-strip strong{display:block;margin-top:8px;color:var(--fp-text-strong);font-size:clamp(1.45rem,2.4vw,2.25rem);line-height:1;letter-spacing:-.065em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-cockpit-strip small{display:block;margin-top:7px;color:var(--fp-muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.fp-cockpit-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:18px;align-items:stretch}.fp-cockpit-main>.fp-card{height:100%}.fp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.fp-card-head h2,.fp-section-minihead h2,.fp-wealth-card h2,.fp-invest-card h2,.fp-josi-card h2,.fp-advisor-shortcut h2{margin:6px 0 0;font-size:clamp(1.7rem,3.2vw,3rem);letter-spacing:-.075em;line-height:.98;color:var(--fp-text-strong)}.fp-text-link{color:var(--fp-accent);font-weight:900;white-space:nowrap}.fp-text-link:hover{text-decoration:underline}
.fp-next-list{display:grid;gap:12px}.fp-next-step{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--fp-line);background:var(--fp-surface-2);border-radius:22px;padding:14px;color:var(--fp-text);transition:.18s ease}.fp-next-step:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--fp-accent) 46%, var(--fp-line));box-shadow:var(--fp-shadow-soft)}.fp-next-step.fp-step-important{background:linear-gradient(135deg,var(--fp-accent-soft),var(--fp-surface-2))}.fp-step-mark{width:46px;height:46px;border-radius:17px;background:var(--fp-surface);border:1px solid var(--fp-line);display:grid;place-items:center;font-weight:950;color:var(--fp-accent)}.fp-next-step strong{display:block;color:var(--fp-text-strong);font-size:1.02rem}.fp-next-step small{display:block;color:var(--fp-muted);line-height:1.45;margin-top:3px}.fp-next-step em{font-style:normal;color:var(--fp-accent);font-weight:950;white-space:nowrap}
.fp-wealth-card p,.fp-invest-card p,.fp-josi-card p,.fp-advisor-shortcut p{color:var(--fp-muted);line-height:1.7}.fp-strategy-meter{display:grid;gap:12px;margin:20px 0}.fp-strategy-meter div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;align-items:center}.fp-strategy-meter span{color:var(--fp-muted);font-weight:850}.fp-strategy-meter i{height:11px;border-radius:999px;background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));box-shadow:0 0 0 1px color-mix(in srgb,var(--fp-accent) 22%, transparent)}

.fp-section-tight{margin-top:24px}.fp-section-minihead{display:grid;gap:8px;max-width:820px;margin-bottom:14px}.fp-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fp-module-card{position:relative;min-height:210px;display:grid;grid-template-columns:66px minmax(0,1fr);grid-template-rows:1fr auto;gap:12px 18px;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:30px;padding:24px;color:var(--fp-text);box-shadow:var(--fp-shadow-soft);overflow:hidden;transition:.18s ease}.fp-module-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--fp-accent) 48%, var(--fp-line));box-shadow:var(--fp-shadow)}.fp-module-card::after{content:"";position:absolute;right:-80px;top:-90px;width:220px;height:220px;border-radius:50%;background:color-mix(in srgb,var(--fp-accent) 10%, transparent);pointer-events:none}.fp-module-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--fp-accent-soft) 82%, var(--fp-surface)),var(--fp-surface))}.fp-module-icon{width:66px;height:66px;border-radius:22px;background:var(--fp-text-strong);color:var(--fp-bg);display:grid;place-items:center;font-weight:950;letter-spacing:-.05em}.fp-module-card h3{margin:0;color:var(--fp-text-strong);font-size:1.45rem;letter-spacing:-.05em}.fp-module-card p{margin:8px 0 0;color:var(--fp-muted);line-height:1.62}.fp-module-card>strong{grid-column:2;color:var(--fp-accent);font-weight:950;align-self:end}

.fp-cockpit-bottom{align-items:stretch}.fp-plan-pill{display:inline-flex;align-items:center;border:1px solid var(--fp-line);background:var(--fp-surface-2);border-radius:999px;padding:8px 12px;color:var(--fp-text-strong);font-weight:950;white-space:nowrap}.fp-invest-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}.fp-invest-levels span{padding:11px;border-radius:15px;background:var(--fp-surface-2);border:1px solid var(--fp-line);color:var(--fp-muted);font-weight:900;text-align:center}.fp-invest-levels span.active{background:var(--fp-accent-soft);color:var(--fp-accent);border-color:color-mix(in srgb,var(--fp-accent) 34%, var(--fp-line))}.fp-prompt-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.fp-prompt-row button{border:1px solid var(--fp-line);background:var(--fp-surface-2);color:var(--fp-text);border-radius:999px;padding:10px 13px;font-weight:900}.fp-prompt-row button:hover{background:var(--fp-accent-soft);color:var(--fp-text-strong)}
.fp-advisor-shortcut{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-info-soft) 42%, var(--fp-surface)))}.fp-advisor-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

@media (max-width:1120px){.fp-cockpit-hero{grid-template-columns:1fr;min-height:auto}.fp-cockpit-status{min-height:0}.fp-cockpit-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-cockpit-main{grid-template-columns:1fr}.fp-module-grid{grid-template-columns:1fr}.fp-advisor-shortcut{grid-template-columns:1fr}.fp-advisor-actions{justify-content:flex-start}}
@media (max-width:900px){.fp-app-shell-clean{padding:16px 12px 34px}.fp-topnav-clean a{border-radius:16px}.fp-cockpit-hero{border-radius:30px;padding:24px}.fp-cockpit-copy h1{font-size:clamp(2.65rem,14vw,4.8rem)}.fp-cockpit-strip{grid-template-columns:1fr}.fp-next-step{grid-template-columns:42px minmax(0,1fr)}.fp-next-step em{grid-column:2;white-space:normal}.fp-module-card{grid-template-columns:54px minmax(0,1fr);padding:18px;border-radius:24px;min-height:0}.fp-module-icon{width:54px;height:54px;border-radius:18px}.fp-module-card>strong{grid-column:1/3}.fp-card-head{display:grid}.fp-invest-levels{grid-template-columns:1fr}.fp-strategy-meter div{grid-template-columns:86px 1fr}.fp-cockpit-status{padding:20px}.fp-score-ring{width:170px}.fp-score-ring::before{inset:14px}}
@media (max-width:480px){.fp-hero-actions .fp-btn{width:100%;justify-content:center}.fp-cockpit-copy p{font-size:1rem}.fp-cockpit-strip strong{font-size:1.5rem}.fp-next-step{padding:12px}.fp-card,.fp-glass,.fp-table-card,.fp-price-card,.fp-panel{padding:16px}}


/* =========================================================
   UX2026 V9 — Mandanten-Landingpage: one message, motion, safe CTAs
   ========================================================= */
@view-transition { navigation: auto; }
::view-transition-old(root){animation:fp-page-out .22s cubic-bezier(.22,.61,.36,1) both}
::view-transition-new(root){animation:fp-page-in .34s cubic-bezier(.22,.61,.36,1) both}
@keyframes fp-page-in{from{opacity:0;transform:translateY(10px) scale(.995);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes fp-page-out{from{opacity:1;transform:none;filter:none}to{opacity:0;transform:translateY(-6px) scale(.997);filter:blur(2px)}}
@keyframes fp-float-soft{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-12px,0)}}
@keyframes fp-orbit-pulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:.92;transform:scale(1.05)}}
@keyframes fp-shimmer{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes fp-reveal-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.fp-reveal{opacity:0;transform:translateY(22px)}.fp-reveal.is-visible{animation:fp-reveal-up .7s cubic-bezier(.22,.61,.36,1) forwards}
.fp-public-v9{view-transition-name:fp-public-page}.fp-public-v9 .fp-section{scroll-margin-top:110px}
.fp-hero-v9{position:relative;min-height:min(760px,calc(100vh - var(--fp-topbar-h)));padding:clamp(44px,7vw,94px) 0 clamp(30px,5vw,70px);grid-template-columns:minmax(0,1.02fr) minmax(310px,.88fr)}
.fp-hero-copy-v9{display:grid;align-content:center;gap:18px}.fp-hero-v9 .fp-h1{font-size:clamp(3rem,7.4vw,6.9rem);max-width:1050px}.fp-hero-v9 .fp-lead{font-size:clamp(1.05rem,1.8vw,1.32rem);max-width:760px}
.fp-trust-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.fp-trust-row span{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--fp-line);background:color-mix(in srgb,var(--fp-surface) 74%, transparent);border-radius:999px;padding:9px 12px;color:var(--fp-muted);font-weight:850;font-size:.88rem}.fp-trust-row span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fp-good)}
.fp-phone-stage-v9{position:relative;min-height:520px;display:grid;place-items:center;isolation:isolate}.fp-orbit{position:absolute;border-radius:999px;border:1px solid color-mix(in srgb,var(--fp-accent) 28%, transparent);background:radial-gradient(circle at 30% 28%,color-mix(in srgb,var(--fp-accent) 18%, transparent),transparent 58%);filter:blur(.2px);animation:fp-orbit-pulse 6s ease-in-out infinite;z-index:-1}.fp-orbit-one{width:78%;aspect-ratio:1;right:2%;top:8%}.fp-orbit-two{width:52%;aspect-ratio:1;left:2%;bottom:8%;animation-delay:-2.4s}.fp-phone-card-v9{width:min(100%,430px);display:grid;gap:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--fp-surface) 98%, transparent),color-mix(in srgb,var(--fp-surface-2) 92%, transparent));border:1px solid var(--fp-line);border-radius:36px;box-shadow:0 34px 90px color-mix(in srgb,var(--fp-text-strong) 16%, transparent);padding:18px;animation:fp-float-soft 8s ease-in-out infinite;overflow:hidden;position:relative}.fp-phone-card-v9::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.18),transparent 38%);transform:translateX(-120%);animation:fp-shimmer 8s ease-in-out infinite;pointer-events:none}.fp-focus-panel-v9{border-radius:26px;background:linear-gradient(135deg,var(--fp-accent-soft),var(--fp-surface-2));border:1px solid color-mix(in srgb,var(--fp-accent) 22%, var(--fp-line));padding:22px}.fp-focus-panel-v9 label{display:block;color:var(--fp-muted);font-weight:850;font-size:.82rem}.fp-focus-panel-v9 strong{display:block;margin-top:6px;color:var(--fp-text-strong);font-size:clamp(1.55rem,3vw,2.6rem);letter-spacing:-.065em;line-height:1}.fp-focus-panel-v9 p{margin:10px 0 0;color:var(--fp-muted);font-weight:650}
.fp-card-lift{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.fp-card-lift:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--fp-accent) 42%, var(--fp-line));box-shadow:var(--fp-shadow)}
.fp-journey-grid-v9{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fp-journey-grid-v9 article{position:relative;overflow:hidden;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:var(--fp-radius-lg);box-shadow:var(--fp-shadow-soft);padding:clamp(18px,2.4vw,30px);min-height:220px}.fp-journey-grid-v9 article::before{content:"";position:absolute;inset:auto 18px 18px auto;width:80px;height:80px;border-radius:50%;background:var(--fp-accent-soft)}.fp-journey-grid-v9 span{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:var(--fp-text-strong);color:var(--fp-bg);font-weight:950}.fp-journey-grid-v9 h3{font-size:1.35rem;color:var(--fp-text-strong);margin:22px 0 8px}.fp-journey-grid-v9 p{color:var(--fp-muted);margin:0}
.fp-wide-card-v9{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:24px;align-items:center}.fp-communication-stack-v9{display:grid;gap:10px}.fp-communication-stack-v9 div{padding:14px;border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface-2)}.fp-communication-stack-v9 strong{display:block;color:var(--fp-text-strong)}.fp-communication-stack-v9 span{color:var(--fp-muted);font-weight:650}
.fp-teaser-card-v9{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:center;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:var(--fp-radius-lg);box-shadow:var(--fp-shadow-soft);padding:18px}.fp-teaser-card-v9 div{padding:14px;border-radius:18px;background:var(--fp-surface-2);border:1px solid var(--fp-line)}.fp-teaser-card-v9 strong{display:block;color:var(--fp-text-strong)}.fp-teaser-card-v9 span{color:var(--fp-muted);font-weight:650;font-size:.9rem}.fp-legal-note-v9{margin-top:18px}.fp-legal-note-v9 p{border:1px solid var(--fp-line);background:var(--fp-surface-2);border-radius:18px;padding:14px;color:var(--fp-muted);font-size:.9rem}
.fp-pricing-v9 .fp-pricing-hero-v9{align-items:start}.fp-package-logic-v9{margin-top:26px}.fp-legal-card-v9 p{max-width:900px}.fp-topnav-clean a[href*="public_ranking"]{display:none!important}
@media (max-width:1080px){.fp-hero-v9{grid-template-columns:1fr}.fp-phone-stage-v9{min-height:430px}.fp-wide-card-v9,.fp-teaser-card-v9{grid-template-columns:1fr}.fp-journey-grid-v9{grid-template-columns:1fr}.fp-pricing{grid-template-columns:1fr}.fp-section-head{grid-template-columns:1fr}.fp-page-title{grid-template-columns:1fr}.fp-page-actions{justify-content:flex-start}}
@media (max-width:720px){.fp-hero-v9{padding-top:28px}.fp-hero-v9 .fp-h1{font-size:clamp(2.55rem,15vw,4.2rem)}.fp-phone-stage-v9{min-height:auto}.fp-orbit{display:none}.fp-phone-card-v9{border-radius:28px}.fp-trust-row span{width:100%;justify-content:flex-start}.fp-hero-actions .fp-btn,.fp-page-actions .fp-btn{width:100%}.fp-public-content>.fp-shell{padding-inline:14px}.fp-grid-3{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.fp-phone-card-v9,.fp-orbit,.fp-reveal.is-visible,.fp-phone-card-v9::after{animation:none!important}.fp-reveal{opacity:1;transform:none}}
.fp-journey-grid-v9 article::before,
.fp-journey-grid-v10 article::before {
  content: none !important;
  display: none !important;
}

/* =========================================================
   UX2026 V10 — Landing/Pricing polish: richer motion, community, equal cards
   ========================================================= */
@keyframes fp-gradient-shift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes fp-particle-drift{0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.42}50%{transform:translate3d(18px,-26px,0) scale(1.08);opacity:.82}}
@keyframes fp-line-flow{from{background-position:0 0}to{background-position:120px 0}}
@keyframes fp-soft-pop{0%{transform:scale(.96);opacity:0}100%{transform:scale(1);opacity:1}}
@keyframes fp-breathe-shadow{0%,100%{box-shadow:0 34px 90px color-mix(in srgb,var(--fp-text-strong) 16%, transparent)}50%{box-shadow:0 42px 110px color-mix(in srgb,var(--fp-accent) 25%, transparent)}}
.fp-public-v10 .fp-h1,.fp-pricing-v10 .fp-page-title h1{view-transition-name:fp-main-headline}
.fp-public-v10 .fp-btn-primary,.fp-pricing-v10 .fp-btn-primary{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--fp-text-strong),color-mix(in srgb,var(--fp-text-strong) 78%, var(--fp-accent)));background-size:180% 180%;animation:fp-gradient-shift 9s ease infinite}
.fp-public-v10 .fp-btn-primary::after,.fp-pricing-v10 .fp-btn-primary::after{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.22),transparent 38%);transform:translateX(-130%);transition:transform .7s cubic-bezier(.22,.61,.36,1);pointer-events:none}.fp-public-v10 .fp-btn-primary:hover::after,.fp-pricing-v10 .fp-btn-primary:hover::after{transform:translateX(130%)}
.fp-hero-v10{overflow:hidden;isolation:isolate}.fp-motion-glow{position:absolute;border-radius:999px;pointer-events:none;z-index:-2;filter:blur(16px);opacity:.68;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 24%, transparent),transparent 62%);animation:fp-orbit-pulse 7.5s ease-in-out infinite}.fp-motion-glow-a{width:360px;height:360px;left:-120px;top:8%}.fp-motion-glow-b{width:300px;height:300px;right:12%;bottom:6%;animation-delay:-3.1s;background:radial-gradient(circle,color-mix(in srgb,var(--fp-info) 18%, transparent),transparent 64%)}
.fp-phone-stage-v10{perspective:1100px}.fp-phone-card-v10{transform-style:preserve-3d;will-change:transform;animation:fp-float-soft 8s ease-in-out infinite,fp-breathe-shadow 6s ease-in-out infinite}.fp-particle{position:absolute;width:12px;height:12px;border-radius:999px;background:var(--fp-accent);box-shadow:0 0 0 8px color-mix(in srgb,var(--fp-accent) 15%, transparent);animation:fp-particle-drift 7s ease-in-out infinite;z-index:-1}.fp-particle-one{right:12%;top:18%}.fp-particle-two{left:14%;bottom:22%;animation-delay:-2.4s}.fp-particle-three{right:28%;bottom:12%;animation-delay:-4.3s}
.fp-card-glow{position:relative;overflow:hidden}.fp-card-glow::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--fp-accent) 36%, transparent),transparent 38%,color-mix(in srgb,var(--fp-info) 18%, transparent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.35;pointer-events:none;transition:opacity .25s ease}.fp-card-glow:hover::before{opacity:.85}.fp-stagger-grid .fp-card:nth-child(2){animation-delay:.08s}.fp-stagger-grid .fp-card:nth-child(3){animation-delay:.16s}
.fp-journey-grid-v10{position:relative}.fp-journey-grid-v10::before{content:"";position:absolute;left:8%;right:8%;top:50%;height:2px;background:linear-gradient(90deg,transparent,var(--fp-accent),transparent);background-size:120px 2px;animation:fp-line-flow 3.2s linear infinite;opacity:.36}.fp-journey-grid-v10 article{z-index:1;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.fp-journey-grid-v10 article:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--fp-accent) 45%, var(--fp-line));box-shadow:var(--fp-shadow)}
.fp-wide-card-v10{background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-info-soft) 38%, var(--fp-surface)),var(--fp-surface));background-size:180% 180%;animation:fp-gradient-shift 14s ease infinite}.fp-communication-stack-v10 div{transition:transform .2s ease,border-color .2s ease,background .2s ease}.fp-communication-stack-v10 div:hover{transform:translateX(4px);border-color:color-mix(in srgb,var(--fp-accent) 40%, var(--fp-line));background:var(--fp-accent-soft)}
.fp-price-teaser-v10 .fp-section-head .fp-muted{font-weight:700}.fp-teaser-card-v10{position:relative;overflow:hidden}.fp-teaser-card-v10::after{content:"";position:absolute;inset:auto 24px 0 24px;height:2px;background:linear-gradient(90deg,transparent,var(--fp-accent),transparent);opacity:.55}.fp-teaser-card-v10 div{transition:transform .2s ease,border-color .2s ease}.fp-teaser-card-v10 div:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--fp-accent) 44%, var(--fp-line))}
.fp-pricing-equal-v10{align-items:stretch}.fp-price-card-v10{display:flex;flex-direction:column;min-height:100%;position:relative;overflow:hidden}.fp-price-card-v10 .fp-price-card-main{display:flex;flex-direction:column;gap:0;flex:1}.fp-price-card-v10 .fp-list{margin-bottom:22px}.fp-price-card-v10>.fp-btn{margin-top:auto;width:100%}.fp-price-card-v10.featured::after{content:"";position:absolute;left:18px;right:18px;top:0;height:4px;border-radius:0 0 99px 99px;background:linear-gradient(90deg,var(--fp-accent),var(--fp-accent-2));animation:fp-gradient-shift 6s ease infinite;background-size:180% 180%}.fp-price-card-v10:hover{transform:translateY(-5px)}
.fp-package-logic-v10 .fp-card{animation:fp-soft-pop .45s cubic-bezier(.22,.61,.36,1) both}.fp-package-logic-v10 .fp-card:nth-child(2){animation-delay:.07s}.fp-package-logic-v10 .fp-card:nth-child(3){animation-delay:.14s}
@media (max-width:1080px){.fp-journey-grid-v10::before{display:none}.fp-price-card-v10{min-height:auto}}
@media (max-width:720px){.fp-motion-glow,.fp-particle{display:none}.fp-wide-card-v10{animation:none}.fp-public-v10 .fp-btn-primary,.fp-pricing-v10 .fp-btn-primary{animation:none}}
@media (prefers-reduced-motion:reduce){.fp-motion-glow,.fp-particle,.fp-wide-card-v10,.fp-public-v10 .fp-btn-primary,.fp-pricing-v10 .fp-btn-primary,.fp-phone-card-v10,.fp-journey-grid-v10::before,.fp-price-card-v10.featured::after{animation:none!important}.fp-phone-card-v10{transform:none!important}}
.fp-brand-mark.fp-brand-mark-img {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  width: 42px;
  height: 42px;
}

.fp-brand-mark.fp-brand-mark-img img {
  width: 36px;
  height: 36px;
  object-fit: contain;
}

/* =========================================================
   UX2026 V11 — Mandanten-Cockpit & Finanz-Onboarding
   ========================================================= */
.fp-app-shell-clean{display:block;max-width:1540px;padding-inline:clamp(14px,2.4vw,38px)}
.fp-cockpit-v11-hero,.fp-onboarding-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.56fr);gap:clamp(18px,4vw,38px);align-items:stretch;margin:18px 0 18px;isolation:isolate}
.fp-cockpit-v11-hero::before,.fp-onboarding-hero::before{content:"";position:absolute;inset:-20px -10px auto auto;width:420px;height:260px;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 22%,transparent),transparent 68%);filter:blur(4px);z-index:-1;animation:fpGlowFloat 8s ease-in-out infinite alternate}
.fp-cockpit-v11-copy,.fp-onboarding-hero>div:first-child{min-height:360px;border:1px solid var(--fp-line);border-radius:42px;background:linear-gradient(135deg,color-mix(in srgb,var(--fp-surface) 92%,transparent),color-mix(in srgb,var(--fp-accent-soft) 48%,var(--fp-surface)));box-shadow:var(--fp-shadow);padding:clamp(24px,5vw,58px);display:flex;flex-direction:column;justify-content:center;overflow:hidden;position:relative}
.fp-cockpit-v11-copy::after,.fp-onboarding-hero>div:first-child::after{content:"";position:absolute;inset:auto -60px -80px auto;width:280px;height:280px;border:1px solid color-mix(in srgb,var(--fp-accent) 28%,transparent);border-radius:50%;opacity:.8;animation:fpSlowSpin 18s linear infinite}
.fp-cockpit-v11-copy h1,.fp-onboarding-hero h1{font-size:clamp(2.6rem,7.5vw,7.2rem);letter-spacing:-.085em;line-height:.9;color:var(--fp-text-strong);margin:10px 0 14px;max-width:980px}
.fp-cockpit-v11-copy p,.fp-onboarding-hero p{max-width:780px;color:var(--fp-muted);font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.65}
.fp-fx-card{transition:transform .28s cubic-bezier(.22,.61,.36,1), border-color .28s ease, box-shadow .28s ease;position:relative;overflow:hidden}
.fp-fx-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,color-mix(in srgb,var(--fp-accent) 10%,transparent),transparent);transform:translateX(-130%);transition:transform .75s ease;pointer-events:none}
.fp-fx-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--fp-accent) 42%,var(--fp-line));box-shadow:var(--fp-shadow)}
.fp-fx-card:hover::before{transform:translateX(130%)}
.fp-cockpit-v11-score,.fp-onboarding-score{display:flex;flex-direction:column;justify-content:space-between;min-height:360px}.fp-score-topline{display:flex;gap:10px;align-items:center}.fp-score-ring-xl{width:170px;height:170px;margin:12px auto;background:conic-gradient(var(--fp-accent) 0 var(--score), color-mix(in srgb,var(--fp-line) 68%,transparent) var(--score) 100%)}.fp-score-ring-xl span{font-size:2rem}
.fp-money-pulse-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.fp-money-pulse-card{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:26px;padding:18px;box-shadow:var(--fp-shadow-soft);min-height:132px;display:flex;flex-direction:column;justify-content:space-between;transition:.22s ease}.fp-money-pulse-card:hover{transform:translateY(-2px)}.fp-money-pulse-card span{color:var(--fp-muted);font-weight:850}.fp-money-pulse-card strong{font-size:clamp(1.55rem,2.8vw,2.45rem);letter-spacing:-.07em;color:var(--fp-text-strong)}.fp-money-pulse-card small{color:var(--fp-muted);font-weight:700}.fp-money-pulse-card.income{background:linear-gradient(135deg,var(--fp-surface),var(--fp-good-soft))}.fp-money-pulse-card.out{background:linear-gradient(135deg,var(--fp-surface),var(--fp-warn-soft))}.fp-money-pulse-card.buffer.tone-bad{background:linear-gradient(135deg,var(--fp-surface),var(--fp-bad-soft))}.fp-money-pulse-card.buffer.tone-good{background:linear-gradient(135deg,var(--fp-surface),var(--fp-good-soft))}.fp-money-pulse-card.buffer.tone-warn{background:linear-gradient(135deg,var(--fp-surface),var(--fp-warn-soft))}
.fp-cockpit-v11-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.72fr);gap:16px;margin:18px 0}.fp-cockpit-v11-layout.bottom{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)}.fp-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.fp-card-head h2,.fp-month-card h2,.fp-today-card h2{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:-.065em;line-height:.98}.fp-money-stack{display:grid;gap:12px;margin-top:18px}.fp-money-stack>div{display:grid;grid-template-columns:130px 1fr minmax(105px,auto);gap:12px;align-items:center}.fp-money-stack span{color:var(--fp-muted);font-weight:850}.fp-money-stack i{height:12px;border-radius:999px;background:color-mix(in srgb,var(--fp-line) 72%,transparent);overflow:hidden;position:relative}.fp-money-stack i::before{content:"";position:absolute;inset:0 auto 0 0;width:min(var(--w),100%);border-radius:inherit;background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));animation:fpBarIn .9s ease both}.fp-money-stack strong{color:var(--fp-text-strong);text-align:right}.fp-budget-note{margin-top:18px;border-radius:22px;padding:16px;border:1px solid var(--fp-line);display:grid;gap:6px}.fp-budget-note span{color:var(--fp-muted)}.fp-budget-note.tone-bad{background:var(--fp-bad-soft)}.fp-budget-note.tone-warn{background:var(--fp-warn-soft)}.fp-budget-note.tone-good{background:var(--fp-good-soft)}
.fp-cockpit-module-grid-v11{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fp-module-card-v11{min-height:250px;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:30px;box-shadow:var(--fp-shadow-soft);padding:20px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:.24s ease}.fp-module-card-v11::before{content:"";position:absolute;right:-45px;bottom:-45px;width:160px;height:160px;border-radius:50%;background:color-mix(in srgb,var(--fp-accent) 10%,transparent)}.fp-module-card-v11:hover{transform:translateY(-4px);box-shadow:var(--fp-shadow);border-color:color-mix(in srgb,var(--fp-accent) 44%,var(--fp-line))}.fp-module-orb{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:var(--fp-accent-soft);color:var(--fp-accent);font-weight:950}.fp-module-card-v11 h3{font-size:1.5rem;margin:12px 0 6px;color:var(--fp-text-strong);letter-spacing:-.055em}.fp-module-card-v11 p{color:var(--fp-muted);margin:0}.fp-module-card-v11>strong{font-size:1.6rem;letter-spacing:-.06em;color:var(--fp-text-strong)}.fp-module-card-v11>em{font-style:normal;color:var(--fp-accent);font-weight:900}
.fp-journey-steps-v11{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:18px 0}.fp-journey-steps-v11 div{background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:18px;padding:12px 8px;display:grid;gap:8px;text-align:center}.fp-journey-steps-v11 b{width:34px;height:34px;border-radius:13px;margin:auto;display:grid;place-items:center;background:var(--fp-line);color:var(--fp-muted)}.fp-journey-steps-v11 span{font-size:.82rem;color:var(--fp-muted);font-weight:800}.fp-journey-steps-v11 .done{background:var(--fp-good-soft)}.fp-journey-steps-v11 .done b{background:var(--fp-good);color:#fff}.fp-journey-steps-v11 .done span{color:var(--fp-text-strong)}
.fp-onboarding-v11{max-width:100% !important;background:transparent !important;box-shadow:none !important;padding:0 !important}.fp-onboarding-grid-v11{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.fp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-field{display:grid;gap:7px;margin-top:12px}.fp-field span,.fp-field label{font-weight:850;color:var(--fp-text-strong)}.fp-row-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:18px;padding:12px;margin-top:10px}.fp-row-card.money{grid-template-columns:190px 1fr 150px 110px}.fp-row-card.account{grid-template-columns:1fr 1fr 180px 90px 130px}.fp-row-card.item{grid-template-columns:150px 150px 1.1fr 1fr 1fr 130px 85px}.fp-row-card input,.fp-row-card select{min-height:42px}.fp-check{display:flex;align-items:center;gap:8px;color:var(--fp-muted);font-weight:800}.fp-check.big{font-size:1.02rem;color:var(--fp-text-strong);background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:16px;padding:12px;margin:12px 0}.fp-free-cashflow{border-radius:26px;border:1px solid var(--fp-line);padding:18px;display:grid;gap:8px;margin:14px 0;background:var(--fp-surface-2)}.fp-free-cashflow strong{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.08em;color:var(--fp-text-strong)}.fp-free-cashflow.tone-bad{background:var(--fp-bad-soft)}.fp-free-cashflow.tone-warn{background:var(--fp-warn-soft)}.fp-free-cashflow.tone-good{background:var(--fp-good-soft)}.fp-sticky-save{position:sticky;bottom:14px;z-index:50;margin:24px auto 0;max-width:860px;background:color-mix(in srgb,var(--fp-surface) 92%,transparent);backdrop-filter:blur(18px);border:1px solid var(--fp-line);border-radius:999px;box-shadow:var(--fp-shadow);padding:10px;display:flex;align-items:center;justify-content:center;gap:10px}.fp-sticky-save span{font-weight:900;color:var(--fp-text-strong);padding:0 12px}.fp-section-tight{margin:28px 0}.fp-section-minihead{margin:0 0 14px}.fp-section-minihead h2{margin:6px 0;font-size:clamp(1.6rem,3.6vw,3.2rem);letter-spacing:-.07em;color:var(--fp-text-strong)}
@keyframes fpGlowFloat{from{transform:translate3d(0,0,0) scale(.96)}to{transform:translate3d(-28px,22px,0) scale(1.08)}}@keyframes fpSlowSpin{to{transform:rotate(360deg)}}@keyframes fpBarIn{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
@media (max-width:1180px){.fp-cockpit-module-grid-v11{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-money-pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-cockpit-v11-layout,.fp-cockpit-v11-layout.bottom,.fp-cockpit-v11-hero,.fp-onboarding-hero,.fp-onboarding-grid-v11{grid-template-columns:1fr}.fp-row-card.item{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-row-card.account{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.fp-cockpit-v11-copy,.fp-onboarding-hero>div:first-child{border-radius:30px;padding:24px}.fp-money-pulse-grid,.fp-cockpit-module-grid-v11{grid-template-columns:1fr}.fp-money-stack>div{grid-template-columns:1fr}.fp-money-stack strong{text-align:left}.fp-journey-steps-v11{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-form-grid,.fp-row-card,.fp-row-card.money,.fp-row-card.item,.fp-row-card.account{grid-template-columns:1fr}.fp-sticky-save{border-radius:24px;flex-direction:column;align-items:stretch}.fp-sticky-save .fp-btn{width:100%}.fp-cockpit-v11-copy h1,.fp-onboarding-hero h1{font-size:clamp(2.4rem,14vw,4.2rem)}}

/* =========================================================
   UX2026 V12 — Mandanten-Cockpit Text- & Ausblick-Feinschliff
   ========================================================= */
.fp-growth-preview-v12{
  margin-top:18px;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(280px,1fr) minmax(180px,.45fr);
  gap:14px;
  align-items:stretch;
  border:1px solid var(--fp-line);
  border-radius:26px;
  background:
    radial-gradient(360px 180px at 0% 0%, color-mix(in srgb,var(--fp-accent) 14%, transparent), transparent 68%),
    linear-gradient(135deg,var(--fp-surface-2),color-mix(in srgb,var(--fp-good-soft) 46%, var(--fp-surface)));
  padding:16px;
  overflow:hidden;
  position:relative;
}
.fp-growth-preview-v12::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-80px;
  bottom:-90px;
  border-radius:50%;
  border:1px solid color-mix(in srgb,var(--fp-accent) 30%, transparent);
  opacity:.8;
  animation:fpSlowSpin 20s linear infinite;
  pointer-events:none;
}
.fp-growth-copy-v12{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:5px}
.fp-growth-copy-v12 h3{margin:2px 0 0;color:var(--fp-text-strong);font-size:clamp(1.25rem,2.2vw,1.85rem);line-height:1.02;letter-spacing:-.055em}
.fp-growth-copy-v12 p{margin:0;color:var(--fp-muted);font-weight:650;line-height:1.55}
.fp-growth-bars-v12{position:relative;z-index:1;display:grid;gap:10px;align-content:center}
.fp-growth-row-v12{display:grid;grid-template-columns:150px 1fr minmax(92px,auto);gap:12px;align-items:center;background:color-mix(in srgb,var(--fp-surface) 72%, transparent);border:1px solid color-mix(in srgb,var(--fp-line) 72%, transparent);border-radius:18px;padding:12px}
.fp-growth-row-v12 span{color:var(--fp-muted);font-weight:850;font-size:.88rem}
.fp-growth-row-v12 i{height:13px;border-radius:999px;background:color-mix(in srgb,var(--fp-line) 72%, transparent);overflow:hidden;position:relative}
.fp-growth-row-v12 i::before{content:"";position:absolute;inset:0 auto 0 0;width:min(var(--w),100%);border-radius:inherit;background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));animation:fpBarIn .95s ease both}
.fp-growth-row-v12.highlight i::before{background:linear-gradient(90deg,var(--fp-good),var(--fp-accent-2))}
.fp-growth-row-v12 strong{color:var(--fp-text-strong);letter-spacing:-.045em;text-align:right;font-size:1.05rem}
.fp-growth-delta-v12{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:22px;padding:14px;box-shadow:var(--fp-shadow-soft)}
.fp-growth-delta-v12 b{font-size:clamp(1.55rem,2.6vw,2.2rem);letter-spacing:-.075em;color:var(--fp-good)}
.fp-growth-delta-v12 span{color:var(--fp-muted);font-weight:720;font-size:.9rem;line-height:1.45}
.fp-money-pulse-card.out{background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-info-soft) 58%, var(--fp-surface))) !important}
.fp-money-pulse-card.buffer.tone-info{background:linear-gradient(135deg,var(--fp-surface),var(--fp-info-soft))}
@media (max-width:1180px){
  .fp-growth-preview-v12{grid-template-columns:1fr}
  .fp-growth-row-v12{grid-template-columns:130px 1fr minmax(92px,auto)}
}
@media (max-width:720px){
  .fp-growth-preview-v12{border-radius:22px;padding:14px}
  .fp-growth-row-v12{grid-template-columns:1fr;gap:8px}
  .fp-growth-row-v12 strong{text-align:left}
}


/* =========================================================
   UX2026 V13 — symmetrischer Cockpit-Ausblick
   ========================================================= */
.fp-growth-preview-v12{display:none !important}
.fp-growth-preview-v13{
  margin-top:18px;
  border:1px solid var(--fp-line);
  border-radius:28px;
  background:
    radial-gradient(520px 220px at 8% 0%, color-mix(in srgb,var(--fp-accent) 12%, transparent), transparent 66%),
    linear-gradient(135deg,var(--fp-surface-2),color-mix(in srgb,var(--fp-good-soft) 34%, var(--fp-surface)));
  padding:18px;
  display:grid;
  gap:14px;
  overflow:hidden;
  position:relative;
}
.fp-growth-preview-v13::before{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0%,color-mix(in srgb,var(--fp-accent) 9%, transparent) 42%,transparent 72%);
  opacity:.8;
  animation:fpSoftSweep 8s ease-in-out infinite;
}
.fp-growth-head-v13{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(260px,1.1fr);
  gap:14px;
  align-items:end;
}
.fp-growth-head-v13 h3{
  margin:4px 0 0;
  color:var(--fp-text-strong);
  font-size:clamp(1.35rem,2.6vw,2.1rem);
  line-height:.98;
  letter-spacing:-.065em;
}
.fp-growth-head-v13 p{
  margin:0;
  color:var(--fp-muted);
  font-weight:680;
  line-height:1.55;
}
.fp-growth-grid-v13{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.fp-growth-card-v13{
  min-height:170px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
  background:color-mix(in srgb,var(--fp-surface) 82%, transparent);
  border:1px solid color-mix(in srgb,var(--fp-line) 78%, transparent);
  border-radius:22px;
  padding:16px;
  box-shadow:0 12px 28px color-mix(in srgb,var(--fp-text-strong) 7%, transparent);
}
.fp-growth-card-v13.accent{
  background:color-mix(in srgb,var(--fp-accent-soft) 62%, var(--fp-surface));
  border-color:color-mix(in srgb,var(--fp-accent) 30%, var(--fp-line));
}
.fp-growth-card-v13.soft{
  background:color-mix(in srgb,var(--fp-good-soft) 52%, var(--fp-surface));
  border-color:color-mix(in srgb,var(--fp-good) 22%, var(--fp-line));
}
.fp-growth-card-v13 span{
  color:var(--fp-muted);
  font-weight:900;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.fp-growth-card-v13 strong{
  color:var(--fp-text-strong);
  font-size:clamp(1.65rem,3vw,2.35rem);
  line-height:.95;
  letter-spacing:-.08em;
}
.fp-growth-card-v13 i{
  display:block;
  height:10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--fp-line) 74%, transparent);
  overflow:hidden;
  position:relative;
}
.fp-growth-card-v13 i::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:min(var(--w),100%);
  border-radius:inherit;
  background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));
  animation:fpBarIn .9s ease both;
}
.fp-growth-card-v13 small{
  color:var(--fp-muted);
  font-weight:680;
  line-height:1.35;
}
.fp-growth-note-v13{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(140px,.5fr) minmax(110px,.35fr) minmax(260px,1.15fr);
  gap:12px;
  align-items:center;
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:20px;
  padding:14px 16px;
  box-shadow:var(--fp-shadow-soft);
}
.fp-growth-note-v13 span{color:var(--fp-muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.fp-growth-note-v13 strong{color:var(--fp-good);font-size:clamp(1.35rem,2.4vw,1.9rem);letter-spacing:-.07em}
.fp-growth-note-v13 small{color:var(--fp-muted);font-weight:680;line-height:1.4}
@keyframes fpSoftSweep{0%,100%{transform:translateX(-12%);opacity:.28}50%{transform:translateX(12%);opacity:.72}}
@media (max-width:1080px){
  .fp-growth-head-v13,.fp-growth-grid-v13,.fp-growth-note-v13{grid-template-columns:1fr}
  .fp-growth-card-v13{min-height:150px}
}
@media (max-width:680px){
  .fp-growth-preview-v13{padding:14px;border-radius:22px}
  .fp-growth-card-v13{min-height:auto}
}

/* =========================================================
   V14 Cockpit: neue Datenreise — kompakt, responsiv, kein Text-Overflow
   ========================================================= */
.fp-journey-v14{
  display:grid;
  gap:16px;
  margin:18px 0 20px;
  min-width:0;
}
.fp-journey-progress-v14{
  height:10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--fp-line) 72%,transparent);
  overflow:hidden;
  position:relative;
  border:1px solid color-mix(in srgb,var(--fp-line) 76%,transparent);
}
.fp-journey-progress-v14 span{
  display:block;
  height:100%;
  width:min(var(--progress),100%);
  border-radius:inherit;
  background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));
  box-shadow:0 0 28px color-mix(in srgb,var(--fp-accent) 28%,transparent);
  animation:fpBarIn .8s ease both;
}
.fp-journey-steps-v14{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(158px,1fr));
  gap:10px;
  min-width:0;
}
.fp-journey-steps-v14 a{
  min-width:0;
  min-height:82px;
  background:var(--fp-surface-2);
  border:1px solid var(--fp-line);
  border-radius:20px;
  padding:12px;
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:10px;
  align-items:center;
  color:var(--fp-text) !important;
  box-shadow:none;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
  overflow:hidden;
}
.fp-journey-steps-v14 a:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--fp-accent) 42%,var(--fp-line));
  box-shadow:var(--fp-shadow-soft);
}
.fp-journey-steps-v14 b{
  width:36px;
  height:36px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:color-mix(in srgb,var(--fp-line) 80%,transparent);
  color:var(--fp-muted);
  font-weight:950;
  font-size:.9rem;
  line-height:1;
  flex:0 0 auto;
}
.fp-journey-steps-v14 span{
  min-width:0;
  display:grid;
  gap:2px;
}
.fp-journey-steps-v14 strong{
  display:block;
  color:var(--fp-text-strong);
  font-size:clamp(.9rem,1.15vw,1.02rem);
  line-height:1.08;
  letter-spacing:-.035em;
  white-space:normal;
  overflow-wrap:anywhere;
}
.fp-journey-steps-v14 small{
  display:block;
  color:var(--fp-muted);
  font-size:clamp(.72rem,.9vw,.82rem);
  line-height:1.22;
  font-weight:720;
  white-space:normal;
  overflow-wrap:anywhere;
}
.fp-journey-steps-v14 a.done{
  background:linear-gradient(135deg,var(--fp-good-soft),color-mix(in srgb,var(--fp-surface) 72%,var(--fp-good-soft)));
  border-color:color-mix(in srgb,var(--fp-good) 32%,var(--fp-line));
}
.fp-journey-steps-v14 a.done b{
  background:var(--fp-good);
  color:#fff;
  box-shadow:0 10px 22px color-mix(in srgb,var(--fp-good) 22%,transparent);
}
.fp-journey-steps-v14 a.done small{
  color:color-mix(in srgb,var(--fp-text) 78%,var(--fp-muted));
}

@media (max-width:980px){
  .fp-journey-steps-v14{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fp-journey-steps-v14 a{min-height:76px;}
}
@media (max-width:560px){
  .fp-journey-steps-v14{grid-template-columns:1fr;gap:8px;}
  .fp-journey-steps-v14 a{min-height:0;border-radius:18px;padding:11px;}
  .fp-journey-steps-v14 b{width:34px;height:34px;border-radius:13px;}
  .fp-journey-progress-v14{height:8px;}
}

/* =========================================================
   UX2026 V15 — Geführte Einrichtung als echter Wizard
   ========================================================= */
.fp-onboarding-wizard-v15{display:grid;gap:18px;max-width:1220px;margin:0 auto;padding:clamp(16px,2.4vw,28px)}
.fp-onboarding-hero-v15{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.32fr);gap:18px;align-items:center;background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 45%,var(--fp-surface)));border:1px solid var(--fp-line);border-radius:34px;box-shadow:var(--fp-shadow-soft);padding:clamp(20px,3.4vw,38px)}
.fp-onboarding-hero-v15::before{content:"";position:absolute;inset:auto -80px -120px auto;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 20%,transparent),transparent 66%);animation:fpFloatGlow 9s ease-in-out infinite;pointer-events:none}
.fp-onboarding-hero-copy{position:relative;z-index:1;display:grid;gap:10px}.fp-onboarding-hero-copy h1{margin:0;color:var(--fp-text-strong);font-size:clamp(2.1rem,5.5vw,5rem);line-height:.96;letter-spacing:-.075em}.fp-onboarding-hero-copy p{margin:0;color:var(--fp-muted);font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65;max-width:780px}
.fp-onboarding-status-card{position:relative;z-index:1;background:color-mix(in srgb,var(--fp-surface) 86%,transparent);border:1px solid var(--fp-line);border-radius:28px;padding:18px;display:grid;justify-items:center;text-align:center;gap:12px;box-shadow:var(--fp-shadow-soft)}
.fp-onboarding-status-card strong{display:block;color:var(--fp-text-strong);font-size:1.02rem}.fp-onboarding-status-card small{display:block;color:var(--fp-muted);font-weight:720;line-height:1.35}
.fp-wizard-steps{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;background:color-mix(in srgb,var(--fp-surface) 78%,transparent);border:1px solid var(--fp-line);border-radius:24px;padding:10px;box-shadow:var(--fp-shadow-soft)}
.fp-wizard-steps a{min-width:0;display:grid;gap:7px;justify-items:center;text-align:center;color:var(--fp-muted)!important;border-radius:17px;padding:10px 6px;border:1px solid transparent;transition:transform .18s ease,background .18s ease,border-color .18s ease;color .18s ease}.fp-wizard-steps a:hover{transform:translateY(-1px);background:var(--fp-surface-2);color:var(--fp-text-strong)!important}.fp-wizard-steps span{width:28px;height:28px;border-radius:11px;background:var(--fp-surface-2);border:1px solid var(--fp-line);display:grid;place-items:center;font-weight:950;font-size:.78rem;color:var(--fp-muted)}.fp-wizard-steps strong{font-size:.74rem;line-height:1.05;letter-spacing:-.02em;white-space:normal;overflow-wrap:anywhere}.fp-wizard-steps a.active{background:var(--fp-accent-soft);color:var(--fp-text-strong)!important;border-color:color-mix(in srgb,var(--fp-accent) 32%,var(--fp-line))}.fp-wizard-steps a.active span{background:linear-gradient(135deg,var(--fp-accent),var(--fp-accent-2));color:#211600;border-color:transparent}.fp-wizard-steps a.done span{background:var(--fp-good);border-color:transparent;color:#fff}.fp-wizard-steps a.done{color:var(--fp-text)!important}
.fp-wizard-card{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:34px;box-shadow:var(--fp-shadow);padding:clamp(18px,3vw,34px);display:grid;gap:18px;overflow:hidden}.fp-wizard-head{display:grid;gap:8px}.fp-wizard-head.center{text-align:center;justify-items:center}.fp-wizard-head h2{margin:0;color:var(--fp-text-strong);font-size:clamp(1.85rem,4vw,3.4rem);line-height:.98;letter-spacing:-.07em}.fp-wizard-head p{margin:0;color:var(--fp-muted);max-width:820px;line-height:1.65}.fp-form-grid-comfort{gap:14px}.fp-form-grid-comfort .fp-field{min-width:0}.fp-children-field.is-hidden{display:none!important}.fp-choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-choice-card{position:relative;display:grid;gap:6px;border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);padding:16px;cursor:pointer;transition:.18s ease}.fp-choice-card input{position:absolute;opacity:0}.fp-choice-card span{color:var(--fp-text-strong);font-weight:950;font-size:1.05rem}.fp-choice-card small{color:var(--fp-muted);font-weight:680;line-height:1.4}.fp-choice-card:has(input:checked){background:var(--fp-accent-soft);border-color:color-mix(in srgb,var(--fp-accent) 36%,var(--fp-line));box-shadow:0 14px 30px color-mix(in srgb,var(--fp-accent) 10%,transparent)}
.fp-partner-single.is-muted{opacity:.45;filter:saturate(.65)}.fp-partner-single.is-muted input{pointer-events:none}.fp-wizard-list{display:grid;gap:10px}.fp-wizard-list .fp-row-card,.fp-partner-single{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) auto;gap:9px;align-items:center;background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:20px;padding:12px;box-shadow:none}.fp-row-card.money{grid-template-columns:minmax(150px,.7fr) minmax(160px,1fr) minmax(130px,.6fr) auto auto}.fp-row-card.account{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) minmax(150px,.8fr) minmax(82px,.4fr) minmax(130px,.7fr) auto}.fp-row-card.item{grid-template-columns:minmax(120px,.7fr) minmax(150px,.8fr) minmax(150px,1fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(120px,.55fr) auto auto}.fp-row-card input,.fp-row-card select{min-width:0}.fp-row-remove{width:36px;height:36px;border-radius:13px!important;border:1px solid var(--fp-line)!important;background:var(--fp-surface)!important;color:var(--fp-muted)!important;box-shadow:none!important;padding:0!important;min-height:0!important;font-size:1.3rem;line-height:1;display:grid;place-items:center}.fp-row-remove:hover{background:var(--fp-bad-soft)!important;color:var(--fp-bad)!important;border-color:color-mix(in srgb,var(--fp-bad) 32%,var(--fp-line))!important}.fp-soft-highlight{background:linear-gradient(135deg,var(--fp-accent-soft),var(--fp-surface-2))!important;border-color:color-mix(in srgb,var(--fp-accent) 28%,var(--fp-line))!important}.fp-wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--fp-line)}.fp-wizard-actions.single{justify-content:flex-start;border-top:0}.fp-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fp-result-tile{background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:22px;padding:16px;display:grid;gap:4px}.fp-result-tile span{color:var(--fp-muted);font-weight:850;font-size:.86rem}.fp-result-tile strong{color:var(--fp-text-strong);font-size:clamp(1.25rem,2vw,1.75rem);letter-spacing:-.055em}.fp-result-tile small{color:var(--fp-muted);font-weight:780}.fp-result-tile.hero{background:var(--fp-accent-soft);border-color:color-mix(in srgb,var(--fp-accent) 34%,var(--fp-line))}.fp-result-tile.hero.tone-good{background:var(--fp-good-soft);border-color:color-mix(in srgb,var(--fp-good) 30%,var(--fp-line))}.fp-result-tile.hero.tone-bad{background:var(--fp-bad-soft);border-color:color-mix(in srgb,var(--fp-bad) 30%,var(--fp-line))}.fp-result-message{border:1px solid var(--fp-line);border-radius:26px;padding:18px;background:var(--fp-surface-2)}.fp-result-message h3{margin:0 0 5px;color:var(--fp-text-strong);font-size:1.35rem}.fp-result-message p{margin:0;color:var(--fp-muted);line-height:1.6}.fp-result-message.tone-good{background:var(--fp-good-soft);border-color:color-mix(in srgb,var(--fp-good) 28%,var(--fp-line))}.fp-result-message.tone-bad{background:var(--fp-bad-soft);border-color:color-mix(in srgb,var(--fp-bad) 28%,var(--fp-line))}.fp-result-message.tone-warn{background:var(--fp-warn-soft);border-color:color-mix(in srgb,var(--fp-warn) 28%,var(--fp-line))}.fp-confirm-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center}.fp-review-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.fp-review-tile{display:grid;gap:6px;background:var(--fp-surface-2);border:1px solid var(--fp-line);border-radius:22px;padding:16px;color:var(--fp-text)!important;min-height:150px}.fp-review-tile span{color:var(--fp-muted);font-weight:850}.fp-review-tile strong{color:var(--fp-text-strong);font-size:1.45rem;letter-spacing:-.055em}.fp-review-tile small{color:var(--fp-muted);line-height:1.35;font-weight:680}.fp-review-tile:hover{transform:translateY(-2px);box-shadow:var(--fp-shadow-soft);border-color:color-mix(in srgb,var(--fp-accent) 36%,var(--fp-line))}
@media (max-width:1180px){.fp-wizard-steps{grid-template-columns:repeat(5,minmax(0,1fr))}.fp-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fp-wizard-list .fp-row-card,.fp-row-card.money,.fp-row-card.account,.fp-row-card.item,.fp-partner-single{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.fp-row-card .fp-check{grid-column:1/-2}.fp-row-remove{grid-column:-2/-1}}
@media (max-width:760px){.fp-onboarding-wizard-v15{padding:12px;gap:12px}.fp-onboarding-hero-v15{grid-template-columns:1fr;border-radius:26px}.fp-wizard-card{border-radius:26px}.fp-wizard-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.fp-wizard-steps a{grid-template-columns:28px 1fr;display:grid;justify-items:start;text-align:left;align-items:center}.fp-wizard-steps span{grid-row:1/2}.fp-choice-row,.fp-form-grid,.fp-result-grid,.fp-review-grid{grid-template-columns:1fr}.fp-wizard-list .fp-row-card,.fp-row-card.money,.fp-row-card.account,.fp-row-card.item,.fp-partner-single{grid-template-columns:1fr}.fp-row-card .fp-check,.fp-row-remove{grid-column:auto}.fp-row-remove{width:100%;height:38px}.fp-wizard-actions{position:sticky;bottom:10px;z-index:10;background:color-mix(in srgb,var(--fp-surface) 88%,transparent);border:1px solid var(--fp-line);border-radius:20px;padding:10px;box-shadow:var(--fp-shadow);backdrop-filter:blur(14px)}.fp-wizard-actions .fp-btn{flex:1}.fp-confirm-row .fp-btn{width:100%}}
@media (max-width:460px){.fp-wizard-steps{grid-template-columns:1fr}.fp-wizard-steps a{padding:8px 10px}.fp-onboarding-hero-copy h1{font-size:2rem}.fp-wizard-head h2{font-size:1.75rem}}

/* =========================================================
   UX2026 V16 — Onboarding responsive scaling refinement
   Goal: fills large screens better, stays calm on small screens.
   ========================================================= */
.fp-onboarding-wizard-v15{
  width:100%;
  max-width:min(1680px, calc(100vw - clamp(20px, 4vw, 80px)));
  margin-inline:auto;
  padding:clamp(14px, 1.8vw, 34px);
  gap:clamp(14px, 1.6vw, 26px);
}
.fp-onboarding-hero-v15{
  min-height:clamp(220px, 24dvh, 380px);
  grid-template-columns:minmax(0, 1.35fr) minmax(290px, .42fr);
  gap:clamp(14px, 1.8vw, 28px);
}
.fp-onboarding-hero-copy h1{
  font-size:clamp(2.25rem, 4.7vw, 5.8rem);
  max-width:1120px;
}
.fp-onboarding-hero-copy p{max-width:900px}
.fp-onboarding-status-card{
  align-self:stretch;
  align-content:center;
}
.fp-wizard-steps{
  grid-template-columns:repeat(10, minmax(0, 1fr));
  gap:clamp(6px, .7vw, 10px);
  padding:clamp(8px, .8vw, 12px);
}
.fp-wizard-steps a{
  min-height:76px;
  align-content:center;
  padding:clamp(8px, .75vw, 12px) 7px;
}
.fp-wizard-steps strong{
  max-width:100%;
  font-size:clamp(.68rem, .62vw, .78rem);
  line-height:1.12;
  overflow-wrap:anywhere;
  hyphens:auto;
}
.fp-wizard-card{
  width:100%;
  min-height:clamp(460px, 54dvh, 760px);
  padding:clamp(18px, 2.15vw, 42px);
  align-content:start;
}
.fp-wizard-head h2{
  font-size:clamp(1.8rem, 3.1vw, 4rem);
  max-width:1100px;
}
.fp-wizard-head p{max-width:940px}
.fp-form-grid-comfort{
  grid-template-columns:repeat(auto-fit, minmax(min(260px, 100%), 1fr));
  gap:clamp(12px, 1vw, 18px);
}
.fp-wizard-list{
  gap:clamp(10px, .8vw, 14px);
}
.fp-wizard-list .fp-row-card,
.fp-partner-single{
  min-width:0;
}
.fp-row-card input,
.fp-row-card select,
.fp-row-card textarea,
.fp-row-card .fp-check{
  min-width:0;
  max-width:100%;
}
.fp-row-card input::placeholder{white-space:normal}
.fp-wizard-list > .fp-row-card:not(.money):not(.account):not(.item),
.fp-partner-single{
  grid-template-columns:repeat(auto-fit, minmax(min(220px, 100%), 1fr));
}
.fp-wizard-list > .fp-row-card:not(.money):not(.account):not(.item) .fp-row-remove,
.fp-partner-single .fp-row-remove{
  width:100%;
}
.fp-result-grid{
  grid-template-columns:repeat(auto-fit, minmax(min(230px, 100%), 1fr));
}
.fp-review-grid{
  grid-template-columns:repeat(auto-fit, minmax(min(220px, 100%), 1fr));
}
.fp-confirm-row .fp-btn,
.fp-wizard-actions .fp-btn{
  white-space:normal;
}
@media (min-width:1500px){
  .fp-row-card.item{grid-template-columns:minmax(130px,.68fr) minmax(160px,.82fr) minmax(170px,1fr) minmax(150px,.84fr) minmax(150px,.84fr) minmax(130px,.55fr) minmax(82px,.38fr) 38px}
  .fp-row-card.money{grid-template-columns:minmax(170px,.75fr) minmax(220px,1.15fr) minmax(150px,.62fr) minmax(110px,.42fr) 38px}
  .fp-row-card.account{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(180px,.9fr) minmax(90px,.35fr) minmax(150px,.7fr) 38px}
}
@media (max-width:1499px) and (min-width:1021px){
  .fp-onboarding-wizard-v15{max-width:min(1380px, calc(100vw - 32px));}
  .fp-wizard-steps{grid-template-columns:repeat(5, minmax(0, 1fr));}
  .fp-wizard-steps a{min-height:58px;grid-template-columns:30px 1fr;justify-items:start;text-align:left;align-items:center}
  .fp-wizard-steps span{grid-row:1/2}
  .fp-row-card.item{grid-template-columns:repeat(3, minmax(0, 1fr)) 42px;}
  .fp-row-card.money{grid-template-columns:repeat(4, minmax(0, 1fr)) 42px;}
  .fp-row-card.account{grid-template-columns:repeat(3, minmax(0, 1fr)) 42px;}
  .fp-row-card.item .fp-check{grid-column:1/-2}
  .fp-row-card.account .fp-row-remove,
  .fp-row-card.money .fp-row-remove,
  .fp-row-card.item .fp-row-remove{width:100%;height:42px;grid-column:-2/-1;}
}
@media (max-width:1020px){
  .fp-onboarding-wizard-v15{max-width:100%;padding:clamp(10px, 2.4vw, 18px);}
  .fp-onboarding-hero-v15{grid-template-columns:1fr;min-height:0;}
  .fp-onboarding-status-card{grid-template-columns:auto 1fr;justify-items:start;text-align:left;align-items:center;}
  .fp-onboarding-status-card .fp-score-ring-xl{width:118px;height:118px;margin:0;}
  .fp-onboarding-status-card .fp-score-ring-xl span{font-size:1.45rem;}
  .fp-wizard-card{min-height:0;}
  .fp-row-card.item,
  .fp-row-card.money,
  .fp-row-card.account,
  .fp-wizard-list > .fp-row-card:not(.money):not(.account):not(.item),
  .fp-partner-single{grid-template-columns:repeat(2, minmax(0, 1fr));}
  .fp-row-remove{width:100%;height:40px;}
}
@media (max-width:620px){
  .fp-onboarding-wizard-v15{padding:10px;gap:10px;}
  .fp-onboarding-hero-v15{border-radius:24px;padding:18px;}
  .fp-onboarding-hero-copy h1{font-size:clamp(2rem, 11vw, 3.4rem);}
  .fp-onboarding-status-card{grid-template-columns:1fr;justify-items:center;text-align:center;}
  .fp-wizard-steps{grid-template-columns:1fr;max-height:220px;overflow:auto;}
  .fp-wizard-steps a{min-height:0;}
  .fp-row-card.item,
  .fp-row-card.money,
  .fp-row-card.account,
  .fp-wizard-list > .fp-row-card:not(.money):not(.account):not(.item),
  .fp-partner-single,
  .fp-choice-row,
  .fp-result-grid,
  .fp-review-grid{grid-template-columns:1fr;}
  .fp-wizard-actions{position:sticky;bottom:8px;z-index:30;display:grid;grid-template-columns:1fr;background:color-mix(in srgb,var(--fp-surface) 92%,transparent);backdrop-filter:blur(16px);border:1px solid var(--fp-line);border-radius:20px;padding:10px;box-shadow:var(--fp-shadow);}
  .fp-wizard-actions .fp-btn{width:100%;}
}


/* =========================================================
   UX2026 V17 — Onboarding wider desktop layout
   Goal: let the guided setup use the available horizontal space
   without hurting tablet/mobile readability.
   ========================================================= */
body:has(.fp-onboarding-wizard-v15) .fp-app-shell,
body:has(.fp-onboarding-wizard-v15) .fp-app-shell-clean,
body:has(.fp-onboarding-wizard-v15) #fp-content-shell{
  width:100% !important;
  max-width:100% !important;
  padding-inline:clamp(10px, 1.35vw, 28px) !important;
}

.fp-onboarding-wizard-v15{
  width:100% !important;
  max-width:min(1960px, calc(100vw - clamp(16px, 2vw, 36px))) !important;
}

@media (min-width:1200px){
  .fp-onboarding-hero-v15{
    grid-template-columns:minmax(0, 1.7fr) minmax(300px, .34fr) !important;
  }

  .fp-wizard-steps{
    grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
  }

  .fp-wizard-steps a{
    min-height:72px;
    padding-inline:clamp(7px, .55vw, 11px);
  }

  .fp-wizard-card{
    padding:clamp(22px, 1.65vw, 38px) !important;
  }

  .fp-form-grid-comfort{
    grid-template-columns:repeat(auto-fit, minmax(min(320px, 100%), 1fr)) !important;
  }

  .fp-row-card.money{
    grid-template-columns:minmax(170px,.75fr) minmax(230px,1.18fr) minmax(150px,.62fr) minmax(112px,.42fr) 42px !important;
  }

  .fp-row-card.account{
    grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(210px,.95fr) minmax(100px,.36fr) minmax(170px,.72fr) 42px !important;
  }

  .fp-row-card.item{
    grid-template-columns:minmax(135px,.68fr) minmax(165px,.82fr) minmax(190px,1fr) minmax(155px,.84fr) minmax(155px,.84fr) minmax(135px,.55fr) minmax(92px,.38fr) 42px !important;
  }
}

@media (min-width:1021px) and (max-width:1199px){
  .fp-onboarding-wizard-v15{
    max-width:calc(100vw - 20px) !important;
  }

  .fp-wizard-steps{
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  }
}

/* Onboarding wirklich mittig zentrieren */
body:has(.fp-wizard-card) .fp-app-shell,
body:has(.fp-wizard-card) .fp-app-shell-clean {
  display: block !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding-left: clamp(14px, 2vw, 32px) !important;
  padding-right: clamp(14px, 2vw, 32px) !important;
}

body:has(.fp-wizard-card) .fp-content,
body:has(.fp-wizard-card) #fp-content-shell {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.fp-wizard-card.reveal-on-scroll {
width: min(94vw, 1850px) !important;  max-width: 1900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =========================================================
   V18 Finanzstrategie — replaces old pyramid with strategic visual map
   ========================================================= */
body:has(.fp-strategy-page-v18) .fp-app-shell,
body:has(.fp-strategy-page-v18) .fp-app-shell-clean{
  display:block !important;
  max-width:none !important;
  width:100% !important;
  padding-inline:clamp(14px,2.2vw,38px) !important;
}
body:has(.fp-strategy-page-v18) .fp-content,
body:has(.fp-strategy-page-v18) #fp-content-shell{
  width:100% !important;
  max-width:none !important;
}
.fp-strategy-page-v18{
  width:min(96vw,1860px);
  max-width:1860px;
  margin:0 auto;
  display:grid;
  gap:clamp(16px,2vw,28px);
}
.fp-strategy-adminbar-v18{
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:24px;
  box-shadow:var(--fp-shadow-soft);
  padding:14px;
}
.fp-strategy-adminbar-v18 form{
  display:grid !important;
  grid-template-columns:minmax(240px,1fr) minmax(190px,.32fr) minmax(190px,.32fr) auto;
  gap:10px;
  align-items:end;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  max-width:none !important;
}
.fp-strategy-adminbar-v18 strong{display:block;color:var(--fp-text-strong);font-size:1.05rem;letter-spacing:-.03em}
.fp-strategy-hero-v18{
  position:relative;
  overflow:hidden;
  min-height:clamp(520px,58vh,760px);
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:clamp(24px,5vw,78px);
  align-items:center;
  padding:clamp(26px,4.8vw,78px);
  border:1px solid var(--fp-line);
  border-radius:clamp(30px,4vw,52px);
  background:
    radial-gradient(720px 440px at 12% 8%, color-mix(in srgb,var(--fp-accent) 20%, transparent), transparent 68%),
    radial-gradient(600px 420px at 94% 10%, color-mix(in srgb,var(--fp-info) 14%, transparent), transparent 64%),
    linear-gradient(140deg,color-mix(in srgb,var(--fp-surface) 96%, transparent), color-mix(in srgb,var(--fp-surface-2) 96%, transparent));
  box-shadow:var(--fp-shadow);
  isolation:isolate;
}
.fp-strategy-hero-v18::before,
.fp-strategy-hero-v18::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:999px;
  filter:blur(.2px);
  opacity:.72;
  z-index:-1;
}
.fp-strategy-hero-v18::before{
  width:28rem;height:28rem;right:-8rem;bottom:-10rem;
  background:conic-gradient(from 20deg, color-mix(in srgb,var(--fp-accent) 28%, transparent), transparent 34%, color-mix(in srgb,var(--fp-good) 18%, transparent), transparent 70%, color-mix(in srgb,var(--fp-info) 18%, transparent));
  animation:fpStrategySpin 22s linear infinite;
}
.fp-strategy-hero-v18::after{
  width:16rem;height:16rem;left:42%;top:-7rem;
  background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent-2) 28%, transparent),transparent 68%);
  animation:fpFloatY 7s ease-in-out infinite alternate;
}
@keyframes fpStrategySpin{to{transform:rotate(360deg)}}
.fp-strategy-hero-copy-v18{display:grid;gap:16px;align-content:center;max-width:760px}
.fp-strategy-hero-copy-v18 h1{margin:0;color:var(--fp-text-strong);font-size:clamp(2.4rem,5.2vw,6.2rem);line-height:.92;letter-spacing:-.085em}
.fp-strategy-hero-copy-v18 p{margin:0;color:var(--fp-muted);font-size:clamp(1.02rem,1.45vw,1.25rem);line-height:1.7;max-width:720px}
.fp-strategy-hero-actions-v18{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.fp-strategy-orbit-v18{
  position:relative;
  width:min(100%,660px);
  aspect-ratio:1;
  margin-inline:auto;
  border-radius:50%;
  background:
    radial-gradient(circle at center,var(--fp-surface) 0 25%,transparent 25.5%),
    repeating-radial-gradient(circle at center,transparent 0 17%,color-mix(in srgb,var(--fp-line) 68%, transparent) 17.25% 17.7%,transparent 18% 34%),
    conic-gradient(from -90deg,var(--fp-accent) calc(var(--score)*1%),color-mix(in srgb,var(--fp-line) 75%, transparent) 0);
  box-shadow:inset 0 0 0 1px var(--fp-line), var(--fp-shadow);
}
.fp-strategy-orbit-glow-v18{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 15%, transparent),transparent 70%);animation:fpPulseSoft 4.2s ease-in-out infinite}
@keyframes fpPulseSoft{50%{transform:scale(1.04);opacity:.78}}
.fp-strategy-core-v18{position:absolute;inset:34%;border-radius:50%;display:grid;place-items:center;text-align:center;padding:20px;background:var(--fp-surface);border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft)}
.fp-strategy-core-v18 span{color:var(--fp-accent);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}
.fp-strategy-core-v18 strong{font-size:clamp(2.7rem,5vw,5.4rem);line-height:.9;letter-spacing:-.08em;color:var(--fp-text-strong)}
.fp-strategy-core-v18 small{max-width:180px;color:var(--fp-muted);font-weight:750}
.fp-orbit-node-v18{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:clamp(92px,8vw,128px);min-height:clamp(76px,7vw,104px);border-radius:24px;background:color-mix(in srgb,var(--fp-surface) 92%, transparent);border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft);display:grid;place-items:center;text-align:center;padding:12px;backdrop-filter:blur(16px);animation:fpOrbitBreathe 4.8s ease-in-out infinite;animation-delay:calc(var(--node-score) * -25ms)}
@keyframes fpOrbitBreathe{50%{transform:translate(-50%,-53%) scale(1.025)}}
.fp-orbit-node-v18 strong{font-size:1.25rem;color:var(--fp-text-strong);letter-spacing:-.05em;line-height:1}.fp-orbit-node-v18 span{font-size:.78rem;color:var(--fp-muted);font-weight:900}
.fp-orbit-node-v18::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--fp-accent);box-shadow:0 0 0 8px color-mix(in srgb,var(--fp-accent) 14%, transparent)}
.fp-strategy-grid-v18{display:grid;gap:14px}.fp-strategy-scoregrid-v18{grid-template-columns:repeat(4,minmax(0,1fr))}
.fp-strategy-score-card-v18{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;align-items:center;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:28px;box-shadow:var(--fp-shadow-soft);padding:16px}
.fp-score-ring-v18{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--fp-accent) calc(var(--score)*1%), color-mix(in srgb,var(--fp-line) 80%, transparent) 0);position:relative}.fp-score-ring-v18::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--fp-surface)}.fp-score-ring-v18 strong{position:relative;color:var(--fp-text-strong);font-size:1.02rem;letter-spacing:-.04em}.fp-strategy-score-card-v18 h3{margin:0;color:var(--fp-text-strong);letter-spacing:-.04em}.fp-strategy-score-card-v18 p{margin:3px 0 0;color:var(--fp-muted);font-weight:650;line-height:1.42}
.fp-strategy-section-v18{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:36px;box-shadow:var(--fp-shadow-soft);padding:clamp(18px,2.4vw,34px);display:grid;gap:18px}
.fp-strategy-section-head-v18{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:18px;align-items:end}.fp-strategy-section-head-v18 h2{margin:4px 0 0;color:var(--fp-text-strong);font-size:clamp(1.75rem,3.3vw,3.65rem);line-height:.96;letter-spacing:-.075em}.fp-strategy-section-head-v18 p{margin:0;color:var(--fp-muted);line-height:1.65;font-weight:650}
.fp-strategy-stream-v18{display:grid;gap:10px}.fp-strategy-stream-row-v18{display:grid;grid-template-columns:minmax(180px,.48fr) minmax(240px,1fr) minmax(130px,.24fr);gap:14px;align-items:center;padding:14px;border-radius:22px;background:var(--fp-surface-2);border:1px solid var(--fp-line)}.fp-stream-title-v18{display:grid}.fp-stream-title-v18 strong{color:var(--fp-text-strong);font-size:1.02rem}.fp-stream-title-v18 span{color:var(--fp-muted);font-size:.86rem;font-weight:700}.fp-stream-track-v18{height:20px;border-radius:999px;background:color-mix(in srgb,var(--fp-line) 70%, transparent);overflow:hidden}.fp-stream-track-v18 span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--fp-accent),var(--fp-accent-2));box-shadow:0 0 24px color-mix(in srgb,var(--fp-accent) 22%, transparent)}.fp-stream-value-v18{text-align:right;color:var(--fp-text-strong);font-size:1.05rem;letter-spacing:-.04em}.tone-gap .fp-stream-track-v18 span,.tone-bad .fp-score-ring-v18{background:linear-gradient(90deg,var(--fp-bad),var(--fp-warn))}.tone-open .fp-stream-track-v18 span,.tone-warn .fp-score-ring-v18{background:linear-gradient(90deg,var(--fp-warn),var(--fp-accent))}.tone-build .fp-stream-track-v18 span,.tone-build .fp-score-ring-v18{background:linear-gradient(90deg,var(--fp-good),var(--fp-accent))}.tone-protect .fp-stream-track-v18 span,.tone-protect .fp-score-ring-v18{background:linear-gradient(90deg,var(--fp-info),var(--fp-accent))}
.fp-strategy-area-grid-v18{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fp-strategy-area-card-v18{min-height:286px;display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:30px;background:var(--fp-surface-2);border:1px solid var(--fp-line);color:var(--fp-text);box-shadow:var(--fp-shadow-soft);position:relative;overflow:hidden;transition:transform .22s ease,border-color .22s ease}.fp-strategy-area-card-v18:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--fp-accent) 45%,var(--fp-line))}.fp-strategy-area-card-v18::after{content:"";position:absolute;right:-54px;bottom:-68px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 20%, transparent),transparent 70%);pointer-events:none}.fp-area-top-v18{display:flex;justify-content:space-between;align-items:center}.fp-area-top-v18 span{display:inline-flex;padding:7px 10px;border-radius:999px;background:var(--fp-accent-soft);color:var(--fp-accent);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.fp-area-top-v18 i{width:38px;height:38px;border-radius:15px;background:linear-gradient(135deg,var(--fp-accent),var(--fp-accent-2));box-shadow:0 10px 26px color-mix(in srgb,var(--fp-accent) 22%,transparent)}.fp-strategy-area-card-v18 h3{margin:0;color:var(--fp-text-strong);font-size:1.55rem;letter-spacing:-.06em}.fp-strategy-area-card-v18 p{margin:0;color:var(--fp-muted);font-weight:650;line-height:1.5}.fp-area-amount-v18{margin-top:auto;display:grid}.fp-area-amount-v18 strong{font-size:clamp(1.65rem,2.4vw,2.65rem);line-height:.95;letter-spacing:-.075em;color:var(--fp-text-strong)}.fp-area-amount-v18 small{color:var(--fp-muted);font-weight:850}.fp-area-text-v18{position:relative;z-index:1}
.fp-strategy-deepgrid-v18,.fp-strategy-detailgrid-v18{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:14px}.fp-strategy-insight-v18,.fp-strategy-facts-v18,.fp-strategy-list-card-v18{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:34px;box-shadow:var(--fp-shadow-soft);padding:clamp(18px,2.2vw,30px)}.fp-strategy-insight-v18{display:flex;flex-direction:column;justify-content:center;min-height:320px;background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 42%,var(--fp-surface)))}.fp-strategy-insight-v18 h2,.fp-strategy-facts-v18 h2,.fp-card-headline-v18 h2{margin:5px 0 0;color:var(--fp-text-strong);font-size:clamp(1.75rem,3.2vw,3.35rem);line-height:.96;letter-spacing:-.075em}.fp-strategy-insight-v18 p{max-width:820px;color:var(--fp-muted);font-size:1.04rem;line-height:1.65;font-weight:650}.fp-insight-actions-v18{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.fp-fact-list-v18{display:grid;gap:10px;margin-top:18px}.fp-fact-list-v18 div{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--fp-line)}.fp-fact-list-v18 span{color:var(--fp-muted);font-weight:760}.fp-fact-list-v18 strong{color:var(--fp-text-strong);font-size:1.18rem;letter-spacing:-.045em;text-align:right}.fp-strategy-list-card-v18{min-height:420px}.fp-card-headline-v18{margin-bottom:16px}.fp-strategy-item-list-v18{display:grid;gap:9px}.fp-strategy-item-list-v18>div,.fp-mini-stack-v18>div{display:grid;grid-template-columns:minmax(90px,.32fr) minmax(0,1fr) minmax(120px,.32fr);gap:10px;align-items:center;padding:12px;border-radius:18px;background:var(--fp-surface-2);border:1px solid var(--fp-line)}.fp-strategy-item-list-v18 span{color:var(--fp-accent);font-weight:900;font-size:.8rem}.fp-strategy-item-list-v18 strong,.fp-mini-stack-v18 strong{color:var(--fp-text-strong);letter-spacing:-.03em}.fp-strategy-item-list-v18 small,.fp-mini-stack-v18 span{color:var(--fp-muted);font-weight:650}.fp-strategy-item-list-v18 b{text-align:right;color:var(--fp-text-strong)}.fp-mini-stack-v18{display:grid;gap:9px}.fp-mini-stack-v18>div{grid-template-columns:minmax(160px,.55fr) minmax(0,1fr)}.fp-empty-v18{color:var(--fp-muted);font-weight:650;line-height:1.65}
@media (min-width:1600px){.fp-strategy-page-v18{width:min(97vw,1960px);max-width:1960px}.fp-strategy-area-grid-v18{grid-template-columns:repeat(6,minmax(0,1fr))}.fp-strategy-area-card-v18{min-height:310px}.fp-strategy-scoregrid-v18{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1180px){.fp-strategy-hero-v18{grid-template-columns:1fr;min-height:auto}.fp-strategy-orbit-v18{max-width:560px}.fp-strategy-scoregrid-v18{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-strategy-area-grid-v18{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-strategy-deepgrid-v18,.fp-strategy-detailgrid-v18{grid-template-columns:1fr}.fp-strategy-section-head-v18{grid-template-columns:1fr}.fp-strategy-adminbar-v18 form{grid-template-columns:1fr 1fr auto}.fp-strategy-adminbar-v18 form>div{grid-column:1/-1}}
@media (max-width:760px){.fp-strategy-page-v18{width:100%;max-width:100%}.fp-strategy-hero-v18{padding:22px;border-radius:28px}.fp-strategy-orbit-v18{width:100%;max-width:420px}.fp-orbit-node-v18{width:82px;min-height:70px;border-radius:18px;padding:9px}.fp-orbit-node-v18 strong{font-size:1rem}.fp-orbit-node-v18 span{font-size:.68rem}.fp-strategy-scoregrid-v18,.fp-strategy-area-grid-v18{grid-template-columns:1fr}.fp-strategy-score-card-v18{grid-template-columns:70px 1fr}.fp-score-ring-v18{width:68px;height:68px}.fp-strategy-stream-row-v18{grid-template-columns:1fr;gap:8px}.fp-stream-value-v18{text-align:left}.fp-strategy-item-list-v18>div{grid-template-columns:1fr}.fp-strategy-item-list-v18 b{text-align:left}.fp-mini-stack-v18>div{grid-template-columns:1fr}.fp-strategy-adminbar-v18 form{grid-template-columns:1fr}.fp-strategy-hero-copy-v18 h1{font-size:clamp(2.25rem,13vw,4rem)}}
@media (prefers-reduced-motion:reduce){.fp-strategy-hero-v18::before,.fp-strategy-hero-v18::after,.fp-strategy-orbit-glow-v18,.fp-orbit-node-v18{animation:none !important}}

/* =========================================================
   V19 Geldstrategie — klarere Mandanten-Ansicht, Farben,
   Positionen und grafisches Kontenmodell.
   ========================================================= */
.fp-strategy-page-v19 .fp-strategy-core-v18 small{max-width:210px}
.fp-strategy-score-explain-v19{
  background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 26%,var(--fp-surface)));
  border:1px solid var(--fp-line);border-radius:34px;box-shadow:var(--fp-shadow-soft);
  padding:clamp(18px,2.2vw,30px);display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:18px;align-items:center
}
.fp-strategy-score-explain-v19 h2{margin:5px 0 0;color:var(--fp-text-strong);font-size:clamp(1.45rem,2.5vw,2.75rem);line-height:1;letter-spacing:-.065em}
.fp-score-explain-grid-v19{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.fp-score-explain-grid-v19 article{min-height:142px;border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);padding:14px;display:flex;flex-direction:column;gap:6px}
.fp-score-explain-grid-v19 strong{color:var(--fp-accent);font-size:1.1rem;letter-spacing:-.04em}
.fp-score-explain-grid-v19 span{color:var(--fp-text-strong);font-weight:950;letter-spacing:-.035em}.fp-score-explain-grid-v19 p{margin:0;color:var(--fp-muted);font-weight:650;font-size:.86rem;line-height:1.42}

.fp-strategy-stream-row-v18.tone-income .fp-stream-track-v18 span{background:linear-gradient(90deg,var(--fp-good),color-mix(in srgb,var(--fp-good) 62%,var(--fp-accent)))}
.fp-strategy-stream-row-v18.tone-daily .fp-stream-track-v18 span{background:linear-gradient(90deg,var(--fp-bad),#e86b5d)}
.fp-strategy-stream-row-v18.tone-protect .fp-stream-track-v18 span{background:linear-gradient(90deg,#a2adbc,#d1d5db)}
.fp-strategy-stream-row-v18.tone-open .fp-stream-track-v18 span{background:linear-gradient(90deg,var(--fp-warn),var(--fp-accent-2))}
.fp-strategy-stream-row-v18.tone-debt .fp-stream-track-v18 span{background:linear-gradient(90deg,var(--fp-bad),var(--fp-warn))}

.fp-fact-list-v19{gap:12px}.fp-fact-list-v19 div{border:0 !important;border-radius:18px;padding:13px 14px !important;background:var(--fp-surface-2);position:relative;overflow:hidden}
.fp-fact-list-v19 div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--fact-color,var(--fp-accent))}.fp-fact-list-v19 .tone-income{--fact-color:var(--fp-good);background:var(--fp-good-soft)}.fp-fact-list-v19 .tone-daily{--fact-color:var(--fp-bad);background:var(--fp-bad-soft)}.fp-fact-list-v19 .tone-protect{--fact-color:#9aa4b2;background:color-mix(in srgb,var(--fp-line) 42%,var(--fp-surface))}.fp-fact-list-v19 .tone-build{--fact-color:var(--fp-good);background:var(--fp-good-soft)}.fp-fact-list-v19 .tone-open{--fact-color:var(--fp-warn);background:var(--fp-warn-soft)}
.fp-fact-list-v19 span{color:var(--fp-text-strong) !important}.fp-fact-list-v19 strong{color:var(--fp-text-strong) !important}

.fp-strategy-detailgrid-v19{grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)}
.fp-position-head-v19{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}
.fp-position-groups-v19{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fp-position-group-v19{border:1px solid var(--fp-line);border-radius:24px;background:var(--fp-surface-2);padding:14px;display:grid;gap:11px;min-height:182px;position:relative;overflow:hidden}
.fp-position-group-v19::after{content:"";position:absolute;right:-42px;bottom:-58px;width:132px;height:132px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--group-color,var(--fp-accent)) 16%,transparent),transparent 72%);pointer-events:none}
.fp-position-group-v19.tone-daily{--group-color:var(--fp-bad)}.fp-position-group-v19.tone-protect{--group-color:#a2adbc}.fp-position-group-v19.tone-build{--group-color:var(--fp-good)}.fp-position-group-v19.tone-debt{--group-color:var(--fp-warn)}.fp-position-group-v19.tone-custom{--group-color:var(--fp-accent)}
.fp-position-group-top-v19{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;position:relative;z-index:1}.fp-position-group-top-v19 span{display:block;color:var(--group-color,var(--fp-accent));font-weight:950;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem}.fp-position-group-top-v19 strong{display:block;color:var(--fp-text-strong);font-size:1.45rem;letter-spacing:-.065em}.fp-position-group-top-v19 small{display:block;color:var(--fp-muted);font-weight:700}.fp-position-group-top-v19 a{white-space:nowrap;border:1px solid var(--fp-line);border-radius:999px;padding:8px 10px;background:var(--fp-surface);color:var(--fp-text-strong);font-weight:900;font-size:.82rem;position:relative;z-index:2}
.fp-position-mini-list-v19{display:grid;gap:7px;position:relative;z-index:1}.fp-position-mini-list-v19>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border-radius:14px;background:color-mix(in srgb,var(--fp-surface) 72%,transparent);border:1px solid color-mix(in srgb,var(--fp-line) 72%,transparent);padding:9px}.fp-position-mini-list-v19 span{color:var(--fp-text-strong);font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-position-mini-list-v19 strong{color:var(--fp-text-strong);font-weight:950;text-align:right}.fp-position-mini-list-v19 small{grid-column:1/-1;color:var(--fp-muted);font-weight:650}.fp-position-mini-list-v19 em{color:var(--fp-muted);font-style:normal;font-weight:800;font-size:.84rem}.fp-position-group-v19 p{margin:0;color:var(--fp-muted);font-weight:650;line-height:1.5;position:relative;z-index:1}

.fp-goal-account-card-v19{display:grid;gap:16px}.fp-goal-chip-wrap-v19{display:flex;gap:9px;flex-wrap:wrap}.fp-goal-chip-v19{display:grid;gap:3px;min-width:min(100%,210px);border:1px solid color-mix(in srgb,var(--fp-accent) 24%,var(--fp-line));border-radius:18px;background:var(--fp-accent-soft);padding:12px;color:var(--fp-text)}.fp-goal-chip-v19 strong{color:var(--fp-text-strong);letter-spacing:-.035em}.fp-goal-chip-v19 span{color:var(--fp-muted);font-weight:750;font-size:.86rem}.fp-goal-chip-v19.empty{border-style:dashed;background:var(--fp-surface-2)}
.fp-account-flow-v19{display:grid;grid-template-columns:minmax(180px,.36fr) 80px minmax(0,.64fr);gap:14px;align-items:stretch;border:1px solid var(--fp-line);border-radius:30px;background:linear-gradient(135deg,var(--fp-surface-2),var(--fp-surface));padding:16px;overflow:hidden}.fp-account-lane-v19{display:grid;gap:10px;align-content:start}.fp-account-lane-v19>span{color:var(--fp-accent);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.72rem}.fp-account-card-v19,.fp-account-target-grid-v19>div{border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface);box-shadow:var(--fp-shadow-soft);padding:13px;display:grid;gap:4px}.fp-account-card-v19 strong,.fp-account-target-grid-v19 strong{color:var(--fp-text-strong);font-size:1.08rem;letter-spacing:-.04em}.fp-account-card-v19 small,.fp-account-target-grid-v19 small{color:var(--fp-muted);font-weight:700}.fp-account-card-v19.empty{border-style:dashed;box-shadow:none}.fp-account-beam-v19{display:grid;place-items:center;align-content:center;gap:8px;color:var(--fp-muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.fp-account-beam-v19 i{display:block;width:100%;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));position:relative;box-shadow:0 0 22px color-mix(in srgb,var(--fp-accent) 24%,transparent)}.fp-account-beam-v19 i::after{content:"";position:absolute;right:-4px;top:50%;width:16px;height:16px;border-top:4px solid var(--fp-good);border-right:4px solid var(--fp-good);transform:translateY(-50%) rotate(45deg);border-radius:2px}.fp-account-target-grid-v19{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fp-account-target-grid-v19>div b{color:var(--fp-accent);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.fp-account-target-grid-v19>div small{display:block}.fp-account-lane-v19 .fp-btn{justify-self:start;margin-top:6px}

@media (max-width:1420px){.fp-score-explain-grid-v19{grid-template-columns:repeat(3,minmax(0,1fr))}.fp-strategy-detailgrid-v19{grid-template-columns:1fr}.fp-account-flow-v19{grid-template-columns:minmax(180px,.36fr) 66px minmax(0,.64fr)}}
@media (max-width:920px){.fp-strategy-score-explain-v19{grid-template-columns:1fr}.fp-score-explain-grid-v19,.fp-position-groups-v19{grid-template-columns:1fr}.fp-account-flow-v19{grid-template-columns:1fr}.fp-account-beam-v19{min-height:46px}.fp-account-beam-v19 i{height:100%;width:10px}.fp-account-beam-v19 i::after{right:auto;left:50%;top:auto;bottom:-4px;transform:translateX(-50%) rotate(135deg)}.fp-account-target-grid-v19{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.fp-score-explain-grid-v19,.fp-account-target-grid-v19{grid-template-columns:1fr}.fp-position-group-top-v19{display:grid}.fp-position-group-top-v19 a{justify-self:start}.fp-position-mini-list-v19>div{grid-template-columns:1fr}.fp-position-mini-list-v19 strong{text-align:left}}

/* =========================================================
   V20 Geldstrategie polish: clean strategy cards + account map
   ========================================================= */
.fp-strategy-area-card-v18::after,
.fp-area-top-v18 i{
  display:none !important;
  content:none !important;
}
.fp-area-top-v18{justify-content:flex-start !important}
.fp-strategy-area-card-v18{overflow:visible}
.fp-strategy-area-card-v18:hover{transform:translateY(-3px) scale(1.005)}

.fp-goal-account-card-v20{gap:18px}
.fp-goal-list-v20{
  display:grid;gap:10px;border:1px solid var(--fp-line);border-radius:26px;
  background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-2));padding:14px;
}
.fp-goal-list-head-v20{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 6px}
.fp-goal-list-head-v20 strong{font-size:1.05rem;color:var(--fp-text-strong);letter-spacing:-.035em}
.fp-goal-list-head-v20 a{color:var(--fp-accent);font-weight:950;font-size:.9rem}
.fp-goal-row-v20{
  display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;
  border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface);padding:12px;color:var(--fp-text);
  box-shadow:var(--fp-shadow-soft);
}
.fp-goal-row-v20>span{
  width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:var(--fp-accent-soft);
  color:var(--fp-accent);font-weight:950;letter-spacing:-.03em;
}
.fp-goal-row-v20 strong{display:block;color:var(--fp-text-strong);font-size:1rem;letter-spacing:-.035em}
.fp-goal-row-v20 small{display:block;color:var(--fp-muted);font-weight:750;margin-top:2px}
.fp-goal-row-v20.empty{border-style:dashed;text-decoration:none}

.fp-account-map-v20{
  display:grid;gap:14px;border:1px solid var(--fp-line);border-radius:32px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--fp-accent-soft) 38%,var(--fp-surface)),var(--fp-surface));
  padding:clamp(14px,1.8vw,22px);overflow:hidden;
}
.fp-account-map-head-v20{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}
.fp-account-map-head-v20 h3{font-size:clamp(1.45rem,2.3vw,2.35rem);line-height:1;letter-spacing:-.065em;margin:4px 0;color:var(--fp-text-strong)}
.fp-account-map-head-v20 p{margin:0;color:var(--fp-muted);max-width:720px;font-weight:650;line-height:1.55}
.fp-account-total-v20{border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface);padding:12px 14px;min-width:230px;box-shadow:var(--fp-shadow-soft)}
.fp-account-total-v20 span{display:block;color:var(--fp-muted);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.fp-account-total-v20 strong{display:block;color:var(--fp-text-strong);font-size:1.55rem;letter-spacing:-.06em;margin-top:2px}
.fp-account-flow-map-v20{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(210px,.62fr) minmax(360px,1.28fr);gap:14px;align-items:center}
.fp-account-source-v20,.fp-account-targets-v20,.fp-account-paths-v20{display:grid;gap:10px}
.fp-account-source-v20>span{color:var(--fp-accent);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.74rem}
.fp-bank-card-v20,.fp-account-target-v20{
  border:1px solid var(--fp-line);border-radius:24px;background:var(--fp-surface);box-shadow:var(--fp-shadow-soft);padding:14px;display:grid;gap:5px;color:var(--fp-text);
}
.fp-bank-card-v20.source{position:relative;overflow:hidden}
.fp-bank-card-v20.source::after{content:"";position:absolute;right:-45px;top:-45px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 18%,transparent),transparent 72%)}
.fp-bank-card-v20 b{position:relative;color:var(--fp-text-strong);font-size:1.05rem;letter-spacing:-.04em;z-index:1}
.fp-bank-card-v20 strong{position:relative;color:var(--fp-text-strong);font-size:clamp(1.45rem,2.4vw,2.25rem);letter-spacing:-.075em;line-height:1;z-index:1}
.fp-bank-card-v20 small,.fp-bank-card-v20 em{position:relative;color:var(--fp-muted);font-weight:750;font-style:normal;z-index:1}
.fp-bank-card-v20.empty{border-style:dashed;text-decoration:none}
.fp-account-paths-v20{align-content:center}
.fp-money-path-v20{display:grid;grid-template-columns:1fr;gap:6px;text-align:center;color:var(--fp-text);text-decoration:none;align-items:center}
.fp-path-line-v20{position:relative;height:18px;display:block}
.fp-path-line-v20 i{position:absolute;left:0;right:16px;top:50%;height:8px;border-radius:999px;transform:translateY(-50%);background:linear-gradient(90deg,var(--fp-accent),var(--fp-good));box-shadow:0 0 18px color-mix(in srgb,var(--fp-accent) 25%,transparent)}
.fp-path-line-v20 i::after{content:"";position:absolute;right:-14px;top:50%;width:17px;height:17px;border-top:5px solid var(--fp-good);border-right:5px solid var(--fp-good);transform:translateY(-50%) rotate(45deg);border-radius:2px}
.fp-money-path-v20 strong{font-size:1.05rem;color:var(--fp-text-strong);letter-spacing:-.04em}
.fp-money-path-v20 small{font-size:.78rem;color:var(--fp-muted);font-weight:850;line-height:1.25}
.fp-money-path-v20.tone-daily .fp-path-line-v20 i{background:linear-gradient(90deg,var(--fp-accent),var(--fp-bad))}.fp-money-path-v20.tone-daily .fp-path-line-v20 i::after{border-color:var(--fp-bad)}
.fp-money-path-v20.tone-protect .fp-path-line-v20 i{background:linear-gradient(90deg,var(--fp-accent),#9aa4b2)}.fp-money-path-v20.tone-protect .fp-path-line-v20 i::after{border-color:#9aa4b2}
.fp-money-path-v20.tone-build .fp-path-line-v20 i{background:linear-gradient(90deg,var(--fp-accent),var(--fp-good))}.fp-money-path-v20.tone-build .fp-path-line-v20 i::after{border-color:var(--fp-good)}
.fp-money-path-v20.tone-family .fp-path-line-v20 i{background:linear-gradient(90deg,var(--fp-accent),var(--fp-info))}.fp-money-path-v20.tone-family .fp-path-line-v20 i::after{border-color:var(--fp-info)}
.fp-account-target-v20{position:relative;overflow:hidden;min-height:118px}
.fp-account-target-v20::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--target-color,var(--fp-accent))}
.fp-account-target-v20.tone-daily{--target-color:var(--fp-bad)}
.fp-account-target-v20.tone-protect{--target-color:#9aa4b2}
.fp-account-target-v20.tone-build{--target-color:var(--fp-good)}
.fp-account-target-v20.tone-family{--target-color:var(--fp-info)}
.fp-account-target-v20.tone-custom{--target-color:var(--fp-accent)}
.fp-account-target-title-v20 span{display:block;color:var(--target-color,var(--fp-accent));font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em}
.fp-account-target-title-v20 strong{display:block;color:var(--fp-text-strong);font-size:1.55rem;line-height:1;letter-spacing:-.065em;margin:3px 0}
.fp-account-target-title-v20 small,.fp-account-empty-v20{display:block;color:var(--fp-muted);font-weight:720;line-height:1.35}
.fp-account-mini-list-v20{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}
.fp-account-mini-list-v20 em{font-style:normal;border:1px solid var(--fp-line);border-radius:999px;background:var(--fp-surface-2);padding:6px 8px;color:var(--fp-muted);font-size:.78rem;font-weight:850}

.fp-account-help-v20{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.fp-account-help-v20>div{border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface-2);padding:12px;display:grid;gap:3px}
.fp-account-help-v20 strong{color:var(--fp-text-strong);letter-spacing:-.035em}.fp-account-help-v20 span{color:var(--fp-muted);font-weight:700;font-size:.88rem;line-height:1.35}
.fp-row-card.account-v20{grid-template-columns:minmax(140px,1.05fr) minmax(130px,.95fr) minmax(150px,1fr) 82px minmax(130px,.9fr) minmax(150px,.95fr) 42px !important}

@media (max-width:1280px){
  .fp-account-flow-map-v20{grid-template-columns:minmax(220px,.9fr) minmax(170px,.55fr) minmax(320px,1.1fr)}
  .fp-row-card.account-v20{grid-template-columns:repeat(3,minmax(0,1fr)) 42px !important}
  .fp-row-card.account-v20 .fp-row-remove{grid-column:auto}
}
@media (max-width:980px){
  .fp-account-flow-map-v20{grid-template-columns:1fr;align-items:stretch}
  .fp-account-paths-v20{gap:14px}
  .fp-money-path-v20{text-align:left;grid-template-columns:84px minmax(0,1fr);align-items:center}
  .fp-path-line-v20{height:44px;width:18px;grid-row:1/3}.fp-path-line-v20 i{left:50%;right:auto;top:0;bottom:14px;width:8px;height:auto;transform:translateX(-50%)}.fp-path-line-v20 i::after{right:auto;left:50%;top:auto;bottom:-14px;transform:translateX(-50%) rotate(135deg)}
  .fp-account-help-v20{grid-template-columns:1fr}.fp-row-card.account-v20{grid-template-columns:1fr !important}
}

/* =========================================================
   V21 — Onboarding Kontenmodell: klare Feld-Erklärung & bessere Platzhalter
   ========================================================= */
.fp-account-guide-v21{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin:14px 0 12px;
}
.fp-account-guide-v21 > div{
  min-height:118px;
  border:1px solid var(--fp-line);
  border-radius:18px;
  background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-2));
  padding:13px;
  display:grid;
  align-content:start;
  gap:5px;
}
.fp-account-guide-v21 strong{
  color:var(--fp-text-strong);
  font-size:.92rem;
  letter-spacing:-.035em;
}
.fp-account-guide-v21 span{
  color:var(--fp-muted);
  font-size:.82rem;
  line-height:1.35;
  font-weight:700;
}
.fp-account-role-note-v21{
  display:flex;
  gap:10px;
  align-items:flex-start;
  border:1px solid color-mix(in srgb,var(--fp-accent) 26%,var(--fp-line));
  border-radius:20px;
  background:var(--fp-accent-soft);
  color:var(--fp-text);
  padding:13px 15px;
  margin:0 0 14px;
}
.fp-account-role-note-v21 strong{
  color:var(--fp-text-strong);
  white-space:nowrap;
}
.fp-account-role-note-v21 span{
  color:var(--fp-muted);
  font-weight:750;
  line-height:1.45;
}
.fp-row-card.account-v20 input::placeholder{
  color:color-mix(in srgb,var(--fp-muted) 82%, transparent);
  opacity:1;
}
.fp-row-card.account-v20 select{
  font-weight:820;
}
@media (max-width:1400px){
  .fp-account-guide-v21{grid-template-columns:repeat(3,minmax(0,1fr));}
  .fp-account-guide-v21 > div{min-height:96px;}
}
@media (max-width:760px){
  .fp-account-guide-v21{grid-template-columns:1fr;}
  .fp-account-guide-v21 > div{min-height:auto;}
  .fp-account-role-note-v21{display:grid;}
  .fp-account-role-note-v21 strong{white-space:normal;}
}


/* =========================================================
   V22 Finance-OS — Verträge, Dokumente, Belege
   ========================================================= */
.fp-financeos-hero-v22{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:clamp(18px,3vw,34px);
  align-items:stretch;
  margin-bottom:18px;
}
.fp-financeos-hero-copy,
.fp-financeos-command-card,
.fp-financeos-layout-v22 .fp-panel{
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:var(--fp-radius-lg);
  box-shadow:var(--fp-shadow-soft);
}
.fp-financeos-hero-copy{
  padding:clamp(24px,4vw,46px);
  position:relative;
  overflow:hidden;
}
.fp-financeos-hero-copy::before{
  content:"";
  position:absolute;
  inset:auto -10% -42% 34%;
  height:260px;
  border-radius:999px;
  background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 20%,transparent),transparent 66%);
  pointer-events:none;
}
.fp-financeos-hero-copy h1{
  margin:8px 0 12px;
  max-width:900px;
  color:var(--fp-text-strong);
  font-size:clamp(2.15rem,5vw,5rem);
  line-height:.96;
  letter-spacing:-.075em;
}
.fp-financeos-hero-copy p{
  max-width:820px;
  color:var(--fp-muted);
  font-size:clamp(1rem,1.5vw,1.18rem);
  line-height:1.7;
}
.fp-financeos-command-card{
  padding:clamp(20px,3vw,30px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:300px;
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--fp-accent-soft) 50%,var(--fp-surface)),var(--fp-surface));
}
.fp-financeos-command-card>span{
  color:var(--fp-accent);
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.76rem;
}
.fp-financeos-command-card>strong{
  display:block;
  color:var(--fp-text-strong);
  font-size:clamp(4rem,9vw,7rem);
  line-height:.85;
  letter-spacing:-.09em;
  margin:18px 0 4px;
}
.fp-financeos-command-card>small{color:var(--fp-muted);font-weight:750}
.fp-financeos-mini-stack{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:20px;
}
.fp-financeos-mini-stack div{
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:18px;
  padding:12px;
}
.fp-financeos-mini-stack b{display:block;color:var(--fp-text-strong);font-size:1.1rem}
.fp-financeos-mini-stack span{display:block;color:var(--fp-muted);font-size:.78rem;font-weight:760;line-height:1.25}

.fp-financeos-kpis .tone-good{border-color:color-mix(in srgb,var(--fp-good) 25%,var(--fp-line))}
.fp-financeos-kpis .tone-info{border-color:color-mix(in srgb,var(--fp-info) 25%,var(--fp-line))}
.fp-financeos-kpis .tone-warn{border-color:color-mix(in srgb,var(--fp-warn) 28%,var(--fp-line))}
.fp-financeos-kpis .tone-soft{border-color:color-mix(in srgb,var(--fp-accent) 22%,var(--fp-line))}
.fp-financeos-kpis small{display:block;color:var(--fp-muted);font-weight:700;margin-top:4px}

.fp-financeos-layout-v22{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,370px);
  gap:18px;
  align-items:start;
  margin-top:18px;
}
.fp-financeos-main-v22{display:grid;gap:18px;min-width:0}
.fp-financeos-side-v22{
  display:grid;
  gap:14px;
  position:sticky;
  top:calc(var(--fp-topbar-h) + 16px);
}
.fp-section-head-inline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.fp-section-head-inline h2{
  margin:4px 0 8px;
  color:var(--fp-text-strong);
  font-size:clamp(1.6rem,3vw,2.8rem);
  line-height:1;
  letter-spacing:-.065em;
}
.fp-section-head-inline p{margin:0;color:var(--fp-muted);max-width:820px;line-height:1.65}

.fp-financeos-upload-form{
  display:grid !important;
  grid-template-columns:1.1fr .75fr 1fr;
  gap:12px;
  align-items:end;
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
  max-width:none !important;
}
.fp-financeos-upload-form .fp-drop-field{
  grid-column:1/-1;
  border:1.5px dashed color-mix(in srgb,var(--fp-accent) 45%,var(--fp-line));
  border-radius:24px;
  background:var(--fp-accent-soft);
  padding:20px;
  display:grid;
  gap:7px;
  cursor:pointer;
}
.fp-financeos-upload-form .fp-drop-field input{display:none}
.fp-financeos-upload-form .fp-drop-field span{font-weight:950;color:var(--fp-text-strong)}
.fp-financeos-upload-form .fp-drop-field small{color:var(--fp-muted);font-weight:700}
.fp-financeos-upload-form button{justify-self:start}

.fp-contract-groups-v22{display:grid;gap:16px}
.fp-contract-group-v22{
  border:1px solid var(--fp-line);
  border-radius:28px;
  background:var(--fp-surface-2);
  padding:14px;
}
.fp-contract-group-v22>header{
  padding:8px 8px 14px;
}
.fp-contract-group-v22 h3{
  margin:3px 0;
  color:var(--fp-text-strong);
  font-size:clamp(1.35rem,2.4vw,2.2rem);
  letter-spacing:-.06em;
}
.fp-contract-group-v22 p{margin:0;color:var(--fp-muted);font-weight:650}
.fp-contract-card-grid-v22{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.fp-contract-card-v22{
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--fp-shadow-soft);
}
.fp-contract-card-v22 summary{
  list-style:none;
  display:grid;
  grid-template-columns:16px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:16px;
  cursor:pointer;
}
.fp-contract-card-v22 summary::-webkit-details-marker{display:none}
.fp-contract-card-v22 summary strong{
  display:block;color:var(--fp-text-strong);font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.fp-contract-card-v22 summary small{
  display:block;color:var(--fp-muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.fp-contract-card-v22 summary b{color:var(--fp-text-strong);font-size:1.05rem}
.fp-contract-kind-dot{
  width:12px;height:12px;border-radius:50%;background:var(--fp-accent);box-shadow:0 0 0 5px var(--fp-accent-soft)
}
.fp-contract-kind-dot.kind-protection{background:var(--fp-soft-text)}
.fp-contract-kind-dot.kind-fixed{background:var(--fp-bad)}
.fp-contract-kind-dot.kind-investment,
.fp-contract-kind-dot.kind-short_saving,
.fp-contract-kind-dot.kind-mid_saving,
.fp-contract-kind-dot.kind-long_saving,
.fp-contract-kind-dot.kind-child_saving{background:var(--fp-good)}
.fp-contract-kind-dot.kind-debt{background:var(--fp-warn)}

.fp-contract-edit-v22{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 16px 16px !important;
  margin:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  max-width:none !important;
}
.fp-contract-edit-v22 .fp-field-wide{grid-column:1/-1}
.fp-contract-edit-v22 textarea{min-height:76px}
.fp-contract-docs-v22{
  grid-column:1/-1;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  color:var(--fp-muted);
}
.fp-contract-docs-v22 a{
  display:inline-flex;
  padding:7px 10px;
  border-radius:999px;
  background:var(--fp-accent-soft);
  color:var(--fp-accent) !important;
  font-weight:850;
}
.fp-contract-actions-v22{
  grid-column:1/-1;
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}

.fp-living-month-v22{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);
  gap:12px;
  margin-bottom:14px;
}
.fp-living-meter-v22,
.fp-living-result-v22{
  border:1px solid var(--fp-line);
  border-radius:24px;
  background:var(--fp-surface-2);
  padding:18px;
}
.fp-living-meter-v22 span,.fp-living-result-v22 span{
  color:var(--fp-muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem
}
.fp-living-meter-v22 strong,.fp-living-result-v22 strong{
  display:block;color:var(--fp-text-strong);font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.08em;line-height:1;margin:6px 0
}
.fp-living-meter-v22 small,.fp-living-result-v22 small{color:var(--fp-muted);font-weight:700}
.fp-living-meter-v22>div{
  height:12px;border-radius:999px;background:var(--fp-line);overflow:hidden;margin-top:16px
}
.fp-living-meter-v22 i{
  display:block;height:100%;width:min(var(--spent),100%);background:linear-gradient(90deg,var(--fp-good),var(--fp-warn),var(--fp-bad));border-radius:inherit
}
.fp-living-result-v22.good{border-color:color-mix(in srgb,var(--fp-good) 28%,var(--fp-line))}
.fp-living-result-v22.bad{border-color:color-mix(in srgb,var(--fp-bad) 32%,var(--fp-line))}
.fp-living-result-v22.neutral{border-color:color-mix(in srgb,var(--fp-info) 25%,var(--fp-line))}

.fp-receipt-form-v22{
  display:grid !important;
  grid-template-columns:160px 1fr 1fr 150px 1fr auto;
  gap:10px;
  align-items:end;
  max-width:none !important;
  padding:0 !important;
  margin:0 0 16px !important;
  background:transparent !important;
  box-shadow:none !important;
}
.fp-receipt-layout-v22{
  display:grid;
  grid-template-columns:minmax(260px,.42fr) minmax(0,.58fr);
  gap:12px;
}
.fp-receipt-category-list-v22,
.fp-receipt-list-v22{
  background:var(--fp-surface-2);
  border:1px solid var(--fp-line);
  border-radius:24px;
  padding:16px;
}
.fp-receipt-category-list-v22 h3,.fp-receipt-list-v22 h3{margin:0 0 12px;color:var(--fp-text-strong);letter-spacing:-.04em}
.fp-receipt-category-list-v22 div{
  display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--fp-line);font-weight:800
}
.fp-receipt-category-list-v22 span{color:var(--fp-muted)}
.fp-receipt-category-list-v22 strong{color:var(--fp-text-strong)}
.fp-receipt-list-v22 article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 32px;
  gap:10px;
  align-items:center;
  padding:10px 0;
  border-top:1px solid var(--fp-line);
}
.fp-receipt-list-v22 article strong{display:block;color:var(--fp-text-strong)}
.fp-receipt-list-v22 article small{display:block;color:var(--fp-muted);font-weight:700}
.fp-receipt-list-v22 article b{color:var(--fp-text-strong)}
.fp-receipt-list-v22 form{margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.fp-receipt-list-v22 button{
  width:30px!important;height:30px!important;border-radius:50%!important;display:grid!important;place-items:center!important;
  padding:0!important;background:var(--fp-surface)!important;color:var(--fp-muted)!important;border:1px solid var(--fp-line)!important;box-shadow:none!important
}

.fp-task-list-v22{display:grid;gap:10px;margin-top:12px}
.fp-task-list-v22 div{
  border:1px solid var(--fp-line);
  border-radius:18px;
  padding:12px;
  background:var(--fp-surface-2);
}
.fp-task-list-v22 strong{display:block;color:var(--fp-text-strong);margin-bottom:3px}
.fp-task-list-v22 small{color:var(--fp-muted);font-weight:700;line-height:1.35}
.fp-task-list-v22 .tone-good{border-color:color-mix(in srgb,var(--fp-good) 28%,var(--fp-line))}
.fp-task-list-v22 .tone-warn{border-color:color-mix(in srgb,var(--fp-warn) 32%,var(--fp-line))}
.fp-task-list-v22 .tone-info{border-color:color-mix(in srgb,var(--fp-info) 28%,var(--fp-line))}
.fp-document-list-v22{display:grid;gap:10px;margin-top:12px}
.fp-document-list-v22 article{
  border:1px solid var(--fp-line);
  border-radius:18px;
  padding:12px;
  background:var(--fp-surface-2);
}
.fp-document-list-v22 strong{display:block;color:var(--fp-text-strong)}
.fp-document-list-v22 small{display:block;color:var(--fp-muted);font-weight:700;margin:4px 0 8px;line-height:1.35}
.fp-document-list-v22 a,
.fp-document-actions-v22 button{
  display:inline-flex;
  border:0;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:auto!important;
  color:var(--fp-accent)!important;
  font-weight:900!important;
}
.fp-document-actions-v22{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.fp-document-actions-v22 form{margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.fp-empty-state-v22{
  padding:28px;
  border-radius:26px;
  background:var(--fp-surface-2);
  border:1px solid var(--fp-line);
  text-align:center;
}
.fp-empty-state-v22 h3{color:var(--fp-text-strong);font-size:1.5rem;margin:0 0 6px}
.fp-empty-state-v22 p{color:var(--fp-muted);margin:0 auto 14px;max-width:520px}

@media (max-width:1250px){
  .fp-financeos-layout-v22{grid-template-columns:1fr}
  .fp-financeos-side-v22{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}
  .fp-receipt-form-v22{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .fp-financeos-hero-v22{grid-template-columns:1fr}
  .fp-financeos-mini-stack{grid-template-columns:1fr}
  .fp-section-head-inline{display:grid}
  .fp-contract-card-grid-v22{grid-template-columns:1fr}
  .fp-financeos-upload-form{grid-template-columns:1fr}
  .fp-living-month-v22{grid-template-columns:1fr}
  .fp-receipt-layout-v22{grid-template-columns:1fr}
  .fp-financeos-side-v22{grid-template-columns:1fr}
}
@media (max-width:680px){
  .fp-contract-card-v22 summary{grid-template-columns:14px minmax(0,1fr);align-items:start}
  .fp-contract-card-v22 summary b{grid-column:2}
  .fp-contract-edit-v22{grid-template-columns:1fr}
  .fp-receipt-form-v22{grid-template-columns:1fr}
  .fp-financeos-command-card>strong{font-size:4.2rem}
}

/* =========================================================
   V23 Finanz-OS — neue Vertragszentrale + getrennte Belegseite
   ========================================================= */
.fp-financeos-hero-v23,
.fp-living-hero-v23{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
  gap:clamp(18px,4vw,54px);
  align-items:center;
  padding:clamp(28px,5vw,62px);
  border:1px solid var(--fp-line);
  border-radius:clamp(28px,4vw,44px);
  background:
    radial-gradient(720px 320px at 12% -8%, color-mix(in srgb,var(--fp-accent) 22%, transparent), transparent 64%),
    linear-gradient(135deg, color-mix(in srgb,var(--fp-surface) 92%, transparent), var(--fp-surface-2));
  box-shadow:var(--fp-shadow-soft);
  margin-bottom:18px;
}
.fp-financeos-hero-v23::after,
.fp-living-hero-v23::after{
  content:"";
  position:absolute;
  inset:auto -120px -170px auto;
  width:360px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle, color-mix(in srgb,var(--fp-accent) 22%, transparent), transparent 68%);
  pointer-events:none;
  animation:fpFloatGlow 9s ease-in-out infinite;
}
.fp-financeos-hero-copy-v23,
.fp-living-hero-v23>div{position:relative;z-index:1;display:grid;gap:14px;justify-items:start}
.fp-financeos-hero-copy-v23 h1,
.fp-living-hero-v23 h1{margin:0;color:var(--fp-text-strong);font-size:clamp(2.25rem,5.8vw,5.9rem);line-height:.92;letter-spacing:-.085em;max-width:980px}
.fp-financeos-hero-copy-v23 p,
.fp-living-hero-v23 p{margin:0;color:var(--fp-muted);font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.68;max-width:760px}
.fp-financeos-orb-v23{
  position:relative;z-index:1;justify-self:center;width:min(360px,72vw);aspect-ratio:1;border-radius:50%;
  display:grid;place-items:center;text-align:center;color:var(--fp-text-strong);
  background:radial-gradient(circle at 50% 48%, var(--fp-surface) 0 38%, color-mix(in srgb,var(--fp-accent-soft) 72%, transparent) 39% 54%, transparent 55%);
  border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft);
}
.fp-financeos-orb-v23 span{position:absolute;inset:18%;border-radius:50%;border:1px dashed color-mix(in srgb,var(--fp-accent) 45%, var(--fp-line));animation:fpSpinSlow 28s linear infinite}
.fp-financeos-orb-v23 span:nth-child(2){inset:30%;animation-direction:reverse;animation-duration:22s}.fp-financeos-orb-v23 span:nth-child(3){inset:8%;opacity:.55;animation-duration:36s}
.fp-financeos-orb-v23 strong{font-size:clamp(3.5rem,8vw,6.5rem);letter-spacing:-.1em;line-height:.85}.fp-financeos-orb-v23 small{margin-top:72px;position:absolute;color:var(--fp-muted);font-weight:800}
@keyframes fpSpinSlow{to{transform:rotate(360deg)}}

.fp-financeos-status-v23,
.fp-living-summary-grid-v23{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.fp-living-summary-grid-v23{grid-template-columns:repeat(3,minmax(0,1fr))}
.fp-financeos-status-v23 article,
.fp-living-summary-grid-v23 article{position:relative;overflow:hidden;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:24px;padding:18px;box-shadow:var(--fp-shadow-soft);min-height:128px;display:grid;align-content:space-between}
.fp-financeos-status-v23 article::before,
.fp-living-summary-grid-v23 article::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--fp-accent)}
.fp-financeos-status-v23 .tone-good::before,.fp-living-summary-grid-v23 .tone-good::before{background:var(--fp-good)}
.fp-financeos-status-v23 .tone-info::before,.fp-living-summary-grid-v23 .tone-info::before{background:var(--fp-info)}
.fp-financeos-status-v23 .tone-warn::before,.fp-living-summary-grid-v23 .tone-warn::before{background:var(--fp-warn)}
.fp-living-summary-grid-v23 .tone-bad::before{background:var(--fp-bad)}
.fp-financeos-status-v23 article span,.fp-living-summary-grid-v23 article span{color:var(--fp-muted);font-weight:850;font-size:.86rem}.fp-financeos-status-v23 article strong,.fp-living-summary-grid-v23 article strong{display:block;color:var(--fp-text-strong);font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.07em}.fp-financeos-status-v23 article small,.fp-living-summary-grid-v23 article small{color:var(--fp-muted);font-weight:650}

.fp-financeos-guidance-v23{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;align-items:center;background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 55%, var(--fp-surface)));border:1px solid var(--fp-line);border-radius:28px;box-shadow:var(--fp-shadow-soft);padding:clamp(18px,2.4vw,28px);margin:18px 0}.fp-financeos-guidance-v23 h2{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.45rem,2.5vw,2.6rem);letter-spacing:-.06em;line-height:1}.fp-financeos-guidance-v23 p{margin:0;color:var(--fp-muted);max-width:820px}.fp-task-pills-v23{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.fp-task-pills-v23 span{display:inline-flex;border:1px solid var(--fp-line);background:var(--fp-surface);border-radius:999px;padding:9px 11px;font-weight:900;font-size:.84rem}.fp-task-pills-v23 .tone-good{color:var(--fp-good)}.fp-task-pills-v23 .tone-info{color:var(--fp-info)}.fp-task-pills-v23 .tone-warn{color:var(--fp-warn)}

.fp-financeos-grid-v23{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:16px;align-items:stretch;margin:18px 0}.fp-financeos-upload-v23,.fp-financeos-docs-v23{min-height:100%}.fp-section-head-inline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.fp-section-head-inline h2{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.45rem,2.7vw,2.8rem);line-height:1;letter-spacing:-.065em}.fp-section-head-inline p{margin:0;color:var(--fp-muted);line-height:1.65;max-width:820px}.fp-financeos-upload-form-v23{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}.fp-financeos-upload-form-v23 .fp-drop-field-v23{grid-column:1/-1}.fp-drop-field-v23{display:grid;place-items:center;text-align:center;gap:7px;min-height:154px;border:1px dashed color-mix(in srgb,var(--fp-accent) 45%, var(--fp-line));border-radius:26px;background:color-mix(in srgb,var(--fp-accent-soft) 42%, var(--fp-surface));padding:22px;cursor:pointer}.fp-drop-field-v23 input{max-width:420px}.fp-drop-field-v23 span{font-size:1.18rem;font-weight:950;color:var(--fp-text-strong)}.fp-drop-field-v23 small{color:var(--fp-muted);font-weight:650}

.fp-document-list-v23{display:grid;gap:10px}.fp-document-list-v23>div{border:1px solid var(--fp-line);background:var(--fp-surface-2);border-radius:18px;padding:13px;display:grid;gap:8px}.fp-document-list-v23 strong{color:var(--fp-text-strong)}.fp-document-list-v23 small{color:var(--fp-muted);line-height:1.45}.fp-document-actions-v23{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fp-document-actions-v23 a,.fp-document-actions-v23 button,.fp-document-list-v23 a{border:0;background:transparent;color:var(--fp-accent)!important;font-weight:900;padding:0}.fp-document-actions-v23 form{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}.fp-document-list-v23.compact>div{background:transparent}

.fp-contract-center-v23{margin-top:18px}.fp-contract-groups-v23{display:grid;gap:16px}.fp-contract-group-v23{position:relative;overflow:hidden;border:1px solid var(--fp-line);background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-2));border-radius:30px;padding:clamp(16px,2vw,24px)}.fp-contract-group-v23::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--fp-accent)}.fp-contract-group-v23.kind-protection::before{background:#8b929f}.fp-contract-group-v23.kind-fixed::before{background:var(--fp-bad)}.fp-contract-group-v23.kind-short_saving::before,.fp-contract-group-v23.kind-mid_saving::before,.fp-contract-group-v23.kind-long_saving::before,.fp-contract-group-v23.kind-child_saving::before,.fp-contract-group-v23.kind-investment::before{background:var(--fp-good)}.fp-contract-group-v23.kind-debt::before{background:var(--fp-warn)}.fp-contract-group-v23 header{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}.fp-contract-group-v23 header span{color:var(--fp-accent);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.fp-contract-group-v23 header h3{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.35rem,2.5vw,2.2rem);letter-spacing:-.06em}.fp-contract-group-v23 header p{margin:0;color:var(--fp-muted)}.fp-contract-card-grid-v23{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-contract-card-v23{border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface);box-shadow:var(--fp-shadow-soft);overflow:hidden}.fp-contract-card-v23 summary{list-style:none;display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px;cursor:pointer}.fp-contract-card-v23 summary::-webkit-details-marker{display:none}.fp-contract-card-v23 summary strong{display:block;color:var(--fp-text-strong);font-size:1.04rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-contract-card-v23 summary small{color:var(--fp-muted);font-weight:650}.fp-contract-card-v23 summary b{color:var(--fp-text-strong);font-size:1.05rem;white-space:nowrap}.fp-contract-kind-dot{width:12px;height:12px;border-radius:50%;background:var(--fp-accent);display:block}.fp-contract-kind-dot.kind-fixed{background:var(--fp-bad)}.fp-contract-kind-dot.kind-protection{background:#8b929f}.fp-contract-kind-dot.kind-short_saving,.fp-contract-kind-dot.kind-mid_saving,.fp-contract-kind-dot.kind-long_saving,.fp-contract-kind-dot.kind-child_saving,.fp-contract-kind-dot.kind-investment{background:var(--fp-good)}.fp-contract-edit-v23{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:transparent!important;border-top:1px solid var(--fp-line)!important;box-shadow:none!important;margin:0!important;padding:16px!important}.fp-contract-edit-v23 .fp-field-wide,.fp-contract-docs-v23,.fp-contract-actions-v23{grid-column:1/-1}.fp-contract-docs-v23{display:flex;gap:8px;flex-wrap:wrap;color:var(--fp-muted)}.fp-contract-docs-v23 a{display:inline-flex;padding:8px 10px;border-radius:999px;background:var(--fp-accent-soft);color:var(--fp-accent)!important;font-weight:900}.fp-contract-actions-v23{display:flex;gap:10px;flex-wrap:wrap}.fp-empty-state-v23{border:1px dashed var(--fp-line);border-radius:24px;padding:28px;text-align:center;background:var(--fp-surface-2)}.fp-empty-state-v23 h3{margin-top:0;color:var(--fp-text-strong)}

.fp-financeos-review-grid-v23{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.fp-financeos-review-grid-v23 .fp-card{display:grid;gap:10px;align-content:start}.fp-financeos-review-grid-v23 h3{margin:2px 0 0;color:var(--fp-text-strong);font-size:1.35rem;letter-spacing:-.045em}.fp-financeos-review-grid-v23 p{margin:0 0 8px;color:var(--fp-muted)}

/* Lebenskosten-Belege als eigene Ansicht */
.fp-living-meter-card-v23{position:relative;z-index:1;justify-self:stretch;background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:30px;padding:clamp(18px,2.5vw,28px);box-shadow:var(--fp-shadow-soft);display:grid;gap:9px;align-content:center}.fp-living-meter-card-v23 span{color:var(--fp-accent);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.fp-living-meter-card-v23 strong{color:var(--fp-text-strong);font-size:clamp(2.2rem,5vw,4.2rem);letter-spacing:-.09em;line-height:.9}.fp-living-meter-card-v23 small{color:var(--fp-muted);font-weight:700}.fp-living-bar-v23{height:12px;border-radius:999px;background:color-mix(in srgb,var(--fp-line) 75%, transparent);overflow:hidden;margin-top:10px}.fp-living-bar-v23 i{display:block;height:100%;width:min(var(--spent),100%);border-radius:999px;background:linear-gradient(90deg,var(--fp-good),var(--fp-accent),var(--fp-warn))}.fp-living-layout-v23{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;margin:18px 0}.fp-receipt-form-v23{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:transparent!important;box-shadow:none!important;border:0!important;margin:0!important;padding:0!important}.fp-receipt-form-v23 .fp-field-wide{grid-column:1/-1}.fp-living-category-bars-v23{display:grid;gap:12px}.fp-living-category-bars-v23 div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.fp-living-category-bars-v23 span{font-weight:900;color:var(--fp-text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-living-category-bars-v23 b{color:var(--fp-muted);font-size:.9rem}.fp-living-category-bars-v23 i{grid-column:1/-1;height:9px;border-radius:999px;background:color-mix(in srgb,var(--fp-line) 75%, transparent);overflow:hidden;position:relative}.fp-living-category-bars-v23 i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--share);border-radius:999px;background:linear-gradient(90deg,var(--fp-accent),var(--fp-good))}.fp-living-list-panel-v23{margin-top:18px}.fp-receipt-list-v23{display:grid;gap:10px}.fp-receipt-list-v23 article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface-2);padding:12px}.fp-receipt-list-v23 strong{color:var(--fp-text-strong)}.fp-receipt-list-v23 small{display:block;color:var(--fp-muted)}.fp-receipt-list-v23 b{color:var(--fp-text-strong)}.fp-receipt-list-v23 form{background:transparent!important;box-shadow:none!important;border:0!important;margin:0!important;padding:0!important}.fp-receipt-list-v23 button{width:34px;height:34px;border-radius:50%!important;padding:0!important;display:grid;place-items:center;background:var(--fp-surface)!important;color:var(--fp-muted)!important;border:1px solid var(--fp-line)!important;box-shadow:none!important}

@media (max-width:1100px){
  .fp-financeos-hero-v23,.fp-living-hero-v23,.fp-financeos-guidance-v23,.fp-financeos-grid-v23,.fp-living-layout-v23{grid-template-columns:1fr}
  .fp-financeos-status-v23{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fp-contract-card-grid-v23,.fp-financeos-review-grid-v23{grid-template-columns:1fr}
  .fp-task-pills-v23{justify-content:flex-start}
}
@media (max-width:720px){
  .fp-financeos-hero-v23,.fp-living-hero-v23{padding:22px;border-radius:28px}
  .fp-financeos-status-v23,.fp-living-summary-grid-v23{grid-template-columns:1fr}
  .fp-financeos-upload-form-v23,.fp-contract-edit-v23,.fp-receipt-form-v23{grid-template-columns:1fr!important}
  .fp-section-head-inline{display:grid}
  .fp-contract-card-v23 summary{grid-template-columns:12px minmax(0,1fr);align-items:start}.fp-contract-card-v23 summary b{grid-column:2;margin-top:4px}
  .fp-receipt-list-v23 article{grid-template-columns:1fr auto}.fp-receipt-list-v23 form{grid-column:1/-1;justify-self:start}
}

/* =========================================================
   V24 Finanz-OS Feinschliff
   ========================================================= */
/* Hero-Zahl sauber zentrieren: kein Überlappen mit Hilfstext */
.fp-financeos-orb-v23{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding:48px !important;
}
.fp-financeos-orb-v23 strong{
  display:block !important;
  margin:0 !important;
  line-height:.82 !important;
}
.fp-financeos-orb-v23 small{
  position:static !important;
  margin:0 !important;
  max-width:180px !important;
  line-height:1.25 !important;
  text-align:center !important;
}

/* Moderner Datei-Upload statt Browser-Standardbutton */
.fp-drop-field-v23{
  position:relative !important;
  isolation:isolate;
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.fp-drop-field-v23:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--fp-accent) 68%, var(--fp-line)) !important;
  box-shadow:var(--fp-shadow-soft);
}
.fp-drop-field-v23 input[type="file"]{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  opacity:0 !important;
  cursor:pointer !important;
  z-index:2 !important;
}
.fp-drop-field-v23 .fp-file-label-text{
  position:relative;
  z-index:1;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:13px 18px;
  border-radius:999px;
  background:var(--fp-text-strong);
  color:var(--fp-bg) !important;
  box-shadow:var(--fp-shadow-soft);
  font-size:1rem !important;
  line-height:1;
}
.fp-drop-field-v23 .fp-file-label-text::before{
  content:"📎";
  font-size:1rem;
}
.fp-drop-field-v23 small{
  position:relative;
  z-index:1;
}

/* Vertragsgruppen neutral halten — keine farbigen Hintergründe/Statusstreifen */
.fp-contract-group-v23{
  background:var(--fp-surface) !important;
}
.fp-contract-group-v23::before{
  display:none !important;
}
.fp-contract-group-v23 header span{
  color:var(--fp-muted) !important;
}
.fp-contract-kind-dot,
.fp-contract-kind-dot.kind-protection,
.fp-contract-kind-dot.kind-fixed,
.fp-contract-kind-dot.kind-short_saving,
.fp-contract-kind-dot.kind-mid_saving,
.fp-contract-kind-dot.kind-long_saving,
.fp-contract-kind-dot.kind-child_saving,
.fp-contract-kind-dot.kind-investment,
.fp-contract-kind-dot.kind-debt{
  background:var(--fp-accent) !important;
  opacity:.55;
}

/* Ausgelesene Hinweise als volle, ruhige Breite ohne Beleg-Verlinkung */
.fp-financeos-review-grid-single-v24{
  grid-template-columns:minmax(0,1fr) !important;
}
.fp-financeos-review-grid-single-v24 .fp-card{
  max-width:none !important;
}

@media (max-width:720px){
  .fp-financeos-orb-v23{
    width:min(300px,86vw) !important;
    padding:36px !important;
  }
}


/* =========================================================
   V25 Finanz-OS: neutrale Header, Vertragsmodal, Auto-Upload
   ========================================================= */
.fp-financeos-hero-v23,
.fp-financeos-guidance-v23,
.fp-financeos-status-v23 article,
.fp-contract-group-v23,
.fp-financeos-upload-v23,
.fp-financeos-docs-v23,
.fp-contract-center-v23,
.fp-financeos-review-grid-v23 .fp-card{
  background:var(--fp-surface) !important;
}
.fp-financeos-hero-v23::after,
.fp-financeos-status-v23 article::before,
.fp-living-summary-grid-v23 article::before{
  display:none !important;
}
.fp-financeos-hero-v23,
.fp-financeos-guidance-v23{
  border-color:var(--fp-line) !important;
}
.fp-drop-field-v23{
  background:var(--fp-surface-2) !important;
}
.fp-contract-card-v25{
  display:grid;
  gap:0;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.fp-contract-card-v25:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--fp-accent) 38%, var(--fp-line));
  box-shadow:var(--fp-shadow);
}
.fp-contract-open-v25{
  width:100%;
  border:0;
  background:transparent;
  color:var(--fp-text);
  display:grid;
  grid-template-columns:14px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:16px;
  text-align:left;
}
.fp-contract-open-v25 strong{
  display:block;
  color:var(--fp-text-strong);
  font-size:1.04rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fp-contract-open-v25 small{
  color:var(--fp-muted);
  font-weight:650;
}
.fp-contract-open-v25 b{
  color:var(--fp-text-strong);
  white-space:nowrap;
}
.fp-contract-quick-v25{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border-top:1px solid var(--fp-line);
  padding:10px 16px 13px;
  color:var(--fp-muted);
  font-size:.86rem;
  font-weight:760;
}
.fp-contract-quick-v25 a{
  color:var(--fp-accent) !important;
  font-weight:900;
}
.fp-contract-editor-template-v25[hidden]{display:none!important}
.fp-contract-editor-template-v25.is-in-swal{display:block!important;text-align:left}
.fp-swal-contract-v25{
  border-radius:30px !important;
  background:var(--fp-surface) !important;
  color:var(--fp-text) !important;
  border:1px solid var(--fp-line) !important;
  box-shadow:var(--fp-shadow) !important;
  padding:clamp(18px,2vw,28px) !important;
}
.fp-swal-contract-v25 .swal2-title{
  color:var(--fp-text-strong) !important;
  font-size:clamp(1.45rem,2.5vw,2.25rem) !important;
  letter-spacing:-.06em !important;
  padding:0 0 12px !important;
}
.fp-swal-contract-v25 .swal2-html-container{
  margin:0 !important;
  color:var(--fp-text) !important;
  overflow:visible !important;
}
.fp-swal-contract-v25 .fp-contract-edit-v25{
  border-top:0 !important;
  padding:0 !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.fp-swal-contract-v25 select[multiple]{
  min-height:132px;
}
.fp-swal-contract-v25 .swal2-actions{
  gap:10px !important;
  flex-wrap:wrap !important;
}
.fp-financeos-upload-form-v23.is-uploading .fp-drop-field-v23{
  pointer-events:none;
  opacity:.78;
  border-style:solid !important;
}
.fp-financeos-upload-form-v23.is-uploading .fp-file-label-text::before{
  content:"⏳" !important;
}
@media (max-width:900px){
  .fp-swal-contract-v25 .fp-contract-edit-v25{grid-template-columns:1fr!important}
  .fp-contract-open-v25{grid-template-columns:12px minmax(0,1fr)}
  .fp-contract-open-v25 b{grid-column:2;margin-top:4px}
}

/* =========================================================
   V26 Finanz-OS: headerlose Vertragszentrale + Cockpit-Modal
   ========================================================= */
body:has(.fp-contract-center-v23) .fp-section-head-inline,
body:has(.fp-contract-center-v23) .fp-contract-group-v23 header,
body:has(.fp-contract-center-v23) .fp-card-head,
body:has(.fp-contract-center-v23) .fp-wizard-head{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}
body:has(.fp-contract-center-v23) .fp-section-head-inline{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
}
body:has(.fp-contract-center-v23) .fp-section-head-inline .fp-kicker,
body:has(.fp-contract-center-v23) .fp-contract-group-v23 header span,
body:has(.fp-contract-center-v23) .fp-financeos-docs-v23 > .fp-kicker,
body:has(.fp-contract-center-v23) .fp-financeos-review-grid-v23 .fp-kicker{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  color:var(--fp-accent) !important;
}
.fp-contract-group-v23 header{
  padding:0 0 14px !important;
  margin:0 0 14px !important;
  border-bottom:1px solid color-mix(in srgb,var(--fp-line) 82%, transparent) !important;
}
.fp-contract-group-v23 header h3{
  margin-top:6px !important;
}
.fp-contract-group-v23 header p{
  max-width:780px;
  line-height:1.55;
}
.fp-contract-group-v23{
  background:color-mix(in srgb,var(--fp-surface) 94%, var(--fp-bg)) !important;
}
.fp-contract-card-v25{
  background:color-mix(in srgb,var(--fp-surface) 96%, var(--fp-bg)) !important;
  border-color:color-mix(in srgb,var(--fp-line) 88%, transparent) !important;
}
.fp-contract-card-v25:hover,
.fp-contract-card-v25:focus-within{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--fp-accent) 42%, var(--fp-line)) !important;
  box-shadow:0 18px 44px color-mix(in srgb,var(--fp-text-strong) 11%, transparent) !important;
}
.fp-contract-open-v25{
  cursor:pointer;
  border-radius:inherit;
}
.fp-contract-open-v25:focus-visible{
  outline:none;
  box-shadow:inset var(--fp-focus);
}
.fp-contract-quick-v25{
  background:transparent !important;
}

.swal2-container.fp-swal-contract-container-v26{
  align-items:center !important;
  justify-content:center !important;
  padding:clamp(12px,2vw,28px) !important;
  background:color-mix(in srgb,var(--fp-bg) 54%, rgba(15,23,42,.34)) !important;
  backdrop-filter:blur(14px) saturate(1.05);
  -webkit-backdrop-filter:blur(14px) saturate(1.05);
}
.fp-swal-contract-v26{
  width:min(1040px, calc(100vw - 28px)) !important;
  max-height:min(88vh, 880px) !important;
  overflow:hidden !important;
  border-radius:34px !important;
  background:
    radial-gradient(520px 220px at 12% -10%, color-mix(in srgb,var(--fp-accent) 14%, transparent), transparent 68%),
    var(--fp-surface) !important;
  border:1px solid color-mix(in srgb,var(--fp-line) 92%, transparent) !important;
  box-shadow:0 30px 90px color-mix(in srgb,var(--fp-text-strong) 22%, transparent) !important;
  padding:0 !important;
  color:var(--fp-text) !important;
}
.fp-swal-contract-v26 .fp-swal-contract-html-v26,
.fp-swal-contract-v26 .swal2-html-container{
  width:100% !important;
  max-height:calc(min(88vh, 880px) - 92px) !important;
  overflow:auto !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--fp-text) !important;
  text-align:left !important;
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--fp-accent) 42%, var(--fp-line)) transparent;
}
.fp-contract-modal-shell-v26{
  display:grid;
  gap:0;
}
.fp-contract-modal-head-v26{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:start;
  padding:clamp(22px,3vw,34px) clamp(20px,3.2vw,38px) 18px;
  border-bottom:1px solid color-mix(in srgb,var(--fp-line) 86%, transparent);
  background:transparent !important;
}
.fp-contract-modal-copy-v26{
  min-width:0;
  display:grid;
  gap:6px;
}
.fp-contract-modal-copy-v26 .fp-kicker{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
.fp-contract-modal-copy-v26 h2{
  margin:0;
  color:var(--fp-text-strong);
  font-size:clamp(1.75rem,3.2vw,3rem);
  line-height:.98;
  letter-spacing:-.075em;
}
.fp-contract-modal-copy-v26 p{
  margin:0;
  color:var(--fp-muted);
  font-weight:720;
  line-height:1.45;
}
.fp-contract-modal-amount-v26{
  align-self:start;
  white-space:nowrap;
  border:1px solid var(--fp-line);
  background:var(--fp-surface-2);
  border-radius:999px;
  padding:10px 13px;
  color:var(--fp-text-strong);
  font-size:1rem;
  box-shadow:var(--fp-shadow-soft);
}
.fp-swal-contract-v26 .fp-contract-editor-template-v25.is-in-swal{
  display:block !important;
  padding:clamp(18px,2.8vw,30px) clamp(20px,3.2vw,38px) 12px;
}
.fp-swal-contract-v26 .fp-contract-edit-v25{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  border-top:0 !important;
  padding:0 !important;
  margin:0 !important;
}
.fp-swal-contract-v26 .fp-field,
.fp-swal-contract-v26 .fp-field-wide{
  min-width:0;
}
.fp-swal-contract-v26 .fp-field span{
  display:block;
  margin-bottom:7px;
  color:var(--fp-muted);
  font-size:.79rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:900;
}
.fp-swal-contract-v26 input:not([type="checkbox"]):not([type="radio"]),
.fp-swal-contract-v26 select,
.fp-swal-contract-v26 textarea{
  width:100%;
  min-height:48px;
  border-radius:16px !important;
  background:var(--fp-surface-2) !important;
  border:1px solid color-mix(in srgb,var(--fp-line) 90%, transparent) !important;
  color:var(--fp-text) !important;
  box-shadow:none !important;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.fp-swal-contract-v26 textarea{
  min-height:108px;
  resize:vertical;
}
.fp-swal-contract-v26 input:focus,
.fp-swal-contract-v26 select:focus,
.fp-swal-contract-v26 textarea:focus{
  outline:none !important;
  border-color:color-mix(in srgb,var(--fp-accent) 55%, var(--fp-line)) !important;
  box-shadow:var(--fp-focus) !important;
  background:var(--fp-surface) !important;
}
.fp-swal-contract-v26 select[multiple]{
  min-height:148px;
  padding:10px !important;
}
.fp-swal-contract-v26 .fp-contract-docs-v23{
  background:color-mix(in srgb,var(--fp-surface-2) 78%, transparent);
  border:1px solid color-mix(in srgb,var(--fp-line) 86%, transparent);
  border-radius:18px;
  padding:12px;
}
.fp-swal-contract-v26 .fp-contract-actions-v23{
  padding-top:2px;
  justify-content:flex-start;
}
.fp-swal-contract-v26 .fp-contract-actions-v23 button[type="submit"]{
  display:none !important;
}
.fp-swal-contract-v26 .fp-contract-actions-v23 a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  border-radius:999px;
  padding:10px 14px;
  border:1px solid var(--fp-line) !important;
  background:var(--fp-surface-2) !important;
  color:var(--fp-text-strong) !important;
  box-shadow:none !important;
  font-weight:900;
}
.fp-swal-contract-v26 .swal2-actions{
  width:100%;
  gap:10px !important;
  justify-content:flex-end !important;
  padding:16px clamp(20px,3.2vw,38px) clamp(18px,2.8vw,30px) !important;
  margin:0 !important;
  border-top:1px solid color-mix(in srgb,var(--fp-line) 86%, transparent);
  background:color-mix(in srgb,var(--fp-surface) 92%, transparent);
}
.fp-swal-contract-v26 .swal2-actions .fp-btn{
  min-width:132px;
}
.fp-swal-close-v26{
  width:42px !important;
  height:42px !important;
  right:16px !important;
  top:16px !important;
  border-radius:999px !important;
  color:var(--fp-muted) !important;
  background:var(--fp-surface-2) !important;
  border:1px solid var(--fp-line) !important;
  box-shadow:var(--fp-shadow-soft) !important;
}
.fp-swal-close-v26:hover{
  color:var(--fp-text-strong) !important;
  background:var(--fp-accent-soft) !important;
}
.fp-swal-pop-in-v26{animation:fpSwalPopInV26 .18s ease-out both !important;}
.fp-swal-pop-out-v26{animation:fpSwalPopOutV26 .14s ease-in both !important;}
@keyframes fpSwalPopInV26{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes fpSwalPopOutV26{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.985)}}
@media (max-width:760px){
  .fp-swal-contract-v26{border-radius:26px !important;}
  .fp-contract-modal-head-v26{grid-template-columns:1fr;padding:22px 18px 16px;}
  .fp-contract-modal-amount-v26{justify-self:start;}
  .fp-swal-contract-v26 .fp-contract-editor-template-v25.is-in-swal{padding:18px;}
  .fp-swal-contract-v26 .fp-contract-edit-v25{grid-template-columns:1fr !important;}
  .fp-swal-contract-v26 .swal2-actions{display:grid !important;grid-template-columns:1fr;padding:14px 18px 18px !important;}
  .fp-swal-contract-v26 .swal2-actions .fp-btn{width:100%;}
}

/* =========================================================
   V27 Finanz-OS: SweetAlert2 wirklich mittig im Viewport
   ========================================================= */
.swal2-container.fp-swal-contract-container-v26{
  position:fixed !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:100dvh !important;
  min-height:100vh !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain;
}
.swal2-container.fp-swal-contract-container-v26 .swal2-popup,
.swal2-container.fp-swal-contract-container-v26 .fp-swal-contract-v26{
  margin:auto !important;
  position:relative !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  transform-origin:center center !important;
}
.swal2-container.fp-swal-contract-container-v26.swal2-shown,
.swal2-container.fp-swal-contract-container-v26.swal2-backdrop-show{
  display:flex !important;
}
@media (max-height:720px){
  .swal2-container.fp-swal-contract-container-v26{
    align-items:center !important;
    padding-block:12px !important;
  }
  .fp-swal-contract-v26{
    max-height:calc(100dvh - 24px) !important;
    max-height:calc(100vh - 24px) !important;
  }
  .fp-swal-contract-v26 .fp-swal-contract-html-v26,
  .fp-swal-contract-v26 .swal2-html-container{
    max-height:calc(100dvh - 116px) !important;
    max-height:calc(100vh - 116px) !important;
  }
}


/* =========================================================
   V28 Finanz-OS: SweetAlert2 Inhalte, Texte und Felder mittig
   ========================================================= */
.swal2-container.fp-swal-contract-container-v26 .fp-swal-contract-v26,
.swal2-container.fp-swal-contract-container-v26 .fp-swal-contract-v26 .swal2-html-container,
.swal2-container.fp-swal-contract-container-v26 .fp-swal-contract-v26 .fp-swal-contract-html-v26{
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-modal-shell-v26{
  justify-items:center !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-modal-head-v26{
  width:100% !important;
  grid-template-columns:1fr !important;
  justify-items:center !important;
  align-items:center !important;
  text-align:center !important;
  gap:12px !important;
}
.fp-swal-contract-v26 .fp-contract-modal-copy-v26{
  width:100% !important;
  max-width:760px !important;
  margin:0 auto !important;
  justify-items:center !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-modal-copy-v26 .fp-kicker,
.fp-swal-contract-v26 .fp-contract-modal-copy-v26 h2,
.fp-swal-contract-v26 .fp-contract-modal-copy-v26 p{
  width:100% !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-modal-copy-v26 p{
  max-width:680px !important;
  margin-inline:auto !important;
}
.fp-swal-contract-v26 .fp-contract-modal-amount-v26{
  justify-self:center !important;
  align-self:center !important;
  margin:2px auto 0 !important;
}
.fp-swal-contract-v26 .fp-contract-editor-template-v25.is-in-swal{
  width:100% !important;
  max-width:920px !important;
  margin:0 auto !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-edit-v25{
  width:100% !important;
  max-width:880px !important;
  margin:0 auto !important;
  justify-content:center !important;
  justify-items:stretch !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-field,
.fp-swal-contract-v26 .fp-field-wide{
  width:100% !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-field span,
.fp-swal-contract-v26 .fp-field small,
.fp-swal-contract-v26 .fp-field-wide span,
.fp-swal-contract-v26 .fp-field-wide small{
  display:block !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.fp-swal-contract-v26 input:not([type="checkbox"]):not([type="radio"]),
.fp-swal-contract-v26 select,
.fp-swal-contract-v26 textarea{
  text-align:center !important;
  text-align-last:center;
  padding-left:14px !important;
  padding-right:14px !important;
}
.fp-swal-contract-v26 textarea{
  line-height:1.55 !important;
}
.fp-swal-contract-v26 select[multiple]{
  text-align:center !important;
  text-align-last:center;
}
.fp-swal-contract-v26 select[multiple] option{
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-docs-v23{
  text-align:center !important;
  justify-items:center !important;
}
.fp-swal-contract-v26 .fp-contract-docs-v23 a,
.fp-swal-contract-v26 .fp-contract-docs-v23 small{
  display:flex !important;
  justify-content:center !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .fp-contract-actions-v23{
  justify-content:center !important;
  text-align:center !important;
}
.fp-swal-contract-v26 .swal2-actions{
  justify-content:center !important;
  text-align:center !important;
}
@media (max-width:760px){
  .fp-swal-contract-v26 .fp-contract-modal-head-v26{
    text-align:center !important;
  }
  .fp-swal-contract-v26 .fp-contract-modal-amount-v26{
    justify-self:center !important;
  }
}

/* =========================================================
   V29 Terminkalender: moderne Cockpit-nahe Wochenplanung
   ========================================================= */
:root{
  --calendar-start:450;
  --calendar-end:1110;
}
body:has(.fp-calendar-page-v29) #fp-content-shell{
  max-width:1660px;
}
.fp-calendar-page-v29.fp-page-title{
  position:relative;
  overflow:hidden;
  border:1px solid var(--fp-line);
  border-radius:clamp(26px,3vw,42px);
  padding:clamp(22px,4vw,42px);
  margin-bottom:16px;
  background:
    radial-gradient(circle at 84% 10%, color-mix(in srgb,var(--fp-accent) 24%, transparent), transparent 31%),
    linear-gradient(135deg, color-mix(in srgb,var(--fp-surface) 96%, transparent), color-mix(in srgb,var(--fp-surface-2) 90%, transparent));
  box-shadow:var(--fp-shadow-soft);
}
.fp-calendar-page-v29::after{
  content:"";
  position:absolute;
  right:clamp(18px,4vw,54px);
  bottom:-44px;
  width:220px;
  height:220px;
  border-radius:50%;
  border:1px solid color-mix(in srgb,var(--fp-accent) 22%, transparent);
  background:radial-gradient(circle, color-mix(in srgb,var(--fp-accent-soft) 74%, transparent), transparent 68%);
  pointer-events:none;
}
.fp-calendar-page-v29>*{position:relative;z-index:1}
.fp-calendar-page-v29 h1{
  max-width:820px;
}
.fp-calendar-pulse-v29{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}
.fp-calendar-stat-v29{
  position:relative;
  overflow:hidden;
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  border-radius:24px;
  padding:18px;
  box-shadow:var(--fp-shadow-soft);
  min-height:126px;
}
.fp-calendar-stat-v29::before{
  content:"";
  position:absolute;
  inset:auto -18px -34px auto;
  width:110px;
  height:110px;
  border-radius:50%;
  background:color-mix(in srgb,var(--fp-accent-soft) 72%, transparent);
}
.fp-calendar-stat-v29.accent::before{background:color-mix(in srgb,var(--fp-good-soft) 75%, transparent)}
.fp-calendar-stat-v29.soft::before{background:color-mix(in srgb,var(--fp-info-soft) 75%, transparent)}
.fp-calendar-stat-v29 span,
.fp-calendar-stat-v29 small{
  display:block;
  position:relative;
  color:var(--fp-muted);
  font-weight:800;
}
.fp-calendar-stat-v29 span{
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fp-calendar-stat-v29 strong{
  position:relative;
  display:block;
  margin:10px 0 4px;
  color:var(--fp-text-strong);
  font-size:clamp(1.55rem,3vw,2.35rem);
  line-height:.96;
  letter-spacing:-.065em;
}
.fp-calendar-layout-v29{
  display:grid;
  grid-template-columns:minmax(0,320px) minmax(700px,940px) minmax(280px,320px);
  justify-content:center;
  gap:16px;
  align-items:start;
}
.fp-calendar-main-v29{
  grid-column:2;
  min-width:0;
}
.fp-calendar-side-v29{
  grid-column:3;
  min-width:0;
}
.fp-calendar-main-v29.fp-card,
.fp-calendar-side-v29 .fp-card{
  border-radius:30px;
}
.fp-calendar-main-v29{
  padding:clamp(16px,2.1vw,26px);
}
.fp-calendar-board-head-v29{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:end;
  margin-bottom:16px;
}
.fp-calendar-board-head-v29 h2,
.fp-calendar-side-v29 h3{
  margin:5px 0 0;
  color:var(--fp-text-strong);
  letter-spacing:-.055em;
  line-height:1.02;
}
.fp-calendar-board-head-v29 h2{
  font-size:clamp(1.65rem,3vw,2.65rem);
}
.fp-calendar-board-head-v29 p,
.fp-calendar-side-v29 p{
  margin:6px 0 0;
  color:var(--fp-muted);
  line-height:1.55;
}
.fp-calendar-toolbar-v29{
  display:flex;
  gap:8px;
  align-items:center;
}
.fp-calendar-toolbar-v29 .week-btn{
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  display:grid !important;
  place-items:center;
  width:46px;
  height:46px;
  min-height:46px !important;
  padding:0 !important;
  border-radius:16px !important;
  border:1px solid var(--fp-line) !important;
  background:var(--fp-surface-2) !important;
  color:var(--fp-text-strong) !important;
  box-shadow:none !important;
  font-size:1.75rem !important;
  line-height:1;
  opacity:1 !important;
}
.fp-calendar-toolbar-v29 .week-btn:hover{
  transform:translateY(-1px) !important;
  background:var(--fp-accent-soft) !important;
  color:var(--fp-accent) !important;
}
.fp-calendar-container-v29{
  position:relative;
  overflow:auto;
  max-width:100%;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  border:1px solid var(--fp-line);
  border-radius:26px;
  background:
    linear-gradient(180deg, color-mix(in srgb,var(--fp-surface-2) 72%, transparent), color-mix(in srgb,var(--fp-surface) 95%, transparent));
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--fp-surface) 70%, transparent);
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--fp-accent) 45%, var(--fp-line)) transparent;
}
.fp-calendar-container-v29 .weekday-headers{
  position:sticky;
  top:0;
  z-index:12;
  display:grid;
  grid-template-columns:repeat(5,minmax(140px,1fr));
  min-width:760px;
  gap:0;
  text-align:left;
  border-bottom:1px solid var(--fp-line);
  background:color-mix(in srgb,var(--fp-surface) 94%, transparent);
  backdrop-filter:blur(14px);
}
.fp-calendar-container-v29 .weekday-headers>div{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border-right:1px solid var(--fp-line);
}
.fp-calendar-container-v29 .weekday-headers>div:last-child{border-right:0}
.fp-calendar-container-v29 .weekday-headers span{
  color:var(--fp-muted);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.fp-calendar-container-v29 .weekday-headers strong{
  color:var(--fp-text-strong);
  font-size:1rem;
  font-weight:950;
}
.fp-calendar-container-v29 .weekday-headers .is-today{
  background:var(--fp-accent-soft);
}
.fp-calendar-container-v29 .calendar-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(140px,1fr));
  min-width:760px;
  min-height:900px;
  border:0;
  transition:transform .32s ease, opacity .32s ease;
}
.fp-calendar-container-v29 .grid-cell{
  position:relative;
  min-height:44px;
  padding:4px 6px;
  border-right:1px solid color-mix(in srgb,var(--fp-line) 82%, transparent);
  border-bottom:1px solid color-mix(in srgb,var(--fp-line) 72%, transparent);
  color:var(--fp-soft-text);
  font-size:.69rem;
  font-weight:800;
  overflow:hidden;
  cursor:pointer;
  transition:background .14s ease, box-shadow .14s ease;
}
.fp-calendar-container-v29 .grid-cell:nth-child(5n){border-right:0}
.fp-calendar-container-v29 .grid-cell:hover{
  background:color-mix(in srgb,var(--fp-accent-soft) 72%, transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fp-accent) 22%, transparent);
}
.fp-calendar-container-v29 .grid-cell span{
  position:absolute;
  top:5px;
  left:7px;
  opacity:.72;
}
.fp-calendar-container-v29 .event{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  overflow:hidden;
  border-radius:18px;
  border:1px solid color-mix(in srgb,var(--fp-accent) 36%, var(--fp-line));
  background:linear-gradient(135deg, color-mix(in srgb,var(--fp-accent-soft) 86%, var(--fp-surface)), color-mix(in srgb,var(--fp-surface) 90%, transparent));
  box-shadow:0 16px 30px color-mix(in srgb,var(--fp-accent) 13%, transparent);
  padding:10px 11px;
  color:var(--fp-text-strong);
}
.fp-calendar-container-v29 .event.is-busy{
  border-color:var(--fp-line);
  background:linear-gradient(135deg, color-mix(in srgb,var(--fp-surface-2) 88%, transparent), color-mix(in srgb,var(--fp-line) 34%, var(--fp-surface)));
  box-shadow:none;
  color:var(--fp-muted);
}
.fp-calendar-container-v29 .event.status-confirmed.is-own{
  border-color:color-mix(in srgb,var(--fp-good) 42%, var(--fp-line));
  background:linear-gradient(135deg, color-mix(in srgb,var(--fp-good-soft) 78%, var(--fp-surface)), var(--fp-surface));
}
.fp-calendar-container-v29 .event.status-requested.is-own{
  border-color:color-mix(in srgb,var(--fp-accent) 38%, var(--fp-line));
}
.fp-calendar-container-v29 .event-time{
  font-size:.83rem;
  font-weight:950;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.fp-calendar-container-v29 .event-title{
  font-size:1rem;
  font-weight:950;
  line-height:1.04;
  letter-spacing:-.04em;
}
.fp-calendar-container-v29 .event-subtitle{
  color:var(--fp-muted);
  font-size:.72rem;
  font-weight:850;
  white-space:nowrap;
}
.fp-calendar-hint-v29{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-top:14px;
  border:1px solid var(--fp-line);
  border-radius:20px;
  background:var(--fp-surface-2);
  padding:13px 14px;
}
.fp-calendar-hint-v29 span{
  display:inline-flex;
  border-radius:999px;
  background:var(--fp-accent-soft);
  color:var(--fp-accent);
  padding:6px 9px;
  font-weight:950;
  font-size:.76rem;
}
.fp-calendar-hint-v29 p{
  margin:2px 0 0;
  color:var(--fp-muted);
  line-height:1.45;
  font-weight:650;
}
.fp-calendar-side-v29{
  display:grid;
  gap:16px;
  position:sticky;
  top:calc(var(--fp-topbar-h) + 18px);
}
.fp-calendar-next-card-v29,
.fp-calendar-list-card-v29{
  padding:22px;
}
.fp-calendar-mini-flow-v29{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.fp-calendar-mini-flow-v29 div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  border:1px solid var(--fp-line);
  border-radius:16px;
  background:var(--fp-surface-2);
  padding:10px;
}
.fp-calendar-mini-flow-v29 b{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:var(--fp-accent-soft);
  color:var(--fp-accent);
  font-weight:950;
}
.fp-calendar-mini-flow-v29 span{
  color:var(--fp-text-strong);
  font-weight:850;
}
.fp-calendar-upcoming-list-v29{
  display:grid;
  gap:10px;
}
.fp-calendar-list-item-v29{
  display:grid;
  grid-template-columns:10px minmax(0,1fr);
  gap:11px;
  padding:12px;
  border:1px solid var(--fp-line);
  border-radius:18px;
  background:var(--fp-surface-2);
}
.fp-calendar-list-item-v29>span{
  width:10px;
  min-height:100%;
  border-radius:999px;
  background:var(--fp-accent);
}
.fp-calendar-list-item-v29.is-busy>span{background:color-mix(in srgb,var(--fp-muted) 46%, transparent)}
.fp-calendar-list-item-v29 strong{
  display:block;
  color:var(--fp-text-strong);
  font-weight:950;
}
.fp-calendar-list-item-v29 small{
  display:block;
  margin-top:2px;
  color:var(--fp-muted);
  font-weight:850;
}
.fp-calendar-list-item-v29 p{
  margin:7px 0 0;
  color:var(--fp-muted);
  font-size:.86rem;
  line-height:1.38;
}
.fp-cal-modal-open-v29{overflow:hidden}
.fp-cal-modal-v29.modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:160;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:color-mix(in srgb,var(--fp-text-strong) 42%, transparent);
  backdrop-filter:blur(18px) saturate(1.08);
}
.fp-cal-modal-card-v29.modal-content{
  position:relative;
  width:min(620px,100%);
  max-height:calc(100dvh - 40px);
  overflow:auto;
  margin:0 !important;
  padding:clamp(22px,3vw,34px) !important;
  border-radius:30px !important;
  border:1px solid var(--fp-line) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--fp-surface) 98%, transparent),color-mix(in srgb,var(--fp-surface-2) 92%, var(--fp-surface))) !important;
  color:var(--fp-text) !important;
  box-shadow:0 26px 90px color-mix(in srgb,var(--fp-text-strong) 20%, transparent) !important;
  text-align:center;
  animation:fpCalModalInV29 .18s ease-out both;
}
@keyframes fpCalModalInV29{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.fp-cal-modal-card-v29 h2{
  margin:7px 0 0;
  color:var(--fp-text-strong);
  font-size:clamp(1.9rem,4vw,3.1rem);
  line-height:.98;
  letter-spacing:-.075em;
}
.fp-cal-modal-lead-v29,
.fp-cal-edit-info-v29 p{
  margin:10px auto 0;
  max-width:480px;
  color:var(--fp-muted);
  line-height:1.5;
  font-weight:700;
}
.fp-cal-form-v29{
  display:grid;
  gap:14px;
  margin-top:20px !important;
}
.fp-cal-field-grid-v29{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.fp-cal-modal-card-v29 .fp-field{
  text-align:center;
}
.fp-cal-modal-card-v29 .fp-field span{
  display:block;
  margin-bottom:7px;
  color:var(--fp-muted);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:950;
}
.fp-cal-modal-card-v29 input,
.fp-cal-modal-card-v29 textarea{
  width:100%;
  min-height:48px;
  border-radius:16px !important;
  background:color-mix(in srgb,var(--fp-surface-2) 92%, var(--fp-surface)) !important;
  border:1px solid var(--fp-line) !important;
  color:var(--fp-text-strong) !important;
  text-align:center;
  box-shadow:none !important;
}
.fp-cal-modal-card-v29 textarea{
  min-height:126px;
  line-height:1.55;
  resize:vertical;
}
.fp-cal-modal-card-v29 input:focus,
.fp-cal-modal-card-v29 textarea:focus{
  outline:none !important;
  border-color:color-mix(in srgb,var(--fp-accent) 52%, var(--fp-line)) !important;
  box-shadow:var(--fp-focus) !important;
  background:var(--fp-surface) !important;
}
.fp-cal-modal-actions-v29{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:2px;
}
.fp-cal-modal-actions-v29 .fp-btn{
  min-width:150px;
}
.fp-cal-modal-close-v29{
  position:absolute;
  right:14px;
  top:14px;
  width:42px !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center;
  border-radius:999px !important;
  border:1px solid var(--fp-line) !important;
  background:var(--fp-surface-2) !important;
  color:var(--fp-muted) !important;
  box-shadow:none !important;
  font-size:1.5rem !important;
  line-height:1 !important;
}
.fp-cal-modal-close-v29:hover{
  color:var(--fp-text-strong) !important;
  background:var(--fp-accent-soft) !important;
}
.fp-cal-edit-info-v29{
  display:grid;
  gap:8px;
  margin:16px auto;
  max-width:520px;
}
.fp-cal-edit-info-v29 p{
  width:100%;
  margin:0;
  border:1px solid var(--fp-line);
  border-radius:16px;
  background:var(--fp-surface-2);
  padding:11px 13px;
}
.fp-cal-message-v29.message{
  position:fixed;
  top:calc(var(--fp-topbar-h) + 18px);
  left:50%;
  transform:translateX(-50%);
  z-index:170;
  max-width:min(520px,calc(100vw - 32px));
  border-radius:18px;
  padding:13px 16px;
  color:var(--fp-text-strong);
  background:var(--fp-surface);
  border:1px solid var(--fp-line);
  box-shadow:var(--fp-shadow);
  font-weight:900;
  text-align:center;
  transition:opacity .4s ease;
}
.fp-cal-message-v29.success{border-color:color-mix(in srgb,var(--fp-good) 48%, var(--fp-line));color:var(--fp-good)}
.fp-cal-message-v29.error{border-color:color-mix(in srgb,var(--fp-bad) 48%, var(--fp-line));color:var(--fp-bad)}
@media (max-width:1240px){
  .fp-calendar-layout-v29{grid-template-columns:minmax(0,1fr);justify-content:stretch}
  .fp-calendar-main-v29,
  .fp-calendar-side-v29{grid-column:auto}
  .fp-calendar-main-v29{width:100%;max-width:980px;margin-inline:auto}
  .fp-calendar-side-v29{position:relative;top:auto;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:980px;margin-inline:auto}
}
@media (max-width:1120px){
  .fp-calendar-layout-v29{grid-template-columns:1fr}
}
@media (max-width:820px){
  .fp-calendar-page-v29.fp-page-title{grid-template-columns:1fr}
  .fp-calendar-pulse-v29{grid-template-columns:1fr}
  .fp-calendar-side-v29{grid-template-columns:1fr}
  .fp-calendar-board-head-v29{grid-template-columns:1fr}
  .fp-calendar-toolbar-v29{justify-content:flex-start}
  .fp-cal-field-grid-v29{grid-template-columns:1fr}
  .fp-calendar-container-v29 .calendar-grid{min-height:780px}
  .fp-calendar-container-v29 .weekday-headers,
  .fp-calendar-container-v29 .calendar-grid{min-width:720px;grid-template-columns:repeat(5,144px)}
}
@media (max-width:560px){
  .fp-calendar-page-v29.fp-page-title{padding:20px;border-radius:28px}
  .fp-calendar-main-v29.fp-card,
  .fp-calendar-side-v29 .fp-card{border-radius:24px}
  .fp-calendar-container-v29{border-radius:20px}
  .fp-calendar-container-v29 .weekday-headers,
  .fp-calendar-container-v29 .calendar-grid{min-width:680px;grid-template-columns:repeat(5,136px)}
  .fp-calendar-container-v29{margin-inline:-2px}
  .fp-cal-modal-v29.modal{padding:12px}
  .fp-cal-modal-card-v29.modal-content{border-radius:24px !important;padding:22px 16px !important}
  .fp-cal-modal-actions-v29{display:grid;grid-template-columns:1fr;width:100%}
  .fp-cal-modal-actions-v29 .fp-btn{width:100%}
}
.fp-calendar-container-v29 .grid-cell.is-past{
  cursor:not-allowed;
  opacity:.48;
  background:color-mix(in srgb,var(--fp-line) 18%, transparent);
}
.fp-calendar-container-v29 .grid-cell.is-past:hover{
  background:color-mix(in srgb,var(--fp-line) 22%, transparent);
  box-shadow:none;
}


/* V30 Calendar refinements: centered main layout, theme-safe modals, no mobile overlap */
html[data-theme="dark"] .fp-cal-modal-v29.modal{
  background:rgba(4,8,15,.76);
}
html[data-theme="dark"] .fp-cal-modal-card-v29.modal-content{
  border-color:color-mix(in srgb,var(--fp-line-strong) 78%, transparent) !important;
  background:linear-gradient(180deg,#172033,#111827) !important;
  box-shadow:0 30px 100px rgba(0,0,0,.52) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29 input,
html[data-theme="dark"] .fp-cal-modal-card-v29 textarea,
html[data-theme="dark"] .fp-cal-edit-info-v29 p,
html[data-theme="dark"] .fp-cal-modal-close-v29{
  background:color-mix(in srgb,var(--fp-surface-2) 88%, #050914) !important;
  border-color:color-mix(in srgb,var(--fp-line-strong) 82%, transparent) !important;
  color:var(--fp-text-strong) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29 input::placeholder,
html[data-theme="dark"] .fp-cal-modal-card-v29 textarea::placeholder{
  color:color-mix(in srgb,var(--fp-muted) 78%, transparent);
}
html:not([data-theme="dark"]) .fp-cal-modal-v29.modal{
  background:rgba(17,24,39,.42);
}
html:not([data-theme="dark"]) .fp-cal-modal-card-v29.modal-content{
  background:linear-gradient(180deg,#fffdf8,#f8f5ee) !important;
}
.fp-calendar-main-v29,
.fp-calendar-side-v29,
.fp-calendar-container-v29,
.fp-calendar-container-v29 .calendar-grid,
.fp-calendar-container-v29 .weekday-headers{
  min-width:0;
}
.fp-calendar-container-v29 .calendar-grid,
.fp-calendar-container-v29 .weekday-headers{
  width:max(100%, 760px);
}
@media (max-width:820px){
  .fp-calendar-container-v29 .calendar-grid,
  .fp-calendar-container-v29 .weekday-headers{width:720px}
  .fp-calendar-hint-v29{display:grid}
}
@media (max-width:560px){
  .fp-calendar-container-v29 .calendar-grid,
  .fp-calendar-container-v29 .weekday-headers{width:680px}
}

/* =========================================================
   V31 Terminkalender: booking-form vollständig themefähig
   ========================================================= */
.fp-cal-modal-card-v29.modal-content{
  width:min(620px, calc(100vw - 28px)) !important;
}
.fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
.fp-cal-modal-card-v29 .fp-cal-form-v29{
  width:min(100%, 540px);
  margin:22px auto 0 !important;
  padding:clamp(14px,2.4vw,20px);
  border:1px solid color-mix(in srgb,var(--fp-line) 86%, transparent);
  border-radius:24px;
  background:
    radial-gradient(circle at 50% 0%, color-mix(in srgb,var(--fp-accent-soft) 34%, transparent), transparent 46%),
    linear-gradient(180deg, color-mix(in srgb,var(--fp-surface-2) 90%, transparent), color-mix(in srgb,var(--fp-surface) 96%, transparent));
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--fp-surface) 72%, transparent);
  color:var(--fp-text);
}
.fp-cal-modal-card-v29 #booking-form .fp-cal-field-grid-v29,
.fp-cal-modal-card-v29 .fp-cal-form-v29 .fp-cal-field-grid-v29{
  width:100%;
  min-width:0;
}
.fp-cal-modal-card-v29 #booking-form .fp-field,
.fp-cal-modal-card-v29 .fp-cal-form-v29 .fp-field,
.fp-cal-modal-card-v29 #booking-form .fp-field-wide,
.fp-cal-modal-card-v29 .fp-cal-form-v29 .fp-field-wide{
  min-width:0;
}
.fp-cal-modal-card-v29 #booking-form input,
.fp-cal-modal-card-v29 #booking-form textarea,
.fp-cal-modal-card-v29 .fp-cal-form-v29 input,
.fp-cal-modal-card-v29 .fp-cal-form-v29 textarea{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:13px 14px;
  border:1px solid color-mix(in srgb,var(--fp-line) 92%, transparent) !important;
  background:linear-gradient(180deg, color-mix(in srgb,var(--fp-surface) 66%, var(--fp-surface-2)), var(--fp-surface-2)) !important;
  color:var(--fp-text-strong) !important;
  caret-color:var(--fp-accent);
  font:inherit;
}
.fp-cal-modal-card-v29 #booking-form textarea,
.fp-cal-modal-card-v29 .fp-cal-form-v29 textarea{
  text-align:center;
  overflow-wrap:anywhere;
}
.fp-cal-modal-card-v29 #booking-form input[readonly],
.fp-cal-modal-card-v29 .fp-cal-form-v29 input[readonly]{
  background:color-mix(in srgb,var(--fp-surface-2) 86%, var(--fp-accent-soft)) !important;
  color:var(--fp-text-strong) !important;
}
.fp-cal-modal-card-v29 #booking-form input:-webkit-autofill,
.fp-cal-modal-card-v29 #booking-form textarea:-webkit-autofill,
.fp-cal-modal-card-v29 .fp-cal-form-v29 input:-webkit-autofill,
.fp-cal-modal-card-v29 .fp-cal-form-v29 textarea:-webkit-autofill{
  -webkit-text-fill-color:var(--fp-text-strong) !important;
  box-shadow:0 0 0 1000px var(--fp-surface-2) inset !important;
  transition:background-color 9999s ease-out 0s;
}
html[data-theme="dark"] .fp-cal-modal-v29.modal,
body.dark .fp-cal-modal-v29.modal,
[data-theme="dark"] .fp-cal-modal-v29.modal{
  background:rgba(3,7,18,.78) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29.modal-content,
body.dark .fp-cal-modal-card-v29.modal-content,
[data-theme="dark"] .fp-cal-modal-card-v29.modal-content{
  background:
    radial-gradient(circle at 50% -12%, color-mix(in srgb,var(--fp-accent) 14%, transparent), transparent 42%),
    linear-gradient(180deg,var(--fp-card),var(--fp-surface-2)) !important;
  color:var(--fp-text) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29,
body.dark .fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
body.dark .fp-cal-modal-card-v29 .fp-cal-form-v29,
[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29{
  border-color:color-mix(in srgb,var(--fp-line-strong) 88%, transparent);
  background:
    radial-gradient(circle at 50% 0%, color-mix(in srgb,var(--fp-accent) 13%, transparent), transparent 48%),
    linear-gradient(180deg, color-mix(in srgb,var(--fp-card) 86%, #050914), color-mix(in srgb,var(--fp-surface-2) 94%, #050914)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form input,
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form textarea,
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 input,
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea,
body.dark .fp-cal-modal-card-v29 #booking-form input,
body.dark .fp-cal-modal-card-v29 #booking-form textarea,
body.dark .fp-cal-modal-card-v29 .fp-cal-form-v29 input,
body.dark .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea,
[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form input,
[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form textarea,
[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 input,
[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea{
  background:linear-gradient(180deg, color-mix(in srgb,var(--fp-surface) 82%, #050914), color-mix(in srgb,var(--fp-surface-2) 96%, #050914)) !important;
  border-color:color-mix(in srgb,var(--fp-line-strong) 82%, transparent) !important;
  color:var(--fp-text-strong) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form input[readonly],
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 input[readonly],
body.dark .fp-cal-modal-card-v29 #booking-form input[readonly],
body.dark .fp-cal-modal-card-v29 .fp-cal-form-v29 input[readonly],
[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form input[readonly],
[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 input[readonly]{
  background:color-mix(in srgb,var(--fp-surface-2) 84%, var(--fp-accent-soft)) !important;
}
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form input:-webkit-autofill,
html[data-theme="dark"] .fp-cal-modal-card-v29 #booking-form textarea:-webkit-autofill,
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 input:-webkit-autofill,
html[data-theme="dark"] .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea:-webkit-autofill{
  -webkit-text-fill-color:var(--fp-text-strong) !important;
  box-shadow:0 0 0 1000px var(--fp-surface-2) inset !important;
}
html:not([data-theme="dark"]) .fp-cal-modal-card-v29.modal-content,
html[data-theme="light"] .fp-cal-modal-card-v29.modal-content,
body.light .fp-cal-modal-card-v29.modal-content,
[data-theme="light"] .fp-cal-modal-card-v29.modal-content{
  background:
    radial-gradient(circle at 50% -12%, color-mix(in srgb,var(--fp-accent-soft) 78%, transparent), transparent 42%),
    linear-gradient(180deg,var(--fp-surface),var(--fp-surface-2)) !important;
}
@media (max-width:560px){
  .fp-cal-modal-card-v29.modal-content{
    width:calc(100vw - 24px) !important;
    max-height:calc(100dvh - 24px);
  }
  .fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
  .fp-cal-modal-card-v29 .fp-cal-form-v29{
    padding:14px;
    border-radius:20px;
    gap:12px;
  }
  .fp-cal-modal-card-v29 #booking-form textarea,
  .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea{
    min-height:110px;
  }
}
@media (max-width:420px){
  .fp-cal-modal-card-v29 h2{font-size:2rem;}
  .fp-cal-modal-card-v29 #booking-form.fp-cal-form-v29,
  .fp-cal-modal-card-v29 .fp-cal-form-v29{
    width:100%;
    padding:12px;
  }
  .fp-cal-modal-card-v29 #booking-form input,
  .fp-cal-modal-card-v29 #booking-form textarea,
  .fp-cal-modal-card-v29 .fp-cal-form-v29 input,
  .fp-cal-modal-card-v29 .fp-cal-form-v29 textarea{
    padding:12px;
  }
}


/* =========================================================
   UX2026 V33 — Settings rebuild: profile, privacy, documents
   ========================================================= */
body:has(.fp-settings-page-v33) .fp-app-shell,
body:has(.fp-settings-page-v33) .fp-app-shell-clean,
body:has(.fp-settings-page-v33) #fp-content-shell{max-width:100%;display:block;padding:clamp(14px,2.5vw,32px)}
.fp-settings-page-v33{width:min(1320px,100%);margin:0 auto;display:grid;gap:18px}
.fp-settings-hero-v33{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:stretch;border:1px solid var(--fp-line);border-radius:38px;padding:clamp(22px,4vw,48px);background:linear-gradient(135deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 42%,var(--fp-surface)));box-shadow:var(--fp-shadow-soft)}
.fp-settings-hero-v33::before{content:"";position:absolute;right:-110px;bottom:-150px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 18%,transparent),transparent 68%);pointer-events:none}
.fp-settings-hero-copy-v33{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:12px;max-width:860px}
.fp-settings-hero-copy-v33 h1{margin:0;color:var(--fp-text-strong);font-size:clamp(2.15rem,5.6vw,5.25rem);line-height:.95;letter-spacing:-.075em}
.fp-settings-hero-copy-v33 p{margin:0;color:var(--fp-muted);font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.65;max-width:760px}
.fp-settings-hero-actions-v33{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.fp-settings-profile-card-v33{position:relative;z-index:1;align-self:center;display:grid;gap:14px;justify-items:center;text-align:center;border:1px solid var(--fp-line);border-radius:30px;background:color-mix(in srgb,var(--fp-surface) 86%,transparent);box-shadow:var(--fp-shadow-soft);padding:22px;backdrop-filter:blur(14px)}
.fp-settings-avatar-v33{width:116px;height:116px;border-radius:34px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--fp-accent-soft),color-mix(in srgb,var(--fp-info-soft) 34%,var(--fp-surface)));border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft)}
.fp-settings-avatar-v33 img{width:100%;height:100%;object-fit:cover}.fp-settings-avatar-v33 span{font-size:2.6rem;font-weight:950;color:var(--fp-accent)}
.fp-settings-profile-card-v33 strong{display:block;color:var(--fp-text-strong);font-size:1.18rem;letter-spacing:-.04em}.fp-settings-profile-card-v33 small{display:block;color:var(--fp-muted);font-weight:720;word-break:break-word}
.fp-settings-privacy-chip-v33{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 11px;border:1px solid var(--fp-line);font-weight:900;font-size:.84rem}.fp-settings-privacy-chip-v33.is-private{background:var(--fp-info-soft);color:var(--fp-info)}.fp-settings-privacy-chip-v33.is-public{background:var(--fp-good-soft);color:var(--fp-good)}
.fp-settings-anchorbar-v33{position:sticky;top:calc(var(--fp-topbar-h) + 8px);z-index:20;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;width:max-content;max-width:100%;margin:0 auto;padding:8px;border:1px solid var(--fp-line);border-radius:999px;background:color-mix(in srgb,var(--fp-surface) 88%,transparent);box-shadow:var(--fp-shadow-soft);backdrop-filter:blur(16px)}
.fp-settings-anchorbar-v33 a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:10px 14px;color:var(--fp-muted);font-weight:900}.fp-settings-anchorbar-v33 a:hover{background:var(--fp-accent-soft);color:var(--fp-text-strong)}
.fp-settings-center-v33{display:grid;gap:18px;max-width:1180px;width:100%;margin:0 auto}
.fp-settings-main-card-v33{display:grid;gap:20px;border-radius:34px;padding:clamp(18px,2.6vw,32px)}
.fp-settings-card-head-v33{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.fp-settings-card-head-v33.compact{display:block}.fp-settings-card-head-v33 h2{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.65rem,3vw,3rem);line-height:.98;letter-spacing:-.07em}.fp-settings-card-head-v33 p{margin:0;color:var(--fp-muted);line-height:1.6;max-width:760px}
.fp-settings-profile-edit-v33{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:start}.fp-settings-photo-picker-v33{display:grid;gap:12px;align-content:start;text-align:center;border:1px solid var(--fp-line);border-radius:28px;background:var(--fp-surface-2);padding:18px;cursor:pointer}.fp-settings-photo-picker-v33 input{position:absolute;opacity:0;pointer-events:none}.fp-settings-photo-picker-v33 strong{display:block;color:var(--fp-text-strong);font-size:1.02rem}.fp-settings-photo-picker-v33 small{display:block;color:var(--fp-muted);line-height:1.45}.fp-settings-photo-preview-v33{width:150px;height:150px;border-radius:38px;margin:0 auto;display:grid;place-items:center;overflow:hidden;background:var(--fp-surface);border:1px solid var(--fp-line);box-shadow:var(--fp-shadow-soft)}.fp-settings-photo-preview-v33 img{width:100%;height:100%;object-fit:cover}.fp-settings-photo-preview-v33 b{font-size:3rem;color:var(--fp-accent)}
.fp-settings-form-grid-v33{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fp-settings-form-grid-v33 .fp-field{margin:0}.fp-field-wide{grid-column:1/-1}.fp-settings-save-state-v33{margin:0;min-height:22px;color:var(--fp-muted);font-weight:850}.fp-settings-save-state-v33.is-ok{color:var(--fp-good)}.fp-settings-save-state-v33.is-error{color:var(--fp-bad)}
.fp-settings-two-col-v33{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.fp-privacy-choice-grid-v33{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-privacy-choice-v33{position:relative;display:grid;gap:9px;align-content:start;border:1px solid var(--fp-line);border-radius:24px;padding:16px;background:var(--fp-surface-2);cursor:pointer;transition:.18s ease}.fp-privacy-choice-v33:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--fp-accent) 42%,var(--fp-line))}.fp-privacy-choice-v33 input{position:absolute;opacity:0}.fp-privacy-choice-v33.is-selected{background:color-mix(in srgb,var(--fp-accent-soft) 72%,var(--fp-surface));border-color:color-mix(in srgb,var(--fp-accent) 45%,var(--fp-line));box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-accent) 9%,transparent)}.fp-privacy-icon-v33{width:46px;height:46px;border-radius:17px;background:var(--fp-surface);border:1px solid var(--fp-line);display:grid;place-items:center;font-size:1.25rem}.fp-privacy-choice-v33 strong{color:var(--fp-text-strong);font-size:1.04rem}.fp-privacy-choice-v33 small{color:var(--fp-muted);line-height:1.45}
.fp-community-preview-v33{margin-top:14px;border-radius:26px;border:1px solid var(--fp-line);background:linear-gradient(135deg,var(--fp-surface-2),color-mix(in srgb,var(--fp-info-soft) 34%,var(--fp-surface-2)));padding:18px}.fp-community-preview-v33 h3{margin:5px 0 12px;color:var(--fp-text-strong);font-size:1.35rem;letter-spacing:-.055em}.fp-community-feature-list-v33{display:grid;gap:9px}.fp-community-feature-list-v33 div{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center}.fp-community-feature-list-v33 b{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:var(--fp-surface);color:var(--fp-accent);border:1px solid var(--fp-line);font-size:.82rem}.fp-community-feature-list-v33 span{font-weight:850;color:var(--fp-text)}
.fp-settings-stack-v33{display:grid;gap:14px}.fp-settings-mini-block-v33{display:grid;gap:12px;border:1px solid var(--fp-line);border-radius:24px;background:var(--fp-surface-2);padding:16px}.fp-settings-mini-block-v33>strong{color:var(--fp-text-strong);font-size:1.02rem}.fp-toggle-row-v33{background:var(--fp-surface);margin:0}.fp-toggle-row-v33 b{color:var(--fp-text-strong)}
.fp-settings-document-grid-v33{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}.fp-settings-upload-card-v33,.fp-settings-doc-list-v33{border:1px solid var(--fp-line);border-radius:26px;background:var(--fp-surface-2);padding:16px;display:grid;gap:12px;align-content:start}.fp-settings-upload-card-v33 h3{margin:0;color:var(--fp-text-strong);letter-spacing:-.045em}.fp-settings-upload-card-v33 p{margin:0;color:var(--fp-muted);line-height:1.5}.fp-settings-dropzone-v33{display:grid;place-items:center;text-align:center;gap:6px;border:1px dashed color-mix(in srgb,var(--fp-accent) 38%,var(--fp-line));border-radius:22px;background:var(--fp-surface);min-height:132px;padding:16px;cursor:pointer}.fp-settings-dropzone-v33 input{position:absolute;opacity:0;pointer-events:none}.fp-settings-dropzone-v33 span{font-weight:950;color:var(--fp-text-strong)}.fp-settings-dropzone-v33 small{color:var(--fp-muted)}.fp-settings-doc-list-head-v33{display:flex;align-items:center;justify-content:space-between;gap:10px}.fp-settings-doc-list-head-v33 strong{color:var(--fp-text-strong)}.fp-settings-doc-list-head-v33 span{min-width:34px;height:34px;border-radius:999px;background:var(--fp-accent-soft);color:var(--fp-accent);display:grid;place-items:center;font-weight:950}.fp-settings-doc-row-v33{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--fp-line);border-radius:18px;background:var(--fp-surface);padding:12px}.fp-settings-doc-row-v33 b{display:block;color:var(--fp-text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-settings-doc-row-v33 small{display:block;color:var(--fp-muted);font-weight:700}.fp-settings-doc-row-v33 a{font-weight:900;color:var(--fp-accent)}
@media (max-width:1180px){.fp-settings-hero-v33,.fp-settings-profile-edit-v33,.fp-settings-two-col-v33,.fp-settings-document-grid-v33{grid-template-columns:1fr}.fp-settings-profile-card-v33{justify-items:start;text-align:left;grid-template-columns:auto 1fr;align-items:center}.fp-settings-privacy-chip-v33{grid-column:1/-1}.fp-settings-card-head-v33{display:grid}.fp-settings-card-head-v33 .fp-btn{justify-self:start}}
@media (max-width:760px){body:has(.fp-settings-page-v33) .fp-app-shell-clean{padding:10px}.fp-settings-page-v33{gap:12px}.fp-settings-hero-v33{border-radius:26px;padding:20px}.fp-settings-hero-copy-v33 h1{font-size:clamp(2.1rem,11vw,3.5rem)}.fp-settings-profile-card-v33{grid-template-columns:1fr;text-align:center;justify-items:center}.fp-settings-anchorbar-v33{position:relative;top:auto;border-radius:24px;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.fp-settings-anchorbar-v33 a{padding:10px}.fp-settings-main-card-v33{border-radius:26px}.fp-settings-form-grid-v33,.fp-privacy-choice-grid-v33{grid-template-columns:1fr}.fp-settings-doc-row-v33{grid-template-columns:1fr}.fp-settings-doc-row-v33 a{justify-self:start}}
.fp-settings-local-save-v33{justify-self:start;margin-top:-4px}

/* V34 Settings refinement + Community/Inbox redesign */
body:has(.fp-settings-page-v33) #fp-content-shell{max-width:100%;padding-inline:clamp(12px,2.2vw,34px)}
.fp-settings-center-v33{max-width:min(100%,1480px);width:100%;justify-items:stretch}
#profile-settings.fp-settings-main-card-v33{width:100%;max-width:none;justify-self:stretch}
#profile-settings .fp-settings-profile-edit-v33{grid-template-columns:minmax(260px,330px) minmax(0,1fr);width:100%}
#profile-settings .fp-settings-form-grid-v33{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}
#profile-settings .fp-field-wide{grid-column:span 2}
.fp-settings-autosave-note-v34{margin:-4px 0 0;color:var(--fp-muted);font-weight:850;min-height:22px}.fp-settings-autosave-note-v34.is-ok{color:var(--fp-good)}.fp-settings-autosave-note-v34.is-error{color:var(--fp-bad)}
.data-settings-upload-form{display:grid;gap:12px;border:1px solid var(--fp-line);border-radius:24px;background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-2));padding:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.data-settings-upload-form .fp-settings-dropzone-v33{background:color-mix(in srgb,var(--fp-surface-2) 86%,var(--fp-accent-soft));border-color:color-mix(in srgb,var(--fp-accent) 34%,var(--fp-line));color:var(--fp-text)}
.data-settings-upload-form .fp-settings-dropzone-v33:hover{background:color-mix(in srgb,var(--fp-accent-soft) 42%,var(--fp-surface-2));transform:translateY(-1px)}
@media(max-width:1180px){#profile-settings .fp-settings-form-grid-v33{grid-template-columns:repeat(2,minmax(0,1fr))}#profile-settings .fp-field-wide{grid-column:1/-1}}
@media(max-width:760px){#profile-settings .fp-settings-profile-edit-v33,#profile-settings .fp-settings-form-grid-v33{grid-template-columns:1fr}.data-settings-upload-form{padding:10px}}

body:has(.fp-community-page-v34) #fp-content-shell{max-width:100%;padding:clamp(12px,2.4vw,34px)}
.fp-community-page-v34{width:min(100%,1480px);margin:0 auto;display:grid;gap:18px;color:var(--fp-text)}
.fp-community-hero-v34{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:stretch;border:1px solid var(--fp-line);border-radius:40px;padding:clamp(22px,4vw,44px);background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-2));box-shadow:var(--fp-shadow-soft)}
.fp-community-hero-v34::before{content:"";position:absolute;left:-120px;top:-180px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-accent) 19%,transparent),transparent 68%);pointer-events:none}.fp-community-hero-v34::after{content:"";position:absolute;right:-130px;bottom:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--fp-info) 15%,transparent),transparent 68%);pointer-events:none}
.fp-community-hero-copy-v34{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:12px;max-width:920px}.fp-community-hero-copy-v34 h1{margin:0;color:var(--fp-text-strong);font-size:clamp(2.4rem,5.5vw,5.8rem);line-height:.93;letter-spacing:-.08em}.fp-community-hero-copy-v34 p{margin:0;color:var(--fp-muted);font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.65;max-width:780px}.fp-community-hero-actions-v34{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.fp-community-status-card-v34{position:relative;z-index:1;display:grid;gap:14px;place-items:center;text-align:center;border:1px solid var(--fp-line);border-radius:30px;background:color-mix(in srgb,var(--fp-surface) 88%,transparent);box-shadow:var(--fp-shadow-soft);padding:24px;backdrop-filter:blur(14px)}
.fp-community-avatar-v34{width:116px;height:116px;border-radius:34px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--fp-line);background:linear-gradient(135deg,var(--fp-accent-soft),var(--fp-surface));box-shadow:var(--fp-shadow-soft)}.fp-community-avatar-v34 img{width:100%;height:100%;object-fit:cover}.fp-community-avatar-v34 span{font-size:2.7rem;font-weight:950;color:var(--fp-accent)}.fp-community-status-card-v34 strong{display:block;color:var(--fp-text-strong);font-size:1.15rem}.fp-community-status-card-v34 small{color:var(--fp-muted);font-weight:750}.fp-community-mini-stats-v34{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%}.fp-community-mini-stats-v34 span{border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface-2);padding:12px}.fp-community-mini-stats-v34 b{display:block;color:var(--fp-text-strong);font-size:1.4rem}.fp-community-mini-stats-v34 small{font-size:.78rem}
.fp-community-tabs-v34{position:sticky;top:calc(var(--fp-topbar-h) + 8px);z-index:20;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;width:max-content;max-width:100%;margin:0 auto;padding:8px;border:1px solid var(--fp-line);border-radius:999px;background:color-mix(in srgb,var(--fp-surface) 88%,transparent);backdrop-filter:blur(16px);box-shadow:var(--fp-shadow-soft)}.fp-community-tabs-v34 button{border:0;border-radius:999px;background:transparent;color:var(--fp-muted);font-weight:950;padding:10px 16px;cursor:pointer}.fp-community-tabs-v34 button.is-active,.fp-community-tabs-v34 button:hover{background:var(--fp-accent-soft);color:var(--fp-text-strong)}
.fp-community-panel-v34{display:none}.fp-community-panel-v34.is-active{display:grid;gap:18px}.fp-community-panel-v34[data-community-panel="feed"]{grid-template-columns:minmax(0,1fr) minmax(300px,390px);align-items:start}.fp-community-main-v34,.fp-community-side-v34,.fp-community-feed-v34,.fp-community-request-list-v34{display:grid;gap:14px}.fp-community-section-head-v34{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:4px}.fp-community-section-head-v34.compact{display:block}.fp-community-section-head-v34 h2,.fp-community-side-card-v34 h3{margin:4px 0;color:var(--fp-text-strong);font-size:clamp(1.55rem,2.6vw,2.7rem);line-height:.98;letter-spacing:-.07em}.fp-community-section-head-v34 p,.fp-community-side-card-v34 p{margin:0;color:var(--fp-muted);line-height:1.6;max-width:760px}
.fp-community-composer-v34,.fp-community-main-card-v34{border-radius:32px;padding:clamp(18px,2.4vw,30px)}.fp-community-form-v34{display:grid;gap:13px}.fp-community-form-v34 textarea,.fp-community-form-v34 input,.fp-community-form-v34 select{width:100%;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface-2);color:var(--fp-text);padding:13px 14px;font:inherit;outline:none;resize:vertical}.fp-community-form-v34 textarea:focus,.fp-community-form-v34 input:focus,.fp-community-form-v34 select:focus{border-color:color-mix(in srgb,var(--fp-accent) 48%,var(--fp-line));box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-accent) 10%,transparent)}.fp-community-form-bottom-v34{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.fp-community-form-bottom-v34 label,.fp-community-form-v34 label{display:grid;gap:6px;color:var(--fp-muted);font-weight:850}.fp-community-form-bottom-v34 label{min-width:220px}.fp-community-form-v34 label span{color:var(--fp-muted);font-weight:850}.fp-community-channel-row-v34{display:flex;gap:10px;flex-wrap:wrap}.fp-community-channel-row-v34 label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--fp-line);border-radius:999px;background:var(--fp-surface-2);padding:10px 12px;color:var(--fp-text)}
.fp-community-post-v34{display:grid;gap:12px;border-radius:28px;padding:18px}
.fp-community-post-v34 > header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;

  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
}
.fp-community-post-v34 p{margin:0;color:var(--fp-text);line-height:1.62}.fp-community-person-v34{display:flex;align-items:center;gap:12px;min-width:0}.fp-community-person-avatar-v34{width:48px;height:48px;border-radius:17px;display:grid;place-items:center;overflow:hidden;flex:0 0 auto;border:1px solid var(--fp-line);background:var(--fp-accent-soft);color:var(--fp-accent);font-weight:950}.fp-community-person-avatar-v34 img{width:100%;height:100%;object-fit:cover}.fp-community-person-v34 strong{display:block;color:var(--fp-text-strong);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-community-person-v34 small{display:block;color:var(--fp-muted);font-weight:750}.fp-community-visibility-v34{display:inline-flex;border-radius:999px;background:var(--fp-info-soft);color:var(--fp-info);padding:7px 10px;font-weight:900;font-size:.78rem;white-space:nowrap}
.fp-community-side-card-v34{border-radius:30px;padding:22px}.fp-community-side-card-v34 a{font-weight:950;color:var(--fp-accent)}.fp-community-request-v34{display:grid;gap:10px;border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);padding:14px}.fp-community-request-v34>div{display:flex;gap:8px;flex-wrap:wrap}.fp-community-empty-v34,.fp-community-empty-inline-v34{border:1px dashed color-mix(in srgb,var(--fp-accent) 34%,var(--fp-line));border-radius:26px;background:color-mix(in srgb,var(--fp-accent-soft) 34%,var(--fp-surface));padding:22px;text-align:center;color:var(--fp-muted)}.fp-community-empty-v34 span{font-size:2rem}.fp-community-empty-v34 h3{margin:8px 0 5px;color:var(--fp-text-strong);letter-spacing:-.04em}.fp-community-empty-v34 p{margin:0;line-height:1.55}
.fp-community-people-grid-v34,.fp-community-notice-grid-v34{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fp-community-wide-v34{grid-column:1/-1}.fp-community-card-grid-v34{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp-community-profile-tile-v34{display:grid;gap:12px;border:1px solid var(--fp-line);border-radius:24px;background:var(--fp-surface-2);padding:14px}.fp-community-profile-tile-v34 .fp-btn{width:100%;justify-content:center}.fp-community-pending-row-v34{display:flex;gap:9px;flex-wrap:wrap}.fp-community-pending-row-v34 span{border:1px solid var(--fp-line);border-radius:999px;background:var(--fp-surface-2);padding:9px 12px;font-weight:900;color:var(--fp-text)}
.fp-community-chat-shell-v34{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:16px;border-radius:34px;padding:16px;min-height:620px}.fp-community-thread-list-v34{border:1px solid var(--fp-line);border-radius:28px;background:var(--fp-surface-2);padding:14px;min-width:0}.fp-community-thread-scroll-v34{display:grid;gap:9px;max-height:560px;overflow:auto;padding-right:4px}.fp-community-thread-v34{display:grid;gap:4px;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface);padding:13px;color:var(--fp-text);text-decoration:none}.fp-community-thread-v34.is-active,.fp-community-thread-v34:hover{border-color:color-mix(in srgb,var(--fp-accent) 42%,var(--fp-line));background:var(--fp-accent-soft)}.fp-community-thread-v34 strong{color:var(--fp-text-strong);font-weight:950}.fp-community-thread-v34 small{color:var(--fp-muted);font-weight:750}.fp-community-chat-main-v34{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;min-width:0}.fp-community-chat-head-v34{border:1px solid var(--fp-line);border-radius:26px;background:var(--fp-surface-2);padding:16px}.fp-community-chat-head-v34 h2{margin:4px 0 0;color:var(--fp-text-strong);letter-spacing:-.06em}.fp-community-messages-v34{display:flex;flex-direction:column;gap:10px;min-height:0;max-height:480px;overflow:auto;padding:6px}.fp-community-message-v34{width:min(82%,680px);border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);padding:12px 14px;align-self:flex-start}.fp-community-message-v34.is-mine{align-self:flex-end;background:linear-gradient(135deg,var(--fp-accent-soft),color-mix(in srgb,var(--fp-accent-soft) 55%,var(--fp-surface)))}.fp-community-message-v34 div{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.fp-community-message-v34 strong{color:var(--fp-text-strong)}.fp-community-message-v34 small{color:var(--fp-muted);font-weight:750}.fp-community-message-v34 p{margin:0;line-height:1.55}.fp-community-chat-form-v34{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.fp-community-chat-form-v34 textarea{border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);color:var(--fp-text);padding:13px 14px;font:inherit;resize:vertical;min-height:58px;outline:none}.fp-community-chat-form-v34 textarea:focus{border-color:color-mix(in srgb,var(--fp-accent) 48%,var(--fp-line));box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-accent) 10%,transparent)}
.fp-community-notice-list-v34{display:grid;gap:10px}.fp-community-notice-v34{display:grid;gap:6px;border:1px solid var(--fp-line);border-radius:22px;background:var(--fp-surface-2);padding:14px}.fp-community-notice-v34 small{color:var(--fp-muted);font-weight:750}.fp-community-notice-v34 strong{color:var(--fp-text-strong);font-size:1.05rem}.fp-community-notice-v34 p{margin:0;color:var(--fp-text);line-height:1.55}
@media(max-width:1180px){.fp-community-hero-v34,.fp-community-panel-v34[data-community-panel="feed"],.fp-community-people-grid-v34,.fp-community-notice-grid-v34,.fp-community-chat-shell-v34{grid-template-columns:1fr}.fp-community-status-card-v34{justify-items:start;text-align:left;grid-template-columns:auto 1fr;align-items:center}.fp-community-mini-stats-v34{grid-column:1/-1}.fp-community-card-grid-v34{grid-template-columns:1fr}.fp-community-chat-shell-v34{min-height:0}.fp-community-thread-scroll-v34{max-height:280px}}
@media(max-width:760px){.fp-community-page-v34{gap:12px}.fp-community-hero-v34{border-radius:28px;padding:20px}.fp-community-hero-copy-v34 h1{font-size:clamp(2.25rem,12vw,4.1rem)}.fp-community-status-card-v34{grid-template-columns:1fr;text-align:center;justify-items:center}.fp-community-tabs-v34{position:relative;top:auto;width:100%;border-radius:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.fp-community-tabs-v34 button{padding:10px}.fp-community-section-head-v34{display:grid}.fp-community-composer-v34,.fp-community-main-card-v34,.fp-community-side-card-v34{border-radius:24px}.fp-community-post-v34 header{align-items:flex-start}.fp-community-chat-form-v34{grid-template-columns:1fr}.fp-community-message-v34{width:94%}.fp-community-form-bottom-v34{display:grid}.fp-community-form-bottom-v34 label{min-width:0}.fp-community-avatar-v34{width:96px;height:96px;border-radius:28px}}

/* =========================================================
   UX2026 V35 — Settings live uploads + Community search/theme polish
   ========================================================= */
.fp-settings-live-files-v35{display:grid;gap:10px;min-width:0}
.fp-settings-doc-row-v33.is-live-v35{animation:fpSoftIn .22s ease-out both}
.fp-settings-doc-actions-v35{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.fp-settings-doc-actions-v35 a,
.fp-settings-doc-actions-v35 button{border:1px solid var(--fp-line);border-radius:999px;background:var(--fp-surface-2);color:var(--fp-text);padding:8px 11px;font:inherit;font-weight:900;text-decoration:none;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease}
.fp-settings-doc-actions-v35 a{color:var(--fp-accent);background:var(--fp-accent-soft)}
.fp-settings-doc-actions-v35 button{color:var(--fp-danger, #b91c1c);background:color-mix(in srgb,var(--fp-danger, #ef4444) 8%,var(--fp-surface-2))}
.fp-settings-doc-actions-v35 a:hover,
.fp-settings-doc-actions-v35 button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--fp-accent) 34%,var(--fp-line))}
.data-settings-upload-form{background:linear-gradient(145deg,color-mix(in srgb,var(--fp-surface-2) 92%,var(--fp-accent-soft)),var(--fp-surface)) !important;color:var(--fp-text);border-color:color-mix(in srgb,var(--fp-accent) 20%,var(--fp-line))}
.data-settings-upload-form .fp-settings-dropzone-v33{background:linear-gradient(145deg,var(--fp-surface),color-mix(in srgb,var(--fp-accent-soft) 25%,var(--fp-surface-2))) !important;color:var(--fp-text);box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 8%,transparent)}
.fp-community-form-v34{border:1px solid color-mix(in srgb,var(--fp-accent) 18%,var(--fp-line));border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--fp-surface-2) 88%,var(--fp-accent-soft)),var(--fp-surface));padding:14px;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 7%,transparent)}
.fp-community-form-v34 textarea,
.fp-community-form-v34 input,
.fp-community-form-v34 select{background:linear-gradient(180deg,var(--fp-surface),color-mix(in srgb,var(--fp-surface-2) 86%,var(--fp-accent-soft))) !important;color:var(--fp-text-strong);border-color:color-mix(in srgb,var(--fp-accent) 18%,var(--fp-line))}
.fp-community-form-v34 input::placeholder,
.fp-community-form-v34 textarea::placeholder{color:color-mix(in srgb,var(--fp-muted) 78%,transparent)}
.fp-community-discover-v35{align-content:start}
.fp-community-search-v35{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:end;border:1px solid color-mix(in srgb,var(--fp-accent) 18%,var(--fp-line));border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--fp-accent-soft) 22%,var(--fp-surface-2)),var(--fp-surface));padding:14px;margin-bottom:12px}
.fp-community-search-v35 label{display:grid;gap:7px;min-width:0;color:var(--fp-muted);font-weight:850}
.fp-community-search-v35 label span{color:var(--fp-muted);font-weight:850}
.fp-community-search-v35 input{width:100%;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-surface);color:var(--fp-text-strong);padding:13px 14px;font:inherit;outline:none}
.fp-community-search-v35 input:focus{border-color:color-mix(in srgb,var(--fp-accent) 48%,var(--fp-line));box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-accent) 10%,transparent)}
.fp-community-recommendation-strip-v35{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-2px 0 14px;color:var(--fp-muted)}
.fp-community-recommendation-strip-v35>span{font-weight:950;color:var(--fp-text-strong);margin-right:2px}
.fp-community-recommendation-strip-v35 a{display:inline-flex;align-items:center;border:1px solid var(--fp-line);border-radius:999px;background:var(--fp-surface-2);color:var(--fp-text);padding:8px 11px;font-weight:900;text-decoration:none}
.fp-community-recommendation-strip-v35 a:hover{background:var(--fp-accent-soft);color:var(--fp-text-strong);border-color:color-mix(in srgb,var(--fp-accent) 34%,var(--fp-line))}
@keyframes fpSoftIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.fp-settings-doc-actions-v35{justify-content:flex-start}.fp-community-search-v35{grid-template-columns:1fr}.fp-community-search-v35 .fp-btn{width:100%;justify-content:center}}

/* =========================================================
   UX2026 V36 — Community selects + centered friend info + settings delete confirm
   ========================================================= */
.fp-settings-delete-swal-v36{
  width:min(440px,calc(100vw - 28px)) !important;
  border:1px solid color-mix(in srgb,var(--fp-bad) 28%,var(--fp-line)) !important;
  border-radius:30px !important;
  background:linear-gradient(145deg,var(--fp-surface),color-mix(in srgb,var(--fp-bad-soft) 26%,var(--fp-surface-2))) !important;
  color:var(--fp-text) !important;
  box-shadow:var(--fp-shadow) !important;
  padding:24px !important;
}
.fp-settings-delete-swal-v36 .swal2-title,
.fp-settings-delete-swal-v36 .fp-swal-title-v36{
  color:var(--fp-text-strong) !important;
  font-weight:950 !important;
  letter-spacing:-.055em !important;
  text-align:center !important;
}
.fp-settings-delete-swal-v36 .swal2-html-container,
.fp-settings-delete-swal-v36 .fp-swal-html-v36{
  margin:10px auto 0 !important;
  color:var(--fp-muted) !important;
  text-align:center !important;
}
.fp-settings-delete-dialog-v36{display:grid;gap:8px;justify-items:center;text-align:center}
.fp-settings-delete-dialog-v36 strong{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--fp-text-strong);
  border:1px solid var(--fp-line);
  border-radius:999px;
  background:var(--fp-surface);
  padding:8px 12px;
}
.fp-settings-delete-dialog-v36 span{display:block;line-height:1.55;color:var(--fp-muted)}
.fp-settings-delete-swal-v36 .swal2-actions{gap:10px !important;justify-content:center !important;flex-wrap:wrap !important}
.fp-swal-danger-v36{
  background:var(--fp-bad-soft) !important;
  color:var(--fp-bad) !important;
  border:1px solid color-mix(in srgb,var(--fp-bad) 38%,var(--fp-line)) !important;
}
.fp-swal-danger-v36:hover{filter:saturate(1.05);transform:translateY(-1px)}

.fp-community-form-v34 select,
.fp-community-form-v34 select:focus{
  color-scheme:light dark;
  background-color:var(--fp-surface) !important;
  background-image:linear-gradient(180deg,var(--fp-surface),color-mix(in srgb,var(--fp-surface-2) 88%,var(--fp-accent-soft))) !important;
}
.fp-community-form-v34 select option,
.fp-community-form-v34 select optgroup{
  background-color:var(--fp-surface) !important;
  color:var(--fp-text-strong) !important;
}
html[data-theme="dark"] .fp-community-form-v34 select option,
html[data-theme="dark"] .fp-community-form-v34 select optgroup{
  background-color:var(--fp-surface-2) !important;
  color:var(--fp-text-strong) !important;
}
.fp-community-form-v34 select option:disabled{color:var(--fp-soft-text) !important;background-color:var(--fp-bg-soft) !important}

.fp-community-card-grid-v34>.fp-community-empty-inline-v34,
.fp-community-request-list-v34>.fp-muted,
.fp-community-pending-row-v34>.fp-muted{
  grid-column:1/-1;
  width:100%;
  min-height:128px;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px dashed color-mix(in srgb,var(--fp-accent) 30%,var(--fp-line));
  border-radius:26px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--fp-accent-soft) 42%,var(--fp-surface)),var(--fp-surface-2));
  color:var(--fp-muted) !important;
  padding:22px;
  font-weight:800;
  line-height:1.55;
  margin:0;
}
.fp-community-request-list-v34>.fp-muted,
.fp-community-pending-row-v34>.fp-muted{min-height:96px}
.fp-community-people-grid-v34 .fp-community-main-card-v34:has(.fp-community-empty-inline-v34:only-child),
.fp-community-people-grid-v34 .fp-community-main-card-v34:has(.fp-community-pending-row-v34>.fp-muted:only-child){
  align-content:center;
}
.fp-community-people-grid-v34 .fp-community-section-head-v34:has(+ .fp-community-card-grid-v34>.fp-community-empty-inline-v34:only-child),
.fp-community-people-grid-v34 .fp-community-section-head-v34:has(+ .fp-community-pending-row-v34>.fp-muted:only-child){
  text-align:center;
  justify-content:center;
}
.fp-community-people-grid-v34 .fp-community-section-head-v34:has(+ .fp-community-card-grid-v34>.fp-community-empty-inline-v34:only-child)>div,
.fp-community-people-grid-v34 .fp-community-section-head-v34:has(+ .fp-community-pending-row-v34>.fp-muted:only-child)>div{
  margin-inline:auto;
}

/* V37: Settings delete fallback, only used if SweetAlert2 cannot be loaded */
.fp-native-confirm-v37{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:22px;background:rgba(9,14,25,.58);backdrop-filter:blur(10px)}
.fp-native-confirm-card-v37{width:min(430px,100%);border-radius:28px;padding:26px;background:var(--fp-card);border:1px solid var(--fp-border);box-shadow:var(--fp-shadow);text-align:center;color:var(--fp-text)}
.fp-native-confirm-card-v37 h3{margin:0 0 8px;font-size:1.2rem}.fp-native-confirm-card-v37 p{margin:0 0 18px;color:var(--fp-muted);line-height:1.55}.fp-native-confirm-card-v37 div{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.fp-native-confirm-card-v37 button{border:0;border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer}.fp-native-confirm-card-v37 [data-cancel]{background:var(--fp-soft);color:var(--fp-text);border:1px solid var(--fp-border)}.fp-native-confirm-card-v37 [data-confirm]{background:linear-gradient(135deg,#b91c1c,#ef4444);color:#fff}

/* =========================================================
   UX2026 V38 — Cockpit module order: ExcelBon 05, Community 07 wide
   ========================================================= */
.fp-module-card-wide-v38{isolation:isolate;}
@media (min-width:1181px){
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38{
    grid-column:1 / -1;
    min-height:190px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    align-items:center;
    gap:clamp(16px,2.2vw,32px);
    padding:clamp(22px,2.6vw,36px);
  }
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38::before{
    width:420px;
    height:420px;
    right:-130px;
    bottom:-245px;
    background:radial-gradient(circle,color-mix(in srgb,var(--fp-info) 16%,transparent),transparent 68%);
  }
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38 h3{
    font-size:clamp(1.7rem,2.2vw,2.45rem);
    margin:0 0 6px;
  }
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38 p{
    max-width:860px;
  }
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38 > strong{
    font-size:clamp(1.65rem,2.4vw,2.75rem);
    text-align:right;
    white-space:nowrap;
  }
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38 > em{
    justify-self:end;
    border:1px solid var(--fp-line);
    border-radius:999px;
    background:var(--fp-surface-2);
    padding:10px 14px;
    white-space:nowrap;
  }
}
@media (max-width:1180px){
  .fp-cockpit-module-grid-v11 .fp-module-card-wide-v38{grid-column:auto;}
}

/* =========================================================
   UX2026 V40 — Community request/action form cleanup
   ========================================================= */
.fp-community-request-v34 > div{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  flex-wrap:nowrap;
}
.fp-community-request-v34 > div form,
.fp-community-profile-tile-v34 > form{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
  width:auto !important;
  min-width:0 !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
}
.fp-community-request-v34 > div form .fp-btn,
.fp-community-request-v34 > div form button{
  min-height:38px;
  padding:9px 13px;
  width:auto !important;
  white-space:nowrap;
}
.fp-community-profile-tile-v34 > form{
  width:100% !important;
}
.fp-community-profile-tile-v34 > form .fp-btn,
.fp-community-profile-tile-v34 > form button{
  width:100%;
  justify-content:center;
}
@media(max-width:420px){
  .fp-community-request-v34 > div{
    flex-wrap:wrap;
  }
  .fp-community-request-v34 > div form{
    flex:1 1 calc(50% - 4px);
  }
  .fp-community-request-v34 > div form .fp-btn,
  .fp-community-request-v34 > div form button{
    width:100% !important;
  }
}

/* =========================================================
   UX2026 V41 — Community chat composer sizing + theme polish
   ========================================================= */
.fp-community-chat-form-v34{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(112px,auto);
  gap:12px;
  align-items:stretch;
  width:100%;
  margin:0 !important;
  padding:14px !important;
  border:1px solid color-mix(in srgb,var(--fp-accent) 18%,var(--fp-line)) !important;
  border-radius:28px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--fp-surface-2) 88%,var(--fp-accent-soft)),var(--fp-surface)) !important;
  color:var(--fp-text);
  box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 7%,transparent), var(--fp-shadow-soft);
}
.fp-community-chat-form-v34 textarea{
  min-height:clamp(126px,16vh,190px) !important;
  max-height:320px;
  width:100%;
  border:1px solid color-mix(in srgb,var(--fp-accent) 18%,var(--fp-line)) !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,var(--fp-surface),color-mix(in srgb,var(--fp-surface-2) 86%,var(--fp-accent-soft))) !important;
  color:var(--fp-text-strong) !important;
  padding:16px 17px !important;
  font:inherit;
  line-height:1.55;
  resize:vertical;
  outline:none;
  box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 6%,transparent);
}
.fp-community-chat-form-v34 textarea::placeholder{
  color:var(--fp-muted);
  opacity:.82;
}
.fp-community-chat-form-v34 textarea:focus{
  border-color:color-mix(in srgb,var(--fp-accent) 52%,var(--fp-line)) !important;
  background:var(--fp-surface) !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--fp-accent) 11%,transparent), inset 0 1px 0 color-mix(in srgb,#fff 7%,transparent);
}
.fp-community-chat-form-v34 .fp-btn,
.fp-community-chat-form-v34 button{
  align-self:stretch;
  min-height:72px;
  padding:14px 20px;
  border-radius:22px;
  white-space:nowrap;
}
html[data-theme="dark"] .fp-community-chat-form-v34,
body.dark .fp-community-chat-form-v34,
[data-theme="dark"] .fp-community-chat-form-v34{
  background:linear-gradient(145deg,color-mix(in srgb,var(--fp-surface-2) 92%,var(--fp-accent-soft)),var(--fp-surface)) !important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 5%,transparent), var(--fp-shadow-soft);
}
html[data-theme="dark"] .fp-community-chat-form-v34 textarea,
body.dark .fp-community-chat-form-v34 textarea,
[data-theme="dark"] .fp-community-chat-form-v34 textarea{
  background:linear-gradient(180deg,var(--fp-surface),color-mix(in srgb,var(--fp-surface-2) 90%,#000)) !important;
  color:var(--fp-text-strong) !important;
}
@media(max-width:760px){
  .fp-community-chat-form-v34{
    grid-template-columns:1fr !important;
    border-radius:24px;
    padding:12px !important;
  }
  .fp-community-chat-form-v34 textarea{
    min-height:132px !important;
  }
  .fp-community-chat-form-v34 .fp-btn,
  .fp-community-chat-form-v34 button{
    width:100%;
    min-height:50px;
  }
}


/* =========================================================
   UX2026 V42 — Community chat live composer width correction
   ========================================================= */
.fp-community-chat-main-v34 .fp-community-chat-form-v34{
  width:100%;
  max-width:none;
  margin:0 !important;
  box-sizing:border-box;
  align-self:stretch;
  justify-self:stretch;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  border:1px solid var(--fp-line) !important;
  border-radius:24px;
  background:var(--fp-surface-2) !important;
  padding:10px !important;
  box-shadow:none;
}
.fp-community-chat-main-v34 .fp-community-chat-form-v34 textarea{
  width:100%;
  min-width:0;
  min-height:58px !important;
  height:58px;
  max-height:120px;
  border-radius:18px !important;
  background:var(--fp-surface) !important;
  color:var(--fp-text) !important;
}
.fp-community-chat-main-v34 .fp-community-chat-form-v34 .fp-btn,
.fp-community-chat-main-v34 .fp-community-chat-form-v34 button{
  align-self:stretch;
  min-height:58px;
  white-space:nowrap;
}
@media(max-width:760px){
  .fp-community-chat-main-v34 .fp-community-chat-form-v34{
    grid-template-columns:1fr !important;
  }
}
