/* Miranda × Dias: shared visual language with miranda.expert. */
:root{--bg:#05080e;--panel:#0e1520;--panel2:#142034;--blue:#1a73e8;--blue2:#69a5ff;--pale:#bcd7ff}
.login-shell{background:radial-gradient(ellipse at 16% 47%,rgba(23,79,160,.25),transparent 36%),radial-gradient(ellipse at 85% 15%,rgba(17,67,131,.14),transparent 38%),#05080e}
.login-shell:after{background-size:56px 56px;background-image:linear-gradient(rgba(125,174,245,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(125,174,245,.025) 1px,transparent 1px)}
.login-glow{left:-330px;bottom:-330px;opacity:.18}
.login-header{gap:12px;align-items:center}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:48px;height:43px;padding:0 6px;border:1px solid #3166ac;border-radius:12px;background:linear-gradient(145deg,#132945,#0a1423);box-shadow:0 0 26px rgba(26,115,232,.13);font-size:20px;letter-spacing:-.09em}
.brand-mark span{padding:0 2px;font-size:.8em;letter-spacing:0;color:#75aaff}
.logo-frame{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #3166ac;border-radius:12px;background:linear-gradient(145deg,#132945,#0a1423);box-shadow:0 0 26px rgba(26,115,232,.13);overflow:hidden}
.brand-logo{display:block;width:100%;height:100%;object-fit:contain}
.brand-word{font-weight:700;letter-spacing:-.055em}
.brand-byline{margin-left:auto;color:#6d89af;font-size:10px;font-weight:700;letter-spacing:.15em}
.login-main{grid-template-columns:minmax(0,1.08fr) minmax(340px,.82fr);gap:clamp(40px,6vw,100px);padding-block:45px}
.login-copy .eyebrow{color:#8fbaff}
.login-copy h1{max-width:650px;font-size:clamp(48px,6vw,84px);line-height:1.04;margin-bottom:20px}
.login-copy h1 em{color:#68a8ff}
.login-copy>p{max-width:570px;font-size:17px;line-height:1.62;color:#afc0d7}
.login-rule{display:grid;gap:3px;margin-top:33px;max-width:540px;padding:18px 21px;border-left:3px solid #4b95f5;border-radius:0 12px 12px 0;background:linear-gradient(90deg,rgba(39,103,184,.23),rgba(15,29,48,.45));box-shadow:inset 0 0 0 1px rgba(117,170,255,.12)}
.login-rule span{font-size:10px;letter-spacing:.16em;font-weight:700;color:#87b7f5}
.login-rule strong{font-size:18px;line-height:1.35;color:#f4f8ff}
.login-rule small{font-size:12px;color:#8ea2bc}
.login-points{margin-top:27px}
.login-points span{background:rgba(23,47,79,.42);border-color:rgba(101,159,239,.17);color:#bcd4f4}
.login-card{position:relative;border-color:#2d4360;background:linear-gradient(154deg,rgba(22,36,57,.98),rgba(8,16,28,.99));box-shadow:0 32px 100px #000a,0 0 0 1px rgba(83,142,225,.04)}
.login-card:before{content:"";position:absolute;top:0;left:27px;right:27px;height:2px;background:linear-gradient(90deg,transparent,#4a94f4,transparent)}
.login-card .card-icon{width:52px;height:52px;font-size:15px;font-weight:700;letter-spacing:-.08em;background:#13375d;color:#dbecff}
.login-card .card-icon .brand-logo{width:51px;height:51px}
.login-card h2{font-size:29px}
.login-card .muted{color:#9fb0c5}
.login-card .button.primary{background:#1c72df}
.login-footnote{color:#8ca0b9}
.sidebar{background:#080f1b}
.side-brand{gap:10px}
.side-brand .brand-mark{font-size:17px;min-width:43px;height:39px;border-radius:10px}
.side-brand .logo-frame{width:43px;height:43px;border-radius:10px}
.side-brand .brand-word{font-size:19px}
.space-label{color:#7199c9}
.nav-item.active{background:#152b49;border-color:#2b5486}
.side-bottom{border-color:#244263;background:#10233a;color:#9dc4ef}
.topbar{background:#0b1627d9}
.top-live{color:#91badb}
.top-live i{background:#69c997}
.page-head .eyebrow{color:#7eb4ff}
.mission-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-8px 0 24px;padding:11px 16px;border:1px solid #2d527e;border-radius:10px;background:linear-gradient(90deg,#102c4e,#0e1b2c 75%);color:#bcd9f5;font-size:12px}
.mission-banner strong{color:#e9f4ff;font-size:11px;letter-spacing:.12em}
.form-grid small{display:block;margin-top:6px;color:#8fa7c3;font-size:11px;font-weight:400}
@media(max-width:780px){.brand-byline{display:none}.login-main{padding-block:45px}.login-rule{margin-top:25px}}
@media(max-width:560px){.login-copy h1{font-size:46px}.login-copy>p{font-size:15px}.login-rule strong{font-size:16px}.login-points{margin-top:20px}.login-main{padding-block:35px}.login-card{margin-top:2px}}
