@charset "UTF-8";
:root{font-family:"Segoe UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#192b43;font-size:14px;line-height:1.6;font-synthesis:none;background:#f3f5f8}
*{box-sizing:border-box}body,h1,h2,p{margin:0}button,input{font:inherit}button,input{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:3px solid #69b6a677;outline-offset:3px}[hidden]{display:none!important}
.login-shell{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,1.1fr);max-width:1600px;margin:0 auto}
.login-intro{background:#17243c;color:#fff;padding:48px clamp(32px,5vw,80px);display:flex;flex-direction:column;position:relative;overflow:hidden}
.login-intro:after{content:"";position:absolute;width:490px;height:490px;border:1px solid #8ed2b619;border-radius:50%;right:-270px;bottom:-220px;box-shadow:0 0 0 70px #8ed2b604,0 0 0 140px #8ed2b603;pointer-events:none}
.brand{display:flex;align-items:center;gap:13px;position:relative;z-index:1}.brand img{flex:none}.brand h1{font-size:28px;line-height:1.2;font-weight:650;letter-spacing:3px}.brand p{font-size:11px;color:#a2b2c7;margin-top:6px;letter-spacing:2px}
.intro-content{margin:auto 0;padding:74px 0;max-width:380px;position:relative;z-index:1}.intro-label{font-size:11px;letter-spacing:2px;color:#8ecab1}.intro-content h2{font-size:clamp(28px,3vw,39px);line-height:1.65;font-weight:550;letter-spacing:-.7px;margin-top:22px}.intro-description{font-size:13px;line-height:2;color:#a6b4c8;margin-top:23px}.intro-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:31px}.intro-points span{font-size:11px;padding:6px 11px;border:1px solid #ffffff16;color:#c5d8d2;border-radius:6px;background:#ffffff03}.intro-footer{font-size:11px;color:#8496b0;position:relative;z-index:1}
.login-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:64px 36px 25px;background:#f7f9fb}.login-card{width:100%;max-width:390px;margin:auto 0}.login-eyebrow{font-size:11px;letter-spacing:2px;color:#358d76;margin-bottom:9px}.login-card h2{font-size:29px;font-weight:650;line-height:1.5;letter-spacing:-.5px}.login-description{font-size:13px;color:#7b889a;margin-top:8px;margin-bottom:34px}fieldset{padding:0;margin:0;border:0;min-width:0}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.field label{font-size:12px;font-weight:550;color:#687c94}.field input{width:100%;min-width:0;border:1px solid #dfe6ee;border-radius:9px;background:#fff;padding:13px 14px;color:#192b43;transition:border-color .15s;box-shadow:0 2px 4px #192b4302}.field input::placeholder{color:#a1adbc;font-size:12px}.field input:hover{border-color:#c2cdd9}.field input:disabled{color:#7b889a;background:#f0f3f6}
#login-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;border:1px solid #358d76;border-radius:9px;background:#358d76;color:#fff;font-weight:550;font-size:13px;padding:13px 16px;margin-top:8px;cursor:pointer;transition:background .15s;min-height:48px}#login-button:hover{background:#2b7c66}#login-button:disabled{opacity:.65;cursor:wait}.button-spinner{display:none;width:14px;height:14px;border:2px solid #ffffff5e;border-top-color:#fff;border-radius:50%;animation:login-spin .7s linear infinite}.is-busy .button-spinner{display:inline-block}.login-hint{font-size:11px;line-height:1.9;color:#8996a8;border-top:1px solid #e6ebf0;padding-top:20px;margin-top:26px}.login-error{font-size:12px;line-height:1.8;color:#a34f4f;background:#faeeee;border:1px solid #f0dada;padding:11px 13px;border-radius:8px;margin-top:16px;overflow-wrap:anywhere}.login-notice{font-size:12px;line-height:1.8;color:#427a64;background:#ebf5ef;border:1px solid #d8ebdf;padding:11px 13px;border-radius:8px;margin-bottom:20px;overflow-wrap:anywhere}.panel-footer{font-size:10px;color:#9ba7b7;margin-top:50px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript-notice{position:fixed;bottom:0;left:0;right:0;padding:15px;background:#faf0e0;color:#916b28;text-align:center;font-size:12px}
@keyframes login-spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){body{background:#eef2f6}.login-shell{min-height:100svh;box-shadow:0 0 90px #24354f0a}}
@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-intro{padding:27px 28px}.brand img{width:39px;height:39px}.brand h1{font-size:24px}.brand p{font-size:10px}.intro-content{padding:27px 0 0;max-width:420px}.intro-label,.intro-description,.intro-points,.intro-footer{display:none}.intro-content h2{font-size:23px;line-height:1.65;margin:0}.intro-content h2 br{display:none}.login-panel{padding:35px 28px 23px;justify-content:flex-start}.login-card{max-width:420px;margin:0}.login-card h2{font-size:25px}.login-description{margin-bottom:27px}.panel-footer{margin-top:35px}.login-eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Unified physician mark. */
.brand img{border-radius:28%;object-fit:contain}
