/* ============================================================
   TESTA – WYSZUKIWARKA MIESZKAŃ
   Czytelna wersja CSS z komentarzami

   SZYBKA EDYCJA – najczęściej zmieniane miejsca:

   1) Główne kolory:
      sekcja :root na początku pliku

   2) Wielkość rzutu mieszkania na kafelku:
      .testa-card-preview
      .testa-plan-thumb
      .testa-plan-canvas-wrap

   3) Teksty „Pokoje / Metraż / Piętro”:
      .testa-card-grid span   = małe etykiety
      .testa-card-grid strong = wartości

   4) Status DOSTĘPNE / REZERWACJA / SPRZEDANE:
      .testa-card-status
      .status-available / .status-reserved / .status-sold

   5) Tło dolnej części kafelka:
      .testa-card-body

   6) Układ filtrów:
      .testa-filters
      .testa-filter-wide
      .testa-filter-rooms
      .testa-filter-status

   7) Telefon / tablet:
      sekcje @media na końcu pliku

   WSKAZÓWKA:
   Jeśli chcesz coś testować, zmieniaj po jednej wartości i odświeżaj
   stronę po wyczyszczeniu cache CSS / WP Rocket.
   ============================================================ */

/* ============================================================
   01. KOLORY I ZMIENNE GLOBALNE
   ============================================================ */
:root {
    --testa-red:#9f1d2d;
    --testa-red-dark:#7f1623;
    --testa-ink:#202124;
    --testa-muted:#6f7278;
    --testa-line:#e6e6e6;
    --testa-soft:#f6f6f4;
    --testa-green:#16845b;
    --testa-orange:#bd6f12;
    --testa-grey:#8a8d92;
    --testa-radius:18px;
    --testa-shadow:0 16px 42px rgba(20,20,20,.08);
}
/* ============================================================
   02. GŁÓWNY KONTENER + HERO + STATYSTYKI
   ============================================================ */
.testa-search {
    font-family:inherit;
    color:var(--testa-ink);
    max-width:1440px;
    margin:0 auto;
    position:relative;
}
.testa-search * {
    box-sizing:border-box;
}
.testa-search button,.testa-search input,.testa-search select {
    font:inherit;
}
.testa-hero {
    padding:38px 0 26px;
}
.testa-eyebrow {
    display:inline-block;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    color:var(--testa-red);
    margin-bottom:10px;
}
.testa-hero h1,.testa-finder-head h2 {
    margin:0;
    color:var(--testa-ink);
    line-height:1.08;
}
.testa-hero h1 {
    font-size:clamp(34px,5vw,66px);
    max-width:90%;
}
.testa-hero>p {
    font-size:18px;
    line-height:1.65;
    color:var(--testa-muted);
    max-width:90%;
    margin:18px 0 0;
}
.testa-stats {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:30px;
}
.testa-stat {
    background:#fff;
    border:1px solid var(--testa-line);
    border-radius:16px;
    padding:20px 18px;
    min-height:98px;
    box-shadow:0 8px 28px rgba(0,0,0,.035);
}
.testa-stat strong {
    display:block;
    font-size:28px;
    line-height:1.05;
    margin-bottom:8px;
}
.testa-stat span {
    font-size:13px;
    color:var(--testa-muted);
}
/* ============================================================
   03. LOADER, KOMUNIKATY I ELEMENTY UKRYWANE
   ============================================================ */
.testa-loader {
    display:flex;
    align-items:center;
    gap:12px;
    padding:22px 0;
    color:var(--testa-muted);
}
.testa-loader span {
    width:22px;
    height:22px;
    border:3px solid #ddd;
    border-top-color:var(--testa-red);
    border-radius:50%;
    animation:testaSpin .8s linear infinite;
}
@keyframes testaSpin {
    to {
        transform:rotate(360deg);
    }
}
.testa-alert {
    padding:16px 18px;
    margin:12px 0 22px;
    border-radius:12px;
    border:1px solid #e7b6bd;
    background:#fff5f6;
    color:#731520;
}
.testa-alert strong {
    display:block;
    margin-bottom:5px;
}
.testa-content[hidden],.testa-loader[hidden],.testa-alert[hidden],.testa-cards[hidden],.testa-table-wrap[hidden],.testa-empty[hidden],.testa-more-wrap[hidden] {
    display:none!important;
}
/* ============================================================
   04. MAPA OPENSTREETMAP / LEAFLET
   ============================================================ */
.testa-map-wrap {
    border-radius:22px;
    overflow:hidden;
    border:1px solid var(--testa-line);
    box-shadow:var(--testa-shadow);
    background:#ecebe8;
    margin:16px 0 22px;
}
.testa-map {
    height:440px;
    min-height:300px;
}
.testa-map-fallback {
    height:100%;
    min-height:300px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:30px;
    color:var(--testa-muted);
}
.leaflet-container {
    font-family:inherit;
}
.testa-marker {
    background:transparent;
    border:0;
}
.testa-marker-dot {
    width:30px;
    height:30px;
    border-radius:50%;
    background:var(--testa-red);
    border:4px solid #fff;
    box-shadow:0 4px 15px rgba(0,0,0,.25);
}
.testa-popup strong {
    font-size:15px;
}
.testa-popup small {
    display:block;
    color:#777;
    margin-top:4px;
}
.testa-popup button {
    margin-top:10px;
    border:0;
    background:var(--testa-red);
    color:#fff;
    padding:8px 12px;
    border-radius:8px;
    cursor:pointer;
}
/* ============================================================
   05. KAFELKI INWESTYCJI NAD WYSZUKIWARKĄ
   ============================================================ */
.testa-investments {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin:0 0 52px;
}
.testa-investment-card {
    border:1px solid var(--testa-line);
    background:#fff;
    border-radius:18px;
    padding:20px;
    position:relative;
    transition:.2s ease;
    cursor:pointer;
}
.testa-investment-card:hover {
    transform:translateY(-2px);
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    border-color:#d2d2d2;
}
.testa-investment-card.is-active {
    outline:2px solid var(--testa-red);
    outline-offset:1px;
}
.testa-investment-logo {
    height:64px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    margin:0 0 14px;
}
.testa-investment-logo img {
    display:block;
    max-width:190px;
    max-height:58px;
    width:auto;
    height:auto;
    object-fit:contain;
}
.testa-investment-logo.is-empty {
    height:18px;
    margin-bottom:8px;
}
.testa-investment-card h3 {
    margin:0 0 5px;
    font-size:23px;
}
.testa-investment-card p {
    margin:0;
    color:var(--testa-muted);
    font-size:13px;
}
.testa-investment-meta {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:17px 0;
}
.testa-pill {
    background:var(--testa-soft);
    border-radius:999px;
    padding:7px 10px;
    font-size:12px;
    font-weight:700;
}
.testa-investment-card .testa-link {
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:var(--testa-red);
    font-weight:800;
    font-size:13px;
}
.testa-finder-head {
    margin:0 0 18px;
}
.testa-finder-head h2 {
    font-size:clamp(28px,4vw,44px);
}
/* ============================================================
   06. PANEL FILTRÓW
   ============================================================ */
.testa-filters {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:12px;
    align-items:end;
    border:1px solid var(--testa-line);
    background:#fff;
    border-radius:20px;
    padding:18px;
    box-shadow:0 10px 34px rgba(0,0,0,.04);
    position:relative;
    z-index:3;
}
.testa-filter-wide {
    grid-column:span 3;
}
.testa-filter-rooms {
    grid-column:span 4;
}
.testa-filters>.testa-filter:nth-child(3) {
    grid-column:span 2;
}
.testa-filters>.testa-filter:nth-child(4) {
    grid-column:span 2;
}
.testa-filters>.testa-filter:nth-child(5) {
    grid-column:span 2;
}
.testa-filters>.testa-filter:nth-child(6) {
    grid-column:span 2;
}
.testa-filter-status {
    grid-column:span 3;
    align-self:start;
}
.testa-filter label:first-child,.testa-filter>label:not(.testa-check) {
    display:block;
    font-weight:750;
    font-size:12px;
    margin-bottom:7px;
    color:#4f5257;
}
.testa-filter input[type=number],.testa-filter select,.testa-sort {
    width:100%;
    height:44px;
    border:1px solid #d9d9d9;
    background:#fff;
    border-radius:10px;
    padding:0 12px;
    color:#222;
    outline:none;
}
.testa-filter input:focus,.testa-filter select:focus,.testa-sort:focus {
    border-color:var(--testa-red);
    box-shadow:0 0 0 3px rgba(159,29,45,.08);
}
.testa-input-suffix {
    position:relative;
}
.testa-input-suffix span {
    position:absolute;
    right:11px;
    top:50%;
    transform:translateY(-50%);
    font-size:12px;
    color:#888;
    pointer-events:none;
}
.testa-input-suffix input {
    padding-right:34px!important;
}
.testa-room-buttons {
    display:flex;
    gap:7px;
    flex-wrap:nowrap;
    align-items:center;
    overflow-x:auto;
    padding-bottom:2px;
}
.testa-room-buttons button {
    height:44px;
    min-width:42px;
    padding:0 14px;
    border:1px solid #d9d9d9;
    background:#fff;
    border-radius:10px;
    font-weight:750;
    cursor:pointer;
    flex:0 0 auto;
}
.testa-room-buttons button.is-active {
    background:var(--testa-red);
    color:#fff;
    border-color:var(--testa-red);
}
.testa-filter-status {
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    padding-bottom:4px;
}
.testa-filter-status>label:first-child {
    width:100%;
    margin-bottom:0;
}
.testa-check {
    display:inline-flex;
    align-items:center;
    gap:5px;
    font-size:12px;
    cursor:pointer;
}
.testa-check input {
    accent-color:var(--testa-red);
}
/* ============================================================
   07. PASEK WYNIKÓW / SORTOWANIE / ZMIANA WIDOKU
   ============================================================ */
.testa-toolbar {
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    padding:18px 2px 14px;
}
.testa-results-text {
    font-size:14px;
    color:var(--testa-muted);
}
.testa-results-text strong {
    color:var(--testa-ink);
    font-size:22px;
    margin-right:5px;
}
.testa-toolbar-actions {
    display:flex;
    gap:8px;
    align-items:center;
}
.testa-sort {
    width:auto;
    min-width:190px;
}
.testa-reset,.testa-view-switch button,.testa-more,.testa-empty button,.testa-compare-bar button {
    border:1px solid #d8d8d8;
    background:#fff;
    border-radius:10px;
    height:42px;
    padding:0 13px;
    cursor:pointer;
}
.testa-reset:hover,.testa-view-switch button:hover {
    border-color:#aaa;
}
.testa-view-switch {
    display:flex;
    border:1px solid #d8d8d8;
    border-radius:10px;
    overflow:hidden;
}
.testa-view-switch button {
    border:0;
    border-radius:0;
}
.testa-view-switch button.is-active {
    background:#222;
    color:#fff;
}
/* ============================================================
   08. KAFELKI MIESZKAŃ
   ============================================================ */
.testa-cards {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.testa-card {
    background:#fff;
    border:1px solid var(--testa-line);
    border-radius:18px;
    overflow:hidden;
    transition:.2s ease;
    display:flex;
    flex-direction:column;
    min-height:100%;
}
.testa-card:hover {
    transform:translateY(-3px);
    box-shadow:var(--testa-shadow);
}
/* --- GÓRA KAFELKA: RZUT MIESZKANIA --- */
.testa-card-preview {
    height:210px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    overflow:hidden;
    border-bottom:1px solid #ece8e1;
    padding:18px;
}
.testa-plan-thumb {
    display:block;
    width:78%;
    height:72%;
    background:#fff;
    border:1px solid rgba(70,70,70,.12);
    box-shadow:0 8px 24px rgba(0,0,0,.06);
    border-radius:4px;
    object-fit:contain;
}
.testa-plan-canvas-wrap {
    width:78%;
    height:72%;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    background:#fff;
    border:1px solid rgba(70,70,70,.12);
    box-shadow:0 8px 24px rgba(0,0,0,.06);
    border-radius:4px;
    overflow:hidden;
}
.testa-plan-canvas {
    display:block;
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    opacity:0;
    transition:opacity .18s ease;
}
.testa-plan-canvas.is-ready {
    opacity:1;
}
.testa-plan-loading {
    position:absolute;
    inset:auto 8px 8px;
    display:block;
    text-align:center;
    font-size:10px;
    font-weight:700;
    color:#777;
    background:rgba(255,255,255,.86);
    padding:4px 6px;
    border-radius:6px;
}
.testa-plan-loading[hidden] {
    display:none!important;
}
.testa-plan-placeholder {
    width:70%;
    height:68%;
    border:2px solid rgba(70,70,70,.18);
    position:relative;
    background:#fff;
    box-shadow:0 8px 24px rgba(0,0,0,.05);
}
.testa-plan-placeholder:before,.testa-plan-placeholder:after {
    content:"";
    position:absolute;
    background:rgba(70,70,70,.16);
}
.testa-plan-placeholder:before {
    width:2px;
    height:100%;
    left:46%;
    top:0;
}
.testa-plan-placeholder:after {
    height:2px;
    width:100%;
    top:52%;
    left:0;
}
.testa-plan-icon {
    display:none;
}
/* --- STATUS: DOSTĘPNE / REZERWACJA / SPRZEDANE --- */
.testa-card-status {
    padding: 7px 10px;
    border-radius: 9px;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .04em;
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
}
.status-available {
    background:var(--testa-green);
}
.status-reserved {
    background:var(--testa-orange);
}
.status-sold {
    background:var(--testa-grey);
}
.status-unknown {
    background:#555;
}
/* --- DÓŁ KAFELKA: DANE MIESZKANIA --- */
.testa-card-body {
    padding:28px 18px 18px;
    display:flex;
    flex-direction:column;
    flex:1;
    background:#f2f2f0;
    position:relative;
}
.testa-card-body .testa-card-status {
    margin:0;
    position:absolute;
    left:18px;
    top:-18px;
    z-index:2;
    box-shadow:0 6px 16px rgba(0,0,0,.08);
}
.testa-card-kicker {
    display:flex;
    justify-content:space-between;
    gap:10px;
    color:var(--testa-muted);
    font-size:12px;
    font-weight:700;
    margin-bottom:7px;
}
.testa-card h3 {
    font-size:25px;
    margin:0 0 14px;
}
/* --- 3 POLA: POKOJE / METRAŻ / PIĘTRO ---
   Najważniejsze przy samodzielnej edycji tekstów:
   .testa-card-grid span   -> nazwa pola
   .testa-card-grid strong -> wartość pola
*/
.testa-card-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-bottom:17px;
}
.testa-card-grid div {
    background:#fff;
    border:1px solid #ece8e1;
    border-radius:10px;
    padding:9px;
}
/* Małe napisy: Pokoje / Metraż / Piętro.
   Zmień font-size, np. 14px / 16px. */
.testa-card-grid span {
    display:block;
    font-size:10px;
    color:var(--testa-muted);
    margin-bottom:3px;
}
/* Wartości: 2 / 44,1 m² / I P.
   Zmień font-size, np. 18px / 20px / 22px. */
.testa-card-grid strong {
    font-size:18px;
}
.testa-card-price {
    margin-top:auto;
    padding-top:3px;
}
.testa-card-price strong {
    display:block;
    font-size:23px;
    line-height:1.1;
}
.testa-card-price span {
    font-size:12px;
    color:var(--testa-muted);
}
.testa-card-actions {
    display:flex;
    gap:8px;
    margin-top:15px;
}
.testa-card-actions button,.testa-card-actions a {
    height:42px;
    border-radius:10px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.testa-card-actions .testa-details {
    background:var(--testa-red);
    color:#fff;
    border:1px solid var(--testa-red);
    flex:1;
}
.testa-card-actions .testa-compare {
    background:#fff;
    color:#222;
    border:1px solid #d8d8d8;
}
.testa-card-actions .testa-compare.is-active {
    background:#222;
    color:#fff;
    border-color:#222;
}
/* ============================================================
   09. WIDOK TABELI
   ============================================================ */
.testa-table-wrap {
    overflow:auto;
    border:1px solid var(--testa-line);
    border-radius:16px;
    background:#fff;
}
.testa-table {
    width:100%;
    border-collapse:collapse;
    min-width:980px;
}
.testa-table th,.testa-table td {
    text-align:left;
    padding:13px 12px;
    border-bottom:1px solid #eee;
    font-size:13px;
}
.testa-table th {
    background:#f7f7f6;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.testa-table tbody tr:hover {
    background:#fafafa;
}
.testa-table .testa-status-text {
    font-weight:800;
}
.testa-table button {
    border:0;
    background:var(--testa-red);
    color:#fff;
    border-radius:8px;
    padding:7px 10px;
    cursor:pointer;
}
.testa-empty {
    padding:42px;
    text-align:center;
    border:1px dashed #ccc;
    border-radius:16px;
}
.testa-empty strong,.testa-empty span {
    display:block;
}
.testa-empty span {
    color:var(--testa-muted);
    margin:7px 0 17px;
}
.testa-more-wrap {
    text-align:center;
    padding:20px;
}
.testa-more {
    background:#222;
    color:#fff;
    border-color:#222;
    padding:0 22px;
}
/* ============================================================
   10. PORÓWNYWARKA MIESZKAŃ
   ============================================================ */
.testa-compare-bar {
    position:fixed;
    left:50%;
    bottom:24px;
    transform:translateX(-50%);
    z-index:9998;
    width:min(760px,calc(100% - 28px));
    background:#202124;
    color:#fff;
    border-radius:15px;
    padding:12px 14px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    box-shadow:0 15px 45px rgba(0,0,0,.3);
}
.testa-compare-bar[hidden] {
    display:none!important;
}
.testa-compare-bar span {
    display:block;
    color:#c9c9c9;
    font-size:11px;
    margin-top:2px;
}
.testa-compare-bar button {
    height:38px;
    background:transparent;
    color:#fff;
    border-color:#626262;
}
.testa-compare-bar .testa-primary {
    background:var(--testa-red);
    border-color:var(--testa-red);
}
/* ============================================================
   11. PANEL / MODAL SZCZEGÓŁÓW MIESZKANIA
   ============================================================ */
.testa-modal[hidden] {
    display:none!important;
}
.testa-modal {
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    justify-content:flex-end;
}
.testa-modal-backdrop {
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.58);
}
.testa-modal-panel {
    position:relative;
    width:min(760px,94vw);
    height:100%;
    background:#fff;
    overflow:auto;
    padding:28px;
    box-shadow:-20px 0 60px rgba(0,0,0,.25);
}
.testa-modal-close {
    position:sticky;
    top:0;
    float:right;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:#222;
    color:#fff;
    font-size:28px;
    cursor:pointer;
    z-index:2;
}
.testa-modal-header {
    padding:10px 50px 22px 0;
}
.testa-modal-header .testa-eyebrow {
    margin-bottom:5px;
}
.testa-modal-header h2 {
    font-size:40px;
    margin:0 0 8px;
}
.testa-modal-header p {
    margin:0;
    color:var(--testa-muted);
}
.testa-modal-details {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-bottom:20px;
}
.testa-modal-details div {
    background:var(--testa-soft);
    padding:14px;
    border-radius:12px;
}
.testa-modal-details span {
    display:block;
    font-size:10px;
    color:var(--testa-muted);
    margin-bottom:4px;
}
.testa-modal-details strong {
    font-size:15px;
}
.testa-modal-price {
    font-size:31px;
    font-weight:900;
    margin:16px 0 20px;
}
.testa-modal-price small {
    display:block;
    font-size:12px;
    font-weight:500;
    color:var(--testa-muted);
    margin-top:4px;
}
.testa-pdf-frame {
    width:100%;
    height:520px;
    border:1px solid #ddd;
    border-radius:14px;
    background:#f5f5f5;
}
.testa-modal-actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
}
.testa-modal-actions a {
    display:inline-flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:0 17px;
    border-radius:10px;
    text-decoration:none;
    font-weight:800;
    font-size:13px;
}
.testa-modal-actions .primary {
    background:var(--testa-red);
    color:#fff;
}
.testa-modal-actions .secondary {
    background:#222;
    color:#fff;
}
.testa-modal-actions .outline {
    border:1px solid #d4d4d4;
    color:#222;
}
.testa-compare-table {
    width:100%;
    border-collapse:collapse;
    margin-top:18px;
}
.testa-compare-table td,.testa-compare-table th {
    padding:12px;
    border-bottom:1px solid #eee;
    text-align:left;
}
.testa-compare-table th {
    background:#f7f7f7;
}
.testa-compare-table td:first-child {
    font-weight:800;
    color:#555;
}
/* ============================================================
   12. RESPONSYWNOŚĆ – TABLET / MNIEJSZY DESKTOP
   ============================================================ */
@media(max-width:1200px) {
    .testa-filters {
        grid-template-columns:repeat(3,1fr);
    }
    .testa-filter-wide,.testa-filter-rooms,.testa-filter-status {
        grid-column:auto;
    }
    .testa-filter-rooms {
        grid-column:span 2;
    }
    .testa-cards {
        grid-template-columns:repeat(2,1fr);
    }
}
/* ============================================================
   13. RESPONSYWNOŚĆ – TELEFON / TABLET
   ============================================================ */
@media(max-width:800px) {
    .testa-search {
        padding:0 14px;
    }
    .testa-hero {
        padding-top:24px;
    }
    .testa-stats {
        grid-template-columns:repeat(2,1fr);
    }
    .testa-stat {
        min-height:86px;
    }
    .testa-stat strong {
        font-size:23px;
    }
    .testa-map {
        height:330px;
    }
    .testa-investments {
        grid-template-columns:1fr;
        margin-bottom:38px;
    }
    .testa-filters {
        grid-template-columns:1fr 1fr;
        padding:14px;
    }
    .testa-filter-wide,.testa-filter-rooms,.testa-filter-status {
        grid-column:1/-1;
    }
    .testa-toolbar {
        align-items:flex-start;
        flex-direction:column;
    }
    .testa-toolbar-actions {
        width:100%;
        flex-wrap:wrap;
    }
    .testa-sort {
        flex:1;
        min-width:180px;
    }
    .testa-cards {
        grid-template-columns:1fr;
    }
    .testa-card-preview {
        height:190px;
    }
    .testa-view-switch span {
        display:none;
    }
    .testa-modal-panel {
        width:100%;
        padding:20px;
    }
    .testa-modal-header h2 {
        font-size:32px;
    }
    .testa-modal-details {
        grid-template-columns:1fr 1fr;
    }
    .testa-pdf-frame {
        height:430px;
    }
}
/* ============================================================
   14. RESPONSYWNOŚĆ – MAŁE TELEFONY
   ============================================================ */
@media(max-width:480px) {
    .testa-stats {
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .testa-stat {
        padding:15px 12px;
    }
    .testa-filters {
        grid-template-columns:1fr;
    }
    .testa-filter-wide,.testa-filter-rooms,.testa-filter-status {
        grid-column:auto;
    }
    .testa-card-grid {
        grid-template-columns:1fr 1fr;
    }
    .testa-card-actions {
        flex-direction:column;
    }
    .testa-compare-bar {
        bottom:10px;
    }
    .testa-modal-details {
        grid-template-columns:1fr;
    }
    .testa-pdf-frame {
        height:360px;
    }
}
