/* Shared visual language: the homepage's navy, blush and pink action system. */
:root:root{--fn-home-ink:#101a34;--fn-home-muted:#64708a;--fn-home-line:#f0dfe7;--fn-home-pink:#ff548f;--fn-home-coral:#ff776f;--fn-home-gradient:linear-gradient(105deg,var(--fn-home-pink),var(--fn-home-coral))}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]){--navy:var(--fn-home-ink);--ink:var(--fn-home-ink);--bg:#fffafd;--surface:#fff;--surface-2:#fff6f9;--border:var(--fn-home-line);--text:var(--fn-home-ink);--text-2:var(--fn-home-muted);--text-3:#9aa2b4;--primary:var(--fn-home-ink);--accent:var(--fn-home-pink);--focus:var(--fn-home-pink);--coral:var(--fn-home-coral);--pink:var(--fn-home-pink);--grad:var(--fn-home-gradient);--rose-bg:#fff0f5;--blush:#fff3f7;--shadow:0 10px 28px rgba(34,22,56,.055);--shadow-lg:0 28px 68px rgba(34,22,56,.17);--ring:0 0 0 4px rgba(255,84,143,.17)}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) body{background:radial-gradient(760px 430px at 100% -8%,rgba(255,198,218,.38),transparent 67%),radial-gradient(660px 380px at -8% 104%,rgba(255,224,231,.42),transparent 67%),var(--bg)}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .card,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .stat,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .fn-settings-tile{border:1px solid rgba(240,223,231,.82)!important;box-shadow:var(--shadow)}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .btn.primary,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .btn.accent,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-cta{background:var(--fn-home-gradient)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 11px 26px rgba(246,92,139,.28)!important}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .btn.primary:hover,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .btn.accent:hover,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-cta:hover{filter:saturate(1.08)!important;box-shadow:0 15px 30px rgba(246,92,139,.34)!important}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .input,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) select.input,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) textarea.input,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell input:not([type=checkbox]):not([type=radio]),:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell select,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell textarea{border-color:var(--fn-home-line);background:#fffafd;color:var(--fn-home-ink)}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .input:focus,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell input:not([type=checkbox]):not([type=radio]):focus,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell select:focus,:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .nv-shell textarea:focus{border-color:var(--fn-home-pink)!important;box-shadow:var(--ring)!important;background:#fff!important}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) input[type=checkbox],:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) input[type=radio]{accent-color:var(--fn-home-pink)}

/* The Wohnungen address/district finder is a compact search control, not a
   filled form field. Keep its surface neutral and avoid the legacy green
   focus outline used elsewhere in the customer redesign. */
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .fn-search-row .fn-search{background:#fff}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .fn-search-row .fn-search input#fn-search{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .fn-search-row .fn-search:focus-within{border-color:#b9c2d0;box-shadow:0 0 0 3px rgba(16,26,52,.08)}
:root:not([data-theme=dark]):not([data-theme=ocean]):not([data-theme=sunset]) .fn-notify-main .fn-search-row .fn-search input#fn-search:focus-visible{outline:0}
