    :root{
      --accent:#a97cff; /* viola astrale */
      --accent-2:#00e5ff; /* ciano etereo */
      --bg-1:#0b0a13;     /* quasi nero */
      --bg-2:#111022;     /* viola profondo */
      --card:#141329;
      --text:#e9e7ff;
      --muted:#a7a4c9;
      --success:#3ddc97;
      --busy:#ffcc00;
      --offline:#ff6b6b;
    }

    html,body{ background: radial-gradient(1200px 800px at 10% 10%, #181631 0%, var(--bg-1) 50%) fixed; color:var(--text); }
    .nebula {
      position: absolute; inset: -20% -20% auto auto; width:60vmax; height:60vmax;
      background: radial-gradient(closest-side, rgba(169,124,255,.15), transparent 70%),
                  radial-gradient(closest-side, rgba(0,229,255,.12), transparent 75%);
      filter: blur(60px); pointer-events:none; z-index:0; opacity:.9;
      mix-blend-mode: screen;
    }
    .stars, .stars:after {
      content:""; position: fixed; inset:0; background:
        radial-gradient(2px 2px at 20% 30%, rgba(255,255,255,.6), transparent 60%),
        radial-gradient(1.5px 1.5px at 70% 20%, rgba(255,255,255,.4), transparent 60%),
        radial-gradient(1.5px 1.5px at 40% 70%, rgba(255,255,255,.5), transparent 60%),
        radial-gradient(1px 1px at 85% 60%, rgba(255,255,255,.3), transparent 60%);
      opacity:.45; pointer-events:none; z-index:0;
    }
    .glass {
      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      border: 1px solid rgba(255,255,255,.08);
      box-shadow: 0 10px 30px rgba(0,0,0,.35);
      backdrop-filter: blur(8px);
    }
    .navbar { background: linear-gradient(90deg, rgba(169,124,255,.15), rgba(0,229,255,.10)); }
    .brand { font-weight:700; letter-spacing:.5px; }
    .brand .dot{ color:var(--accent); }
    .btn-astro{
      background: linear-gradient(90deg, var(--accent), var(--accent-2));
      border: none; color:#081018; font-weight:600;
      box-shadow: 0 8px 18px rgba(169,124,255,.35);
    }
    .btn-ghost {
      background: transparent; border:1px solid rgba(255,255,255,.15); color: var(--text);
    }
    .badge-theme{ background: rgba(169,124,255,.15); color:#d9caff; border:1px solid rgba(169,124,255,.35); }
    .card-operator{
      background: var(--card); border: 1px solid rgba(255,255,255,.08);
      transition: transform .2s ease, box-shadow .2s ease;
    }
    .card-operator:hover{ transform: translateY(-2px); box-shadow:0 12px 30px rgba(0,0,0,.45); }
    .avatar{
      width:64px; height:64px; border-radius:50%; object-fit:cover;
      border:2px solid rgba(255,255,255,.2);
    }
    .status-dot{
      width:12px; height:12px; border-radius:50%; display:inline-block; margin-right:.35rem;
      box-shadow:0 0 0 0 rgba(61,220,151,.5);
      animation: pulse 2s infinite;
    }
    .status-online{ background:var(--success); }
    .status-busy{ background:var(--busy); box-shadow:0 0 0 0 rgba(255,204,0,.4); }
    .status-off{ background:var(--offline); box-shadow:0 0 0 0 rgba(255,107,107,.35); animation: none; opacity:.85; }
    @keyframes pulse {
      0%{ box-shadow:0 0 0 0 rgba(61,220,151,.45); }
      70%{ box-shadow:0 0 0 12px rgba(61,220,151,0); }
      100%{ box-shadow:0 0 0 0 rgba(61,220,151,0); }
    }
    .price-chip{
      background: rgba(0,229,255,.12); border:1px solid rgba(0,229,255,.35);
      color:#b7f5ff; border-radius:999px; padding:.25rem .5rem; font-weight:600;
    }
    .rating i{ color:#ffd66b; }
    .filter-pill input{ display:none; }
    .filter-pill label{
      cursor:pointer; display:inline-block; padding:.4rem .7rem; border-radius:999px;
      border:1px solid rgba(255,255,255,.14); color:var(--muted); margin:.25rem .25rem 0 0;
      transition: all .15s ease;
    }
    .filter-pill input:checked + label{
      border-color:rgba(169,124,255,.55); color:#efe8ff; background: rgba(169,124,255,.15);
    }
    .no-results{ color:var(--muted); }
    .footer-mini{ color:var(--muted); font-size:.9rem; }
    .token { font-variant-numeric: tabular-nums; }
    .fav { color:#ff89b5; }
    .fav[aria-pressed="false"]{ color:#ac9fc4; }
    .modal-content{ background: var(--card); color:var(--text); border:1px solid rgba(255,255,255,.08); }
    .custom-range::-webkit-slider-thumb{ background: var(--accent); }
    .custom-range::-moz-range-thumb{ background: var(--accent); }
    .sr-only-focusable:focus{ position: static; width:auto; height:auto; margin:0; overflow:visible; clip:auto; }