
  html, body { margin: 0; padding: 0; scroll-behavior: smooth; background: #08080c; }
  * { box-sizing: border-box; }
  [data-prieto] {
    --bg: #08080c; --bg-soft: #121118; --surface: #17151f; --text: #f6f5fa; --muted: #8b899a;
    --line: #26242f; --brand: #6c5ef5; --brand-strong: #8f7ef9; --brand-soft: #2a2447;
    --brand-faint: #1a1730; --brand-text: #c2b6ff; --orbe-2: #c2b6ff;
    --shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.5);
    --shadow-lg: 0 30px 70px -30px rgba(0,0,0,.75);
  }
  a { color: var(--brand-text); text-decoration: none; }
  a:hover { color: var(--brand-strong); }
  @keyframes om-girar { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
  @keyframes om-girar-rev { from { transform: rotate(360deg); } to { transform: rotate(0deg); } }
  @keyframes om-sube { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
  @keyframes om-barra { from { transform: scaleY(.15); } to { transform: scaleY(1); } }
  @keyframes om-flota { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
  @keyframes om-cambia-a { from { opacity: 0; transform: translateY(10px) scale(.985); filter: blur(3px); } to { opacity: 1; transform: none; filter: blur(0); } }
  @keyframes om-cambia-b { from { opacity: 0; transform: translateY(10px) scale(.985); filter: blur(3px); } to { opacity: 1; transform: none; filter: blur(0); } }
  @keyframes om-latido { 0%, 100% { opacity: .45; transform: translateX(0); } 50% { opacity: 1; transform: translateX(3px); } }
  @keyframes om-toast { 0%, 12% { opacity: 0; transform: translateY(14px) scale(.96); } 22%, 78% { opacity: 1; transform: none; } 88%, 100% { opacity: 0; transform: translateY(-8px) scale(.98); } }
  @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
  /* scrollbars ocultos, scroll táctil con inercia */
  * { scrollbar-width: none; -ms-overflow-style: none; }
  *::-webkit-scrollbar { width: 0; height: 0; display: none; }
  .om-scroll-x { -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scroll-snap-type: x proximity; }
  .om-scroll-x > * { scroll-snap-align: start; }
  .om-scroll-y { -webkit-overflow-scrolling: touch; overscroll-behavior-y: contain; }
  /* objetivos táctiles */
  [data-prieto] button, [data-prieto] a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
  [data-prieto] button { min-height: 44px; }
  :focus-visible { outline: 3px solid #6c5ef5; outline-offset: 2px; border-radius: 4px; }

.hv0:hover{color: var(--text);}
.hv1:hover{border-color: var(--brand);}
.hv2:hover{background: var(--brand-faint);}
.hv3:hover{background: var(--bg-soft);}
.hv4:hover{transform: translateY(-2px); box-shadow: 0 26px 48px -20px rgba(108,94,245,.95);}
.hv5:hover{transform: translateY(-2px); border-color: var(--brand);}
.hv6:hover{border-color: #6c5ef5;}
.hv7:hover{transform: translateY(-2px);}
.hv8:hover{transform: translateY(-3px); border-color: #6c5ef5;}
.hv9:hover{border-color: #6c5ef5; background: var(--brand-faint);}
.hv10:hover{transform: translateY(-2px); box-shadow: 0 24px 50px -20px rgba(108,94,245,.9);}
.hv11:hover{color: var(--brand-text);}
.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;border:none;cursor:pointer;font-family:inherit;font-weight:600;transition:filter .15s,transform .12s}
.ds-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.ds-btn-primary{background:var(--brand);color:#fff}
.ds-btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--line)}
.ds-btn-ghost{background:transparent;color:var(--brand-text)}
.ds-btn-danger{background:#b91c1c;color:#fff}
.ds-btn-sm{font-size:14px;padding:9px 16px;min-height:38px}
.ds-btn-md{font-size:14.5px;padding:11px 18px;min-height:44px}
.ds-btn-lg{font-size:16px;padding:13px 22px;min-height:50px}
.ds-btn-bloque{width:100%}
.ds-insignia{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.ds-punto{width:6px;height:6px;border-radius:999px;background:currentColor}
.ds-neutral{background:var(--brand-faint);color:var(--muted)}
.ds-success{background:rgba(52,211,153,.14);color:#6ee7b7}
.ds-warning{background:rgba(251,191,36,.14);color:#fcd34d}
.ds-danger{background:rgba(248,113,113,.14);color:#fca5a5}
.ds-info{background:var(--brand-soft);color:var(--brand-text)}
.ds-campo{display:block}
.ds-campo-et{display:block;margin-bottom:6px;font-size:13.5px;font-weight:600;color:var(--text)}
.ds-campo-in{width:100%;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:12px 14px;font-family:inherit;font-size:15px}
.ds-campo-in:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(108,94,245,.2)}
.ds-campo-pista{display:block;margin-top:6px;font-size:12.5px;color:var(--muted)}
.rej-cuatro{--cols:repeat(4,minmax(0,1fr))}
.rej-tres{--cols:repeat(3,minmax(0,1fr))}
.rej-dos{--cols:repeat(2,minmax(0,1fr))}
@media(max-width:1080px){.rej-cuatro{--cols:repeat(2,minmax(0,1fr))}.rej-tres{--cols:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.rej-cuatro{--cols:1fr}.rej-tres{--cols:1fr}}