:root {
  color-scheme: light;
  --blue: #143b5d;
  --blue-bright: #176aa5;
  --yellow: #f4bf00;
  --ink: #17212b;
  --muted: #111111;
  --line: #cbd8e4;
  --background: #f4f7fa;
  --white: #ffffff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: linear-gradient(145deg, #eef5fb, #fff8df); color: var(--ink); }
.login-shell { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.login-card { width: min(460px, 100%); background: var(--white); border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 24px 70px rgba(20, 59, 93, .14); padding: 38px; }
.brand-lockup { font-size: 27px; font-weight: 800; letter-spacing: -.04em; margin-bottom: 30px; }
.brand-smiling { color: var(--blue); }
.brand-cfo { color: var(--yellow); }
.eyebrow { margin: 0 0 8px; color: var(--blue-bright); font-weight: 800; font-size: 13px; letter-spacing: .15em; }
h1 { margin: 0; color: var(--blue); font-size: 34px; }
.intro, .support { color: var(--muted); line-height: 1.55; }
form { display: grid; gap: 18px; margin-top: 26px; }
label { display: grid; gap: 7px; font-weight: 700; color: var(--blue); }
input { width: 100%; border: 1px solid #9fb4c7; border-radius: 11px; padding: 13px 14px; font: inherit; color: var(--ink); }
input:focus { outline: 3px solid rgba(23, 106, 165, .18); border-color: var(--blue-bright); }
button { border: 0; border-radius: 11px; background: var(--blue); color: white; font: inherit; font-weight: 800; padding: 14px 18px; cursor: pointer; }
button:hover { background: #0d2d49; }
.error-message:empty { display: none; }
.error-message { margin-top: 20px; background: #fff0f0; color: #9b1c1c; border: 1px solid #efb6b6; border-radius: 10px; padding: 11px 13px; }
.support { font-size: 13px; margin: 24px 0 0; }
@media (max-width: 520px) { .login-card { padding: 28px 22px; } }

.success-message { color: #0f6b3e; background: #eaf6ef; border: 1px solid #b8dfc8; border-radius: 10px; padding: 10px 12px; margin: 0 0 12px; }
.success-message:empty, .error-message:empty { display: none; }

.pilot-label{display:inline-flex;margin:0 0 18px;padding:7px 10px;border-radius:999px;background:#fff3c4;color:#5c4700;border:1px solid #e4c751;font-size:11px;font-weight:800;letter-spacing:.06em}.login-card{position:relative}

/* Build 4.1H locked SmilingCFO identity */
.auth-brand-logo { display:block; width:min(260px,75vw); height:auto; border-radius:2px; }
