.editorial-panel { display: grid; gap: var(--space-6); color: var(--ink); }
.editorial-panel[hidden] { display: none; }
.legacy-draft-controls, .legacy-draft-controls[hidden] { display: none !important; }
body[data-editorial-current] #pdf-panel { display: none !important; }
body[data-editorial-current] #guide-formats { display: none; }
body[data-editorial-current] .editorial-workflow-parts > li:has(> #guide-formats) { display: none; }
.editorial-workflow-parts > li > * { min-width: 0; }
.editorial-workflow-parts #guide-panel { width: 100%; max-width: 100%; box-sizing: border-box; margin: 0; padding: 0; border: 0; box-shadow: none; }
.editorial-question[hidden] { display: none; }
.editorial-question-navigation { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-top: var(--space-4); }
.editorial-question-navigation[hidden] { display: none; }
.editorial-question-navigation p { margin: 0; }
.jp-interview { display: grid; gap: var(--space-4); padding-block: var(--space-4); }
.jp-interview[hidden], .jp-interview-help[hidden] { display: none; }
.jp-interview-actions, .jp-interview-commands, .jp-interview-speech, .jp-interview-help { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.jp-interview-commands > button { flex: 1 1 var(--editorial-field-width); white-space: normal; }
.jp-interview-speech label { display: flex; align-items: center; gap: var(--space-2); min-height: var(--touch-min); }
.jp-interview-life { display: grid; gap: var(--space-3); padding: 0; list-style: none; }
.jp-interview-life li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-3); border-bottom: var(--border-card) solid var(--line); padding-block: var(--space-2); }
.jp-interview-recap h2 { font-size: var(--text-body); white-space: pre-line; line-height: var(--leading-body); }
body[data-entretien] .guide-progress-details { display: block; }
.jp-testimony-invite { display: grid; gap: var(--space-3); padding: var(--space-5); margin-block: var(--space-4); background: var(--accent-soft); border: var(--border-card) solid var(--control-border); }
.jp-testimony-invite p, .jp-testimony-invite h3 { margin: 0; }
.jp-testimony-invite .jp-btn { justify-self: start; }
.editorial-export { display: grid; gap: var(--space-4); }
.editorial-export[hidden] { display: none; }
.editorial-diagnostics > summary { cursor: pointer; min-height: var(--touch-min); font-size: var(--text-small); color: var(--ink-muted); }
.editorial-diagnostics > :not(summary) { margin-top: var(--space-3); }
.editorial-diagnostics .editorial-ai-usage { font-size: var(--text-small); }
.editorial-settings { display: grid; grid-template-columns: repeat(auto-fit, minmax(var(--editorial-field-width), 1fr)); gap: var(--space-4); padding: var(--space-6); background: var(--surface-raised); }
.editorial-settings label[hidden] { display: none; }
.jp-presentations #editorial-style-choice[hidden] { display: none; }
.editorial-style-steps { display: grid; gap: var(--space-6); margin: 0; padding: 0; list-style: none; }
.editorial-style-step { display: grid; gap: var(--space-4); min-width: 0; padding: var(--space-6); border: var(--border-card) solid var(--line); border-radius: var(--radius-card); background: var(--surface-raised); }
.editorial-style-step:nth-child(2) { background: var(--surface); }
.editorial-style-step-heading { display: flex; align-items: center; gap: var(--space-3); }
.editorial-style-step-heading h3 { margin: 0; font-size: var(--text-h3); }
.editorial-style-step-number { display: grid; place-items: center; flex: none; width: var(--space-8); height: var(--space-8); border-radius: var(--radius-pill); background: var(--accent); color: var(--on-accent); font-size: var(--text-small); font-weight: 700; }
.editorial-style-step-intro { max-width: var(--measure); margin: 0; }
.editorial-style-step > .jp-btn { justify-self: start; }
.editorial-tone-choices { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,var(--editorial-field-width)),1fr)); gap: var(--space-3); min-width: 0; max-width: var(--measure); margin: 0; padding: 0; border: 0; }
.editorial-tone-choices legend { font-size: var(--text-body); margin-block-end: var(--space-3); }
.editorial-tone-choices label { display: flex; align-items: center; gap: var(--space-3); min-height: var(--touch-min); min-width: 0; padding: var(--space-3); border: var(--border-card) solid var(--control-border); border-radius: var(--radius-card); cursor: pointer; }
.editorial-tone-choices label:has(input:checked) { border-color: var(--accent-ink); background: var(--accent-soft); }
.editorial-tone-choices input { flex: 0 0 var(--space-5); width: var(--space-5); height: var(--space-5); margin: 0; }
.editorial-tone-choices span { min-width: 0; white-space: normal; overflow-wrap: anywhere; font-size: var(--text-body); }
.editorial-print-dialog { width: min(var(--editorial-dialog-width),calc(100% - var(--space-8))); max-height: var(--editorial-dialog-height); padding: var(--space-6); color: var(--ink); background: var(--surface-raised); border: var(--border-card) solid var(--control-border); border-radius: var(--radius-card); }
.editorial-print-dialog::backdrop { background: var(--deep); opacity: .6; }
.editorial-print-dialog > * + * { margin-block-start: var(--space-4); }
.editorial-print-review { display: flex; gap: var(--space-3); align-items: start; font-size: var(--text-body); }
.editorial-panel > details > summary { color: var(--accent-ink); cursor: pointer; font-size: var(--text-body); min-height: var(--space-12); }
.editorial-progress[hidden] { display: none; }
.editorial-progress { margin-top: 0; flex-wrap: wrap; }
.editorial-progress-meter, .editorial-progress-timing { flex-basis: 100%; width: 100%; }
.editorial-progress-meter { accent-color: var(--accent); height: var(--space-3); }
.editorial-draft-count { font-size: var(--text-body); color: var(--accent-ink); }
.editorial-ai-usage { margin: 0; color: var(--ink-muted); font-size: var(--text-body); }
.editorial-settings label, .editorial-photo-fields label, .editorial-question label { display: grid; gap: var(--space-2); font-size: var(--text-body); }
.editorial-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }
.editorial-photo { display: grid; grid-template-columns: minmax(0, var(--editorial-photo-width)) minmax(0, 1fr); gap: var(--space-4); padding: var(--space-4); background: var(--surface-raised); }
.editorial-photo img { display: block; width: 100%; object-fit: contain; }
.editorial-photo-fields { display: grid; gap: var(--space-3); }
.editorial-question { max-width: var(--measure); padding: var(--space-4); background: var(--surface-raised); margin-block: var(--space-4); }
.editorial-testimony { display: grid; gap: var(--space-4); max-width: var(--measure); padding: var(--space-4); background: var(--surface-raised); }
#editorial-book { display: grid; justify-items: center; gap: var(--space-8); }
#editorial-book[hidden] { display: none; }
.editorial-cover { margin-block: var(--space-8); }
.editorial-dedication, .editorial-back { max-width: var(--measure); font-family: var(--font-book-serif); font-size: var(--text-body); line-height: var(--leading-body); }
.editorial-contents { display: grid; gap: var(--space-3); width: min(100%, var(--measure)); padding: var(--space-6); background: var(--surface-raised); }
.editorial-contents a { color: var(--accent-ink); font-size: var(--text-body); }
.editorial-chapter { width: min(100%, var(--editorial-page-width)); background: var(--surface-raised); display: block; }
.editorial-chapter .jp-page__title { margin-bottom: var(--space-8); }
.editorial-chapter p, .editorial-chapter blockquote { font-family: var(--font-book-serif); font-size: var(--text-body); line-height: var(--leading-body); hyphens: auto; overflow-wrap: break-word; }
.editorial-chapter figure { margin-block: var(--space-6); }
.editorial-chapter figure img { width: 100%; height: auto; display: block; }
.editorial-chapter figcaption { font-size: var(--text-small); }
.editorial-pause { text-align: center; }
.editorial-paragraph { margin-block: var(--space-4); }

.editorial-paragraph > .jp-btn { margin-top: var(--space-2); }
.editorial-inline-editor { width: 100%; min-height: var(--draft-editor-min-height); font-family: var(--font-book-serif); font-size: var(--text-body); line-height: var(--leading-body); }
.editorial-admin-list { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-block: var(--space-6); }
.editorial-admin-card { padding: var(--space-4); margin-block: var(--space-4); background: var(--surface-raised); font-size: var(--text-body); }
@media (max-width: 760px) { .editorial-settings, .editorial-photo { grid-template-columns: minmax(0, 1fr); } .editorial-chapter { padding: var(--space-4); } }

.editorial-reader { width: 100%; min-width: 0; scroll-margin-block-start: var(--space-24); }
.editorial-reader { --book-bg: var(--pdf-wine); --book-ink: var(--pdf-paper); }
.editorial-editable { display: inline; padding: 0; min-height: var(--touch-min); font: inherit; line-height: inherit; color: inherit; text-align: inherit; background: transparent; cursor: text; white-space: inherit; overflow-wrap: inherit; }
.editorial-editable:hover, .editorial-clickable-text:hover { text-decoration: underline; text-decoration-color: var(--control-border); text-underline-offset: var(--space-1); cursor: text; }
.editorial-editable:focus-visible { outline: var(--focus-width) solid var(--focus); outline-offset: var(--focus-offset); }
.editorial-leaf--cover .editorial-editable:focus-visible { outline-color: var(--book-ink); }
.editorial-reader:focus-visible { outline: var(--focus-width) solid var(--focus); }
.editorial-spread { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-1); height: var(--editorial-reader-height); width: 100%; }
.editorial-leaf.jp-page { display: block; position: relative; height: 100%; min-width: 0; padding: var(--editorial-reader-padding); padding-bottom: var(--space-10); overflow: hidden; background: var(--surface-raised); box-shadow: var(--shadow-book); border: var(--border-card) solid var(--line); }
.editorial-leaf[hidden] { display: none; }
.editorial-spread[data-closed="true"] > .editorial-leaf { grid-column: 2; }
.editorial-page-content { display: flow-root; height: 100%; min-height: 0; }
.editorial-page-content p, .editorial-page-content blockquote { font-family: var(--font-book-serif); font-size: var(--text-body); line-height: var(--leading-body); white-space: pre-wrap; overflow-wrap: anywhere; }
.editorial-leaf.jp-page { background: var(--pdf-paper); color: var(--pdf-ink); }
.editorial-page-content h3 { font-size: var(--text-h3); margin-bottom: var(--space-4); overflow-wrap: anywhere; }
.editorial-page-content .editorial-paragraph { margin-block: 0 var(--space-3); }
.editorial-page-content .editorial-paragraph > p { margin: 0; }
.editorial-page-content .editorial-paragraph > .jp-btn { min-height: var(--touch-min); margin: 0; padding-block: 0; font-size: var(--text-small); }
.editorial-page-content figure { margin: 0 0 var(--space-3); }
.editorial-page-content figure img { display: block; width: 100%; height: var(--editorial-reader-photo-height); object-fit: contain; }
.editorial-page-content .editorial-photo-caption { font-size: var(--text-small); }
.editorial-page-content .editorial-contents { display: grid; width: 100%; padding: 0; gap: var(--space-2); }
.editorial-page-content a { display: block; min-height: var(--touch-min); color: var(--accent-ink); font-size: var(--text-body); }
.editorial-page-content .editorial-dedication, .editorial-page-content .editorial-back { margin: 0; }
.editorial-folio { position: absolute; inset-block-end: var(--space-2); inset-inline: var(--space-4); text-align: center; color: var(--ink-muted); }
.editorial-leaf--cover .editorial-cover.jp-book { width: 100%; max-width: none; height: 100%; aspect-ratio: auto; transform: none; margin: 0; padding: var(--space-4); box-shadow: none; border-radius: 0; }
.editorial-leaf--cover .jp-book::before { content: none; }
.editorial-leaf--cover .jp-book__title { color: var(--book-ink); }
.editorial-leaf--cover .editorial-cover.jp-book { gap: var(--space-3); border: var(--border-card) solid var(--book-ink); outline: var(--border-card) solid var(--book-bg); outline-offset: var(--space-1); }
.editorial-leaf--cover .editorial-cover[data-has-photo] { justify-content: start; }
.editorial-leaf--cover .editorial-cover .jp-book__title { margin: 0; }
.editorial-cover-photo { display: block; width: 100%; min-height: 0; flex: 1 1 auto; max-height: var(--editorial-cover-photo-height); object-fit: contain; margin-inline: auto; }
.editorial-cover[data-has-photo] .jp-book__subtitle { margin-block: auto 0; }
.editorial-measuring { position: absolute; inset-block-start: 0; inset-inline-start: 0; width: calc((100% - var(--space-1)) / 2); height: 100%; visibility: hidden; pointer-events: none; }
.editorial-page-navigation { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: var(--space-3); padding-top: var(--space-4); }
.editorial-page-navigation button { min-width: 0; padding-inline: var(--space-3); }
.editorial-page-navigation button:last-child { justify-self: end; }
.editorial-page-navigation button:first-child { justify-self: start; }
.editorial-turning > .editorial-leaf:not([hidden]) { animation: editorial-page-turn var(--editorial-turn-duration) ease-out; }
@keyframes editorial-page-turn { from { opacity: .7; transform: translateX(var(--space-2)); } to { opacity: 1; transform: translateX(0); } }
.editorial-edit-dialog { width: min(var(--editorial-dialog-width), calc(100% - var(--space-8))); max-height: var(--editorial-dialog-height); padding: var(--space-6); color: var(--ink); background: var(--surface-raised); border: var(--border-card) solid var(--control-border); border-radius: var(--radius-card); }
.editorial-edit-dialog::backdrop { background: var(--deep); opacity: .6; }
.editorial-edit-dialog .editorial-inline-editor { display: block; margin-block: var(--space-4); min-height: var(--space-24); max-height: calc(var(--editorial-dialog-height) / 2); }
@media (max-width: 760px) {
  .editorial-spread { grid-template-columns: minmax(0, 1fr); }
  .editorial-spread[data-closed="true"] > .editorial-leaf { grid-column: 1; }
  .editorial-measuring { width: 100%; }
  .editorial-page-navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
  .editorial-page-navigation > span { grid-column: 1 / -1; grid-row: 2; text-align: center; }
  .editorial-page-navigation button:last-child { grid-column: 2; grid-row: 1; }
}
@media (prefers-reduced-motion: reduce) { .editorial-turning > .editorial-leaf:not([hidden]) { animation: none; } }

/* The back uses the same paper, frame and ink as the front cover. */
.editorial-back-cover.jp-book { text-align: left; }
.editorial-page-content .editorial-back-title { color: var(--book-ink); font-family: var(--font-book-serif); margin: 0; }
.editorial-back-cover .editorial-back { flex: 1; min-height: 0; overflow-y: auto; margin-block: var(--space-4); }
.editorial-back-cover .editorial-editable { display: block; width: 100%; }
.editorial-leaf--cover .editorial-folio { display: none; }
.editorial-spread[data-closed="true"][data-back="true"] > .editorial-leaf { grid-column: 1; }

.editorial-clickable-text:focus-visible { outline: var(--focus-width) solid var(--focus); outline-offset: var(--focus-offset); }

/* Fixed A5 page images come from the PDF renderer. Scaling never repaginates text. */
.editorial-a5-viewport { width: 100%; min-width: 0; overflow: auto; padding: var(--space-2); box-sizing: border-box; }
.editorial-a5-spread { display: flex; justify-content: center; width: 100%; max-width: var(--a5-spread-width); margin-inline: auto; }
.editorial-a5-page { position: relative; flex: 1 1 0; min-width: 0; margin: 0; padding: 0; box-shadow: var(--shadow-book); }
.editorial-a5-image { display: block; width: 100%; height: auto; margin: 0; }
.editorial-a5-page .editorial-a5-edit { position: absolute; min-height: 0; min-width: 0; padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; color: transparent; cursor: text; }
.editorial-a5-edit:focus-visible { outline: var(--focus-width) solid var(--focus); outline-offset: 0; }
.editorial-a5-edit:hover { box-shadow: inset 0 0 0 var(--border-card) var(--control-border); }
.editorial-a5-reader > .jp-btn { margin-top: var(--space-4); }
.editorial-a5-reader [hidden] { display: none !important; }
.editorial-a5-viewport--enlarged .editorial-a5-spread { width: var(--a5-spread-width); max-width: none; }

.jp-testimony-invite[hidden] { display: none; }

/* Book controls stay beside the visible page, including enlarged reading. */
.editorial-a5-surface { position: relative; min-width: 0; }
.editorial-a5-reader .editorial-page-navigation { display: flex; justify-content: center; }
.editorial-a5-arrow { position: absolute; top: calc(50% - var(--book-arrow-size) / 2); transform: none; line-height: 1; height: var(--book-arrow-size); z-index: var(--layer-book-controls); width: var(--book-arrow-size); min-width: var(--touch-min); min-height: var(--book-arrow-size); padding: 0; font-size: var(--book-arrow-text); background: var(--surface-raised); box-shadow: var(--shadow-card); }
.editorial-a5-arrow--previous { inset-inline-start: 0; }
.editorial-a5-arrow--next { inset-inline-end: 0; }
.editorial-a5-rotate { text-align: center; padding: var(--space-6); }
.editorial-a5-mobile-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2); padding: var(--space-2); background: var(--surface-raised); }
.editorial-a5-mobile-tools .jp-btn { font-size: var(--text-small); padding: var(--space-2); min-height: var(--touch-min); }
.editorial-a5-touch-hint { margin: 0; padding: var(--space-2); text-align: center; background: var(--surface-raised); }
.editorial-a5-reader--mobile { position: fixed; inset: 0; z-index: var(--layer-book-reader); display: flex; flex-direction: column; width: 100%; max-width: 100%; height: 100dvh; margin: 0; padding: 0; padding-inline: env(safe-area-inset-left) env(safe-area-inset-right); box-sizing: border-box; overflow: hidden; background: var(--surface); }
.editorial-a5-reader--mobile > .editorial-a5-surface { flex: 1; min-height: 0; overflow: hidden; }
.editorial-a5-reader--mobile .editorial-a5-viewport { height: 100%; padding: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; }
.editorial-a5-reader--mobile .editorial-a5-spread { width: 100%; max-width: none; margin: 0; }
.editorial-a5-reader--mobile .editorial-a5-page { width: 100%; max-width: 100%; box-shadow: none; }
.editorial-a5-reader--mobile .editorial-page-navigation { display: none; }
.editorial-a5-reader--mobile:not(.editorial-a5-reader--editing) .editorial-a5-edit { pointer-events: none; }
.editorial-a5-reader--portrait > :is(.editorial-a5-surface,.editorial-page-navigation,.editorial-a5-touch-hint) { display: none; }
.editorial-a5-reader--portrait .editorial-a5-rotate { flex: 1; display: grid; align-content: center; }

.editorial-a5-reader[hidden] { display: none !important; }
