/* Studo authentication skin. Form markup and controllers remain unchanged. */
:root { --brand-primary: #008eae !important; --brand-primary-light: #e9f7f8 !important; --brand-primary-ring: #008eae30 !important; }
body.studo-auth { min-height: 100vh; background: #f6f8f6; color: #10274a; }
body.studo-login-page { background: #f6f8f6; }
body.studo-login-page::before { background: radial-gradient(circle at 72% 30%, rgba(0,142,174,.10) 0, transparent 55%); }
body.studo-login-page .left-content { padding-bottom: clamp(170px, 26vh, 300px); }
body.studo-login-page .logo-text .brand { color: #10274a; }
body.studo-login-page .logo-text .brand b, body.studo-login-page .logo-text .tag, body.studo-login-page .flink, body.studo-login-page .reglink a { color: #007f9d; }
body.studo-login-page .logo-text .tag, body.studo-login-page .fi { background: #e9f7f8; border-color: #bde7ea; }
body.studo-login-page .right { border-top-color: #008eae; border-left-color: #008eae; box-shadow: 0 30px 60px rgba(16,39,74,.10); }
body.studo-login-page .shield-badge, body.studo-login-page .btn, body.studo-login-page .qh-badge { background: #008eae; }
body.studo-login-page .btn .barrow svg, body.studo-login-page .qh svg, body.studo-login-page .qh-go, body.studo-login-page .qwide > svg { stroke: #008eae; color: #008eae; }
body.studo-login-page .iw:focus-within { border-color: #008eae; box-shadow: 0 0 0 4px rgba(0,142,174,.12); }
body.studo-login-page .qh { border-color: #008eae; }
body.studo-login-page .qh:hover, body.studo-login-page .qwide:hover, body.studo-login-page .qbtn:hover { border-color: #008eae; background: #e9f7f8; }
.studo-auth-shell { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .82fr); min-height: 100vh; }
.studo-auth-aside { position: relative; overflow: hidden; padding: clamp(2rem, 5vw, 5rem); background: #10274a; color: #fff; }
.studo-auth-aside::after { content: ''; position: absolute; width: 440px; height: 440px; right: -210px; bottom: -235px; border: 1px solid rgba(93, 220, 225, .36); border-radius: 50%; box-shadow: 0 0 0 70px rgba(93, 220, 225, .06), 0 0 0 140px rgba(93, 220, 225, .04); }
.studo-auth-brand { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: .72rem; color: #fff; text-decoration: none; }
.studo-auth-brand i { color: #53d6dd; font-size: 1.45rem; }
.studo-auth-brand strong { display: block; font-size: 1.45rem; letter-spacing: -.055em; }
.studo-auth-brand small { display: block; color: #c9d8e6; font-size: .64rem; font-weight: 650; }
.studo-auth-message { position: relative; z-index: 1; max-width: 32rem; margin-top: clamp(6rem, 17vh, 12rem); }
.studo-auth-message p:first-child { color: #62dfe4; font-size: .74rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.studo-auth-message h1 { margin: .8rem 0 1rem; color: #fff; font-family: inherit; font-size: clamp(2.35rem, 3.7vw, 4rem); font-weight: 800; letter-spacing: -.05em; line-height: 1.02; }
.studo-auth-message p:last-child { color: #cfdae6; font-size: 1.05rem; line-height: 1.65; }
.studo-auth-points { position: relative; z-index: 1; display: grid; gap: .75rem; margin-top: 2rem; padding: 0; list-style: none; color: #e8f2f7; font-size: .9rem; font-weight: 650; }
.studo-auth-points i { width: 1.5rem; color: #5bdbdf; }
.studo-auth-main { display: flex; align-items: center; justify-content: center; padding: clamp(1.4rem, 4vw, 4rem); }
.studo-auth-card { width: min(100%, 42rem); padding: clamp(1.45rem, 3vw, 2.6rem); background: #fff; border: 1px solid #dfe8ef; border-radius: 1.15rem; box-shadow: 0 18px 45px rgba(16,39,74,.08); }
.studo-auth-card .text-brand-primary { color: #007f9d !important; }
.studo-auth-card .btn-brand-primary { background: #008eae !important; border-radius: .75rem !important; }
.studo-auth-card .btn-brand-primary:hover { background: #00748f !important; }
.studo-auth-card input:focus { border-color: #008eae !important; box-shadow: 0 0 0 4px rgba(0,142,174,.12) !important; }
@media (max-width: 900px) { .studo-auth-shell { grid-template-columns: 1fr; } .studo-auth-aside { min-height: 220px; padding: 1.4rem 1.4rem 2rem; } .studo-auth-message { margin-top: 2.75rem; } .studo-auth-message h1 { font-size: 2.1rem; } .studo-auth-message p:last-child, .studo-auth-points { display: none; } .studo-auth-main { align-items: start; padding: 1.25rem; } .studo-auth-card { padding: 1.4rem; } }
@media (max-width: 374px) { .studo-auth-main { padding: .85rem; } .studo-auth-card { padding: 1.1rem; border-radius: .85rem; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
