@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-color:#0f172a;--panel-bg:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#3b82f6;--accent-glow:#3b82f666;--success:#10b981;--danger:#ef4444}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;line-height:1.5}.dashboard-container{max-width:1200px;margin:0 auto;padding:2rem}.header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.header h1{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.8rem;font-weight:700}.header .status{color:var(--success);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.status-dot{background-color:var(--success);width:10px;height:10px;box-shadow:0 0 10px var(--success);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 10px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.card{background-color:var(--panel-bg);border:1px solid #ffffff0d;border-radius:12px;padding:1.5rem;transition:transform .2s;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.card h3{color:var(--text-muted);margin-bottom:.5rem;font-size:1rem;font-weight:500}.card .value{margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.card .value.success{color:var(--success)}.card .value.danger{color:var(--danger)}.card .value.accent{color:var(--accent)}.table-container{background-color:var(--panel-bg);border:1px solid #ffffff0d;border-radius:12px;padding:1.5rem;overflow-x:auto}.table-container h2{margin-bottom:1rem;font-size:1.2rem;font-weight:600}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #ffffff0d;padding:1rem}th{color:var(--text-muted);font-size:.9rem;font-weight:500}td{font-size:.95rem}.badge{border-radius:9999px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.badge.allowed{color:var(--success);background-color:#10b9811a}.badge.blocked{color:var(--danger);background-color:#ef44441a}
