body{background:#f5f7fb}.card{border:0;box-shadow:0 4px 14px rgba(0,0,0,.08)}.exam-area{user-select:none;-webkit-user-select:none}.watermark{position:fixed;opacity:.08;font-size:46px;transform:rotate(-25deg);top:40%;left:10%;pointer-events:none}.badge-lg{font-size:1rem}.danger-flash{animation:flash 1s infinite}@keyframes flash{50%{opacity:.3}}

:root{--ink:#172d42;--accent:#087f7b;--line:#dce7eb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:#f3f7fa}.card{border-radius:18px}.btn{border-radius:10px;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #16364b24}a,input,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #e8ac42;outline-offset:4px}.login-page{margin:0;min-height:100vh;display:grid;place-items:center;padding:40px 24px;background:radial-gradient(ellipse at 10% 10%,#d6ede8,transparent 55%),#edf3f6}.login-shell{width:min(1080px,100%);display:grid;grid-template-columns:1.08fr 1fr;background:white;border:1px solid #ffffff;border-radius:28px;overflow:hidden;box-shadow:0 24px 90px #153f531a;animation:arrive .65s ease both}.login-story{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:680px;padding:42px;color:white;background:linear-gradient(145deg,#173e50,#075c60)}.login-story:after{content:"";position:absolute;width:380px;height:380px;border:1px solid #ffffff18;border-radius:50%;bottom:-200px;right:-90px;box-shadow:0 0 0 45px #ffffff05,0 0 0 90px #ffffff04;pointer-events:none}.brand{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:800;letter-spacing:2px;text-decoration:none;color:white}.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:#ffffff20;border-radius:11px;letter-spacing:0}.brand-light{font-weight:400}.story-content{margin:auto 0;padding:58px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px}.login-story .eyebrow{color:#99d8cc}.login-story h1{font-size:clamp(38px,4.2vw,56px);line-height:1.12;font-weight:650;letter-spacing:-2px;margin:22px 0}.login-story h1 em{font-style:normal;color:#9be3ce}.login-story p{line-height:1.7;color:#c3d9de;max-width:340px}.story-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.story-tags span{border:1px solid #ffffff30;border-radius:30px;padding:9px 12px;font-size:11px}.login-story footer{font-size:12px;line-height:1.9;color:#bbd4d8}.login-panel{padding:42px 48px;display:flex;flex-direction:column}.role-tabs{display:flex;background:#f0f5f7;padding:5px;border-radius:12px;gap:4px}.role-tabs a{flex:1;text-align:center;color:#617482;text-decoration:none;padding:12px 5px;border-radius:9px;font-size:13px;font-weight:650;transition:background .2s,transform .2s}.role-tabs a:hover{background:#e0eeed;transform:translateY(-2px)}.role-tabs a[aria-current]{background:white;color:#087f7b;box-shadow:0 2px 8px #123e4e12}.form-heading{margin:48px 0 24px}.form-heading .eyebrow{color:#087f7b}.form-heading h2{font-size:31px;letter-spacing:-1px;margin:12px 0}.form-heading p,.login-help p{font-size:14px;color:#6c7f8b;line-height:1.7}.login-form label{display:block;font-size:13px;font-weight:650;margin:16px 0 9px}.login-form input{width:100%;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;font:inherit;font-size:14px;transition:border .2s,box-shadow .2s}.login-form input:focus{border-color:#087f7b;box-shadow:0 0 0 3px #087f7b15}.login-form small{display:block;margin-top:10px;font-size:12px;color:#6c7f8b}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.password-wrap button{position:absolute;right:10px;top:13px;background:none;border:0;color:#087f7b;cursor:pointer;padding:4px}.login-submit{width:100%;margin-top:27px;border:0;border-radius:11px;padding:16px;background:#087f7b;color:white;font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.login-submit span{float:right}.login-submit:hover{transform:translateY(-3px);background:#066964;box-shadow:0 8px 20px #087f7b35}.login-help{margin-top:28px;padding:18px;background:#f1f8f7;border:1px solid #e1eeeb;border-radius:12px;font-size:13px}.login-help p{margin:6px 0 0;font-size:12px}.portal-note{margin:auto 0 0;padding-top:28px;text-align:center;font-size:11px;color:#81919c}.login-error{background:#fff0f0;border:1px solid #f5cece;color:#9d2838;border-radius:10px;padding:13px;font-size:13px}.exam-tools{position:sticky;top:0;z-index:5;background:#fff;padding:16px;border:1px solid var(--line);border-radius:14px;margin-bottom:20px;box-shadow:0 6px 20px #173e5010}.question-nav{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.question-nav a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #cad8df;border-radius:8px;text-decoration:none;color:#344b5f;background:#f5f8fa}.question-nav a.answered{background:#087f7b;color:white}.question-nav a.flagged{outline:3px solid #e8ac42}.exam-question{scroll-margin-top:190px}.exam-question label{padding:12px;margin:6px 0;border:1px solid var(--line);border-radius:10px;cursor:pointer}.exam-question label:has(input:checked){border-color:#087f7b;background:#ecf8f5}.flag-button{align-self:flex-start;font-size:12px;margin-top:12px}.save-error{color:#b33141}progress{width:100%;height:8px;accent-color:#087f7b}@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.login-page{padding:16px}.login-shell{grid-template-columns:1fr}.login-story{min-height:0;padding:25px}.story-content{padding:24px 0 10px}.login-story h1{font-size:34px}.login-story h1 br{display:none}.story-tags,.login-story footer{display:none}.login-panel{padding:28px}.form-heading{margin-top:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
