:root{
  --bg:#fff; --fg:#111; --muted:#555; --card:#f7f7f7; --border:#e5e5e5;
  --focus:#111; --radius:16px; --shadow:0 8px 24px rgba(0,0,0,.06);
  --max:1080px;
}
*{box-sizing:border-box}
html{color-scheme:light}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans","PingFang SC","Microsoft YaHei",sans-serif;
}
a{color:inherit}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
a:focus-visible, button:focus-visible, input:focus-visible{
  outline:3px solid var(--focus); outline-offset:3px; border-radius:10px;
}
.skip{
  position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip:focus{
  left:16px; top:16px; width:auto; height:auto;
  padding:10px 12px; background:#fff; border:1px solid var(--border);
  border-radius:10px; z-index:999;
}
.wrap{max-width:var(--max); margin:0 auto; padding:24px 16px 48px}
header{
  display:flex; gap:16px; align-items:flex-start; justify-content:space-between; flex-wrap:wrap;
  padding:8px 0 18px; border-bottom:1px solid var(--border);
}
.brand{display:flex; gap:12px; align-items:center}
.logo{
  width:40px; height:40px; border-radius:12px; background:var(--card);
  display:grid; place-items:center; border:1px solid var(--border);
}
h1{font-size:20px; margin:0}
.sub{margin:2px 0 0; color:var(--muted); font-size:14px}
.tools{display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.lang{
  display:flex; gap:8px; align-items:center; padding:8px 10px;
  border:1px solid var(--border); border-radius:999px; background:#fff;
}
.lang a{
  text-decoration:none; padding:6px 10px; border-radius:999px; border:1px solid transparent;
}
.lang a[aria-current="page"]{border-color:var(--border); background:var(--card)}
.search{
  display:flex; gap:10px; align-items:center; padding:8px 10px;
  border:1px solid var(--border); border-radius:999px; background:#fff;
}
.search label{font-size:14px; color:var(--muted)}
.search input{
  border:0; outline:none; font:inherit; min-width:220px; background:transparent;
}
main{padding-top:22px}
.section{padding:14px 0 6px}
.section h2{margin:14px 0 10px; font-size:16px}
.cards{display:grid; grid-template-columns:repeat(12,1fr); gap:14px}
.card{
  grid-column:span 12;
  background:var(--card); border:1px solid var(--border);
  border-radius:var(--radius); box-shadow:var(--shadow);
  padding:14px 14px 12px;
  display:flex; gap:12px; align-items:flex-start; justify-content:space-between;
}
@media (min-width:640px){ .card{grid-column:span 6} }
@media (min-width:980px){ .card{grid-column:span 4} }
.card .left{display:flex; gap:12px; align-items:flex-start}
.icon{
  width:38px; height:38px; border-radius:12px; background:#fff;
  display:grid; place-items:center; border:1px solid var(--border); flex:0 0 auto;
}
.card h3{margin:0; font-size:15px}
.card p{margin:4px 0 0; color:var(--muted); font-size:14px}
.card .go{
  text-decoration:none; border:1px solid var(--border); background:#fff;
  padding:8px 12px; border-radius:12px; font-size:14px; white-space:nowrap;
}
.card .go:hover{background:#fff}
footer{
  margin-top:26px; padding-top:16px; border-top:1px solid var(--border);
  color:var(--muted); font-size:14px;
}
.small-links{display:flex; gap:12px; flex-wrap:wrap; margin-top:8px}
.small-links a{text-decoration:none; border-bottom:1px solid var(--border)}
@media (prefers-reduced-motion:reduce){ *{scroll-behavior:auto !important} }
