.cliente-site-preview { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); padding: var(--card-pad); min-width: 0; margin-block: var(--sp-6); }
.cliente-site-preview__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3); }
.cliente-site-preview__heading > div { min-width: 0; }
.cliente-site-preview__heading h2 { margin: 0; font-size: var(--text-card-title); font-weight: var(--weight-bold); }
.cliente-site-preview__description, .cliente-site-preview__feedback { margin: 0; color: var(--fg-secondary); font-size: var(--text-base); line-height: var(--leading-normal); overflow-wrap: anywhere; }
.cliente-site-preview__description { margin-block-start: var(--sp-1); }
.cliente-site-preview__canvas { position: relative; width: 100%; min-width: 0; min-height: calc(var(--control-xl) * 5); max-height: calc(var(--control-xl) * 10); aspect-ratio: 16 / 9; overflow: hidden; background: var(--well); border-radius: var(--radius-lg); }
.cliente-site-preview__canvas iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; pointer-events: none; }
.cliente-site-preview__placeholder { position: absolute; inset: 0; display: grid; place-content: center; margin: 0; padding: var(--sp-5); color: var(--fg-secondary); }
.cliente-site-preview .cliente-site-preview__open { position: absolute; inset: 0; width: 100%; height: 100%; display: flex; align-items: flex-end; justify-content: flex-end; padding: var(--sp-4); border: 0; border-radius: var(--radius-lg); background: none; }
.cliente-site-preview .cliente-site-preview__open:hover { background: none; }
.cliente-site-preview .cliente-site-preview__open:active { transform: none; }
.cliente-site-preview .cliente-site-preview__open:focus-visible { outline-offset: calc(var(--sp-1) * -1); }
.cliente-site-preview__open-label { display: inline-flex; align-items: center; min-height: var(--control-lg); padding: var(--sp-2) var(--sp-3); color: var(--on-accent); background: var(--accent-fill); border-radius: var(--radius-md); font-size: var(--text-base); font-weight: var(--weight-medium); }
.cliente-site-preview__retry { justify-self: start; }
.cliente-site-preview__retry[hidden] { display: none; }
@media (max-width: 767px) {
  .cliente-site-preview__heading { align-items: flex-start; }
  .cliente-site-preview__edit { width: 100%; }
}