:root{--bg:#0f1115;--card:#181b22;--text:#e8eaf0;--muted:#9aa3b2;--accent:#4f8cff;--ok:#37b26b;--wait:#d9a13b;--border:#262b36}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.55;min-height:100vh}
main{max-width:1000px;margin:0 auto;padding:3rem 1.25rem 2rem}
header h1{font-size:2.2rem;letter-spacing:-.02em}
header h1 span{color:var(--accent)}
.sub{color:var(--muted);margin:.6rem 0 2.2rem;max-width:62ch}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:.55rem}
.card:hover{border-color:var(--accent)}
.icon{font-size:1.6rem}
h2{font-size:1.15rem}
.badge{font-size:.68rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;vertical-align:middle;margin-left:.35rem}
.badge.ok{background:rgba(55,178,107,.14);color:var(--ok);border:1px solid var(--ok)}
.badge.wait{background:rgba(217,161,59,.12);color:var(--wait);border:1px solid var(--wait)}
.card p{color:var(--muted);font-size:.92rem}
.meta{font-size:.8rem !important;opacity:.85}
.btn{margin-top:auto;align-self:flex-start;background:var(--accent);color:#fff;text-decoration:none;padding:.5rem 1.1rem;border-radius:8px;font-weight:600;font-size:.9rem}
.btn:hover{filter:brightness(1.15)}
footer{margin-top:2.5rem;color:var(--muted);font-size:.85rem;border-top:1px solid var(--border);padding-top:1rem}
footer .tech{margin-top:.3rem;opacity:.75}
