:root { color-scheme:light; --navy:#102d4f; --blue:#174d82; --ink:#172033; --muted:#5e687a; --line:#dce4ed; --green:#158c6b; }
* { box-sizing:border-box; }
body {
  min-height:100vh; margin:0; padding:32px 20px; color:var(--ink);
  background:radial-gradient(circle at top left,rgba(21,140,107,.12),transparent 36%),linear-gradient(145deg,#eef3f8,#f8fafc);
  font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.card { width:min(620px,100%); margin:7vh auto 24px; padding:clamp(28px,6vw,52px); border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 24px 64px rgba(16,45,79,.12); }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--navy); font-weight:800; text-decoration:none; }
.brand-mark { display:grid; width:38px; height:38px; place-items:center; border-radius:12px; color:#fff; background:var(--navy); font-size:13px; }
.eyebrow { margin:34px 0 8px; color:var(--green); font-size:13px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
h1 { margin:0; color:var(--navy); font-size:clamp(32px,7vw,48px); line-height:1.08; }
.lead { margin:16px 0 26px; color:var(--muted); font-size:18px; }
.notice { padding:20px 22px; border:1px solid #b9ddd2; border-radius:16px; background:#edf8f4; }
.notice h2 { margin:0 0 8px; color:var(--navy); font-size:17px; }
.notice ul { margin:0; padding-left:20px; }
.button { display:block; margin-top:24px; padding:14px 20px; border-radius:12px; color:#fff; background:var(--green); font-weight:800; text-align:center; text-decoration:none; }
.button:hover,.button:focus-visible { background:#107255; }
.help { margin:16px 0 24px; color:var(--muted); font-size:14px; }
nav { display:flex; flex-wrap:wrap; gap:10px 18px; padding-top:20px; border-top:1px solid var(--line); }
nav a { color:var(--blue); font-size:14px; font-weight:700; }
footer { color:var(--muted); font-size:13px; text-align:center; }
@media (max-width:560px) { body { padding:16px; } .card { margin-top:2vh; border-radius:18px; } nav { flex-direction:column; } }
