.property-comparison-add,
.property-comparison-close,
.property-comparison-remove,
.property-comparison-retry {
    box-sizing: border-box;
    border: 1px solid var(--site-others, #00675e);
    border-radius: 5px;
    padding: 10px 14px;
    background: var(--site-others, #00675e);
    color: #fff;
    font: inherit;
    cursor: pointer;
}
.property-comparison-toggle { clear: both; box-sizing: border-box; width: 95%; font-family: inherit; }
.property-comparison-add { float: left; clear: both; display: block; width: 100%; margin-top: 12px; }
.property-comparison-add:disabled { opacity: .65; cursor: default; }
.property-comparison-panel {
    display: flex;
    flex-direction: column;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 160;
    box-sizing: border-box;
    max-height: 65vh;
    overflow: hidden;
    padding: 18px max(16px, calc((100% - 1000px) / 2));
    border-top: 3px solid var(--site-others, #00675e);
    background: #fff;
    color: #243239;
    box-shadow: 0 -5px 24px rgba(0, 0, 0, .18);
    font-size: 14px;
    overscroll-behavior: contain;
}
.property-comparison-panel[hidden],
.property-comparison-panel [hidden] { display: none !important; }
.property-comparison-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; }
.property-comparison-header,
.property-comparison-status,
.property-comparison-slots,
.property-comparison-options,
.property-comparison-retry { flex-shrink: 0; }
.property-comparison-header h2 { min-width: 0; margin: 0; font-size: 20px; }
.property-comparison-close { flex: none; margin-left: auto; }
.property-comparison-status { margin: 10px 0; line-height: 1.4; }
.property-comparison-slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.property-comparison-slot {
    box-sizing: border-box;
    min-height: 78px;
    padding: 12px;
    border: 2px dashed #9aa9ac;
    border-radius: 6px;
    background: #f5f8f8;
}
.property-comparison-slot.is-filled { border-style: solid; border-color: var(--site-others, #00675e); }
.property-comparison-slot.is-drop-target { border-color: #087a68; background: #dcf4e9; }
.property-comparison-slot-title { margin: 0 0 8px; line-height: 1.4; overflow-wrap: anywhere; }
.property-comparison-remove { padding: 5px 10px; font-size: 12px; }
.property-comparison-options { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 12px 0; }
.property-comparison-options label { display: inline-flex; align-items: center; gap: 7px; cursor: pointer; }
.property-comparison-options input { margin: 0; accent-color: var(--site-others, #00675e); }
.property-comparison-options p { margin: 0; font-size: 12px; }
.property-comparison-results { flex: 1 1 auto; min-height: 0; margin-top: 12px; overflow: auto; }
.property-comparison-table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: left; }
.property-comparison-table th,
.property-comparison-table td { width: 35%; padding: 10px 12px; border-bottom: 1px solid #dbe2e3; vertical-align: top; line-height: 1.4; overflow-wrap: anywhere; }
.property-comparison-table th:first-child { width: 30%; }
.property-comparison-table thead th { position: sticky; top: 0; z-index: 1; background: #eef4f4; }
.property-comparison-table .is-different td { background: #fff6df; }
.property-comparison-table .is-confirmed { font-weight: bold; }
body.property-comparison-active .resultado-right { padding-bottom: 65vh; }
body.property-comparison-active .resultado-call { cursor: grab; }
body.property-comparison-active .resultado-call.is-dragging { opacity: .65; }
.property-comparison-panel button:focus-visible,
.property-comparison-toggle:focus-visible,
.property-comparison-add:focus-visible,
.property-comparison-results:focus-visible { outline: 3px solid #d68000; outline-offset: 3px; }
@media (max-width: 720px) {
    .property-comparison-panel { padding: 12px; max-height: 60vh; }
    .property-comparison-panel.is-complete { top: 0; height: 100%; max-height: none; }
    .property-comparison-header h2 { font-size: 18px; }
    .property-comparison-slots { gap: 8px; }
    .property-comparison-slot { padding: 8px; }
    .property-comparison-slot-title { font-size: 12px; }
    .property-comparison-table th,
    .property-comparison-table td { padding: 8px; font-size: 13px; }
}
