*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#ffffff;--fg:#1a1a1a;--muted:#666;--border:#e0e0e0;
  --card-bg:#f8f8f8;--card-hover:#f0f0f0;--accent:#2563eb;
  --radius:8px;--max-w:960px;
}
@media(prefers-color-scheme:dark){
  :root{
    --bg:#121212;--fg:#e8e8e8;--muted:#aaa;--border:#2a2a2a;
    --card-bg:#1e1e1e;--card-hover:#252525;--accent:#60a5fa;
  }
}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;
  background:var(--bg);color:var(--fg);line-height:1.6;
  min-height:100vh;display:flex;flex-direction:column;
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
header{text-align:center;padding:3rem 1rem 2rem}
header h1{font-size:1.8rem;font-weight:700;letter-spacing:-.02em}
header p{color:var(--muted);margin-top:.4rem;font-size:1.05rem}
main{flex:1;width:100%;max-width:var(--max-w);margin:0 auto;padding:0 1rem 3rem}
.search-wrap{margin-bottom:2rem}
.search-wrap input{
  width:100%;padding:.6rem 1rem;font-size:1rem;
  border:1px solid var(--border);border-radius:var(--radius);
  background:var(--card-bg);color:var(--fg);
}
.search-wrap input::placeholder{color:var(--muted)}
.suite-section{margin-bottom:2rem}
.suite-section h2{font-size:1.1rem;font-weight:600;margin-bottom:.75rem;color:var(--muted)}
.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}
.tool-card{
  display:block;padding:1rem 1.2rem;
  background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);
  transition:background .15s;
}
.tool-card:hover{background:var(--card-hover);text-decoration:none}
.tool-card h3{font-size:1rem;font-weight:600;color:var(--fg);margin-bottom:.25rem}
.tool-card p{font-size:.875rem;color:var(--muted);line-height:1.4}
.empty-msg{color:var(--muted);text-align:center;padding:3rem 1rem;font-size:1.05rem}
footer{
  text-align:center;padding:1.5rem 1rem;
  border-top:1px solid var(--border);color:var(--muted);font-size:.85rem;
}
footer a{margin:0 .5rem}
