:root{color:#1c2c29;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;background:#f3f5f1;font-family:DM Sans,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #9bb8a3}::selection{color:#17372d;background:#d0e2d4}#root{min-height:100vh}.page-shell,.home-shell{background:radial-gradient(at 4% 95%,#e0e9df 0,#0000 34%),#f3f5f1;flex-direction:column;min-height:100vh;padding:32px clamp(20px,5vw,72px) 24px;display:flex}.login-layout{background:#fff;border:1px solid #e5eae3;border-radius:24px;grid-template-columns:1fr .83fr;width:min(1050px,100%);min-height:min(680px,100vh - 110px);margin:auto;display:grid;overflow:hidden;box-shadow:0 24px 70px #253a2c12}.intro-panel{color:#f3f6ef;background:#193b31;flex-direction:column;justify-content:space-between;padding:clamp(32px,5vw,64px);display:flex;position:relative;overflow:hidden}.intro-panel:after{content:"";pointer-events:none;border:1px solid #ffffff15;border-radius:50%;width:330px;height:330px;position:absolute;bottom:78px;right:-110px;box-shadow:0 0 0 40px #ffffff08,0 0 0 80px #ffffff06}.brand{z-index:1;width:fit-content;color:inherit;letter-spacing:-1px;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:22px;font-weight:800;text-decoration:none;display:inline-flex;position:relative}.brand-mark{color:#193b31;background:#d5e3d3;border-radius:11px;place-items:center;width:32px;height:32px;font-family:Manrope,sans-serif;font-size:21px;font-weight:800;line-height:1;display:grid}.intro-copy{z-index:1;max-width:440px;margin:60px 0;position:relative}.eyebrow{color:#92ad99;letter-spacing:1.5px;font-size:10px;font-weight:700}.intro-copy h1,.welcome-card h1{letter-spacing:-2.4px;margin:20px 0 16px;font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,50px);font-weight:600;line-height:1.12}.intro-copy p{color:#b7c9bd;max-width:355px;font-size:15px;line-height:1.75}.intro-note{z-index:1;color:#b7c9bd;align-items:center;gap:10px;font-size:12px;display:flex;position:relative}.note-icon{color:#b5cfb6;font-size:19px}.form-panel{flex-direction:column;justify-content:center;padding:clamp(36px,5.5vw,76px);display:flex}.form-heading{margin-bottom:35px}.form-heading .eyebrow,.welcome-card .eyebrow{color:#79927e}.form-heading h2{color:#1d3029;letter-spacing:-1.2px;margin:13px 0 7px;font-family:Manrope,sans-serif;font-size:30px;font-weight:700}.form-heading p{color:#849089;font-size:13px}.form-panel form{flex-direction:column;display:flex}.form-panel label{color:#34443d;margin:0 0 8px;font-size:12px;font-weight:600}.form-panel input{color:#21352c;background:#fcfdfb;border:1px solid #e1e7e0;border-radius:9px;outline:none;width:100%;height:48px;margin-bottom:21px;padding:0 14px;font-size:13px;transition:border-color .2s,box-shadow .2s}.form-panel input::placeholder{color:#b0b9b2}.form-panel input:focus{border-color:#769783;box-shadow:0 0 0 3px #7c9c841a}.button{cursor:pointer;border:0;border-radius:9px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button:disabled{cursor:not-allowed;opacity:.65}.button-primary{color:#fff;background:#234b3b;min-height:48px;margin-top:5px}.button-primary:not(:disabled):hover{background:#193d30;transform:translateY(-1px)}.button-quiet{color:#456052;background:#edf2ed;padding:10px 14px}.button-quiet:not(:disabled):hover{background:#e1eae1}.security-note{color:#929e95;text-align:center;margin:22px 0 0;font-size:11px}.security-note span{margin-right:5px;font-size:15px}.form-error{color:#a84238;margin:-7px 0 15px;font-size:12px;line-height:1.5}.spinner{vertical-align:-2px;border:2px solid #ffffff65;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.page-footer{color:#8b978e;letter-spacing:.1px;margin:24px auto 0;font-size:11px}.page-footer span{color:#b6c0b8;margin:0 6px}.home-shell{background:radial-gradient(at 85% 90%,#e0e9df 0,#0000 36%),#f6f7f4}.topbar{justify-content:space-between;align-items:center;width:min(1100px,100%);margin:0 auto;display:flex}.topbar .brand{color:#193b31}.welcome-card{background:#fff;border:1px solid #e4eae3;border-radius:22px;width:min(760px,100%);margin:auto;padding:clamp(36px,7vw,76px);box-shadow:0 20px 60px #253a2c0c}.welcome-card h1{color:#1d3029;max-width:560px;font-size:clamp(34px,5vw,48px)}.welcome-card>p{color:#7e8b82;font-size:15px;line-height:1.7}.session-badge{color:#386147;background:#f2f8f2;border:1px solid #d9e9db;border-radius:999px;align-items:center;gap:8px;width:fit-content;margin-top:32px;padding:9px 13px;font-size:12px;font-weight:600;display:flex}.status-dot{background:#5b9d68;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #5b9d6819}.welcome-card .signed-in-as{color:#909b93;margin-top:14px;font-size:12px}.signed-in-as strong{color:#506358;font-weight:600}.api-check{border-top:1px solid #e8ede7;flex-direction:column;align-items:flex-start;gap:13px;margin-top:34px;padding-top:24px;display:flex}.api-check h2{color:#30443a;margin:0 0 5px;font-family:Manrope,sans-serif;font-size:15px;font-weight:700}.api-check>div>p{color:#87938a;font-size:12px;line-height:1.5}.api-result{border:1px solid #0000;border-radius:8px;margin:0;padding:11px 13px;font-size:12px;line-height:1.55}.api-result--success{color:#376344;background:#f2f8f2;border-color:#d5e8d8}.api-result--warning{color:#796326;background:#fbf8ed;border-color:#eadfbd}.api-result--error{color:#9a443b;background:#fdf5f4;border-color:#f0d6d2}.loading-card{color:#617267;background:#fff;border:1px solid #e4eae3;border-radius:12px;margin:auto;padding:24px 32px;font-size:14px}@media (width<=760px){.page-shell,.home-shell{padding:16px}.login-layout{grid-template-columns:1fr;min-height:auto;margin:12px auto}.intro-panel{min-height:300px;padding:28px}.intro-copy{margin:42px 0 30px}.intro-copy h1{max-width:440px;font-size:clamp(31px,9vw,42px)}.form-panel{padding:36px 28px 32px}.form-heading{margin-bottom:26px}.welcome-card{margin:auto 0;padding:34px 26px}.topbar .button{padding:9px 11px;font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
