:root{
      --bg:#0b1020;
      --panel:rgba(255,255,255,.06);
      --panel2:rgba(255,255,255,.09);
      --text:#e8ecff;
      --muted:rgba(232,236,255,.72);
      --line:rgba(255,255,255,.14);
      --accent:#7aa2ff;
      --accent2:#6ee7ff;
      --ok:#34d399;
      --warn:#fbbf24;
      --shadow: 0 18px 60px rgba(0,0,0,.35);
      --radius:18px;
      --max: 980px;
    }

    *{box-sizing:border-box}
    html,body{height:100%}
    body{
      margin:0;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      background: radial-gradient(1000px 700px at 20% -10%, rgba(122,162,255,.22), transparent 55%),
                  radial-gradient(900px 600px at 100% 0%, rgba(110,231,255,.18), transparent 50%),
                  var(--bg);
      color:var(--text);
      line-height:1.6;
    }

    a{color:var(--accent);text-decoration:none}
    a:hover{text-decoration:underline}

    .wrap{max-width:var(--max); margin:0 auto; padding:18px 16px 44px}
    header{
      display:flex; align-items:center; justify-content:space-between;
      gap:14px; padding:12px 14px;
      background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.05));
      border:1px solid var(--line);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      position: sticky; top:10px; backdrop-filter: blur(10px);
      z-index:10;
    }

    .brand{
      display:flex; align-items:center; gap:10px;
      min-width: 200px;
    }
    .logo{
      width:38px;height:38px;border-radius:12px;
      background: radial-gradient(circle at 30% 30%, rgba(122,162,255,.85), rgba(110,231,255,.35));
      border:1px solid var(--line);
      box-shadow: 0 10px 22px rgba(0,0,0,.25);
    }
    .brand h1{font-size:14px; margin:0; letter-spacing:.2px}
    .brand p{margin:0; font-size:12px; color:var(--muted)}
    nav{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
    .chip{
      display:inline-flex; align-items:center; gap:8px;
      padding:8px 10px; border-radius:999px;
      background: rgba(255,255,255,.06);
      border:1px solid var(--line);
      color:var(--text);
      font-size:12px;
    }
    .chip:hover{background: rgba(255,255,255,.09); text-decoration:none}

    .hero{
      margin-top:16px;
      padding:22px 18px;
      border-radius: var(--radius);
      border:1px solid var(--line);
      background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .hero:before{
      content:"";
      position:absolute; inset:-2px;
      background: radial-gradient(700px 300px at 10% 0%, rgba(122,162,255,.22), transparent 60%),
                  radial-gradient(700px 300px at 90% 30%, rgba(110,231,255,.16), transparent 60%);
      pointer-events:none;
      opacity:.9;
    }
    .hero > *{position:relative}

    .kicker{
      display:inline-flex; align-items:center; gap:10px;
      padding:7px 10px; border-radius:999px;
      background: rgba(110,231,255,.10);
      border:1px solid rgba(110,231,255,.22);
      color:var(--text);
      font-size:12px;
      width:max-content;
    }

    h2{margin:10px 0 6px; font-size:24px; line-height:1.2}
    .lead{margin:6px 0 0; color:var(--muted); max-width: 70ch}

    .grid{
      display:grid;
      grid-template-columns: 1.4fr .9fr;
      gap:14px;
      margin-top:14px;
    }
    @media (max-width: 900px){
      .grid{grid-template-columns:1fr}
      header{position:static}
      nav{justify-content:flex-start}
    }

    .card{
      padding:16px;
      border-radius: var(--radius);
      border:1px solid var(--line);
      background: rgba(255,255,255,.06);
      box-shadow: 0 12px 36px rgba(0,0,0,.28);
    }
    .card h3{margin:0 0 8px; font-size:16px}
    .card p{margin:0 0 10px; color:var(--muted)}
    .list{margin:10px 0 0; padding:0; list-style:none; display:grid; gap:10px}
    .list li{
      padding:12px 12px;
      border-radius: 14px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.05);
    }
    .tag{
      font-size:12px; color:var(--muted);
      display:flex; gap:8px; flex-wrap:wrap;
      margin-top:10px;
    }
    .pill{
      display:inline-flex; align-items:center; gap:8px;
      padding:6px 10px; border-radius:999px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.05);
    }

    .ad-slot{
      border-radius: var(--radius);
      border:1px dashed rgba(255,255,255,.22);
      background: rgba(255,255,255,.04);
      padding:14px;
      text-align:center;
      color:var(--muted);
      font-size:13px;
    }
    .ad-slot strong{color:var(--text)}
    .note{
      margin-top:10px;
      font-size:13px;
      color:var(--muted);
      border-left:3px solid rgba(122,162,255,.7);
      padding-left:10px;
    }

    footer{
      margin-top:18px;
      padding:14px 16px;
      border-radius: var(--radius);
      border:1px solid var(--line);
      background: rgba(255,255,255,.05);
      color:var(--muted);
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      justify-content:space-between;
      align-items:center;
    }
    .small{font-size:12px}

    /* extra para páginas legales */
    .content h3{margin:16px 0 6px}
    .content ul{margin:8px 0 10px 18px; color:var(--muted)}
    .content li{margin:6px 0}
    .muted{color:var(--muted)}
    .sep{height:1px;background:var(--line);margin:14px 0}
    .btn{
      display:inline-flex; align-items:center; gap:8px;
      padding:10px 12px; border-radius:12px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.06);
      color:var(--text);
      text-decoration:none;
    }
    .btn:hover{background: rgba(255,255,255,.09); text-decoration:none}
    code.inline{
      padding:2px 6px;border-radius:8px;
      background: rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.12);
      color: var(--text);
      font-size: 12px;
    }