:root {
  --v3-background:#f3f5f8; --v3-navy:#122239; --v3-blue:#245fc5;
  --v3-text:#17283d; --v3-muted:#58677b; --v3-border:#dce2ea;
  --v3-success:#167047; --v3-wrong:#b3343e; --v3-neutral:#596579;
  --v3-radius:12px; --v3-shadow:0 2px 8px rgb(18 34 57 / 5%);
  --v3-space-1:4px; --v3-space-2:8px; --v3-space-3:12px;
  --v3-space-4:16px; --v3-space-6:24px; --v3-space-8:32px;
  --v3-font:system-ui,-apple-system,"Segoe UI",sans-serif;
  --v3-text-small:.8125rem; --v3-text-body:1rem;
  --v3-text-title:clamp(1.5rem,3vw,2rem); --v3-text-section:1.125rem;
  --v3-max-width:1280px; --blue:var(--v3-blue);
}
* { box-sizing:border-box; }
body { margin:0; background:var(--v3-background); color:var(--v3-text); font-family:var(--v3-font); font-size:var(--v3-text-body); line-height:1.5; }
a { color:var(--v3-blue); }
a:hover { text-decoration:underline; }
:focus-visible { outline:3px solid #6c9ff2; outline-offset:3px; }
.v3-header { background:linear-gradient(110deg,#19314c,var(--v3-navy)); color:white; }
.v3-header-inner { max-width:var(--v3-max-width); margin:auto; padding:12px var(--v3-space-6); display:flex; align-items:center; gap:var(--v3-space-8); flex-wrap:wrap; }
.v3-brand { display:inline-flex; align-items:center; gap:9px; flex-shrink:0; color:#f5f8fc; font-size:1.125rem; font-weight:700; letter-spacing:-.02em; line-height:1.2; white-space:nowrap; }
.v3-brand:hover { text-decoration:none; }
.v3-brand-mark { display:block; width:28px; height:28px; flex-shrink:0; }
.v3-navigation { display:flex; gap:var(--v3-space-1); margin:0; flex:1; }
.v3-navigation .tab { border:0; border-radius:6px; background:transparent; color:#d9e3f1; padding:10px; font-size:var(--v3-text-small); font-weight:600; text-align:center; }
.v3-navigation .tab:hover { background:#243b59; text-decoration:none; }
.v3-navigation .tab.active { background:#28466d; color:white; box-shadow:inset 0 -3px #83afff; }
.v3-account { display:flex; flex-wrap:wrap; gap:var(--v3-space-3); font-size:var(--v3-text-small); }
.v3-account a { color:#c2d7f8; }
.v3-container { max-width:var(--v3-max-width); margin:auto; padding:var(--v3-space-6); min-height:65vh; }
.card { background:white; border:1px solid var(--v3-border); border-radius:var(--v3-radius); box-shadow:var(--v3-shadow); padding:var(--v3-space-6); margin:var(--v3-space-4) 0; }
.muted { color:var(--v3-muted); }
h1 { font-size:var(--v3-text-title); line-height:1.2; }
h2,.v3-section-header { font-size:var(--v3-text-section); }
.v3-page-header { margin-bottom:var(--v3-space-6); }
.v3-page-header h1 { margin-bottom:var(--v3-space-2); }
.v3-empty-state { padding:var(--v3-space-8) var(--v3-space-4); text-align:center; }
.v3-status { display:inline-block; padding:2px 8px; border-radius:999px; font-size:var(--v3-text-small); border:1px solid currentColor; }
.v3-status--success { color:var(--v3-success); background:#edf8f1; }
.v3-status--wrong { color:var(--v3-wrong); background:#fff0f1; }
.v3-status--neutral { color:var(--v3-neutral); background:#f1f3f6; }
.v3-accordion summary { cursor:pointer; font-weight:650; }
.v3-accordion-body { margin-top:var(--v3-space-4); }
.v3-matchup { display:flex; align-items:center; flex-wrap:wrap; gap:var(--v3-space-3); }
.skip-link { position:absolute; left:16px; top:-100px; background:white; padding:12px; z-index:100; }
.skip-link:focus { top:8px; }
footer { padding:0 16px 24px; }
@media (max-width:760px) {
  .v3-header-inner { padding:16px; gap:12px; justify-content:space-between; }
  .v3-container { padding:16px; }
  body { padding-bottom:calc(90px + env(safe-area-inset-bottom)); }
  .v3-navigation { position:fixed; bottom:0; left:0; right:0; z-index:100; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; gap:0; background:var(--v3-navy); padding:6px 4px calc(6px + env(safe-area-inset-bottom)); box-shadow:0 -2px 12px rgb(18 34 57 / 12%); }
  .v3-navigation .tab { display:flex; align-items:center; justify-content:center; min-height:56px; padding:6px 3px; font-size:.6875rem; line-height:1.3; }
  .card { padding:16px; }
  .col { min-width:0; flex-basis:100%; }
}
