:root{--bg:#0f1220;--card:#181c2e;--ink:#e8eaf6;--mut:#9aa0c0;--acc:#7c5cff;--acc2:#20d3a6;--r:14px}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}
header,main,footer{max-width:900px;margin:auto;padding:16px}header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
header a{color:var(--ink);text-decoration:none;font-weight:700}nav a{margin-left:14px;color:var(--mut);font-weight:500}
h1{font-size:clamp(1.6rem,4vw,2.3rem);margin:.3em 0}h2{margin-top:1.6em}.lead{color:var(--mut)}
.card{background:var(--card);border-radius:var(--r);padding:18px;margin:16px 0;box-shadow:0 6px 24px #0005}
label{display:block;font-size:.9rem;color:var(--mut);margin:.6em 0 .2em}input,textarea,select{width:100%;padding:10px;border-radius:10px;border:1px solid #2c3252;background:#0c0f1b;color:var(--ink);font:inherit}
textarea{min-height:160px;font-family:ui-monospace,monospace;font-size:.9rem}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
button{background:var(--acc);color:#fff;border:0;border-radius:10px;padding:11px 18px;font:inherit;font-weight:600;cursor:pointer;margin-top:12px}button.alt{background:#2c3252}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:12px}.stat{background:#0c0f1b;border-radius:10px;padding:12px}.stat b{display:block;font-size:1.4rem;color:var(--acc2)}
table{width:100%;border-collapse:collapse;font-size:.92rem}td,th{padding:6px;border-bottom:1px solid #2c3252;text-align:left}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.tiles a{color:inherit;text-decoration:none}.tiles .card:hover{outline:2px solid var(--acc)}
footer{color:var(--mut);font-size:.85rem}label.chk{display:flex;gap:8px;align-items:center;color:var(--ink)}label.chk input{width:auto}
