/* Raúl Tarazona SEO Audit — negro, naranja y verde */
.rtsa, .rtsr {
  --rt-bg: #0A0B0D; --rt-card: #131519; --rt-card2: #1A1D23; --rt-ink: #F4F1EA; --rt-muted: #A0A6AF; --rt-line: #262A31;
  --rt-o: #FF7A1A; --rt-o-soft: rgba(255,122,26,.14); --rt-g: #2EE59D; --rt-g-soft: rgba(46,229,157,.13);
  --rt-ok: #2EE59D; --rt-warn: #FFC53D; --rt-bad: #FF5C72; --rt-info: #7DB4FF; --rt-chip: #23272F;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; line-height: 1.5;
}
.rtsa { background: var(--rt-bg); color: var(--rt-ink); border-radius: 22px; padding: 22px; max-width: 860px; margin: 0 auto; box-sizing: border-box; font-size: 15px; }
.rtsa *, .rtsr * { box-sizing: border-box; }
.rtsa h2, .rtsa h3, .rtsa p { margin: 0; color: inherit; font-family: inherit; letter-spacing: normal; text-transform: none; }
.rtsa a { color: var(--rt-o); }

/* Formulario inicial */
.rtsa-hero-form { padding: 18px 6px; position: relative; overflow: hidden; }
.rtsa-hero-form::after { content: ""; position: absolute; right: -90px; top: -110px; width: 280px; height: 280px; border-radius: 50%; background: var(--rt-o-soft); pointer-events: none; }
.rtsa-kicker { color: var(--rt-o); font-weight: 800; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; margin-bottom: 8px; }
.rtsa-h { font-size: clamp(26px, 5vw, 40px) !important; line-height: 1.12 !important; font-weight: 900 !important; margin-bottom: 12px !important; position: relative; z-index: 1; }
.rtsa-o { color: var(--rt-o); } .rtsa-g { color: var(--rt-g); }
.rtsa-lead { color: var(--rt-muted); font-size: 16px; max-width: 560px; margin-bottom: 20px !important; position: relative; z-index: 1; }
.rtsa-form { display: flex; flex-direction: column; gap: 8px; position: relative; z-index: 1; }
.rtsa-label { font-size: 13px; font-weight: 700; color: var(--rt-ink); margin-top: 6px; }
.rtsa-opt { font-weight: 400; color: var(--rt-muted); }
.rtsa .rtsa-input {
  width: 100%; min-height: 50px; background: #000 !important; color: var(--rt-ink) !important; border: 1px solid var(--rt-line) !important;
  border-radius: 12px !important; padding: 12px 14px !important; font: inherit !important; font-size: 16px !important; margin: 0 !important; box-shadow: none !important;
}
.rtsa .rtsa-input:focus { outline: none; border-color: var(--rt-o) !important; box-shadow: 0 0 0 3px var(--rt-o-soft) !important; }
.rtsa .rtsa-input::placeholder { color: #6B717B; }
.rtsa-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 20px; border-radius: 12px;
  border: 0; font: inherit; font-weight: 800; font-size: 15px; cursor: pointer; text-decoration: none !important; line-height: 1.2; text-align: center;
}
.rtsa-btn:hover { filter: brightness(1.08); }
.rtsa-btn:disabled { opacity: .6; cursor: default; }
.rtsa-btn-o { background: var(--rt-o) !important; color: #000 !important; }
.rtsa-btn-g { background: var(--rt-g) !important; color: #00150C !important; }
.rtsa-btn-big { width: 100%; min-height: 56px; font-size: 17px; margin-top: 10px; }
.rtsa-err { background: rgba(255,92,114,.14); color: var(--rt-bad); border-radius: 10px; padding: 10px 12px; font-size: 14px; }
.rtsa-trust { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; position: relative; z-index: 1; }
.rtsa-trust span { background: var(--rt-card2); border: 1px solid var(--rt-line); color: var(--rt-muted); border-radius: 999px; padding: 5px 12px; font-size: 12.5px; font-weight: 600; }

/* Tarjetas */
.rtsa-card { background: var(--rt-card); border: 1px solid var(--rt-line); border-radius: 18px; padding: 18px; margin-bottom: 12px; position: relative; }
.rtsa-card h3 { font-size: 17px !important; font-weight: 800 !important; margin-bottom: 10px !important; }
.rtsa-sub { color: var(--rt-muted); font-size: 14px; }

/* Progreso */
.rtsa-progress { padding: 24px; }
.rtsa-purl { font-weight: 700; word-break: break-all; margin-bottom: 14px; }
.rtsa-steps { list-style: none; margin: 0 0 14px; padding: 0; }
.rtsa-step { display: flex; align-items: center; gap: 12px; padding: 9px 0; color: var(--rt-muted); font-weight: 600; }
.rtsa-sd { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; font-weight: 900; border: 2px solid var(--rt-line); flex: none; }
.rtsa-step-run { color: var(--rt-ink); }
.rtsa-step-run .rtsa-sd { border-color: var(--rt-chip); border-top-color: var(--rt-o); border-right-color: var(--rt-g); animation: rtsa-spin .8s linear infinite; }
.rtsa-step-ok { color: var(--rt-ink); }
.rtsa-step-ok .rtsa-sd { background: var(--rt-g); border-color: var(--rt-g); color: #00150C; }
.rtsa-step-skip .rtsa-sd { color: var(--rt-muted); }
@keyframes rtsa-spin { to { transform: rotate(360deg); } }

/* Resultado */
.rtsa-head { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; overflow: hidden; }
.rtsa-head::after { content: ""; position: absolute; right: -60px; top: -60px; width: 180px; height: 180px; border-radius: 50%; background: var(--rt-o-soft); pointer-events: none; }
.rtsa-head > div { position: relative; z-index: 1; flex: 1; min-width: 200px; }
.rtsa-verdict { font-size: 22px; font-weight: 900; line-height: 1.2; margin-bottom: 10px; }
.rtsa-ring { position: relative; flex: none !important; min-width: 0 !important; }
.rtsa-ring svg { transform: rotate(-90deg); display: block; }
.rtsa-ring-n { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; font-size: 34px; font-weight: 900; line-height: 1; }
.rtsa-ring-n small { display: block; font-size: 12px; color: var(--rt-muted); font-weight: 600; margin-top: 2px; }
.rtsa-ok { color: var(--rt-ok); } .rtsa-warn { color: var(--rt-warn); } .rtsa-bad { color: var(--rt-bad); }
.rtsa-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.rtsa-pill { font-size: 12.5px; font-weight: 800; border-radius: 999px; padding: 3px 10px; }
.rtsa-pill-bad { background: rgba(255,92,114,.14); color: var(--rt-bad); }
.rtsa-pill-warn { background: rgba(255,197,61,.13); color: var(--rt-warn); }
.rtsa-pill-ok { background: var(--rt-g-soft); color: var(--rt-ok); }
.rtsa-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 10px; margin-bottom: 12px; }
.rtsa-metric { background: var(--rt-card); border: 1px solid var(--rt-line); border-radius: 14px; padding: 12px 14px; position: relative; overflow: hidden; }
.rtsa-metric::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; }
.rtsa-m-ok::before { background: var(--rt-ok); } .rtsa-m-warn::before { background: var(--rt-warn); } .rtsa-m-bad::before { background: var(--rt-bad); }
.rtsa-ml { font-size: 13px; color: var(--rt-muted); }
.rtsa-mv { font-size: 26px; font-weight: 900; }
.rtsa-m-ok .rtsa-mv { color: var(--rt-ok); } .rtsa-m-warn .rtsa-mv { color: var(--rt-warn); } .rtsa-m-bad .rtsa-mv { color: var(--rt-bad); }
.rtsa-mh { font-size: 11.5px; color: var(--rt-muted); }

.rtsa-serp { background: #fff; color: #202124; border-radius: 12px; padding: 14px 16px; }
.rtsa-serp-u { font-size: 13px; color: #4D5156; }
.rtsa-serp-t { color: #1A0DAB; font-size: 19px; margin: 3px 0; line-height: 1.3; }
.rtsa-serp-d { font-size: 14px; color: #4D5156; }

.rtsa-issue { display: flex; gap: 12px; padding: 12px 0; border-top: 1px solid var(--rt-line); }
.rtsa-issue:first-of-type { border-top: 0; }
.rtsa-ic { flex: none; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; font-weight: 900; }
.rtsa-ic-bad { background: rgba(255,92,114,.14); color: var(--rt-bad); }
.rtsa-ic-warn { background: rgba(255,197,61,.13); color: var(--rt-warn); }
.rtsa-ic-ok { background: var(--rt-g-soft); color: var(--rt-ok); }
.rtsa-ic-info { background: rgba(125,180,255,.13); color: var(--rt-info); }
.rtsa-it { font-weight: 700; }
.rtsa-id { color: var(--rt-muted); font-size: 13.5px; margin-top: 2px; word-break: break-word; }
.rtsa-fix { margin-top: 7px; font-size: 13.5px; padding: 8px 11px; background: var(--rt-card2); border-left: 3px solid var(--rt-o); border-radius: 8px; }
.rtsa-fix b { color: var(--rt-o); }

.rtsa-gbp-n { font-size: 18px; font-weight: 800; }
.rtsa-gbp-r { margin: 4px 0; }
.rtsa-stars { color: var(--rt-warn); font-weight: 800; }
.rtsa-link { display: inline-block; margin-top: 8px; font-weight: 700; }

/* Candado */
.rtsa-lock { border-color: rgba(46,229,157,.4); background: linear-gradient(180deg, rgba(46,229,157,.07), transparent 50%), var(--rt-card); }
.rtsa-blur { filter: blur(5px); opacity: .55; user-select: none; pointer-events: none; max-height: 210px; overflow: hidden; margin-bottom: 8px; -webkit-mask-image: linear-gradient(#000 40%, transparent); mask-image: linear-gradient(#000 40%, transparent); }
.rtsa-phone { display: grid; grid-template-columns: 120px 1fr; gap: 8px; }
.rtsa-check { display: flex; gap: 10px; align-items: flex-start; font-size: 13.5px; color: var(--rt-muted); margin-top: 8px; cursor: pointer; }
.rtsa-check input { width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--rt-g); flex: none; }
.rtsa-code { color: var(--rt-g); font-size: 1.15em; letter-spacing: .1em; }

/* Premium */
.rtsa-premium { border-color: rgba(255,122,26,.5); background: linear-gradient(180deg, rgba(255,122,26,.09), transparent 55%), var(--rt-card); }
.rtsa-badge { display: inline-block; background: var(--rt-o); color: #000; font-weight: 900; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; border-radius: 999px; padding: 3px 10px; margin-bottom: 10px; }
.rtsa-list { margin: 10px 0 14px; padding: 0; list-style: none; }
.rtsa-list li { padding: 5px 0 5px 26px; position: relative; }
.rtsa-list li::before { content: "✓"; position: absolute; left: 0; color: var(--rt-g); font-weight: 900; }
.rtsa-prem-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.rtsa-price { font-size: 26px; font-weight: 900; color: var(--rt-o); }
.rtsa-again { text-align: center; margin-top: 6px !important; }
.rtsa-linkbtn { background: none; border: 0; color: var(--rt-muted); text-decoration: underline; cursor: pointer; font: inherit; }

@media (max-width: 520px) {
  .rtsa { padding: 14px; border-radius: 16px; }
  .rtsa-head { justify-content: center; text-align: center; }
  .rtsa-pills { justify-content: center; }
  .rtsa-phone { grid-template-columns: 104px 1fr; }
  .rtsa-grid { grid-template-columns: 1fr 1fr; }
}

/* ---------------- Informe completo (claro, para imprimir) ---------------- */
.rtsr-body { margin: 0; background: #F6F5F2; }
.rtsr { --rt-ok: #0E9F6E; --rt-warn: #B76E00; --rt-bad: #D92D45; --rt-muted: #5C626B; --rt-chip: #EEECE7; color: #15171C; font-size: 15px; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.rtsr-w { max-width: 860px; margin: 0 auto; padding: 0 20px; }
.rtsr-bar { position: sticky; top: 0; z-index: 9; background: #0A0B0D; color: #F4F1EA; display: flex; gap: 12px; justify-content: center; align-items: center; padding: 8px 12px; font-size: 13px; flex-wrap: wrap; }
.rtsr-bar .rtsa-btn { min-height: 38px; padding: 8px 14px; font-size: 14px; }
.rtsr-head { background: #0A0B0D; color: #F4F1EA; padding: 30px 0 76px; position: relative; overflow: hidden; }
.rtsr-head::after { content: ""; position: absolute; right: -90px; top: -90px; width: 300px; height: 300px; border-radius: 50%; background: rgba(255,122,26,.2); }
.rtsr-head::before { content: ""; position: absolute; left: -60px; bottom: -120px; width: 240px; height: 240px; border-radius: 50%; background: rgba(46,229,157,.13); }
.rtsr-top { display: flex; justify-content: space-between; gap: 12px; position: relative; z-index: 1; }
.rtsr-nm { font-size: 22px; font-weight: 800; }
.rtsr-tg { color: #FF7A1A; font-weight: 700; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; margin-top: 4px; }
.rtsr-dt { color: #A0A6AF; font-size: 13px; }
.rtsr-head h1 { font-size: 34px; margin: 28px 0 6px; position: relative; z-index: 1; color: #F4F1EA; }
.rtsr-head h1 span { color: #FF7A1A; }
.rtsr-u { color: #C9C5BC; word-break: break-all; position: relative; z-index: 1; font-size: 14px; }
.rtsr-score { display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; background: #fff; border-radius: 18px; padding: 22px; margin: -50px 0 16px; position: relative; z-index: 2; box-shadow: 0 10px 30px rgba(0,0,0,.08); }
.rtsr-big { width: 122px; height: 122px; border-radius: 50%; display: grid; place-content: center; text-align: center; font-size: 44px; font-weight: 900; color: #fff; line-height: 1; }
.rtsr-big small { display: block; font-size: 12px; font-weight: 600; opacity: .85; margin-top: 4px; }
.rtsr-big-ok { background: #0E9F6E; } .rtsr-big-warn { background: #C27C00; } .rtsr-big-bad { background: #D92D45; }
.rtsr-cb { display: grid; grid-template-columns: 150px 1fr 34px; gap: 10px; align-items: center; margin: 5px 0; font-size: 13.5px; }
.rtsr-tr { height: 8px; background: #EEECE7; border-radius: 5px; overflow: hidden; }
.rtsr-tr i { display: block; height: 100%; border-radius: 5px; }
.rtsr-f-ok { background: #0E9F6E; } .rtsr-f-warn { background: #C27C00; } .rtsr-f-bad { background: #D92D45; }
.rtsr-sec { background: #fff; border: 1px solid #ECEAE4; border-radius: 16px; padding: 18px 20px; margin-bottom: 14px; }
.rtsr-sec h2 { margin: 0 0 10px; font-size: 18px; display: flex; justify-content: space-between; gap: 10px; }
.rtsr-sec h2 span { font-size: 14px; }
.rtsr-it { display: flex; gap: 12px; padding: 10px 0; border-top: 1px solid #F0EEE9; break-inside: avoid; }
.rtsr-it:first-of-type { border-top: 0; }
.rtsr-b { flex: none; color: #fff; font-size: 11px; font-weight: 800; border-radius: 999px; padding: 2px 10px; height: fit-content; margin-top: 2px; min-width: 78px; text-align: center; }
.rtsr-b-ok { background: #0E9F6E; } .rtsr-b-warn { background: #C27C00; } .rtsr-b-bad { background: #D92D45; } .rtsr-b-info { background: #2F6FD0; }
.rtsr .rtsa-fix { background: #FFF4EA; color: #15171C; }
.rtsr .rtsa-fix b { color: #C75400; }
.rtsr .rtsa-id { color: #5C626B; }
.rtsr .rtsa-serp { border: 1px solid #E3E1DB; }
.rtsr-t { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.rtsr-t td, .rtsr-t th { text-align: left; padding: 7px 6px; border-top: 1px solid #F0EEE9; }
.rtsr-t th { color: #5C626B; border-top: 0; }
.rtsr-cta { background: #0A0B0D; color: #F4F1EA; border-radius: 18px; padding: 24px; margin: 18px 0; display: flex; gap: 16px; align-items: center; justify-content: space-between; flex-wrap: wrap; break-inside: avoid; }
.rtsr-cta p { margin: 0; font-size: 17px; font-weight: 800; max-width: 480px; }
.rtsr-cta-s { color: #A0A6AF; font-size: 13px; margin-top: 6px; }
.rtsr-noprint .rtsa-premium { --rt-card: #131519; --rt-ink: #F4F1EA; --rt-muted: #A0A6AF; --rt-line: #262A31; --rt-g: #2EE59D; --rt-o: #FF7A1A; color: #F4F1EA; }
.rtsr-foot { text-align: center; color: #8A9099; font-size: 12px; padding: 10px 0 40px; }
@media (max-width: 560px) { .rtsr-score { grid-template-columns: 1fr; justify-items: center; } .rtsr-cb { grid-template-columns: 110px 1fr 30px; } }
@page { size: A4; margin: 12mm; }
@media print {
  .rtsr-body { background: #fff; }
  .rtsr-bar, .rtsr-noprint { display: none !important; }
  .rtsr-w { max-width: none; padding: 0; }
  .rtsr-head .rtsr-w { padding: 0 18px; }
  .rtsr-score { margin-top: -50px; }
}

/* Marca */
.rtsa-brandbar { display: flex; justify-content: center; padding: 6px 0 18px; border-bottom: 1px solid var(--rt-line); margin-bottom: 8px; }
.rtsa-brandbar img { height: 54px; width: auto; max-width: 80%; display: block; }
.rtsr-logo { height: 62px; width: auto; max-width: 340px; display: block; }
.rtsr-by { position: relative; z-index: 1; margin-top: 14px; font-size: 13.5px; color: #A0A6AF; letter-spacing: .04em; }
.rtsr-by b { color: #F4F1EA; font-weight: 600; }
@media (max-width: 520px) { .rtsa-brandbar img { height: 42px; } .rtsr-logo { height: 48px; } }
