.auth-layout{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.auth-brand{color:var(--sala-off-white);background:linear-gradient(160deg,#00376b 0%,#002b55 100%);flex-direction:column;padding:56px 56px 48px;display:flex;position:relative;overflow:hidden}.auth-brand:before{content:"";pointer-events:none;background:radial-gradient(circle at 80% 12%,#e3c15a1f,#0000 50%);position:absolute;inset:0}.auth-brand .top{font-family:var(--font-display);letter-spacing:.18em;align-items:center;gap:10px;font-size:16px;font-weight:500;display:flex;position:relative}.auth-brand .center{margin:auto 0;position:relative}.auth-brand .eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--sala-gold);align-items:center;gap:8px;margin-bottom:20px;font-size:12px;font-weight:600;display:inline-flex}.auth-brand .eyebrow:before{content:"";background:var(--sala-gold);width:24px;height:1px}.auth-brand h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--sala-off-white);margin:0 0 18px;font-size:44px;font-weight:700;line-height:1.08}.auth-brand h1 em{color:var(--sala-gold);font-style:normal}.auth-brand .blurb{color:#b8c7d6;max-width:380px;margin:0;font-size:16px;line-height:1.6}.auth-brand .pav{margin-top:40px}.auth-brand .foot{font-family:var(--font-mono);letter-spacing:.04em;color:#6e89a8;gap:22px;margin-top:32px;font-size:11.5px;display:flex;position:relative}.auth-brand .foot span{align-items:center;gap:7px;display:inline-flex}.auth-brand .foot svg{color:var(--sala-teal-300)}.auth-form{background:var(--bg);justify-content:center;align-items:center;padding:48px;display:flex;position:relative}.auth-back{font-family:var(--font-sans);color:var(--fg2);align-items:center;gap:6px;font-size:13.5px;text-decoration:none;display:inline-flex;position:absolute;top:32px;left:40px}.auth-back:hover{color:var(--sala-navy)}.auth-card{width:100%;max-width:400px}.auth-card .logo{width:132px;height:auto;margin-bottom:28px}.auth-card h2{font-family:var(--font-display);color:var(--sala-navy-dark);letter-spacing:-.01em;margin:0 0 8px;font-size:28px;font-weight:600}.auth-card .sub{color:var(--fg2);margin:0 0 30px;font-size:15px;line-height:1.55}.sso-btn{cursor:pointer;background:var(--sala-navy);width:100%;height:56px;color:var(--sala-off-white);border:1px solid var(--sala-navy);font-family:var(--font-sans);transition:all .16s var(--ease-out);border-radius:10px;align-items:center;gap:14px;padding:0 18px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.sso-btn:hover:not(:disabled){background:var(--sala-navy-dark);box-shadow:var(--shadow-md)}.sso-btn:disabled{opacity:.7;cursor:default}.sso-btn .ad-glyph{background:#ffffff1a;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.sso-btn .ad-glyph svg{color:var(--sala-gold-soft)}.sso-btn .txt{text-align:left;flex-direction:column;gap:2px;line-height:1.1;display:flex}.sso-btn .txt small{font-family:var(--font-mono);color:#b8c7d6;letter-spacing:.02em;font-size:11px;font-weight:400}.sso-btn .arrow{color:var(--sala-gold-soft);margin-left:auto}.sso-spinner{border:2px solid #ffffff40;border-top-color:var(--sala-gold-soft);border-radius:50%;width:18px;height:18px;margin-left:auto;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-divider{color:var(--fg3);font-size:12px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:14px;margin:24px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.domain-row{border:1px solid var(--border-subtle);color:var(--fg2);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:12px 16px;font-size:13.5px;display:flex}.domain-row svg{color:var(--sala-teal-deep);flex:none}.domain-row code{font-family:var(--font-mono);color:var(--sala-navy);font-size:13px}.auth-help{color:var(--fg3);margin-top:26px;font-size:13px;line-height:1.6}.auth-help a{color:var(--sala-teal-deep);text-decoration:none}.auth-help a:hover{border-bottom:1px solid}.sso-overlay{z-index:1000;background:var(--surface-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sso-modal{width:380px;box-shadow:var(--shadow-xl);text-align:center;animation:rise .28s var(--ease-pavilion);background:#fff;border-radius:16px;padding:36px 36px 30px}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.sso-modal .badge{background:var(--sala-navy);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;display:flex}.sso-modal .badge svg{color:var(--sala-gold-soft)}.sso-modal .ring{border:3px solid var(--sala-cool-gray);border-top-color:var(--sala-teal);border-radius:50%;width:56px;height:56px;margin:0 auto 20px;animation:.8s linear infinite spin}.sso-modal h3{font-family:var(--font-display);color:var(--sala-navy-dark);margin:0 0 8px;font-size:19px;font-weight:600}.sso-modal p{color:var(--fg2);margin:0;font-size:14px;line-height:1.55}.sso-modal .acct{text-align:left;border:1px solid var(--border-subtle);background:var(--sala-gray-50);border-radius:10px;align-items:center;gap:12px;margin-top:20px;padding:12px 14px;display:flex}.sso-modal .acct .av{background:var(--sala-teal-deep);color:#fff;width:38px;height:38px;font-family:var(--font-display);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.sso-modal .acct .who{line-height:1.3}.sso-modal .acct .who b{color:var(--sala-navy-dark);font-size:14px;font-weight:600;display:block}.sso-modal .acct .who small{font-family:var(--font-mono);color:var(--fg2);font-size:12px}.sso-modal .acct .ok{color:var(--intent-success);margin-left:auto}.sso-progress{background:var(--sala-cool-gray);border-radius:999px;height:4px;margin-top:22px;overflow:hidden}.sso-progress i{background:var(--sala-gold);height:100%;transition:width .6s var(--ease-out);border-radius:999px;display:block}@media (max-width:860px){.auth-layout{grid-template-columns:1fr}.auth-brand{display:none}.auth-form{align-items:flex-start;padding:80px 28px 48px}}
