/* Sign in / sign up / reset: roomy brand panel on the left, calm form on the right. */
@font-face{font-family:"Funnel Display";font-style:normal;font-weight:300 800;font-display:swap;src:url(../fonts/funnel-display-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Funnel Display";font-style:normal;font-weight:300 800;font-display:swap;src:url(../fonts/funnel-display-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/instrument-sans-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/instrument-sans-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
.auth{--deep:color-mix(in srgb,var(--brand-dark) 46%,#02100a);--doodle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 30h30a6 6 0 016 6v14a6 6 0 01-6 6H40l-8 8v-8h-10a6 6 0 01-6-6V36a6 6 0 016-6z'/%3E%3Cpath d='M112 24l5 10 11 1-8 8 2 11-10-5-10 5 2-11-8-8 11-1z'/%3E%3Crect x='120' y='96' width='24' height='40' rx='5'/%3E%3Cpath d='M128 130h8'/%3E%3Cpath d='M30 108l7 8 14-16'/%3E%3Cpath d='M58 150a9 9 0 0118 0c0 9-9 14-9 14s-9-5-9-14z'/%3E%3Ccircle cx='150' cy='60' r='9'/%3E%3C/svg%3E");font-family:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:16.5px}

/* left: brand panel */
.auth-art{position:relative;isolation:isolate;overflow:hidden;background:var(--deep);padding:44px clamp(40px,6vw,96px);justify-content:space-between;gap:40px}
.auth-art:before{content:"";position:absolute;inset:0;background:var(--doodle) 0 0/180px;opacity:.06;z-index:-1}
.auth-art:after{content:"";position:absolute;width:640px;height:640px;right:-220px;top:-220px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--brand) 55%,transparent),transparent 70%);opacity:.5;z-index:-1}
.auth-logo{display:inline-flex;align-items:center;gap:12px;align-self:flex-start;color:#fff;text-decoration:none;font:700 1.3rem/1 "Funnel Display","Instrument Sans",system-ui,sans-serif;letter-spacing:-.02em}
.auth-logo:hover{text-decoration:none;opacity:.92}
.auth-logo .logo{width:44px;height:44px;border-radius:13px;background:linear-gradient(150deg,var(--brand),var(--brand-dark));display:grid;place-items:center;font-weight:800;font-size:1.2rem;box-shadow:inset 0 -2px 0 rgba(0,0,0,.16);overflow:hidden;flex:none}
.auth-logo .logo.has-img{background:#fff;padding:4px}
.auth-mid{max-width:600px}
.auth-art h1{font:700 clamp(2.5rem,3.9vw,4rem)/1.02 "Funnel Display","Instrument Sans",system-ui,sans-serif;letter-spacing:-.04em;color:#fff;margin:0}
.auth-art .auth-mid p{margin:24px 0 0;font-size:clamp(1.1rem,1.35vw,1.3rem);line-height:1.55;color:rgba(255,255,255,.8);max-width:34em}
.auth-art ul{list-style:none;padding:0;margin:34px 0 0;display:grid;gap:16px}
.auth-art li{display:flex;align-items:center;gap:14px;padding:0;font-size:clamp(1.05rem,1.25vw,1.2rem);color:#fff;font-weight:500}
.auth-art li:before{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 14.5l4 4 8-9'/%3E%3C/svg%3E") center/28px no-repeat;color:transparent}
.auth-foot{display:flex;gap:10px 28px;flex-wrap:wrap;justify-content:space-between;font-size:.95rem;color:rgba(255,255,255,.65)}
.auth-foot a{color:#fff;text-decoration:none;opacity:.9} .auth-foot a:hover{opacity:1;text-decoration:underline}

/* right: form */
.auth-form{padding:40px 28px}
.auth-card{max-width:430px}
.auth-card h2{font:700 2rem/1.1 "Funnel Display","Instrument Sans",system-ui,sans-serif;letter-spacing:-.035em;margin-bottom:8px}
.auth-card input[type=text],.auth-card input[type=email],.auth-card input[type=password]{padding:13px 15px;border-radius:12px;font-size:1rem}
.auth-card .field label{font-size:.95rem}
.auth-card .btn{border-radius:999px;padding:14px 22px;font-size:1.02rem}
.auth-mlogo{display:none;align-items:center;gap:10px;margin-bottom:28px;color:var(--ink);text-decoration:none;font:700 1.2rem/1 "Funnel Display","Instrument Sans",system-ui,sans-serif}
.auth-mlogo .logo{width:38px;height:38px;border-radius:11px;background:var(--brand-dark);color:#fff;display:grid;place-items:center;font-weight:800;overflow:hidden}
.auth-mlogo .logo.has-img{background:#fff;border:1px solid var(--line);padding:3px}

@media (max-width:900px){
  .auth-art{display:none}
  .auth-form{align-items:flex-start;padding-top:48px}
  .auth-mlogo{display:inline-flex}
}

/* Continue with Google / Facebook */
.sl-wrap{display:grid;gap:10px;margin-bottom:6px}
.sl-btn{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;border:1px solid #cfd9d4;border-radius:999px;background:#fff;color:var(--ink);font-weight:600;font-size:.98rem;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s}
.sl-btn:hover{background:#f7faf8;border-color:#b7c7bf;text-decoration:none;box-shadow:0 6px 16px -10px rgba(16,35,30,.4)}
.sl-btn svg{width:20px;height:20px;flex:none}
.sl-or{display:flex;align-items:center;gap:14px;margin:18px 0 20px;color:var(--soft);font-size:.88rem}
.sl-or:before,.sl-or:after{content:"";flex:1;border-top:1px solid var(--line)}
.captcha-box label{font-weight:600}

/* Uploaded logo: shown at its real shape, no brand name beside it */
.auth-logo .logo.logo-wide{width:auto;height:auto;max-width:260px;padding:6px 14px;border-radius:14px;background:#fff}
.auth-logo .logo.logo-wide img{width:auto;height:44px;max-width:100%;object-fit:contain}
.auth-mlogo .logo.logo-wide{width:auto;height:auto;max-width:220px;padding:5px 10px;border-radius:11px;background:#fff;border:1px solid var(--line)}
.auth-mlogo .logo.logo-wide img{width:auto;height:36px;max-width:100%;object-fit:contain}
