/* The House DC brand: blue #0063a8 / #005696, light blue #0083bf, orange #f36c21, PT Sans. Logo in assets/. */
@import url('https://fonts.googleapis.com/css2?family=PT+Sans:wght@400;700&display=swap');
:root {
  --blue:#0063a8; --blue-deep:#004a80; --blue-light:#0083bf; --orange:#f36c21; --orange-deep:#d4560f;
  --ink:#1d2730; --mute:#5b6670; --line:#d9e1ea; --bg:#f3f6fa; --card:#ffffff;
  --green:#1e8e3e; --amber:#f36c21; --red:#c5221f;
  --glass:rgba(255,255,255,.14); --glass-line:rgba(255,255,255,.35);
}
* { box-sizing:border-box; }
html, body { margin:0; font-family:"PT Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size:17px; color:var(--ink); background:var(--bg); -webkit-text-size-adjust:100%; }
button { font:inherit; font-size:1.05rem; cursor:pointer; border:0; border-radius:14px; padding:13px 20px; background:var(--blue); color:#fff; font-weight:700; letter-spacing:.01em; box-shadow:0 2px 6px rgba(0,74,128,.18); transition:transform .08s ease, box-shadow .15s ease, background .15s ease; }
button:hover { background:var(--blue-deep); }
button:active { transform:scale(.98); }
button.primary { background:var(--orange); } button.primary:hover { background:var(--orange-deep); }
button.ghost { background:#fff; color:var(--blue); border:1.5px solid var(--line); box-shadow:none; } button.ghost:hover { background:#f0f5fb; }
button.danger { background:var(--red); }
button.big { font-size:1.35rem; padding:20px 28px; border-radius:18px; }
button:disabled { opacity:.5; cursor:default; }
input, select, textarea { font:inherit; font-size:1.05rem; padding:13px 15px; border:1.5px solid var(--line); border-radius:14px; width:100%; background:#fff; color:var(--ink); }
input:focus, select:focus { outline:none; border-color:var(--blue-light); box-shadow:0 0 0 4px rgba(0,131,191,.15); }
.card { background:var(--card); border:1px solid var(--line); border-radius:18px; padding:20px; box-shadow:0 1px 3px rgba(29,39,48,.06); }
.row { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.mute { color:var(--mute); }
.pill { display:inline-block; padding:5px 12px; border-radius:999px; font-size:.95rem; font-weight:700; background:#e6f0f9; color:var(--blue); }
.pill.ok { background:#e6f4ea; color:var(--green); } .pill.warn { background:#fdeadf; color:var(--orange-deep); } .pill.bad { background:#fce8e6; color:var(--red); }
.hidden { display:none !important; }
.brand { display:flex; align-items:center; gap:12px; }
.brand img { height:40px; width:auto; display:block; }
