/* Airlend Flow v23 — Broker self signup + passwordless access */
.af-page--broker-auth,
.af-page--broker-admin { background: #f6f8ff; min-height: 100vh; }
.af-broker-auth-hero { align-items: stretch; }
.af-broker-auth-steps { display:grid; gap:10px; min-width: 280px; }
.af-broker-auth-steps span { display:flex; align-items:center; gap:10px; background:#fff; border:1px solid rgba(28,46,96,.10); border-radius:16px; padding:14px 16px; box-shadow:0 12px 28px rgba(15,23,42,.06); font-weight:900; color:#17213f; }
.af-broker-auth-steps strong { color:#4d63ff; font-size:12px; letter-spacing:.08em; }
.af-broker-auth-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr); gap:22px; align-items:start; }
.af-broker-login-shell { max-width:860px; margin:0 auto; padding:30px 22px 70px; }
.af-broker-login-card h1 { margin:0; font-size:clamp(30px,4.2vw,54px); line-height:.96; letter-spacing:-.055em; color:#111a3b; }
.af-broker-auth-form .af-input--stacked { margin-top:10px; }
.af-broker-auth-check { display:flex; gap:12px; margin:18px 0 0; padding:14px 16px; border-radius:16px; border:1px solid rgba(29,56,122,.10); background:#f9fbff; color:#516079; font-weight:750; }
.af-broker-auth-check input { margin-top:2px; }
.af-broker-auth-side { position:sticky; top:20px; }
.af-broker-auth-side h2 { margin:4px 0 10px; color:#111a3b; letter-spacing:-.035em; }
.af-broker-auth-result,
.af-broker-login-result { margin-top:18px; border:1px dashed rgba(77,99,255,.28); border-radius:18px; padding:16px; background:#fbfcff; color:#526076; }
.af-broker-auth-result.is-success,
.af-broker-login-result.is-success { border-style:solid; background:linear-gradient(180deg,rgba(77,99,255,.06),#fff); color:#17213f; }
.af-broker-auth-result h3,
.af-broker-login-result h3 { margin:6px 0; font-size:20px; color:#111a3b; letter-spacing:-.02em; }
.af-field-grid--login { grid-template-columns:minmax(0,1fr) auto; align-items:end; }
.af-broker-code-form { margin-top:18px; padding-top:18px; border-top:1px solid rgba(15,23,42,.08); }
.af-broker-admin-card { margin-bottom:70px; }
.af-field-grid--adminfilters { grid-template-columns:190px minmax(230px,320px); gap:10px; }
.af-broker-admin-list { display:grid; gap:12px; padding:16px; }
.af-broker-application-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; padding:16px; border:1px solid rgba(28,46,96,.10); border-radius:18px; background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.05); }
.af-broker-application-row strong { color:#111a3b; font-size:16px; }
.af-broker-application-row small { display:block; color:#68728a; margin-top:5px; }
.af-broker-application-meta { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.af-broker-application-meta span { border:1px solid rgba(77,99,255,.16); background:rgba(77,99,255,.06); color:#25305b; border-radius:999px; padding:6px 10px; font-size:12px; font-weight:850; }
.af-broker-application-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.af-broker-access-actions { display:flex; gap:10px; flex-wrap:wrap; }
.af-broker-access-message { display:grid; gap:12px; }
.af-broker-access-message p { margin:0; color:#56627d; }
.af-broker-locked { border:1px solid rgba(245,158,11,.25); background:#fffaf0; color:#6b4e12; border-radius:16px; padding:14px 16px; font-weight:800; }
@media (max-width: 980px) { .af-broker-auth-grid { grid-template-columns:1fr; } .af-broker-auth-side { position:static; } .af-field-grid--login, .af-field-grid--adminfilters { grid-template-columns:1fr; } .af-broker-application-row { grid-template-columns:1fr; } .af-broker-application-actions { justify-content:flex-start; } }
