@font-face{font-family:Gilroy;src:url('/assets/fonts/GilroyMedium.woff2') format('woff2');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:Gilroy;src:url('/assets/fonts/GilroyBold.woff2') format('woff2');font-weight:600 900;font-style:normal;font-display:swap}
:root{color-scheme:light}
body{background:#ededff;color:#25263a;font:16px/1.55 Gilroy,system-ui,sans-serif}
body :is(h1,h2,h3,p,a,label,button,input,select,textarea,small,strong,b,span){font-family:Gilroy,system-ui,sans-serif}
a{color:#3431bb}a:hover{color:#1717c8}
header{background:#fff;border-color:#dfe2ef;box-shadow:0 2px 14px #2424f208}
header .wrap{max-width:1180px;padding:18px 26px}
header a.brand{color:#2424f2;font-size:1.55rem;letter-spacing:-.5px}
nav{gap:22px}
nav a{color:#374157;text-decoration:none;font-weight:700}
nav a:hover{color:#2424f2}
nav button{color:#3431bb;text-decoration:none;font-weight:700}
main{max-width:950px;margin:48px auto;padding:0 24px 70px}
body:has(main>form) main{max-width:610px}
h1{color:#25263a;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em}
h2{color:#25263a}
body:has(main>form) main>h1{text-align:center;margin-bottom:22px}
main>form{max-width:none;background:#fff;border:1px solid #dfe2ef;border-radius:20px;padding:28px 32px 32px;box-shadow:0 14px 48px #27276b12}
label{color:#374157;font-size:.92rem}
input,select,textarea{background:#f9f9ff;border-color:#dfe2ef;color:#25263a;border-radius:11px;min-height:48px}
input:focus,select:focus,textarea:focus{outline:2px solid #b4aeff;border-color:#7974ff}
input::placeholder,textarea::placeholder{color:#7f8a9f}
button,.button{background:#2424f2;color:#fff;border:1px solid #2424f2;border-radius:11px;min-height:45px;font-weight:700}
button:hover,.button:hover{background:#1717c8;color:#fff}
main>form>button{width:100%}
.hint,.subtle{color:#59647a}
body:has(main>form) main>.subtle{text-align:center}
.lead{color:#59647a}
.notice{background:#f8f8ff;border-color:#dfe2ef;color:#4d5670;border-radius:12px}
.alert{background:#fff1f3;border-color:#eec9d1;color:#922b42}
.success{background:#eff8f4;border-color:#b4ddc7;color:#246547}
.card,.request{background:#fff;border-color:#dfe2ef;color:#25263a;border-radius:16px;box-shadow:0 8px 24px #1b234e0d}
.card span,.request small{color:#59647a}
.pill{background:#eeedff;color:#3431bb}
footer{color:#68758b}
@media(max-width:600px){header .wrap{display:block;padding:15px 18px}nav{gap:12px}main{margin-top:30px;padding:0 17px 50px}main>form{padding:22px 20px}}
body :is(h1,h2,h3){font-weight:500}
nav :is(a,button){font-weight:500}
button,.button{border-radius:0;font-weight:500;transition:background-color 140ms ease,border-color 140ms ease,box-shadow 180ms ease,transform 180ms cubic-bezier(.22,1,.36,1)}
button:hover,.button:hover{transform:translateY(-1px)}
button:active,.button:active{transform:none}
@media(prefers-reduced-motion:reduce){button,.button{transition:none!important;transform:none!important}}

/* Shared sign-in and registration stage. */
body.auth-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 85% 16%,#fafaff 0,#f0efff 38%,#e9e9fb 100%)}
body.auth-page{background:radial-gradient(circle at 88% 13%,#eae9ff 0,#f6f7fb 44%,#f6f7fb 100%)}
.account-header{background:#fffffff2;border-bottom:1px solid #dfe2ef;backdrop-filter:blur(14px)}
.account-header .wrap{max-width:1288px;min-height:72px;padding:12px 24px}
.account-header .brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;color:#25263a;font-size:1.55rem;font-weight:600;letter-spacing:-.035em}
.account-header .account-logo{display:block;flex:none;width:35px;height:35px}
.account-header .brand-name>span{color:#2424f2}
.account-header nav{gap:24px}
.account-header nav a{color:#25263a;text-decoration:none;font-size:.9rem;font-weight:500;transition:color 160ms ease,background-color 160ms ease,box-shadow 160ms ease}
.account-header nav a:hover,.account-header nav a:focus-visible{color:#2424f2}
.account-header .account-nav-main,.account-header .account-nav-actions{display:flex;align-items:center;gap:24px}
.account-header .account-nav-actions{gap:8px}
.account-header .auth-nav-login,.account-header .auth-nav-action{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:41px;padding:0 15px;white-space:nowrap}
.account-header .auth-nav-login{border:1px solid #dfe2ef;border-radius:4px;color:#2424f2}
.account-header .auth-nav-login:hover,.account-header .auth-nav-login:focus-visible{background:#f2f1ff}
.account-header .auth-nav-login[aria-current=page]{border-color:#aaa6ff;background:#f3f2ff}
.account-header .auth-nav-action{border:1px solid #2424f2;border-radius:4px;background:#2424f2;color:#fff;box-shadow:0 9px 20px #2424f21d}
.account-header .auth-nav-action:hover,.account-header .auth-nav-action:focus-visible{background:#1717c8;color:#fff;box-shadow:0 12px 24px #2424f22b}
body.auth-page header{flex:none}
body.auth-page header .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px}
body.auth-page header nav{display:contents}
body.auth-page header .account-nav-main{grid-column:2}
body.auth-page header .account-nav-actions{grid-column:3;justify-self:end}
body.auth-page .auth-main{flex:1;width:min(1180px,calc(100% - 48px));max-width:none;margin:48px auto 0;padding:0}
body.auth-page .auth-stage{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);min-height:650px;background:#fff;border:1px solid #dfe2ef;box-shadow:0 28px 70px #26266b15;overflow:hidden}
body.auth-page .auth-story{position:relative;isolation:isolate;grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:38px 42px 40px;overflow:hidden;background:linear-gradient(145deg,#2424f2 0%,#3831db 52%,#5450bd 100%);color:#fff}
body.auth-page .auth-story:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#ffffff12 1px,transparent 1px),linear-gradient(#ffffff12 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,transparent 2%,#000 100%);opacity:.56}
body.auth-page .auth-story:after{content:"";position:absolute;z-index:-1;width:460px;height:460px;right:-180px;bottom:18px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 70px #ffffff0b,0 0 0 140px #ffffff0a}
body.auth-page .auth-story-top{display:flex;align-items:start;justify-content:space-between;gap:18px}
body.auth-page .auth-story-mark{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border:1px solid #ffffff77;color:#fff;font-size:2rem;font-weight:600;letter-spacing:-.1em}
body.auth-page .auth-story-mark span{align-self:flex-start;margin:5px 4px 0 0;font-size:.8rem;font-weight:400;letter-spacing:0}
body.auth-page .auth-story-index{font-size:.75rem;letter-spacing:.17em;color:#ffffffb5}
body.auth-page .auth-story-copy{margin:32px 0 auto;padding-top:54px}
body.auth-page .auth-story-eyebrow{margin:0 0 23px;color:#ffffffbd;font-size:.73rem;font-weight:500;letter-spacing:.19em}
body.auth-page .auth-story h2{max-width:11ch;margin:0;color:#fff;font-size:clamp(2.8rem,4vw,4.35rem);font-weight:500;line-height:1.04;letter-spacing:-.055em}
body.auth-page .auth-story-description{max-width:34ch;margin:22px 0 0;color:#ffffffd4;font-size:1rem;line-height:1.65}
body.auth-page .auth-story-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;list-style:none;margin:30px 0 0;padding:22px 0 0;border-top:1px solid #ffffff4d}
body.auth-page .auth-story-steps li{display:grid;gap:5px;min-width:0;color:#fff;font-size:.84rem;line-height:1.35}
body.auth-page .auth-story-steps li span{color:#ffffffa8;font-size:.7rem;letter-spacing:.13em}
body.auth-page .auth-content{grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:50px clamp(36px,5vw,76px)}
body.auth-page .auth-kicker{display:block;margin-bottom:15px;color:#2424f2;font-size:.7rem;font-weight:600;letter-spacing:.17em}
body.auth-page .auth-content h1{margin:0;color:#25263a;font-size:clamp(2.65rem,3.7vw,3.9rem);font-weight:500;line-height:1.04;letter-spacing:-.055em;text-align:left}
body.auth-page .auth-deck{margin:15px 0 0;color:#657087;font-size:1rem;line-height:1.55}
body.auth-page .auth-content>form{width:100%;max-width:none;margin:28px 0 0;padding:0;background:none;border:0;border-radius:0;box-shadow:none}
body.auth-page .auth-content>form label{margin:19px 0 8px;color:#343b53;font-size:.83rem;font-weight:600}
body.auth-page .auth-content>form label:first-of-type{margin-top:0}
body.auth-page .auth-content>form input{min-height:54px;padding:14px 16px;background:#f8f8ff;border:1px solid #d8dced;border-radius:3px;transition:border-color 150ms ease,background-color 150ms ease,box-shadow 150ms ease}
body.auth-page .auth-content>form input:hover{background:#fff;border-color:#b5b9d8}
body.auth-page .auth-content>form input:focus{outline:none;background:#fff;border-color:#5550f2;box-shadow:0 0 0 3px #2424f21c}
body.auth-page .auth-content>form button{display:block;width:100%;min-height:54px;margin-top:27px;background:#2424f2;border-color:#2424f2;border-radius:0;color:#fff;font-size:1rem;font-weight:500;box-shadow:0 12px 25px #2424f226}
body.auth-page .auth-content>form button:hover{background:#1717c8;border-color:#1717c8;box-shadow:0 15px 28px #2424f232}
body.auth-page .auth-content .hint{margin:10px 0 0;color:#778199;font-size:.83rem;line-height:1.5}
body.auth-page .auth-content .hint a,body.auth-page .auth-content .subtle a{font-weight:600;text-decoration:none;border-bottom:1px solid #2424f25c}
body.auth-page .auth-content .hint a:hover,body.auth-page .auth-content .subtle a:hover{border-bottom-color:#2424f2}
body.auth-page .auth-content>.subtle{margin:19px 0 0;color:#6a758d;font-size:.88rem;text-align:left}
body.auth-page .auth-content>.subtle+.subtle{margin-top:8px}
body.auth-page .auth-content>.notice{margin:23px 0 -4px;padding:12px 15px;border:0;border-left:3px solid #2424f2;border-radius:0;background:#f2f2ff;color:#59647a;font-size:.83rem;line-height:1.55}
body.auth-page .auth-content>.alert{margin:22px 0 0;padding:12px 15px;border-radius:2px;font-size:.88rem}
body.auth-page footer{width:min(1180px,calc(100% - 48px));max-width:none;margin:0 auto;padding:24px 0 30px;color:#768199;font-size:.8rem}
body.auth-page footer a{text-decoration:none;border-bottom:1px solid #a5a8d4}
@media(max-width:850px){body.auth-page .auth-main{width:min(620px,calc(100% - 36px));margin-top:28px}body.auth-page .auth-stage{grid-template-columns:1fr;min-height:0}body.auth-page .auth-story{grid-column:1;grid-row:1;min-height:235px;padding:26px 32px}body.auth-page .auth-story-top{display:none}body.auth-page .auth-story-copy{margin:0;padding:0}body.auth-page .auth-story-eyebrow{margin-bottom:13px}body.auth-page .auth-story h2{max-width:18ch;font-size:2.7rem}body.auth-page .auth-story-description{max-width:50ch;margin-top:14px}body.auth-page .auth-story-steps{margin-top:22px;padding-top:15px}body.auth-page .auth-content{grid-column:1;grid-row:2;padding:38px 42px 45px}body.auth-page footer{width:min(620px,calc(100% - 36px))}}
@media(max-width:760px){body.auth-page header .wrap{grid-template-columns:minmax(0,1fr) auto;gap:12px}body.auth-page header .account-nav-main{display:none}body.auth-page header .account-nav-actions{grid-column:2}}
@media(max-width:600px){body.auth-page header .wrap{min-height:66px;padding:10px 18px}body.auth-page header .brand{font-size:1.22rem;gap:8px}body.auth-page header .account-logo{width:29px;height:29px}body.auth-page header .account-nav-actions{gap:6px}body.auth-page header .account-nav-actions a{font-size:.79rem;min-height:36px;padding:0 9px}body.auth-page .auth-main{width:calc(100% - 24px);margin-top:12px}body.auth-page .auth-story{min-height:185px;padding:24px 23px}body.auth-page .auth-story h2{font-size:clamp(2rem,9vw,2.6rem)}body.auth-page .auth-story-description{margin-top:10px;font-size:.87rem;line-height:1.45}body.auth-page .auth-story-steps{display:none}body.auth-page .auth-content{padding:30px 24px 35px}body.auth-page .auth-content h1{font-size:2.55rem}body.auth-page .auth-deck{margin-top:10px;font-size:.9rem}body.auth-page .auth-content>form{margin-top:23px}body.auth-page .auth-content>form input{min-height:51px}body.auth-page .auth-content>.subtle{font-size:.82rem;line-height:1.5}body.auth-page footer{width:calc(100% - 24px);padding:18px 4px 26px}}
@media(max-width:440px){body.auth-page header .auth-nav-login{display:none}body.auth-page header .auth-nav-action span{display:none}body.auth-signup header .auth-nav-login{display:inline-flex}body.auth-signup header .auth-nav-action{display:none}}
@media(max-width:360px){body.auth-page header .wrap{padding-inline:12px}body.auth-page .auth-content{padding-inline:18px}body.auth-page .auth-story{padding-inline:18px}}
/* Language choice stays available on registration and sign-in pages. */
.account-language{position:relative;z-index:40;font-size:13px}
.account-language summary{cursor:pointer;list-style:none;padding:9px 12px;border:1px solid #dfe2ef;min-width:48px;text-align:center;color:#2424f2}
.account-language summary::-webkit-details-marker{display:none}
.account-language-options{position:absolute;right:0;top:calc(100% + 5px);width:190px;max-height:min(70vh,480px);overflow-y:auto;background:#fff;border:1px solid #dfe2ef;box-shadow:0 16px 36px #24246b20;padding:6px}
.account-language-options a{display:block;padding:9px 10px;color:#25263a;text-decoration:none;white-space:nowrap}
.account-language-options a:hover,.account-language-options a[aria-current]{background:#eeedff;color:#2424f2}
html[dir="rtl"] .account-language-options{right:auto;left:0}
