/* Jares Cotizador frontend styles v3.28 */
.jares-cotizador-app,
.jc-custom-quote{
  --jares-primary:#6f3aa1;
  --jares-secondary:#d9c7ee;
  --jares-green:#18b658;
  --jares-bg:#fbf8ff;
  --jares-text:#1f1f1f;
  --jares-muted:#6d6473;
  --jares-border:#e6d8f4;
  box-sizing:border-box;
  width:min(1180px, calc(100vw - 32px));
  margin:40px auto;
  font-family:Poppins, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--jares-text);
}
.jares-cotizador-app *,
.jc-custom-quote *{box-sizing:border-box;}
.jares-cotizador-app a,
.jc-custom-quote a{color:inherit;}
.jc-shell{background:linear-gradient(180deg,#fff 0%,var(--jares-bg) 100%);border:1px solid var(--jares-border);border-radius:28px;padding:28px;box-shadow:0 18px 60px rgba(111,58,161,.12);}
.jc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;}
.jc-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;background:#f0e8fa;color:var(--jares-primary);font-size:13px;font-weight:700;margin-bottom:10px;}
.jc-title{font-size:clamp(30px,5vw,56px);line-height:1.08;margin:0 0 10px;font-weight:700;color:#211b26;}
.jc-subtitle{margin:0;color:var(--jares-muted);font-size:16px;max-width:720px;}
.jc-stepper{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 28px;}
.jc-step{border:1px solid var(--jares-border);background:#f6effd;color:#4c276d;border-radius:999px;padding:10px 16px;font-weight:700;font-size:14px;}
.jc-step.is-active{background:var(--jares-primary);color:#fff;border-color:var(--jares-primary);}
.jc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.jc-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.jc-card{border:1px solid var(--jares-border);border-radius:18px;background:#fff;padding:20px;box-shadow:0 8px 22px rgba(52,22,83,.07);transition:.18s ease;cursor:pointer;text-align:left;width:100%;}
.jc-card:hover{transform:translateY(-2px);border-color:var(--jares-primary);box-shadow:0 12px 28px rgba(111,58,161,.14);}
.jc-card.is-selected{background:var(--jares-primary);border-color:var(--jares-primary);color:#fff;}
.jc-card h3{margin:0 0 8px;font-size:22px;line-height:1.2;color:inherit;}
.jc-card p{margin:0 0 10px;color:inherit;opacity:.86;line-height:1.5;}
.jc-card .jc-price{display:inline-block;margin-top:8px;font-weight:800;}
.jc-panel{border:1px solid var(--jares-border);border-radius:20px;background:#fff;padding:22px;margin-top:18px;}
.jc-panel h3{margin:0 0 16px;font-size:22px;}
.jc-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:end;}
.jc-field{display:block;margin-bottom:14px;font-weight:700;color:#33283d;}
.jc-field span{display:block;margin-bottom:7px;}
.jc-field input,.jc-field textarea,.jc-field select{width:100%;border:1px solid #d8c6eb;border-radius:14px;padding:13px 14px;font:inherit;background:#fff;color:#1f1f1f;min-height:48px;}
.jc-field textarea{min-height:110px;resize:vertical;}
.jc-help{color:var(--jares-muted);font-size:13px;margin:6px 0 0;}
.jc-options{display:grid;gap:12px;margin-top:10px;}
.jc-option{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--jares-border);border-radius:14px;padding:12px 14px;background:#fff;}
.jc-option input{margin-top:4px;}
.jc-option strong{display:block;}
.jc-option small{display:block;color:var(--jares-muted);margin-top:3px;}
.jc-group{border:1px dashed #d4b9ee;border-radius:16px;padding:16px;margin:14px 0;background:#fcfaff;}
.jc-group-title{font-weight:800;margin:0 0 10px;color:#4a236b;}
.jc-included{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px;padding:0;list-style:none;}
.jc-included li{background:#f0e8fa;border:1px solid var(--jares-border);border-radius:999px;padding:7px 11px;font-size:13px;color:#462462;}
.jc-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0;}
.jc-stat{background:#fff;border:1px solid var(--jares-border);border-radius:16px;padding:14px;}
.jc-stat span{display:block;color:var(--jares-muted);font-size:13px;margin-bottom:4px;}
.jc-stat strong{font-size:22px;color:var(--jares-primary);}
.jc-map{height:300px;border-radius:18px;overflow:hidden;border:1px solid var(--jares-border);background:#f4eefb;margin:10px 0 12px;}
.jc-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap;}
.jc-btn, .jc-custom-quote .jc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:12px 18px;border:1px solid transparent;font-weight:800;text-decoration:none;cursor:pointer;min-height:46px;font:inherit;}
.jc-btn-primary{background:var(--jares-primary);color:#fff!important;border-color:var(--jares-primary)!important;}
.jc-btn-secondary{background:#fff;color:var(--jares-primary)!important;border-color:#cdb0e8!important;}
.jc-btn-green{background:var(--jares-green);color:#fff!important;border-color:var(--jares-green)!important;}
.jc-btn:disabled{opacity:.45;cursor:not-allowed;}
.jc-alert{border-radius:16px;padding:14px 16px;margin:16px 0;background:#fff3cd;border:1px solid #ffe69c;color:#5c4300;}
.jc-alert-error{background:#fdeaea;border-color:#fac4c4;color:#9d2222;}
.jc-alert-ok{background:#eaf9ef;border-color:#bde8c9;color:#146b2d;}
.jc-review-list{display:grid;gap:10px;}
.jc-review-line{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #eee2f7;padding:10px 0;}
.jc-review-line strong{text-align:right;}
.jc-custom-quote{margin:40px auto 70px;}
.jc-custom-quote-card{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;align-items:start;background:#fff;border:1px solid var(--jares-border);border-radius:28px;padding:30px;box-shadow:0 14px 44px rgba(111,58,161,.10);}
.jc-custom-kicker{display:inline-block;color:var(--jares-primary);font-weight:800;margin-bottom:10px;}
.jc-custom-quote h3{font-size:clamp(28px,4vw,44px);line-height:1.12;margin:0 0 12px;color:#211b26;}
.jc-custom-quote p{color:var(--jares-muted);line-height:1.6;}
.jc-custom-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.jc-custom-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.jc-custom-form label{display:block;font-weight:700;color:#33283d;}
.jc-custom-form input,.jc-custom-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #d8c6eb;border-radius:14px;padding:13px 14px;font:inherit;min-height:48px;}
.jc-custom-form textarea{min-height:120px;resize:vertical;}
.jc-custom-form label:nth-child(4),.jc-custom-form button,.jc-custom-status{grid-column:1 / -1;}
.jc-custom-status{margin:0;font-weight:700;color:var(--jares-primary);}
.jc-legal-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:18px;font-size:14px;}
.jc-legal-links a{color:var(--jares-primary)!important;font-weight:700;text-decoration:underline;}
@media (max-width: 860px){.jc-grid,.jc-grid-3,.jc-row,.jc-custom-quote-card,.jc-custom-form,.jc-summary{grid-template-columns:1fr;}.jc-shell{padding:20px;border-radius:22px}.jc-top{display:block}.jares-cotizador-app,.jc-custom-quote{width:min(100% - 20px, 1180px);}.jc-card h3{font-size:20px}.jc-actions{justify-content:stretch}.jc-actions .jc-btn{flex:1}.jc-map{height:240px}}


/* v3.20: botones de navegación siempre legibles sobre fondo morado */
.jares-cotizador-app .jc-actions button.jc-btn,
.jares-cotizador-app .jc-actions a.jc-btn{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
}
.jares-cotizador-app .jc-actions button.jc-btn-secondary,
.jares-cotizador-app .jc-actions button[data-action="prev"],
.jares-cotizador-app .jc-actions .jc-btn-secondary[data-action="prev"]{
  background:var(--jares-primary) !important;
  border-color:var(--jares-primary) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.jares-cotizador-app .jc-actions button.jc-btn:disabled,
.jares-cotizador-app .jc-actions button.jc-btn-secondary:disabled,
.jares-cotizador-app .jc-actions button[data-action="prev"]:disabled{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:.72 !important;
}
.jares-cotizador-app .jc-actions button.jc-btn:hover,
.jares-cotizador-app .jc-actions button.jc-btn:focus{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.jc-cart-mini{display:flex;gap:10px;align-items:center;justify-content:space-between;background:#fff;border:1px solid #ead9fa;border-radius:18px;padding:12px 16px;margin:12px 0;color:#4a256d;box-shadow:0 6px 18px rgba(80,40,130,.06)}
.jc-cart-mini span{font-size:14px;color:#6d6473}.jc-cart-empty{justify-content:center;color:#6d6473}.jc-callout{background:#fbf7ff!important}.jc-actions-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.jc-cart-row{display:flex;justify-content:space-between;gap:14px;padding:14px;border:1px solid #ead9fa;border-radius:16px;margin:10px 0;background:#fff}.jc-cart-row small{display:block;margin-top:4px;color:#6d6473}.jc-link-btn{border:0;background:transparent;color:var(--jares-primary);font-weight:800;display:block;margin-top:6px;cursor:pointer}.jc-review-line.jc-total{font-size:1.08em;border-top:2px solid #ead9fa;margin-top:6px;padding-top:12px}.jc-btn,.jares-cotizador-app button.jc-btn{color:#fff!important}.jc-btn-secondary{background:var(--jares-primary)!important;color:#fff!important}.jc-btn-secondary:disabled,.jc-btn-primary:disabled{opacity:.45!important;color:#fff!important}
@media(max-width:640px){.jc-cart-mini,.jc-cart-row{display:block}.jc-cart-mini span{display:block;margin-top:4px}.jc-cart-row>div:last-child{margin-top:10px}}
