/* The login shares the entrance's forest palette, warm light and supplied
   vector mark. Decoration never captures input or delays sign-in. */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;background:#0e1712;color:#f0f3e9;font:14px Manrope,system-ui,sans-serif}.login-scene{min-height:100dvh;padding:32px 44px;display:flex;flex-direction:column;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#243b28 0%,#152219 42%,#0d1611 84%)}header,footer{display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:1}header>span,footer{font-size:11px;color:#94a48f}.wordmark{width:128px;height:42px;object-fit:contain}.login-card{position:relative;z-index:1;text-align:center;width:min(100%,390px);margin:auto;padding:30px 8px 34px}.mascot{border-radius:22px;box-shadow:0 12px 40px #0004;margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#a7bc96;margin:0 0 14px}h1{font-size:38px;letter-spacing:-1.7px;line-height:1.15;font-weight:500;margin:0 0 14px}.intro{color:#aebca7;line-height:1.8;margin:0 0 28px}form{text-align:left}label{display:block;font-size:12px;color:#c8d3bf;margin-bottom:9px}input,button{font:inherit;width:100%;border-radius:12px;min-height:48px}input{background:#ffffff08;color:#f2f6ea;border:1px solid #5a6a514f;padding:13px 15px;outline:none}input:focus{border-color:#bdde86;box-shadow:0 0 0 3px #bfdf8415}input::placeholder{color:#788871}button{border:1px solid #57684c;background:#ffffff08;color:inherit;cursor:pointer;transition:background .18s,transform .18s}button:hover{background:#ffffff12}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible{outline:2px solid #d0ed9c;outline-offset:4px}button:disabled{opacity:.55;cursor:wait}.primary{margin-top:12px;background:#d3ef9d;color:#24341b;border-color:#d3ef9d;font-weight:700;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.primary:hover{background:#e1f6ba}.social{margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:12px}.social svg{width:19px;height:19px}.login-divider{display:flex;align-items:center;gap:12px;color:#85967b;font-size:11px;margin:8px 0 20px}.login-divider:before,.login-divider:after{content:'';height:1px;background:#53654855;flex:1}[hidden]{display:none!important}#login-status{font-size:11px;color:#96a58d;line-height:1.7;min-height:38px;margin:17px 0 0}#login-status.error{color:#f1b9a8}.back{display:inline-block;color:#d3ef9d;margin-top:14px;text-decoration:none}.ambient{position:absolute;inset:0;pointer-events:none}.ambient span{position:absolute;width:5px;height:5px;border-radius:50%;background:#d5f8a4;box-shadow:0 0 18px #d5f8a488;opacity:.28;animation:drift 14s ease-in-out infinite}.ambient span:nth-child(1){left:24%;top:36%}.ambient span:nth-child(2){left:77%;top:62%;animation-delay:-5s}.ambient span:nth-child(3){left:70%;top:25%;animation-delay:-9s}@keyframes drift{50%{transform:translateY(-22px);opacity:.55}}@media(max-height:700px){.login-scene{padding:22px 34px}.login-card{padding:20px 8px}.mascot{width:58px;height:58px;margin-bottom:14px}h1{font-size:32px}.intro{margin-bottom:20px}}@media(max-width:600px){.login-scene{padding:24px}header>span,footer>span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Give the brand story room while keeping sign-in immediately accessible. */
.login-scene{padding:30px clamp(28px,5vw,84px)}.login-card{width:100%;margin:0;padding:0}.welcome-layout{flex:1}.login-card.welcome-copy{text-align:left}.login-card #login-status{min-height:24px}
