:root{--gray-1:oklch(98.5% 0 0);--gray-2:oklch(97% 0 0);--gray-3:oklch(92.2% 0 0);--gray-4:oklch(87% 0 0);--gray-6:oklch(55.6% 0 0);--gray-7:oklch(43.9% 0 0);--gray-8:oklch(37.1% 0 0);--gray-10:oklch(26.9% 0 0);--gray-12:oklch(14.5% 0 0)}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-font-smoothing:antialiased;background:var(--gray-2);height:100%;color:var(--gray-10);font-family:system-ui,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}[x-cloak]{display:none}h1,h2,h3,h4,h5,h6{color:var(--gray-12)}header{max-width:1440px;margin:auto;padding:0 30px}header>div{justify-content:space-between;align-items:center;height:64px;display:flex}header nav{align-items:center;gap:26px;display:flex}header nav a{color:var(--gray-8);font-weight:500}header nav a:hover,header nav a.current{color:var(--gray-12)}main{border:1px solid var(--gray-3);background:#fff;flex-direction:column;justify-content:space-between;max-width:1440px;min-height:calc(100vh - 65px);margin:0 30px;padding:0 24px;display:flex}.hero{max-width:880px;padding:100px 50px}.hero h1{letter-spacing:-1px;margin-bottom:15px;font-size:52px;font-weight:600;line-height:1.05}.hero p{color:var(--gray-7);font-size:22px}.hero .button{margin-top:30px;padding:10px 16px;display:inline-block}.cards{border-top:1px solid var(--gray-3);grid-template-columns:repeat(3,1fr);padding:0 50px;display:grid}.cards a{border-right:1px solid var(--gray-3);padding:30px 40px}.cards a:first-child{border-left:1px solid var(--gray-3)}.cards a:hover{background:var(--gray-1)}.cards h3{letter-spacing:-.4px;margin-bottom:10px;font-size:20px;font-weight:600}.cards p{color:var(--gray-6)}.form-container{flex-direction:column;justify-content:center;max-width:400px;margin:auto;display:flex}.form-container h1{letter-spacing:-.5px;margin:5px 0;font-size:32px}.form-container p{color:var(--gray-6);margin-bottom:48px;font-size:18px}form{flex-direction:column;gap:24px;display:flex}label{margin-bottom:4px;font-size:14px;font-weight:500;display:block}input,textarea,button{width:100%;font:inherit;border-radius:4px}input{border:1px solid var(--gray-4);height:40px;padding:0 16px}input[data-invalid=true],textarea[data-invalid=true]{border-color:#fb2c36}input[data-invalid=true]+div,textarea[data-invalid=true]+div{color:#fb2c36;margin-top:2px;font-size:14px;font-weight:500}button{background:var(--gray-12);color:#fff;border:none;padding:10px;font-weight:500}button:hover{background:var(--gray-10)}.alert{border:1px solid var(--gray-3);background:#fff;border-radius:10px;min-width:380px;padding:12px 16px;font-size:14px;font-weight:500;animation:.2s cubic-bezier(.39,.575,.565,1) both scale-up;position:relative}.alert-destructive{color:#fb2c36;background:#fb2c361a;border-color:#fb2c36}.alert-success{color:#00a63e;background:#00a63e1a;border-color:#00a63e}.flash-container{flex-direction:column;align-items:center;display:flex;position:fixed;top:80px;left:0;right:0}@keyframes scale-up{0%{transform:scale(.7)}to{transform:scale(1)}}@media (width<=720px){header{padding:0 16px}main{margin:0 16px;padding:0 18px}.form-container{margin:32px 0}.hero{padding:48px 0}.hero h1{letter-spacing:-.5px;font-size:34px}.alert{min-width:0}}.gainstage-wordmark,.app-shell .gainstage-wordmark{color:#f7fbfc;letter-spacing:1px;white-space:nowrap;font-family:Arial,sans-serif;font-size:20px;font-weight:800;line-height:1.2;display:inline-block}.gainstage-wordmark>.brand-g,.app-shell .gainstage-wordmark>.brand-g{color:#ffc04a}.gainstage-wordmark>.brand-s,.app-shell .gainstage-wordmark>.brand-s{color:#67adff}.app-shell .brand{background:#08111c;box-shadow:inset 0 2px #39d9ef}.app-shell .brand-lockup{text-align:center;align-items:center;width:100%;min-width:0}.app-shell .brand-os{letter-spacing:2px;color:#a8bcc7;margin-top:2px;font-size:11px;line-height:1.2}.app-shell .brand .venue-brand{text-align:center;color:#a8bcc7;letter-spacing:0;max-width:100%;margin-top:6px;font-family:inherit;font-size:12px;line-height:1.4}.public-layout{background:#08111c;min-height:100vh}.public-layout header{border-bottom:1px solid #263b49;max-width:none}.public-layout header nav a{color:#a8bcc7}.public-layout header nav a:hover{color:#39d9ef}.public-layout :is(a,button,input):focus-visible{outline-offset:3px;outline:3px solid #39d9ef}.public-layout .auth-main{background:#f7fbfc;border:0;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);max-width:none;margin:0;padding:0;display:grid}.brand-intro{color:#a8bcc7;background:linear-gradient(#08111c33,#08111ca6),url(/branding/gainstage-stage.png) 50%/cover;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,80px);display:flex}.brand-intro .brand-tagline{color:#39d9ef;letter-spacing:2px;text-transform:uppercase;margin-bottom:24px;font-size:12px;font-weight:700}.brand-intro h2{color:#f7fbfc;letter-spacing:-1px;max-width:480px;margin-bottom:24px;font-size:clamp(32px,4vw,56px);line-height:1.08}.brand-intro>p:last-child{max-width:420px;font-size:18px;line-height:1.6}.auth-main .form-container{width:100%;max-width:464px;padding:40px 32px}.auth-main .form-container h1{color:#08111c}.auth-main .form-container p{color:#55707f;margin-bottom:32px;font-size:16px}.auth-main button[type=submit]{color:#f7fbfc;background:#08111c;border-bottom:3px solid #39d9ef}.auth-main button[type=submit]:hover{background:#173345}@media (width<=720px){.public-layout .auth-main{grid-template-columns:minmax(0,1fr)}.brand-intro{padding:28px 24px}.brand-intro .brand-tagline{margin-bottom:12px}.brand-intro h2{margin-bottom:0;font-size:30px}.brand-intro>p:last-child{display:none}.auth-main .form-container{margin:auto;padding:32px 24px}.app-shell .gainstage-wordmark{font-size:18px}}
