:root{--violet:#7d3cf2;--violet-deep:#5b24c9;--lavender:#b997ff;--violet-50:#f5efff;--violet-100:#e6d9ff;--ink:#1c1530;--ink-3:#33284f;--coral:#ff6b4a;--mint:#00b67a;--mint-wash:#e8f8f2;--slate:#6b6577;--mist:#8e889a;--border:#cfc8d4;--line:#ece8e3;--cloud:#f7f5f2;--warm:#f1ece4;--g-brand:linear-gradient(135deg,#9c6bff 0%,#7d3cf2 55%,#5b24c9 100%);--g-button:linear-gradient(135deg,#7d3cf2 0%,#8f55ff 100%);--sh-card:0 24px 70px #1c15301f;--f-display:"Sora",ui-sans-serif,system-ui,sans-serif;--f-body:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.2,.8,.2,1);--ease-spring:cubic-bezier(.34,1.56,.64,1)}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{font-family:var(--f-body);color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0}a{color:var(--violet)}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:8px}h1,h2{font-family:var(--f-display);letter-spacing:-.045em;color:var(--ink);margin:0;font-weight:600}.ic{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.app-mark{--s:28px;width:var(--s);height:var(--s);border-radius:calc(var(--s) * .27);background:var(--g-brand);place-items:center;display:inline-grid;box-shadow:0 6px 16px #7d3cf24d,inset 0 1px #ffffff4d}.app-mark svg{width:100%;height:auto}.dot{--s:18px;width:var(--s);height:var(--s);border:2px solid var(--border);border-radius:50%;flex:none;display:inline-block;position:relative}.dot.is-done{background:var(--violet);border-color:var(--violet)}.dot.is-done:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:42%;height:24%;margin:auto;position:absolute;inset:0;transform:translateY(-12%)rotate(-45deg)}.dot.is-waiting{border-style:dashed;border-color:#a580ee}.av{--s:30px;width:var(--s);height:var(--s);font:600 11px/1 var(--f-body);color:#fff;background:var(--ink);border-radius:50%;flex:none;place-items:center;display:inline-grid}.av.p{background:var(--violet-100);color:var(--violet-deep)}.auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-side{flex-direction:column;padding:32px clamp(24px,5vw,72px);display:flex}.auth-top{justify-content:space-between;align-items:center;display:flex}.logo{color:var(--ink);display:inline-flex}.logo svg{width:auto;height:26px}.auth-top a.back{color:var(--slate);align-items:center;gap:6px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.auth-top a.back:hover{color:var(--ink)}.auth-main{flex:1;place-items:center;padding:48px 0;display:grid}.auth-form{width:100%;max-width:400px;animation:rise .8s var(--ease)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--violet);align-items:center;gap:12px;margin-bottom:16px;font-size:12px;font-weight:700;display:inline-flex}.eyebrow:before{content:"";width:7px;height:7px;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 14%,transparent);background:currentColor;border-radius:50%;flex:none}.auth-form h1{font-size:clamp(32px,3.4vw,40px);line-height:1.08}.auth-form .sub{color:var(--slate);margin:12px 0 32px;font-size:16px}.oauth{border:1px solid var(--line);width:100%;height:52px;color:var(--ink);transition:border-color .2s,box-shadow .3s,transform .3s var(--ease);background:#fff;border-radius:14px;justify-content:center;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex;box-shadow:0 1px 2px #1c15300d}.oauth:hover{border-color:var(--border);transform:translateY(-1px);box-shadow:0 10px 24px -10px #1c153033}.oauth svg{width:20px;height:20px}.or{color:var(--mist);align-items:center;gap:14px;margin:24px 0;font-size:13px;display:flex}.or:before,.or:after{content:"";background:var(--line);flex:1;height:1px}label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.field{position:relative}.field .ic{color:var(--mist);pointer-events:none;transition:color .2s;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.field input{border:1px solid var(--line);width:100%;height:52px;font:inherit;color:var(--ink);background:#fff;border-radius:14px;padding:0 16px 0 46px;font-size:15px;transition:border-color .2s,box-shadow .2s}.field input::placeholder{color:var(--mist)}.field input:focus{border-color:var(--violet);outline:0;box-shadow:0 0 0 4px #7d3cf21f}.field:focus-within .ic{color:var(--violet)}.submit{background:var(--g-button);color:#fff;width:100%;height:52px;transition:transform .3s var(--ease),box-shadow .3s;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;margin-top:14px;font-size:15px;font-weight:600;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 28px #7d3cf240,inset 0 1px #ffffff38}.submit:hover{transform:translateY(-1px);box-shadow:0 18px 36px #7d3cf257}.submit .ic{transition:transform .3s var(--ease)}.submit:hover .ic{transform:translate(3px)}.submit.loading{pointer-events:none}.submit.loading span,.submit.loading .ic{opacity:0}.submit.loading:after{content:"";border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}.alt{width:100%;color:var(--slate);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:8px;font-size:14px;font-weight:500;display:flex}.alt:hover{color:var(--ink)}.switch{border-top:1px solid var(--line);color:var(--slate);text-align:center;margin:28px 0 0;padding-top:24px;font-size:14px}.switch a{font-weight:600;text-decoration:none}.switch a:hover{text-decoration:underline}.free{background:var(--mint-wash);color:#3e3650;border-radius:16px;gap:12px;margin-top:24px;padding:16px;font-size:14px;line-height:1.5;display:flex}.free .dot{background:var(--mint);border-color:var(--mint);margin-top:1px}.free strong{color:var(--ink)}.legal{color:var(--mist);text-align:center;font-size:12px}.legal a{color:var(--slate)}.sent{text-align:center;animation:rise .7s var(--ease);display:none}.auth-form.is-sent .form-body{display:none}.auth-form.is-sent .sent{display:block}.sent-icon{background:var(--g-brand);color:#fff;border-radius:26px;place-items:center;width:88px;height:88px;margin:0 auto 28px;display:grid;position:relative;box-shadow:0 20px 40px -10px #7d3cf28c}.sent-icon .ic{stroke-width:1.6px;width:36px;height:36px}.sent-icon:after{content:"";border:2px solid var(--violet-100);animation:ring 2s var(--ease) infinite;border-radius:32px;position:absolute;inset:-10px}@keyframes ring{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.25)}}.sent h1{font-size:34px}.sent p{color:var(--slate);margin:12px 0 28px}.sent p b{color:var(--ink)}.sent .alt{margin-top:0}.auth-panel{background:var(--ink);color:#fff;isolation:isolate;border-radius:32px;flex-direction:column;justify-content:space-between;margin:12px;padding:clamp(36px,4vw,56px);display:flex;position:relative;overflow:hidden}.auth-panel:after{content:"";z-index:-1;opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");position:absolute;inset:0}.glow{z-index:-2;filter:blur(100px);border-radius:50%;position:absolute}.glow.g1{background:#7d3cf2b3;width:560px;height:560px;animation:16s ease-in-out infinite alternate drift;top:-200px;right:-180px}.glow.g2{background:#ff6b4a59;width:420px;height:420px;animation:20s ease-in-out infinite alternate-reverse drift;bottom:-160px;left:-160px}@keyframes drift{to{transform:translate(-40px,30px)scale(1.08)}}.lines{z-index:-1;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 60% 40%,#000,#0000 75%);mask-image:radial-gradient(70% 60% at 60% 40%,#000,#0000 75%)}.panel-head{color:#ffffffa6;justify-content:space-between;align-items:center;font-size:13px;display:flex}.panel-head .legend{gap:16px;display:flex}.panel-head .legend span{align-items:center;gap:8px;display:inline-flex}.panel-head .dot{--s:12px;border-width:1.5px;border-color:#ffffff80}.panel-head .dot.is-done{border-color:var(--violet)}.panel-head .dot.is-done:after{display:none}.showcase{align-self:center;width:100%;max-width:420px;margin:40px 0;position:relative}.mini{color:var(--ink);background:#fff;border-radius:24px;padding:22px;animation:8s ease-in-out infinite float;transform:rotate(-2deg);box-shadow:0 40px 80px -20px #0000008c}@keyframes float{0%,to{translate:0}50%{translate:0 -10px}}.mini-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.mini-top b{font:600 14px/1 var(--f-display);letter-spacing:-.03em;align-items:center;gap:8px;display:flex}.mini small{letter-spacing:.14em;color:var(--mist);font-size:11px;font-weight:700}.mini h2{letter-spacing:-.035em;margin:4px 0 14px;font-size:20px}.mini .bar{background:var(--line);border-radius:9px;height:7px;margin-bottom:10px;overflow:hidden}.mini .bar i{border-radius:inherit;background:var(--g-brand);width:60%;height:100%;display:block}.mini ul{margin:0;padding:0;list-style:none}.mini li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;font-size:14px;font-weight:500;display:flex}.mini li.done span{color:var(--mist);text-decoration:line-through}.chip{z-index:2;color:var(--ink);background:#fffffff5;border-radius:14px;align-items:center;gap:10px;padding:10px 14px 10px 10px;font-size:12px;animation:7s ease-in-out infinite float;display:flex;position:absolute;box-shadow:0 20px 40px -10px #0006}.chip strong{font-size:13px;display:block}.chip small{color:var(--mist)}.chip.c1{animation-delay:-2s;top:-34px;right:-28px}.chip.c2{animation-delay:-4s;bottom:-26px;left:-34px}.panel-copy h2{color:#fff;max-width:460px;font-size:clamp(28px,2.8vw,40px);line-height:1.08}.panel-copy h2 em{background:linear-gradient(90deg,#e2d6ff,#b892ff);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.panel-copy p{color:#ffffffb3;max-width:420px;margin:14px 0 0;font-size:16px}@media (max-width:960px){.auth{grid-template-columns:1fr}.auth-panel{display:none}body{background:radial-gradient(700px 400px at 100% 0,#e6d9ffb3,#0000 60%),radial-gradient(500px 300px at 0 100%,#ffc9b859,#0000 60%),#fff}}@media (max-width:480px){.auth-side{padding:24px 20px}.auth-main{place-items:start center;padding:32px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
