.spt-text-window {
  display: grid;
  min-width: 0;
  gap: 6px;
  color: var(--spt-ink);
  font: 12px/1.25 var(--spt-font-sans);
}

.spt-text-window__section {
  display: grid;
  min-width: 0;
  padding: 6px;
  gap: 5px;
  border-bottom: 1px solid var(--spt-border);
}

.spt-text-window__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.spt-text-window__actions,
.spt-text-window__format-row {
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
  gap: 4px;
}

.spt-text-window__drag,
.spt-text-window__small,
.spt-text-window__generate,
.spt-text-window__format {
  min-height: 24px;
  padding: 0 7px;
  color: var(--spt-ink);
  font: 700 11px/1 var(--spt-font-sans);
  background: var(--spt-surface-raised);
  border: 1px solid var(--spt-border-strong);
  border-radius: 4px;
  cursor: default;
}

.spt-text-window__drag:hover,
.spt-text-window__small:hover,
.spt-text-window__generate:hover,
.spt-text-window__format:hover,
.spt-text-window__format[aria-pressed="true"] {
  background: var(--spt-menu-hover);
}

.spt-text-window__field {
  display: grid;
  grid-template-columns: minmax(54px, 0.8fr) minmax(0, 1.2fr);
  align-items: center;
  min-width: 0;
  gap: 5px;
  color: var(--spt-ink-soft);
  font-size: 11px;
  font-weight: 700;
}

.spt-text-window__field input,
.spt-text-window__field select,
.spt-text-window__field textarea {
  width: 100%;
  min-width: 0;
  min-height: 24px;
  color: var(--spt-ink);
  font: 11px/1.2 var(--spt-font-sans);
  background: var(--spt-surface-raised);
  border: 1px solid var(--spt-border-strong);
  border-radius: 4px;
}

.spt-text-window__field input[type="color"] {
  height: 24px;
  padding: 1px;
}

.spt-text-window__check {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  gap: 5px;
  color: var(--spt-ink-soft);
  font-size: 11px;
  font-weight: 700;
}

.spt-text-window__check input {
  width: 14px;
  height: 14px;
  margin: 0;
}

.spt-text-window__qr {
  grid-template-columns: minmax(0, 1fr);
}

.spt-text-window__qr-preview {
  display: grid;
  width: 118px;
  height: 118px;
  place-items: center;
  color: var(--spt-ink-soft);
  font-weight: 800;
  background: var(--spt-surface-raised);
  border: 1px dashed var(--spt-border-strong);
  border-radius: 4px;
}

.spt-text-window__summary {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--spt-ink-soft);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.spt-text-qr-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.spt-text-qr-layer[data-drop-active="true"] {
  outline: 1px dashed var(--spt-border-strong);
  outline-offset: -3px;
}

.spt-text-qr-frame {
  box-sizing: border-box;
  position: absolute;
  pointer-events: auto;
  transform-origin: center;
}

.spt-text-qr-frame[data-selected="true"] {
  z-index: 4;
}

.spt-text-qr-frame__text {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 8px;
  overflow: hidden;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
  transform-origin: center;
}

.spt-text-qr-frame__qr {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: repeat(var(--spt-qr-size), 1fr);
  grid-template-rows: repeat(var(--spt-qr-size), 1fr);
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
}

.spt-text-qr-frame__qr-module {
  display: block;
  min-width: 0;
  min-height: 0;
}

.spt-collage-preview-frame > .spt-text-qr-frame__text,
.spt-collage-preview-frame > .spt-text-qr-frame__qr {
  position: absolute;
  box-sizing: border-box;
  inset: 0;
}

.spt-text-qr-frame__bounds {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
