:root{font-family:Inter,"Noto Sans SC",system-ui,sans-serif;color:#153529;background:#eaf2ed}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 12%,#d2e8db 0,transparent 32%),linear-gradient(130deg,#eaf3ed,#f6f9f6)}.login-shell{width:min(1040px,calc(100% - 36px));min-height:100vh;margin:auto;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:70px}.intro{padding:30px 0}.brand{display:flex;align-items:center;gap:14px;font-size:23px;letter-spacing:-.04em}.brand span{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;color:#fff;background:#17684e;font-weight:800;box-shadow:0 10px 25px #17684e38}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:#2d8060}.intro .eyebrow{margin:90px 0 12px}.intro h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(44px,6vw,72px);font-weight:500;letter-spacing:-.05em;margin:0}.intro>p:not(.eyebrow){font-size:18px;color:#5f7369}.intro-note{margin-top:115px;font-size:13px;color:#618174}.login-card{padding:42px 40px;background:#fff;border:1px solid #e3eee7;border-radius:24px;box-shadow:0 24px 80px #23453518}.login-card h2{font-size:29px;margin:10px 0 4px;letter-spacing:-.04em}.subtitle,.footer{color:#76877d;font-size:14px}.subtitle{margin:0 0 30px}.footer{margin:26px 0 0;font-size:12px}.login-card label{display:block;margin:19px 0 8px;font-weight:600;font-size:14px}.login-card input:not([type=hidden]){width:100%;height:48px;border:1px solid #cbdcd1;border-radius:10px;padding:0 14px;font:inherit;background:#fcfefd;outline:none}.login-card input:focus{border-color:#278362;box-shadow:0 0 0 3px #2783621e}.password-field{position:relative}.password-field input{padding-right:74px!important}.reveal{position:absolute;right:8px;top:8px;border:0;background:transparent;color:#246f54;height:32px;padding:0 8px;cursor:pointer}.submit{width:100%;height:50px;border:0;border-radius:10px;margin-top:28px;background:#17684e;color:white;font:inherit;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px}.submit:hover{background:#0f563f}.submit.secondary{margin-top:12px;background:#edf5ef;color:#17684e;border:1px solid #cbdcd1}.submit.secondary:hover{background:#dcece1}.error{padding:12px 14px;border-radius:8px;background:#fff0ef;color:#ad2f26;font-size:14px}@media(max-width:760px){.login-shell{display:block;min-height:100vh;padding:24px 0 40px}.intro{padding:0}.intro .eyebrow,.intro h1,.intro>p:not(.eyebrow),.intro-note{display:none}.login-card{margin-top:42px;padding:32px 25px}}
[hidden]{display:none!important}.brand img{width:46px;height:46px;object-fit:contain}.submit:disabled{opacity:.65;cursor:wait}.submit:focus-visible,.reveal:focus-visible,a:focus-visible{outline:3px solid #68b5a0;outline-offset:3px}.submit{text-decoration:none}.spinner{width:18px;height:18px;border:2px solid #ffffff65;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.request-status{font-size:13px;color:#53746a;margin:12px 0 0}.scope-list{list-style:none;padding:0;margin:22px 0}.scope-list li{padding:14px 0;border-bottom:1px solid #edf2ef;display:grid;grid-template-columns:1fr auto;gap:5px 12px}.scope-list strong{font-size:14px}.scope-list span{grid-column:1;color:#6a8075;font-size:13px;line-height:1.5}.scope-list code{grid-column:2;grid-row:1;color:#658178;font-size:11px;background:#f0f6f3;padding:4px 7px;border-radius:5px}.consent-card{padding:34px}.request-reference{font-size:11px;color:#7a8c85;overflow-wrap:anywhere;margin-top:22px}.error-card .subtitle{line-height:1.8;margin-top:18px}.account-shell{max-width:480px;margin:15vh auto}.account-shell h1{font-size:26px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
.native-restart{display:block;margin-top:14px;padding:12px;border:1px solid #bfddd1;border-radius:8px;text-align:center;color:#146d52;text-decoration:none;font-size:14px;font-weight:650}.native-restart[hidden]{display:none}
