/* Canal de Denuncias v2.0.0 */

div.cdw { max-width:860px !important; margin:0 auto !important; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important; font-size:15px !important; line-height:1.5 !important; color:#374151 !important; }
div.cdw *, div.cdw *::before, div.cdw *::after { box-sizing:border-box !important; }

/* INICIO */
div.cdw div.cd-inicio { padding:16px !important; background-color:#f9fafb !important; display:flex !important; align-items:center !important; justify-content:center !important; }
div.cdw div.cd-inicio-box { background-color:#ffffff !important; border:1px solid #e5e7eb !important; border-radius:8px !important; width:100% !important; max-width:620px !important; overflow:hidden !important; box-shadow:0 2px 8px rgba(0,0,0,.08) !important; }
div.cdw div.cd-inicio-header { background-color:#fa006c !important; color:#ffffff !important; text-align:center !important; font-size:18px !important; font-weight:700 !important; padding:18px 24px !important; display:block !important; }
div.cdw div.cd-inicio-body { padding:24px !important; font-size:14px !important; color:#374151 !important; line-height:1.7 !important; }
div.cdw div.cd-inicio-body p { margin:0 0 12px !important; font-size:14px !important; color:#374151 !important; }
div.cdw div.cd-inicio-body p:last-child { margin-bottom:0 !important; }
div.cdw div.cd-inicio-footer { padding:0 24px 24px !important; }

/* BOTÓN PRINCIPAL */
div.cdw button.cd-btn-main { display:block !important; width:100% !important; padding:14px 20px !important; background-color:#fa006c !important; color:#ffffff !important; border:none !important; border-radius:6px !important; font-size:14px !important; font-weight:700 !important; letter-spacing:.07em !important; cursor:pointer !important; text-align:center !important; font-family:inherit !important; text-transform:uppercase !important; -webkit-appearance:none !important; appearance:none !important; }
div.cdw button.cd-btn-main:hover { opacity:.87 !important; }

/* FORMULARIO */
div.cdw div.cd-form { border:1px solid #e5e7eb !important; border-radius:8px !important; overflow:hidden !important; background-color:#ffffff !important; box-shadow:0 2px 8px rgba(0,0,0,.07) !important; }

/* HEADER BAR */
div.cdw div.cd-header { background-color:#fa006c !important; color:#ffffff !important; padding:14px 20px !important; font-size:16px !important; font-weight:700 !important; display:block !important; }

/* PASOS */
div.cdw div.cd-steps { display:flex !important; align-items:flex-start !important; justify-content:space-between !important; padding:20px 24px 16px !important; border-bottom:1px solid #e5e7eb !important; background-color:#ffffff !important; width:100% !important; overflow-x:auto !important; }
div.cdw div.cd-step-line { flex:1 !important; height:2px !important; background-color:#d1d5db !important; min-width:12px !important; margin-top:15px !important; align-self:flex-start !important; }
div.cdw div.cd-step-line.done { background-color:#fa006c !important; }
div.cdw div.cd-step { display:flex !important; flex-direction:column !important; align-items:center !important; gap:6px !important; flex-shrink:0 !important; min-width:80px !important; max-width:120px !important; }
div.cdw div.cd-step-circle { width:32px !important; height:32px !important; border-radius:50% !important; background-color:#d1d5db !important; color:#9ca3af !important; font-size:13px !important; font-weight:700 !important; display:flex !important; align-items:center !important; justify-content:center !important; flex-shrink:0 !important; line-height:1 !important; }
div.cdw div.cd-step-label { font-size:11px !important; color:#9ca3af !important; text-align:center !important; line-height:1.3 !important; max-width:90px !important; }
div.cdw div.cd-step.active div.cd-step-circle { background-color:#22c55e !important; color:#ffffff !important; }
div.cdw div.cd-step.active div.cd-step-label { color:#111827 !important; font-weight:700 !important; }
div.cdw div.cd-step.done div.cd-step-circle { background-color:#fa006c !important; color:#ffffff !important; }
div.cdw div.cd-step.done div.cd-step-label { color:#6b7280 !important; }

/* PANELES */
div.cdw div.cd-panels { padding:24px !important; min-height:280px !important; background-color:#ffffff !important; }
div.cdw h2.cd-panel-title { font-size:16px !important; font-weight:700 !important; text-align:center !important; margin:0 0 18px !important; color:#111827 !important; background:none !important; border:none !important; padding:0 !important; }
div.cdw h2.cd-panel-title a, div.cdw a.cd-pdf-link { color:#fa006c !important; text-decoration:none !important; font-weight:700 !important; }
div.cdw h2.cd-panel-title a:hover { text-decoration:underline !important; }
div.cdw h2.cd-panel-title.cd-color { color:#fa006c !important; }

/* TEXTO CONDICIONES */
div.cdw div.cd-cond-text { background-color:#f9fafb !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:14px 16px !important; font-size:13px !important; color:#374151 !important; line-height:1.7 !important; margin-bottom:18px !important; max-height:150px !important; overflow-y:auto !important; }
div.cdw div.cd-cond-text p { margin:0 0 8px !important; font-size:13px !important; color:#374151 !important; }
div.cdw div.cd-cond-text p:last-child { margin-bottom:0 !important; }

/* PDF BOX */
div.cdw div.cd-pdf-box { display:flex !important; align-items:flex-start !important; gap:10px !important; background-color:#fff7ed !important; border:1px solid #fed7aa !important; border-radius:6px !important; padding:12px 14px !important; margin-bottom:16px !important; }
div.cdw div.cd-pdf-box-icon { font-size:20px !important; flex-shrink:0 !important; margin-top:2px !important; }
div.cdw div.cd-pdf-box-body p { margin:0 0 8px !important; font-size:13px !important; color:#374151 !important; }
div.cdw a.cd-btn-pdf { display:inline-block !important; background-color:#fa006c !important; color:#ffffff !important; text-decoration:none !important; padding:7px 16px !important; border-radius:5px !important; font-size:13px !important; font-weight:700 !important; cursor:pointer !important; }
div.cdw a.cd-btn-pdf:hover { opacity:.87 !important; color:#ffffff !important; }

/* PDF BADGE — hidden by default, JS adds --visible class */
div.cdw span.cd-pdf-badge { display:none !important; }
div.cdw span.cd-pdf-badge.cd-pdf-badge--visible { display:inline-block !important; margin-left:8px !important; background-color:#d1fae5 !important; color:#065f46 !important; padding:3px 10px !important; border-radius:20px !important; font-size:12px !important; font-weight:600 !important; }
div.cdw span.cd-pdf-badge.cd-pdf-badge--hidden { display:none !important; }

/* TOGGLE */
div.cdw div.cd-toggle-row { display:flex !important; align-items:center !important; gap:12px !important; margin-top:4px !important; }
div.cdw div.cd-toggle-row.cd-toggle-locked { opacity:.4 !important; pointer-events:none !important; }
div.cdw label.cd-toggle { position:relative !important; display:inline-block !important; width:44px !important; height:24px !important; flex-shrink:0 !important; cursor:pointer !important; margin:0 !important; padding:0 !important; }
div.cdw label.cd-toggle input { opacity:0 !important; width:0 !important; height:0 !important; position:absolute !important; }
div.cdw label.cd-toggle span.cd-toggle-track { position:absolute !important; inset:0 !important; background-color:#d1d5db !important; border-radius:24px !important; cursor:pointer !important; transition:background-color .2s !important; border:none !important; }
div.cdw label.cd-toggle span.cd-toggle-track::before { content:"" !important; position:absolute !important; width:18px !important; height:18px !important; left:3px !important; top:3px !important; background-color:#ffffff !important; border-radius:50% !important; transition:transform .2s !important; box-shadow:0 1px 3px rgba(0,0,0,.2) !important; }
div.cdw label.cd-toggle input:checked+span.cd-toggle-track { background-color:#fa006c !important; }
div.cdw label.cd-toggle input:checked+span.cd-toggle-track::before { transform:translateX(20px) !important; }
div.cdw span.cd-toggle-label { font-size:14px !important; color:#374151 !important; cursor:pointer !important; }

/* ALERTS */
div.cdw div.cd-alert { border-radius:6px !important; padding:10px 14px !important; font-size:13px !important; margin-top:10px !important; }
div.cdw div.cd-alert-error { background-color:#fef2f2 !important; border:1px solid #fecaca !important; color:#b91c1c !important; }
div.cdw div.cd-alert-warn { background-color:#fffbeb !important; border:1px solid #fde68a !important; color:#92400e !important; }
div.cdw div.cd-infobox { background-color:#eff6ff !important; border-left:3px solid #fa006c !important; border-radius:4px !important; padding:12px 14px !important; font-size:13px !important; color:#374151 !important; line-height:1.6 !important; }
div.cdw div.cd-infobox p { margin:0 !important; font-size:13px !important; color:#374151 !important; }

/* GRID & FIELDS */
div.cdw div.cd-grid { display:grid !important; grid-template-columns:repeat(12,1fr) !important; gap:14px 16px !important; }
div.cdw div.cd-col12 { grid-column:span 12 !important; }
div.cdw div.cd-col6  { grid-column:span 6 !important; }
div.cdw div.cd-col4  { grid-column:span 4 !important; }
div.cdw div.cd-field { display:flex !important; flex-direction:column !important; gap:3px !important; }
div.cdw label.cd-label { font-size:13px !important; font-weight:600 !important; color:#374151 !important; display:block !important; margin-bottom:0 !important; padding:0 !important; }
div.cdw span.cd-req { color:#ef4444 !important; }
div.cdw small.cd-hint { font-size:12px !important; color:#6b7280 !important; font-style:italic !important; }
div.cdw input.cd-input, div.cdw select.cd-select, div.cdw textarea.cd-textarea { width:100% !important; border:none !important; border-bottom:1px solid #d1d5db !important; border-radius:0 !important; padding:7px 3px !important; font-size:14px !important; color:#111827 !important; background-color:transparent !important; outline:none !important; font-family:inherit !important; box-shadow:none !important; -webkit-appearance:none !important; appearance:none !important; }
div.cdw input.cd-input:focus, div.cdw select.cd-select:focus, div.cdw textarea.cd-textarea:focus { border-bottom-color:#fa006c !important; outline:none !important; }
div.cdw select.cd-select { cursor:pointer !important; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%236b7280' d='M5 6L0 0h10z'/%3E%3C/svg%3E") !important; background-repeat:no-repeat !important; background-position:right 6px center !important; padding-right:24px !important; }
div.cdw textarea.cd-textarea { resize:vertical !important; min-height:80px !important; }

/* UPLOAD */
div.cdw div.cd-upload { border:2px dashed #d1d5db !important; border-radius:6px !important; padding:24px 20px !important; text-align:center !important; cursor:pointer !important; margin-bottom:14px !important; }
div.cdw div.cd-upload:hover { border-color:#fa006c !important; background-color:#fff5f9 !important; }
div.cdw span.cd-upload-icon { font-size:28px !important; display:block !important; margin-bottom:6px !important; }
div.cdw p.cd-upload-text { font-size:14px !important; color:#374151 !important; margin:0 0 4px !important; }
div.cdw small.cd-upload-note { font-size:12px !important; color:#9ca3af !important; }
div.cdw button.cd-link-btn { background:none !important; border:none !important; color:#fa006c !important; cursor:pointer !important; font-size:14px !important; text-decoration:underline !important; padding:0 !important; font-family:inherit !important; }
div.cdw div.cd-ftable { border:1px solid #e5e7eb !important; border-radius:6px !important; overflow:hidden !important; }
div.cdw div.cd-ftable-head { display:grid !important; grid-template-columns:1fr 150px 36px !important; background-color:#f9fafb !important; padding:8px 12px !important; font-size:12px !important; font-weight:600 !important; color:#6b7280 !important; border-bottom:1px solid #e5e7eb !important; }
div.cdw div.cd-fempty { padding:18px !important; text-align:center !important; color:#9ca3af !important; font-size:13px !important; }
div.cdw div.cd-frow { display:grid !important; grid-template-columns:1fr 150px 36px !important; padding:8px 12px !important; font-size:13px !important; border-bottom:1px solid #f3f4f6 !important; align-items:center !important; }
div.cdw div.cd-frow:last-child { border-bottom:none !important; }
div.cdw span.cd-fname { color:#fa006c !important; }
div.cdw span.cd-fdate { color:#6b7280 !important; font-size:12px !important; }
div.cdw button.cd-fdel { background:none !important; border:none !important; color:#ef4444 !important; cursor:pointer !important; font-size:14px !important; padding:2px 4px !important; font-family:inherit !important; }

/* CONFIRMACIÓN */
div.cdw p.cd-confirm-intro { text-align:center !important; font-size:14px !important; color:#374151 !important; margin-bottom:20px !important; line-height:1.6 !important; }
div.cdw div.cd-summary { display:flex !important; gap:12px !important; justify-content:center !important; flex-wrap:wrap !important; }
div.cdw div.cd-sum-card { display:flex !important; align-items:center !important; gap:8px !important; background-color:#f9fafb !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:10px 16px !important; font-size:13px !important; color:#374151 !important; }

/* NAV */
div.cdw div.cd-nav { display:flex !important; justify-content:space-between !important; align-items:center !important; padding:12px 20px !important; border-top:1px solid #f3f4f6 !important; background-color:#f9fafb !important; }
div.cdw button.cd-btn-prev { background:none !important; border:none !important; padding:9px 16px !important; font-size:13px !important; font-weight:700 !important; color:#6b7280 !important; cursor:pointer !important; letter-spacing:.06em !important; font-family:inherit !important; }
div.cdw button.cd-btn-prev:hover { color:#111827 !important; }
div.cdw button.cd-btn-next { background-color:#fa006c !important; color:#ffffff !important; border:none !important; border-radius:5px !important; padding:10px 22px !important; font-size:13px !important; font-weight:700 !important; cursor:pointer !important; letter-spacing:.06em !important; font-family:inherit !important; -webkit-appearance:none !important; appearance:none !important; }
div.cdw button.cd-btn-next:hover { opacity:.87 !important; }
div.cdw button.cd-btn-next:disabled { opacity:.6 !important; cursor:not-allowed !important; }

/* ÉXITO */
div.cdw div.cd-success-wrap { padding:24px 16px !important; background-color:#f9fafb !important; display:flex !important; align-items:center !important; justify-content:center !important; }
div.cdw div.cd-success-box { background-color:#ffffff !important; border:1px solid #e5e7eb !important; border-radius:8px !important; max-width:520px !important; width:100% !important; padding:36px 28px !important; text-align:center !important; box-shadow:0 2px 8px rgba(0,0,0,.07) !important; }
div.cdw div.cd-success-icon { width:56px !important; height:56px !important; background-color:#22c55e !important; color:#ffffff !important; border-radius:50% !important; font-size:26px !important; display:flex !important; align-items:center !important; justify-content:center !important; margin:0 auto 16px !important; }
div.cdw h2.cd-success-title { font-size:19px !important; font-weight:700 !important; color:#111827 !important; margin:0 0 8px !important; padding:0 !important; border:none !important; background:none !important; }
div.cdw p.cd-success-text { font-size:14px !important; color:#6b7280 !important; margin-bottom:18px !important; }
div.cdw div.cd-creds { background-color:#f9fafb !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:14px !important; margin-bottom:14px !important; text-align:left !important; }
div.cdw div.cd-cred-row { display:flex !important; justify-content:space-between !important; align-items:center !important; padding:6px 0 !important; border-bottom:1px solid #f3f4f6 !important; }
div.cdw div.cd-cred-row:last-child { border-bottom:none !important; }
div.cdw span.cd-cred-label { font-size:13px !important; color:#6b7280 !important; }
div.cdw strong.cd-cred-val { font-size:15px !important; color:#111827 !important; letter-spacing:.04em !important; }

/* SPINNER */
div.cdw span.cd-spin { display:inline-block !important; width:14px !important; height:14px !important; border:2px solid rgba(255,255,255,.4) !important; border-top-color:#fff !important; border-radius:50% !important; animation:cdspin .7s linear infinite !important; vertical-align:middle !important; margin-left:6px !important; }
@keyframes cdspin { to { transform:rotate(360deg); } }

/* RESPONSIVE */
@media (max-width:600px) {
  div.cdw div.cd-steps { padding:14px 8px 12px !important; }
  div.cdw div.cd-step { min-width:52px !important; max-width:68px !important; }
  div.cdw div.cd-step-label { font-size:9px !important; }
  div.cdw div.cd-step-circle { width:26px !important; height:26px !important; font-size:11px !important; }
  div.cdw div.cd-step-line { margin-top:13px !important; }
  div.cdw div.cd-panels { padding:16px 12px !important; }
  div.cdw div.cd-col6, div.cdw div.cd-col4 { grid-column:span 12 !important; }
  div.cdw div.cd-summary { flex-direction:column !important; }
  div.cdw div.cd-nav { padding:10px 12px !important; }
}
