body {
      font-family: Arial, sans-serif;
      max-width: 1100px;
      margin: 40px auto;
      padding: 0 24px;
      color: var(--fibl-text);
      line-height: 1.6;
    }

    h1, h2 { color: var(--fibl-blue); }

    a {
      color: var(--fibl-blue);
      font-weight: 600;
    }

    .summary {
      background: var(--fibl-blue-light);
      padding: 20px;
      margin: 24px 0;
      border-radius: 6px;
    }

    table {
      width: 100%;
      table-layout: fixed;
      border-collapse: collapse;
    }

    th, td {
      text-align: left;
      padding: 12px;
      border-bottom: 1px solid var(--fibl-border);
      vertical-align: top;
    }

    th {
      background: var(--fibl-blue-light);
      color: var(--fibl-blue);
    }

    .meta {
      font-size: 0.85rem;
      color: #666;
    }

    .status {
      color: var(--fibl-blue);
      font-weight: 600;
    }

    .empty {
      color: #777;
    }

    details {
      margin-top: 6px;
    }

    summary {
      cursor: pointer;
      color: var(--fibl-blue);
      font-weight: 600;
    }

    .speaker-text {
      white-space: pre-wrap;
      line-height: 1.7;
      margin-top: 12px;
    }
.slide-button {
  padding: 8px 14px;
  border: 1px solid var(--fibl-blue);
  border-radius: 4px;
  font-family: inherit;
  font-size: 0.9rem;
  cursor: pointer;
}

.slide-button.remove {
  background: #fff;
  color: var(--fibl-blue);
}

.slide-button.restore {
  background: var(--fibl-blue);
  color: #fff;
}

.slide-button:hover {
  opacity: 0.8;
}

tr:has(.slide-button.restore) {
  background: var(--fibl-blue-light);
}

tr:has(.slide-button.restore) td {
  color: #777;
}

.slide-actions {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.slide-actions form {
  margin: 0;
}

.slide-actions .insert-slide {
  flex-basis: 100%;
  min-width: 0;
}

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

th, td {
  box-sizing: border-box;
  overflow-wrap: anywhere;
}


.slide-actions form {
  margin: 0;
}

.slide-button.move {
  background: var(--fibl-blue-light);
  color: var(--fibl-blue);
  min-width: 36px;
  font-size: 1.1rem;
  padding: 6px 10px;
}

.slide-button:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.insert-slide {
  width: 100%;
  margin-top: 8px;
}

.insert-slide summary {
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  color: var(--fibl-blue);
}

.insert-slide form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  background: var(--fibl-blue-light);
  border-radius: 4px;
}

.insert-slide label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.85rem;
}

.insert-slide input,
.insert-slide textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font: inherit;
}

.insert-slide button {
  align-self: flex-start;
}
.edit-note {
  margin-top: 10px;
}

.edit-note summary {
  font-size: 0.85rem;
  color: var(--fibl-blue);
  font-weight: 600;
  cursor: pointer;
}

.edit-note form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
}

.edit-note label {
  font-size: 0.85rem;
  font-weight: 600;
}

.edit-note textarea {
  width: 100%;
  min-height: 90px;
  box-sizing: border-box;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font: inherit;
  font-size: 0.9rem;
}

.edit-note button {
  align-self: flex-start;
}

.speaker-cell {
  font-size: 0.9rem;
}

.working-text-preview {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--fibl-border);
}

.edit-working-text {
  margin-top: 12px;
}

.edit-working-text summary {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--fibl-blue);
  cursor: pointer;
}

.edit-working-text form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}

.edit-working-text label {
  font-size: 0.85rem;
  font-weight: 600;
}

.edit-working-text textarea {
  width: 100%;
  min-height: 180px;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font: inherit;
  line-height: 1.6;
  resize: vertical;
}

.edit-working-text button {
  align-self: flex-start;
}
table {
  width: 100%;
  table-layout: fixed;
}

table th,
table td {
  min-width: 0;
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.speaker-cell,
.slide-actions {
  min-width: 0;
}
.text-approval {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--fibl-border);
}

.approval-status {
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 10px;
}

.approval-status.approved {
  color: var(--fibl-blue);
}

.approval-status.revision {
  color: #a66a27;
}

.approval-status.pending {
  color: #777;
}

.approved-text-details {
  margin: 10px 0;
}

.text-approval form {
  margin-top: 10px;
}

.approval-history {
  margin-top: 14px;
}

.approval-history summary {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--fibl-blue);
  cursor: pointer;
}

.approval-history-entry {
  margin-top: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--fibl-border);
}

.approval-history-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 8px;
  font-size: 0.8rem;
  color: #666;
}
.ai-versions {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--fibl-border);
}

.ai-versions summary {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--fibl-blue);
  cursor: pointer;
}

.ai-version-entry {
  margin-top: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--fibl-border);
}

.ai-version-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 8px;
  font-size: 0.8rem;
  color: #666;
}

.ai-version-active {
  margin-top: 8px;
  color: var(--fibl-blue);
  font-size: 0.85rem;
  font-weight: 600;
}
