@font-face{font-family:Inter;src:url('/assets/assets/inter-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/assets/inter-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/assets/inter-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/assets/inter-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/assets/inter-800.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:Caveat;src:url('/assets/assets/caveat-600.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--auth-ink:#242128;--auth-muted:#716b78;--auth-quiet:#9b92a2;--auth-line:#e7e0e9;--auth-mint:#e8f5ef;--auth-lav:#f1eafb;--auth-pink:#fff0f6;--auth-purple:#775486;--auth-danger:#b74b69;--auth-success:#3e8063}
*{box-sizing:border-box}
html{min-width:320px;background:#fff}
body{margin:0;min-width:320px;background:#fff;color:var(--auth-ink);font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.5}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #c6a5dc;outline-offset:3px}
.auth-shell{min-height:100vh;background:radial-gradient(circle at 0 0,#fff8fc 0,transparent 25%),radial-gradient(circle at 100% 100%,#f2fbf6 0,transparent 28%),#fff}
.auth-header{display:flex;align-items:center;justify-content:space-between;width:min(100% - 48px,1080px);margin:0 auto;padding:30px 0 22px}
.auth-logo{display:inline-flex;align-items:center;line-height:0}
.auth-logo img{display:block;width:92px;height:auto;mix-blend-mode:multiply}
.auth-topbar{display:flex;align-items:center;gap:12px;color:var(--auth-quiet);font-size:13px}
.auth-topbar a{color:#5f476b;font-weight:700;text-decoration:underline;text-decoration-color:#dac7e2;text-underline-offset:5px;transition:color .18s}
.auth-topbar a:hover{color:var(--auth-ink)}
.auth-main{display:flex;justify-content:center;width:100%;padding:56px 24px 72px}
.auth-panel{width:100%;max-width:440px}
.auth-eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:15px;color:#8e709d;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.auth-eyebrow-dot{width:8px;height:8px;border-radius:50%;background:#b9e6d2;box-shadow:0 0 0 4px #eef9f3}
.auth-heading{margin:0;color:var(--auth-ink);font-size:clamp(39px,5vw,56px);line-height:1.01;letter-spacing:-2.5px;font-weight:800}
.auth-description{max-width:420px;margin:17px 0 0;color:var(--auth-muted);font-size:15px;line-height:1.65}
.auth-form-card{margin-top:28px;padding:26px 24px;border:1px solid var(--auth-line);border-radius:24px;background:#ffffffd9;box-shadow:0 18px 50px #6b4c7d0d;backdrop-filter:blur(8px)}
.auth-form{display:grid;gap:18px}
.auth-field{display:grid;gap:8px}
.auth-label{font-size:13px;font-weight:700;color:#4d4552}
.auth-input-wrap{position:relative}
.auth-input{display:block;width:100%;min-height:58px;padding:16px 17px;border:1px solid #ddd5e1;border-radius:16px;background:#fff;color:var(--auth-ink);font-size:15px;outline:0;transition:border-color .18s,box-shadow .18s,background .18s}
.auth-input.has-toggle{padding-right:78px}
.auth-input::placeholder{color:#b3a9b9}.auth-input:hover{border-color:#c9b9d0}.auth-input:focus{border-color:#9674a5;background:#fff;box-shadow:0 0 0 4px #f2eafa}
.auth-toggle{position:absolute;right:10px;top:50%;padding:7px 8px;border:0;border-radius:9px;background:transparent;color:#806d89;font-size:12px;font-weight:700;transform:translateY(-50%);transition:background .18s,color .18s}.auth-toggle:hover{background:var(--auth-lav);color:#5e4c68}
.auth-help{margin:0;color:#938999;font-size:12px;line-height:1.55}.auth-help a,.auth-link{color:var(--auth-purple);text-decoration:underline;text-decoration-color:#d9c5df;text-underline-offset:3px}
.auth-error{margin:4px 0 0;color:var(--auth-danger);font-size:12px;line-height:1.45}.auth-error-summary{margin-bottom:20px;padding:12px 14px;border:1px solid #f1cad6;border-radius:13px;background:#fff5f7;color:var(--auth-danger);font-size:12px}.auth-status{margin-bottom:20px;padding:12px 14px;border:1px solid #cde7d8;border-radius:13px;background:#f2fbf5;color:var(--auth-success);font-size:12px}
.auth-checks{display:grid;gap:12px;padding:16px;border:1px solid #e9e2ed;border-radius:17px;background:linear-gradient(135deg,#fff,#fbf8fd)}
.auth-check{display:flex;align-items:flex-start;gap:11px;color:#716976;font-size:13px;line-height:1.55}.auth-check input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--auth-ink)}.auth-check a{color:#654c75;text-decoration:underline;text-underline-offset:3px}
.auth-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.auth-forgot{color:#765483;font-size:13px;font-weight:600;text-decoration:underline;text-decoration-color:#d8c2df;text-underline-offset:3px}
.auth-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;width:100%;min-height:58px;padding:15px 20px;border:1px solid var(--auth-ink);border-radius:16px;background:var(--auth-ink);color:#fff;font-size:14px;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s}.auth-button:hover{background:#3a343e;box-shadow:0 9px 20px #24212822;transform:translateY(-1px)}.auth-button:active{transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.55;transform:none}
.auth-footer{text-align:center;margin:20px 0 0;color:#978e9d;font-size:13px}.auth-footer a{color:#654c75;font-weight:700;text-decoration:underline;text-decoration-color:#d8c2df;text-underline-offset:3px}
.auth-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}.auth-role-card{display:flex;min-height:226px;flex-direction:column;justify-content:space-between;padding:21px;border:1px solid var(--auth-line);border-radius:22px;background:#fff;box-shadow:0 12px 30px #5b456b09;transition:transform .2s,box-shadow .2s,border-color .2s}.auth-role-card:hover{border-color:#cdb8d4;box-shadow:0 16px 35px #5b456b17;transform:translateY(-3px)}.auth-role-card.creator{background:linear-gradient(145deg,#fff,#fbf5fd)}.auth-role-card.fan{background:linear-gradient(145deg,#fff,#f6fcf9)}.auth-role-tag{display:flex;align-items:center;gap:8px;width:max-content;padding:7px 10px;border-radius:99px;background:var(--auth-lav);color:#765986;font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.auth-role-tag:before{content:"";width:7px;height:7px;border-radius:50%;background:#c9a8da}.fan .auth-role-tag{background:var(--auth-mint);color:#4f8068}.fan .auth-role-tag:before{background:#9bd9bb}.auth-role-card h2{margin:26px 0 10px;font-size:23px;line-height:1.08;letter-spacing:-.8px}.auth-role-card p{margin:0;color:var(--auth-muted);font-size:13px;line-height:1.6}.auth-role-cta{display:flex;align-items:center;justify-content:space-between;margin-top:20px;color:#5d426c;font-size:12px;font-weight:700}.auth-role-cta span{font-size:20px;transition:transform .18s}.auth-role-card:hover .auth-role-cta span{transform:translateX(4px)}
.auth-note{margin:17px 0 0;color:#9a909f;font-size:12px;line-height:1.6}
@media(max-width:600px){.auth-header{width:calc(100% - 32px);padding:21px 0 15px}.auth-logo img{width:78px}.auth-topbar{font-size:12px}.auth-topbar span{display:none}.auth-main{padding:35px 16px 42px}.auth-heading{font-size:43px;letter-spacing:-2px}.auth-description{font-size:14px}.auth-form-card{margin-top:23px;padding:21px 17px;border-radius:20px}.auth-role-grid{grid-template-columns:1fr;margin-top:24px}.auth-role-card{min-height:0;padding:20px}.auth-role-card h2{margin-top:22px;font-size:23px}.auth-actions{align-items:flex-start;flex-direction:column-reverse}.auth-forgot{align-self:flex-end}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
