
        :root {
            --bg: #0b1118; --panel: #131c26; --panel2: #1a2632; --line: #24313f;
            --txt: #e6eaf0; --muted: #8fa0b3; --accent: #f59e0b;
            --ok: #22c55e; --danger: #ef4444;
        }
        * { box-sizing: border-box; }
        body {
            margin: 0; padding: 26px;
            background: radial-gradient(1000px 460px at 10% -10%, #16222f 0%, transparent 60%), var(--bg);
            color: var(--txt); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
        }
        .wrap { max-width: 900px; margin: 0 auto; }
        .head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 22px; flex-wrap: wrap; }
        h1 { font-size: 20px; margin: 0; }
        h1 small { display: block; font-size: 12.5px; color: var(--muted); font-weight: 400; margin-top: 4px; }
        .btn {
            display: inline-flex; align-items: center; gap: 7px; padding: 10px 15px;
            border-radius: 9px; border: 1px solid var(--line); background: var(--panel2);
            color: var(--txt); font-size: 13.5px; cursor: pointer; font-family: inherit; text-decoration: none;
        }
        .btn:hover { border-color: var(--accent); }
        .btn.primario { background: linear-gradient(180deg, #fbbf24, var(--accent)); color: #23180a; font-weight: 700; border: 0; }
        .card { background: var(--panel); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
        table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
        th { text-align: left; padding: 12px 14px; color: var(--muted); font-weight: 600; font-size: 11.5px; text-transform: uppercase; letter-spacing: .4px; border-bottom: 1px solid var(--line); }
        td { padding: 12px 14px; border-bottom: 1px solid #1c2734; }
        tr:last-child td { border-bottom: 0; }
        .tag { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: 11.5px; font-weight: 600; }
        .tag.admin { background: rgba(245,158,11,.15); color: #fbbf24; border: 1px solid rgba(245,158,11,.35); }
        .tag.tecnico { background: rgba(56,189,248,.13); color: #7dd3fc; border: 1px solid rgba(56,189,248,.3); }
        .tag.almacen { background: rgba(34,197,94,.13); color: #86efac; border: 1px solid rgba(34,197,94,.3); }
        .tag.on { background: rgba(34,197,94,.13); color: #86efac; border: 1px solid rgba(34,197,94,.3); }
        .tag.off { background: rgba(239,68,68,.13); color: #fca5a5; border: 1px solid rgba(239,68,68,.3); }
        .acciones-fila { display: flex; gap: 6px; flex-wrap: wrap; }
        .mini { padding: 6px 10px; font-size: 12px; border-radius: 7px; border: 1px solid var(--line); background: #16202b; color: #cdd6e0; cursor: pointer; font-family: inherit; }
        .mini:hover { border-color: var(--accent); color: #fff; }
        .mini.peligro:hover { border-color: var(--danger); color: #fca5a5; }
        .aviso { padding: 11px 14px; border-radius: 10px; font-size: 13px; margin-bottom: 16px; display: none; }
        .aviso.ok { display: block; background: rgba(34,197,94,.12); border: 1px solid rgba(34,197,94,.35); color: #86efac; }
        .aviso.err { display: block; background: rgba(239,68,68,.12); border: 1px solid rgba(239,68,68,.35); color: #fca5a5; }
        .form-nuevo {
            display: none; margin-bottom: 18px; padding: 18px; background: var(--panel);
            border: 1px solid var(--line); border-radius: 14px;
        }
        .form-nuevo.abierto { display: block; }
        .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
        label { display: block; font-size: 12px; color: var(--muted); margin: 0 0 5px 2px; }
        input, select {
            width: 100%; padding: 10px 12px; background: #0e151d; border: 1px solid var(--line);
            border-radius: 9px; color: var(--txt); font-size: 14px; font-family: inherit; outline: none;
        }
        input:focus, select:focus { border-color: var(--accent); }
        .nota { color: var(--muted); font-size: 12.5px; margin-top: 14px; line-height: 1.6; }
        code { background: #0e151d; padding: 2px 6px; border-radius: 5px; font-size: 12px; }
    