*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1b1f24;background:#f7f8fa}
header{background:#111827;color:#fff}header .w{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}header a{color:#cbd5e1;text-decoration:none}header a.brand{color:#fff;font-weight:700;margin-right:auto}
.w{max-width:960px;margin:0 auto;padding:1rem}.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;margin:1rem 0}
label{display:block;font-weight:600;margin:.5rem 0 .25rem}select,input{width:100%;padding:.55rem;font-size:1rem;border:1px solid #cbd5e1;border-radius:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.big{font-size:2rem;font-weight:700}
table{width:100%;border-collapse:collapse;font-size:.95rem}th,td{text-align:left;padding:.45rem;border-bottom:1px solid #e5e7eb}
.ok{color:#047857;font-weight:600}.no{color:#b91c1c}.tight{color:#b45309;font-weight:600}
.badge{display:inline-block;background:#fef3c7;color:#92400e;border-radius:4px;padding:0 .4rem;font-size:.8rem;font-weight:600}
.pending{border:2px dashed #f59e0b;background:#fffbeb}code{background:#eef2f7;padding:0 .25rem;border-radius:4px}
footer{color:#6b7280;font-size:.85rem}.scroll{overflow-x:auto}
.btn{display:inline-block;background:#2563eb;color:#fff;border:0;border-radius:6px;padding:.6rem 1rem;font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer}.btn:disabled{background:#94a3b8;cursor:not-allowed}
pre{background:#0f172a;color:#e2e8f0;padding:.6rem .8rem;border-radius:6px;overflow-x:auto;font-size:.9rem;max-height:420px}.steps li{margin:.6rem 0}
.src-v{background:#d1fae5;color:#065f46}.src-c{background:#e0e7ff;color:#3730a3}
