*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Poppins',sans-serif;
    background:#f5f6fa;

    display:flex;

}

.sidebar{

    width:260px;
    min-height:100vh;

    background:#111827;

    color:white;

    padding:30px;

}

.logo{

    margin-bottom:50px;

}

.logo h2{

    font-size:32px;
    color:#d4af37;

}

.logo span{

    color:#ddd;

}

.sidebar nav{

    display:flex;
    flex-direction:column;
    gap:10px;

}

.sidebar a{

    text-decoration:none;
    color:white;

    padding:14px;

    border-radius:10px;

    transition:.3s;

}

.sidebar a:hover{

    background:#1f2937;

}

.sidebar .activo{

    background:#d4af37;

    color:black;

}

.sidebar i{

    width:25px;

}

.contenido{

    flex:1;

    padding:40px;

}

.contenido h1{

    margin-bottom:30px;

}

.tarjetas{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

    margin-top:30px;

}

.card{

    background:white;

    border-radius:16px;

    padding:25px;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.card h3{

    color:#777;

    margin-bottom:15px;

}

.card strong{

    font-size:42px;

    color:#111827;

}
.vista-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}

.vista-header p{
    color:#666;
    margin-top:8px;
}

.btn-principal{
    background:#d4af37;
    color:#111;
    border:none;
    padding:14px 22px;
    border-radius:10px;
    font-weight:600;
    cursor:pointer;
}

.admin-toolbar{
    margin:30px 0;
}

.admin-toolbar input{
    width:100%;
    max-width:420px;
    padding:14px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:15px;
}

.tabla-contenedor{
    background:white;
    border-radius:16px;
    padding:20px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    overflow-x:auto;
}

.tabla-propiedades{
    width:100%;
    border-collapse:collapse;
}

.tabla-propiedades th,
.tabla-propiedades td{
    padding:16px;
    text-align:left;
    border-bottom:1px solid #eee;
}

.tabla-propiedades th{
    color:#555;
    font-size:14px;
}

.tabla-propiedades img{
    width:70px;
    height:50px;
    object-fit:cover;
    border-radius:8px;
}

.estado{
    display:inline-block;
    padding:6px 12px;
    border-radius:30px;
    font-size:13px;
    font-weight:600;
    background:#dcfce7;
    color:#166534;
}

.acciones button{
    border:none;
    background:#f3f4f6;
    padding:8px 10px;
    border-radius:8px;
    cursor:pointer;
    margin-right:6px;
}
/* ===========================
   MODAL
=========================== */

.modal{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.55);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:999;

}

.modal.activo{

    display:flex;

}

.modal-contenido{

    max-height:90vh;
    
    overflow-y:auto;
    
    background:white;

    width:900px;

    max-width:95%;

    border-radius:18px;

    padding:30px;

    box-shadow:0 20px 60px rgba(0,0,0,.25);

}

.modal-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:30px;

}

.modal-header h2{

    font-size:28px;

}

.modal-header button{

    border:none;

    background:none;

    font-size:28px;

    cursor:pointer;

}

.form-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

.form-grid input,
.form-grid select,
textarea{

    width:100%;

    padding:14px;

    border:1px solid #ddd;

    border-radius:10px;

    font-size:15px;

    font-family:inherit;

}

textarea{

    resize:vertical;

    min-height:140px;

    margin-top:20px;

}

.upload-box{

    margin-top:20px;

    border:2px dashed #d4af37;

    border-radius:12px;

    padding:35px;

    text-align:center;

    cursor:pointer;

    display:block;

}

.upload-box i{

    font-size:42px;

    color:#d4af37;

    margin-bottom:12px;

}

.upload-box input{

    display:none;

}

.modal-actions{

    display:flex;

    justify-content:flex-end;

    gap:15px;

    margin-top:30px;

}

.btn-secundario{

    border:none;

    background:#ececec;

    padding:14px 22px;

    border-radius:10px;

    cursor:pointer;

}
.form-tabs{
    display:flex;
    gap:10px;
    margin-bottom:25px;
    flex-wrap:wrap;
}

.tab{
    border:none;
    background:#f3f4f6;
    padding:10px 16px;
    border-radius:10px;
    cursor:pointer;
    font-weight:600;
}

.tab.activo{
    background:#d4af37;
    color:#111;
}

.tab-content{
    display:none;
}

.tab-content.activo{
    display:block;
}

.check-card{
    display:flex;
    align-items:center;
    gap:12px;
    padding:16px;
    border:1px solid #ddd;
    border-radius:10px;
}
/*==================================
EDITOR DE PROPIEDAD
==================================*/

.editor-layout{

    display:grid;

    grid-template-columns:260px 1fr;

    gap:30px;

    margin-top:30px;

}

.editor-tabs{

    display:flex;

    flex-direction:column;

    gap:12px;

}

.editor-tab{

    border:none;

    background:#f5f5f5;

    padding:16px;

    border-radius:12px;

    text-align:left;

    font-size:15px;

    cursor:pointer;

    transition:.25s;

}

.editor-tab:hover{

    background:#ececec;

}

.editor-tab.activo{

    background:#d4af37;

    color:#111;

    font-weight:600;

}

.editor-card{

    background:white;

    padding:35px;

    border-radius:18px;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.editor-card h2{

    margin-bottom:25px;

}

.editor-card input,
.editor-card select,
.editor-card textarea{

    width:100%;

    padding:14px;

    border:1px solid #ddd;

    border-radius:10px;

    font-size:15px;

}

.editor-card textarea{

    resize:vertical;

    min-height:160px;

}
.editor-content{
    display:none;
}

.editor-content.activo{
    display:block;
}
.campo{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.campo label{
    font-size:14px;
    font-weight:600;
    color:#444;
}
/* ===========================
   EDITOR NUEVO
=========================== */

.editor-page{
    display:flex;
    flex-direction:column;
    gap:28px;
}

.editor-topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.editor-actions{
    display:flex;
    gap:12px;
}

.editor-title h1{
    margin-bottom:8px;
}

.editor-title p{
    color:#666;
}

.editor-progress{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    border-bottom:1px solid #e5e7eb;
    padding-bottom:16px;
}

.editor-progress .editor-tab{
    background:#f3f4f6;
    border:none;
    padding:12px 18px;
    border-radius:999px;
    cursor:pointer;
    font-weight:600;
}

.editor-progress .editor-tab.activo{
    background:#d4af37;
    color:#111;
}

.editor-panel{
    background:white;
    border-radius:18px;
    padding:35px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.campo-full{
    grid-column:1/-1;
}

.upload-grande{
    padding:60px;
}

.editor-footer{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.editor-footer button:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.preview-imagenes{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
    gap:15px;
    margin-top:25px;
}

.preview-item{
    position:relative;
    border-radius:12px;
    overflow:hidden;
    border:2px solid #ddd;
    background:#fff;
}

.preview-item img{
    width:100%;
    height:120px;
    object-fit:cover;
    display:block;
}

.preview-item span{
    display:block;
    padding:10px;
    font-size:13px;
    text-align:center;
}
.preview-item.principal{
    border-color:#d4af37;
}

.btn-eliminar-img{
    position:absolute;
    top:8px;
    right:8px;
    background:#111;
    color:white;
    border:none;
    width:26px;
    height:26px;
    border-radius:50%;
    cursor:pointer;
}

.btn-principal-img{
    width:100%;
    border:none;
    background:#f3f4f6;
    padding:8px;
    cursor:pointer;
    font-weight:600;
}

.preview-item.principal .btn-principal-img{
    background:#d4af37;
    color:#111;
}
.login-body{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#111827;
}

.login-card{
    width:380px;
    background:white;
    padding:35px;
    border-radius:18px;
    box-shadow:0 20px 60px rgba(0,0,0,.35);
}

.login-card h1{
    color:#d4af37;
    margin-bottom:8px;
}

.login-card p{
    color:#666;
    margin-bottom:25px;
}

.login-card input{
    width:100%;
    padding:14px;
    margin-bottom:14px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:15px;
}

.login-error{
    color:#dc2626;
    margin-top:15px;
}
.config-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
    margin-top:30px;
}

.config-card{
    background:white;
    padding:28px;
    border-radius:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.config-card h3{
    margin-bottom:22px;
}

.config-card p{
    color:#666;
    line-height:1.6;
}
.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 18px;
    margin-top: 28px;
}

.dashboard-card {
    background: #fff;
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.dashboard-card span {
    display: block;
    color: #666;
    font-size: 14px;
    margin-bottom: 10px;
}

.dashboard-card strong {
    display: block;
    font-size: 34px;
    color: #111;
}

.dashboard-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    margin-top: 28px;
}

.dashboard-box {
    background: #fff;
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.dashboard-box h2 {
    margin-bottom: 18px;
}

.dashboard-box table {
    width: 100%;
    border-collapse: collapse;
}

.dashboard-box th,
.dashboard-box td {
    padding: 12px 8px;
    text-align: left;
    border-bottom: 1px solid #eee;
}

.dashboard-box th {
    font-size: 14px;
    color: #444;
}

@media (max-width: 900px) {
    .dashboard-columns {
        grid-template-columns: 1fr;
    }
}
#prop-descripcion {
    min-height: 360px;
    resize: vertical;
    line-height: 1.6;
    padding: 14px;
}

/* Pendientes de ubicación R18 */
.mapa-admin-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:14px}.mapa-pendientes{height:460px;padding:16px;overflow-y:auto;background:#14171c;border:1px solid #303640;border-radius:14px}.mapa-pendientes>div:first-child strong,.mapa-pendientes>div:first-child small{display:block}.mapa-pendientes>div:first-child small{margin-top:4px;color:#818995;font-size:11px}.mapa-pendientes>div:last-child{display:grid;gap:7px;margin-top:14px}.pendiente-ubicar-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px;color:#e9ebee;background:#101318;border:1px solid #2e343d;border-radius:9px;text-align:left;cursor:pointer}.pendiente-ubicar-item:hover{border-color:#d8b23e;background:#181b1f}.pendiente-ubicar-item span,.pendiente-ubicar-item strong,.pendiente-ubicar-item small{display:block;min-width:0}.pendiente-ubicar-item strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.pendiente-ubicar-item small{margin-top:2px;color:#858d98;font-size:9px}.pendiente-ubicar-item i{color:#d9b33f}.pendientes-vacio{padding:20px 5px;color:#73d99e;font-size:11px}
@media(max-width:900px){.mapa-admin-layout{grid-template-columns:1fr}.mapa-pendientes{height:auto;max-height:300px}.mapa-admin{height:430px}}
/* Mejoras de accesibilidad y adaptación del panel */
:root { --admin-fondo:#0e1013; --admin-panel:#171a1f; --admin-dorado:#d6ad43; --admin-texto:#f7f5ef; --admin-borde:rgba(214,173,67,.22); }
body { background:var(--admin-fondo); color:var(--admin-texto); }
button,input,select,textarea { font:inherit; }
:focus-visible { outline:3px solid #f0d58a; outline-offset:3px; }
.panel-topbar { position:sticky; top:0; z-index:30; background:rgba(14,16,19,.92); border-bottom:1px solid var(--admin-borde); backdrop-filter:blur(12px); }
.sidebar { border-right:1px solid var(--admin-borde); }
.menu-link,.sidebar a { border-radius:10px; transition:background .2s ease,color .2s ease; }
.login-card { width:min(92vw,440px); padding:38px; border:1px solid var(--admin-borde); border-radius:20px; box-shadow:0 28px 70px rgba(0,0,0,.35); }
.login-card label { display:block; margin:14px 0 6px; color:#d9d9d6; font-size:14px; text-align:left; }
.login-card input { min-height:50px; }
.login-error { min-height:24px; }
table { width:100%; }
td { max-width:360px; overflow-wrap:anywhere; }

@media (max-width:900px) {
    body:not(.login-body) { display:block; }
    .sidebar { position:relative; width:100%; min-height:auto; padding:16px; }
    .sidebar nav { display:flex; gap:8px; overflow-x:auto; padding-bottom:5px; }
    .sidebar nav a { flex:0 0 auto; }
    .contenido { width:100%; margin-left:0; padding:16px; }
    .panel-topbar { margin:-16px -16px 16px; padding:12px 16px; }
    .tabla-contenedor,.table-responsive { overflow-x:auto; }
}

/* Mapas y garantías R12 */
.mapa-editor-bloque{gap:12px}.mapa-editor-acciones{display:flex;align-items:center;justify-content:space-between;gap:16px}.mapa-editor-acciones strong,.mapa-editor-acciones small{display:block}.mapa-editor-acciones small{margin-top:3px;color:#7f8793}.mapa-editor-acciones .btn-secundario{padding:11px 14px;color:#eee;background:#242a32;border:1px solid #3a424d}.mapa-editor,.mapa-admin{height:460px;overflow:hidden;border:1px solid #3a424d;border-radius:14px}.garantias-campo{padding:0;border:0}.garantias-campo legend{margin-bottom:4px;color:#cbd0d8;font-size:13px;font-weight:700}.garantias-campo>p{margin-bottom:12px;color:#7f8793;font-size:12px}.garantias-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.garantias-grid label{display:flex;align-items:center;gap:9px;min-height:58px;padding:11px;color:#e4e7eb;background:#101318;border:1px solid #303640;border-radius:10px;cursor:pointer}.garantias-grid input{width:18px;height:18px;accent-color:#d9b33f}.garantias-grid span,.garantias-grid small{display:block}.garantias-grid small{color:#7f8793;font-size:9px}.mapa-admin-toolbar{display:grid;grid-template-columns:1fr 220px 220px;gap:12px;margin-bottom:13px}.mapa-admin-toolbar select{min-height:50px;padding:0 13px;color:#eef0f4;background:#15181d;border:1px solid #303640;border-radius:10px}.mapa-admin-resumen{margin:10px 0 15px;color:#9299a5}.mapa-admin-resumen strong{color:#efc956;font-size:20px}.popup-propiedad{display:grid;gap:5px;min-width:205px}.popup-propiedad strong{font-size:14px}.popup-propiedad span{color:#58616d}.popup-propiedad button{margin-top:4px;padding:8px;color:#17130a;background:#e0b943;border:0;border-radius:6px;cursor:pointer}.leaflet-container{font-family:Poppins,sans-serif;color:#151515}
@media(max-width:900px){.garantias-grid{grid-template-columns:repeat(2,1fr)}.mapa-admin-toolbar{grid-template-columns:1fr}.mapa-editor-acciones{align-items:flex-start;flex-direction:column}.mapa-editor,.mapa-admin{height:390px}}

/* Gestión avanzada */
.avisos-admin{position:fixed;z-index:1000;right:22px;bottom:22px;display:grid;gap:10px;max-width:390px}.aviso-admin{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;color:#eef1f4;background:#18201c;border:1px solid #365744;border-radius:11px;box-shadow:0 18px 45px rgba(0,0,0,.35);opacity:0;transform:translateY(12px);transition:.22s}.aviso-admin.visible{opacity:1;transform:none}.aviso-error{background:#281a1a;border-color:#733b38}.aviso-error i{color:#ff8c85}.aviso-exito i{color:#69dda0}
.config-grid-real{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.config-grid-real .config-card{margin:0}.config-card h2{margin-bottom:5px}.config-ayuda,.config-card small{color:#8f97a3}.config-card .campo{margin-top:18px}.config-card .check-card{margin-top:14px}.config-seguridad{grid-column:1/-1}.config-seguridad i{margin-right:8px;color:#e0b943}.config-aviso{display:flex;gap:10px;margin-bottom:18px;padding:14px;color:#ffd782;background:#3b2d15;border:1px solid #685026;border-radius:10px}
.consultas-resumen{display:flex;gap:12px;margin-bottom:20px}.consultas-resumen>div{display:flex;align-items:baseline;gap:8px;padding:12px 16px;background:#14171c;border:1px solid #292e37;border-radius:11px}.consultas-resumen span{color:#f2ca59;font-size:22px;font-weight:800}.consultas-resumen small{color:#9098a5}.consultas-toolbar{grid-template-columns:minmax(300px,1fr) 220px}.tabla-consultas-mejorada td strong,.tabla-consultas-mejorada td small{display:block}.consulta-mensaje{max-width:430px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.estado-consulta-nueva{color:#9dd0ff;background:#183552;border-color:#2b5275}.estado-consulta-contactada{color:#ffd782;background:#4a3615;border-color:#70521f}.estado-consulta-visita-coordinada{color:#bd9cff;background:#312451;border-color:#513d78}.estado-consulta-cerrada{color:#72e4a5;background:#173c29;border-color:#286441}.panel-consulta{position:fixed;z-index:100;top:0;right:0;width:min(440px,100%);height:100vh;padding:28px;background:#12161b;border-left:1px solid #323844;box-shadow:-20px 0 60px rgba(0,0,0,.4);overflow:auto}.panel-consulta-cabecera{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.panel-consulta-cabecera button{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#252b33;border:1px solid #3a424d;border-radius:9px}.panel-consulta .campo{margin-bottom:20px}.panel-consulta textarea{min-height:210px}.panel-consulta>.btn-principal{width:100%;min-height:48px}
.preview-item{cursor:grab}.preview-item.arrastrando{opacity:.45}.preview-item.destino-arrastre{outline:2px dashed #e0b943;outline-offset:3px}.preview-meta em{color:#ffcf6c;font-size:11px;font-style:normal}.asesor-avatar{width:52px!important;height:52px!important;object-fit:cover;border-radius:50%!important}.tabla-propiedades td small{color:#8f97a3}
@media(max-width:760px){.config-grid-real{grid-template-columns:1fr}.config-seguridad{grid-column:auto}.consultas-resumen{display:grid;grid-template-columns:repeat(3,1fr)}.consultas-resumen>div{align-items:flex-start;flex-direction:column;gap:0;padding:10px}.consultas-toolbar{grid-template-columns:1fr}.avisos-admin{right:12px;bottom:12px;left:12px}}

/* Dashboard comercial R11 */
.dashboard-cabecera{display:flex;align-items:flex-end;justify-content:space-between;margin:20px 0 24px}.dashboard-cabecera h1{margin:0 0 6px;color:#fff;font-size:38px}.dashboard-cabecera p{color:#9299a5}.dashboard-kpis{display:grid;gap:14px}.dashboard-kpis-principales{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card{display:flex;align-items:center;gap:15px;min-height:132px;padding:20px;background:#14171c;border:1px solid #292e37;border-radius:15px;box-shadow:0 15px 38px rgba(0,0,0,.18)}.kpi-icono{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:13px;font-size:20px}.kpi-card span,.dashboard-kpis-secundarios span{display:block;color:#a5acb7;font-size:12px;font-weight:600}.kpi-card strong{display:block;margin:2px 0;color:#fff;font-size:32px;line-height:1}.kpi-card small{color:#747d89;font-size:11px}.kpi-exito{border-top:3px solid #4ac985}.kpi-exito .kpi-icono{color:#70e2a4;background:#173a29}.kpi-azul{border-top:3px solid #5aa9ec}.kpi-azul .kpi-icono{color:#85c6ff;background:#172f47}.kpi-dorado{border-top:3px solid #ddb84c}.kpi-dorado .kpi-icono{color:#f0cd68;background:#3b3015}.kpi-violeta{border-top:3px solid #9b7be7}.kpi-violeta .kpi-icono{color:#c5adff;background:#2b2243}.dashboard-kpis-secundarios{grid-template-columns:repeat(6,minmax(0,1fr));margin:14px 0 22px}.dashboard-kpis-secundarios article{padding:15px 16px;background:#111419;border:1px solid #282d35;border-radius:11px}.dashboard-kpis-secundarios strong{display:block;margin-top:3px;color:#f0c958;font-size:22px}.dashboard-columns-comercial{gap:16px;margin-top:16px}.dashboard-columns-comercial .dashboard-box{min-width:0;padding:22px}.dashboard-box-titulo{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.dashboard-box-titulo h2{margin:0;font-size:20px}.dashboard-box-titulo button{padding:5px 0;color:#e2bd50;background:transparent;border:0;cursor:pointer}.inventario-estados{display:grid;gap:15px}.inventario-fila>div:first-child{display:flex;align-items:center;justify-content:space-between}.inventario-fila .estado{margin:0}.inventario-fila strong{color:#fff}.inventario-barra{height:7px;margin-top:7px;overflow:hidden;background:#252a31;border-radius:20px}.inventario-barra span{display:block;height:100%;min-width:3px;background:linear-gradient(90deg,#b38b26,#ebcb69);border-radius:20px}.cierres-lista{display:grid;gap:10px}.cierre-item{display:flex;align-items:center;gap:12px;padding:12px;background:#101318;border:1px solid #282e36;border-radius:10px}.cierre-item>i{display:grid;width:38px;height:38px;place-items:center;color:#e5c15c;background:#332a14;border-radius:10px}.cierre-item strong,.cierre-item span{display:block}.cierre-item strong{color:#edf0f2;font-size:13px}.cierre-item span,.dashboard-vacio{color:#858e9a;font-size:11px}.tabla-dashboard-scroll{overflow-x:auto}.tabla-dashboard-scroll table{min-width:540px}
@media(max-width:1250px){.dashboard-kpis-principales{grid-template-columns:repeat(2,1fr)}.dashboard-kpis-secundarios{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dashboard-cabecera{align-items:flex-start;flex-direction:column;gap:14px}.dashboard-kpis-principales{grid-template-columns:1fr}.dashboard-kpis-secundarios{grid-template-columns:repeat(2,1fr)}.kpi-card{min-height:105px}.dashboard-columns-comercial{grid-template-columns:1fr}}

/* Panel de propiedades 2.0 */
.admin-view,.editor-page{max-width:1500px;margin:0 auto}.vista-eyebrow{display:block;margin-bottom:7px;color:#ddb84c;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.vista-header{align-items:flex-end}.vista-header p{max-width:680px}.btn-principal,.btn-secundario,.btn-volver-editor{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer}.propiedades-resumen{display:flex;gap:12px;margin:0 0 22px}.propiedades-resumen>div{display:flex;align-items:baseline;gap:8px;min-width:125px;padding:13px 16px;background:#14171c;border:1px solid #292e37;border-radius:12px}.propiedades-resumen span{color:#f2ca59;font-size:23px;font-weight:800}.propiedades-resumen small{color:#9098a5}.admin-toolbar-completa{display:grid;grid-template-columns:minmax(280px,1fr) 210px 190px;gap:12px}.admin-toolbar-completa select,.admin-buscador{min-height:50px;color:#eef0f4;background:#15181d;border:1px solid #303640;border-radius:10px}.admin-toolbar-completa select{padding:0 13px}.admin-buscador{display:flex;align-items:center;gap:10px;padding:0 14px}.admin-buscador i{color:#77808d}.admin-buscador input{width:100%;min-height:auto;padding:0;background:transparent;border:0!important;outline:0;box-shadow:none!important}.tabla-propiedades-mejorada th,.tabla-propiedades-mejorada td{padding:14px 12px}.tabla-propiedades-mejorada td{vertical-align:middle}.tabla-portada{display:block;width:92px!important;height:66px!important;object-fit:cover;border-radius:10px!important}.tabla-propiedades-mejorada td strong,.tabla-propiedades-mejorada td small{display:block}.tabla-titulo{max-width:330px;margin-bottom:5px;color:#fff;font-size:15px}.tabla-propiedades-mejorada td small{color:#8f97a3}.tabla-precio{white-space:nowrap;color:#f2d477}.estado{display:inline-flex;margin-bottom:7px}.estado-borrador{color:#c0c5cc;background:#292e36;border-color:#3b424d}.estado-reservada{color:#ffd782;background:#5a4015;border-color:#76561f}.estado-vendida,.estado-alquilada{color:#ffb0aa;background:#512421;border-color:#71312c}.btn-destacada{display:flex;align-items:center;gap:6px;padding:4px 0;color:#8f97a3;background:transparent;border:0;cursor:pointer;font-size:12px}.btn-destacada.activa{color:#f0c94f}.acciones-mejoradas{display:flex;gap:6px}.acciones-mejoradas button{display:grid;width:36px;height:36px;margin:0;place-items:center}.acciones-mejoradas .accion-peligro{color:#ff908a}.admin-cargando{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:#9ba2ad}.admin-cargando span{width:22px;height:22px;border:2px solid #3a414a;border-top-color:#ddb84c;border-radius:50%;animation:admin-girar .7s linear infinite}@keyframes admin-girar{to{transform:rotate(360deg)}}.admin-vacio{padding:60px 20px;text-align:center}.admin-vacio i{color:#59616e;font-size:38px}.admin-vacio h3{margin:14px 0 6px}.admin-vacio p{color:#8f97a3}
.editor-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 0;background:rgba(11,13,16,.94);border-bottom:1px solid #282d35;backdrop-filter:blur(12px)}.btn-volver-editor{padding:10px 0;color:#b6bdc8;background:transparent}.editor-actions{display:flex;gap:10px}.editor-title{padding:30px 0 24px}.editor-title h1{margin-bottom:8px}.editor-title p{color:#9299a5}.editor-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:20px;padding:8px;background:#12151a;border:1px solid #292e37;border-radius:14px}.editor-tab{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 8px;color:#8f97a3;background:transparent;border:0;border-radius:9px;cursor:pointer}.editor-tab span{display:grid;width:24px;height:24px;place-items:center;background:#272c34;border-radius:50%;font-size:11px}.editor-tab.activo{color:#17130a;background:#e0b943;font-weight:800}.editor-tab.activo span{color:#fff;background:#17130a}.editor-panel{padding:0;background:transparent;border:0}.editor-content{display:none;padding:30px;background:#14171c;border:1px solid #292e37;border-radius:16px}.editor-content.activo{display:block}.editor-section-title{margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid #292e37}.editor-section-title h2{margin-bottom:5px;font-size:24px}.editor-section-title p{color:#8f97a3}.editor-content .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-grid-numeros{grid-template-columns:repeat(3,minmax(0,1fr))!important}.campo{display:flex;min-width:0;flex-direction:column;gap:7px}.campo-full{grid-column:1/-1}.campo label{color:#cbd0d8;font-size:13px;font-weight:700}.campo input,.campo select,.campo textarea,.editor-video input{width:100%;min-height:48px;padding:12px 13px;color:#f1f3f5;background:#0e1115;border:1px solid #303640;border-radius:9px;outline:0}.campo input:focus,.campo select:focus,.campo textarea:focus,.editor-video input:focus{border-color:#d7b13e;box-shadow:0 0 0 3px rgba(215,177,62,.12)}.campo textarea{min-height:220px!important}.campo-ayuda{color:#7f8793}.check-card{display:flex;align-items:center;gap:15px;padding:18px;background:#101318;border:1px solid #303640;border-radius:12px;cursor:pointer}.check-card input{width:20px;height:20px;accent-color:#d9b33f}.check-card>span{display:grid;grid-template-columns:auto 1fr;gap:3px 8px}.check-card i{grid-row:1/3;color:#d9b33f}.check-card strong{color:#f0f1f3}.check-card small{grid-column:2;color:#8f97a3}.upload-box{display:flex!important;min-height:180px;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#b8bec8;background:#0e1115;border:1px dashed #515967;border-radius:14px;cursor:pointer;transition:.2s}.upload-box:hover{color:#f1cc62;border-color:#d9b33f;background:#11150f}.upload-box i{font-size:34px}.upload-box input{display:none}.imagenes-instruccion{margin:16px 0;color:#8f97a3;font-size:13px}.preview-imagenes{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.preview-item{position:relative;overflow:hidden;background:#0e1115;border:1px solid #303640;border-radius:12px}.preview-item.principal{border-color:#d9b33f;box-shadow:0 0 0 2px rgba(217,179,63,.12)}.preview-item>img{display:block;width:100%;height:155px;object-fit:cover}.preview-meta{display:flex;align-items:center;justify-content:space-between;padding:10px 11px}.preview-meta span{color:#858d99;font-size:11px;text-transform:uppercase}.preview-meta strong{color:#efc956;font-size:12px}.preview-acciones{display:grid;grid-template-columns:1fr auto;gap:7px;padding:0 10px 10px}.preview-acciones button{min-height:35px;padding:0 10px;border:1px solid #333a45;border-radius:8px;cursor:pointer}.preview-acciones .btn-principal-img{position:static;color:#e3e6ea;background:#21262e}.preview-acciones .btn-principal-img:disabled{color:#f0c957;border-color:#6a5926;opacity:1}.preview-acciones .btn-eliminar-img{position:static;width:auto;height:auto;color:#ff9c97;background:#2b1b1c}.imagenes-vacio{grid-column:1/-1;padding:45px;text-align:center;color:#737c88;background:#101318;border:1px solid #292e37;border-radius:12px}.imagenes-vacio i{font-size:35px}.editor-video{margin-top:22px}.editor-final{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:22px;border-top:1px solid #292e37}.editor-final p{color:#8f97a3}.editor-final p i{margin-right:7px;color:#d9b33f}.editor-estado{min-height:24px;margin-top:15px}.editor-estado.error{color:#ff9c97}.editor-estado.exito{color:#65d795}
@media(max-width:1100px){.admin-toolbar-completa{grid-template-columns:1fr 1fr}.admin-buscador{grid-column:1/-1}.tabla-contenedor{overflow-x:auto}.tabla-propiedades-mejorada{min-width:940px}.editor-progress{display:flex;overflow-x:auto}.editor-tab{flex:0 0 auto;padding-inline:16px}}
@media(max-width:700px){.propiedades-resumen{display:grid;grid-template-columns:repeat(3,1fr)}.propiedades-resumen>div{min-width:0;flex-direction:column;gap:1px}.admin-toolbar-completa{grid-template-columns:1fr}.admin-buscador{grid-column:auto}.editor-topbar{align-items:flex-start;gap:12px}.editor-actions{width:100%;justify-content:flex-end}.editor-actions button{font-size:12px}.editor-content{padding:20px 16px}.editor-content .form-grid,.form-grid-numeros{grid-template-columns:1fr!important}.campo-full{grid-column:auto}.editor-final{align-items:flex-start;flex-direction:column}.editor-final button{width:100%}}

/* Tema coherente del panel */
.contenido { min-width:0; padding:0 40px 50px; background:#0b0d10; }
.panel-topbar { display:flex; justify-content:flex-end; align-items:center; min-height:76px; margin-bottom:8px; padding:12px 0; }
.usuario-panel { display:flex; align-items:center; gap:14px; }
#usuario-logueado { color:#d3d5da; font-size:14px; }
.panel-topbar .btn-secundario { padding:10px 15px; color:#eceef2; background:#1c2026; border:1px solid #343a44; }
.vista-header { margin:20px 0 28px; }
.vista-header h1,.contenido h1 { margin:0 0 8px; color:#fff; font-size:clamp(30px,3vw,40px); line-height:1.15; }
.vista-header p { color:#9299a5; }
.btn-principal { color:#17130a; background:linear-gradient(135deg,#edcd70,#d7ac31); box-shadow:0 8px 22px rgba(215,172,49,.14); }
.admin-toolbar { margin:0 0 22px; }
.admin-toolbar input { min-height:50px; color:#f5f6f8; background:#15181d; border:1px solid #303640; }
.admin-toolbar input::placeholder { color:#838a96; }
.tabla-contenedor { padding:8px 18px; background:#14171c; border:1px solid #292e37; box-shadow:0 16px 38px rgba(0,0,0,.2); }
.tabla-propiedades { color:#e8eaf0; }
.tabla-propiedades th,.tabla-propiedades td { border-bottom:1px solid #292e37; }
.tabla-propiedades th { color:#aeb4bf; font-size:12px; text-transform:uppercase; letter-spacing:.055em; }
.tabla-propiedades td { color:#eceef2; font-size:14px; }
.tabla-propiedades tbody tr { transition:background .15s ease; }
.tabla-propiedades tbody tr:hover { background:#191d23; }
.tabla-propiedades img { width:76px; height:54px; background:#20242b; }
.acciones { white-space:nowrap; }
.acciones button { color:#eef0f4; background:#252a32; border:1px solid #373d47; transition:background .15s ease,border-color .15s ease; }
.acciones button:hover { background:#303640; border-color:#d6ad43; }
.acciones button:last-child { color:#ffb8b8; }
.estado { background:rgba(35,165,91,.14); color:#68d99a; border:1px solid rgba(104,217,154,.2); }
.estado-disponible {
    color:#72e4a5;
    background:rgba(35,165,91,.18);
    border-color:rgba(114,228,165,.34);
}
.estado-reservada {
    color:#ffd06f;
    background:rgba(210,139,24,.2);
    border-color:rgba(255,208,111,.38);
}
.estado-vendida {
    color:#85c4ff;
    background:rgba(35,119,200,.2);
    border-color:rgba(133,196,255,.38);
}
.estado-alquilada {
    color:#ffaaa4;
    background:rgba(207,55,48,.24);
    border-color:rgba(255,116,108,.46);
}
.estado-borrador {
    color:#c3c8d0;
    background:rgba(112,120,132,.19);
    border-color:rgba(195,200,208,.3);
}
.card,.dashboard-card,.dashboard-box,.editor-card,.form-card { color:#e8eaf0; background:#14171c; border:1px solid #292e37; box-shadow:0 16px 38px rgba(0,0,0,.18); }
.card h3,.dashboard-card span { color:#9ba2ad; }
.card strong,.dashboard-card strong,.dashboard-box h2 { color:#f7f7f8; }
.dashboard-box th { color:#aeb4bf; }
.dashboard-box td { color:#e8eaf0; }
.dashboard-box th,.dashboard-box td { border-color:#292e37; }

@media (max-width:900px) {
    .contenido { padding:0 16px 32px; }
    .panel-topbar { margin:0; }
    .vista-header { align-items:flex-start; flex-direction:column; }
    .tabla-contenedor { padding:6px 10px; }
}

/* Solicitudes de propietarios R22 */
.menu-solicitudes{position:relative}.menu-badge{display:grid;min-width:23px;height:23px;margin-left:auto;padding:0 6px;place-items:center;color:#17130a;background:#efc64f;border-radius:20px;font-size:11px;font-weight:800}.menu-badge[hidden]{display:none}.menu-link.tiene-nuevas{box-shadow:inset 3px 0 #efc64f}.solicitudes-cabecera{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.solicitudes-header-acciones{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.solicitudes-cabecera .btn-secundario,.solicitudes-cabecera .btn-compartir-solicitud{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:0 14px;border-radius:9px;text-decoration:none;cursor:pointer}.solicitudes-cabecera .btn-secundario{color:#e8ebef;background:#1d2229;border:1px solid #343b46}.btn-compartir-solicitud{color:#17130a;background:#e0b943;border:0;font-weight:800}.solicitudes-resumen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.solicitudes-resumen article{padding:16px;background:#14171c;border:1px solid #2b3039;border-radius:12px}.solicitudes-resumen span{display:block;color:#969eaa;font-size:12px}.solicitudes-resumen strong{display:block;margin-top:3px;color:#f0c95a;font-size:26px}.solicitudes-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 205px 170px 170px;gap:10px;margin-bottom:18px}.solicitudes-toolbar select,.solicitudes-toolbar>input{min-height:50px;padding:0 12px;color:#eef0f4;background:#15181d;border:1px solid #303640;border-radius:10px}.solicitudes-tabla td strong,.solicitudes-tabla td small{display:block}.solicitudes-tabla td small{margin-top:4px;color:#8f97a3}.btn-revisar-solicitud{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;color:#18140b;background:#e0b943;border:0;border-radius:8px;cursor:pointer;font-weight:700}.estado-solicitud-pendiente{color:#9fd2ff;background:#173752;border-color:#2c587e}.estado-solicitud-en-revision{color:#ffe18c;background:#493915;border-color:#705820}.estado-solicitud-falta-informacion{color:#ffbd84;background:#4c2d18;border-color:#754629}.estado-solicitud-validada{color:#7ae2a8;background:#173b29;border-color:#2a6443}.estado-solicitud-rechazada{color:#ffaaa4;background:#512421;border-color:#71312c}.estado-solicitud-convertida-en-propiedad{color:#c7adff;background:#30254c;border-color:#4f3d76}.kpi-solicitudes{border-top:3px solid #f0c958;cursor:pointer}.kpi-solicitudes .kpi-icono{color:#f0cf69;background:#3c3014}.kpi-solicitudes:focus-visible{outline:3px solid #f0d58a}
.revision-solicitud{max-width:1580px;margin:0 auto}.revision-titulo{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:28px 0 22px}.revision-titulo h1{margin:0 0 7px}.revision-titulo p{color:#9199a5}.revision-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(430px,.7fr);gap:18px}.revision-columna{display:grid;align-content:start;gap:18px}.revision-card{padding:24px;background:#14171c;border:1px solid #2a3038;border-radius:15px}.revision-card h2{margin:0 0 18px;color:#f4f4f3;font-size:21px}.revision-card>p,.revision-card-titulo p{color:#8e96a2;font-size:12px}.revision-card .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.revision-card .campo textarea{min-height:150px!important}.datos-internos{border-color:#5c4b22;box-shadow:inset 0 3px #d9b33f}.datos-internos>p{margin:-10px 0 20px}.revision-card-titulo{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.revision-card-titulo h2{margin-bottom:4px}.revision-card-titulo>span{padding:5px 9px;color:#ebc95f;background:#302814;border-radius:20px;font-size:11px}.btn-whatsapp-solicitud{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;color:#d9ffe8;background:#173a28;border:1px solid #2c6545;border-radius:9px;text-decoration:none}.btn-whatsapp-solicitud.deshabilitado{pointer-events:none;opacity:.45}.validacion-errores{display:flex;align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:18px;padding:16px 18px;color:#ffd6b4;background:#412417;border:1px solid #70432d;border-radius:11px}.validacion-errores[hidden]{display:none}.solicitud-imagenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.solicitud-imagen{overflow:hidden;background:#0e1115;border:1px solid #303640;border-radius:11px}.solicitud-imagen.principal{border-color:#e0b943;box-shadow:0 0 0 2px rgba(224,185,67,.13)}.solicitud-imagen img{display:block;width:100%;height:220px;object-fit:cover}.solicitud-imagen>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px}.solicitud-imagen>div>span{display:flex;gap:5px}.solicitud-imagen button{min-height:32px;padding:0 9px;color:#e8eaf0;background:#22272f;border:1px solid #343b46;border-radius:7px;cursor:pointer}.solicitud-imagen button:disabled{opacity:.35;cursor:not-allowed}.solicitud-imagen .accion-peligro{color:#ffaaa4;background:#2d1c1d}.acciones-decision{display:grid;gap:9px;margin-top:17px}.acciones-decision button,.btn-convertir{display:flex;align-items:center;justify-content:center;gap:8px;min-height:47px;border-radius:9px;cursor:pointer}.btn-rechazar{color:#ffc0bc;background:#341d1d;border:1px solid #63302d}.btn-validar{color:#132219;background:#67d697;border:0;font-weight:800}.conversion-bloque{margin-top:20px;padding:18px;background:#0f1216;border:1px solid #2d333c;border-radius:11px;opacity:.72}.conversion-bloque.habilitada{border-color:#665322;opacity:1}.conversion-bloque>strong{color:#e8c75d}.conversion-bloque>p{margin:5px 0 13px;color:#89919d;font-size:11px}.btn-convertir{width:100%;padding:0 13px;color:#17130a;background:#e0b943;border:0;font-weight:800}.btn-convertir:disabled{color:#777d86;background:#292e35;cursor:not-allowed}.conversion-exito{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:14px;padding:12px;color:#7be1a7;background:#163725;border:1px solid #286043;border-radius:9px}.conversion-exito button{grid-column:1/-1;padding:9px;color:#16130b;background:#e0b943;border:0;border-radius:7px;cursor:pointer;font-weight:700}
@media(max-width:1250px){.solicitudes-toolbar{grid-template-columns:1fr 1fr}.solicitudes-toolbar .admin-buscador{grid-column:1/-1}.revision-grid{grid-template-columns:1fr}.datos-internos{order:0}}
@media(max-width:760px){.solicitudes-cabecera,.revision-titulo{align-items:flex-start;flex-direction:column}.solicitudes-resumen{grid-template-columns:repeat(2,1fr)}.solicitudes-toolbar{grid-template-columns:1fr}.solicitudes-toolbar .admin-buscador{grid-column:auto}.solicitudes-tabla{min-width:900px}.revision-card{padding:18px 14px}.revision-card .form-grid{grid-template-columns:1fr}.solicitud-imagenes{grid-template-columns:1fr}.solicitud-imagen img{height:240px}}

/* Ficha privada del propietario R25 */
.propietario-privado{margin:8px 0;padding:22px;background:#111712;border:1px solid #526239;border-left:4px solid #d9b33f;border-radius:12px}.propietario-privado-titulo{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.propietario-privado-titulo>i{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;color:#edcb65;background:#372f18;border-radius:10px}.propietario-privado-titulo strong,.propietario-privado-titulo small{display:block}.propietario-privado-titulo strong{color:#f1eee5;font-size:16px}.propietario-privado-titulo small{margin-top:3px;color:#98a198;font-size:11px}.propietario-privado textarea{min-height:130px!important}.propietario-origen{margin-top:13px;color:#d8bc68;font-size:11px}

/* Filtros avanzados del catálogo R26 */
.propiedades-view .admin-toolbar-completa{grid-template-columns:minmax(260px,2fr) repeat(6,minmax(140px,1fr))}
@media(max-width:1300px){.propiedades-view .admin-toolbar-completa{grid-template-columns:repeat(3,minmax(0,1fr))}.propiedades-view .admin-buscador{grid-column:1/-1}}
@media(max-width:850px){.propiedades-view .admin-toolbar-completa{grid-template-columns:1fr 1fr}.propiedades-view .admin-buscador{grid-column:1/-1}}
@media(max-width:700px){.propiedades-view .admin-toolbar-completa{grid-template-columns:1fr}.propiedades-view .admin-buscador{grid-column:auto}}
/* Métricas anónimas de actividad web */
.dashboard-metricas-web {
    margin: 24px 0;
    padding: 24px;
    border: 1px solid var(--borde, #303640);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(211, 171, 59, .08), rgba(19, 24, 31, .96) 42%);
}
.metricas-web-cabecera { align-items: flex-start; margin-bottom: 20px; }
.metricas-web-cabecera p { margin: 7px 0 0; color: #9da7b6; }
.metricas-privacidad {
    display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px;
    border: 1px solid rgba(211, 171, 59, .35); border-radius: 999px;
    color: #d8c27a; font-size: .78rem; white-space: nowrap;
}
.metricas-web-kpis {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px;
}
.metricas-web-kpis article {
    display: flex; gap: 14px; min-height: 126px; padding: 18px;
    border: 1px solid #2e3540; border-radius: 14px; background: #151a21;
}
.metrica-web-icono {
    display: grid; place-items: center; flex: 0 0 42px; height: 42px;
    border-radius: 12px; background: rgba(222, 181, 56, .14); color: #e0b837;
}
.metricas-web-kpis span { display: block; color: #aab3c1; font-size: .82rem; }
.metricas-web-kpis strong { display: block; margin: 5px 0; color: #fff; font-size: 1.75rem; }
.metricas-web-kpis small { color: #7f8998; font-size: .73rem; line-height: 1.3; }
.metricas-web-ranking {
    margin-top: 18px; padding: 18px; border: 1px solid #2e3540;
    border-radius: 14px; background: rgba(9, 12, 16, .45);
}
.metricas-web-ranking h3 { margin: 3px 0 0; color: #fff; font-size: 1.05rem; }
.propiedades-mas-vistas { display: grid; gap: 8px; margin-top: 14px; }
.propiedad-vista-fila {
    display: grid; grid-template-columns: 32px minmax(0, 1fr) auto 18px; gap: 12px;
    align-items: center; width: 100%; padding: 12px; border: 0; border-radius: 10px;
    background: #171c23; color: #e9edf3; text-align: left; cursor: pointer;
}
.propiedad-vista-fila:hover { background: #202731; transform: translateY(-1px); }
.propiedad-vista-posicion {
    display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%;
    background: #dcb438; color: #111; font-weight: 800;
}
.propiedad-vista-titulo { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.propiedad-vista-fila strong { color: #d9bd64; font-size: .82rem; }
@media (max-width: 1050px) { .metricas-web-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) {
    .dashboard-metricas-web { padding: 17px; }
    .metricas-web-cabecera { display: block; }
    .metricas-privacidad { margin-top: 12px; }
    .metricas-web-kpis { grid-template-columns: 1fr; }
    .propiedad-vista-fila { grid-template-columns: 32px minmax(0, 1fr) auto; }
    .propiedad-vista-fila i { display: none; }
}
/* Biblioteca de documentos */
.documentos-page { padding-bottom: 36px; }
.documentos-aviso {
    display: flex; gap: 14px; align-items: flex-start; margin: 20px 0 24px; padding: 17px 19px;
    border: 1px solid rgba(221,182,55,.34); border-radius: 14px; background: rgba(221,182,55,.08);
}
.documentos-aviso > i { margin-top: 3px; color: #ddb637; font-size: 1.1rem; }
.documentos-aviso strong { color: #f2f4f7; }
.documentos-aviso p { margin: 4px 0 0; color: #aeb7c4; line-height: 1.55; }
.documentos-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.documento-card {
    display: flex; flex-direction: column; min-height: 410px; padding: 26px;
    border: 1px solid #303741; border-radius: 18px; background: linear-gradient(145deg, #171c23, #11151a);
}
.documento-icono {
    display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 18px;
    border-radius: 14px; background: rgba(221,182,55,.15); color: #ddb637; font-size: 1.35rem;
}
.documento-etiqueta { color: #ddb637; font-size: .7rem; font-weight: 700; letter-spacing: .14em; }
.documento-card h2 { margin: 7px 0 10px; color: #fff; font-size: 1.35rem; }
.documento-card > p { margin: 0 0 18px; color: #aeb7c4; line-height: 1.6; }
.documento-card ul { display: grid; gap: 9px; margin: 0 0 24px; padding: 0; list-style: none; }
.documento-card li { color: #d8dee8; font-size: .88rem; }
.documento-card li i { width: 20px; color: #ddb637; }
.btn-documento {
    display: inline-flex; justify-content: center; align-items: center; gap: 9px; margin-top: auto;
    padding: 13px 17px; border-radius: 11px; background: #ddb637; color: #101318;
    font-weight: 700; text-decoration: none;
}
.btn-documento:hover { background: #eccb63; transform: translateY(-1px); }
@media (max-width: 820px) { .documentos-grid { grid-template-columns: 1fr; } }

.documento-formulario { margin: 20px 0 24px; padding: 24px; border: 1px solid #39414c; border-radius: 18px; background: #151a21; box-shadow: 0 18px 45px rgba(0,0,0,.18); }
.documento-formulario[hidden] { display: none; }
.documento-formulario-cabecera { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 20px; }
.documento-formulario-cabecera h2 { margin: 5px 0 0; color: #fff; }
.documento-formulario-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.documento-campo-ancho { grid-column: 1 / -1; }
.documento-formulario input, .documento-formulario textarea { width: 100%; box-sizing: border-box; border: 1px solid #39414c; border-radius: 10px; background: #0f1318; color: #fff; padding: 12px 13px; font: inherit; }
.documento-formulario input[type="file"] { padding: 10px; }
.documento-formulario small { display: block; margin-top: 6px; color: #929dac; }
.documento-formulario-acciones { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
.documento-mensaje { min-height: 20px; margin: 12px 0 0; color: #ddb637; }
.documentos-personales-cabecera { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin: 34px 0 16px; }
.documentos-personales-cabecera h2 { margin: 5px 0 0; color: #fff; }
.documentos-personales-cabecera > span { color: #9ca7b6; }
.documento-card-dinamico { min-height: 330px; }
.documento-card-meta { margin: -8px 0 16px; color: #7f8a99; font-size: .78rem; }
.documento-card-acciones { display: flex; gap: 9px; margin-top: auto; }
.documento-card-acciones .btn-documento { flex: 1; margin-top: 0; border: 0; cursor: pointer; font: inherit; }
.btn-editar-documento { width: 46px; flex: 0 0 46px; border: 1px solid #4b4632; border-radius: 11px; background: #262316; color: #e8c84c; cursor: pointer; }
.btn-editar-documento:hover { background: #37311c; }
.btn-eliminar-documento { width: 46px; flex: 0 0 46px; border: 1px solid #56353a; border-radius: 11px; background: #24191c; color: #ff8d96; cursor: pointer; }
.btn-eliminar-documento:hover { background: #382126; }
.documentos-vacio { grid-column: 1 / -1; display: grid; justify-items: center; gap: 10px; padding: 42px; border: 1px dashed #39414c; border-radius: 16px; color: #8e99a8; text-align: center; }
.documentos-vacio i { font-size: 2rem; color: #ddb637; }
@media (max-width: 700px) {
    .documento-formulario-grid { grid-template-columns: 1fr; }
    .documento-campo-ancho { grid-column: auto; }
    .documento-formulario-acciones { flex-direction: column-reverse; }
    .documento-formulario-acciones button { width: 100%; }
}

/* Reseñas de clientes R38 */
.resenas-cabecera{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.resenas-resumen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:22px 0}.resenas-resumen article{padding:17px 19px;background:#14181e;border:1px solid #303640;border-radius:13px}.resenas-resumen span{display:block;color:#929ba8;font-size:12px}.resenas-resumen strong{display:block;margin-top:3px;color:#edc64d;font-size:27px}.resena-enlace-caja{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(300px,1.3fr) auto;align-items:center;gap:12px;margin-bottom:20px;padding:17px;background:#171d19;border:1px solid #3f5c47;border-radius:13px}.resena-enlace-caja[hidden]{display:none}.resena-enlace-caja strong,.resena-enlace-caja small{display:block}.resena-enlace-caja small{margin-top:3px;color:#92a099}.resena-enlace-caja input{min-width:0;padding:12px;color:#e8ebe9;background:#0e1210;border:1px solid #35433a;border-radius:8px}.resena-enlace-caja button{min-height:43px;padding:0 15px;color:#15130c;background:#e4bd43;border:0;border-radius:8px;font-weight:700;cursor:pointer}.resenas-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 210px;gap:12px;margin-bottom:18px}.resenas-toolbar select{padding:0 13px;color:#f2f3f5;background:#15191f;border:1px solid #303640;border-radius:10px}.resenas-admin-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.resena-admin-card{display:flex;flex-direction:column;padding:21px;background:#14181e;border:1px solid #303640;border-radius:15px}.resena-admin-superior{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.resena-admin-card h2{margin:4px 0 0;color:#fff;font-size:18px}.resena-admin-card small{color:#89929f}.resena-admin-card>p{flex:1;margin:18px 0;color:#d3d7dc;line-height:1.65}.estrellas{color:#efc342;letter-spacing:2px}.estado-resena{padding:5px 9px;border-radius:20px;font-size:11px;font-weight:700}.estado-resena-pendiente{color:#ffe18c;background:#493915}.estado-resena-aprobada{color:#7ae2a8;background:#173b29}.estado-resena-rechazada{color:#ffaaa4;background:#512421}.resena-admin-acciones{display:flex;justify-content:flex-end;gap:8px}.resena-admin-acciones button{min-height:39px;padding:0 12px;border-radius:8px;cursor:pointer}.btn-aprobar-resena{color:#142219;background:#70d99d;border:0;font-weight:700}.btn-rechazar-resena{color:#ffb9b4;background:#321d1d;border:1px solid #60312e}.btn-eliminar-resena{color:#ff9d9d;background:#24191b;border:1px solid #533036}.menu-resenas{position:relative}@media(max-width:900px){.resenas-admin-lista{grid-template-columns:1fr}.resena-enlace-caja{grid-template-columns:1fr}.resenas-toolbar{grid-template-columns:1fr}}@media(max-width:600px){.resenas-cabecera{align-items:flex-start;flex-direction:column}.resenas-resumen{grid-template-columns:1fr}.resenas-cabecera .btn-principal{width:100%}}
/* Control de calidad R39 */
.propiedades-resumen{grid-template-columns:repeat(4,minmax(0,1fr))}.resumen-revisar span{color:#ffbd77!important}.calidad-ficha{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:700}.calidad-ficha.completa{color:#7ee2a9;background:#183827}.calidad-ficha.incompleta{color:#ffc17c;background:#432b17}
.dashboard-alertas{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0;padding:21px 24px;background:linear-gradient(120deg,#171c21,#211d13);border:1px solid #4a4025;border-radius:16px}.dashboard-alertas h2{margin:4px 0;color:#fff}.dashboard-alertas p{margin:0;color:#9da5af}.dashboard-alertas button{display:flex;align-items:center;gap:10px;padding:13px 16px;color:#17130b;background:#e2ba3e;border:0;border-radius:10px;cursor:pointer}.dashboard-alertas button strong{font-size:25px}.dashboard-alertas button span{font-weight:700}
@media(max-width:760px){.propiedades-resumen{grid-template-columns:repeat(2,1fr)}.dashboard-alertas{align-items:flex-start;flex-direction:column}.dashboard-alertas button{width:100%;justify-content:center}}
/* Historial de invitaciones de reseña R39 */
.invitaciones-resena{margin:0 0 20px;padding:15px 17px;background:#12171d;border:1px solid #303640;border-radius:13px}.invitaciones-resena summary{display:flex;align-items:center;gap:9px;color:#e7c654;cursor:pointer;font-weight:700}.invitaciones-resena[open] summary{margin-bottom:14px}.invitacion-resena-fila{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid #292f37}.invitacion-resena-fila:first-child{border-top:0}.invitacion-resena-fila strong,.invitacion-resena-fila small{display:block}.invitacion-resena-fila small{margin-top:3px;color:#8f99a7}.invitacion-resena-fila>span{display:flex;gap:7px}.invitacion-resena-fila button{min-height:36px;padding:0 11px;color:#eee;background:#222832;border:1px solid #3a424e;border-radius:8px;cursor:pointer}.invitacion-resena-fila button.accion-peligro{color:#ffaaaa;background:#2d1c1d}.invitacion-resena-fila button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:650px){.invitacion-resena-fila{align-items:flex-start;flex-direction:column}.invitacion-resena-fila>span{width:100%}.invitacion-resena-fila button{flex:1}}
