*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--surface: #141414;--surface2: #1e1e1e;--border: #272727;--primary: #22c55e;--primary-dim: #16a34a;--np5a: #3b82f6;--np5a-dim: rgba(59,130,246,.15);--np5b: #f59e0b;--np5b-dim: rgba(245,158,11,.15);--red: #ef4444;--red-dim: rgba(239,68,68,.15);--text: #f1f5f9;--text-muted: #6b7280;--radius: 8px}html,body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;min-height:100vh}a{color:var(--primary);text-decoration:none}button{cursor:pointer;border:none;border-radius:var(--radius);font-size:14px;font-weight:500;padding:8px 18px;transition:opacity .15s}button:hover{opacity:.85}button:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary);color:#000}.btn-danger{background:var(--red);color:#fff}.btn-ghost{background:var(--surface2);color:var(--text);border:1px solid var(--border)}input,select,textarea{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;padding:9px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--primary)}select option{background:var(--surface2)}label{display:block;font-size:13px;color:var(--text-muted);margin-bottom:5px}.field{display:flex;flex-direction:column;gap:4px}.modal-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:100;align-items:center;justify-content:center;padding:16px}.modal-backdrop.open{display:flex}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px;width:100%;max-width:460px;display:flex;flex-direction:column;gap:18px}.modal-title{font-size:18px;font-weight:600}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;letter-spacing:.5px}.badge-fijo{background:#6366f133;color:#a5b4fc}.badge-unico{background:#fbbf2433;color:#fde68a}.badge-np5a{background:var(--np5a-dim);color:var(--np5a)}.badge-np5b{background:var(--np5b-dim);color:var(--np5b)}
