/* SOS ONCO ANALYTIC — portal independently styled */
.soa-core{--onco-navy:#04132b;--onco-2:#0b2c56;--onco-3:#123d6b;--onco-light:#d8ebfa;--onco-muted:#adc6dd;--onco-red:#f01837;--onco-cyan:#82d9fa;position:relative;isolation:isolate;min-height:100vh;overflow:hidden;background:#061831;color:#f5f9ff;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.55}
.soa-core *{box-sizing:border-box}
.soa-core :is(h1,h2,h3,p){margin-top:0;text-transform:none!important;font-family:Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:normal!important}
.soa-core :is(h1,h2,h3){color:#fff!important;line-height:1.16!important;font-weight:800!important}
.soa-core :is(p,small){color:var(--onco-light)!important}
.soa-core a{color:#8bdcff;text-decoration:none}
.soa-core button,.soa-core input,.soa-core textarea,.soa-core select{font:inherit}
.soa-core button{cursor:pointer}
.soa-core-bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 75% 12%,rgba(24,94,160,.55),transparent 34%),radial-gradient(circle at 3% 60%,rgba(231,29,62,.1),transparent 37%),linear-gradient(135deg,#041023 5%,#061d3d 50%,#081c36 100%)}
.soa-core-bg:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(133,202,247,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(133,202,247,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,black)}
.soa-core-shell{position:relative;max-width:1240px;padding:0 30px;margin:0 auto}
.soa-core-topbar{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid rgba(255,255,255,.14)}
.soa-core-brand{display:flex;align-items:center;gap:13px}
.soa-core-brand img{width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 8px 16px #0008)}
.soa-core-brand strong{display:block;font-size:19px;font-weight:900;color:#fff;letter-spacing:.04em}
.soa-core-brand span{display:block;color:#91c7ec;font-size:10px;letter-spacing:.17em;font-weight:800}
.soa-core-top-status{font-size:10px;color:#d2ebf9;font-weight:800;letter-spacing:.14em;display:flex;align-items:center;gap:10px}
.soa-core-top-status i{display:block;width:9px;height:9px;background:#49d6be;border-radius:50%;box-shadow:0 0 15px #49d6be88}
.soa-core-notice{border:1px solid rgba(134,214,247,.5);background:rgba(11,71,117,.4);padding:13px 20px;border-radius:10px;margin:18px 0;color:#fff!important;font-size:13px}
.soa-core-login-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:80px;align-items:center;padding:70px 0 95px}
.soa-core-copy{max-width:610px}
.soa-core-pill{display:inline-block;border-radius:100px;border:1px solid rgba(130,217,250,.3);background:#0e2a4da8;color:#95daff;padding:8px 17px;letter-spacing:.13em;font-size:10px;font-weight:900;margin-bottom:27px}
.soa-core-copy h1{font-size:clamp(39px,4.5vw,67px)!important;line-height:1.11!important;margin-bottom:25px}
.soa-core-copy h1 em{font-style:normal;color:#ff5069!important}
.soa-core-copy>p{font-size:17px;line-height:1.85;max-width:565px;color:#c9deed!important;margin-bottom:30px}
.soa-core-feature{display:flex;align-items:center;gap:12px;font-size:13px;color:#d7e6f5;padding:12px 0;border-bottom:1px solid #eaf5ff18}
.soa-core-feature span{color:#6dcbed;font-size:18px}
.soa-core-panel{border:1px solid rgba(126,184,224,.24);background:linear-gradient(160deg,rgba(17,52,91,.98),rgba(5,22,48,.98));box-shadow:0 30px 80px rgba(0,0,0,.36);border-radius:22px;padding:35px 37px}
.soa-core-login{max-width:500px;width:100%;margin-left:auto}
.soa-core-eyebrow{font-size:10px;color:#8cd6f6;font-weight:900;letter-spacing:.17em;display:block;margin-bottom:11px}
.soa-core-panel h2{font-size:30px!important;margin-bottom:12px}
.soa-core-panel>p{font-size:13px;line-height:1.7;color:#bfd3e5!important;margin-bottom:24px}
.soa-core :is(input,textarea,select){display:block;width:100%;min-height:45px;border:1px solid #416589!important;border-radius:9px;padding:11px 13px;background:#061b37!important;color:#f5f9ff!important;outline:none;box-shadow:none!important}
.soa-core :is(input,textarea,select):focus{border-color:#83dbff!important;box-shadow:0 0 0 3px #83dbff25!important}
.soa-core input::placeholder,.soa-core textarea::placeholder{color:#91a9c2!important}
.soa-core :is(label){display:block;color:#e4efff!important;font-size:12px;font-weight:800;margin:13px 0 8px}
.soa-core .soa-core-otp{text-align:center;letter-spacing:.36em!important;font-size:25px!important;font-weight:800!important;font-variant-numeric:tabular-nums;padding:10px!important}
.soa-core-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px auto 24px;max-width:320px}
.soa-core-keypad button{min-height:52px;border:1px solid rgba(143,199,239,.26);border-radius:12px;background:#163c65;color:#f4faff!important;font-size:20px!important;font-weight:750;transition:background .15s,transform .15s}
.soa-core-keypad button:hover{background:#245b8b}
.soa-core-keypad button:active{transform:scale(.97)}
.soa-core-primary{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:15px 20px;background:linear-gradient(90deg,#e6132e,#a8132a);border:1px solid #ff4b64;border-radius:10px;color:#fff!important;font-weight:850!important;box-shadow:0 14px 35px #e6132e30}
.soa-core-primary:hover{background:linear-gradient(90deg,#fc2947,#cb1533)}
.soa-core-primary:focus-visible,.soa-core button:focus-visible{outline:3px solid #96e7ff;outline-offset:3px}
.soa-core-login>small{display:block;margin-top:18px;color:#abc6d9!important;font-size:11px;text-align:center}
.soa-core-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;color:#9ab5cb;font-size:10px;letter-spacing:.11em;border-top:1px solid rgba(255,255,255,.12);padding:25px 0 32px}
.soa-core-setup{max-width:680px;margin:70px auto}
.soa-core-workspace{padding:46px 0 70px}
.soa-core-userbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:34px}
.soa-core-userbar h1{font-size:clamp(30px,3vw,45px)!important;margin-bottom:9px}
.soa-core-userbar p{margin-bottom:0}
.soa-core-logout{border:1px solid #8cbad480;background:#123858;color:#fff!important;border-radius:8px;padding:11px 19px;white-space:nowrap}
.soa-core-logout:hover{background:#235678}
.soa-core-warning{background:#54311c;border:1px solid #d99b54;border-radius:10px;padding:13px 17px;color:#fff;margin-bottom:18px}
.soa-core-work-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;align-items:start}
.soa-core-stack>label{margin-top:14px}
.soa-core-stack input,.soa-core-stack textarea,.soa-core-stack select{margin-top:7px}
.soa-core-stack .soa-core-primary{margin-top:18px}
.soa-core-records{border-top:1px solid #ffffff25;margin-top:29px;padding-top:21px}
.soa-core-records>strong{color:#f4f9ff;display:block;margin-bottom:13px}
.soa-core-records details{border:1px solid #779cbd44;border-radius:9px;margin-bottom:9px;padding:12px}
.soa-core-records summary{cursor:pointer;font-weight:700;color:#f1f8ff}
.soa-core-records summary small{font-weight:400;color:#9dcae4!important;margin-left:10px}
.soa-core-record-body{padding-top:14px;color:#dbeeff;white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid #ffffff20;margin-top:12px;font-size:13px}
@media(max-width:980px){.soa-core-login-grid{gap:35px;grid-template-columns:1fr 1fr}.soa-core-panel{padding:26px}.soa-core-copy h1{font-size:42px!important}}
@media(max-width:760px){.soa-core-shell{padding:0 18px}.soa-core-topbar{min-height:83px}.soa-core-brand img{width:55px;height:55px}.soa-core-brand strong{font-size:14px}.soa-core-brand span{font-size:8px}.soa-core-top-status{display:none}.soa-core-login-grid,.soa-core-work-grid{grid-template-columns:1fr}.soa-core-login-grid{padding:42px 0 60px;gap:30px}.soa-core-copy h1{font-size:clamp(32px,9vw,46px)!important}.soa-core-copy>p{font-size:14px}.soa-core-login{max-width:none}.soa-core-panel{padding:25px 20px;border-radius:17px}.soa-core-panel h2{font-size:25px!important}.soa-core-userbar{align-items:flex-start;flex-direction:column}.soa-core-foot{font-size:9px}.soa-core-keypad button{min-height:47px}}
@media(prefers-reduced-motion:reduce){.soa-core-keypad button{transition:none}}

.soa-core .soa-core-legacy{margin-top:22px;padding:12px 15px;background:rgba(255,255,255,.04);border:1px solid rgba(120,165,205,.28);border-radius:10px}.soa-core .soa-core-legacy summary{cursor:pointer;color:#c7dcef;font-size:12px}.soa-core .soa-core-legacy .soa-core-auth-form{padding-top:18px}.soa-core .soa-core-otp{letter-spacing:.15em!important}
