@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#1c2925;background:#f5f6f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-optical-sizing:auto;font-weight:400;--forest: #123f35;--forest-dark: #0c3029;--gold: #d5aa62;--muted: #718079;--line: #e5e9e4}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(300px,.95fr) minmax(400px,1.05fr)}.welcome-panel{min-height:100vh;padding:38px clamp(28px,5vw,76px);color:#fff;background:radial-gradient(circle at 20% 75%,#1c5949 0,transparent 36%),linear-gradient(145deg,#17483d,#0c3029 76%);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-weight:700;font-size:16px;letter-spacing:-.3px}.brand-mark{height:36px;width:36px;display:grid;place-items:center;background:#ffffff1f;color:#f0c578;border:1px solid rgba(255,255,255,.12);border-radius:11px}.welcome-copy{margin:auto 0;max-width:500px;padding:70px 0}.eyebrow{margin:0 0 14px;font-size:11px;letter-spacing:1.5px;font-weight:700;color:#8a9b93}.eyebrow.light{color:#ddbd7d}.welcome-copy h1,.home-content h1{font:800 clamp(42px,5vw,68px)/1.07 Manrope,sans-serif;letter-spacing:-2.5px;margin:0 0 24px}.welcome-copy>p:not(.eyebrow){color:#d1ded7;max-width:390px;font-size:17px;line-height:1.65}.promise{display:flex;gap:10px;align-items:center;margin-top:36px;font-size:14px;color:#e6eee8}.promise svg{color:#e2bc72}.welcome-footer{color:#b2c5bb;font-size:13px}.login-panel{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:52px 32px 30px;position:relative}.login-card{width:min(100%,390px);padding:20px 0}.icon-circle{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;color:var(--forest);background:#e8eee9;margin-bottom:25px}.login-card h2,.setup-card h1{font:700 32px/1.2 Manrope,sans-serif;letter-spacing:-1px;margin:0 0 10px}.muted{color:var(--muted);line-height:1.65;margin:0 0 29px}.login-card form{display:flex;flex-direction:column;gap:10px}.login-card label{font-size:13px;font-weight:700;margin-top:6px}.login-card input{height:52px;border-radius:10px;border:1px solid #d9e0da;background:#fff;padding:0 15px;outline:none;color:#23312b}.login-card input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #123f3515}.primary-button{height:52px;border:0;border-radius:10px;color:#fff;background:var(--forest);font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:8px;cursor:pointer}.primary-button:hover{background:var(--forest-dark)}.primary-button:disabled{opacity:.65;cursor:wait}.notice{margin:16px 0 0;padding:12px;display:flex;align-items:flex-start;gap:8px;border-radius:9px;font-size:13px;line-height:1.5}.notice.success{background:#edf6f0;color:#236340}.notice.error{background:#fff0ed;color:#a04435}.notice svg{flex:0 0 auto;margin-top:1px}.login-foot{margin-top:22px;padding-top:19px;border-top:1px solid var(--line);color:#79877f;display:flex;gap:8px;font-size:12px}.login-bottom{position:absolute;bottom:24px;color:#8a958e;font-size:12px;text-align:center}.mobile-brand{display:none}.setup-screen{min-height:100vh;display:flex;flex-direction:column;gap:68px;padding:32px;background:#f5f6f2}.setup-screen>.brand{color:var(--forest)}.setup-card{margin:auto;width:min(100%,440px);background:#fff;padding:32px;border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 45px #172f2010}.setup-card .muted{margin:12px 0 0}.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted)}.loader{width:28px;height:28px;border:3px solid #dce4dd;border-top-color:var(--forest);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.home-screen{min-height:100vh;background:#f5f6f2}.topbar{height:76px;max-width:1120px;padding:0 30px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.topbar .brand-mark{background:var(--forest);color:#f0c578}.text-button{background:transparent;border:0;color:var(--forest);font-weight:700;padding:12px;cursor:pointer}.home-content{max-width:850px;margin:0 auto;padding:90px 30px}.hello-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}.status-pill{color:#47705f;background:#e8eee9;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:700;letter-spacing:1px;display:flex;align-items:center;gap:7px}.status-pill span{background:#4ba778;width:7px;height:7px;border-radius:50%}.home-content h1{font-size:clamp(34px,5vw,54px);letter-spacing:-1.8px;margin-bottom:12px}.home-content>.muted{margin-bottom:30px}.feature-card,.pending-card{display:flex;gap:14px;align-items:flex-start;padding:20px;border:1px solid #dfe7df;border-radius:14px;background:#fff;color:var(--forest);max-width:520px}.pending-card{background:#fbf8f0;border-color:#eee2c6;color:#7d632f}.feature-card div,.pending-card div{display:grid;gap:5px}.feature-card strong,.pending-card strong{font-size:14px}.feature-card span,.pending-card span{font-size:13px;color:#77827c;line-height:1.5}.next-step{color:#718079;font-size:14px;line-height:1.6;margin-top:24px;max-width:520px}@media(max-width:760px){.login-layout{display:block;background:#f5f6f2}.welcome-panel{display:none}.login-panel{min-height:100vh;justify-content:flex-start;padding:max(26px,env(safe-area-inset-top)) 23px max(28px,env(safe-area-inset-bottom))}.mobile-brand{display:block;width:100%;margin-bottom:48px}.mobile-brand .brand{color:var(--forest)}.mobile-brand .brand-mark{background:var(--forest)}.login-card{margin:auto 0;padding:0 0 52px}.login-card h2{font-size:29px}.login-bottom{bottom:max(19px,env(safe-area-inset-bottom));left:20px;right:20px}.topbar{padding:0 18px;height:68px}.topbar .brand{font-size:14px}.home-content{padding:50px 22px}.setup-screen{padding:24px}.setup-card{padding:26px}}
