/* Central design system overrides · 2026-03-26 */
:root{
  --ds-radius-xs:12px;
  --ds-radius-sm:16px;
  --ds-radius-md:22px;
  --ds-radius-lg:28px;
  --ds-shadow-sm:0 12px 24px rgba(15,23,42,.06);
  --ds-shadow-md:0 18px 38px rgba(15,23,42,.08);
  --ds-line:rgba(15,23,42,.08);
  --ds-surface:#ffffff;
  --ds-surface-soft:#f7f9fc;
  --ds-text:#0f172a;
  --ds-muted:#5b6475;
  --ds-primary:#00aeef;
  --ds-primary-deep:#0b2c3d;
  --ds-success:#0f766e;
  --ds-danger:#b91c1c;
  --ds-space-1:.5rem;
  --ds-space-2:.75rem;
  --ds-space-3:1rem;
  --ds-space-4:1.25rem;
  --ds-space-5:1.5rem;
  --ds-space-6:2rem;
  --ds-control-h:44px;
  --ds-control-h-sm:40px;
  --ds-font-ui:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html{font-family:var(--ds-font-ui);}
img{max-width:100%;height:auto}
.u-stack{display:grid;gap:var(--ds-space-4)}
.u-stack-sm{display:grid;gap:var(--ds-space-3)}
.u-split{display:flex;justify-content:space-between;gap:var(--ds-space-4);align-items:flex-start;flex-wrap:wrap}
.u-muted{color:var(--ds-muted)}
.u-soft-card{background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);border:1px solid var(--ds-line);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-sm)}
.u-kicker{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .8rem;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.u-chip-list{display:flex;flex-wrap:wrap;gap:.625rem}
.u-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border-radius:999px;background:#fff;border:1px solid var(--ds-line);color:var(--ds-text);font-weight:700;font-size:.9rem}
.u-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ds-space-4)}
.u-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ds-space-4)}
.u-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ds-space-4)}
.section__text,.small-muted{line-height:1.6}
.button,button,.admin-chip,.admin-logout{
  min-height:var(--ds-control-h-sm);
  border-radius:14px;
  font-weight:800;
}
.button,button{
  padding:.72rem 1rem;
  font-size:.95rem;
  line-height:1.2;
}
.button--ghost{
  background:#fff;
  border:1px solid var(--ds-line);
  color:var(--ds-text);
}
.button--secondary{
  background:#f8fafc;
  border:1px solid #dbe3ef;
  color:var(--ds-text);
}
.button--success{
  box-shadow:0 12px 24px rgba(15,23,42,.08);
}
.button span,.admin-chip span,button span{white-space:nowrap}
input,select,textarea{
  min-height:var(--ds-control-h);
  border-radius:16px !important;
  border:1px solid #d8e2ee !important;
  background:#fff !important;
  color:var(--ds-text) !important;
  box-shadow:none;
}
textarea{min-height:120px;padding-top:.9rem;padding-bottom:.9rem;resize:vertical}
input:focus,select:focus,textarea:focus{
  border-color:rgba(0,174,239,.6) !important;
  box-shadow:0 0 0 4px rgba(0,174,239,.14) !important;
  outline:none;
}
label{display:grid;gap:.45rem;font-weight:600;color:var(--ds-text)}
label > span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  font-size:.93rem;
  line-height:1.35;
}
.field-error{font-size:.82rem}
.form-grid{gap:16px}
.form-actions{justify-content:flex-end;}
.form-actions .button,.form-actions button{width:auto !important;}
.table-wrap{border-radius:22px;overflow:auto;}
.admin-table th,.admin-table td{white-space:normal;}
.admin-table td{color:var(--ds-text);}
.empty-state{display:grid;gap:.5rem;place-items:center;}
.admin-content .admin-shell,.admin-content .admin-view{display:grid;gap:22px;}
.admin-content .admin-header,.admin-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;}
.admin-content .admin-header .section__title,.admin-page-header .section__title{margin-bottom:.4rem;}
.admin-content form.panel,.admin-content .panel form,.admin-content .admin-form-card{gap:18px;}
.admin-content form.panel,.admin-content .admin-form-card{padding:22px;border-radius:28px;}
.admin-content form.panel label,.admin-content .panel label,.admin-content .admin-form-card label{font-size:inherit;}
.admin-content .grid[style*="grid-template-columns:180px"]{grid-template-columns:220px minmax(0,1fr) !important;}
.admin-avatar-panel,.admin-media-pane{display:grid;gap:12px;align-content:start;padding:16px;border-radius:24px;border:1px solid var(--ds-line);background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);}
.admin-avatar-frame{width:min(180px,100%);aspect-ratio:1/1;border-radius:24px;overflow:hidden;border:1px solid #dbe3ef;background:#fff;display:grid;place-items:center;}
.admin-avatar-frame img{width:100%;height:100%;object-fit:cover;}
.admin-form-split{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start;}
.admin-fieldset{display:grid;gap:16px;padding:18px;border-radius:24px;border:1px solid var(--ds-line);background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);}
.admin-fieldset__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
.admin-form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:4px;}
.admin-toolbar-row{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;}
.admin-toolbar-row__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.admin-dashboard{gap:24px;}
.admin-dashboard__section{display:grid;gap:18px;}
.admin-hero{padding:30px;border-radius:32px;}
.admin-hero__actions{align-items:flex-start;}
.admin-hero .admin-chip{min-height:38px;padding:.62rem .95rem;}
.admin-hero__metrics{margin-top:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.admin-hero-metric{padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);display:grid;gap:.25rem;}
.admin-hero-metric span{color:rgba(230,237,245,.82);font-size:.86rem;}
.admin-hero-metric strong{font-size:1.6rem;color:#fff;}
.admin-chip-group,.admin-period-switch{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.admin-period-switch a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.62rem .95rem;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid #dbe3ef;background:#fff;color:var(--ds-text);}
.admin-period-switch a.is-active{background:#0f172a;color:#fff;border-color:#0f172a;}
.admin-analytics{max-width:1320px;margin:0 auto;display:grid;gap:22px;}
.admin-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.admin-kpi-card{display:grid;gap:.4rem;padding:20px;border-radius:24px;border:1px solid var(--ds-line);background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);box-shadow:var(--ds-shadow-sm);}
.admin-kpi-card__label{color:var(--ds-muted);font-size:.88rem;}
.admin-kpi-card__value{font-size:1.95rem;font-weight:900;color:var(--ds-text);}
.admin-kpi-card__note{color:var(--ds-muted);font-size:.82rem;}
.admin-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.admin-ranking-card{display:grid;gap:14px;padding:22px;border-radius:28px;border:1px solid var(--ds-line);background:#fff;box-shadow:var(--ds-shadow-sm);}
.admin-ranking-card__head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap;}
.admin-ranking-card__title{margin:0;font-size:1.28rem;}
.admin-ranking-list{display:grid;gap:10px;}
.admin-ranking-item{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:18px;border:1px solid var(--ds-line);background:#fff;}
.admin-ranking-item__copy{display:grid;gap:.25rem;}
.admin-ranking-item__copy span{color:var(--ds-muted);font-size:.84rem;}
.admin-ranking-item strong{font-size:1.05rem;}
.admin-ranking-card .empty-state{min-height:180px;}
.admin-config-card,.settings-overview-card{padding:18px;border-radius:24px;border:1px solid var(--ds-line);background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);}
.admin-config-card__links,.settings-overview-card__links{display:flex;flex-wrap:wrap;gap:10px;}
.admin-config-toolbar{padding:16px 18px;border-radius:24px;border:1px solid var(--ds-line);background:#fff;}
.admin-config-toolbar__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.admin-module-item__link,.admin-module-item__link--disabled{display:inline-flex;align-items:center;gap:10px;text-decoration:none;}
.admin-module-item__link--disabled{opacity:.72;}
.admin-stat-card__icon{width:32px;height:32px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;}
.admin-form-note{padding:14px 16px;border-radius:18px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;}
.property-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;}
.property-detail-main{display:grid;gap:18px;}
.property-detail-card{display:grid;gap:16px;}
.property-detail-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;}
.property-title-wrap{display:grid;gap:10px;}
.property-gallery-v2{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;}
.property-gallery-stage{position:relative;overflow:hidden;border-radius:26px;border:1px solid #e5edf6;background:linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%);aspect-ratio:16/10;min-height:0;display:grid;place-items:center;padding:14px;}
.property-gallery-stage img{width:100%;height:100%;object-fit:contain;display:block;border-radius:20px;background:#fff;}
.property-gallery-stage--interactive,.public-simple-gallery__stage--interactive{cursor:zoom-in;}
.property-gallery-stage__hint{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;padding:.55rem .78rem;border-radius:999px;background:rgba(15,23,42,.68);color:#fff;font-size:.82rem;font-weight:700;backdrop-filter:blur(10px);box-shadow:0 10px 24px rgba(15,23,42,.18);pointer-events:none;}
.property-gallery-stage__hint .mi{font-size:1rem;}
.property-lightbox{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;}
.property-lightbox__backdrop{position:absolute;inset:0;background:rgba(2,6,23,.78);backdrop-filter:blur(6px);}
.property-lightbox__dialog{position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:min(1120px,calc(100vw - 48px));max-height:calc(100vh - 48px);padding:22px;border-radius:28px;background:rgba(15,23,42,.2);border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 80px rgba(15,23,42,.38);overflow:hidden;}
.property-lightbox__figure{margin:0;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;touch-action:none;}
.property-lightbox__figure img{display:block;max-width:100%;max-height:calc(100vh - 120px);width:auto;height:auto;object-fit:contain;border-radius:22px;background:#fff;transform-origin:center center;transition:transform .18s ease;will-change:transform;cursor:zoom-in;user-select:none;-webkit-user-drag:none;}
.property-lightbox__close,.property-lightbox__nav,.property-lightbox__control{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:46px;border:none;border-radius:999px;background:rgba(255,255,255,.94);color:#0f172a;box-shadow:0 12px 28px rgba(15,23,42,.18);cursor:pointer;}
.property-lightbox__close{position:absolute;top:12px;right:12px;}
.property-lightbox__nav .mi,.property-lightbox__close .mi,.property-lightbox__control .mi{font-size:1.2rem;}
.property-lightbox__controls{position:absolute;top:12px;left:12px;z-index:3;display:flex;gap:8px;align-items:center;}
.property-lightbox__figure.is-zoomed img{cursor:grab;}
.property-lightbox__figure.is-zoomed img.is-dragging{cursor:grabbing;transition:none;}

.property-gallery-rail{display:flex;flex-direction:row;align-items:stretch;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;scrollbar-width:thin;scroll-snap-type:x proximity;white-space:nowrap;-webkit-overflow-scrolling:touch;}
.property-gallery-thumb{flex:0 0 118px;width:118px;padding:0;border:none;background:linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%);border-radius:18px;overflow:hidden;border:2px solid transparent;box-shadow:none;scroll-snap-align:start;}
.property-gallery-thumb.is-active{border-color:rgba(0,174,239,.58);box-shadow:0 0 0 4px rgba(0,174,239,.12);}
.property-gallery-thumb img{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;display:block;background:#fff;padding:0;}
.property-body-copy{margin:0;color:#334155;line-height:1.78;white-space:pre-line;}
.property-video-frame{position:relative;padding-top:56.25%;border-radius:22px;overflow:hidden;background:#eef3f8;}
.property-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.property-contact-list{display:grid;gap:10px;color:#334155;}
.property-contact-list div{display:flex;gap:10px;align-items:flex-start;}
.property-agent-summary{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;}
.property-agent-summary img{width:72px;height:72px;object-fit:cover;border-radius:22px;}
.property-map-frame iframe{width:100%;height:340px;border:0;}
.property-amenities{display:flex;flex-wrap:wrap;gap:10px;}
.property-amenities .u-chip{pointer-events:none;}
.property-contact-actions{display:grid;gap:10px;}
.valuation-shell{gap:0;}
.valuation-filter-card,.valuation-form-card,.map-list-card{padding:22px;}
.valuation-form-card{display:grid;gap:16px;}
.valuation-form-card__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;}
.valuation-form-card__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.valuation-form-drawer{display:none;gap:16px;}
.valuation-form-drawer.is-open{display:grid;}
.valuation-form-drawer__intro{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap;padding:16px 18px;border-radius:22px;border:1px solid rgba(0,174,239,.16);background:linear-gradient(180deg,#f8fcff 0%,#eef8ff 100%);}
.valuation-form-drawer__intro p{margin:0;color:#334155;}
.valuation-map-band{padding-top:22px;background:linear-gradient(180deg,transparent 0%,rgba(15,23,42,.015) 100%);}
.valuation-map-band__head{margin-bottom:2px;}
.valuation-map-canvas{box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 20px 40px rgba(15,23,42,.08);}
.valuation-empty-copy{display:grid;gap:8px;justify-items:center;margin-top:10px;}
.valuation-inline-action{padding:.46rem .78rem !important;min-height:34px !important;font-size:.83rem !important;border-radius:999px !important;}
.valuation-map-pin{background:transparent;border:none;}
.valuation-map-pin__stack{position:relative;display:inline-grid;place-items:center;width:100%;height:100%;}
.valuation-map-pin__fallback,.valuation-map-pin__image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
.valuation-map-pin__fallback{filter:drop-shadow(0 10px 18px rgba(15,23,42,.16));}
.valuation-map-pin__image{border-radius:999px;object-fit:cover;padding:5px;}
.valuation-record-card{display:grid;gap:10px;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:14px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);box-shadow:0 12px 24px rgba(15,23,42,.05);}
.valuation-record-card__head{display:flex;gap:12px;align-items:flex-start;}
.valuation-record-card__media{width:92px;height:78px;border-radius:14px;object-fit:cover;border:1px solid #e5edf6;background:#fff;}
.valuation-record-card__body{display:grid;gap:4px;min-width:0;}
.valuation-record-card__body strong{color:var(--ds-text);}
.valuation-record-card__meta{display:flex;gap:8px;flex-wrap:wrap;}
.valuation-record-card__meta .u-chip{font-size:.8rem;padding:.42rem .72rem;}
.valuation-form .button,.valuation-card-actions .button{width:auto;}
.valuation-form .form-grid > label,.valuation-form .valuation-location-grid > label{align-content:start;}
.valuation-filters-grid label select,.valuation-filters-grid label input{min-height:42px;}
.valuation-map-section{padding-top:18px;padding-bottom:0;}
.valuation-map-stage-card{gap:18px;}
.valuation-map-stage-card__frame{overflow:hidden;border-radius:24px;border:1px solid rgba(15,23,42,.08);background:#fff;}
.valuation-map-stage-canvas{display:block;width:100%;height:var(--map-canvas-height,min(78vh,860px));min-height:var(--map-canvas-height,min(78vh,860px));border:0;background:#f7fafc;}
.valuation-map-stage-card__actions .button[aria-disabled="true"],.valuation-map-stage-card__actions .button.is-disabled{pointer-events:none;opacity:.6;}
.valuation-stage-insights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.valuation-insight-card{display:grid;gap:8px;padding:14px 16px;border-radius:20px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:0 10px 22px rgba(15,23,42,.04);}
.valuation-insight-card__label{display:inline-flex;align-items:center;gap:8px;font-size:.83rem;font-weight:700;color:#64748b;}
.valuation-insight-card strong{font-size:1rem;color:var(--ds-text);line-height:1.2;}
.valuation-record-card{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
.valuation-record-card:hover,.valuation-record-card:focus-visible{border-color:rgba(15,118,110,.26);box-shadow:0 16px 28px rgba(15,23,42,.08);outline:none;}
.valuation-record-card.is-active{border-color:rgba(15,118,110,.34);background:linear-gradient(180deg,rgba(15,118,110,.05),#fff);box-shadow:0 18px 34px rgba(15,23,42,.09);}
.valuation-record-card:focus-visible{box-shadow:0 0 0 3px rgba(0,174,239,.18),0 16px 28px rgba(15,23,42,.08);}
.valuation-card-actions{align-items:center;}
.valuation-map-popup{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;min-width:240px;}
.valuation-map-popup__media{width:84px;height:84px;border-radius:14px;object-fit:cover;border:1px solid rgba(15,23,42,.08);}
.valuation-map-popup__body{display:grid;gap:6px;min-width:0;}
.map-page-hero,.detail-card,.panel,.property-card,.contact-card,.contact-map,.agent-card,.agent-profile__card{border-radius:28px;}
.map-list-card__head h3,.property-map-card__head h2,.detail-card .panel__title{line-height:1.14;}
.map-list-card__head{gap:14px;}
@media (max-width:1200px){.admin-grid--3,.u-grid-4,.admin-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.property-detail-shell{grid-template-columns:1fr}}
@media (max-width:1080px){.admin-content .grid[style*="grid-template-columns:180px"],.admin-form-split,.u-grid-3,.admin-analytics-grid{grid-template-columns:1fr !important}.property-gallery-v2{grid-template-columns:1fr}}
@media (max-width:820px){.admin-hero{padding:22px}.admin-hero__metrics,.admin-split,.admin-stat-grid,.admin-kpi-strip,.u-grid-2{grid-template-columns:1fr}.valuation-location-grid{grid-template-columns:1fr}.valuation-stage-insights{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){:root{--ds-control-h:42px;--ds-control-h-sm:38px}.button,button{padding:.68rem .92rem;font-size:.91rem}.admin-chip{min-height:36px;padding:.58rem .82rem;font-size:.87rem}.admin-topbar__right{gap:8px}.admin-topbar__right .admin-chip{flex:0 1 auto;max-width:100%}.admin-topbar__right .admin-chip span{overflow:hidden;text-overflow:ellipsis}.form-actions{justify-content:stretch}.form-actions .button,.form-actions button,.admin-form-actions .button,.admin-form-actions button{width:100% !important}.property-gallery-stage{aspect-ratio:16/10;min-height:auto;padding:10px}.property-gallery-stage img{object-fit:contain;object-position:center}.property-gallery-stage__hint{right:10px;bottom:10px;padding:.5rem .7rem;font-size:.78rem}.property-gallery-rail{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;grid-template-columns:none}.property-gallery-thumb{flex:0 0 96px}.property-gallery-thumb img{aspect-ratio:16/10;height:auto}.property-lightbox{padding:12px}.property-lightbox__dialog{width:min(100vw - 24px,1120px);max-height:calc(100vh - 24px);padding:54px 10px 10px;grid-template-columns:1fr;gap:10px}.property-lightbox__figure img{max-height:calc(100vh - 120px)}.property-lightbox__close{top:8px;right:8px}.property-lightbox__controls{top:8px;left:8px}.property-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%)}.property-lightbox__nav--prev{left:8px}.property-lightbox__nav--next{right:8px}.valuation-filter-card,.valuation-form-card,.map-list-card{padding:16px}.valuation-form-card__actions,.valuation-card-actions,.valuation-toolbar-head,.valuation-map-band__head,.valuation-map-stage-card__head,.valuation-map-stage-card__actions{width:100%}.valuation-card-actions .button{width:100%;justify-content:center}.valuation-map-canvas,.valuation-map-stage-canvas{height:var(--valuation-map-height-mobile,68dvh);min-height:var(--valuation-map-height-mobile,68dvh)}.valuation-record-card__head{flex-direction:column}.valuation-record-card__media{width:100%;height:180px}.valuation-stage-insights{grid-template-columns:1fr}.valuation-map-popup{grid-template-columns:1fr}.valuation-map-popup__media{width:100%;height:160px}.property-contact-actions .button{width:100%;justify-content:center}}


/* Pass 4 · homologación pública y admin */
.section-gap-xl{gap:24px !important}
.section-gap-md{gap:18px !important}
.section-pad-top-sm{padding-top:10px !important}
.section-pad-top-md{padding-top:18px !important}
.section-pad-top-lg{padding-top:24px !important}
.section-pad-bottom-none{padding-bottom:0 !important}
.section-pad-bottom-sm{padding-bottom:10px !important}
.section-pad-y-md{padding-top:18px !important;padding-bottom:18px !important}
.stack-grid{display:grid;gap:18px}
.stack-grid-sm{display:grid;gap:10px}
.inline-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.inline-actions--end{justify-content:flex-end}
.empty-state--fill{height:100%;display:grid;place-items:center}
.panel__title--flush{margin:0 !important}
.panel__title--lg{font-size:1.45rem !important}
.small-muted--spaced{margin-bottom:8px !important}
.public-simple-gallery{display:grid;gap:14px}

.public-simple-gallery__stage{position:relative;overflow:hidden;border-radius:20px;background:linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%);padding:12px;}
.public-simple-gallery__stage img{width:100%;display:block;border-radius:18px;aspect-ratio:16/10;object-fit:contain;border:1px solid rgba(15,23,42,.08);background:#fff;padding:12px}
.public-simple-gallery__grid{display:flex;flex-direction:row;align-items:stretch;gap:12px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;scrollbar-width:thin;scroll-snap-type:x proximity;white-space:nowrap;-webkit-overflow-scrolling:touch}
.public-simple-gallery__item{flex:0 0 180px;width:180px;display:block;padding:0;border:none;background:transparent;border-radius:14px;overflow:hidden;border:2px solid transparent;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;scroll-snap-align:start}
.public-simple-gallery__item.is-active{border-color:rgba(0,174,239,.58);box-shadow:0 0 0 4px rgba(0,174,239,.12)}
.public-simple-gallery__item:hover,.public-simple-gallery__item:focus-visible{border-color:rgba(0,174,239,.34);outline:none}
.public-simple-gallery__grid img{width:100%;display:block;border-radius:14px;aspect-ratio:16/10;object-fit:cover;border:1px solid rgba(15,23,42,.08);background:#fff;padding:0}
.related-card-lite,.agent-card-lite{display:grid;gap:0;border:1px solid rgba(15,23,42,.08);border-radius:22px;overflow:hidden;background:#fff;box-shadow:var(--ds-shadow-sm)}
.related-card-lite__media,.agent-card-lite__media{aspect-ratio:16/10;background:#eef3f8}
.related-card-lite__media,.agent-card-lite__media{display:grid;place-items:center}.related-card-lite__media img,.agent-card-lite__media img{width:100%;height:100%;object-fit:contain;background:#fff;padding:8px}
.related-card-lite__body,.agent-card-lite__body{padding:16px;display:grid;gap:8px}
.related-card-lite__link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--ds-primary);text-decoration:none}
.agent-card-lite__body h3{margin:0;font-size:1.1rem}
.agent-card-lite__meta{margin:0;color:var(--ds-muted)}
.search-form-shell{display:grid;gap:14px}
.cta-strip-v2{padding:28px;border-radius:28px;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:#fff;border:1px solid rgba(255,255,255,.08);box-shadow:var(--ds-shadow-md)}
.cta-strip-v2__inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center}
.cta-strip-v2__copy{max-width:760px;display:grid;gap:8px}
.cta-strip-v2__eyebrow{width:max-content}
.cta-strip-v2__title{margin:0;color:#fff;font-size:clamp(1.55rem,2vw,1.9rem);line-height:1.08}
.cta-strip-v2__text{margin:0;color:rgba(255,255,255,.84)}
.contact-channels-grid{display:grid;gap:10px}
.contact-layout .empty-state--fill{border-radius:24px}
.directory-contact-stack{display:grid;gap:10px}
.avatar-thumb-48{width:48px;height:48px;border-radius:50%;object-fit:cover}
.admin-page{display:grid;gap:22px}
.admin-page__inner{max-width:1280px;margin:0 auto;padding:0 20px;display:grid;gap:22px}
.admin-eyebrow{font-size:13px;color:#042C12;font-weight:700;margin-bottom:6px}
.admin-title-lg{margin:0;font-size:clamp(2rem,3vw,2.375rem)}
.admin-copy{margin:10px 0 0;color:#64748b}
.admin-filter-card{background:#fff;border:1px solid #e5edf6;border-radius:24px;padding:18px;box-shadow:0 16px 34px rgba(15,23,42,.06)}
.admin-filter-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}
.admin-filter-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-lead-contact{display:grid;gap:2px}
.admin-lead-contact strong{font-weight:800}
.admin-muted-sm{font-size:13px;color:#64748b}
.admin-cell-message{max-width:320px}
.admin-status-form{display:grid;gap:8px;min-width:150px}
.admin-avatar-note{margin-bottom:8px}
.admin-table-card__body-gap{margin-top:14px}
.settings-card-grid{display:grid;gap:22px}
.settings-form-stack{display:grid;gap:18px}
.settings-role-card{padding:16px;display:grid;gap:12px;background:#fcfcfc;border:1px solid var(--ds-line);border-radius:24px}
.settings-role-head{display:grid;gap:4px}
.settings-check-grid{display:grid;gap:16px}
.settings-check-tile{align-items:flex-start;padding:14px 16px;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.04);}
.settings-check-tile span:last-child{font-weight:700;color:#0f172a;}
.settings-check-row{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(15,23,42,.08);padding:12px;border-radius:14px;background:#fff}
.settings-check-copy{display:grid;gap:4px}
.map-page-shell{gap:24px}
.map-stage-meta-copy{display:grid;gap:8px;justify-items:center;margin-top:10px}
.map-section-card{padding-top:18px;padding-bottom:18px}
.map-stage-kicker{margin-bottom:4px !important}
.valuation-actions-end{justify-content:flex-end}
.valuation-media-upload{display:grid;gap:12px}
.valuation-divider{margin:20px 0;border:none;border-top:1px solid rgba(15,23,42,.08)}
.valuation-media-title{display:block;margin-bottom:4px}
.valuation-item-copy{display:grid;gap:4px;min-width:0}
.valuation-item-tags{display:flex;flex-wrap:wrap;gap:6px}
.admin-agent-panel{padding:8px 0 28px}
.panel-grid{display:grid;gap:18px}
.panel-grid-soft{display:grid;gap:18px}
.panel-grid-soft.panel{padding:22px}
.section-head-split{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.section-head-center{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.mt-14{margin-top:14px !important}
.mt-12{margin-top:12px !important}
.text-center{text-align:center !important}
.settings-overview-grid--wide{max-width:760px !important}
.field-align-end{align-self:end !important}
.property-map-embed{width:100%;height:240px;border:0}
.gallery-empty-state{grid-column:1/-1}
.admin-profile-view{padding:10px 0 32px}
.admin-list--spaced{margin-top:14px}
.admin-row-split{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.property-admin-meta{margin-top:6px}
.table__actions--end{justify-content:flex-end}
.settings-pin-title{font-size:1.05rem !important}
.checkbox-inline--stack{margin-top:12px;display:inline-flex;align-items:center;gap:10px}
.upload-preview-grid--spaced{margin-top:14px}
.upload-preview-card__media--pin{display:grid;place-items:center;background:linear-gradient(135deg,#f8fafc,#eef3f8)}
.upload-preview-card__media--pin img{width:64px;height:auto;object-fit:contain}
.small-muted--top{margin-top:12px}
.table-wrap--spaced{margin-top:14px}
.gallery-missing-file{display:grid;place-items:center}
[data-admin-property-grid]{display:grid;gap:14px}
.public-agent-card{padding:18px;border:1px solid #ddd;background:#fff;border-radius:20px;display:grid;gap:16px}
.public-agent-card__grid{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center}
.public-agent-card__media img{width:100%;display:block;border-radius:16px}
.public-agent-card__copy{display:grid;gap:8px}
.public-facts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.form-margin-reset{margin:0 !important}
@media (max-width:1080px){.admin-page__inner{padding:0 16px}.admin-filter-grid{grid-template-columns:1fr}}
@media (max-width:840px){.cta-strip-v2__inner{display:grid}}
@media (max-width:720px){.section-pad-top-lg{padding-top:18px !important}.map-section-card{padding-top:12px;padding-bottom:12px}.admin-page__inner{padding:0 14px}.inline-actions,.admin-filter-actions{width:100%}.inline-actions .button,.inline-actions button,.admin-filter-actions .button,.admin-filter-actions button{width:100%}.admin-agent-panel{padding:4px 0 20px}.public-simple-gallery__grid{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden}.public-agent-card__grid,.public-facts-grid{grid-template-columns:1fr}}


/* Pass 4.1 · remates de homologación */
.admin-lead-name{font-weight:700;}
.admin-contact-meta{font-size:13px;color:var(--muted-2);}
.admin-message-cell{max-width:320px;}
.admin-status-form{display:grid;gap:8px;min-width:150px;}
.admin-status-select{border:1px solid var(--line);border-radius:12px;padding:9px 12px;background:#fff;}
.admin-status-submit{padding:9px 12px;}
.admin-shell-tight{gap:14px;}
.property-admin-meta-compact{margin-top:6px;}
.table__actions--end{justify-content:flex-end;}
.form-inline-reset{margin:0;}
.admin-list--mt{margin-top:14px;}
.dashboard-list-row{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}

.valuation-form-card--info-only .valuation-form-card__head{align-items:center}.valuation-form-card__head--stacked{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.valuation-form-card--info-only .valuation-form-card__actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width:768px){.valuation-form-card--info-only .valuation-form-card__actions{width:100%}.valuation-form-card--info-only .valuation-form-card__actions .button{width:100%}}

/* Pass 10 · valuación bulk actions + csv reception */
.button--danger{background:#b91c1c;border:1px solid #991b1b;color:#fff;box-shadow:0 12px 24px rgba(185,28,28,.16)}
.button--danger:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.u-hidden{display:none !important}
.valuation-review-toolbar{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.valuation-select-col{width:52px;min-width:52px;text-align:center}
.valuation-select-col.is-hidden{display:none}
.valuation-row-checkbox,#valuationSelectAllCheckbox{width:18px;height:18px;min-height:18px;border-radius:6px !important;accent-color:var(--ds-primary)}
@media (max-width:720px){.valuation-review-toolbar{width:100%;justify-content:stretch}.valuation-review-toolbar .button{width:100%}}
