/* lantai sentuh 44px visual — Casavida microsite (/casavida/) */

/*
SISA (dibela):
g[data-loc-pin][data-loc-id="tk-sd"] — 41×44 visual — bbox SVG <g role=button>, bukan tombol HTML
*/

@media (pointer: coarse) and (hover: none) {
  /* Nav: burger + tutup panel mobile */
  html body header.atlas-nav button.atlas-nav-menu-btn,
  html body aside#cv-mobile-panel button.atlas-nav-menu-btn {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Siteplan: filter chip + toggle Peta/Daftar */
  html body #siteplan .cv-sp-filters button,
  html body #siteplan .cv-sp-view-toggle button {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Siteplan: kavling di denah (flex row — min memperlebar kotak, tetap di tengah) */
  html body #siteplan [data-siteplan-map] button[data-lot] {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
  }

  /* Siteplan: tutup drawer */
  html body #siteplan button.cv-sp-close-btn {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Fasad: tab + navigasi foto */
  html body #fasad.cv-fk .cv-fk-tabs button.cv-fk-tab,
  html body #fasad.cv-fk .cv-fk-top-actions button.cv-fk-arrow,
  html body #fasad.cv-fk .cv-fk-top-actions button.cv-fk-expand {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Interior: daftar ruang di rail */
  html body #interior.cv-int aside.cv-int-rail button.cv-int-room {
    min-height: calc(44px / var(--zr, 1)) !important;
  }

  /* Interior: tombol adjacency di stage */
  html body #interior.cv-int .cv-int-adj button {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* Interior: node progres — kotak sentuh 44px, dot asli di ::before */
  html body #interior.cv-int .cv-int-path-nodes button.cv-int-node {
    position: relative;
    box-sizing: border-box;
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    flex-shrink: 0;
    padding: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html body #interior.cv-int .cv-int-path-nodes button.cv-int-node::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #F7F3EC;
    border: 2px solid #CFC4B4;
    box-shadow: none;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    pointer-events: none;
  }

  html body #interior.cv-int .cv-int-path-nodes button.cv-int-node.is-past::before {
    background: #E8A183;
    border-color: #C25E38;
  }

  html body #interior.cv-int .cv-int-path-nodes button.cv-int-node.is-on::before {
    background: #C25E38;
    border-color: #C25E38;
    transform: translate(-50%, -50%) scale(1.35);
    box-shadow: 0 0 0 4px rgba(194, 94, 56, 0.22);
  }

  html body #interior.cv-int .cv-int-path-nodes button.cv-int-node:hover::before {
    border-color: #C25E38;
  }

  /* Spesifikasi: baris lebar — cukup tinggi */
  html body #spesifikasi.cv-spec .cv-spec-list button.cv-spec-row {
    min-height: calc(44px / var(--zr, 1)) !important;
    align-items: center;
  }

  /* Kunjungan: kirim WA */
  html body #kunjungan.cv-kv button.cv-kv-submit {
    min-height: calc(44px / var(--zr, 1)) !important;
  }

  /* Kembali ke atas */
  html body #back-to-top-btn {
    min-width: calc(44px / var(--zr, 1)) !important;
    min-height: calc(44px / var(--zr, 1)) !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

@media (pointer: coarse) and (hover: none) and (min-width: 768px) {
  /* map is scaled ~0.83 on tablets, 72px css = 44+ visual */
  html body #siteplan [data-siteplan-map] button[data-lot][data-lot] {
    min-width: 72px !important;
    min-height: 72px !important;
  }
}
