.ga-rs[hidden],.ga-rs [hidden]{display:none!important}
.ga-rs{font:inherit;color:inherit;max-width:100%;margin-top:20px}
.ga-rs *{box-sizing:border-box}
.ga-rs-view{display:none}
.ga-rs-view.is-active{display:block}
.ga-rs h3{margin:0 0 10px;font-size:1.25em}
.ga-rs p,.ga-rs-intro{line-height:1.5}
.ga-rs button,.ga-rs select,.ga-rs input{font:inherit}
.ga-rs button{min-height:44px;padding:10px 14px;border:1px solid #d6d6d6;border-radius:8px;background:#fff;cursor:pointer}
.ga-rs button:hover{border-color:#999}
.ga-rs .ga-rs-primary{width:100%;border-color:#111;background:#111;color:#fff;font-weight:600}
.ga-rs-link,.ga-rs-back{min-height:auto!important;padding:5px 0!important;border:0!important;background:transparent!important;text-decoration:underline}

.ga-rs-actions{display:grid;gap:10px;margin:16px 0}
.ga-rs-cal-status{margin-top:14px;font-size:.9em}
.ga-rs-choice-row,.ga-rs-adjust-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ga-rs-choice-row .is-selected{border-color:#111;box-shadow:inset 0 0 0 1px #111}
.ga-rs-adjust-grid{margin:12px 0}
.ga-rs input[type=range]{width:100%;margin:8px 0 14px}
.ga-rs label{display:grid;gap:5px;margin:10px 0}
.ga-rs select,.ga-rs input[type=text],.ga-rs input[type=search]{width:100%;min-height:44px;padding:8px 10px;border:1px solid #ccc;border-radius:7px;background:#fff}

.ga-rs-cal-stage,.ga-rs-ring-stage{display:flex;align-items:center;justify-content:center;min-height:190px;margin:16px 0;overflow:auto;border-radius:10px;background:repeating-linear-gradient(45deg,#fafafa,#fafafa 10px,#f6f6f6 10px,#f6f6f6 20px)}
.ga-rs-card-ref,.ga-rs-coin-ref,.ga-rs-ring{pointer-events:none;user-select:none;touch-action:auto;border:2px solid #111;background:#fff}
.ga-rs-card-ref{width:53.98mm;height:85.6mm!important;max-width:none!important;max-height:none!important;border-radius:8px}
.ga-rs-coin-ref,.ga-rs-ring{border-radius:50%}
.ga-rs-diameter{text-align:center;font-weight:700;font-size:1.1em}
.ga-rs-help,.ga-rs-note{font-size:.86em;color:#666}
.ga-rs-error{color:#b00020}
.ga-rs-needs-cal{padding:14px;border:1px solid #ddd;border-radius:8px}

.ga-rs-system-select{display:flex;align-items:center;gap:7px}
.ga-rs-system-select select{flex:1}
.ga-rs-system-flags,.ga-rs-result-flags,.ga-rs-mini-flags,.ga-rs-th-label{display:inline-flex;align-items:center;justify-content:center;gap:2px}
.ga-rs-system-flags img,.ga-rs-result-flags img,.ga-rs-mini-flags img,.ga-rs-th-label img{display:block;flex:0 0 auto;width:18px!important;height:12px!important;max-width:18px!important;max-height:12px!important;object-fit:cover;border-radius:2px}
.ga-rs img[src$="/jp.svg"]{border:1px solid #d9d9d9;background:#fff}
.ga-rs-calc-help{margin:8px 0 14px;padding:10px 12px;border-left:3px solid #d8d8d8;border-radius:0 7px 7px 0;background:#fafafa;font-size:.88em;line-height:1.45}
.ga-rs-calc-help:empty{display:none}
.ga-rs-calc-help strong,.ga-rs-calc-help span{display:block}
.ga-rs-calc-help strong{margin-bottom:2px}
.ga-rs-repeat-tip,.ga-rs-accuracy-note{margin:10px 0 14px!important;padding:9px 11px;border:1px solid #e5e5e5;border-radius:8px;background:#fafafa;font-size:.83em;line-height:1.45}

.ga-rs-result-card{width:100%;margin-right:auto;margin-left:auto}
.ga-rs-result-summary{text-align:center}
.ga-rs-primary-card{width:min(100%,560px);margin:0 auto 16px;padding:20px 18px 16px;border:1px solid #d8d8d8;border-radius:15px;background:linear-gradient(180deg,#fff 0%,#fafafa 100%);box-shadow:0 7px 22px rgba(0,0,0,.065)}
.ga-rs-primary-kicker{margin-bottom:5px;color:#666;font-size:.75em;font-weight:700;letter-spacing:.08em}
.ga-rs-primary-size{margin-bottom:9px;color:#111;font-size:3.25rem;font-weight:800;line-height:.98;letter-spacing:-.04em}
.ga-rs-primary-confidence{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid #dfdfdf;border-radius:999px;background:#fff;font-size:.78em}
.ga-rs-primary-confidence span{color:#777;text-transform:uppercase;letter-spacing:.035em}
.ga-rs-primary-reference{margin:7px auto 14px;color:#666;font-size:.75em;line-height:1.35}
.ga-rs-primary-reference span{padding:0 3px}
.ga-rs-primary-measures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:10px;padding-top:12px;border-top:1px solid #e7e7e7}
.ga-rs-primary-measure{padding:2px 14px}
.ga-rs-primary-measure+.ga-rs-primary-measure{border-left:1px solid #e7e7e7}
.ga-rs-measure-label{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:5px;color:#555;font-size:.78em;font-weight:700;line-height:1.2}
.ga-rs-measure-svg{display:inline-flex;flex:0 0 auto;width:22px;height:22px;color:#777}
.ga-rs-measure-svg svg{display:block;width:100%;height:100%}
.ga-rs-primary-measure-value{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:3px 6px;color:#666;font-size:.82em;line-height:1.3;text-align:center}
.ga-rs-primary-measure-value strong{color:#111;font-size:1.08em}

.ga-rs-result-equivalents{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;width:100%;margin:14px auto 0}
.ga-rs-result-equivalent{display:flex;flex:0 1 calc(33.333% - 6px);flex-direction:column;align-items:center;justify-content:center;gap:3px;width:calc(33.333% - 6px);min-width:120px;max-width:190px;padding:9px 6px;border:1px solid #e5e5e5;border-radius:9px;background:#fff;white-space:normal}
.ga-rs-result-equivalent.is-unavailable{opacity:.55}
.ga-rs-equivalent-system{font-size:.72em;text-transform:uppercase;letter-spacing:.035em;opacity:.62}
.ga-rs-equivalent-value{font-size:1.28em;line-height:1.05;font-weight:800}
.ga-rs-equivalent-match{font-size:.68em;line-height:1.15;opacity:.72}
.ga-rs-match-explainer,.ga-rs-result-note{max-width:520px;margin:12px auto 0!important;font-size:.75em!important}
.ga-rs-result-note{margin-top:14px!important;font-size:.78em!important}

.ga-rs-out-of-range{text-align:center;padding:16px;border:1px solid #e3c7c7;border-radius:9px;background:#fffafa}
.ga-rs-result-title{margin:0 0 4px!important;font-size:.78em;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.72}
.ga-rs-out-of-range .ga-rs-result-title{color:#8c2f2f}
.ga-rs-out-of-range p:not(.ga-rs-result-title){margin:.55rem 0}
.ga-rs-range-values{display:block;margin-top:.65rem;color:#666;font-size:.88em}

.ga-rs-share-box{display:grid;gap:6px;margin-top:16px;padding-top:14px;border-top:1px solid #e5e5e5;text-align:center}
.ga-rs-share-box>strong{font-size:.95em}
.ga-rs-share-box>span{font-size:.82em;opacity:.78}
.ga-rs-share-box>small{font-size:.73em;opacity:.7}
.ga-rs-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}
.ga-rs-share-actions .ga-rs-primary{grid-column:1/-1}
.ga-rs-share-status{min-height:1.2em;font-size:.76em;opacity:.78}

.ga-rs-table-wrap{max-height:65vh;overflow:auto;border:1px solid #ddd;border-radius:8px}
.ga-rs-table{width:max-content;min-width:100%;border-collapse:collapse;font-size:.88em}
.ga-rs-table th,.ga-rs-table td{padding:8px 9px;border-bottom:1px solid #eee;text-align:center;white-space:nowrap}
.ga-rs-table th{position:sticky;top:0;z-index:1;background:#fff}
.ga-rs-th-label{gap:5px;white-space:nowrap}

@media(max-width:560px){
  .ga-rs-primary-card{padding:17px 14px 14px;border-radius:13px}
  .ga-rs-primary-size{font-size:2.9rem}
  .ga-rs-result-equivalent{flex-basis:calc(50% - 4px);width:calc(50% - 4px);min-width:0;max-width:none}
}
@media(max-width:480px){
  .ga-rs-cal-stage,.ga-rs-ring-stage{min-height:170px}
  .ga-rs-adjust-grid button{padding:10px 6px}
  .ga-rs-choice-row{grid-template-columns:1fr}
}
@media(max-width:420px){
  .ga-rs-primary-measure{padding:2px 8px}
  .ga-rs-primary-measure-value{font-size:.76em}
  .ga-rs-share-actions{grid-template-columns:1fr}
  .ga-rs-share-actions .ga-rs-primary{grid-column:auto}
}


/* v1.0.21: límites estrictos para SVG en móvil/Shoptimizer */
.ga-rs svg{
  display:block;
  max-width:100%;
  max-height:100%;
}
.ga-rs-measure-svg{
  display:inline-flex!important;
  flex:0 0 22px!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  overflow:hidden;
}
.ga-rs-measure-svg svg{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
}
.ga-rs-result-flags,
.ga-rs-system-flags,
.ga-rs-mini-flags,
.ga-rs-th-label{
  line-height:1;
}
.ga-rs-result-flags img,
.ga-rs-system-flags img,
.ga-rs-mini-flags img,
.ga-rs-th-label img{
  width:18px!important;
  height:12px!important;
  min-width:18px!important;
  min-height:12px!important;
  max-width:18px!important;
  max-height:12px!important;
}
@media(max-width:560px){
  .ga-rs-measure-svg,
  .ga-rs-measure-svg svg{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
    max-width:20px!important;
    max-height:20px!important;
  }
}


/* v1.0.22: etiquetas dentro de las figuras guía */
.ga-rs-guide-shape{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ga-rs-guide-label{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:10px;
  text-align:center;
  pointer-events:none;
  color:rgba(0,0,0,.46);
  line-height:1.2;
}
.ga-rs-guide-label strong{
  max-width:88%;
  font-size:.78em;
  font-weight:700;
}
.ga-rs-guide-label span{
  max-width:88%;
  font-size:.68em;
}
.ga-rs-guide-label-ring{
  color:rgba(0,0,0,.42);
}
.ga-rs-guide-label-ring strong{
  font-size:.72em;
}
.ga-rs-guide-label-ring span{
  font-size:.64em;
}
.ga-rs-ring-align-note{
  margin:-4px 0 10px!important;
  text-align:center;
  font-size:.78em;
  line-height:1.35;
  color:#666;
}
@media(max-width:560px){
  .ga-rs-guide-label strong{font-size:.72em}
  .ga-rs-guide-label span{font-size:.62em}
  .ga-rs-guide-label-ring strong{font-size:.66em}
  .ga-rs-guide-label-ring span{font-size:.58em}
}

.ga-rs [data-cal-shape][hidden]{display:none!important}


/* v1.0.24: representaciones visuales simplificadas */
.ga-rs-guide-shape{position:relative;overflow:hidden}
.ga-rs-card-visual,.ga-rs-coin-visual,.ga-rs-ring-visual{position:absolute;inset:0;pointer-events:none;user-select:none}
.ga-rs-guide-caption{position:absolute;right:8%;bottom:6%;left:8%;color:rgba(0,0,0,.42);font-size:.62em;line-height:1.2;text-align:center;pointer-events:none}

/* Tarjeta genérica */
.ga-rs-card-ref{background:linear-gradient(160deg,#fff 0%,#f7f7f7 100%)}
.ga-rs-card-chip{position:absolute;top:16%;left:16%;width:25%;height:16%;border:1.5px solid rgba(0,0,0,.28);border-radius:4px;background:linear-gradient(90deg,transparent 47%,rgba(0,0,0,.16) 48%,rgba(0,0,0,.16) 52%,transparent 53%),linear-gradient(0deg,transparent 47%,rgba(0,0,0,.16) 48%,rgba(0,0,0,.16) 52%,transparent 53%)}
.ga-rs-card-band{position:absolute;top:45%;right:10%;left:10%;height:9%;border-radius:3px;background:rgba(0,0,0,.09)}
.ga-rs-card-line{position:absolute;left:14%;height:3%;border-radius:999px;background:rgba(0,0,0,.14)}
.ga-rs-card-line-a{top:62%;width:48%}
.ga-rs-card-line-b{top:69%;width:34%}
.ga-rs-card-mark{position:absolute;right:14%;bottom:18%;width:14%;aspect-ratio:1;border:1.5px solid rgba(0,0,0,.18);border-radius:50%}

/* Moneda estilizada */
.ga-rs-coin-ref{background:radial-gradient(circle at 40% 35%,#fff 0%,#fafafa 58%,#f2f2f2 100%)}
.ga-rs-coin-ring{position:absolute;inset:10%;border:1.5px solid rgba(0,0,0,.18);border-radius:50%}
.ga-rs-coin-value{position:absolute;top:38%;right:8%;left:8%;color:rgba(0,0,0,.48);font-size:1.05em;font-weight:800;line-height:1;text-align:center;letter-spacing:.02em}
.ga-rs-coin-detail{position:absolute;top:55%;right:10%;left:10%;color:rgba(0,0,0,.30);font-size:.46em;font-weight:700;line-height:1;text-align:center;letter-spacing:.08em}
.ga-rs-guide-caption-coin{bottom:12%;font-size:.52em}

/* Guía de anillo */
.ga-rs-ring-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:rgba(0,0,0,.34);text-align:center}
.ga-rs-ring-symbol{width:24%;aspect-ratio:1;margin-bottom:2px;border:1.5px solid currentColor;border-radius:50%;box-shadow:inset 0 0 0 3px rgba(255,255,255,.9)}
.ga-rs-ring-text{font-size:.68em;font-weight:800;letter-spacing:.08em}
.ga-rs-ring-subtext{font-size:.56em;letter-spacing:.01em}
@media(max-width:560px){
  .ga-rs-guide-caption{font-size:.56em}
  .ga-rs-guide-caption-coin{font-size:.48em}
  .ga-rs-ring-text{font-size:.62em}
  .ga-rs-ring-subtext{font-size:.52em}
}


/* v1.0.25: tarjeta lineal y moneda simplificada */
.ga-rs-card-ref{
  color:rgba(0,0,0,.34);
  background:#fff;
}
.ga-rs-card-svg{
  position:absolute;
  inset:8% 10% 14%;
  display:block;
  width:80%!important;
  height:78%!important;
  max-width:80%!important;
  max-height:78%!important;
  color:rgba(0,0,0,.34);
}
.ga-rs-card-chip,
.ga-rs-card-band,
.ga-rs-card-line,
.ga-rs-card-mark,
.ga-rs-coin-ring{
  display:none!important;
}
.ga-rs-coin-ref{
  background:#fff;
}
.ga-rs-coin-value{
  top:41%;
  color:rgba(0,0,0,.48);
  font-size:1.08em;
}
.ga-rs-coin-detail{
  top:57%;
  color:rgba(0,0,0,.30);
  font-size:.45em;
}


/* v1.0.26: tarjeta SVG vertical como contorno de calibración */
.ga-rs-card-ref{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  overflow:visible!important;
}
.ga-rs-card-svg{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  color:#000!important;
}
.ga-rs-card-outline{
  fill:#fff;
  stroke:#000;
  stroke-width:2;
  vector-effect:non-scaling-stroke;
}
.ga-rs-card-band-solid,
.ga-rs-card-text-block{
  fill:#000;
  stroke:none;
}
.ga-rs-card-ref .ga-rs-guide-caption,
.ga-rs-coin-ref .ga-rs-guide-caption{
  display:none!important;
}
