:root { color-scheme: light; --navy:#062a50; --gold:#e6a71f; --paper:#f2f5f6; --ink:#17334f; }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; background:linear-gradient(145deg,#e8eff2,var(--paper) 52%,#f8fafb); color:var(--ink); font-family:Arial,"Helvetica Neue",sans-serif; }
.shell { width:min(100% - 32px,780px); margin:0 auto; padding:46px 0 30px; }
.brand { border-left:5px solid var(--gold); padding-left:16px; }
.brand-name { margin:0; color:var(--navy); font-size:1.25rem; font-weight:900; letter-spacing:.08em; }.brand-tagline { margin:5px 0 0; color:#627487; font-size:.64rem; font-weight:700; letter-spacing:.09em; }
.hero { margin:48px 0 28px; }.eyebrow,.code-label,dt { color:#66798c; font-size:.69rem; font-weight:900; letter-spacing:.13em; }.hero h1 { margin:10px 0; color:var(--navy); font-size:clamp(2rem,6vw,3.5rem); letter-spacing:-.055em; line-height:.98; }.hero p:not(.eyebrow) { max-width:590px; color:#51687d; font-size:1rem; line-height:1.65; }
.lookup { padding:22px; border-radius:18px; background:var(--navy); box-shadow:0 18px 45px #062a5030; }.lookup label { display:block; margin-bottom:10px; color:#fff; font-size:.7rem; font-weight:900; letter-spacing:.12em; }.lookup-row { display:flex; gap:10px; }.lookup input { width:100%; min-width:0; border:1px solid #ffffff50; border-radius:10px; padding:14px 15px; color:var(--navy); font-size:1rem; font-weight:800; letter-spacing:.07em; outline:none; }.lookup input:focus { box-shadow:0 0 0 3px #e6a71f; }.lookup button,.download { border:0; border-radius:10px; background:var(--gold); color:var(--navy); cursor:pointer; padding:0 21px; font-size:.75rem; font-weight:900; letter-spacing:.08em; text-decoration:none; }.hint { margin:10px 0 0; color:#dce8ef; font-size:.73rem; }
.result { margin-top:28px; border:1px solid #d8e0e6; border-radius:18px; background:#fff; padding:28px; box-shadow:0 15px 38px #062a5014; }.result h2 { margin:0 0 9px; color:var(--navy); font-size:1.3rem; }.result > p { margin:0; color:#53697d; line-height:1.55; }.warning { border-color:#f0cf85; background:#fff9ea; }.loading { border-color:#bfd5e3; background:#f5fbff; }.status { display:inline-block; border-radius:999px; padding:7px 10px; background:#e7f7ed; color:#18703a !important; font-size:.68rem; font-weight:900; letter-spacing:.1em; }.invalid .status { background:#fff0ef; color:#a4332c !important; }.certificate h2 { margin-top:6px; font-size:1.8rem; letter-spacing:-.03em; }.code-label { margin:24px 0 2px !important; }.certificate dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:28px 0; padding-top:24px; border-top:1px solid #e2e8ed; }.certificate dd { margin:6px 0 0; color:var(--navy); font-size:.96rem; font-weight:700; line-height:1.4; }.download { display:inline-flex; min-height:45px; align-items:center; }
footer { margin-top:42px; color:#718293; font-size:.75rem; text-align:center; } footer p { margin:0 0 10px; } footer a { color:var(--navy); font-weight:900; letter-spacing:.07em; text-decoration:none; }
@media (max-width:560px) { .shell { padding-top:30px; }.lookup-row { flex-direction:column; }.lookup button { min-height:48px; }.certificate dl { grid-template-columns:1fr; gap:17px; } }
