/* Text fitting keeps the Villa layout and the complete, editable source text. */
.generated-site [data-text-fit-kind] {
  overflow-wrap: anywhere;
}
.generated-site [data-text-fit-size] {
  font-size: var(--generated-fit-font-size) !important;
  /* Freeze a ch-based model slot while measuring a smaller font. */
  max-width: var(--generated-fit-slot-width) !important;
}
.generated-site .brand-name {
  white-space: nowrap !important;
  overflow: visible;
  text-overflow: clip;
  max-width: 100%;
}
.generated-site .brand:has(.brand-name) {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  overscroll-behavior-inline: contain;
}
.generated-site summary > [data-module-item-text="title"] {
  display: block;
}
/* The gallery's old scale variables must not undo the shared readable floor. */
.generated-site[data-text-fit-enabled] .gallery-story-note h2 {
  font-size: clamp(1.25rem, 1.46vw, 1.72rem);
}
.generated-site[data-text-fit-enabled] .gallery-story-note[data-size="portrait"] h2 {
  font-size: clamp(1.25rem, 1.18vw, 1.36rem);
}
.generated-site[data-text-fit-enabled] .gallery-story-body {
  font-size: 1rem;
  line-height: 1.5;
}
.generated-site[data-text-fit-enabled] .gallery-story-note {
  overflow: auto;
}
.generated-site[data-text-fit-enabled] .gallery-story-note[data-text-fit-overflow="1"] {
  justify-content: flex-start;
}
/* Preview feedback uses the editor's own localized status text. No public label. */
.generated-site [data-preview-editable][data-text-fit-overflow="1"]:not([data-editor-fit-accepted="true"]) {
  outline: 2px dashed var(--accent, currentColor);
  outline-offset: 5px;
}
@media print {
  .generated-site .brand:has(.brand-name) { overflow: visible; }
  .generated-site[data-text-fit-enabled] .gallery-story-note { height: auto; overflow: visible; }
}
