.auth-page{min-height:100dvh;color:var(--text-normal);background:#0b0a0d;position:relative;overflow-x:hidden}.auth-scene{z-index:0;animation:auth-fade .9s var(--ease-out) backwards}.auth-column{z-index:1;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:40px 20px 32px;display:flex;position:relative}.auth-constellation{opacity:.85}.auth-edges line{stroke:#e9e4dc26;stroke-width:1.1px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:auth-draw 1.6s var(--ease-out) forwards}@keyframes auth-draw{to{stroke-dashoffset:0}}.auth-node{opacity:0;transform-box:fill-box;transform-origin:50%;animation:auth-node-in .9s var(--ease-spring,var(--ease-out)) forwards}@keyframes auth-node-in{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.auth-glow-stop.auth-chat{stop-color:#e2946a}.auth-glow-stop.auth-source{stop-color:#7fb98f}.auth-glow-stop.auth-goal{stop-color:#d9b86a}.auth-glow-stop.auth-shared{stop-color:#7fb0dc}.auth-chat .auth-dot{fill:#f3c7a6}.auth-source .auth-dot{fill:#a9dab5}.auth-goal .auth-dot{fill:#f2d690}.auth-shared .auth-dot{fill:#b4d4f2}.auth-folder-ring{fill:#100e12b3;stroke:#e9e4dc57;stroke-width:1.3px}.auth-glow-stop.auth-violet{stop-color:#9d7cf0}.auth-folder-ring.auth-violet{fill:#9d7cf03d;stroke:#c4acffe6;stroke-width:1.4px}.auth-violet-orbit{fill:none;stroke:#b89cff59;stroke-width:.8px;stroke-dasharray:1.2 3.2;stroke-linecap:round}.auth-violet-core{fill:#f1eaff}.auth-beacon{opacity:0;width:0;height:0;animation:.9s cubic-bezier(.33,1,.68,1) forwards auth-beacon-in;position:absolute}@keyframes auth-beacon-in{to{opacity:1}}.auth-beacon-halo,.auth-beacon-spikes{will-change:transform, opacity;position:absolute;top:0;left:0}.auth-beacon-halo{background:radial-gradient(circle,#aa8cff42 0%,#9d7cf017 42%,#0000 70%);border-radius:50%;width:64px;height:64px;margin:-32px 0 0 -32px;animation:8s ease-in-out infinite auth-beacon-breathe}@keyframes auth-beacon-breathe{0%,to{opacity:.7;transform:scale(.95)}50%{opacity:.95;transform:scale(1.05)}}.auth-beacon-spikes{background:linear-gradient(90deg,#0000,#e2d6ff80 50%,#0000) 50%/100% 1px no-repeat,linear-gradient(#0000,#e2d6ff80 50%,#0000) 50%/1px 100% no-repeat;width:54px;height:54px;margin:-27px 0 0 -27px;animation:110s linear infinite auth-beacon-turn}.auth-beacon-spikes:after{content:"";background:linear-gradient(90deg,#0000,#cebcff47 50%,#0000) 50%/100% 1px no-repeat,linear-gradient(#0000,#cebcff47 50%,#0000) 50%/1px 100% no-repeat;position:absolute;inset:22%;transform:rotate(45deg)}@keyframes auth-beacon-turn{to{transform:rotate(360deg)}}.auth-arch-star{opacity:0;transform-box:fill-box;transform-origin:50%;animation:.7s cubic-bezier(.33,1,.68,1) both auth-star-light,1s cubic-bezier(.37,0,.63,1) forwards auth-star-ignite}@keyframes auth-star-light{0%{opacity:0;filter:brightness();transform:scale(.3)}30%{opacity:1;filter:brightness(1.7);transform:scale(1.55)}to{opacity:1;filter:brightness();transform:scale(1)}}@keyframes auth-star-ignite{0%{opacity:1;filter:brightness();transform:scale(1)}30%{opacity:1;filter:brightness(1.5);transform:scale(1.35)}to{opacity:1;filter:brightness();transform:scale(1)}}.auth-edges .auth-arch-line{animation-name:auth-draw,auth-arch-settle,auth-arch-glow;animation-timing-function:linear,cubic-bezier(.33,1,.68,1),cubic-bezier(.33,1,.68,1);animation-fill-mode:forwards,both,forwards}@keyframes auth-arch-settle{0%{stroke:#ffdec4cc;stroke-width:1.5px}to{stroke:#e9e4dc2e;stroke-width:1.1px}}@keyframes auth-arch-glow{0%{stroke:#e9e4dc2e;stroke-width:1.1px}30%{stroke:#ffd6b899;stroke-width:1.4px}to{stroke:#e9e4dc33;stroke-width:1.1px}}.auth-spark{opacity:0;animation:.4s linear auth-spark}@keyframes auth-spark{0%{opacity:1;transform:translate(0)}to{opacity:1;transform:translate(var(--dx), var(--dy))}}.auth-spark-last{animation-name:auth-spark-last}@keyframes auth-spark-last{0%{opacity:1;transform:translate(0)}75%{opacity:1}to{opacity:0;transform:translate(var(--dx), var(--dy))}}.auth-spark-halo{fill:#f0ab8447}.auth-spark-core{fill:#fff3e6}.auth-constellation[data-drawn] .auth-edges line{stroke-dashoffset:0;animation:none}.auth-constellation[data-drawn] .auth-node{opacity:1;animation:none}.auth-constellation[data-drawn] .auth-arch-star{opacity:1;filter:none;animation:none;transform:none}.auth-constellation[data-drawn] .auth-sparks{display:none}.auth-signal-stage{transform-origin:0 0;position:absolute;top:0;left:0}.auth-signal{opacity:0;will-change:transform, opacity;width:5px;height:5px;animation-timing-function:var(--ease-in-out);background:#ffe8d4;border-radius:50%;margin:-2.5px 0 0 -2.5px;animation-iteration-count:infinite;animation-fill-mode:backwards;position:absolute;box-shadow:0 0 8px 2px #ffd6b480}.auth-meteor{transform-origin:0;opacity:0;will-change:transform, opacity;background:linear-gradient(90deg,#fff4e6f2,#f1d3b659 30%,#f1d3b600);border-radius:999px;width:160px;height:1.5px;animation:13s linear infinite backwards auth-meteor;position:absolute}.auth-meteor:before{content:"";background:#fff6ea;border-radius:50%;width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:-2px;box-shadow:0 0 8px 2px #ffecd6b3}@keyframes auth-meteor{0%,89%{opacity:0;transform:rotate(-32deg)translate(0)}90%{opacity:1}97%{opacity:.85}to{opacity:0;transform:rotate(-32deg)translate(-460px)}}.auth-glow{background:radial-gradient(40% 36% at 50% 62%,#e2946a13 0%,#e2946a05 50%,#0000 72%);position:absolute;inset:0}.auth-brand{--leaf-h:clamp(78px, 15vh, 150px);pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;margin-bottom:22px;display:flex}.auth-leaf{animation:auth-fade 1.2s var(--ease-out) .15s backwards}.auth-wordmark{filter:brightness(1.7)saturate(1.15)drop-shadow(0 0 14px #e2946a47);width:auto;height:clamp(26px,4.2vh,38px);animation:auth-rise .8s var(--ease-out) .32s backwards;margin-top:6px}.auth-tagline{text-wrap:balance;max-width:440px;font-family:var(--font-serif);letter-spacing:.01em;color:var(--text-muted);text-align:center;animation:auth-rise .8s var(--ease-out) .46s backwards;margin:12px 0 0;font-size:15px;font-style:italic;line-height:1.45}.auth-card{width:100%;max-width:400px;transition:box-shadow .36s var(--ease-out);animation:auth-rise-card .8s var(--ease-out) .38s backwards;background:linear-gradient(#1f1c1fd1 0%,#110f12db 100%);border-radius:22px;padding:28px 28px 22px;position:relative;box-shadow:inset 0 1px #fff4e60d,0 0 0 1px #fff0e10d,0 32px 80px -24px #000c}.auth-card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#ffecd629 0%,#ffecd608 42%,#e2946a1a 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.auth-card:focus-within{box-shadow:inset 0 1px #fff4e60f,0 0 0 1px #e2946a29,0 32px 90px -24px #e2946a29}.auth-card>:not(.auth-alert){animation:auth-rise .6s var(--ease-out) backwards}.auth-card>:not(.auth-alert):first-child{animation-delay:.52s}.auth-card>:not(.auth-alert):nth-child(2){animation-delay:.57s}.auth-card>:not(.auth-alert):nth-child(3){animation-delay:.62s}.auth-card>:not(.auth-alert):nth-child(4){animation-delay:.67s}.auth-card>:not(.auth-alert):nth-child(n+5){animation-delay:.72s}.auth-head{text-align:center;margin-bottom:18px}.auth-title{font-family:var(--font-serif);letter-spacing:-.005em;color:var(--text-normal);margin:0;font-size:24px;font-weight:500}.auth-lede{text-wrap:balance;color:var(--text-faint);margin:6px 0 0;font-size:13px;line-height:1.45}.auth-field{padding-bottom:14px}.auth-label{letter-spacing:.02em;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.auth-input-wrap{height:44px;transition:box-shadow .2s var(--ease-out), background-color .2s var(--ease-out);background:#0807098c;border-radius:12px;align-items:center;display:flex;position:relative;box-shadow:inset 0 0 0 1px #fff0e114}.auth-input-wrap:hover{box-shadow:inset 0 0 0 1px #fff0e124}.auth-input-wrap:focus-within{background:#080709cc;box-shadow:inset 0 0 0 1px #e2946ab3,0 0 0 4px #e2946a21}.auth-input-icon{color:var(--text-faint);pointer-events:none;transition:color .2s var(--ease-out);position:absolute;left:14px}.auth-input-wrap:focus-within .auth-input-icon{color:var(--text-accent)}.auth-input{min-width:0;height:100%;color:var(--text-normal);background:0 0;border:0;outline:0;flex:1;padding:0 14px 0 40px;font-size:14.5px}.auth-input::placeholder{color:#5f5850}.auth-input:-webkit-autofill{-webkit-text-fill-color:var(--text-normal);caret-color:var(--text-normal);transition:background-color 600000s}.auth-input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-normal);caret-color:var(--text-normal);transition:background-color 600000s}.auth-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-normal);caret-color:var(--text-normal);transition:background-color 600000s}.auth-eye{width:36px;height:36px;color:var(--text-faint);transition:color .16s var(--ease-out), background-color .16s var(--ease-out);border-radius:9px;place-items:center;margin-right:4px;display:grid}.auth-eye:hover{color:var(--text-normal);background:#fff5e60f}.auth-alert{animation:auth-rise .26s var(--ease-out) backwards;border-radius:11px;margin:2px 0 14px;padding:10px 12px;font-size:12.5px;line-height:1.45}.auth-alert-error{color:#e59a8a;animation:auth-rise .26s var(--ease-out) backwards, auth-shake .42s var(--ease-out) 40ms;background:#d47a6a1a;box-shadow:inset 0 0 0 1px #d47a6a38}.auth-alert-ok{color:#9fd0aa;background:#7fb98f1a;box-shadow:inset 0 0 0 1px #7fb98f38}@keyframes auth-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.auth-submit{background:var(--interactive-accent);width:100%;height:44px;color:var(--text-on-accent);transition:background-color .18s var(--ease-out), box-shadow .22s var(--ease-out), transform .16s var(--ease-out);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:4px;font-size:14px;font-weight:500;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1f}.auth-submit:hover:not(:disabled){background:var(--interactive-accent-hover);box-shadow:inset 0 1px 0 #ffffff29, 0 8px 24px -12px var(--interactive-accent)}.auth-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff38 48%,#0000 66%);position:absolute;inset:0;transform:translate(-120%)}.auth-submit:hover:not(:disabled):after{transition:transform .9s var(--ease-out);transform:translate(120%)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{cursor:progress;opacity:.7}.auth-submit:focus-visible{outline:2px solid var(--interactive-accent-translucent);outline-offset:2px}.auth-submit-arrow{transition:transform .22s var(--ease-out)}.auth-submit:hover:not(:disabled) .auth-submit-arrow{transform:translate(3px)}.auth-or{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:12px;margin:16px 0 12px;font-size:11.5px;display:flex}.auth-or:before,.auth-or:after{content:"";background:linear-gradient(90deg,#0000,#fff0e11a,#0000);flex:1;height:1px}.auth-google{height:44px;color:var(--text-normal);transition:background-color .2s var(--ease-out), box-shadow .2s var(--ease-out);background:#fff5e60a;border-radius:12px;justify-content:center;align-items:center;gap:10px;font-size:13.5px;display:flex;box-shadow:inset 0 0 0 1px #fff0e11a}.auth-google:hover{background:#fff5e612;box-shadow:inset 0 0 0 1px #fff0e129}.auth-links{color:var(--text-faint);text-align:center;flex-direction:column;gap:8px;margin-top:18px;font-size:12.5px;display:flex}.auth-links-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.auth-dot-sep{background:var(--text-faint);opacity:.6;border-radius:50%;width:3px;height:3px}.auth-link{color:var(--text-accent);text-underline-offset:3px;transition:color .16s var(--ease-out)}.auth-link:hover{color:#f0ab84;text-decoration:underline}.auth-link-strong{font-weight:500}@keyframes auth-fade{0%{opacity:0}to{opacity:1}}@keyframes auth-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-rise-card{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:640px){.auth-constellation{opacity:.4}.auth-card{border-radius:20px;padding:24px 20px 20px}.auth-title{font-size:22px}}@media (max-height:700px){.auth-brand{--leaf-h:clamp(56px, 11vh, 96px);margin-bottom:14px}.auth-tagline{display:none}}html[data-motion=reduced] .auth-meteor,html[data-motion=reduced] .auth-signal{display:none}html[data-motion=reduced] .auth-beacon-halo,html[data-motion=reduced] .auth-beacon-spikes{animation:none}html.lin-still .auth-meteor,html.lin-still .auth-signal{display:none}html.lin-still .auth-beacon{opacity:1;animation:none}html.lin-still .auth-beacon-halo,html.lin-still .auth-beacon-spikes{animation:none}html.lin-still .auth-scene,html.lin-still .auth-leaf,html.lin-still .auth-wordmark,html.lin-still .auth-tagline,html.lin-still .auth-card,html.lin-still .auth-card>*,html.lin-still .auth-node,html.lin-still .auth-alert,html.lin-still .auth-alert-error{animation:none!important}html.lin-still .auth-node{opacity:1}html.lin-still .auth-edges line{stroke-dashoffset:0;animation:none}html.lin-still .auth-submit:after{display:none}html.lin-still .auth-arch-star{opacity:1;filter:none;animation:none;transform:none}html.lin-still .auth-sparks{display:none}.auth-about{color:var(--text-faint);transition:color var(--dur-2) var(--ease-out);margin-top:18px;font-size:13px;text-decoration:none}.auth-about:hover{color:var(--text-muted)}
