:root{font-family:Segoe UI,Arial,sans-serif;color:#151b31;background:#080367;font-synthesis:none;--blue:#100578;--muted:#647088}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #738bff;outline-offset:3px}.access{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:44px 44px}.login-card{width:100%;max-width:398px;background:white;border-radius:14px;overflow:hidden;box-shadow:0 20px 70px #02002c38}.brand{display:flex;align-items:center;justify-content:center;gap:9px;margin:32px 38px 0;padding-bottom:24px;border-bottom:1px solid #ebedf3;color:var(--blue)}.brand strong{font-size:37px;letter-spacing:-4px;font-weight:900}.brand strong span{font-size:23px;letter-spacing:-2px}.brand div{font-size:16px;line-height:1.05;font-weight:900;letter-spacing:-.5px}.form-body{padding:22px 38px 28px}h1{font-size:24px;margin:0 0 5px;letter-spacing:-.5px}.subtitle{font-size:14px;color:var(--muted);margin:0 0 26px}label{display:block;font-size:13px;font-weight:600;margin:18px 0 7px}input{width:100%;border:1px solid #b8c0cf;border-radius:7px;height:43px;padding:0 12px;background:#fff;color:#151b31}input::placeholder{color:#96a1b5;font-size:13px}.password-field{position:relative}.password-field input{padding-right:58px}.password-field button{position:absolute;right:5px;top:5px;height:33px;border:0;border-radius:5px;background:#eef0fa;color:var(--blue);font-size:12px;padding:0 10px}.primary{width:100%;border:0;border-radius:7px;background:var(--blue);color:white;height:44px;margin-top:18px;font-size:14px;font-weight:600}.primary:hover{background:#2519a1}.text-button{display:block;margin:18px auto 0;background:none;border:0;color:var(--blue);text-decoration:underline;font-size:12px;font-weight:600}.card-footer{padding:16px 28px;background:#f2f3f8;color:#4d5b72;font-size:12px;line-height:1.55;border-top:1px solid #e4e6ee}.copyright{font-size:12px;color:#d4d5ee;margin-top:26px}.notice{background:#f3f4fc;padding:12px;font-size:13px;line-height:1.5;border-radius:6px}#login-error,#portal-error{color:#a41c35;font-size:13px;line-height:1.5}.portal{display:grid;grid-template-columns:252px 1fr;min-height:100vh;background:#f5f6fa}aside{background:#100866;color:white;padding:0 18px 20px;display:flex;flex-direction:column}.brand.light{color:white;margin:28px 0 30px;border-color:#ffffff24;padding-bottom:25px}.nav-label{color:#b0afd0;font-size:10px;letter-spacing:1.6px;margin:0 12px 14px}nav{display:flex;flex-direction:column;gap:3px}nav button,.nav-home{display:block;width:100%;border:0;background:transparent;color:#e4e3f3;text-align:left;border-radius:7px;padding:10px 12px;font-size:13px}nav button:hover,.nav-home:hover,nav button.active,.nav-home.active{background:#ffffff17;color:white}.aside-footer{margin-top:auto;padding:32px 12px 0;font-size:12px;color:#dbdaee}.aside-footer span{display:block;color:#a5a1c8;margin-top:6px;font-size:11px}.topbar{min-height:90px;background:white;border-bottom:1px solid #e5e7ef;padding:20px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#6b728a;font-weight:700}.topbar p{font-size:14px;margin:5px 0 0}.account{display:flex;align-items:center;gap:18px;font-size:13px}.account button{background:white;border:1px solid #dfe2ec;padding:9px 12px;border-radius:7px;color:#454c65}.content{padding:38px;max-width:1250px;margin:auto}.content h1{font-size:34px;margin:10px 0}.intro{color:#68728a;font-size:15px;margin-bottom:28px}.migration-banner{display:flex;gap:14px;background:#eeedf9;border:1px solid #dedbf1;border-radius:10px;padding:19px 22px;margin:25px 0 32px}.status-dot{width:9px;height:9px;background:#6860bb;border-radius:50%;flex-shrink:0;margin-top:5px}.migration-banner strong{font-size:14px;color:#312965}.migration-banner p{margin:6px 0 0;font-size:13px;line-height:1.7;color:#625e7d}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.module-card{background:white;border:1px solid #e4e6ef;border-radius:10px;padding:22px;text-align:left;color:#242b42;min-height:145px}.module-card:hover{border-color:#958cc9;box-shadow:0 5px 20px #18104408}.module-card h2{font-size:16px;margin:15px 0 12px}.module-card p{font-size:12px;color:#777f93;margin:0}.module-number{font-size:11px;color:#8d85b1;letter-spacing:1px}.pending{background:white;padding:28px;border:1px solid #e4e6ef;border-radius:10px}.pending h2{font-size:19px}.pending p{color:#68728a;font-size:14px;line-height:1.7}@media(max-width:800px){.portal{grid-template-columns:1fr}aside{padding:12px}.brand.light{margin:6px 0 15px;padding-bottom:15px}.nav-label,.aside-footer{display:none}nav{display:grid;grid-template-columns:repeat(2,1fr)}.topbar{padding:18px}.account{flex-wrap:wrap;gap:8px;justify-content:flex-end}.content{padding:24px 18px}.content h1{font-size:28px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}}
:root .session-message{color:#e8e7ff;font-size:16px;text-align:center;padding:20px}
