/* ==========================================================================
   Libro de Reclamaciones vía web — KIT EDUBRIDGES · estructura (NO editar por cliente).
   Todo va bajo .lr para no chocar con el CSS del sitio destino. La apariencia sale de marca.css.
   ========================================================================== */
.lr,.lr *{box-sizing:border-box}
.lr{font-family:var(--lr-f-texto);color:var(--lr-texto);line-height:1.6;font-size:1rem}
body.lr-panel{margin:0;background:var(--lr-fondo)}
.lr .contenedor{width:min(1180px,100% - 32px);margin-inline:auto}
.lr.lr-form{width:min(900px,100% - 32px);margin-inline:auto;padding-block:40px 64px}
.lr h1,.lr h2,.lr legend{font-family:var(--lr-f-titulo);color:var(--lr-oscuro);line-height:1.2}
.lr h2{font-size:1.5rem;margin:0 0 .6em}
.lr a{color:var(--lr-primario)}
.lr small{color:var(--lr-texto-suave);font-size:.85rem}
.lr code{font-size:.9em}

/* Botones */
.lr .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 1rem var(--lr-f-titulo);padding:.85em 1.6em;border-radius:var(--lr-radio-boton);border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}
.lr .btn:hover{transform:translateY(-2px);box-shadow:var(--lr-sombra)}
.lr .btn:focus-visible,.lr input:focus-visible,.lr select:focus-visible,.lr textarea:focus-visible{outline:3px solid var(--lr-acento);outline-offset:2px}
.lr .btn-primario{background:var(--lr-primario);color:#fff}.lr .btn-primario:hover{background:var(--lr-primario-hover)}
.lr .btn-linea{background:transparent;border-color:currentColor;color:var(--lr-oscuro)}
.lr .btn-s{font-size:.85rem;padding:.55em 1.1em}
.lr .acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}

/* Avisos y cajas */
.lr .aviso{background:var(--lr-suave);border-left:5px solid var(--lr-primario);border-radius:var(--lr-radio);padding:16px 20px;margin:0 0 22px}
.lr .aviso.ok{border-color:#1E8A4C;background:#E3F3E9}
.lr .aviso.error{border-color:var(--lr-peligro);background:#FBE9E7}
.lr .panel{background:#fff;border:1px solid var(--lr-linea);border-radius:calc(var(--lr-radio) + 4px);padding:clamp(20px,4vw,34px);box-shadow:var(--lr-sombra)}

/* Formulario */
.lr fieldset{border:1px solid var(--lr-linea);border-radius:var(--lr-radio);padding:20px clamp(16px,3vw,26px) 8px;margin:0 0 24px;background:#fff;min-width:0}
.lr legend{font-weight:700;font-size:1.1rem;padding:0 .5em}
.lr .campo{margin:0 0 18px;min-width:0}
.lr .campo label{display:block;font-weight:700;font-size:.92rem;color:var(--lr-oscuro);margin-bottom:6px}
.lr .campo small{display:block;margin-top:5px}.lr .campo label small{display:inline;font-weight:400}
.lr input:not([type=radio]):not([type=checkbox]),.lr select,.lr textarea{width:100%;font:inherit;color:inherit;background:#fff;border:1px solid var(--lr-linea);border-radius:10px;padding:.75em .9em}
.lr textarea{min-height:130px;resize:vertical}
.lr .fila{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:0 18px}
.lr .opciones{display:grid;gap:10px}
.lr .opciones label{display:flex;gap:10px;align-items:flex-start;font-weight:400;color:var(--lr-texto);border:1px solid var(--lr-linea);border-radius:10px;padding:.7em .9em;cursor:pointer}
.lr .opciones label:has(input:checked){border-color:var(--lr-primario);background:var(--lr-suave)}
.lr .opciones input{margin-top:.3em;accent-color:var(--lr-primario)}
.lr .req{color:var(--lr-peligro)}
.lr .notas{margin-top:34px;font-size:.92rem;color:var(--lr-texto-suave)}
.lr .g-recaptcha{max-width:100%;overflow:hidden}

/* Ficha (constancia y detalle) */
.lr table.ficha{width:100%;border-collapse:collapse;font-size:.98rem}
.lr table.ficha th,.lr table.ficha td{padding:.75em 1em;text-align:left;vertical-align:top;border-bottom:1px solid var(--lr-linea);overflow-wrap:anywhere}
.lr table.ficha th{width:38%;background:var(--lr-suave);color:var(--lr-oscuro);font-weight:700}
@media (max-width:560px){.lr table.ficha th,.lr table.ficha td{display:block;width:100%}.lr table.ficha th{border-bottom:0;padding-bottom:.2em}}

/* Panel */
.lr .panel-cab{background:var(--lr-oscuro);color:#fff}
.lr .panel-cab .contenedor{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap;padding-block:10px}
.lr .panel-cab .marca{color:#fff;text-decoration:none;font:800 1.2rem var(--lr-f-titulo)}.lr .panel-cab .marca img{width:170px;display:block}
.lr .panel-cab b{font-family:var(--lr-f-titulo);font-size:clamp(.92rem,2.6vw,1.1rem);line-height:1.25}
.lr .panel-cab .btn-linea{color:#fff}
.lr .caja-login{max-width:440px;margin:8vh auto}
.lr .estado{display:inline-block;font:700 .72rem var(--lr-f-titulo);letter-spacing:.06em;text-transform:uppercase;padding:.35em .8em;border-radius:999px;white-space:nowrap}
.lr .e-ok{background:#DDF1E4;color:#14532D}.lr .e-pend{background:#FCE7B8;color:#5a3b00}.lr .e-urg{background:#F6D3CF;color:#7a1710}.lr .e-venc{background:var(--lr-peligro);color:#fff}
.lr table.hojas{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--lr-radio);overflow:hidden;box-shadow:var(--lr-sombra);font-size:.95rem}
.lr table.hojas th,.lr table.hojas td{padding:.8em 1em;text-align:left;border-bottom:1px solid var(--lr-linea);vertical-align:middle}
.lr table.hojas th{background:var(--lr-oscuro);color:#fff;font-family:var(--lr-f-titulo);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.lr table.hojas tbody tr:hover{background:var(--lr-suave)}
.lr .resumen{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:24px}
.lr .resumen div{background:#fff;border-radius:var(--lr-radio);padding:16px 18px;border-left:5px solid var(--lr-acento);box-shadow:var(--lr-sombra)}
.lr .resumen b{display:block;font:800 2rem/1 var(--lr-f-titulo);color:var(--lr-primario)}
.lr .pestanas{display:flex;flex-wrap:wrap;gap:8px}
.lr .pestanas button{font:700 .85rem var(--lr-f-titulo);padding:.5em 1.1em;border-radius:999px;border:1px solid var(--lr-linea);background:#fff;color:var(--lr-oscuro);cursor:pointer}
.lr .pestanas button[aria-selected=true]{background:var(--lr-oscuro);border-color:var(--lr-oscuro);color:#fff}
.lr code.hash{display:block;word-break:break-all;background:#111;color:#9f9;padding:12px;border-radius:8px;font-size:.85rem;user-select:all}
@media (max-width:760px){.lr table.hojas thead{display:none}.lr table.hojas tr{display:block;padding:10px 0}.lr table.hojas td{display:block;border:0;padding:.25em 1em}}

/* Créditos (fondo propio, separado de lo institucional) */
.lr .cred-panel,.lr-creditos{margin-top:40px;padding:12px 16px;background:#0B0F0C;color:#8D968F;font:400 .8rem var(--lr-f-texto,system-ui,sans-serif);text-align:center;letter-spacing:.02em}
.lr .cred-panel a,.lr-creditos a{color:#fff;font-weight:700;letter-spacing:.04em;text-decoration:none}
.lr .cred-panel a:hover,.lr-creditos a:hover{color:var(--lr-acento,#F2A516)}
.lr .solo-imp,.lr .cred-impresion{display:none}

/* Impresión: solo la hoja, con encabezado del proveedor y créditos */
@media print{
  body{background:#fff!important}
  .lr .panel-cab,.lr .no-imp,.lr .no-imprimir,.lr .aviso,.lr-creditos{display:none!important}
  .lr .solo-imp{display:block;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #bbb;font-size:10pt}
  .lr .panel{box-shadow:none;border:0;padding:0}
  .lr .cred-impresion{display:block;margin-top:24px;padding-top:10px;border-top:1px solid #bbb;font-size:9pt;color:#444;text-align:center}
  .lr .cred-impresion a{color:#000;font-weight:700;text-decoration:none}
  .lr .cred-panel{background:none;color:#444;border-top:1px solid #bbb;margin-top:24px}
  .lr .cred-panel a{color:#000}.lr .cred-panel a::after{content:" — https://edubridges.com";font-weight:400;letter-spacing:0}
}
@media print{.lr-ocultar-imp{display:none!important}}

/* ---------- v1.1: iconos, botones con sombra, secciones numeradas, proveedor ---------- */
.lr .lr-ico{width:1.2em;height:1.2em;flex:none;vertical-align:-.22em}
.lr .btn{box-shadow:0 8px 18px -12px rgba(0,0,0,.55)}
.lr .btn:hover{transform:translateY(-2px);box-shadow:0 16px 26px -14px rgba(0,0,0,.6)}
.lr .btn:active{transform:translateY(0);box-shadow:0 4px 10px -8px rgba(0,0,0,.6)}
.lr .btn-primario{box-shadow:0 10px 22px -12px var(--lr-primario)}
.lr .btn-primario:hover{box-shadow:0 18px 30px -14px var(--lr-primario)}
.lr .btn-linea:hover{background:var(--lr-oscuro);border-color:var(--lr-oscuro);color:#fff}
.lr .panel-cab .btn-linea:hover{background:#fff;border-color:#fff;color:var(--lr-oscuro)}
.lr .btn-l{font-size:1.08rem;padding:1em 2em}
.lr .pestanas button{transition:.15s;box-shadow:0 6px 14px -12px rgba(0,0,0,.5)}
.lr .pestanas button:hover{transform:translateY(-2px);border-color:var(--lr-oscuro);box-shadow:0 12px 20px -14px rgba(0,0,0,.6)}
.lr .aviso{display:flex;gap:12px;align-items:flex-start}
.lr .aviso>.lr-ico{width:1.5em;height:1.5em;margin-top:.1em;color:var(--lr-primario)}
.lr .aviso.ok>.lr-ico{color:#1E8A4C}.lr .aviso.error>.lr-ico{color:var(--lr-peligro)}
.lr .aviso>div{min-width:0;flex:1}
.lr legend{display:flex;align-items:center;gap:10px}
.lr legend .num{display:inline-grid;place-items:center;width:1.9em;height:1.9em;border-radius:50%;background:var(--lr-primario);color:#fff;font-size:.85em;flex:none}
.lr legend .lr-ico{color:var(--lr-primario)}
.lr h2 .lr-ico{color:var(--lr-primario)}
.lr .proveedor{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--lr-linea);border-left:5px solid var(--lr-acento);border-radius:var(--lr-radio);padding:16px 20px;margin:0 0 26px;box-shadow:var(--lr-sombra)}
.lr .proveedor>.lr-ico{width:2em;height:2em;color:var(--lr-primario);margin-top:.15em}
.lr .proveedor .ceja{display:block;font:700 .72rem var(--lr-f-titulo);letter-spacing:.1em;text-transform:uppercase;color:var(--lr-texto-suave)}
.lr .proveedor .fecha{display:inline-block;margin-top:6px;font-size:.9rem;color:var(--lr-texto-suave)}
.lr [hidden]{display:none!important}
.lr .resumen div{display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.lr .resumen div:hover{transform:translateY(-3px)}
.lr .resumen .lr-ico{width:1.4em;height:1.4em;color:var(--lr-texto-suave);margin-bottom:6px}
@media print{.lr .proveedor{box-shadow:none}}
.lr form .btn{margin:0 8px 8px 0}.lr .acciones .btn,.lr .panel-cab .btn{margin:0}
.lr .fila{align-items:start}.lr .campo{display:block}
