/* App de Viagem — estilos base (identidade visual provisória; definitiva é decisão do Hudson). */
:root {
  --bg: #0f172a;          /* azul-noite */
  --card: #1e293b;
  --border: #334155;
  --text: #e2e8f0;
  --muted: #94a3b8;
  --brand: #38bdf8;        /* azul-céu */
  --brand-strong: #0ea5e9;
  --ok: #4ade80;
  --radius: 16px;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;
  min-height: 100dvh;
  -webkit-font-smoothing: antialiased;
}

.wrap {
  max-width: 480px;
  margin: 0 auto;
  padding: 2rem 1.25rem 6rem;
}

.head { text-align: center; padding: 2.5rem 0 1.5rem; }
.head .logo-emoji { font-size: 3.5rem; display: block; margin-bottom: .75rem; }
.head h1 { font-size: 1.6rem; margin: 0 0 .35rem; letter-spacing: -.02em; }
.head .sub { color: var(--muted); font-size: .95rem; }

.card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.25rem;
  margin-top: 1rem;
}
.card h2 { font-size: 1.05rem; margin: 0 0 .5rem; }
.card p { margin: .25rem 0; color: var(--muted); font-size: .92rem; line-height: 1.5; }

.status-line { display: flex; align-items: center; gap: .5rem; font-size: .92rem; margin: .4rem 0; }
.status-line .dot { width: 9px; height: 9px; border-radius: 50%; background: var(--muted); flex: none; }
.status-line.ok .dot { background: var(--ok); }
.status-line.ok { color: var(--text); }

.btn {
  display: inline-block; width: 100%; text-align: center;
  background: var(--brand-strong); color: #fff; border: none;
  border-radius: 12px; padding: .85rem 1rem; font-size: 1rem; font-weight: 700;
  font-family: inherit; cursor: pointer;
}
.btn:active { transform: scale(.98); }

.foot { text-align: center; color: var(--muted); font-size: .8rem; margin-top: 2rem; }
