/* ============================================================
   daVinci Residence — dodatni stilovi (animacije, print, admin)
   ============================================================ */

html { scroll-behavior: smooth; }

/* ---------- Scroll reveal animacije ---------- */
html.js [data-reveal] {
  opacity: 0;
  will-change: opacity, transform;
  backface-visibility: hidden;
  transition:
    opacity 1200ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 1200ms cubic-bezier(0.22, 1, 0.36, 1);
}
html.js [data-reveal="up"]    { transform: translate3d(0, 40px, 0); }
html.js [data-reveal="left"]  { transform: translate3d(-48px, 0, 0); }
html.js [data-reveal="right"] { transform: translate3d(48px, 0, 0); }
html.js [data-reveal="scale"] { transform: scale(0.94); }
html.js [data-reveal].is-revealed {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  will-change: auto;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html.js [data-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ---------- Interaktivni SVG (statusi stanova) ---------- */
.unit-shape { fill: transparent; stroke: transparent; transition: fill 180ms ease, stroke 180ms ease; cursor: pointer; }
.unit-shape.is-available:hover,
.unit-shape.is-available:focus-visible { fill: rgba(34, 197, 94, 0.42); stroke: rgba(34, 197, 94, 0.9); stroke-width: 2; outline: none; }
.unit-shape.is-sold { cursor: not-allowed; pointer-events: none; }
.unit-shape.is-sold.is-active { fill: rgba(239, 68, 68, 0.45); stroke: rgba(239, 68, 68, 0.9); stroke-width: 2; }

/* ---------- Glassmorphism kartice (stranice stanova / admin) ---------- */
.glass {
  background: color-mix(in oklab, var(--card) 55%, transparent);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
  border: 1px solid color-mix(in oklab, var(--border) 80%, transparent);
}

/* ---------- Lightbox galerije ---------- */
.lightbox { position: fixed; inset: 0; z-index: 90; display: none; align-items: center; justify-content: center; background: rgba(0,0,0,.9); padding: 1.5rem; }
.lightbox.is-open { display: flex; }
.lightbox img { max-width: 100%; max-height: 88vh; object-fit: contain; }

/* ---------- Print: samo tlocrt ---------- */
@media print {
  body * { visibility: hidden !important; }
  #print-area, #print-area * { visibility: visible !important; }
  #print-area { position: absolute; inset: 0; margin: 0; padding: 0; background: #fff; }
  #print-area img { width: 100%; height: auto; }
  @page { size: A4 landscape; margin: 10mm; }
}
/* ---------------Smanjivanje slike tlocrta------ */
div#print-area {
  width: 35% !important;
  max-width: 35% !important;
  flex: 0 0 35% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 12px !important;
}

div#print-area > img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
}

@media print {
  div#print-area {
    width: 80% !important;
    max-width: 80% !important;
    flex-basis: 80% !important;
  }
}
/* ------------------------------------------------*/

.absolute.bottom-6.left-6.right-6.flex.items-center.gap-3.rounded-lg.border.border-border {
    display: none !important;
}
