/* Entrada de autenticação do Plantão 2.0. A interface interna usa plantao-system.css. */
body { background: #071925; }
.auth-gate {
  background:
    radial-gradient(circle at 14% 18%, #1a56644d, transparent 31rem),
    radial-gradient(circle at 84% 90%, #1b718241, transparent 28rem),
    linear-gradient(145deg, #081724, #071b29 54%, #08232e);
}
.auth-gate::before, .auth-gate::after { display: none; }
.auth-gate .auth-shell {
  width: min(1090px, 100%);
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
  grid-template-rows: auto 1fr;
  column-gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
}
.auth-gate .auth-brand { grid-column: 1; grid-row: 1; align-self: start; margin: 0 0 3rem; }
.auth-gate .auth-logo { background: #53d4df; color: #09242e; box-shadow: 0 0 30px #52d4dd48; }
.auth-gate .auth-brand span { color: #9ebec9; }
.auth-showcase { grid-column: 1; grid-row: 2; align-self: center; color: #effcff; min-width: 0; }
.auth-showcase-kicker { display: inline-flex; align-items: center; gap: .6rem; color: #81dce2; font-size: .69rem; font-weight: 850; letter-spacing: .17em; }
.auth-showcase-kicker i { width: .5rem; height: .5rem; border-radius: 50%; background: #55d9d9; box-shadow: 0 0 14px #55d9d9; }
.auth-showcase h2 { max-width: 11ch; font-size: clamp(2.7rem, 5.4vw, 5.2rem); line-height: .98; letter-spacing: -.065em; margin: 1.2rem 0; }
.auth-showcase h2 em { color: #63dce0; font-style: normal; }
.auth-showcase > p { max-width: 35rem; color: #a9c5cf; font-size: 1rem; line-height: 1.6; }
.auth-showcase-map { display: flex; flex-wrap: wrap; gap: .55rem; margin: 1.75rem 0 1rem; }
.auth-showcase-map span { padding: .6rem .75rem; border: 1px solid #2d5666; border-radius: .7rem; color: #d5ecf0; background: #ffffff09; font-size: .75rem; }
.auth-showcase-map b { color: #69d9df; margin-right: .35rem; }
.auth-showcase-specimen { position: relative; width: min(100%, 490px); background: linear-gradient(120deg, #143a49aa, #0b2636); border: 1px solid #2b5667; border-radius: 1rem; overflow: hidden; padding: .3rem .7rem .55rem; }
.auth-showcase-specimen svg { display: block; width: 100%; height: auto; }
.auth-showcase-specimen span { display: block; color: #86bfc9; font-size: .58rem; font-weight: 800; letter-spacing: .16em; margin: 0 0 .4rem .65rem; }
.auth-gate .auth-card {
  grid-column: 2;
  grid-row: 1 / 3;
  width: 100%;
  background: #0c2635ed;
  border: 1px solid #396071;
  box-shadow: 0 28px 95px #0007, inset 0 1px #ffffff18;
  color: #f2fbfd;
  padding: clamp(1.5rem, 3vw, 2.4rem);
}
.auth-gate .auth-card h1 { color: #fff; font-size: clamp(2rem, 3vw, 2.65rem); }
.auth-gate .auth-card > p, .auth-gate .auth-card .auth-note, .auth-gate .auth-card .field small { color: #a4bec8; }
.auth-gate .auth-kicker { color: #71dde2; }
.auth-gate .auth-card .field label { color: #e2f2f4; }
.auth-gate .auth-card .field input { background: #081c2a; color: #fff; border: 1px solid #456b79; }
.auth-gate .auth-card .field input:focus { border-color: #73dce0; box-shadow: 0 0 0 3px #5fd7dd30; }
.auth-gate .auth-card .auth-submit { background: #5bd5db; color: #062b36; font-weight: 850; }
.auth-gate .auth-card .auth-note { border-color: #315465; }
.auth-gate .auth-card a { color: #85e5e7; }


@media (max-width: 800px) {
  .auth-gate { padding: 1rem; align-items: start; }
  .auth-gate .auth-shell { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto auto; width: min(510px, 100%); gap: 0; }
  .auth-gate .auth-brand { grid-column: 1; grid-row: 1; margin: .4rem 0 1rem; }
  .auth-showcase { grid-column: 1; grid-row: 2; margin-bottom: 1.15rem; }
  .auth-showcase h2 { max-width: none; font-size: clamp(2.1rem, 7vw, 3.2rem); margin: .6rem 0; }
  .auth-showcase > p { font-size: .85rem; margin: 0; }
  .auth-showcase-map, .auth-showcase-specimen { display: none; }
  .auth-gate .auth-card { grid-column: 1; grid-row: 3; }
}
@media (max-width: 420px) {
  .auth-gate .auth-card { padding: 1.3rem; }
  .auth-showcase h2 { font-size: 2rem; }
  .auth-showcase > p { font-size: .8rem; }
}
