:root{
--bg:#06101b;--surface:#0b1725;--surface2:#101f30;--border:#1b2c40;--text:#edf5ff;--muted:#8191a6;
--primary:#3b82f6;--primary2:#7c3aed;--danger:#b91c1c;--success:#22c55e
}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 90% 0,#11263f 0,transparent 28%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}
a{color:inherit}.landing{min-height:100vh;display:grid;place-items:center;padding:24px}.landing-shell{width:min(760px,100%);text-align:center;padding:56px 30px;border:1px solid var(--border);background:rgba(9,22,35,.9);border-radius:26px}.landing-shell h1{font-size:48px;margin:10px 0}.landing-shell p{color:var(--muted);font-size:17px;line-height:1.6;margin:0 auto 25px;max-width:600px}
.brand-mark{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;margin:0 auto;background:linear-gradient(135deg,var(--primary),var(--primary2));font-weight:900;box-shadow:0 15px 45px rgba(59,130,246,.22)}.brand-mark.small{width:42px;height:42px;border-radius:13px;margin:0}
.eyebrow{font-size:10px;letter-spacing:.18em;color:#7db0ff;font-weight:900}.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:18px;background:#07131f;border-right:1px solid var(--border);display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;margin-bottom:22px}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:10px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:11px;padding:11px 12px;background:transparent;color:var(--muted);text-decoration:none;cursor:pointer;text-align:left}.nav:hover,.nav.active{background:rgba(59,130,246,.13);color:white}.side-bottom{margin-top:auto}.user-mini{padding:11px}.user-mini strong,.user-mini small{display:block}.user-mini small{color:var(--muted);font-size:9px;margin-top:3px}
.main{margin-left:250px;padding:25px;max-width:1600px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.page-head h1{margin:5px 0 3px}.page-head p,.muted{margin:0;color:var(--muted);font-size:12px}.section{display:none}.section.active{display:block}.card,.stat,.server-card{background:rgba(11,23,37,.94);border:1px solid var(--border);border-radius:16px}.card{padding:18px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.stat{padding:17px}.stat span{color:var(--muted);font-size:10px}.stat strong{display:block;font-size:22px;margin-top:6px}.server-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.server-card{display:flex;align-items:center;gap:12px;padding:16px;text-decoration:none;transition:.15s}.server-card:hover{transform:translateY(-2px);border-color:#3b82f6}.server-icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--surface2);overflow:hidden;font-weight:900}.server-icon img{width:100%;height:100%;object-fit:cover}.server-info{flex:1}.server-info strong,.server-info span{display:block}.server-info span{font-size:10px;color:var(--muted);margin-top:4px}.server-plan{font-size:9px;color:#8ab6ff}
.btn{border:1px solid var(--border);background:var(--surface2);color:white;padding:10px 13px;border-radius:10px;cursor:pointer;text-decoration:none;font-weight:700}.btn.primary{background:linear-gradient(135deg,var(--primary),var(--primary2));border:0}.btn.danger{background:var(--danger);border:0}.btn.large{padding:13px 18px;display:inline-block}.btn.small{padding:7px 9px;font-size:10px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.info-grid .card p{color:var(--muted);font-size:11px;line-height:1.5}.danger-card{border-color:#5b1b25}.row{display:flex;gap:8px;align-items:center;margin-top:12px}.input,select.input{width:100%;border:1px solid var(--border);background:var(--surface2);color:white;border-radius:10px;padding:10px 11px;outline:none}.card label{display:block;color:var(--muted);font-size:10px;margin:11px 0 5px}.check{display:flex!important;align-items:center;gap:7px}.list{display:flex;flex-direction:column;gap:7px}.list-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--border);border-radius:11px;background:var(--surface2)}.grow{flex:1}.list-row strong,.list-row small{display:block}.list-row small,.list-row time{font-size:9px;color:var(--muted);margin-top:3px}.severity{font-size:8px;text-transform:uppercase;padding:5px 7px;border-radius:999px;background:#253247}.severity.critical{background:#5b1720;color:#fecaca}.severity.warning{background:#4d3711;color:#fde68a}.empty{padding:24px;text-align:center;color:var(--muted)}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:0}.setting-row p{color:var(--muted);font-size:10px;margin:4px 0 0}.pill{font-size:9px;padding:6px 8px;border-radius:999px;background:var(--surface2)}
.switch input{display:none}.switch span{display:block;width:44px;height:24px;border-radius:999px;background:#29384a;position:relative;cursor:pointer}.switch span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:white;left:3px;top:3px;transition:.15s}.switch input:checked+span{background:#2563eb}.switch input:checked+span:after{left:23px}
.toast{position:fixed;right:20px;bottom:20px;z-index:999;padding:12px 15px;border-radius:11px;background:#123c2a;border:1px solid #1f6d48}.toast.error{background:#4b1720;border-color:#7f1d1d}.toast.hidden{display:none}
@media(max-width:1000px){.server-grid{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.sidebar{position:static;width:auto}.main{margin-left:0}.server-grid,.stat-grid,.info-grid{grid-template-columns:1fr}.page-head,.row{align-items:stretch;flex-direction:column}.landing-shell h1{font-size:34px}}


/* NovaShield — Lockdown Selectivo */
.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.selective-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.selective-user-list{display:grid;gap:8px;max-height:370px;overflow:auto;padding:4px;margin:8px 0 18px}
.selective-user{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--border,#263247);border-radius:13px;background:rgba(255,255,255,.02);cursor:pointer;transition:.15s ease}
.selective-user:hover{border-color:#4f7fc9;background:rgba(79,127,201,.07)}
.selective-user.owner-user{opacity:.58;cursor:not-allowed}
.selective-user input{width:17px;height:17px;flex:0 0 auto}
.selective-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;display:grid;place-items:center;flex:0 0 38px;background:#1b2638}
.selective-avatar img{width:100%;height:100%;object-fit:cover}
.selective-avatar-fallback{font-size:11px;font-weight:900;color:#dce8fa}
.selective-user-info{display:grid;min-width:0}
.selective-user-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selective-user-info small{color:var(--muted,#93a4bc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* NovaShield — Usuarios del Panel */
.panel-user-form{display:grid;gap:12px}
.guild-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:8px 0 14px}
.guild-access-grid.compact{grid-template-columns:1fr;max-height:190px;overflow:auto}
.guild-access-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border,#263247);border-radius:12px;background:rgba(255,255,255,.02);cursor:pointer}
.guild-access-item input{width:16px;height:16px}
.guild-access-item span{display:grid}
.guild-access-item small{color:var(--muted,#93a4bc)}

/* NovaShield Discord Explorer */
.discord-resource-list{display:grid;gap:8px;max-height:560px;overflow:auto;margin-top:12px}
.discord-resource-row{display:flex;align-items:center;gap:11px;padding:10px;border:1px solid var(--border,#263247);border-radius:12px;background:rgba(255,255,255,.02)}
.resource-icon,.resource-avatar{width:36px;height:36px;flex:0 0 36px;border-radius:11px;display:grid;place-items:center;background:#172236;overflow:hidden}.resource-avatar{border-radius:50%}.resource-avatar img{width:100%;height:100%;object-fit:cover}.resource-info{display:grid;min-width:0;flex:1}.resource-info strong,.resource-info small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-info small{color:var(--muted,#93a4bc)}

.feature-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:12px}.feature-check-grid span{padding:11px;border:1px solid var(--border,#263247);border-radius:12px;background:rgba(255,255,255,.02)}.switch-row{display:flex;align-items:center;gap:8px;font-weight:700}.switch-row input{width:18px;height:18px}

/* NovaShield tab visibility fix */

#tab-settings .grid.two{margin-bottom:16px}
#tab-settings .card{margin-bottom:16px}

.threat-row small{display:block;margin-top:4px}
#serverUnderAttack{font-weight:800;letter-spacing:.02em}
