* {
  box-sizing:border-box}
 :root {
  color-scheme:light dark;
  --bg:#fafafa;
  --surface:#fff;
  --text:#202124;
  --muted:#60656c;
  --line:#dedfe2;
  --focus:#315cce}
 @media(prefers-color-scheme:dark) {
  :root {
  --bg:#141517;
  --surface:#1b1d20;
  --text:#eceef1;
  --muted:#aeb3bb;
  --line:#363a40;
  --focus:#99b7ff}
}
 body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Segoe UI","Microsoft YaHei",sans-serif;
  font-size:16px;
  line-height:1.6}
 header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  max-width:1120px;
  padding:28px 32px;
  margin:auto;
  border-bottom:1px solid var(--line)}
 a {
  color:inherit;
  text-underline-offset:4px}
 .brand {
  text-decoration:none}
 .brand strong {
  margin-left:18px;
  font-weight:600}
 .pilot {
  font-size:14px;
  color:var(--muted)}
 main {
  max-width:1000px;
  margin:64px auto 0;
  padding:0 32px}
 h1 {
  font-size:32px;
  line-height:1.25;
  font-weight:600;
  margin:0 0 14px;
  letter-spacing:-.02em}
 p {
  margin:0;
  color:var(--muted)}
 .search {
  display:block;
  margin:36px 0 28px;
  font-size:14px;
  color:var(--muted)}
 input {
  display:block;
  width:min(100%,520px);
  height:48px;
  border:1px solid var(--line);
  border-radius:7px;
  background:var(--surface);
  color:var(--text);
  padding:0 14px;
  margin-top:8px;
  font:inherit;
  font-size:16px}
 input::placeholder {
  color:var(--muted)}
 :focus-visible {
  outline:2px solid var(--focus);
  outline-offset:3px}
 .list-heading {
  display:flex;
  justify-content:space-between;
  color:var(--muted);
  font-size:14px;
  padding-bottom:12px}
 ul {
  padding:0;
  margin:0;
  border-top:1px solid var(--line);
  list-style:none}
 .module {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:28px 0;
  border-bottom:1px solid var(--line)}
 .module[hidden],#empty[hidden] {
  display:none}
 .module-main {
  min-width:0}
 h2 {
  font-size:20px;
  font-weight:600;
  line-height:1.4;
  margin:0 0 8px}
 h2 a {
  text-decoration:none}
 .meta {
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  color:var(--muted);
  font-size:14px;
  margin-top:12px;
  overflow-wrap:anywhere}
 code {
  font:13px ui-monospace,Consolas,monospace}
 .open {
  display:inline-flex;
  align-items:center;
  gap:14px;
  white-space:nowrap;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:6px;
  padding:9px 14px;
  background:var(--surface);
  transition:border-color .16s}
 .open:hover {
  border-color:var(--muted)}
 aside {
  margin-top:28px;
  color:var(--muted);
  font-size:14px;
  max-width:70ch}
 #empty {
  padding:32px 0;
  border-bottom:1px solid var(--line)}
 footer {
  max-width:1000px;
  margin:64px auto 32px;
  padding:0 32px;
  color:var(--muted);
  font-size:13px}
 @media(max-width:640px) {
  header {
  padding:20px}
.brand strong {
  margin-left:8px}
.pilot {
  font-size:12px}
main {
  margin-top:40px;
  padding:0 20px}
.module {
  align-items:flex-start;
  flex-direction:column;
  gap:20px}
.open {
  width:100%;
  justify-content:space-between}
footer {
  padding:0 20px}
}
 @media(prefers-reduced-motion:reduce) {
  .open {
  transition:none}
}
 ::selection {
  background:var(--focus);
  color:var(--bg)}
