:root{--bg:#1C1C1C;--panel:#222;--muted:#9aa0a6;--text:#f5f5f5;--accent:#FFD600;}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
a{color:var(--accent);text-decoration:none}
.wrap{max-width:1000px;margin:0 auto;padding:1.2rem}
header.wrap{display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:800;letter-spacing:.3px}
.logo span{color:var(--accent)}
nav a{margin:0 .6rem}
nav a.btn{background:var(--accent);color:#000;padding:.6rem .9rem;border-radius:8px;font-weight:700}
.hero{padding:5rem 1.2rem;text-align:center}
.hero h1{font-size:clamp(2rem,4.5vw,3rem);margin:.2rem 0 .4rem}
.hero .sub{color:var(--muted);max-width:700px;margin:0 auto 1rem}
.search{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:1rem}
.search input{min-width:280px;width:420px;max-width:90vw;padding:1rem;border-radius:10px;border:none;outline:none}
.search button{background:var(--accent);color:#000;font-weight:800;border:none;border-radius:10px;padding:1rem 1.2rem;cursor:pointer}
.hint{color:var(--muted)}
.card{background:var(--panel);border:1px solid #2c2c2c;border-radius:12px;padding:1.2rem;margin:1rem 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.loader{margin:2rem auto;width:64px;height:64px;border:7px solid #333;border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
table{width:100%;border-collapse:collapse;margin-top:.5rem;border:1px solid #2b2b2b;border-radius:8px;overflow:hidden}
thead th{background:#2b2b2b}
th,td{padding:.9rem;border-bottom:1px solid #2b2b2b;text-align:left}
.actions{margin-top:1rem}
.btn{background:var(--accent);color:#000;font-weight:800;border:none;border-radius:10px;padding:.9rem 1.2rem;cursor:pointer}
.disclaimer{color:var(--muted);font-size:.9rem;margin-top:.8rem}
footer{color:#bdbdbd;text-align:center;padding:2rem 1rem}
