/* Homepage-only activation controls; the full builder keeps its own UI. */
.omm-home-boat-preview { overflow: hidden; }
.omm-home-boat-preview .omm-preview-poster {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; display: block;
}
.omm-home-boat-preview canvas { position: relative; z-index: 1; }
.omm-home-boat-preview .preview-loading {
  z-index: 2; flex-direction: column; justify-content: flex-end; gap: .4rem;
  padding: 1rem; background: linear-gradient(transparent 44%,rgba(232,238,239,.96));
}
.omm-home-boat-preview .preview-loading[hidden],
.omm-home-boat-preview .omm-preview-poster[hidden] { display: none; }
#preview-activate {
  appearance: none; padding: .7rem 1.15rem; border: 1px solid #bd9232;
  border-radius: .3rem; background: #ffcd45; color: #1a2429; font: inherit;
  font-size: .88rem; font-weight: 700; line-height: 1.25; cursor: pointer;
  box-shadow: 0 3px 12px #17242b1a;
}
#preview-activate:hover:not(:disabled) { background: #ffda76; }
#preview-activate:focus-visible { outline: 3px solid #244b59; outline-offset: 3px; }
#preview-activate:disabled { opacity: .78; cursor: progress; }
#preview-message { color: #29434b; font-size: .76rem; max-width: 30rem; }
#preview-reset:disabled,.omm-builder-paint-options button:disabled { cursor: default; }
#slides [data-slide-to] { cursor: pointer; }
#slides [data-slide-to]:focus-visible { outline: 3px solid #ffcd45; outline-offset: 4px; }
#slides .home-carousel-toggle {
  position: absolute; z-index: 4; right: 1rem; bottom: 1rem;
  border: 1px solid #ffffff9c; border-radius: .3rem; padding: .45rem .7rem;
  background: #111a23b8; color: #fff; font: 600 .75rem/1.3 Arial,sans-serif;
  cursor: pointer; box-shadow: 0 2px 8px #0002;
}
#slides .home-carousel-toggle:hover { background: #111a23e8; }
#slides .home-carousel-toggle:focus-visible { outline: 3px solid #ffcd45; outline-offset: 3px; }
#slides .home-carousel-toggle[hidden] { display: none; }
@media(max-width: 480px) {
  #slides .home-carousel-toggle { right: .65rem; bottom: .65rem; padding: .35rem .5rem; font-size: .7rem; }
}
#slides .home-carousel-status {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
