.login{background:var(--background);min-height:100vh;color:var(--ink);place-items:center;padding:24px 16px;display:grid}.login-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;gap:16px;width:100%;max-width:400px;padding:32px;display:grid}.login-card label{color:var(--muted);gap:6px;font-size:14px;display:grid}.login-card input{border:1px solid var(--border);background:var(--background);color:var(--ink);border-radius:12px;padding:12px 14px}.login-submit{background:var(--brand);color:#fff;border-radius:12px;padding:12px 16px;font-weight:600}.login-submit:disabled{opacity:.6;cursor:progress}.login-note{color:var(--muted);margin:0}.login-error{color:#c0392b;margin:0}.google-sign-in{gap:12px;display:grid}.google-button{width:100%;min-height:44px}.google-button[inert]{opacity:.6}.google-retry{color:var(--brand);text-align:left;font-size:14px}.login-divider{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.login{background:0 0;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:60px;max-width:1180px;margin:auto;padding:60px}.login-story{background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 40%,var(--surface)));border:1px solid var(--border);border-radius:32px;flex-direction:column;justify-content:space-between;align-self:stretch;align-items:flex-start;gap:32px;width:100%;min-width:0;padding:36px;display:flex;position:relative;overflow:hidden}.login-logo{object-fit:contain;width:120px}.login-story h2{letter-spacing:-1.9px;font-size:48px;line-height:1.08}.login-story p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.8}.login-roo{background:radial-gradient(circle, color-mix(in srgb,var(--brand) 9%,transparent) 0 43%,transparent 44%);place-items:center;width:100%;display:grid}.login-roo img{object-fit:contain;max-width:100%;transform:rotate(-5deg)}.login-story-foot{color:var(--brand-ink);font-size:11px}.login-card{min-width:0;max-width:380px;box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr);gap:20px;padding:0}.login-form-heading h1{letter-spacing:-1.1px;font-size:34px}.login-card label{color:var(--ink);gap:9px;font-size:12px}.login-card input{background:var(--surface);min-height:48px}.login-submit{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 90%,#000),var(--brand-variant));min-height:48px;font-size:13px}.login-note{font-size:12px}@media (max-width:850px){.login{gap:36px;padding:36px}.login-story{padding:28px}.login-story h2{font-size:38px}}@media (max-width:600px){.login{flex-direction:column;justify-content:center;gap:32px;min-height:100dvh;padding:26px 24px;display:flex}.login-story{background:0 0;border:0;align-self:auto;padding:0}.login-story>div,.login-story-foot{display:none}.login-logo{width:110px;height:36px}.login-card{width:100%;max-width:380px}}.login-story{background:linear-gradient(155deg,color-mix(in srgb,var(--accent) 80%,var(--surface)),var(--surface));border-radius:30px;padding:36px}.login-story h2{letter-spacing:-1.8px;font-size:46px}.login-roo{isolation:isolate;background:0 0;min-height:245px;position:relative}.login-roo img{z-index:1;width:270px;height:220px;position:relative;transform:rotate(-5deg)}.login-orbit{border:1px solid color-mix(in srgb,var(--brand) 14%,transparent);background:color-mix(in srgb,var(--brand) 5%,transparent);border-radius:50%;width:210px;height:210px;position:absolute}.login-orbit.orbit-outer{background:0 0;border-style:dashed;width:285px;height:285px;transform:rotate(15deg)}.login-cue{z-index:2;border:1px solid var(--border);background:var(--surface);box-shadow:var(--soft-shadow);color:var(--brand-ink);border-radius:12px;padding:9px 13px;font-size:11px;position:absolute}.cue-plan{top:12px;left:0;transform:rotate(-8deg)}.cue-grow{bottom:10px;right:0;transform:rotate(6deg)}.login-form-heading{margin-bottom:6px}.login-form-heading h1{font-size:36px}.login-card{gap:22px}@media (max-width:850px){.login-story{padding:28px}.login-story h2{font-size:36px}.login-cue{padding:8px;font-size:10px}.cue-plan{left:-8px}.cue-grow{right:-8px}}@media (max-width:600px){.login-story{background:0 0;border-radius:0;padding:0}.login-form-heading h1{font-size:34px}}
