/* Public UI (catalog + single + form) */
:root{
	--emaus-azul:#4a6f84;
	--emaus-rosa:#b56b7f;
	--emaus-verde:#5a9b6e;
	--emaus-wa:#25D366;
	--emaus-bg:#eef1f4;
	--emaus-text:#2c3a45;
	--emaus-shadow:0 12px 32px rgba(44,58,69,0.08);
}

/* Hide theme titles only on single retiro */
body.single-retiro .entry-title,
body.single-retiro .post-title,
body.single-retiro .page-title,
body.single-retiro .entry-header{display:none!important;}

.emaus-archive-container{max-width:1200px;margin:0 auto;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--emaus-bg);padding:20px;border-radius:15px}
.retiros-filter-form{display:flex;flex-wrap:wrap;gap:10px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,0.05);margin-bottom:20px;align-items:center}
.retiros-filter-form select{flex:1;min-width:180px;height:42px;border-radius:8px;border:1px solid #ddd}
.btn-filter{background:var(--emaus-azul);color:#fff;border:none;padding:0 25px;border-radius:8px;cursor:pointer;font-weight:700;height:42px}
.btn-limpiar{font-size:13px;color:#666;text-decoration:none;margin-left:5px}
.retiros-counter{margin-bottom:20px;font-size:14px;color:#555;background:#e9ecef;padding:10px 20px;border-radius:30px;display:inline-block;font-weight:500}
.retiros-grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px}
.emaus-no-results{grid-column:1/-1;text-align:center;padding:40px 10px;color:#555}

.retiro-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,0.1);display:flex;flex-direction:column;padding-top:25px;border-top:6px solid var(--emaus-verde)}
.retiro-card.is-hombres{border-top-color:var(--emaus-azul)}
.retiro-card.is-mujeres{border-top-color:var(--emaus-rosa)}
.card-image-wrapper{display:flex;justify-content:center;position:relative;margin-bottom:10px}
.card-image{width:150px;height:150px;border-radius:50%;background-size:cover;background-position:center;cursor:zoom-in;border:4px solid #eee;transition:transform .3s}
.card-image:hover{transform:scale(1.05)}
.badge-grupo{position:absolute;bottom:-5px;color:#fff;padding:4px 12px;border-radius:15px;font-size:10px;font-weight:800;text-transform:uppercase;z-index:10;pointer-events:none;background:var(--emaus-verde)}
.retiro-card.is-hombres .badge-grupo{background:var(--emaus-azul)}
.retiro-card.is-mujeres .badge-grupo{background:var(--emaus-rosa)}
.card-content{padding:15px 20px;flex-grow:1;text-align:left}
.card-title{margin:10px 0;font-size:19px;color:var(--emaus-azul);font-weight:800;line-height:1.2}
.card-info{font-size:13px;color:#444;margin-bottom:8px;display:flex;align-items:flex-start;gap:8px}
.card-footer{display:flex;flex-direction:column;gap:8px;padding:15px;background:#f9f9f9;border-top:1px solid #eee}
.btn-action{display:block;width:100%;padding:12px;text-align:center;border-radius:8px;text-decoration:none!important;font-weight:800;font-size:14px;color:#fff}
.btn-wa{background:var(--emaus-wa)}
.btn-link{background:var(--emaus-rosa)}
.btn-more{background:#eee;color:#333}

.emaus-link{color:inherit;text-decoration:underline;text-underline-offset:2px}
.emaus-link:hover{opacity:.85}

.select2-container--default .select2-selection--single{height:42px!important;display:flex;align-items:center;border-radius:8px!important;border:1px solid #ddd!important}

/* Lightbox */
.emaus-lightbox{display:none;position:fixed;z-index:9999;inset:0;background:rgba(0,0,0,.9);align-items:center;justify-content:center}
.emaus-lightbox__img{max-width:90%;max-height:90%;border-radius:10px}
.emaus-lightbox__close{position:absolute;top:16px;right:18px;color:#fff;font-size:44px;cursor:pointer;background:transparent;border:none;line-height:1}
.emaus-lightbox.is-open{display:flex}

/* Single */
.emaus-single-wrapper{max-width:550px;margin:40px auto;padding:0 14px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.retiro-card-single{background:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--emaus-shadow);border-top:8px solid var(--emaus-verde)}
.retiro-card-single.is-hombres{border-top-color:var(--emaus-azul)}
.retiro-card-single.is-mujeres{border-top-color:var(--emaus-rosa)}
.card-header-single{text-align:center;padding:30px 20px 10px}
.emaus-single-avatar{width:140px;height:140px;border-radius:50%;object-fit:cover;border:4px solid #f0f0f0;margin-bottom:15px}
.emaus-single-title{font-size:24px;color:var(--emaus-azul);font-weight:900;margin:10px 0;line-height:1.2}
.emaus-single-badge{background:var(--emaus-verde);color:#fff;padding:5px 15px;border-radius:20px;font-size:11px;font-weight:900;text-transform:uppercase;display:inline-block;margin-bottom:20px}
.retiro-card-single.is-hombres .emaus-single-badge{background:var(--emaus-azul)}
.retiro-card-single.is-mujeres .emaus-single-badge{background:var(--emaus-rosa)}
.card-body-single{padding:0 30px 30px;text-align:left}
.emaus-row{display:flex;gap:12px;margin-bottom:12px;font-size:15px;color:#444}
.emaus-ico{width:22px;display:inline-flex;justify-content:center}
.card-footer-single{padding:20px;background:#f9f9f9;display:flex;flex-direction:column;gap:10px}

.emaus-btn{display:block;text-align:center;padding:14px;border-radius:10px;text-decoration:none;font-weight:900;color:#fff}
.emaus-btn--wa{background:var(--emaus-wa)}
.emaus-btn--reserva{background:var(--emaus-rosa)}
.emaus-btn--primary{background:var(--emaus-azul);border:none;cursor:pointer}

/* Frontend form — enlace al dashboard encima de la tarjeta (fuera de .emaus-form-wrap) */
.emaus-dashboard-back-wrap{max-width:900px;margin:6px auto 0;padding:0 14px;box-sizing:border-box}
.emaus-dashboard-back{margin:0;font-size:15px;line-height:1.45}
.emaus-dashboard-back__link{color:var(--emaus-azul);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.emaus-dashboard-back__link:hover{opacity:.85}
.emaus-dashboard-back-wrap + .emaus-form-wrap{margin-top:14px}
.emaus-form-wrap{max-width:900px;margin:30px auto;padding:0 14px}
.emaus-form{background:#fff;border-radius:14px;box-shadow:0 8px 25px rgba(0,0,0,.06);padding:18px}
.emaus-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.emaus-field label{display:block;font-weight:800;margin-bottom:6px}
.emaus-field input,.emaus-field select{width:100%;height:42px;border:1px solid #ddd;border-radius:10px;padding:0 12px}
.emaus-field--full{grid-column:1/-1}
.emaus-req{color:#d63638}
.emaus-form-help{margin:10px 0 0;color:#666;font-size:13px}
.emaus-notice{padding:12px 14px;border-radius:12px;margin-bottom:12px}
.emaus-notice--ok{background:#ecf8ee;border:1px solid #bfe7c8;color:#1d5e2b}
.emaus-notice--err{background:#fff0f0;border:1px solid #f1b6b6;color:#7d1c1c}
.emaus-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

@media (max-width:900px){
	.emaus-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
	.emaus-form-grid{grid-template-columns:1fr}
}

/* Casa de retiro form (matches provided classnames) */
.formulario-casa-retiro{background:#fff;border-radius:14px;box-shadow:0 8px 25px rgba(0,0,0,.06);padding:18px}
.formulario-casa-retiro h2{margin:0 0 14px 0;font-size:22px;color:var(--emaus-azul);font-weight:900}
.formulario-casa-retiro .campos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.formulario-casa-retiro .campo label{display:block;font-weight:800;margin-bottom:6px}
.formulario-casa-retiro .campo input{width:100%;height:42px;border:1px solid #ddd;border-radius:10px;padding:0 12px}
.formulario-casa-retiro .campo-full{grid-column:1/-1}
@media (max-width:900px){.formulario-casa-retiro .campos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.formulario-casa-retiro .campos-grid{grid-template-columns:1fr}}

/* Archivo casas */
.emaus-casas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.emaus-casa-card-mini{padding-top:12px}
.emaus-casa-card-mini .card-title{font-size:17px;margin-top:4px}
.emaus-casa-card-mini .card-info{font-size:13px}
.emaus-casa-card-mini .card-footer{flex-direction:column}
.emaus-input{flex:2;min-width:220px;height:42px;border-radius:8px;border:1px solid #ddd;padding:0 12px}
.emaus-pagination{margin-top:18px}
.emaus-pagination ul{display:flex;gap:6px;flex-wrap:wrap;list-style:none;padding:0;margin:0}
.emaus-pagination a,.emaus-pagination span{display:inline-flex;min-width:38px;height:38px;align-items:center;justify-content:center;border-radius:10px;border:1px solid #ddd;background:#fff;color:#333;text-decoration:none;font-weight:800}
.emaus-pagination .current{background:var(--emaus-azul);border-color:var(--emaus-azul);color:#fff}
@media (max-width:900px){.emaus-casa-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.emaus-casa-actions{grid-template-columns:1fr}}

/* CTA login */
.emaus-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 4px 15px rgba(0,0,0,0.05);margin-bottom:14px}
.emaus-cta__title{font-weight:900;color:var(--emaus-azul)}
.emaus-cta__link{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 14px;border-radius:10px;background:var(--emaus-azul);color:#fff;text-decoration:none;font-weight:900}
.emaus-cta__link:hover{opacity:.92}

/* Mis registros: tablas + buscador */
.emaus-mis-registros-wrap{margin-top:28px;padding-top:8px;border-top:1px solid #dde3e8}
.emaus-mis-registros-title{font-size:1.25rem;font-weight:900;color:var(--emaus-azul);margin:24px 0 12px}
.emaus-mis-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.emaus-mis-search-label{font-weight:800;font-size:14px;color:var(--emaus-text)}
.emaus-mis-list-search{flex:1;min-width:200px;max-width:420px;height:42px;border:1px solid #cfd8e2;border-radius:10px;padding:0 14px;font-size:14px}
.emaus-mis-list-search:focus{outline:none;border-color:var(--emaus-azul);box-shadow:0 0 0 3px rgba(74,111,132,.15)}
.emaus-mis-table-scroll{width:100%;overflow-x:auto;border-radius:12px;border:1px solid #e2e8ef;background:#fff;box-shadow:0 4px 16px rgba(44,58,69,.06)}
.emaus-mis-table{width:100%;border-collapse:collapse;font-size:14px}
.emaus-mis-table thead th{text-align:left;padding:12px 14px;background:#f0f4f7;color:var(--emaus-azul);font-weight:800;border-bottom:1px solid #dde3e8;white-space:nowrap}
.emaus-mis-table tbody td{padding:12px 14px;border-bottom:1px solid #eef1f4;color:var(--emaus-text);vertical-align:middle}
.emaus-mis-table tbody tr:last-child td{border-bottom:none}
.emaus-mis-table tbody tr:hover td{background:#fafcfd}
.emaus-mi-table-badge{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:999px;background:#e8eef2;color:var(--emaus-azul)}
.emaus-mis-col-action{text-align:right;white-space:nowrap}
.emaus-btn--sm{height:38px;padding:0 14px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;width:auto}
@media (max-width:720px){
	.emaus-mis-table thead{display:none}
	.emaus-mis-table tbody tr{display:block;border-bottom:1px solid #eef1f4;padding:12px 14px}
	.emaus-mis-table tbody td{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border:none;position:relative}
	.emaus-mis-table tbody td::before{content:attr(data-label);font-weight:800;color:var(--emaus-azul);flex:0 0 42%;pointer-events:none}
	.emaus-mis-col-action{text-align:left}
	.emaus-mis-col-action::before{flex-basis:42%}
	.emaus-mis-edit-link{position:relative;z-index:1}
}

