:root{--bg:#F3F6F7;--surface:#FFF;--ink:#17222D;--muted:#5B6977;--line:#D5DDE2;--accent:#0B6A86;--accent-soft:#E1EEF2;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#12191F;--surface:#1A232B;--ink:#E6ECF0;--muted:#98A6B2;--line:#2C3943;--accent:#5BB8D4;--accent-soft:#1D3440;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.55 "Public Sans","Helvetica Neue",Arial,sans-serif;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px)}
main{max-width:52rem;margin:0 auto;padding:4rem 1.5rem 5rem}
h1{font-size:2.25rem;line-height:1.15;font-weight:700;letter-spacing:-.01em;margin:0 0 .5rem}
h2{font-size:1rem;font-weight:500;color:var(--muted);margin:2.5rem 0 .75rem}
.intro{color:var(--muted);max-width:38rem;margin:0 0 2rem}
.back{display:inline-block;margin-bottom:1.5rem;color:var(--accent)}
a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
input[type=search]{width:100%;padding:.75rem 1rem;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px}
.teams{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem}
.team{display:block;padding:1.25rem;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:inherit;text-decoration:none}
.team:hover{border-color:var(--accent)}
.team strong{display:block;font-size:1.375rem;font-weight:700}
.team em{display:block;font-style:normal;margin:.15rem 0 .35rem}
.team span{color:var(--muted);font-size:.9rem}
ul{list-style:none;padding:0;margin:1.5rem 0 0;border-top:1px solid var(--line)}
li a{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;padding:1.1rem .25rem;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}
li a:hover .name{color:var(--accent);text-decoration:underline}
.name{font-weight:500;font-size:1.125rem}
.desc{grid-column:1;color:var(--muted);font-size:.95rem}
.meta{grid-row:1/span 2;grid-column:2;align-self:center;font-size:.85rem;color:var(--muted)}
.empty{color:var(--muted);padding:2rem .25rem}
.sr{position:absolute;left:-9999px}
@media (max-width:34rem){li a{grid-template-columns:1fr}.meta{grid-row:auto;grid-column:1}}
.logo{display:block;width:max-content;color:var(--ink);margin-bottom:2rem;line-height:0}
.logo-svg{height:48px;width:auto}
.logo:hover{color:var(--accent)}
