/* =========================================================
   INMOBILIARIA J&G — ESTILOS DEL LOGIN Y DEL PANEL
   (usa las variables de css/styles.css)
   ========================================================= */

/* ---------- Login ---------- */
.acceso { position: relative; min-height: 100vh; min-height: 100svh; display: flex; align-items: center; padding: 170px 0 90px; overflow: hidden; }
.acceso__fondo { position: absolute; inset: 0; background-size: cover; background-position: center; animation: acercar 20s ease-in-out infinite alternate; }
@keyframes acercar { to { transform: scale(1.1); } }
.acceso__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 460px; gap: 60px; align-items: center; }
.acceso__texto { color: #fff; text-shadow: 0 2px 8px rgba(0,0,0,.55), 0 4px 30px rgba(0,0,0,.45); }
.acceso__texto h1 { color: #fff; font-family: var(--fuente-titulo); font-size: clamp(2.2rem, 4.5vw, 3.8rem); margin: 10px 0 26px; }
.acceso__texto .hero__kicker { color: #fff; }
.acceso__lista { display: grid; gap: 14px; font-size: 1.08rem; font-weight: 500; }
.acceso__lista li { display: flex; gap: 14px; align-items: center; }
.acceso__lista i { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: var(--dorado); color: var(--verde-900); text-shadow: none; flex-shrink: 0; }
.acceso__caja { background: #fff; border-radius: 28px; padding: 40px 36px; box-shadow: 0 40px 90px rgba(0,0,0,.35); position: relative; }
.acceso__caja::before { content: ''; position: absolute; left: 30px; right: 30px; top: 0; height: 5px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--verde), var(--dorado)); }
.acceso__logo { width: 90px; margin: 0 auto 16px; }
.acceso__caja h2 { text-align: center; font-size: 1.7rem; }
.acceso__sub { text-align: center; color: var(--gris); font-size: .92rem; margin: 4px 0 24px; }
.acceso__error { display: none; gap: 10px; align-items: flex-start; padding: 12px 16px; border-radius: 12px; background: #fdecec; color: #b42318; font-size: .88rem; margin-bottom: 16px; }
.acceso__error.visible { display: flex; animation: aparecer .4s var(--rebote); }
.acceso__error i { margin-top: 3px; }
.acceso__sin-cuenta { display: flex; gap: 12px; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--borde); font-size: .86rem; }
.acceso__sin-cuenta > i { color: var(--verde); font-size: 1.1rem; margin-top: 3px; }
.acceso__sin-cuenta a { color: var(--verde); font-weight: 600; text-decoration: underline; }

.campo--icono input { padding-right: 50px; }
.campo__icono { position: absolute; right: 18px; top: 50%; transform: translateY(-50%); color: var(--gris); pointer-events: none; }
.campo__ojo { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border-radius: 10px; color: var(--gris); transition: .3s; }
.campo__ojo:hover { background: var(--verde-50); color: var(--verde); }

/* ---------- Estructura del panel ---------- */
.panel-hero { min-height: 330px; padding-bottom: 100px; }
.panel { display: grid; grid-template-columns: 280px 1fr; gap: 34px; align-items: start; }
.panel__lado { position: sticky; top: 100px; background: #fff; border-radius: 24px; padding: 22px; box-shadow: var(--sombra-md); border: 1px solid var(--borde); }
.panel__usuario { display: flex; gap: 14px; align-items: center; padding-bottom: 18px; margin-bottom: 14px; border-bottom: 1px solid var(--borde); }
.panel__usuario strong { display: block; color: var(--tinta); line-height: 1.3; }
.panel__avatar { width: 52px; height: 52px; flex-shrink: 0; border-radius: 16px; display: grid; place-items: center; overflow: hidden; font-size: 1.3rem; font-weight: 700; color: #fff; background: linear-gradient(135deg, var(--verde), var(--verde-osc)); }
.panel__avatar img { width: 100%; height: 100%; object-fit: cover; }
.panel__avatar--admin { background: linear-gradient(135deg, var(--dorado), var(--dorado-osc)); color: var(--verde-900); }
.rol { display: inline-flex; gap: 6px; align-items: center; font-size: .74rem; font-weight: 600; padding: 2px 10px; border-radius: 20px; background: var(--verde-claro); color: var(--verde-osc); }
.rol--admin { background: #fff5d6; color: #8a6500; }
.panel__nav { display: grid; gap: 4px; }
.panel__nav a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; font-weight: 500; font-size: .93rem; transition: background .3s, color .3s, transform .3s; }
.panel__nav a i { width: 20px; text-align: center; color: var(--verde); }
.panel__nav a:hover { background: var(--verde-50); transform: translateX(4px); }
.panel__nav a.activo { background: var(--verde); color: #fff; box-shadow: 0 8px 18px rgba(31,157,58,.28); }
.panel__nav a.activo i { color: var(--dorado); }
.panel__badge { margin-left: auto; min-width: 22px; height: 22px; padding: 0 7px; border-radius: 20px; background: var(--rojo); color: #fff; font-size: .72rem; font-weight: 700; display: none; place-items: center; }
.panel__badge.visible { display: grid; animation: latir 1.5s ease-in-out infinite; }
.panel__salir { width: 100%; margin-top: 14px; padding: 12px; border-radius: 12px; color: var(--rojo); font-weight: 600; display: flex; gap: 10px; justify-content: center; align-items: center; border: 1.5px solid #f6d1d2; transition: .3s; }
.panel__salir:hover { background: var(--rojo); color: #fff; border-color: var(--rojo); }
.panel__contenido { min-width: 0; }
.panel__contenido.entrando { animation: entrar .5s var(--curva) both; }
.panel__cargando { padding: 60px; text-align: center; color: var(--gris); font-size: 1.05rem; }
.panel__cargando i { color: var(--verde); margin-right: 8px; }

/* ---------- Elementos del panel ---------- */
.p-cabecera { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 26px; }
.p-titulo { display: flex; gap: 12px; align-items: center; font-size: 1.6rem; margin-bottom: 4px; }
.p-titulo i { color: var(--verde); }
.p-cabecera p { color: var(--gris); display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.p-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 22px; }
.p-stat { --c: var(--verde-osc); --bg: var(--verde-50); display: grid; gap: 2px; padding: 22px; border-radius: 20px; background: #fff; border: 1px solid var(--borde); box-shadow: var(--sombra); transition: transform .4s var(--curva), box-shadow .4s, opacity .9s var(--curva); }
.p-stat.visto:hover { transform: translateY(-5px); box-shadow: var(--sombra-md); }
.p-stat i { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: var(--bg); color: var(--c); margin-bottom: 8px; }
.p-stat strong { font-size: 2rem; color: var(--tinta); line-height: 1.1; }
.p-stat span { font-size: .86rem; color: var(--gris); }
.p-stat--aprobado { --c: var(--verde); --bg: var(--verde-claro); }
.p-stat--pendiente { --c: #b7791f; --bg: #fff5d6; }
.p-stat--rechazado { --c: var(--rojo); --bg: #fdecec; }
.p-alerta { display: flex; align-items: center; gap: 16px; padding: 18px 22px; border-radius: 18px; background: linear-gradient(120deg, #fff5d6, #fffaf0); border: 1.5px solid var(--dorado); margin-bottom: 22px; transition: transform .3s; }
.p-alerta:hover { transform: translateX(6px); }
.p-alerta > i:first-child { font-size: 1.5rem; color: var(--dorado-osc); animation: latir 1.4s infinite; }
.p-alerta b { display: block; color: var(--tinta); }
.p-alerta span { font-size: .86rem; }
.p-alerta > i:last-child { margin-left: auto; color: var(--dorado-osc); }
.p-seccion { background: #fff; border: 1px solid var(--borde); border-radius: 22px; padding: 28px; margin-bottom: 20px; box-shadow: var(--sombra); }
.p-seccion h3 { display: flex; gap: 10px; align-items: center; font-size: 1.12rem; margin-bottom: 18px; }
.p-seccion h3 i { color: var(--verde); }
.p-seccion--admin { border: 1.5px dashed var(--dorado); background: #fffdf5; }
.p-seccion--admin h3 i { color: var(--dorado-osc); }
.p-pasos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.p-pasos div { padding: 18px; border-radius: 16px; background: var(--verde-50); }
.p-pasos span { width: 32px; height: 32px; border-radius: 50%; display: inline-grid; place-items: center; background: var(--verde); color: #fff; font-weight: 700; margin-bottom: 8px; }
.p-pasos b { display: block; color: var(--tinta); }
.p-pasos p { font-size: .86rem; }
.p-grid { display: grid; gap: 16px; margin-bottom: 16px; }
.p-grid--2 { grid-template-columns: 1fr 1fr; }
.p-grid--4 { grid-template-columns: repeat(4, 1fr); }
.p-form .campo { margin-bottom: 0; }
.p-form > .p-seccion > .campo { margin-bottom: 16px; }
.p-ayuda { font-size: .82rem; color: var(--gris); margin-top: 6px; }
.p-ayuda i { color: var(--dorado-osc); }
.cuenta__foto { display: flex; align-items: center; gap: 18px; margin-bottom: 22px; }
.cuenta__foto .vend__avatar { margin: 0; flex-shrink: 0; }
.cuenta__foto .p-ayuda { max-width: 320px; }
#precioAyuda { color: var(--verde); font-weight: 600; margin-top: -6px; }
.radios--bloque { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.radios--bloque .radio span { width: 100%; justify-content: center; height: 100%; min-height: 54px; border-radius: 14px; }
.p-amen { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 2px 10px; margin-top: 6px; }
.check--grande { align-self: center; font-weight: 500; }
.campo.error + label, .dropzone.error { border-color: var(--rojo) !important; }

/* Fotos */
.dropzone { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 34px 20px; border: 2px dashed var(--verde); border-radius: 20px; background: var(--verde-50); text-align: center; cursor: pointer; transition: background .3s, transform .3s, border-color .3s; }
.dropzone i { font-size: 2.4rem; color: var(--verde); transition: transform .4s var(--rebote); }
.dropzone b { color: var(--tinta); }
.dropzone span { font-size: .82rem; color: var(--gris); }
.dropzone:hover, .dropzone.encima { background: var(--verde-claro); transform: scale(1.01); }
.dropzone:hover i, .dropzone.encima i { transform: translateY(-6px) scale(1.1); }
.dropzone.error { background: #fdecec; }
.fotos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; margin-top: 16px; }
.foto-item { position: relative; border-radius: 16px; overflow: hidden; aspect-ratio: 4 / 3; box-shadow: var(--sombra); animation: aparecer .4s var(--rebote); }
.foto-item img { width: 100%; height: 100%; object-fit: cover; }
.foto-item--portada { outline: 3px solid var(--dorado); outline-offset: 2px; }
.foto-item__portada { position: absolute; top: 8px; left: 8px; background: var(--dorado); color: var(--verde-900); font-size: .7rem; font-weight: 700; padding: 3px 9px; border-radius: 20px; }
.foto-item__acciones { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: center; gap: 6px; padding: 8px; background: linear-gradient(0deg, rgba(0,0,0,.65), transparent); }
.foto-item__acciones button { width: 32px; height: 32px; border-radius: 50%; background: #fff; color: var(--tinta); font-size: .8rem; transition: .3s; }
.foto-item__acciones button:hover:not([disabled]) { background: var(--verde); color: #fff; }
.foto-item__acciones button.rojo:hover { background: var(--rojo); }
.foto-item__acciones button[disabled] { opacity: .35; cursor: default; }
.p-enviar { position: sticky; bottom: 16px; z-index: 5; display: flex; justify-content: flex-end; align-items: center; gap: 16px; padding: 16px 20px; border-radius: 20px; background: rgba(255,255,255,.95); backdrop-filter: blur(8px); box-shadow: var(--sombra-md); border: 1px solid var(--borde); }
.p-progreso { flex: 1; height: 6px; border-radius: 6px; background: var(--verde-50); overflow: hidden; opacity: 0; transition: opacity .3s; }
.p-progreso.activo { opacity: 1; }
.p-progreso span { display: block; height: 100%; width: 40%; background: linear-gradient(90deg, var(--verde), var(--dorado)); animation: cargar 1.1s ease-in-out infinite; }

/* Lista de inmuebles */
.p-lista { display: grid; gap: 14px; }
.p-item { display: grid; grid-template-columns: 170px 1fr auto; gap: 20px; align-items: center; padding: 14px; background: #fff; border: 1px solid var(--borde); border-radius: 20px; box-shadow: var(--sombra); transition: box-shadow .4s, transform .4s var(--curva), opacity .9s var(--curva); }
.p-item.visto:hover { box-shadow: var(--sombra-md); transform: translateY(-3px); }
.p-item__foto { position: relative; aspect-ratio: 4 / 3; border-radius: 14px; overflow: hidden; }
.p-item__foto img { width: 100%; height: 100%; object-fit: cover; }
.p-item__foto span { position: absolute; bottom: 6px; right: 6px; background: rgba(0,0,0,.6); color: #fff; font-size: .72rem; padding: 2px 8px; border-radius: 10px; }
.p-item__meta { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-bottom: 6px; }
.p-item__cod { font-size: .75rem; color: var(--gris); font-weight: 600; }
.p-item__dest { font-size: .72rem; font-weight: 600; color: #8a6500; background: #fff5d6; padding: 2px 8px; border-radius: 20px; }
.p-item h3 { font-size: 1.05rem; margin-bottom: 2px; }
.p-item p { font-size: .84rem; color: var(--gris); }
.p-item p i { color: var(--verde); }
.p-item strong { display: block; color: var(--verde-osc); margin: 4px 0 2px; }
.p-item small { font-size: .78rem; color: var(--gris); }
.p-item__nota { margin-top: 8px; padding: 8px 12px; border-radius: 10px; background: #fdecec; color: #b42318; font-size: .84rem; }
.p-item__acciones { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.p-icono { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--verde-50); color: var(--verde-osc); transition: .3s; }
.p-icono:hover { background: var(--verde); color: #fff; transform: translateY(-2px); }
.p-icono--rojo { background: #fdecec; color: var(--rojo); }
.p-icono--rojo:hover { background: var(--rojo); color: #fff; }
.estado { display: inline-flex; gap: 6px; align-items: center; font-size: .74rem; font-weight: 600; padding: 3px 10px; border-radius: 20px; }
.estado--pendiente { background: #fff5d6; color: #8a6500; }
.estado--aprobado { background: var(--verde-claro); color: var(--verde-600); }
.estado--rechazado { background: #fdecec; color: #b42318; }
.tabs--izq { justify-content: flex-start; margin-bottom: 22px; }
.tabs a { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 50px; font-weight: 500; font-size: .9rem; background: #fff; border: 1.5px solid var(--borde); transition: all .35s var(--curva); }
.tabs a:hover { border-color: var(--verde); color: var(--verde); }
.tabs a.activo { background: var(--verde); border-color: var(--verde); color: #fff; box-shadow: 0 10px 24px rgba(31,157,58,.3); }

/* Usuarios */
.u-item { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; padding: 16px 18px; background: #fff; border: 1px solid var(--borde); border-radius: 18px; box-shadow: var(--sombra); transition: opacity .9s var(--curva), transform .9s var(--curva); }
.u-item--inactivo { background: #fafafa; }
.u-item--inactivo .panel__avatar { filter: grayscale(1); opacity: .6; }
.u-item__info strong { display: block; color: var(--tinta); }
.u-item__info strong small { color: var(--gris); font-weight: 400; }
.u-item__info > span { display: block; font-size: .86rem; }
.u-item__info small { font-size: .78rem; color: var(--gris); }
.rojo { color: var(--rojo); }
.credenciales { margin-top: 22px; padding: 22px; border-radius: 18px; background: var(--verde-50); border: 1.5px solid var(--verde); animation: aparecer .5s var(--rebote); }
.credenciales h4 { display: flex; gap: 10px; align-items: center; color: var(--verde-600); margin-bottom: 8px; }
.credenciales p b { font-family: ui-monospace, Consolas, monospace; font-size: 1.05rem; color: var(--tinta); background: #fff; padding: 1px 8px; border-radius: 6px; }
.credenciales__botones { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
.p-datos li { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px dashed var(--borde); }
.p-datos li:last-child { border: none; }
.p-datos b { color: var(--tinta); text-align: right; word-break: break-word; }

/* Ventana de confirmación */
.modal { position: fixed; inset: 0; z-index: 3000; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.5); backdrop-filter: blur(4px); opacity: 0; visibility: hidden; transition: .3s; }
.modal.abierto { opacity: 1; visibility: visible; }
.modal__caja { width: min(440px, 100%); background: #fff; border-radius: 24px; padding: 32px; text-align: center; box-shadow: var(--sombra-lg); transform: scale(.9); transition: transform .4s var(--rebote); }
.modal.abierto .modal__caja { transform: none; }
.modal__icono { width: 70px; height: 70px; margin: 0 auto 16px; border-radius: 50%; display: grid; place-items: center; font-size: 1.7rem; background: var(--verde-claro); color: var(--verde); }
.modal__icono--peligro { background: #fdecec; color: var(--rojo); }
.modal__caja h3 { font-size: 1.25rem; margin-bottom: 8px; }
.modal__caja .campo { text-align: left; }
.modal__acciones { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 24px; }
.btn--rojo { --bg: var(--rojo); --fg: #fff; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .panel { grid-template-columns: 1fr; }
  .panel__lado { position: static; }
  .panel__nav { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
  .acceso__grid { grid-template-columns: 1fr; justify-items: center; }
  .acceso__texto { display: none; }
  .acceso__caja { width: min(460px, 100%); }
}
@media (max-width: 900px) {
  .p-stats { grid-template-columns: repeat(2, 1fr); }
  .p-grid--4 { grid-template-columns: repeat(2, 1fr); }
  .p-pasos { grid-template-columns: 1fr; }
  .p-item { grid-template-columns: 120px 1fr; }
  .p-item__acciones { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 640px) {
  .p-grid--2, .radios--bloque { grid-template-columns: 1fr; }
  .p-seccion { padding: 20px 16px; }
  .p-item { grid-template-columns: 1fr; }
  .u-item { grid-template-columns: auto 1fr; }
  .u-item .p-item__acciones { grid-column: 1 / -1; }
  .acceso { padding-top: 140px; }
  .acceso__caja { padding: 32px 22px; }
  .p-enviar { flex-direction: column; align-items: stretch; }
}

/* En el panel y el login no se muestra el botón flotante de WhatsApp */
body[data-page="panel"] .flotante--wa, body[data-page="login"] .flotante--wa { display: none; }
body[data-page="panel"] .flotante--arriba { bottom: 110px; }

/* ---------- Vista previa para revisar publicaciones ---------- */
.modal--vista { z-index: 2900; }
.vprevia { position: relative; width: min(980px, 100%); max-height: calc(100vh - 40px); display: flex; flex-direction: column; background: #fff; border-radius: 26px; overflow: hidden; box-shadow: var(--sombra-lg); transform: translateY(20px) scale(.97); transition: transform .45s var(--rebote); }
.modal.abierto .vprevia { transform: none; }
.vista__cerrar { position: absolute; top: 14px; right: 14px; z-index: 2; width: 44px; height: 44px; border-radius: 50%; background: rgba(255,255,255,.95); color: var(--tinta); box-shadow: var(--sombra); transition: .3s; }
.vista__cerrar:hover { background: var(--rojo); color: #fff; transform: rotate(90deg); }
.vista__cuerpo { display: grid; grid-template-columns: 1.1fr 1fr; overflow-y: auto; }
.vista__fotos { background: #111; display: grid; gap: 4px; align-content: start; }
.vista__fotos img { width: 100%; max-height: 520px; object-fit: contain; background: #111; }
.vista__fotos img.vista__mini { max-height: 220px; object-fit: cover; }
.vista__info { padding: 28px; }
.vista__info h3 { font-size: 1.4rem; margin: 6px 0; }
.vista__info h4 { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--gris); margin: 18px 0 6px; }
.vista__lugar { color: var(--gris); font-size: .9rem; }
.vista__lugar i { color: var(--verde); }
.vista__precio { display: block; font-size: 1.6rem; color: var(--verde); margin: 8px 0 12px; }
.vista__datos { display: flex; flex-wrap: wrap; gap: 8px; }
.vista__datos span, .vista__amen span { display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; border-radius: 20px; background: var(--verde-50); font-size: .84rem; color: var(--tinta); }
.vista__datos i { color: var(--verde); }
.vista__amen { display: flex; flex-wrap: wrap; gap: 6px; }
.vista__desc { font-size: .94rem; white-space: normal; }
.vista__autor a { color: var(--verde); font-weight: 600; }
.vista__autor > i { color: var(--dorado-osc); }
.vista__acciones { display: flex; gap: 10px; justify-content: flex-end; flex-wrap: wrap; padding: 16px 22px; border-top: 1px solid var(--borde); background: var(--verde-50); }
.p-item__foto[data-ver] { cursor: zoom-in; }
.p-alerta--rojo { background: linear-gradient(120deg, #fdecec, #fff7f7); border-color: #f3b4b6; }
.p-alerta--rojo > i:first-child, .p-alerta--rojo > i:last-child { color: var(--rojo); }
@media (max-width: 800px) {
  .vista__cuerpo { grid-template-columns: 1fr; }
  .vista__fotos img { max-height: 320px; }
  .vista__acciones .btn { flex: 1 1 100%; }
}
.vista__acciones .btn { flex: 0 0 auto; }
.modal__acciones .btn { white-space: normal; padding-left: 14px; padding-right: 14px; line-height: 1.3; }
@media (max-width: 800px) { .vista__acciones .btn { flex: 1 1 100%; } }

/* Ayuda por WhatsApp tras 3 intentos fallidos */
.acceso__ayuda { display: flex; gap: 14px; align-items: flex-start; padding: 16px 18px; margin-bottom: 18px; border-radius: 16px; background: var(--verde-50); border: 1.5px dashed var(--verde); }
.acceso__ayuda[hidden] { display: none; }
.acceso__ayuda.aparecer { animation: aparecer .5s var(--rebote); }
.acceso__ayuda > i { width: 40px; height: 40px; flex-shrink: 0; border-radius: 12px; display: grid; place-items: center; background: var(--dorado); color: var(--verde-900); }
.acceso__ayuda b { display: block; color: var(--tinta); }
.acceso__ayuda span { display: block; font-size: .86rem; margin-bottom: 10px; }
.acceso__ayuda .btn { --bg: #25d366; }

.estado--vendido { background: #fdecec; color: #b3261e; }

/* Reputación del vendedor en su resumen */
.p-rep { display: grid; grid-template-columns: auto auto 1fr; gap: 24px; align-items: center; border: 1.5px solid var(--dorado); background: linear-gradient(120deg, #fffdf5, #fff); transition: transform .3s, box-shadow .3s; }
.p-rep:hover { transform: translateY(-3px); box-shadow: var(--sombra-md); }
.p-rep__nota, .p-rep__vend { display: grid; justify-items: center; gap: 4px; padding: 0 10px; }
.p-rep__nota strong, .p-rep__vend strong { font-size: 2rem; line-height: 1; color: var(--tinta); }
.p-rep__nota small, .p-rep__vend small { color: var(--gris); font-size: .8rem; }
.p-rep__vend i { color: var(--verde); font-size: 1.3rem; }
.p-rep__texto b { display: block; color: var(--tinta); }
.p-rep__texto span { display: block; font-size: .86rem; }
.p-rep__ver { color: var(--verde); font-weight: 600; margin-top: 6px; }
@media (max-width: 800px) { .p-rep { grid-template-columns: 1fr 1fr; } .p-rep__texto { grid-column: 1 / -1; } }
