﻿/* Public-facing dark design: layout, hierarchy and responsive forms. */
body:is(#sere-monochrome, .sere-starlink) .sw-nav,
body:is(#sere-monochrome, .sere-starlink) .sere-login-nav,
body:is(#sere-monochrome, .sere-starlink) .ubs-topbar { min-height: 88px; border-bottom: 1px solid #222 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-nav { width: calc(100% - 64px); max-width: 1280px; margin: 0 auto; }
body:is(#sere-monochrome, .sere-starlink) .sw-nav:before,
body:is(#sere-monochrome, .sere-starlink) .sw-hero:before,
body:is(#sere-monochrome, .sere-starlink) .sw-hero:after,
body:is(#sere-monochrome, .sere-starlink) .ubs-showcase:before,
body:is(#sere-monochrome, .sere-starlink) .ubs-showcase:after,
body:is(#sere-monochrome, .sere-starlink) .ubs-register-hero:before,
body:is(#sere-monochrome, .sere-starlink) .ubs-register-hero:after { display: none !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-hero { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 56px; align-items: center; width: calc(100% - 80px) !important; max-width: 1200px; min-height: 580px !important; padding: 72px 0 !important; margin: 0 auto !important; background: #000 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-copy { width: auto !important; max-width: 580px !important; padding: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-copy h1 { font-size: clamp(40px,4.7vw,66px) !important; line-height: 1.08 !important; font-weight: 500 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-copy > p,
body:is(#sere-monochrome, .sere-starlink) .ubs-message > p,
body:is(#sere-monochrome, .sere-starlink) .ubs-subtitle,
body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy > p { color: #aaa !important; font-size: 15px; line-height: 1.8; }
body:is(#sere-monochrome, .sere-starlink) .sw-kicker { border: 0 !important; padding: 0; font-size: 10px; background: transparent !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-kicker > span { display: none; }
body:is(#sere-monochrome, .sere-starlink) .sw-preview { display: block !important; position: relative !important; width: 100% !important; min-height: 340px !important; height: auto !important; opacity: 1 !important; transform: none !important; animation: none !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-orb,
body:is(#sere-monochrome, .sere-starlink) .sw-float-card { display: none !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-dashboard { position: relative !important; top: auto !important; left: auto !important; width: 100% !important; transform: none !important; padding: 0 !important; border: 1px solid #333 !important; border-radius: 4px !important; overflow: hidden; }
body:is(#sere-monochrome, .sere-starlink) .sw-app { min-height: 340px; }
body:is(#sere-monochrome, .sere-starlink) .sw-app-side { border-inline-end: 1px solid #222 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-app-top { border-bottom: 1px solid #222 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-menu span:first-child { background: #303030 !important; border-radius: 3px; }
body:is(#sere-monochrome, .sere-starlink) .sw-features { width: calc(100% - 80px); max-width: 1200px; margin: 0 auto 48px; padding-top: 32px; border-top: 1px solid #222 !important; gap: 24px; }
body:is(#sere-monochrome, .sere-starlink) .sw-feature { padding: 20px 0; border: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .sw-feature > span,
body:is(#sere-monochrome, .sere-starlink) .sw-feature-lead > span { color: #aaa !important; line-height: 1.7; }
body:is(#sere-monochrome, .sere-starlink) .sw-primary,
body:is(#sere-monochrome, .sere-starlink) .sw-secondary,
body:is(#sere-monochrome, .sere-starlink) .sw-nav-button { border: 1px solid #777 !important; border-radius: 4px !important; letter-spacing: 0 !important; font-size: 13px; text-transform: none; }
body:is(#sere-monochrome, .sere-starlink) .ubs-login { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
body:is(#sere-monochrome, .sere-starlink) .ubs-showcase { padding: 56px clamp(24px,5vw,72px) !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-message { margin: 24px 0 40px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-message h1 { font-size: clamp(34px,3.5vw,50px) !important; line-height: 1.15; }
body:is(#sere-monochrome, .sere-starlink) .ubs-capabilities { padding-left: 0; gap: 0; }
body:is(#sere-monochrome, .sere-starlink) .ubs-capabilities:before,
body:is(#sere-monochrome, .sere-starlink) .ubs-capability:before { display: none; }
body:is(#sere-monochrome, .sere-starlink) .ubs-capability { border: 0 !important; border-top: 1px solid #222 !important; padding: 20px 0; background: transparent !important; border-radius: 0; }
body:is(#sere-monochrome, .sere-starlink) .ubs-cap-copy > span { color: #aaa !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-side { padding: 56px 32px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-wrap { max-width: 400px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-wrap:before { display: none !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-wrap h2 { font-size: 30px !important; font-weight: 500 !important; letter-spacing: -.02em !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-input { height: 50px; border-radius: 4px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-eye { border: 0 !important; padding: 8px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-eye:hover { transform: none; }
body:is(#sere-monochrome, .sere-starlink) .ubs-submit { min-height: 48px; border-radius: 4px !important; font-size: 13px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-hero { padding-bottom: 32px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy { max-width: 940px; padding: 48px 24px 0; margin: 0 auto; }
body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy h1 { font-size: clamp(30px,4vw,44px) !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-card { width: calc(100% - 48px) !important; max-width: 960px; margin: 0 auto 64px !important; padding: 32px !important; border: 1px solid #333 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-intro { border: 0 !important; border-bottom: 1px solid #222 !important; padding: 0 0 24px; margin-bottom: 24px; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps ul { display: flex; flex-wrap: wrap; gap: 8px; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps li { flex: 1 1 140px; width: auto; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps a { margin: 0; border: 1px solid #333 !important; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps .current a { background: #303030 !important; border-color: #777 !important; text-decoration: none; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .content { margin: 24px 0; }
body:is(#sere-monochrome, .sere-starlink) .ubs-recovery { border: 1px solid #333 !important; padding: 32px; }
body:is(#sere-monochrome, .sere-starlink) .paynow-trust { padding-top: 20px; border-top: 1px solid #222 !important; }
body:is(#sere-monochrome, .sere-starlink) .paynow-trust img { max-width: 180px; }
@media(max-width: 950px) {
 body:is(#sere-monochrome, .sere-starlink) .sw-hero { grid-template-columns: 1fr !important; gap: 40px; padding: 40px 0 !important; }
 body:is(#sere-monochrome, .sere-starlink) .sw-preview { max-width: 620px; margin: 0 auto; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-login { grid-template-columns: 1fr !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-showcase { display: none !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-form-side { min-height: calc(100vh - 88px); padding: 40px 24px !important; }
}
@media(max-width: 600px) {
 body:is(#sere-monochrome, .sere-starlink) .sw-nav { width: calc(100% - 32px); }
 body:is(#sere-monochrome, .sere-starlink) .sw-hero,
 body:is(#sere-monochrome, .sere-starlink) .sw-features { width: calc(100% - 40px) !important; }
 body:is(#sere-monochrome, .sere-starlink) .sw-features { display: grid; grid-template-columns: 1fr; gap: 0; }
 body:is(#sere-monochrome, .sere-starlink) .sw-actions { flex-direction: column; }
 body:is(#sere-monochrome, .sere-starlink) .sw-proof { flex-wrap: wrap; gap: 12px; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-register-card { width: calc(100% - 24px) !important; padding: 20px 16px !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-signin { max-width: 140px; text-align: right; font-size: 12px; }
}

/* Minimal account entry pages, with no promotional panel or floating card. */
body:is(#sere-monochrome, .sere-starlink) .ubs-login { display: block !important; min-height: 100vh; padding-top: 96px !important; }
body:is(#sere-monochrome, .sere-starlink) .sere-login-nav { position: absolute !important; top: 0; left: 0; width: 100%; height: 96px !important; padding: 0 32px !important; display: flex; align-items: center; border-bottom: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-side { display: flex !important; justify-content: center; align-items: flex-start !important; min-height: auto !important; padding: 54px 24px 80px !important; border: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-wrap { width: 100%; max-width: 420px !important; margin: 0 auto; padding: 0 !important; border: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-mobile-logo { display: none !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-form-wrap h2 { font-size: 32px !important; font-weight: 600 !important; margin: 0 0 10px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-subtitle { margin-bottom: 32px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-field { margin-bottom: 24px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-field label { font-size: 13px; font-weight: 400; }
body:is(#sere-monochrome, .sere-starlink) .ubs-input { height: 48px; padding-left: 14px !important; border: 1px solid #666 !important; border-radius: 4px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-input-wrap > svg { display: none; }
body:is(#sere-monochrome, .sere-starlink) .ubs-submit { width: 100%; min-height: 46px; letter-spacing: .06em; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register { margin-top: 28px; font-size: 13px; text-align: left; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-hero { padding: 0 0 28px !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-topbar { width: 100%; max-width: none; height: 96px; margin: 0; padding: 0 32px; border: 0 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy { width: calc(100% - 48px); max-width: 760px; text-align: left; padding: 42px 0 0; margin: 0 auto; }
body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy h1 { margin: 0 0 10px; font-size: 32px !important; font-weight: 600 !important; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-card { max-width: 760px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; margin: 0 auto 64px !important; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps a { border: 0 !important; border-bottom: 1px solid #333 !important; border-radius: 0 !important; padding: 14px 10px; background: transparent !important; font-size: 13px; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .steps .current a { border-bottom: 2px solid #fff !important; background: transparent !important; }
body:is(#sere-monochrome, .sere-starlink) .wizard > .content legend { font-size: 20px; padding-bottom: 16px; margin-bottom: 24px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-card .form-group { margin-bottom: 24px; }
body:is(#sere-monochrome, .sere-starlink) .ubs-register-card .form-control,
body:is(#sere-monochrome, .sere-starlink) .ubs-register-card .select2-selection--single { min-height: 44px; }
body:is(#sere-monochrome, .sere-starlink) .paynow-trust { margin-top: 28px; padding-top: 22px; justify-content: flex-start; }
@media(max-width:600px) {
 body:is(#sere-monochrome, .sere-starlink) .sere-login-nav,
 body:is(#sere-monochrome, .sere-starlink) .ubs-topbar { padding: 0 20px !important; height: 80px !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-login { padding-top: 80px !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-form-side { padding-top: 30px !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-register-card { width: calc(100% - 40px) !important; }
 body:is(#sere-monochrome, .sere-starlink) .ubs-hero-copy { width: calc(100% - 40px); padding-top: 28px; }
}

/* Login identity visual: a lightweight vector, with no decorative form clutter. */
body:is(#sere-monochrome,.sere-starlink) .ubs-login { display: grid !important; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr) !important; align-items: center; }
body:is(#sere-monochrome,.sere-starlink) .sere-login-visual { padding: 32px 48px 64px; max-width: 680px; width: 100%; margin: 0 auto; }
body:is(#sere-monochrome,.sere-starlink) .sere-orbit-art { position: relative; width: 100%; max-width: 520px; margin: 0 auto 28px; }
body:is(#sere-monochrome,.sere-starlink) .sere-orbit-art svg { display: block; width: 100%; height: auto; }
body:is(#sere-monochrome,.sere-starlink) .sere-orbit-label { position: absolute; inset-inline: 0; text-align: center; font-size: 9px; letter-spacing: .2em; color: #999 !important; }
body:is(#sere-monochrome,.sere-starlink) .sere-orbit-label-top { top: 0; }
body:is(#sere-monochrome,.sere-starlink) .sere-orbit-label-bottom { bottom: 0; }
body:is(#sere-monochrome,.sere-starlink) .sere-login-visual h2 { font-size: clamp(30px,3.5vw,46px); line-height: 1.14; font-weight: 400; letter-spacing: -.025em; margin: 0 0 16px; }
body:is(#sere-monochrome,.sere-starlink) .sere-login-visual p { color: #999 !important; font-size: 14px; line-height: 1.8; margin: 0; }
body:is(#sere-monochrome,.sere-starlink) .ubs-login .ubs-form-side { border-inline-start: 1px solid #222 !important; width: 100%; }
@keyframes sere-signal { 0%,100% { opacity: .2; r: 18px; } 50% { opacity: .65; r: 30px; } }
body.sere-motion-ready .sere-orbit-signal { animation: sere-signal 4s ease-in-out infinite; }
@media(max-width:950px) {
 body:is(#sere-monochrome,.sere-starlink) .ubs-login { grid-template-columns: 1fr !important; }
 body:is(#sere-monochrome,.sere-starlink) .sere-login-visual { max-width: 420px; padding: 16px 24px 0; }
 body:is(#sere-monochrome,.sere-starlink) .sere-orbit-art { max-width: 220px; margin-bottom: 0; }
 body:is(#sere-monochrome,.sere-starlink) .sere-login-visual h2,
 body:is(#sere-monochrome,.sere-starlink) .sere-login-visual p,
 body:is(#sere-monochrome,.sere-starlink) .sere-orbit-label { display: none; }
 body:is(#sere-monochrome,.sere-starlink) .ubs-login .ubs-form-side { border: 0 !important; }
}
@media(prefers-reduced-motion:reduce) { body.sere-motion-ready .sere-orbit-signal { animation: none; } }

/* Welcome visual shares the login and dashboard infinity identity. */
body:is(#sere-monochrome,.sere-starlink) .sere-welcome-visual { display: flex !important; flex-direction: column; justify-content: center; align-items: center; gap: 16px; padding: 24px 0; }
body:is(#sere-monochrome,.sere-starlink) .sere-welcome-visual svg { display: block; width: 100%; height: auto; max-width: 520px; }
body:is(#sere-monochrome,.sere-starlink) .sere-welcome-visual-label { text-align: center; font-size: 9px; letter-spacing: .2em; color: #999 !important; }
@keyframes sere-welcome-pulse { 0%,100% { opacity: .2; r: 18px; } 50% { opacity: .7; r: 30px; } }
body.sere-motion-ready .sere-welcome-signal { animation: sere-welcome-pulse 4s ease-in-out infinite; }
@media(max-width:600px) {
 body:is(#sere-monochrome,.sere-starlink) .sw-preview.sere-welcome-visual { min-height: 220px !important; padding: 8px 0; gap: 8px; }
 body:is(#sere-monochrome,.sere-starlink) .sere-welcome-visual svg { max-width: 320px; }
}
@media(prefers-reduced-motion:reduce) { body.sere-motion-ready .sere-welcome-signal { animation: none; } }
