:root{--primary: hsl(237, 80%, 68%);--primary-light: hsl(237, 80%, 78%);--primary-dark: hsl(237, 80%, 58%);--secondary: hsl(267, 66%, 60%);--secondary-light: hsl(267, 66%, 70%);--accent-1: hsl(214, 66%, 60%);--accent-2: hsl(177, 56%, 55%);--accent-3: hsl(136, 49%, 49%);--canvas: hsl(0, 0%, 98%);--paper: hsl(0, 0%, 100%);--grey-25: hsl(0, 0%, 97%);--grey-50: hsl(0, 0%, 95%);--grey-100: hsl(0, 0%, 91%);--grey-200: hsl(0, 0%, 87%);--grey-500: hsl(0, 0%, 75%);--text-primary: hsl(0, 0%, 20%);--text-secondary: hsl(0, 0%, 50%);--text-disabled: hsl(0, 0%, 80%);--bg: var(--canvas);--panel: var(--paper);--text: var(--text-primary);--muted: var(--text-secondary);--border: var(--grey-100);--brand: var(--primary);--brand-end: var(--primary-dark);--line-soft: hsla(0, 0%, 100%, .85);--shadow-2xs: 0 3px 4px rgba(0, 0, 0, .05);--shadow-xs: 0 3px 8px rgba(0, 0, 0, .05);--shadow-sm-el: 0 3px 12px rgba(0, 0, 0, .05);--shadow-md-el: 0 3px 16px rgba(0, 0, 0, .05);--brand-gradient: linear-gradient(90deg, var(--primary) 0%, var(--primary-dark) 100%);--radius-xs: .1875rem;--radius-sm: .219rem;--radius-md: .25rem;--radius-lg: .281rem;--radius-3xl: .438rem;--font-body: "Mulish", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-heading: "Urbanist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--text-base: .875rem;--text-sm: .75rem;--text-xs: .6875rem;--leading-input: 1.25rem;--color-error: hsl(347, 64%, 55%);--color-info: hsl(193, 72%, 58%);--color-success: hsl(108, 45%, 58%);--color-warning: hsl(25, 82%, 60%);--page-gutter: 16px}@media (max-width: 960px){:root{--page-gutter: 12px}}@media (max-width: 540px){:root{--page-gutter: 8px}}*{box-sizing:border-box}html,body{height:100%}::selection{background:hsla(237,80%,68%,.5);color:var(--text-primary)}body.app--auth{min-height:100vh;margin:0;color:var(--text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-input);background:radial-gradient(900px 520px at 8% 0%,hsla(237,80%,68%,.14),transparent 60%),radial-gradient(780px 460px at 100% 8%,hsla(267,66%,60%,.1),transparent 58%),var(--bg)}body.app--auth.app--landing-cosmic{position:relative;color:var(--text);overflow-x:clip;background:radial-gradient(840px 520px at 8% -8%,hsla(237,80%,68%,.18),transparent 60%),radial-gradient(760px 500px at 92% 10%,hsla(214,66%,60%,.12),transparent 56%),radial-gradient(560px 360px at 52% 100%,hsla(177,56%,55%,.08),transparent 60%),linear-gradient(180deg,hsl(0,0%,98%) 0%,hsl(237,30%,97%) 55%,hsl(0,0%,99%) 100%)}body.app--auth.app--landing-cosmic:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.42;background-image:radial-gradient(1px 1px at 6% 14%,hsla(0,0%,60%,.28),transparent),radial-gradient(1px 1px at 18% 72%,hsla(237,80%,68%,.26),transparent),radial-gradient(1px 1px at 28% 28%,hsla(0,0%,55%,.24),transparent),radial-gradient(1px 1px at 42% 88%,hsla(0,0%,52%,.2),transparent),radial-gradient(1px 1px at 55% 12%,hsla(237,80%,68%,.24),transparent),radial-gradient(1px 1px at 68% 64%,hsla(0,0%,55%,.22),transparent),radial-gradient(1px 1px at 78% 36%,hsla(214,66%,60%,.22),transparent),radial-gradient(1px 1px at 88% 82%,hsla(0,0%,50%,.2),transparent),radial-gradient(1px 1px at 94% 22%,hsla(237,80%,68%,.26),transparent),radial-gradient(1px 1px at 12% 48%,hsla(214,66%,60%,.28),transparent),radial-gradient(1.5px 1.5px at 36% 52%,hsla(237,80%,64%,.22),transparent),radial-gradient(1px 1px at 62% 44%,hsla(0,0%,50%,.18),transparent),radial-gradient(1px 1px at 84% 56%,hsla(177,56%,55%,.18),transparent);animation:landing-cosmic-twinkle 7.5s ease-in-out infinite alternate}body.app--auth.app--landing-cosmic:after{content:"";position:fixed;top:-20%;right:-10%;bottom:-20%;left:-10%;z-index:0;pointer-events:none;background:radial-gradient(300px 180px at 15% 32%,hsla(237,80%,68%,.14),transparent 68%),radial-gradient(380px 220px at 84% 70%,hsla(214,66%,60%,.1),transparent 72%);filter:blur(10px);animation:landing-cosmic-drift 22s ease-in-out infinite alternate}@keyframes landing-cosmic-twinkle{0%{opacity:.25}to{opacity:.5}}@keyframes landing-cosmic-drift{0%{transform:translate3d(0,-8px,0)}to{transform:translate3d(0,10px,0)}}@media (prefers-reduced-motion: reduce){body.app--auth.app--landing-cosmic:before,body.app--auth.app--landing-cosmic:after{animation:none;opacity:.4}}body.app--auth.app--landing-cosmic .auth-shell{position:relative;z-index:1}body.app--auth.app--landing-cosmic .auth-card{position:relative;overflow:hidden;background:linear-gradient(165deg,hsla(0,0%,100%,.97) 0%,hsla(237,40%,99%,.94) 55%,hsla(0,0%,100%,.92) 100%);border-color:#6c73ef38;box-shadow:var(--shadow-md-el),0 0 0 1px var(--line-soft) inset,0 0 80px #6c73ef0f}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:28px var(--page-gutter)}.card{background:var(--panel);border:1px solid var(--grey-50);border-radius:var(--radius-3xl);box-shadow:var(--shadow-xs)}.auth-card{width:100%;max-width:780px;padding:16px;background:var(--paper);border:1px solid var(--grey-50);border-radius:var(--radius-3xl);box-shadow:var(--shadow-xs)}.auth-card__brand{display:flex;justify-content:center;margin-bottom:18px}.auth-card__logo{width:min(240px,100%);height:auto;border-radius:var(--radius-lg)}.auth-card__title{margin:0 0 6px;font-family:var(--font-heading);font-size:1.625rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;color:var(--text-primary)}.auth-card__subtitle{margin:0 0 18px}.auth-card__footer{margin:16px 0 0;font-size:var(--text-base)}.auth-form__remember{margin-top:4px}.auth-form__remember-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:var(--text-base);line-height:1.4;color:var(--text-primary)}.auth-form__remember-input{flex:0 0 auto;width:1rem;height:1rem;margin:2px 0 0;accent-color:var(--primary)}.landing{display:flex;flex-direction:column;gap:18px}.landing__badge{align-self:flex-start;margin:0;padding:6px 12px;border-radius:999px;border:1px solid hsla(237,80%,68%,.35);background:hsla(237,80%,68%,.08);color:var(--primary-dark);font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.35}.landing__title{margin-bottom:2px;font-family:var(--font-heading)}.landing__lead{margin-top:0;margin-bottom:2px;line-height:1.72;max-width:65ch;color:var(--text-secondary)}.landing__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.landing__panel{padding:16px;border-radius:var(--radius-3xl);border:1px solid var(--grey-50);background:var(--grey-25)}.landing__panel-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.landing__panel-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-lg);color:var(--primary-dark);background:linear-gradient(135deg,hsla(237,80%,68%,.12),hsla(214,66%,60%,.1));border:1px solid hsla(237,80%,68%,.22);box-shadow:0 1px 0 var(--line-soft) inset}.landing__panel-svg{width:20px;height:20px}.landing__panel h2{margin:0;flex:1;min-width:0;font-family:var(--font-heading);font-size:var(--text-base);font-weight:700;letter-spacing:.01em;color:var(--text-primary);line-height:1.35;padding-top:2px}.landing__panel p{margin:0;color:var(--muted);line-height:1.65;overflow-wrap:anywhere}.landing--hype{position:relative;z-index:1}.landing__space-visual{position:absolute;top:48px;right:-12px;width:210px;height:190px;pointer-events:none;z-index:0;opacity:1;filter:drop-shadow(0 0 24px hsla(237,80%,68%,.2));animation:landing-visual-float 6.8s ease-in-out infinite}.landing__orbit{display:block;width:100%;height:auto}.landing__ring--solid{stroke:#3e47ea9e;stroke-width:1.8;transform-origin:200px 160px;animation:landing-ring-spin 24s linear infinite}.landing__ring--dashed{stroke:#5690dc8f;stroke-width:1.35;stroke-dasharray:5 7;transform-origin:200px 160px;animation:landing-ring-spin-reverse 34s linear infinite}.landing__planet{filter:saturate(1.16) contrast(1.08);transform-origin:108px 118px;animation:landing-planet-float 5.6s ease-in-out infinite}.landing__planet-glow{filter:saturate(1.2);transform-origin:108px 118px;animation:landing-planet-glow 4.3s ease-in-out infinite alternate}.landing__spark{filter:saturate(1.3);animation:landing-spark-twinkle 2.8s ease-in-out infinite}.landing__spark--2{animation-delay:.6s}.landing__spark--3{animation-delay:1.2s}.landing__star{position:absolute;border-radius:999px;background:hsla(237,80%,68%,.32);box-shadow:0 0 10px #6c73ef29;animation:landing-star-pulse 3.8s ease-in-out infinite}.landing__star--a{top:8px;right:40px;width:6px;height:6px}.landing__star--b{top:36px;right:0;width:4px;height:4px;animation-delay:.75s}.landing__star--c{top:126px;right:12px;width:5px;height:5px;animation-delay:1.6s}.landing__badge--cosmic{position:relative;z-index:1;border-color:#5690dc59;background:linear-gradient(135deg,hsla(237,80%,68%,.12),hsla(214,66%,60%,.1));color:var(--primary-dark);box-shadow:var(--shadow-2xs)}.landing__title--cosmic{position:relative;z-index:1;background:linear-gradient(125deg,hsl(237,80%,38%) 0%,hsl(237,80%,58%) 42%,hsl(214,66%,45%) 95%);-webkit-background-clip:text;background-clip:text;color:transparent}.landing--hype .landing__lead{position:relative;z-index:1;font-size:.9375rem;line-height:1.65}.landing__panel--cosmic{border-color:#6c73ef2e;background:linear-gradient(180deg,hsla(0,0%,100%,.9),hsla(237,35%,98%,.82));box-shadow:0 1px 0 var(--line-soft) inset}.landing__panel--cosmic h2{color:#0e1481}.landing__panel--cosmic .landing__panel-icon{color:var(--primary-dark);border-color:#6c73ef47}@keyframes landing-visual-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(-3px,-8px,0)}}@keyframes landing-ring-spin{0%{transform:rotate(-18deg)}to{transform:rotate(342deg)}}@keyframes landing-ring-spin-reverse{0%{transform:rotate(-18deg)}to{transform:rotate(-378deg)}}@keyframes landing-planet-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes landing-planet-glow{0%{opacity:.82;transform:scale(.98)}to{opacity:1;transform:scale(1.03)}}@keyframes landing-spark-twinkle{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.12)}}@keyframes landing-star-pulse{0%,to{opacity:.4;transform:translateY(0) scale(.9)}50%{opacity:1;transform:translateY(-2px) scale(1.1)}}.form{display:flex;flex-direction:column;gap:12px}.form-row{margin:0}.form-row--two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-fieldset{border:1px solid var(--grey-100);border-radius:var(--radius-3xl);padding:14px;margin:0;background:var(--grey-25)}.form-fieldset__grid{display:flex;flex-direction:column;gap:12px;margin-top:4px}.form-fieldset__grid>.form-row--two{gap:12px}.auth-form .field{min-width:0;margin:0}.auth-form .field>label,.auth-form .field>.form-label{margin-bottom:6px}.auth-form .field ul{margin:6px 0 0;padding:0;list-style:none}.auth-form .field ul li,.auth-form .field .form-error-message,.auth-form__form-error{margin:0;font-size:var(--text-sm);line-height:1.45;color:#9f233e}.auth-form__form-error+.auth-form__form-error{margin-top:4px}.auth-form .field .help-text,.auth-form .field .form-text{margin:6px 0 0;font-size:var(--text-sm);line-height:1.45;color:var(--muted)}.auth-form .field input[aria-invalid=true],.auth-form .field textarea[aria-invalid=true],.auth-form .field select[aria-invalid=true]{border-color:#d643638c;background:hsla(347,64%,55%,.04)}.auth-form__password-match-error ul{margin:0}.form-legend{padding:0 8px;font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.form label,.form-label{display:block;margin:0 0 6px;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.form-control,.form input[type=text],.form input[type=email],.form input[type=password],.form input[type=url],.form textarea,.form select{width:100%;margin:0;border:1px solid var(--grey-100);border-radius:var(--radius-lg);background:var(--grey-25);padding:10px 12px;color:var(--text);font-family:inherit;font-size:var(--text-base);line-height:var(--leading-input);box-shadow:var(--shadow-xs);outline:none;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.form-control:hover,.form input:hover,.form textarea:hover,.form select:hover{background:var(--grey-50)}.form-control:focus,.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid hsla(237,80%,68%,.4);outline-offset:-2px;border-color:transparent;background:var(--grey-25);box-shadow:var(--shadow-xs)}.form-actions{display:flex;align-items:center;gap:10px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--grey-200);background:var(--paper);color:var(--text-primary);padding:8px 20px;min-height:2.25rem;border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-base);font-weight:500;line-height:var(--leading-input);letter-spacing:normal;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.btn:hover{background:var(--grey-25)}.btn:focus-visible{outline:2px solid hsla(237,80%,68%,.4);outline-offset:1px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:none}.btn-primary:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary-light)}.btn-primary:active:not(:disabled){background:var(--primary);border-color:var(--primary-dark)}.alert{margin:0 0 12px;border-radius:var(--radius-lg);padding:12px 14px;border:1px solid transparent;font-size:var(--text-base)}.alert--success{background:hsla(108,45%,58%,.14);border-color:#77c46473;color:#346827}.alert--error{background:hsla(347,64%,55%,.12);border-color:#d6436366;color:#861d34}.alert--warning{background:hsla(25,82%,60%,.14);border-color:#ed8b456b;color:#95460f}.alert--info{background:hsla(193,72%,58%,.12);border-color:#47c0e166;color:#17738c}@media (max-width: 960px){.auth-shell{min-height:auto;padding:20px var(--page-gutter);place-items:start center}.auth-card{padding:14px;border-radius:var(--radius-3xl)}.auth-card__title{font-size:1.4375rem}.form-row--two{grid-template-columns:1fr}.landing__grid{grid-template-columns:1fr;gap:10px}.landing__lead{max-width:none;font-size:var(--text-base);line-height:1.66}.landing__space-visual{position:relative;top:auto;right:auto;width:clamp(138px,46vw,190px);height:auto;margin:-4px auto 2px;opacity:.82;filter:drop-shadow(0 0 18px hsla(237,80%,68%,.18));animation-duration:8.5s}.landing__badge{font-size:var(--text-xs);letter-spacing:.065em}.landing__panel{padding:14px}}@media (max-width: 540px){.auth-card__title{font-size:1.375rem}.landing{gap:14px}.auth-shell{min-height:auto;padding:16px var(--page-gutter)}.landing__space-visual{width:clamp(120px,52vw,150px);margin:-6px auto 0;opacity:.74}.landing__panel h2{font-size:var(--text-sm)}.landing__panel p{font-size:var(--text-base);line-height:1.58}}
