
.brand { align-self: flex-start; position: relative; z-index: 1; max-width: 100%; padding: 8px 12px; background: transparent; line-height: 0; }
.brand-logo { display: block; width: 320px; max-width: 100%; height: auto; object-fit: contain; }
.brand:focus-visible, .portal-brand:focus-visible { outline: 2px solid #278a89; outline-offset: 4px; }
.portal-brand { display: inline-flex; max-width: 65%; padding: 5px 10px; background: transparent; line-height: 0; }
.portal-brand .brand-logo { width: 200px; }
@media(max-width:800px) { .brand { padding: 6px 10px; border-radius: 9px; }.brand-logo { width: 230px; } }
*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:#17293a;background:#f6f8fa}a{color:#187c83;text-decoration:none}.access-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.intro{padding:50px 65px;background:radial-gradient(ellipse at 0 100%,#154955,transparent 65%),#122c3b;color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}.intro:after{content:"";position:absolute;right:-140px;top:18%;height:460px;width:460px;border:1px solid #ffffff0d;border-radius:50%;box-shadow:0 0 0 75px #ffffff02,0 0 0 150px #ffffff02;pointer-events:none}.brand{font-size:27px;font-weight:600;color:#fff;display:flex;align-items:center;gap:3px;letter-spacing:-1px}.brand-mark{background:#64d4bd;color:#123b43;border-radius:9px;padding:9px 10px;margin-right:3px;font-size:22px}.brand-dot{height:6px;width:6px;background:#64d4bd;border-radius:50%;margin-left:3px;margin-top:17px}.intro-copy{margin:auto 0;position:relative;z-index:1;padding:60px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;margin-bottom:18px;color:#498483}.intro .eyebrow{color:#7bcfc3}.intro h1{font-size:clamp(35px,3.6vw,58px);line-height:1.12;letter-spacing:-2px;font-weight:650;margin:0 0 24px}.intro h1 span{color:#77d1c1}.intro p{font-size:16px;line-height:1.7;color:#acbec7;max-width:355px}.intro-features{display:grid;gap:22px;margin-top:47px;font-size:13px;color:#d0e0e4}.intro-features div{display:flex;align-items:center;gap:16px}.intro-features i{font-style:normal;font-size:10px;border:1px solid #527482;border-radius:7px;padding:8px;color:#91b9bc}.intro-footer{font-size:11px;color:#92b1bb;display:flex;align-items:center;gap:10px}.status-dot{width:6px;height:6px;background:#7bcfc3;border-radius:50%}.access-main{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:55px 35px;position:relative}.access-card{width:100%;max-width:370px;padding:35px 0}.small-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #d6e3e7;background:#fff;border-radius:13px;color:#278389;font-size:22px;margin-bottom:35px}h2{font-size:31px;letter-spacing:-1.1px;line-height:1.15;margin:0 0 13px;font-weight:650}.muted{font-size:14px;color:#788897;line-height:1.7;margin-bottom:30px}form{margin-top:28px}label{display:block;font-size:12px;font-weight:600;margin:21px 0 9px}input,select,textarea{width:100%;padding:13px 14px;background:#fff;border:1px solid #d9e1e7;border-radius:7px;color:#203446;font:14px inherit;min-height:45px;outline:none}input:focus,select:focus,textarea:focus{border-color:#2c9b9e;box-shadow:0 0 0 3px #2c9b9e13}input::placeholder{color:#a4b0b9}button,.button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 18px;margin-top:26px;background:#173f50;color:#fff;border:0;border-radius:7px;font:600 13px inherit;cursor:pointer;min-height:47px;text-align:center}.button{justify-content:center}button:hover,.button:hover{background:#246072}.secondary{background:transparent!important;color:#4f6e79!important;border:1px solid #d5e0e4!important}.security-note{font-size:11px;line-height:1.7;color:#879aa3;text-align:center;margin-top:26px}footer{font-size:10px;color:#9aa8b1;text-align:center;margin-top:40px}footer span{padding:0 12px;color:#c1cbd2}.error{background:#fff0ef;border:1px solid #ebc2bd;border-radius:7px;font-size:13px;color:#9b4038;padding:14px;margin:20px 0}.secret-box{display:block;word-break:break-all;font-size:15px;padding:15px;border-radius:6px;background:#e9f0f1}.recovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recovery-grid code{padding:10px;background:#e8eff1;border-radius:5px;font-size:12px}.check{display:flex;gap:10px;align-items:center;font-weight:400}.check input{width:16px;height:16px;min-height:0}details{border-bottom:1px solid #dce4e8;padding:15px 0}summary{cursor:pointer;font-size:14px;font-weight:600}details form{margin-top:15px;margin-bottom:20px}@media(max-width:800px){.access-shell{grid-template-columns:1fr}.intro{padding:25px}.intro-copy,.intro-footer{display:none}.brand{font-size:22px}.brand-mark{font-size:18px}.access-main{padding:20px;min-height:80vh}.access-card{padding-top:20px}.small-icon{margin-bottom:20px}footer{margin-top:20px}}

:root.dark body { background: var(--jsc-background); color: var(--jsc-ink); }
.dark :is(a, .eyebrow, .small-icon) { color: var(--jsc-link); }
.dark :is(.muted, .security-note, footer, footer span), .dark input::placeholder { color: var(--jsc-muted); }
.dark :is(.small-icon, .secret-box, .recovery-grid code) { background: var(--jsc-surface); border-color: var(--jsc-border); }
.dark :is(input, select, textarea) {
    background: var(--jsc-surface-raised); border-color: var(--jsc-control-border); color: var(--jsc-ink);
}
.dark :is(input, select, textarea):focus { border-color: var(--jsc-link); }
.dark .secondary { color: var(--jsc-ink) !important; border-color: var(--jsc-control-border) !important; }
.dark .error { background: var(--jsc-error-background); border-color: var(--jsc-border); color: var(--jsc-error-ink); }
.dark details { border-color: var(--jsc-border); }
