
:root{
  --blue: #174a8b;
  --gold: #f0c04a;
  --ink: #141414;
  --bg: #ffffff;
  --muted: #666;
  --line: #e5e7eb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;line-height:1.5}
.container{max-width:1100px;margin:0 auto;padding:1rem 1.25rem}
header .brand{display:flex;align-items:center;gap:1rem;padding:.5rem 0}
header .brand img{max-width:100%;object-fit:cover;border-radius:.25rem;margin:auto}
header .title{font-weight:700;color:var(--blue);font-size:1.4rem}
nav{background:var(--blue)}
nav .container{display:flex;gap:.5rem;flex-wrap:wrap}
nav a{color:#fff;text-decoration:none;padding:.75rem 1rem;border-radius:.35rem;display:inline-block}
nav a:hover, nav a[aria-current="page"]{background:rgba(255,255,255,.12)}
main{padding:1.25rem 0}
footer{border-top:1px solid var(--line);margin-top:2rem}
footer .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem}
.badge{display:inline-block;padding:.2rem .5rem;border:1px solid var(--line);border-radius:.35rem;font-size:.8rem;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.grid{grid-template-columns:1fr}}
.card{border:1px solid var(--line);border-radius:.6rem;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.card a{display:block;padding:1.25rem;text-decoration:none;color:inherit}
.card h3{margin:.2rem 0 .4rem;font-size:1.15rem}
.card p{margin:0;color:var(--muted)}
table{width:100%;border-collapse:collapse}
thead th{background:#f8fafc}
th,td{border:1px solid var(--line);padding:.55rem .6rem;text-align:left;vertical-align:top}
tbody tr:nth-child(odd){background:#fcfcfc}
.small{width:5rem;text-align:center}
.time{width:16rem}
.note{padding:.8rem 1rem;background:#f9fafb;border:1px solid var(--line);border-radius:.5rem;margin-top:1rem}
.hero{
  background: linear-gradient(90deg, rgba(23,74,139,.12), rgba(240,192,74,.10));
  border-bottom: 1px solid var(--line);
}
.hero .container{
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.25rem;
}
.hero .logo{display:flex;align-items:center;gap:1rem}
.hero .logo .wordmark{font-size:1.6rem;font-weight:800;color:var(--blue);letter-spacing:.3px}
.hero small{color:var(--muted)}
.button-like{display:inline-block;background:var(--gold);color:#111;padding:.5rem .8rem;border-radius:.45rem;font-weight:600;text-decoration:none}
.button-like:hover{filter:brightness(0.98)}
