/* Public auth pages use the same art, type and color system as Design #8. */
body:has(.fn-auth-modern){background:#fdf9ff;color:#0b1d45;font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.fn-auth-header.pub-header{width:min(1440px,100%);height:100px;margin-inline:auto;padding-inline:clamp(24px,4vw,60px);display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:10;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.fn-auth-logo{display:block;flex:none}.fn-auth-logo img{display:block;width:210px;height:auto}.fn-auth-header-actions{display:flex;align-items:center;gap:22px}.fn-auth-desktop-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700}.fn-auth-desktop-nav a{text-decoration:none;color:#091536}.fn-auth-desktop-nav a:hover{color:#f6389e}.fn-auth-theme-toggle{display:grid;place-items:center;width:39px;height:39px;padding:0;border:1px solid #f4d7e3;border-radius:50%;background:#fff8fb;color:#172249;cursor:pointer;transition:transform .2s,background .3s}.fn-auth-theme-toggle:hover{transform:rotate(15deg)}.fn-auth-theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.fn-auth-moon{display:none}.fn-auth-menu{position:relative}.fn-auth-menu summary{list-style:none;cursor:pointer;width:40px;height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:9px}.fn-auth-menu summary::-webkit-details-marker{display:none}.fn-auth-menu summary span{width:25px;height:2px;background:#091536;border-radius:2px;transition:transform .2s ease}.fn-auth-menu[open] summary span:first-child{transform:translateY(7px) rotate(45deg)}.fn-auth-menu[open] summary span:nth-child(2){opacity:0}.fn-auth-menu[open] summary span:last-child{transform:translateY(-7px) rotate(-45deg)}.fn-auth-menu nav{position:absolute;right:0;top:43px;min-width:170px;padding:9px;background:#fff;border:1px solid #f6e4ec;border-radius:14px;box-shadow:0 14px 35px #d484a229;display:grid;gap:2px}.fn-auth-menu nav a{padding:10px 12px;border-radius:8px;color:#091536;text-decoration:none;font-size:14px;font-weight:650;white-space:nowrap}.fn-auth-menu nav a:hover,.fn-auth-menu nav a:focus-visible{background:#fff1f5}
.fn-auth-modern.auth-wrap{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,480px);gap:clamp(20px,4vw,80px);align-items:center;width:min(1160px,100%);min-height:calc(100svh - 76px);margin:auto;padding:32px 24px 72px}
.fn-auth-scene{position:relative;min-height:560px;align-self:stretch;overflow:hidden;border-radius:32px;background:radial-gradient(circle at 80% 20%,#f5dbff 0,transparent 35%),linear-gradient(155deg,#fff9ff,#f7ebfb)}
.fn-auth-hero{position:relative;z-index:2;padding:clamp(28px,5vw,70px)}
.fn-auth-hero h1{font-size:clamp(36px,4vw,60px);line-height:1.08;letter-spacing:-.06em;margin:0;color:#0b1d45}
.fn-auth-hero h1 span{color:#f41a9c}.fn-auth-hero p{max-width:340px;color:#4c5c7c;line-height:1.6;font-size:16px}
.fn-auth-building{position:absolute;inset:0;background:url('flatnotify_background_light.png') center bottom/cover no-repeat}
.fn-auth-modern .auth-card{position:relative;z-index:2;width:100%!important;max-width:480px;margin:0;padding:34px;border:1px solid #eee8f3;border-radius:28px;background:#fff;box-shadow:0 22px 60px #3520521a;animation:fn-card-enter .38s ease both}
.fn-auth-modern .auth-card>img{display:none}.fn-auth-modern .fn-original-title{display:none}.fn-auth-modern .auth-card h1,.fn-auth-modern .auth-card h2{color:#0b1d45;letter-spacing:-.045em;font-size:clamp(27px,3vw,36px);line-height:1.16;margin:0 0 10px}
.fn-auth-modern .auth-card .field{gap:7px}.fn-auth-modern .auth-card .label,.fn-auth-modern .auth-card label{font-weight:650;color:#111d3e}
.fn-auth-modern .auth-card .input{min-height:48px;border:1px solid #dfe1ed;border-radius:13px;background:#fff;color:#132447;box-shadow:none;padding:10px 14px}
.fn-auth-modern .auth-card .input:focus{border-color:#f748a9;box-shadow:0 0 0 4px #fa36a51c;outline:none}
.fn-input-shell{position:relative}.fn-input-shell .input{width:100%;padding-left:46px!important}.fn-input-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:19px;height:19px;color:#617294;pointer-events:none}.fn-input-icon svg,.fn-password-toggle svg{width:100%;height:100%}.fn-input-shell:has(.fn-password-toggle) .input{padding-right:50px!important}.fn-password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);width:36px;height:36px;padding:8px;border:0;border-radius:9px;background:transparent;color:#617294;cursor:pointer}.fn-password-toggle:hover{background:#fff0f9;color:#ef219d}
.fn-auth-modern .fn-gradient-button{min-height:51px;border:0;border-radius:999px;background:linear-gradient(105deg,#f515a8,#ff817b);color:white;box-shadow:0 10px 24px #ee398449;transition:transform .2s,box-shadow .2s}.fn-gradient-button:hover{transform:translateY(-2px);box-shadow:0 15px 27px #ee398459}.fn-gradient-button:active{transform:translateY(1px)}.fn-gradient-button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.fn-auth-modern .auth-card a{color:#ef219d}.fn-auth-modern .auth-card .row.between{gap:14px;flex-wrap:wrap}.fn-auth-modern .auth-card .check{border-radius:12px;background:#faf7fc;padding:12px}.fn-auth-modern input[type=checkbox]{accent-color:#f51ca2}
.fn-auth-register .fn-auth-scene{min-height:670px}.fn-auth-register .fn-auth-hero{display:none}.fn-auth-register .auth-card{max-width:620px}.fn-auth-register.auth-wrap{grid-template-columns:minmax(0,1fr) minmax(370px,620px);width:min(1340px,100%)}
.fn-auth-register .wizard-steps{display:flex;align-items:flex-start;justify-content:space-between;gap:0;margin:0 0 32px;padding:0 4px}.fn-auth-register .wizard-steps>div{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;height:auto;background:none!important;text-align:center;color:#8690a9;font-size:0}.fn-auth-register .wizard-steps>div:not(:last-child):after{content:'';position:absolute;top:16px;left:calc(50% + 19px);width:calc(100% - 38px);height:2px;background:#e7e4ed}.fn-auth-register .wizard-steps>div.done:not(:last-child):after{background:linear-gradient(90deg,#f51ca2,#ff807d)}.fn-step-circle{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e9e9f0;color:#56617b;font-size:14px;font-weight:800;transition:background .3s,color .3s}.wizard-steps>div.done .fn-step-circle{background:linear-gradient(135deg,#f515a8,#ff817b);color:#fff}.wizard-steps small{margin-top:7px;font-size:12px}.wizard-steps>div.done small{color:#0b1d45;font-weight:700}
.fn-step-subtitle{margin:0 0 25px;color:#52617e;line-height:1.5}.fn-auth-register .wish-compact{gap:16px}.fn-auth-register .wish-compact fieldset .row{max-height:132px;overflow:auto}.fn-auth-register .wish-compact fieldset button{border-radius:999px}.fn-auth-register .wish-compact fieldset button.accent{background:linear-gradient(105deg,#f515a8,#ff817b);color:#fff}.fn-auth-register .grid.cols-2{gap:12px}.fn-auth-register .verify-banner{border-radius:14px;padding:14px;background:#eaf0ff!important;color:#294cbd!important}
[data-theme=dark] body:has(.fn-auth-modern),body[data-theme=dark]:has(.fn-auth-modern){background:#0b1028;color:#fff}[data-theme=dark] .fn-auth-scene{background:#111735}[data-theme=dark] .fn-auth-building{background-image:url('flatnotify_background_dark.png')}[data-theme=dark] .fn-auth-hero h1,[data-theme=dark] .fn-auth-modern .auth-card h1,[data-theme=dark] .fn-auth-modern .auth-card h2{color:#fff}[data-theme=dark] .fn-auth-hero p,[data-theme=dark] .fn-step-subtitle{color:#c2c9dd}[data-theme=dark] .fn-auth-modern .auth-card{background:#171d38;border-color:#454061;box-shadow:0 22px 60px #05071766}[data-theme=dark] .fn-auth-modern .auth-card .input{background:#202742;border-color:#464c6b;color:#fff}[data-theme=dark] .fn-auth-modern .auth-card label,[data-theme=dark] .fn-auth-modern .auth-card .label,[data-theme=dark] .wizard-steps>div.done small{color:#f7f6ff}[data-theme=dark] .fn-auth-modern .auth-card .check{background:#242b47}
[data-theme=dark] .fn-auth-header{color:#fff}[data-theme=dark] .fn-auth-desktop-nav a{color:#fff}[data-theme=dark] .fn-auth-theme-toggle{background:#242044;border-color:#58477c;color:#fff}[data-theme=dark] .fn-auth-sun{display:none}[data-theme=dark] .fn-auth-moon{display:block}[data-theme=dark] .fn-auth-menu summary span{background:#fff}[data-theme=dark] .fn-auth-menu nav{background:#141a3a;border-color:#3d335f}[data-theme=dark] .fn-auth-menu nav a{color:#fff}
@media(min-width:901px){.fn-auth-menu{display:none}}
@media(max-width:800px){.fn-auth-modern.auth-wrap,.fn-auth-register.auth-wrap{display:block;min-height:0;width:min(610px,100%);padding:0 0 32px}.fn-auth-scene,.fn-auth-register .fn-auth-scene{height:320px;min-height:0;border-radius:0}.fn-auth-hero{padding:30px 26px}.fn-auth-hero h1{font-size:38px}.fn-auth-hero p{font-size:14px;max-width:280px}.fn-auth-building{background-size:auto 100%;background-position:center bottom}.fn-auth-modern .auth-card{margin:-24px auto 0;border-radius:26px;padding:27px 24px}.fn-auth-register .fn-auth-scene{height:260px}.fn-auth-register .auth-card{margin-top:-28px}}
@media(max-width:900px){.fn-auth-header.pub-header{height:76px;padding-inline:22px}.fn-auth-logo img{width:170px}.fn-auth-desktop-nav{display:none}.fn-auth-header-actions{gap:12px}}
@media(max-width:450px){.fn-auth-scene{height:310px}.fn-auth-modern .auth-card{padding:25px 20px}.fn-auth-register .fn-auth-scene{height:215px}.fn-auth-register .wizard-steps{margin-bottom:23px}.fn-auth-modern .auth-card h2{font-size:27px}.fn-auth-register .grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.fn-auth-register .grid.cols-2 .input{min-width:0}.fn-auth-register .auth-card .row.between{flex-wrap:nowrap}.fn-auth-register .auth-card .row.between .btn{min-width:0}}
@media(prefers-reduced-motion:reduce){.fn-auth-modern *{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes fn-card-enter{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:none}}

.fn-auth-register .auth-card>h1{display:none}
.fn-auth-register .auth-card .field-error{display:block;color:#df256b;animation:fn-card-enter .2s ease}
.fn-auth-modern .btn.loading:after{content:"";display:inline-block;width:15px;height:15px;margin-left:9px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-3px;animation:fn-spin .7s linear infinite}@keyframes fn-spin{to{transform:rotate(360deg)}}

.fn-auth-register .fn-auth-building{background-size:cover;background-position:center 72%}
.fn-auth-register .fn-auth-scene{background:#fbe5f6}
.fn-auth-register .fn-auth-building{left:0;top:0;right:auto;bottom:auto;width:100%;height:100%}
.fn-auth-register .fn-auth-scene{width:100%}

.fn-auth-register .wish-compact fieldset .row{max-height:77px;overflow:hidden}.fn-auth-register .fn-districts-open fieldset .row{max-height:none}.fn-more-districts{align-self:flex-start;margin-top:7px;padding:5px 0;border:0;background:none;color:#e9229a;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.fn-districts-open .fn-more-districts{display:none}
.fn-auth-register .auth-card h2{margin-bottom:40px}
[data-theme=dark] .fn-auth-logo img,body[data-theme=dark] .fn-auth-logo img{content:url("../brand/logo-horizontal-dark.png")}
/* Login "Anmelden" in-button loader: visible, centered spinner (text hidden while loading) */
.fn-auth-modern .btn.loading{position:relative;color:transparent!important;opacity:1}
.fn-auth-modern .btn.loading:after{position:absolute;left:50%;top:50%;margin:-10px 0 0 -10px;width:20px;height:20px;box-sizing:border-box;display:block;vertical-align:baseline;border:2.5px solid #fff;border-right-color:transparent;border-top-color:#fff;border-radius:50%;animation:fn-spin .7s linear infinite}

/* The React form is the auth page itself, not a legacy fallback.  Apply the
   published layout as soon as it mounts; the small JS enhancer only adds
   icons/art and must never decide which generation of the form is visible. */
body:has(.auth-wrap){background:#fdf9ff;color:#0b1d45;font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.auth-wrap{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,480px);gap:clamp(20px,4vw,80px);align-items:center;width:min(1160px,100%);min-height:calc(100svh - 76px);margin:auto;padding:32px 24px 72px}
.auth-wrap:not(:has(.fn-auth-scene)){display:flex;justify-content:center}
.auth-wrap .auth-card{position:relative;z-index:2;width:100%!important;max-width:480px;margin:0;padding:34px;border:1px solid #eee8f3;border-radius:28px;background:#fff;box-shadow:0 22px 60px #3520521a;animation:fn-card-enter .38s ease both}
.auth-wrap .auth-card .field{gap:7px}.auth-wrap .auth-card .label,.auth-wrap .auth-card label{font-weight:650;color:#111d3e}.auth-wrap .auth-card .input{min-height:48px;border:1px solid #dfe1ed;border-radius:13px;background:#fff;color:#132447;box-shadow:none;padding:10px 14px}.auth-wrap .auth-card .input:focus{border-color:#f748a9;box-shadow:0 0 0 4px #fa36a51c;outline:none}.auth-wrap .auth-card a{color:#ef219d}.auth-wrap .auth-card .check{border-radius:12px;background:#faf7fc;padding:12px}.auth-wrap input[type=checkbox]{accent-color:#f51ca2}
/* Registration is one continuous form.  It has the same current card design,
   without reviving the retired multi-step/wizard presentation. */
.auth-wrap:has(#p-pw){grid-template-columns:minmax(0,1fr) minmax(370px,620px);width:min(1340px,100%)}.auth-wrap:has(#p-pw) .auth-card{max-width:620px}.auth-wrap:has(#p-pw) .auth-card>h1{display:none}.auth-wrap:has(#p-pw) .auth-card h2{color:#0b1d45;letter-spacing:-.045em;font-size:clamp(27px,3vw,36px);line-height:1.16;margin:0 0 40px}.auth-wrap:has(#p-pw) .grid.cols-2{gap:12px}
[data-theme=dark] body:has(.auth-wrap),body[data-theme=dark]:has(.auth-wrap){background:#0b1028;color:#fff}[data-theme=dark] .auth-wrap .auth-card{background:#171d38;border-color:#454061;box-shadow:0 22px 60px #05071766}[data-theme=dark] .auth-wrap .auth-card .input{background:#202742;border-color:#464c6b;color:#fff}[data-theme=dark] .auth-wrap .auth-card label,[data-theme=dark] .auth-wrap .auth-card .label{color:#f7f6ff}[data-theme=dark] .auth-wrap .auth-card .check{background:#242b47}
@media(max-width:800px){.auth-wrap,.auth-wrap:has(#p-pw){display:block;min-height:0;width:min(610px,100%);padding:0 0 32px}.auth-wrap .auth-card{margin:24px auto 0;border-radius:26px;padding:27px 24px}}
@media(max-width:450px){.auth-wrap .auth-card{padding:25px 20px}.auth-wrap:has(#p-pw) .grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-wrap:has(#p-pw) .grid.cols-2 .input{min-width:0}}
.fn-auth-register .wish-compact fieldset,.fn-auth-register .field.fn-districts-field:not(.fn-districts-open) fieldset{display:none}
.fn-auth-register .field.fn-districts-open fieldset{display:block}.fn-auth-register .field.fn-districts-open fieldset .row{max-height:none}
.fn-districts-toggle{cursor:pointer;user-select:none}.fn-districts-toggle::after{content:"▾";margin-inline-start:6px}.fn-districts-open .fn-districts-toggle::after{content:"▴"}
.fn-districts-count{font-weight:700;color:#e9229a}
.fn-auth-register .auth-card h2{font-size:12px;font-weight:600;opacity:.6;margin:14px 0 6px;text-transform:uppercase;letter-spacing:.04em}
.fn-auth-register .auth-card h2:nth-of-type(n+2){display:none}

/* Spinner always centered above the label (login, signup, forgot password, register) */
.btn.loading,.auth-wrap .btn.loading,.auth-card .btn.loading{position:relative!important;color:transparent!important;opacity:1}
.btn.loading:after,.auth-wrap .btn.loading:after,.auth-card .btn.loading:after{content:"";position:absolute!important;left:50%;top:50%;margin:-10px 0 0 -10px!important;width:20px;height:20px;box-sizing:border-box;display:block!important;vertical-align:baseline;border:2.5px solid #fff;border-right-color:transparent;border-radius:50%;animation:fn-spin .7s linear infinite}
.btn.loading>*{visibility:hidden}
/* Signup form: consistent vertical rhythm, visible Bezirke, no Pro badges */
.fn-auth-register .auth-card .wish-compact{display:flex;flex-direction:column;gap:20px}
.fn-auth-register .auth-card .wish-compact>*{margin:0}
.fn-auth-register .auth-card .field,.fn-auth-register .auth-card .fn-wbs-pick,.fn-auth-register .auth-card .fn-wish-range{margin:0}
.fn-auth-register .auth-card .field>.label{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.fn-auth-register .auth-card .field.fn-districts-field{padding:14px 16px;border:1px solid #dfe1ed;border-radius:14px;background:#fff}
.fn-auth-register .auth-card .field.fn-districts-field>.label{margin-bottom:0}
.fn-auth-register .auth-card .field.fn-districts-field.fn-districts-open>.label{margin-bottom:12px}
.fn-auth-register .auth-card .field.fn-districts-field fieldset{margin:0;padding:0;border:0}
.fn-auth-register .auth-card .field.fn-districts-field fieldset .row{gap:8px!important}
.fn-auth-register .auth-card .fn-area-requirement{margin:-8px 0 0}
.fn-auth-register .auth-card .fn-wbs-select{display:grid;gap:8px}
.fn-auth-register .auth-card .fn-wbs-select select,.fn-auth-register .auth-card .fn-rent-field .input{width:100%}
.fn-auth-register .auth-card .fn-wbs-pick+*,.fn-auth-register .auth-card .fn-wbs-pick~*{margin-top:0}
.fn-auth-register .auth-card form.stack{gap:16px}
/* signup: extra bottom spacing after Bezirke and following wish blocks */
.fn-auth-register .auth-card .field.fn-districts-field{margin-bottom:12px}
.fn-auth-register .auth-card .fn-area-requirement{margin:0 0 12px}
.fn-auth-register .auth-card .wish-compact{gap:24px;padding-bottom:12px}
.fn-auth-register .auth-card .wish-compact>*{margin-bottom:4px}
.fn-auth-register .auth-card .fn-wbs-pick,.fn-auth-register .auth-card .fn-wish-range{margin-bottom:12px}

/* uniform gaps between wish inputs; whole collapsed Bezirke card clickable */
.fn-auth-register .auth-card .wish-compact{gap:16px!important}
.fn-auth-register .auth-card .wish-compact>*{margin-bottom:0!important}
.fn-auth-register .auth-card .fn-wbs-pick,.fn-auth-register .auth-card .fn-wish-range{margin-bottom:0!important}
.fn-auth-register .auth-card .fn-wbs-select{gap:8px}
.fn-auth-register .auth-card .field.fn-districts-field:not(.fn-districts-open){cursor:pointer}

/* Bezirke: selected chip keeps exactly the size of unselected; one uniform gap between all signup inputs */
.fn-auth-register .auth-card .fn-districts-field fieldset button.btn{box-sizing:border-box;border:1px solid transparent!important;font-size:13px!important;font-weight:600!important;min-height:34px;height:34px;padding:0 12px!important;line-height:1!important;transform:none!important;scale:none;margin:0}
.fn-auth-register .auth-card .fn-districts-field fieldset button.btn.ghost{border-color:#dfe1ed!important}
.fn-auth-register .auth-card form.stack,.fn-auth-register .auth-card .wish-compact{gap:16px!important}
.fn-auth-register .auth-card .field,.fn-auth-register .auth-card .fn-wbs-pick,.fn-auth-register .auth-card .fn-wish-range,.fn-auth-register .auth-card .fn-area-requirement,.fn-auth-register .auth-card .field.fn-districts-field{margin:0!important}

/* Signup fieldset groups (replace the old separators) */
.fn-auth-register .auth-card form.stack,.fn-auth-register .auth-card .wish-compact{gap:16px!important}
.fn-auth-register .auth-card .wish-compact>.stack:empty{display:none}
.fn-auth-register .auth-card .signup-fieldset{box-sizing:border-box;min-width:0;max-width:100%;margin:0 0 20px;padding:22px 16px 18px;border:1px solid #e3e6f1;border-radius:18px;background:#fff;display:flex;flex-direction:column;gap:16px;transition:border-color .2s ease,box-shadow .2s ease}
.fn-auth-register .auth-card .signup-fieldset:focus-within{border-color:#d8b4fe;box-shadow:0 0 0 3px rgba(216,180,254,.08)}
.fn-auth-register .auth-card .signup-fieldset>legend{display:flex;align-items:center;gap:8px;margin:0;padding:0 10px;max-width:100%;box-sizing:border-box;background:#fff;color:#0b1d45;font-size:14px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.fn-auth-register .auth-card .signup-fieldset>legend::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#ff7a90,#7c5cff)}
.fn-auth-register .auth-card .signup-fieldset>*{min-width:0;max-width:100%}
.fn-auth-register .auth-card .signup-fieldset .wish-compact{margin:0;padding:0!important}
.fn-auth-register .auth-card .signup-fieldset .fn-wbs-pick{display:flex;flex-direction:column;gap:14px}
.fn-auth-register .auth-card .signup-fieldset .fn-wbs-pick>*{margin:0!important}
.fn-auth-register .auth-card form.stack>.signup-fieldset{margin-bottom:4px}
@media(max-width:520px){.fn-auth-register .auth-card .signup-fieldset{padding:18px 12px 16px}}
/* signup groups: plain containers, no frame/legend */
.fn-auth-register .auth-card .signup-group{display:flex;flex-direction:column;gap:16px;margin:0 0 16px;min-width:0}
.fn-auth-register .auth-card .signup-group .wish-compact{margin:0;padding:0!important}
/* signup mobile: full-width inputs, 40px gap after wishes + wbs groups */
.fn-auth-register .auth-card .signup-group[data-group=wishes],.fn-auth-register .auth-card .signup-group[data-group=wbs]{margin-bottom:40px}
@media(max-width:700px){.fn-auth-register .auth-card .signup-group[data-group=wishes] input:not([type=checkbox]):not([type=radio]),.fn-auth-register .auth-card .signup-group[data-group=wishes] label,.fn-auth-register .auth-card .signup-group[data-group=wishes] .field{width:100%;max-width:100%;box-sizing:border-box;display:block}}

/* Three-step registration: keep each part focused and make progress explicit. */
.fn-auth-register .auth-card .wizard-steps{margin:4px 0 28px}.fn-auth-register .wizard-steps>div.active .fn-step-circle,.fn-auth-register .wizard-steps>div.done[aria-current=step] .fn-step-circle{background:#fff;border:2px solid #f51ca2;color:#d91a8b}.fn-auth-register .wizard-steps>div.active small,.fn-auth-register .wizard-steps>div.done[aria-current=step] small{color:#0b1d45;font-weight:800}.fn-auth-register .auth-card .signup-step{display:flex;flex-direction:column;gap:18px;min-width:0;animation:fn-card-enter .22s ease both}.fn-auth-register .auth-card .signup-step>h2{display:block;margin:0;color:#0b1d45;font-size:20px;letter-spacing:-.025em}.fn-auth-register .auth-card .signup-step .wish-compact{margin:0;padding:0;gap:16px!important}.fn-auth-register .auth-card .signup-step .fn-wbs-pick{margin:0!important}.fn-auth-register .auth-card .signup-step-actions{margin-top:28px!important;min-height:48px}.fn-auth-register .auth-card .signup-step-actions .btn{min-width:126px;justify-content:center}@media(max-width:450px){.fn-auth-register .wizard-steps small{font-size:10px}.fn-auth-register .auth-card .signup-step-actions{gap:12px}.fn-auth-register .auth-card .signup-step-actions .btn{min-width:110px}}
