.mapping-panel { margin: 1.5rem 0; padding: 1rem; border: 1px solid var(--fibl-border, #d5dadd); overflow-wrap: anywhere; }
.mapping-panel label, .mapping-entry label { display: block; margin: .6rem 0; }
.mapping-panel select, .mapping-entry select { max-width: 100%; }
.mapping-page-image { display: block; max-width: 100%; height: auto; border: 1px solid #d5dadd; }
.mapping-page-list { display: flex; flex-wrap: wrap; gap: 1rem; }
.mapping-page-list article { width: 200px; padding: .5rem; border: 1px solid #d5dadd; }
#mapping-snapshot pre { white-space: pre-wrap; overflow-wrap: anywhere; }
button:disabled { cursor: not-allowed; }
.mapping-panel input[type=file] { max-width: 100%; }
@media (max-width: 700px) {
  .planner-table, .planner-table tbody, .planner-table tr, .planner-table td { display: block; width: auto; }
  .planner-table thead, .planner-table colgroup { display: none; }
  .planner-table tr { border-top: 3px solid var(--fibl-border, #d5dadd); margin-top: 1rem; }
  .planner-table td { overflow-wrap: anywhere; }
  .planner-table td::before { content: attr(data-label); display: block; font-weight: bold; margin-bottom: .5rem; }
  .planner-table textarea { max-width: 100%; box-sizing: border-box; }
}

.planner-page {max-width:1500px;box-sizing:border-box;}
.deck-row {display:grid;grid-template-columns:minmax(240px,32%) minmax(0,1fr);gap:1.2rem;padding:1rem 0;border-bottom:2px solid #43865a;}
.deck-row img {width:100%;max-width:100%;height:auto;}
.deck-content {min-width:0;}
.deck-decision-review {display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1rem;}
.deck-decision-review label {margin:.25rem 0;}
.deck-choice-hint {font-size:.9rem;margin:.2rem 0;}
.deck-content label {display:block;margin:.5rem 0;}
.deck-content select {max-width:100%;}
.deck-content p {white-space:pre-wrap;overflow-wrap:anywhere;}
.deck-content button {margin:.3rem .5rem .3rem 0;}
@media(max-width:650px){.deck-row{grid-template-columns:1fr;}}

/* Visual consolidation only: persisted source bytes and editorial paragraphs stay intact. */
.deck-content p.consolidated-source, #deck-unassigned p.consolidated-source,
.speaker-text.consolidated-source {white-space:normal;}
