/* ============================================================
   Veltrix · auditoria.css — Auditoría web gratis (/auditoria-web y su resultado privado)
   Se carga después de styles.css y servicios.css (sp-hero, sp-crumbs, sp-actions, store…).
   Semáforo: el color siempre va con su texto (Bien / Mejorable / Urgente) y su ícono.
   ============================================================ */
.au-page{
  --au-green:#087a4b;--au-green-bg:#e6f7ef;--au-green-dot:#12c27a;
  --au-amber:#8a5300;--au-amber-bg:#fff3dc;--au-amber-dot:#f0a020;
  --au-red:#b3261e;--au-red-bg:#fdecec;--au-red-dot:#e5484d;
  --au-gray:#5f5c78;--au-gray-bg:#f1f0f5;--au-gray-dot:#a7a3bd;
}

/* ----- Formulario ----- */
.au-hero-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:start}
.au-hero h1{max-width:640px}
.au-h1-em{display:block;color:var(--purple)}
.au-card{background:#fff;border-radius:26px;padding:30px 30px 24px;box-shadow:var(--shadow);border:1px solid var(--line);scroll-margin-top:90px}
.au-card-t{font-size:24px;font-weight:700;color:var(--ink);margin-bottom:2px}
.au-form .ck-hp{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
.au-form .mf-check label{font-size:12.5px}
.au-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px}
.au-submit.is-busy{opacity:.85;cursor:progress;transform:none!important;box-shadow:none!important}
.au-status{min-height:1.4em;margin:-6px 0 0;font-size:13.5px;font-weight:600;color:var(--purple);text-align:center}
.au-status:empty{min-height:0;margin:0}
.au-alert{background:var(--au-red-bg,#fdecec);color:var(--au-red,#b3261e);border-radius:12px;padding:11px 14px;font-size:13.5px;font-weight:600;line-height:1.5}
.au-alert p{margin:0}

.au-h2{font-size:clamp(28px,3.6vw,44px);font-weight:700;letter-spacing:-.025em;color:var(--ink);text-wrap:balance}
.au-hero h1,.au-res h1,.au-cta .display{text-wrap:balance}
.au-what .lead{margin-bottom:0}
.au-groups{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin-top:48px}
@media(min-width:1100px){.au-groups{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}}
.au-group{background:var(--paper);border-radius:20px;padding:22px 20px}
.au-group h3{display:flex;align-items:center;gap:10px;font-size:16.5px;font-weight:700;color:var(--ink);margin-bottom:14px;line-height:1.25}
.au-group-n{flex-shrink:0;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--tint);color:var(--purple);font-size:14px}
.au-group ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.au-group li{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--ink-2);line-height:1.45}
.au-group .hf-ic{width:17px;height:17px;flex-shrink:0;margin-top:1px;color:var(--green)}

.au-how-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
.au-steps{list-style:none;counter-reset:au;display:flex;flex-direction:column;gap:18px;margin-top:28px}
.au-steps li{counter-increment:au;position:relative;padding-left:54px;font-size:15.5px;line-height:1.6;color:var(--ink-2)}
.au-steps li::before{content:counter(au);position:absolute;left:0;top:-2px;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:700}
.au-steps b{color:var(--ink)}
.au-privacy{background:#fff;border-radius:22px;padding:26px;border:1px solid var(--line)}
.au-privacy h3{font-size:18px;font-weight:700;color:var(--ink);margin-bottom:14px}
.au-privacy ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.au-privacy li{position:relative;padding-left:20px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.au-privacy li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--purple)}
.au-privacy a{color:var(--purple);font-weight:600;overflow-wrap:anywhere}
.au-how-cta{margin-top:28px}

/* ----- Resultado ----- */
.au-res{background:var(--paper);padding:40px 0 56px;position:relative;overflow:hidden}
.au-res::after{content:"";position:absolute;width:460px;height:460px;right:-160px;top:-200px;border-radius:50%;background:radial-gradient(circle,rgba(123,63,240,.22),transparent 70%);pointer-events:none}
.au-res .container{position:relative;z-index:1}
.au-res-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center}
.au-res h1{font-size:clamp(30px,4.2vw,52px);font-weight:700;letter-spacing:-.03em;line-height:1.08;color:var(--ink);max-width:760px}
.au-res .eyebrow{display:block}
.au-res-url{margin-top:16px;font-size:15px;color:var(--ink-2);overflow-wrap:anywhere}
.au-res-error{margin-top:14px;font-size:16px;font-weight:600;color:var(--au-red)}
.au-res .lead{margin:14px 0 0;max-width:640px}
.au-actions{align-items:center}
.au-quote-form{display:contents}
.au-actions button.store{font-family:inherit;cursor:pointer;min-height:52px;justify-content:center}
.au-quoted{display:inline-flex;align-items:center;gap:9px;min-height:52px;padding:0 18px;border-radius:16px;background:var(--au-green-bg);color:var(--au-green);font-weight:600;font-size:14.5px}
.au-quoted .hf-ic{width:20px;height:20px;color:var(--au-green-dot)}
.au-actions-hint{margin-top:10px;font-size:13px;line-height:1.55;color:var(--muted);max-width:560px}
.au-cta .au-actions-hint{margin-left:auto;margin-right:auto}
.au-ok{display:flex;gap:12px;align-items:flex-start;background:var(--au-green-bg);color:var(--au-green);border-radius:16px;padding:14px 16px;margin-bottom:22px;font-size:14.5px;line-height:1.55}
.au-ok .hf-ic{width:22px;height:22px;flex-shrink:0;color:var(--au-green-dot)}
.au-ok p{margin:0}
.au-res .au-alert{margin-bottom:22px}

.au-score{--c:var(--purple);--score:0;flex-shrink:0;width:220px;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:radial-gradient(closest-side,#fff 79%,transparent 80% 100%),conic-gradient(var(--c) calc(var(--score) * 1%),#e4e1ee 0);box-shadow:var(--shadow-sm)}
.au-score.au-green{--c:var(--au-green-dot)}
.au-score.au-amber{--c:var(--au-amber-dot)}
.au-score.au-red{--c:var(--au-red-dot)}
.au-score-n{font-size:64px;font-weight:800;line-height:1;color:var(--ink);letter-spacing:-.04em}
.au-score-of{font-size:14px;color:var(--muted);margin-top:4px}
.au-score-l{margin-top:8px;font-size:13px;font-weight:700;padding:4px 12px;border-radius:30px}
.au-green .au-score-l{background:var(--au-green-bg);color:var(--au-green)}
.au-amber .au-score-l{background:var(--au-amber-bg);color:var(--au-amber)}
.au-red .au-score-l{background:var(--au-red-bg);color:var(--au-red)}

.au-lights{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.au-light a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 14px;border-radius:14px;background:#fff;border:1px solid var(--line);text-decoration:none;font-size:14px;color:var(--ink);transition:border-color .2s,transform .2s var(--ease-out)}
.au-light a:hover{border-color:var(--purple);transform:translateY(-2px)}
.au-light-t{font-weight:600}
.au-light-l{font-size:12.5px;font-weight:700;padding:2px 9px;border-radius:20px}
.au-light.au-green .au-light-l{background:var(--au-green-bg);color:var(--au-green)}
.au-light.au-amber .au-light-l{background:var(--au-amber-bg);color:var(--au-amber)}
.au-light.au-red .au-light-l{background:var(--au-red-bg);color:var(--au-red)}
.au-light.au-gray .au-light-l{background:var(--au-gray-bg);color:var(--au-gray)}
.au-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;background:var(--au-gray-dot)}
.au-green .au-dot{background:var(--au-green-dot)}
.au-amber .au-dot{background:var(--au-amber-dot)}
.au-red .au-dot{background:var(--au-red-dot)}
.au-counts{margin-top:14px;font-size:13.5px;color:var(--muted)}
.au-note{margin-top:14px;font-size:13.5px;color:var(--ink-2);background:#fff;border-left:3px solid var(--purple);border-radius:8px;padding:10px 14px;max-width:820px;overflow-wrap:anywhere}

.au-prio{padding:64px 0}
.au-prio .eyebrow{display:block}
.au-prio-list{list-style:none;counter-reset:prio;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:26px}
.au-prio-list li{counter-increment:prio;background:#fff;border-radius:20px;padding:22px;border:1px solid var(--line);position:relative}
.au-prio-list li::before{content:counter(prio);position:absolute;right:18px;top:14px;font-size:38px;font-weight:800;color:var(--tint);line-height:1}
.au-prio-list h3{font-size:17px;font-weight:700;color:var(--ink);line-height:1.3;margin:12px 0 8px;padding-right:30px}
.au-prio-list p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}

.au-sec{padding:48px 0 8px}
.au-sec+.au-cta{margin-top:56px}
.au-sec-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.au-sec-head .au-dot{width:16px;height:16px}
.au-sec-head h2{font-size:clamp(22px,2.6vw,30px);font-weight:700;color:var(--ink);letter-spacing:-.02em}
.au-sec-label{font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px;background:var(--au-gray-bg);color:var(--au-gray)}
.au-sec-head.au-green .au-sec-label{background:var(--au-green-bg);color:var(--au-green)}
.au-sec-head.au-amber .au-sec-label{background:var(--au-amber-bg);color:var(--au-amber)}
.au-sec-head.au-red .au-sec-label{background:var(--au-red-bg);color:var(--au-red)}

.au-findings{list-style:none}
.au-f{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}
.au-ic{width:24px;height:24px;flex-shrink:0;margin-top:2px}
.au-f-good .au-ic{color:var(--au-green-dot)}
.au-f-warn .au-ic{color:var(--au-amber-dot)}
.au-f-bad .au-ic{color:var(--au-red-dot)}
.au-f-skip .au-ic{color:var(--au-gray-dot)}
.au-f-main{min-width:0;flex:1}
.au-f-t{font-size:16.5px;font-weight:600;color:var(--ink);line-height:1.4;letter-spacing:-.01em}
.au-tag{display:inline-block;vertical-align:2px;margin-left:6px;font-size:11.5px;font-weight:700;letter-spacing:.02em;padding:2px 9px;border-radius:20px;background:var(--au-gray-bg);color:var(--au-gray)}
.au-prio-list .au-tag{margin-left:0}
.au-f-good .au-tag{background:var(--au-green-bg);color:var(--au-green)}
.au-f-warn .au-tag{background:var(--au-amber-bg);color:var(--au-amber)}
.au-f-bad .au-tag{background:var(--au-red-bg);color:var(--au-red)}
.au-f-found{margin-top:5px;font-size:14.5px;line-height:1.6;color:var(--ink-2);overflow-wrap:anywhere}
.au-more{margin-top:8px}
.au-more summary,.au-goods>summary{display:inline-flex;align-items:center;gap:6px;min-height:36px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--purple);list-style:none}
.au-more summary::-webkit-details-marker,.au-goods>summary::-webkit-details-marker{display:none}
.au-more summary::after,.au-goods>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.au-more[open] summary::after,.au-goods[open]>summary::after{transform:rotate(-135deg) translateY(-1px)}
.au-more summary:focus-visible,.au-goods>summary:focus-visible{outline:2px solid var(--purple);outline-offset:3px;border-radius:6px}
.au-goods{border-bottom:1px solid var(--line)}
.au-goods>summary{min-height:48px;padding:6px 0}
.au-goods .au-f:last-child{border-bottom:0}
.au-more p{font-size:14.5px;line-height:1.6;color:var(--ink-2);margin-top:6px;max-width:860px}
.au-fix{background:var(--tint);border-radius:12px;padding:10px 14px}
.au-fix b{color:var(--ink)}

.au-cta .sp-actions{justify-content:center}
.au-keep{margin-top:22px;font-size:13.5px;color:var(--muted)}
.au-keep a{color:var(--purple);font-weight:600}

.au-expired{padding:64px 0 96px;text-align:center}
.au-expired h1{margin:0 auto}
.au-expired .lead{margin:16px auto 0}
.au-expired .sp-actions{justify-content:center}

/* ----- Responsive ----- */
@media(max-width:1000px){
  .au-hero-in,.au-how-in{grid-template-columns:1fr;gap:30px}
  .au-card{max-width:640px}
}
@media(max-width:760px){
  .au-res-top{grid-template-columns:1fr;gap:26px}
  .au-score{width:170px;order:-1;justify-self:center}
  .au-score-n{font-size:50px}
}
@media(max-width:600px){
  .au-hero-txt .sp-facts{display:none}
  .au-hero .lead{font-size:15px}
  .au-card{padding:22px 18px 18px;border-radius:22px}
  .au-res{padding:28px 0 40px}
  .au-groups{margin-top:32px}
  .au-light{flex:1 1 100%}
  .au-light a{width:100%}
  .au-light-l{margin-left:auto}
  .au-actions .store,.au-actions .au-quoted{flex:1 1 100%;justify-content:center}
  .au-f{gap:12px}
  .au-prio{padding:44px 0}
}
@media(prefers-reduced-motion:reduce){.au-light a,.au-more summary::after,.au-goods>summary::after{transition:none}}
