/* 🏠 Inventario (2026-10-29) — mismo estilo oscuro del CRM (azul marino #0D1B2A, dorado #C9A84C, texto #e8e4da) */
.inv-vista { padding: 18px 20px 60px; background: #0d1b2a; min-height: 100vh; color: #e8e4da; }
.inv-barra { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.inv-h1 { font-family: 'Cormorant Garamond', Georgia, serif; color: #C9A84C; font-size: 28px; margin: 0; }
.inv-acciones { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.inv-tabs { display: inline-flex; border: 1px solid #2b3f57; border-radius: 8px; overflow: hidden; }
.inv-tab { background: transparent; color: #b9c7d6; border: 0; padding: 7px 14px; cursor: pointer; font: inherit; font-size: 13px; }
.inv-tab.activa { background: #C9A84C; color: #0d1b2a; font-weight: 700; }
.inv-filtros { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 14px; }
.inv-filtros .crm-input, .inv-filtros .crm-select { min-width: 0; width: auto; max-width: 190px; }
.inv-contador { font-size: 12px; color: #7a9bbf; }
.inv-check { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: #d5dde6; cursor: pointer; }
.inv-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.inv-card { display: flex; flex-direction: column; text-align: left; background: #13243a; border: 1px solid #22364f; border-radius: 12px; overflow: hidden; padding: 0; cursor: pointer; color: inherit; font: inherit; transition: transform .12s, border-color .12s; }
.inv-card:hover { transform: translateY(-2px); border-color: #C9A84C; }
.inv-card-img { position: relative; aspect-ratio: 4 / 3; background: #0b1726; display: flex; align-items: center; justify-content: center; }
.inv-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.inv-sinfoto { color: #5d7591; font-size: 13px; }
.inv-badge { position: absolute; top: 10px; left: 10px; background: #0d1b2a; color: #C9A84C; border: 1px solid #C9A84C; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; padding: 3px 8px; border-radius: 4px; }
.inv-det-precio .inv-badge { position: static; vertical-align: middle; margin-left: 8px; }
.inv-op-renta { color: #9fe1cb; border-color: #9fe1cb; }
.inv-folio { position: absolute; bottom: 8px; right: 8px; background: rgba(13,27,42,.85); color: #e8e4da; font-size: 10.5px; padding: 2px 7px; border-radius: 4px; }
.inv-badge-estado { position: absolute; top: 10px; right: 10px; font-size: 10.5px; font-weight: 700; padding: 3px 8px; border-radius: 4px; background: #e8e4da; color: #0d1b2a; }
.inv-det-cab .inv-badge-estado { position: static; }
.inv-e-borrador { background: #F1EFE8; color: #444441; } .inv-e-publicada { background: #9FE1CB; color: #04342C; } .inv-e-apartada { background: #FAECE7; color: #712B13; }
.inv-e-vendida, .inv-e-rentada { background: #C9A84C; color: #0D1B2A; } .inv-e-retirada { background: #FCEBEB; color: #791F1F; }
.inv-card-body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 4px; }
.inv-card-titulo { font-weight: 600; font-size: 14px; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.inv-card-precio { color: #C9A84C; font-weight: 700; font-size: 17px; }
.inv-card-zona { color: #9fb3c8; font-size: 12.5px; }
.inv-card-datos { color: #d5dde6; font-size: 12.5px; }
.inv-card-pie { display: flex; justify-content: space-between; align-items: center; margin-top: 6px; font-size: 12px; }
.inv-subida { color: #9fb3c8; }
.inv-int { color: #e8a0a0; }
.inv-vacio { color: #7a9bbf; padding: 30px 0; text-align: center; grid-column: 1 / -1; }
.inv-mapa { height: 70vh; min-height: 380px; border-radius: 12px; overflow: hidden; }

.inv-modal { position: fixed; inset: 0; background: rgba(4,10,18,.72); z-index: 9000; display: flex; align-items: flex-start; justify-content: center; padding: 30px 12px; overflow-y: auto; }
.inv-modal-caja { position: relative; width: 100%; background: #13243a; color: #e8e4da; border: 1px solid #2b3f57; border-radius: 14px; padding: 22px 22px 26px; }
.inv-x { position: absolute; top: 10px; right: 12px; background: transparent; border: 0; color: #b9c7d6; font-size: 26px; cursor: pointer; line-height: 1; }
.inv-det-cab { font-size: 12px; color: #9fb3c8; display: flex; gap: 8px; align-items: center; }
.inv-folio-txt { font-weight: 700; letter-spacing: .04em; }
.inv-det-titulo { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 26px; margin: 6px 30px 6px 0; color: #fff; }
.inv-det-precio { font-size: 22px; font-weight: 700; color: #C9A84C; }
.inv-det-dir { color: #b9c7d6; font-size: 13px; margin: 4px 0; }
.inv-det-subida { margin: 6px 0 12px; font-size: 13px; }
.inv-galeria { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 8px; margin: 10px 0 14px; }
.inv-mini { padding: 0; border: 1px solid #2b3f57; border-radius: 8px; overflow: hidden; background: #0b1726; cursor: zoom-in; aspect-ratio: 4 / 3; }
.inv-mini img { width: 100%; height: 100%; object-fit: cover; display: block; }
.inv-det-botones { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 6px 0 10px; }
.inv-datos { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; margin: 10px 0; }
.inv-dato { background: #0f1e30; border: 1px solid #22364f; border-radius: 8px; padding: 8px 10px; display: flex; flex-direction: column; gap: 2px; }
.inv-dato span { font-size: 11px; color: #9fb3c8; text-transform: uppercase; letter-spacing: .04em; }
.inv-dato b { font-size: 14px; }
.inv-alerta { border-color: #D85A30; }
.inv-h3 { font-family: 'Cormorant Garamond', Georgia, serif; color: #C9A84C; font-size: 19px; margin: 16px 0 6px; }
.inv-car { columns: 2; padding-left: 18px; margin: 0; font-size: 13.5px; }
.inv-desc { font-size: 13.5px; line-height: 1.55; color: #d5dde6; }
.inv-det-mapa { height: 260px; border-radius: 10px; overflow: hidden; }
.inv-int-txt { font-size: 13px; color: #d5dde6; }
.inv-privado { margin-top: 14px; border: 1px dashed #C9A84C; border-radius: 10px; padding: 4px 12px 12px; background: rgba(201,168,76,.05); }
.inv-hist { margin-top: 10px; font-size: 12.5px; color: #b9c7d6; } .inv-hist summary { cursor: pointer; color: #C9A84C; }
.inv-faltan { background: rgba(216,90,48,.12); border: 1px solid #D85A30; color: #f3c7b5; border-radius: 8px; padding: 8px 12px; font-size: 13px; margin: 8px 0; }
.inv-ok { background: rgba(29,158,117,.12); border: 1px solid #1D9E75; color: #9FE1CB; border-radius: 8px; padding: 8px 12px; font-size: 13px; margin: 8px 0; }
.inv-aviso { background: rgba(201,168,76,.1); border: 1px solid #C9A84C; border-radius: 8px; padding: 8px 12px; font-size: 13px; }

.inv-visor { position: fixed; inset: 0; background: rgba(0,0,0,.94); z-index: 9500; display: flex; align-items: center; justify-content: center; }
.inv-visor img { max-width: 94vw; max-height: 88vh; object-fit: contain; }
.inv-visor button { position: absolute; background: rgba(13,27,42,.7); color: #fff; border: 1px solid #C9A84C; border-radius: 50%; width: 44px; height: 44px; font-size: 26px; cursor: pointer; }
.inv-visor-x { top: 14px; right: 14px; } .inv-visor-ant { left: 12px; } .inv-visor-sig { right: 12px; }
.inv-visor-n { position: absolute; bottom: 14px; color: #e8e4da; font-size: 13px; }

.inv-pasos { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-bottom: 14px; padding-right: 30px; }
.inv-paso-n { width: 24px; height: 24px; border-radius: 50%; border: 1px solid #2b3f57; display: inline-flex; align-items: center; justify-content: center; font-size: 11.5px; color: #7a9bbf; }
.inv-paso-n.ok { background: #1D9E75; border-color: #1D9E75; color: #fff; } .inv-paso-n.act { background: #C9A84C; border-color: #C9A84C; color: #0d1b2a; font-weight: 700; }
.inv-paso-t { margin-left: 8px; font-weight: 700; color: #fff; font-size: 15px; }
.inv-paso { min-height: 220px; }
.inv-fila { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin-bottom: 10px; }
.inv-campo { display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; color: #b9c7d6; margin-bottom: 8px; }
.inv-campo .crm-input, .inv-campo .crm-select { width: 100%; box-sizing: border-box; }
.inv-radios { display: flex; flex-wrap: wrap; gap: 8px; }
.inv-radio { border: 1px solid #2b3f57; border-radius: 8px; padding: 10px 14px; cursor: pointer; font-size: 14px; min-width: 110px; }
.inv-radio input { margin-right: 6px; }
.inv-radio.sel { border-color: #C9A84C; background: rgba(201,168,76,.1); }
.inv-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 8px; margin-bottom: 10px; }
.inv-a-mapa { height: 300px; border-radius: 10px; overflow: hidden; }
.inv-a-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.inv-subir { display: inline-block; cursor: pointer; }
.inv-fotos { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; margin-top: 12px; }
.inv-foto-item { position: relative; border: 1px solid #2b3f57; border-radius: 8px; overflow: hidden; background: #0b1726; cursor: grab; }
.inv-foto-item img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; pointer-events: none; }
.inv-foto-acc { display: flex; justify-content: space-between; padding: 4px; gap: 4px; }
.inv-foto-acc button { flex: 1; background: #0f1e30; color: #e8e4da; border: 1px solid #2b3f57; border-radius: 5px; padding: 6px 0; cursor: pointer; font-size: 13px; }
.inv-foto-acc button.sel { background: #C9A84C; color: #0d1b2a; }
.inv-foto-acc button:disabled { opacity: .35; cursor: default; }
.inv-rev { font-size: 14px; line-height: 1.6; margin-bottom: 8px; }
.inv-lib { display: flex; flex-direction: column; gap: 6px; margin: 8px 0; }

/* CRM: interés del prospecto y selector del cierre */
.inv-int-lista { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 0; }
.inv-int-chip { background: #0f1e30; border: 1px solid #2b3f57; border-radius: 14px; padding: 3px 4px 3px 10px; font-size: 12px; }
.inv-int-chip a { color: #C9A84C; font-weight: 700; }
.inv-int-chip button { background: transparent; border: 0; color: #b9c7d6; cursor: pointer; font-size: 14px; }
.inv-int-op { display: block; width: 100%; text-align: left; background: #0f1e30; color: #e8e4da; border: 1px solid #22364f; border-radius: 6px; padding: 7px 10px; margin-top: 4px; cursor: pointer; font-size: 12.5px; }
.inv-c-res { max-height: 180px; overflow-y: auto; }

@media (max-width: 640px) {
  .inv-vista { padding: 12px 10px 60px; }
  .inv-filtros .crm-input, .inv-filtros .crm-select { max-width: none; flex: 1 1 45%; }
  .inv-modal { padding: 0; }
  .inv-modal-caja { border-radius: 0; min-height: 100vh; padding: 18px 14px 30px; }
  .inv-car { columns: 1; }
  .inv-radio { flex: 1 1 40%; min-width: 0; }
}
