:root{--fx-auth-bg:#050c1b;--fx-auth-panel:#101d34;--fx-auth-panel-2:#12243e;--fx-auth-border:rgba(137,177,235,.22);--fx-auth-text:#f7f9ff;--fx-auth-muted:#9fb0cb;--fx-auth-blue:#1aa9f5;--fx-auth-purple:#7c3df0;--fx-auth-danger:#ff6b7e}
.auth-page{min-height:100vh;background:var(--fx-auth-bg);color:var(--fx-auth-text)}
.auth-page>main{min-height:100vh}
.fx-next-auth-page,.fx-auth-page{position:relative;isolation:isolate;min-height:100vh;overflow:hidden;background:radial-gradient(circle at 12% 18%,rgba(22,114,214,.25),transparent 34%),radial-gradient(circle at 88% 84%,rgba(0,183,232,.16),transparent 32%),linear-gradient(135deg,#061225 0%,#070a1c 56%,#06172b 100%);color:var(--fx-auth-text)}
.fx-auth-grid-bg{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(100,148,216,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(100,148,216,.055) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 92%)}
.fx-auth-bg,.fx-auth-glow{position:absolute;z-index:-1;border-radius:999px;filter:blur(50px);pointer-events:none}.fx-bg-radial-one{width:420px;height:420px;left:-180px;top:5%;background:rgba(19,111,233,.22)}.fx-bg-radial-two{width:360px;height:360px;right:-160px;bottom:-80px;background:rgba(0,190,235,.15)}
.fx-next-auth-container{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(390px,.68fr);min-height:100vh;max-width:1540px;margin:auto;padding:clamp(2rem,4vw,4.5rem);gap:clamp(2rem,5vw,6rem);align-items:center}
.fx-next-hero{display:flex;align-items:center;justify-content:center}.fx-next-hero-inner{width:min(100%,760px)}.fx-logo-wrap{margin-bottom:2.6rem}.fx-next-logo{display:block;width:min(310px,62%);height:auto;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(0,0,0,.28))}.fx-platform-pill,.fx-secure-pill,.fx-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.42rem .8rem;border:1px solid rgba(146,185,239,.25);border-radius:999px;background:rgba(228,239,255,.96);color:#21468e;font-size:.67rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.12)}.fx-pill-dot{width:7px;height:7px;border-radius:50%;background:#19c7f2;box-shadow:0 0 0 4px rgba(25,199,242,.12)}
.fx-login-title{max-width:760px;margin:1.65rem 0 .8rem;color:#fff;font-size:clamp(3rem,5.7vw,6.1rem);line-height:.92;letter-spacing:-.065em;font-weight:900}.fx-hero-lead{max-width:760px;margin:0;color:#d9e5f6;font-size:clamp(.95rem,1.2vw,1.1rem)}.fx-feature-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:2rem 0 1.7rem}.fx-feature-item{display:flex;min-height:74px;align-items:center;justify-content:center;gap:.6rem;padding:.8rem;border:1px solid rgba(158,189,231,.22);border-radius:15px;background:rgba(255,255,255,.035);color:#fff;font-size:.75rem;font-weight:750;text-align:center;box-shadow:inset 0 1px rgba(255,255,255,.04)}.fx-feature-icon{color:#48c8ff}.fx-trust-list{display:grid;gap:.65rem}.fx-trust-row{display:flex;align-items:center;gap:.7rem;color:#e6eef9}.fx-trust-row>span{display:inline-flex;width:21px;height:21px;align-items:center;justify-content:center;border-radius:50%;background:rgba(24,127,238,.25);color:#5ed3ff}.fx-trust-row p{margin:0;font-size:.84rem}
.fx-next-form-section{display:flex;justify-content:center}.fx-next-form-shell,.fx-single-card{width:100%;border:1px solid var(--fx-auth-border);border-radius:26px;background:linear-gradient(145deg,rgba(18,30,52,.96),rgba(12,35,55,.93));box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.05);backdrop-filter:blur(18px)}.fx-next-form-shell{max-width:460px;padding:clamp(2rem,3vw,3rem)}.fx-mobile-brand{display:none}.fx-form-header{text-align:center;margin-bottom:1.7rem}.fx-form-header h2,.fx-single-card h1{margin:.95rem 0 .2rem;color:#fff;font-size:clamp(2rem,3vw,2.8rem);font-weight:850;letter-spacing:-.045em}.fx-form-header p,.fx-description{color:var(--fx-auth-muted)}
.fx-next-form,.fx-form{display:grid;gap:1rem}.fx-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.fx-form-group{min-width:0}.fx-form-group label{display:block;margin-bottom:.45rem;color:#e7eef8;font-size:.76rem;font-weight:750}.fx-input-wrap{position:relative}.fx-input,.fx-auth-page textarea,.fx-auth-page select{display:block;width:100%;min-height:48px;padding:.75rem .9rem;border:1px solid rgba(132,169,220,.28);border-radius:13px;background:#09162b;color:#f6f9ff;outline:none;box-shadow:inset 0 1px rgba(255,255,255,.02);transition:.18s ease}.fx-input::placeholder{color:#7587a3}.fx-input:focus,.fx-auth-page textarea:focus,.fx-auth-page select:focus{border-color:#35b9fa;box-shadow:0 0 0 4px rgba(30,169,244,.12)}.fx-input-wrap .fx-input{padding-right:3.5rem}.fx-input-icon,.fx-password-toggle{position:absolute;right:.55rem;top:50%;transform:translateY(-50%)}.fx-input-icon{color:#9db0ca}.fx-password-toggle{border:0;border-radius:8px;background:#1b2a43;color:#dbe6f5;padding:.38rem .55rem;font-size:.68rem}.fx-textarea{min-height:120px;resize:vertical}.fx-validation{display:block;margin-top:.3rem;color:#ff95a5;font-size:.72rem}.fx-validation-summary{border-radius:12px;background:rgba(198,45,69,.15);color:#ffb8c2;font-size:.78rem}.fx-validation-summary:empty{display:none}
.fx-form-options{display:flex;justify-content:space-between;gap:1rem;margin-top:.65rem;font-size:.73rem}.fx-check-row{display:flex;align-items:center;gap:.45rem;color:#dce7f6}.fx-check-row input{accent-color:#269cf1}.fx-form-options a,.fx-bottom-link a,.fx-access-link a{color:#4db9ff;font-weight:700}.fx-submit-button,.fx-button{display:inline-flex;width:100%;min-height:50px;align-items:center;justify-content:center;gap:.6rem;border:0;border-radius:13px;background:linear-gradient(100deg,var(--fx-auth-blue),var(--fx-auth-purple));color:#fff;font-weight:850;box-shadow:0 14px 32px rgba(53,88,232,.27);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.fx-submit-button:hover,.fx-button:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(53,88,232,.34);color:#fff}.fx-access-link,.fx-bottom-link{text-align:center;color:#8fa2be;font-size:.76rem;margin:1rem 0}.fx-security-box,.fx-info-box{display:flex;gap:.8rem;margin-top:1rem;padding:1rem;border:1px solid rgba(133,171,222,.2);border-radius:14px;background:rgba(255,255,255,.035);color:#aebed3;font-size:.72rem}.fx-security-box p,.fx-info-box p,.fx-info-box small{margin:0}.fx-info-box strong{display:block;color:#f0f5fc}.fx-info-box small{display:block;margin-top:.2rem}.fx-auth-footer{text-align:center;margin-top:1rem;color:#7386a2;font-size:.66rem}
.fx-single-page{display:grid;place-items:center;padding:clamp(1.25rem,4vw,4rem)}.fx-single-shell{width:min(100%,590px)}.fx-wide-shell{width:min(100%,840px)}.fx-single-card{position:relative;padding:clamp(1.7rem,4vw,3.25rem);overflow:hidden}.fx-single-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#1ab6f4,#7c3df0)}.fx-logo-card{display:block;width:min(260px,62%);max-height:120px;margin:0 auto 1.5rem;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(0,0,0,.32))}.fx-single-card>.fx-badge{display:flex;width:max-content;margin:0 auto}.fx-single-card h1,.fx-single-card>.fx-description{text-align:center}.fx-single-card>.fx-description{max-width:620px;margin:.5rem auto 1.5rem}.fx-single-card .fx-form{margin-top:1.3rem}.fx-single-card .fx-button{margin-top:.2rem}
.fx-text-center{text-align:center}.fx-info-box-center{justify-content:center;text-align:left}.fx-status-badge,.fx-success-badge,.fx-warning-badge,.fx-error-badge{display:inline-flex;align-items:center;gap:.45rem;width:max-content;max-width:100%;margin:0 auto .8rem;padding:.42rem .75rem;border-radius:999px;font-size:.68rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.fx-success-badge,.fx-status-badge.fx-success{background:rgba(17,183,126,.15);color:#7af0c5;border:1px solid rgba(73,222,170,.24)}.fx-warning-badge,.fx-status-badge.fx-warning{background:rgba(246,170,42,.14);color:#ffd48b;border:1px solid rgba(246,170,42,.24)}.fx-error-badge,.fx-status-badge.fx-error{background:rgba(225,69,94,.14);color:#ffacb9;border:1px solid rgba(225,69,94,.24)}.fx-status-icon{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;margin:0 auto 1rem;border-radius:16px;background:rgba(36,150,240,.13);color:#55c8ff;font-size:1.3rem}.fx-password-rules{margin:.25rem 0 0;padding:.85rem 1rem;border:1px solid rgba(133,171,222,.18);border-radius:12px;background:rgba(255,255,255,.025);color:#9fb0c8;font-size:.72rem}.fx-password-rules ul{margin:.35rem 0 0;padding-left:1.1rem}.fx-button-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem .9rem;border:1px solid rgba(132,169,220,.28);border-radius:12px;background:rgba(255,255,255,.04);color:#dce8f8;font-weight:750}.fx-button-link:hover{background:rgba(255,255,255,.08);color:#fff}

/* Critical responsive fallback kept in the primary stylesheet. */
@media (max-width: 1100px) {
    .fx-next-auth-container {
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
        max-width: 720px;
        min-height: 100vh;
        margin-inline: auto;
        padding: clamp(1rem, 4vw, 2.5rem);
        gap: 0;
    }

    .fx-next-hero {
        display: none;
    }

    .fx-next-form-section {
        width: 100%;
        min-width: 0;
    }

    .fx-next-form-shell {
        width: min(100%, 540px);
        max-width: 540px;
        margin-inline: auto;
    }

    .fx-mobile-brand {
        display: block;
        margin-bottom: 1rem;
        text-align: center;
    }

    .fx-mobile-brand img {
        display: block;
        width: min(260px, 72%);
        max-width: 100%;
        max-height: 115px;
        margin-inline: auto;
        object-fit: contain;
    }
}

@media (max-width: 640px) {
    .fx-next-auth-container {
        padding: .75rem;
    }

    .fx-next-form-shell,
    .fx-single-card {
        padding: 1.25rem;
        border-radius: 20px;
    }

    .fx-form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .fx-form-options {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Public capability cards */
.fx-feature-item{position:relative;text-decoration:none;overflow:hidden;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.fx-feature-item:before{content:"";position:absolute;inset:-1px;opacity:0;background:linear-gradient(120deg,rgba(38,180,247,.18),rgba(117,70,239,.16));transition:opacity .2s ease}.fx-feature-item>*{position:relative}.fx-feature-item:hover,.fx-feature-item:focus-visible{transform:translateY(-4px);border-color:rgba(71,197,255,.58);background:rgba(24,105,197,.12);box-shadow:0 16px 38px rgba(0,0,0,.28),0 0 24px rgba(39,168,243,.12);color:#fff;outline:none}.fx-feature-item:hover:before,.fx-feature-item:focus-visible:before{opacity:1}.fx-feature-arrow{position:absolute;right:.65rem;top:.55rem;color:#65d2ff;font-size:.72rem;opacity:0;transform:translate(-4px,4px);transition:.2s ease}.fx-feature-item:hover .fx-feature-arrow,.fx-feature-item:focus-visible .fx-feature-arrow{opacity:1;transform:none}
