:root{--bg:#0d0b14;--card:#17131f;--card2:#1f1a2b;--line:#2c2540;--txt:#ece8f5;--mut:#9d94b3;--vio:#8b5cf6;--vio2:#a78bfa;--ok:#34d399;--err:#f87171;--warn:#fbbf24}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--txt);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--vio2)}h1,h2,h3{margin:.2em 0 .5em}.wrap{max-width:1180px;margin:0 auto;padding:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}.btn{background:var(--vio);color:#fff;border:0;border-radius:12px;padding:10px 16px;font-weight:600;cursor:pointer;font-size:15px}.btn:disabled{opacity:.5}.btn.sec{background:var(--card2);border:1px solid var(--line);color:var(--txt)}.btn.peligro{background:#b91c1c}input,select{background:var(--card2);color:var(--txt);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px;width:100%}label{display:block;margin:10px 0 4px;color:var(--mut);font-size:14px}.top{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line);background:#120f1b}.logo{font-weight:800;font-size:19px}.logo b{color:var(--vio2)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:12px;gap:12px}.thumb{aspect-ratio:1;background:var(--card2);border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--mut);font-size:34px}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}.meta{font-size:13px;color:var(--mut)}.meta,.nombre{word-break:break-all}.nombre{font-size:14px;font-weight:600}.fila{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.fila>*{flex:1 1;min-width:140px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.stat b{display:block;font-size:26px;color:var(--vio2)}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.tabs button{background:var(--card2);color:var(--txt);border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer}.tabs button.on{background:var(--vio);border-color:var(--vio)}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.tablewrap{overflow-x:auto}.pill{padding:2px 8px;border-radius:999px;font-size:12px;background:var(--card2)}.pill.ok{color:var(--ok)}.error,.pill.err{color:var(--err)}.okmsg{color:var(--ok)}.aviso{border-left:4px solid var(--vio);background:#1b1530;padding:12px 14px;border-radius:10px;margin:12px 0}.barra{height:10px;background:var(--card2);border-radius:99px;overflow:hidden}.barra i{display:block;height:100%;background:linear-gradient(90deg,var(--vio),var(--vio2))}.modal{position:fixed;inset:0;background:#000a;display:flex;align-items:center;justify-content:center;padding:16px;z-index:9}.modal .card{max-width:560px;width:100%;max-height:92vh;overflow:auto}.visor img,.visor video{max-width:100%;max-height:60vh;border-radius:12px;display:block;margin:0 auto}.pie{text-align:center;color:var(--mut);font-size:13px;padding:24px}.auth{max-width:420px;margin:6vh auto}@media(max-width:600px){.grid{grid-template-columns:repeat(2,1fr)}.wrap{padding:10px}}