/* ============================================================
   DataTrust Widgets · Simulador de Posicionamiento SEO (SERP)
   Namespace .dtw-serp. Colores reconciliados con la marca.
   ============================================================ */
.dtw-serp{
  --dtw-pink:#F54576;--dtw-pink-dark:#c9295a;--dtw-purple:#413C58;
  --dtw-slate:#64748b;--dtw-line:#e6ebf4;--dtw-card:#fff;
  --dtw-success:#0f9d78;      /* verde de marca para estado #1 (fill legible) */
  --dtw-success-soft:#E6FBF5;--dtw-success-brd:#9CEBD6;
  --dtw-amber:#b45309;        /* ámbar de alerta (aviso fuera del top) */
  --dtw-highlight:#FFEEF3;--dtw-ph-you:#b8c9f7;--dtw-ph-grey:#d9dfe9;--dtw-ph-grey-light:#e8edf5;
  --dtw-ink:#17161A;--dtw-paper:#FAFAF8;--dtw-paper-2:#F4F5F9;
  padding:80px 0;font-family:'Poppins',sans-serif;
}
.dtw-serp:not(.dtw-serp--noband){background:var(--dtw-ink)}
.dtw-serp--noband{background:transparent;padding:0}
.dtw-serp__wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.dtw-serp__shell{width:100%;max-width:560px;margin:0 auto}

.dtw-serp__card{background:var(--dtw-card);border-radius:22px;overflow:hidden;box-shadow:0 30px 70px -20px rgba(65,60,88,.45)}

.dtw-serp__head{display:flex;align-items:center;justify-content:space-between;padding:13px 22px;background:var(--dtw-paper-2);border-bottom:1px solid var(--dtw-line)}
.dtw-serp__case{font-size:11.5px;font-weight:500;letter-spacing:.07em;color:var(--dtw-purple);text-transform:uppercase}
.dtw-serp__kw{color:var(--dtw-pink);font-weight:600;transition:opacity .3s ease}
.dtw-serp__live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;color:var(--dtw-success)}
.dtw-serp__live-dot{width:8px;height:8px;border-radius:50%;background:var(--dtw-success);box-shadow:0 0 0 0 rgba(15,157,120,.5);animation:dtwSerpPulse 1.8s infinite}
@keyframes dtwSerpPulse{0%{box-shadow:0 0 0 0 rgba(15,157,120,.5)}70%{box-shadow:0 0 0 7px rgba(15,157,120,0)}100%{box-shadow:0 0 0 0 rgba(15,157,120,0)}}

.dtw-serp__rankbar{display:flex;align-items:center;justify-content:space-between;padding:14px 22px 12px;background:linear-gradient(180deg,var(--dtw-paper),#fff)}
.dtw-serp__phase-time{font-size:12px;color:var(--dtw-slate);font-weight:500;margin-bottom:3px}
.dtw-serp__phase-pos{font-size:16.5px;font-weight:600;color:var(--dtw-pink);letter-spacing:-.01em}
.dtw-serp__badge{text-align:center;background:var(--dtw-highlight);border:1.5px solid #F9B8CC;border-radius:14px;padding:7px 16px;min-width:70px;transition:all .5s cubic-bezier(.34,1.4,.5,1)}
.dtw-serp__num{font-size:22px;font-weight:600;color:var(--dtw-pink);line-height:1}
.dtw-serp__lbl{font-size:9.5px;font-weight:500;letter-spacing:.1em;color:var(--dtw-slate);text-transform:uppercase}

.dtw-serp__search{display:flex;align-items:center;gap:14px;padding:11px 22px 14px;border-bottom:1px solid var(--dtw-line)}
.dtw-serp__glogo{font-size:21px;font-weight:500;letter-spacing:-1px;white-space:nowrap}
.dtw-serp__glogo .b{color:#4285F4}.dtw-serp__glogo .r{color:#EA4335}.dtw-serp__glogo .y{color:#FBBC05}.dtw-serp__glogo .g{color:#34A853}
.dtw-serp__box{flex:1;display:flex;align-items:center;gap:12px;border:1px solid #dfe1e5;border-radius:999px;padding:9px 18px;box-shadow:0 1px 4px rgba(32,33,36,.08)}
.dtw-serp__term{font-size:14px;color:#202124;font-weight:400}
.dtw-serp__caret{display:inline-block;width:1.5px;height:17px;background:var(--dtw-pink);margin-left:1px;vertical-align:middle;animation:dtwSerpBlink 1s step-end infinite}
@keyframes dtwSerpBlink{50%{opacity:0}}

.dtw-serp__results{padding:5px 22px 4px;display:flex;flex-direction:column;position:relative}
.dtw-serp__result{display:flex;flex-direction:column;gap:5px;padding:8px 14px;border-radius:12px;transition:order .85s cubic-bezier(.4,0,.2,1),background .5s ease,box-shadow .5s ease,opacity .5s ease}
.dtw-serp__top{display:flex;gap:10px;align-items:center}
.dtw-serp__result .dtw-serp__d{width:16px;height:16px;border-radius:50%;background:#eceff4;flex-shrink:0;transition:background .5s ease,box-shadow .5s ease}
.dtw-serp__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.dtw-serp__body{min-width:0}
.dtw-serp__bar{border-radius:5px}
.dtw-serp__bar.name{height:7px;background:var(--dtw-ph-grey);width:38%}
.dtw-serp__bar.url{height:7px;background:var(--dtw-ph-grey-light);width:56%}
.dtw-serp__bar.title{height:9px;background:var(--dtw-ph-grey);width:62%;margin-bottom:5px}
.dtw-serp__bar.desc{height:7px;background:var(--dtw-ph-grey-light);width:70%;margin-bottom:5px}
.dtw-serp__bar.desc:last-child{margin-bottom:0}

.dtw-serp__result.you{background:var(--dtw-highlight);box-shadow:inset 0 0 0 1.5px #F5A6C0}
.dtw-serp__result.you.hidden-rank{opacity:0;height:0;padding:0;margin:0;pointer-events:none;overflow:hidden}
.dtw-serp__result.you .dtw-serp__d{background:var(--dtw-success);box-shadow:0 0 0 4px rgba(15,157,120,.18)}
.dtw-serp__site-row{display:flex;align-items:center;gap:9px;min-width:0}
.dtw-serp__site-url{font-size:12.5px;font-weight:500;color:var(--dtw-pink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dtw-serp__you-badge{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--dtw-pink);background:#FFD9E4;padding:3px 9px;border-radius:6px;white-space:nowrap;flex-shrink:0}
.dtw-serp__result.you .dtw-serp__bar.title{background:var(--dtw-pink);opacity:.85}
.dtw-serp__result.you .dtw-serp__bar.desc{background:var(--dtw-ph-you)}

.dtw-serp__note{display:flex;align-items:center;justify-content:center;gap:9px;padding:11px;margin:4px 0;border:1.5px dashed #f0c98a;background:#fdf6ec;border-radius:12px;font-size:12.5px;font-weight:500;color:var(--dtw-amber);text-align:center;transition:opacity .4s ease}
.dtw-serp__note svg{flex-shrink:0}

.dtw-serp__timeline{display:flex;padding:4px 22px 0;border-top:1px solid var(--dtw-line)}
.dtw-serp__tl-step{flex:1;text-align:center;padding:11px 4px 10px;position:relative}
.dtw-serp__tl-track{position:absolute;top:0;left:0;right:0;height:3px;background:var(--dtw-line);overflow:hidden}
.dtw-serp__tl-fill{position:absolute;inset:0;width:0;background:var(--dtw-pink);transition:width .1s linear}
.dtw-serp__tl-label{font-size:12.5px;font-weight:500;color:var(--dtw-slate);transition:color .4s ease}

.dtw-serp__metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px 22px 18px;background:var(--dtw-paper);border-top:1px solid var(--dtw-line)}
.dtw-serp__metric{text-align:center}
.dtw-serp__val{font-size:19px;font-weight:600;color:var(--dtw-pink);letter-spacing:-.01em;line-height:1.1;transition:color .4s ease}
.dtw-serp__metric--grn .dtw-serp__val{color:var(--dtw-success)}
.dtw-serp__cap{font-size:11px;color:var(--dtw-slate);font-weight:400;margin-top:4px}

.dtw-serp__foot{text-align:center;color:#8ea0c9;font-size:12.5px;margin-top:12px;font-weight:500}
.dtw-serp--noband .dtw-serp__foot{color:var(--dtw-slate)}
.dtw-serp__foot b{color:var(--dtw-pink)}

@media(max-width:560px){
  .dtw-serp__metrics{grid-template-columns:repeat(2,1fr);gap:16px 8px}
  .dtw-serp__search{gap:10px;padding:12px 16px 18px}
  .dtw-serp__glogo{font-size:18px}
  .dtw-serp__head,.dtw-serp__rankbar,.dtw-serp__results,.dtw-serp__timeline,.dtw-serp__metrics{padding-left:14px;padding-right:14px}
  .dtw-serp__case{font-size:11px}
  .dtw-serp__tl-label{font-size:12px}
  .dtw-serp__wrap{padding-left:20px;padding-right:20px}
}
@media(prefers-reduced-motion:reduce){.dtw-serp *{animation:none!important}}
