@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* =========================================================================
   Libro de Reclamaciones — formulario paso a paso
   Diseño claro tipo SaaS. Todo va namespaced bajo .lrp-shell para no
   colisionar con el tema activo de WordPress.
   ========================================================================= */

.lrp-shell{
  --lrp-bg:#eef2f7;
  --lrp-surface:#ffffff;
  --lrp-surface-2:#f5f7fa;
  --lrp-ink:#0f172a;
  --lrp-ink-soft:#5b6472;
  --lrp-ink-faint:#8993a1;
  --lrp-line:#e2e8f0;
  --lrp-line-strong:#cbd5e1;
  --lrp-primary:#1d4ed8;
  --lrp-primary-ink:#1e3a8a;
  --lrp-primary-soft:#e8f0fe;
  --lrp-primary-hover:#1741b0;
  --lrp-danger:#dc2626;
  --lrp-danger-soft:#fde8e8;
  --lrp-accent:#7c3aed;
  --lrp-accent-soft:#f1e9fd;
  --lrp-radius-btn:10px;
  --lrp-radius-input:9px;
  --lrp-shadow:0 1px 2px rgba(15,23,42,.05), 0 10px 28px -12px rgba(15,23,42,.14);

  max-width:880px;
  margin:0 auto;
  padding:1.4rem 1rem 3rem;
  color:var(--lrp-ink);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  line-height:1.5;
  text-align:left;
}
.lrp-shell *{box-sizing:border-box;}
.lrp-shell h1,.lrp-shell h2,.lrp-shell h3{margin:0;color:var(--lrp-ink);font-family:inherit;}
.lrp-shell p{margin:0;}
.lrp-shell a{color:var(--lrp-primary);}
.lrp-shell button{font-family:inherit;}
.lrp-shell input,.lrp-shell select,.lrp-shell textarea{font-family:inherit;}
.lrp-shell :focus-visible{outline:2px solid var(--lrp-primary);outline-offset:2px;}
.lrp-shell svg{display:block;}

/* ---------- Fecha (badge junto al título del paso) ---------- */
.lrp-badge{
  display:inline-flex;align-items:center;gap:.4rem;
  background:var(--lrp-primary-soft);color:var(--lrp-primary-ink);
  border-radius:999px;padding:.42rem .8rem;font-size:.76rem;font-weight:600;
  white-space:nowrap;
}

/* ---------- Card / panel ---------- */
.lrp-panel{
  background:var(--lrp-surface);border:1px solid var(--lrp-line);border-radius:16px;
  padding:1.6rem;box-shadow:var(--lrp-shadow);
}
.lrp-panel-head{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:.4rem;flex-wrap:wrap;}
.lrp-panel-head-main{flex:1;min-width:60%;}
.lrp-panel-date{flex-shrink:0;margin-left:auto;align-self:flex-start;}
@media (max-width:560px){
  .lrp-panel-head-main{min-width:100%;order:2;}
  .lrp-panel-date{order:1;margin-left:0;}
}
.lrp-panel-icon{
  width:46px;height:46px;border-radius:12px;background:var(--lrp-primary-soft);color:var(--lrp-primary);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.lrp-panel-title-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;}
.lrp-panel h2{font-size:1.18rem;font-weight:700;}
.lrp-pill{
  background:var(--lrp-surface-2);border:1px solid var(--lrp-line);color:var(--lrp-ink-soft);
  font-size:.7rem;font-weight:700;letter-spacing:.02em;border-radius:999px;padding:.22rem .6rem;white-space:nowrap;
}
.lrp-panel-sub{color:var(--lrp-ink-soft);font-size:.9rem;margin-top:.2rem;}

.lrp-info-bar{
  display:flex;gap:.6rem;align-items:flex-start;background:var(--lrp-primary-soft);color:var(--lrp-primary-ink);
  border-radius:10px;padding:.7rem .9rem;font-size:.83rem;margin:1.1rem 0;
}
.lrp-info-bar svg{flex-shrink:0;margin-top:1px;color:var(--lrp-primary);}

/* ---------- option cards ---------- */
.lrp-opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin:1.1rem 0;}
@media (max-width:560px){.lrp-opt-grid{grid-template-columns:1fr;}}
.lrp-opt-card{
  position:relative;text-align:left;border:1.5px solid var(--lrp-line);border-radius:14px;
  background:var(--lrp-surface);padding:1.1rem 1.1rem 1.2rem;cursor:pointer;
  display:flex;flex-direction:column;gap:.6rem;transition:border-color .15s,background .15s;
  width:100%;font:inherit;color:var(--lrp-ink);
}
/* Hover/focus match the selected look — a light tint, never the theme's solid fill. */
.lrp-opt-card:hover,
.lrp-opt-card:focus,
.lrp-opt-card:focus-visible,
.lrp-opt-card:active{
  border-color:var(--lrp-primary);
  background:var(--lrp-primary-soft) !important;
  color:var(--lrp-ink) !important;
  box-shadow:none;
}
.lrp-opt-card.is-selected{border-color:var(--lrp-primary);background:var(--lrp-primary-soft) !important;}
.lrp-opt-card .lrp-opt-icon{
  width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--lrp-surface-2);color:var(--lrp-ink-soft);
}
.lrp-opt-card.lrp-accent-b .lrp-opt-icon{background:var(--lrp-accent-soft);color:var(--lrp-accent);}
.lrp-opt-card.is-selected .lrp-opt-icon{background:var(--lrp-primary);color:#fff;}
.lrp-opt-card .lrp-opt-title{font-weight:700;font-size:1.02rem;color:var(--lrp-ink);}
.lrp-opt-card .lrp-opt-title em{color:var(--lrp-primary);font-style:normal;}
.lrp-opt-card.lrp-accent-b .lrp-opt-title em{color:var(--lrp-accent);}
.lrp-opt-card .lrp-opt-desc{color:var(--lrp-ink-soft);font-size:.84rem;}
.lrp-opt-check{
  position:absolute;top:1rem;right:1rem;width:22px;height:22px;border-radius:50%;
  border:2px solid var(--lrp-line-strong);background:var(--lrp-surface);
}
.lrp-opt-card.is-selected .lrp-opt-check{border-color:var(--lrp-primary);background:var(--lrp-primary);}
.lrp-opt-card.is-selected .lrp-opt-check::after{
  content:"";display:block;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;
  transform:rotate(45deg);margin:2px auto 0;
}

.lrp-skip-link{
  display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;
  color:var(--lrp-ink-faint);font-size:.8rem;font-weight:600;cursor:pointer;padding:.3rem 0;margin-top:.2rem;
}
.lrp-skip-link svg{width:14px;height:14px;}
.lrp-skip-link:hover,
.lrp-skip-link:focus{color:var(--lrp-primary);background:none !important;text-decoration:underline;box-shadow:none;}

/* ---------- form fields ---------- */
.lrp-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1rem;}
.lrp-field-grid.lrp-cols-3{grid-template-columns:1fr 1fr 1fr;}
.lrp-field-grid.lrp-cols-doc-name{grid-template-columns:.7fr .8fr 1.25fr 1.25fr;}
.lrp-field-grid.lrp-full{grid-template-columns:1fr;}
@media (max-width:782px){.lrp-field-grid.lrp-cols-doc-name{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.lrp-field-grid,.lrp-field-grid.lrp-cols-3,.lrp-field-grid.lrp-cols-doc-name{grid-template-columns:1fr;}}
.lrp-field{display:flex;flex-direction:column;gap:.35rem;}
.lrp-field.lrp-span-2{grid-column:span 2;}
@media (max-width:560px){.lrp-field.lrp-span-2{grid-column:span 1;}}
.lrp-field label{font-size:.78rem;font-weight:600;color:var(--lrp-ink-soft);display:flex;align-items:center;gap:.3rem;}
.lrp-req{color:var(--lrp-danger);}
.lrp-help-dot{
  width:15px;height:15px;border-radius:50%;border:1.4px solid var(--lrp-ink-faint);color:var(--lrp-ink-faint);
  font-size:.62rem;display:inline-flex;align-items:center;justify-content:center;cursor:help;font-weight:700;
  position:relative;
}
.lrp-help-dot .lrp-tip{
  display:none;position:absolute;bottom:135%;left:50%;transform:translateX(-50%);
  width:240px;background:var(--lrp-ink);color:#fff;font-weight:400;font-size:.74rem;
  padding:.6rem .7rem;border-radius:8px;line-height:1.4;z-index:5;box-shadow:var(--lrp-shadow);
}
.lrp-help-dot:hover .lrp-tip,.lrp-help-dot:focus .lrp-tip{display:block;}
.lrp-field input[type=text],
.lrp-field input[type=tel],
.lrp-field input[type=email],
.lrp-field input[type=number],
.lrp-field input[type=date],
.lrp-field select,
.lrp-field textarea{
  border:1.5px solid var(--lrp-line);border-radius:var(--lrp-radius-input);padding:.6rem .75rem;font-size:.9rem;
  background:var(--lrp-surface);color:var(--lrp-ink);width:100%;max-width:100%;
}
.lrp-field select{
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235b6472' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .7rem center;padding-right:2rem;
}
.lrp-field select:disabled,.lrp-field input:disabled{background-color:var(--lrp-surface-2);color:var(--lrp-ink-faint);cursor:not-allowed;}
.lrp-field textarea{resize:vertical;min-height:96px;}
.lrp-field input.lrp-invalid,.lrp-field select.lrp-invalid,.lrp-field textarea.lrp-invalid{border-color:var(--lrp-danger);}
.lrp-field .lrp-err{font-size:.72rem;color:var(--lrp-danger);display:none;}
.lrp-field.lrp-has-error .lrp-err{display:block;}
.lrp-field .lrp-note{font-size:.72rem;color:var(--lrp-ink-faint);}
.lrp-char-count{align-self:flex-end;font-size:.7rem;color:var(--lrp-ink-faint);}

/* ---------- toggle ---------- */
.lrp-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 .2rem;cursor:pointer;}
.lrp-toggle-label{font-size:.86rem;font-weight:600;color:var(--lrp-ink);}
.lrp-switch{position:relative;width:42px;height:24px;flex-shrink:0;}
.lrp-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;}
.lrp-switch .lrp-track{position:absolute;inset:0;background:var(--lrp-line-strong);border-radius:999px;transition:background .15s;}
.lrp-switch .lrp-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .15s;}
.lrp-switch input:checked + .lrp-track{background:var(--lrp-primary);}
.lrp-switch input:checked + .lrp-track + .lrp-knob{transform:translateX(18px);}

.lrp-subblock{
  margin-top:1.1rem;padding:1rem 1.1rem;background:var(--lrp-surface-2);border:1px solid var(--lrp-line);border-radius:12px;
}
.lrp-subblock-head{display:flex;align-items:center;gap:.5rem;color:var(--lrp-primary);font-weight:700;font-size:.9rem;margin-bottom:.15rem;}
.lrp-subblock p{margin:0 0 .2rem;font-size:.78rem;color:var(--lrp-ink-soft);}

.lrp-radio-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem;}
.lrp-radio-row{display:flex;align-items:center;gap:.6rem;font-size:.86rem;cursor:pointer;color:var(--lrp-ink);}
.lrp-radio-row input{width:16px;height:16px;accent-color:var(--lrp-primary);}
.lrp-field-legend{font-size:.86rem;font-weight:700;color:var(--lrp-ink);}

/* ---------- locked box ---------- */
.lrp-locked-box{
  display:flex;gap:.5rem;align-items:flex-start;
  background:var(--lrp-surface-2);border:1px dashed var(--lrp-line-strong);border-radius:10px;
  padding:.8rem .9rem;font-size:.82rem;color:var(--lrp-ink-faint);font-style:italic;
}

/* ---------- accordion (revisión) ---------- */
.lrp-acc-item{border:1px solid var(--lrp-line);border-radius:12px;margin-top:.7rem;overflow:hidden;}
.lrp-acc-head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem;
  background:var(--lrp-surface-2);border:none;padding:.85rem 1rem;font-weight:700;font-size:.9rem;color:var(--lrp-ink);
  cursor:pointer;text-align:left;
}
.lrp-acc-head:hover,
.lrp-acc-head:focus{background:var(--lrp-surface-2) !important;color:var(--lrp-ink) !important;box-shadow:none;}
.lrp-acc-head svg{transition:transform .15s;color:var(--lrp-ink-faint);flex-shrink:0;}
.lrp-acc-item.is-open .lrp-acc-head svg{transform:rotate(180deg);}
.lrp-acc-body{display:none;padding:.9rem 1.1rem 1.1rem;font-size:.85rem;color:var(--lrp-ink-soft);}
.lrp-acc-item.is-open .lrp-acc-body{display:block;}
.lrp-kv{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;border-bottom:1px dashed var(--lrp-line);font-size:.84rem;}
.lrp-kv:last-child{border-bottom:none;}
.lrp-kv .lrp-k{color:var(--lrp-ink-faint);}
.lrp-kv .lrp-v{color:var(--lrp-ink);font-weight:600;text-align:right;}
.lrp-acc-edit{font-size:.76rem;font-weight:700;color:var(--lrp-primary);background:none;border:none;cursor:pointer;padding:0;margin-top:.5rem;}
.lrp-acc-edit:hover,
.lrp-acc-edit:focus{background:none !important;color:var(--lrp-primary) !important;text-decoration:underline;box-shadow:none;}

/* ---------- anti-spam ---------- */
.lrp-hp{position:absolute !important;left:-9999px !important;top:auto;width:1px;height:1px;overflow:hidden;}
.lrp-antispam{margin-top:1.2rem;}
.lrp-antispam[hidden]{display:none;}
.lrp-turnstile-error{color:var(--lrp-danger);font-size:.8rem;font-weight:600;margin-top:8px;}
.lrp-turnstile-error[hidden]{display:none;}

/* ---------- footer nav ---------- */
.lrp-panel-actions{display:flex;justify-content:space-between;gap:.8rem;margin-top:1.4rem;}
.lrp-btn{
  display:inline-flex;align-items:center;gap:.5rem;border-radius:var(--lrp-radius-btn);padding:.65rem 1.15rem;
  font-size:.88rem;font-weight:700;cursor:pointer;border:1.5px solid transparent;
  transition:background .15s,border-color .15s;text-decoration:none;
}
/* !important beats the theme's generic a{} / button:hover{} colour rules */
.lrp-btn-ghost,
.lrp-btn-ghost:hover,
.lrp-btn-ghost:focus{background:var(--lrp-surface);border-color:var(--lrp-line-strong);color:var(--lrp-ink-soft) !important;text-decoration:none;}
.lrp-btn-ghost:hover{background:var(--lrp-surface-2);}
.lrp-btn-primary,
.lrp-btn-primary:hover,
.lrp-btn-primary:focus,
.lrp-btn-primary:visited{background:var(--lrp-primary);color:#fff !important;text-decoration:none;}
.lrp-btn-primary:hover{background:var(--lrp-primary-hover);}
.lrp-btn-primary:disabled{background:var(--lrp-line-strong);cursor:not-allowed;}
.lrp-btn svg{flex-shrink:0;}

/* ---------- success screen ---------- */
.lrp-success{text-align:center;padding:1rem 0 .4rem;}
.lrp-success-icon{
  width:64px;height:64px;border-radius:50%;background:var(--lrp-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;margin:0 auto .9rem;
}
.lrp-success h2{font-size:1.3rem;margin-bottom:.4rem;}
.lrp-success p{color:var(--lrp-ink-soft);font-size:.9rem;max-width:46ch;margin:0 auto;}
.lrp-code-box{
  border:1.5px solid var(--lrp-line-strong);border-radius:12px;padding:.9rem;margin:1.2rem auto;max-width:300px;
  background:var(--lrp-surface-2);
}
.lrp-code-label{font-size:.72rem;color:var(--lrp-ink-faint);text-transform:uppercase;letter-spacing:.06em;}
.lrp-code-val{font-size:1.3rem;font-weight:800;color:var(--lrp-primary);letter-spacing:.03em;margin-top:.15rem;}
.lrp-success-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1.4rem 0;}
@media (max-width:560px){.lrp-success-grid{grid-template-columns:1fr;}}
.lrp-success-card{background:var(--lrp-surface-2);border:1px solid var(--lrp-line);border-radius:12px;padding:.9rem;text-align:left;}
.lrp-success-card svg{color:var(--lrp-primary);margin-bottom:.4rem;}
.lrp-success-card b{display:block;font-size:.84rem;margin-bottom:.15rem;color:var(--lrp-ink);}
.lrp-success-card span{font-size:.76rem;color:var(--lrp-ink-soft);}
.lrp-success .lrp-btn-primary{margin-top:.4rem;}


/* Neutralise a common WooCommerce rule that shrinks number inputs */
.lrp-shell input[type="number"]{max-width:100% !important;width:100% !important;}
