.canonical-forms-section {
  margin-block-start: clamp(42px, 7vw, 76px);
  padding-block-start: clamp(30px, 5vw, 52px);
  border-block-start: 1px solid var(--line, #dbe3ed);
}

.lti-book1-forms {
  width: min(100%, 1040px);
  margin: 24px auto 0;
  color: var(--ink, #0d1b2a);
}

.lti-book1-forms-intro,
.lti-book1-local-note,
.lti-book1-forms-error {
  margin-block: 16px;
  padding: 16px 18px;
  border: 1px solid #8eb8d8;
  border-inline-start: 5px solid #1e5bbe;
  border-radius: 14px;
  background: #eef7ff;
  color: #142f48;
  line-height: 1.6;
}

.lti-book1-forms-error {
  border-color: #c9746b;
  border-inline-start-color: #9b241f;
  background: #fff0ec;
  color: #641a16;
}

.lti-book1-workspace {
  margin-block-start: 20px;
}

.lti-book1-picker {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  gap: 16px;
  align-items: end;
  padding: clamp(16px, 3vw, 24px);
  border: 1px solid var(--line, #dbe3ed);
  border-radius: 18px;
  background: var(--white, #fff);
}

.lti-book1-control {
  min-width: 0;
}

.lti-book1-control label,
.lti-book1-field label,
.lti-book1-output label {
  display: block;
  margin-block-end: 7px;
  font-weight: 800;
}

.lti-book1-control input,
.lti-book1-control select,
.lti-book1-field input,
.lti-book1-field textarea,
.lti-book1-output textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 48px;
  border: 1px solid #64788b;
  border-radius: 10px;
  background: #fff;
  color: #142435;
  padding: 10px 12px;
  font: inherit;
  font-size: max(1rem, 16px);
  line-height: 1.5;
}

.lti-book1-field textarea,
.lti-book1-output textarea {
  resize: vertical;
}

.lti-book1-control input:focus,
.lti-book1-control select:focus,
.lti-book1-field input:focus,
.lti-book1-field textarea:focus,
.lti-book1-output textarea:focus,
.lti-book1-action:focus-visible,
.lti-book1-review input:focus-visible,
.lti-book1-check input:focus-visible {
  outline: 3px solid #0b63ce;
  outline-offset: 3px;
}

.lti-book1-results {
  grid-column: 1 / -1;
  min-height: 1.5em;
  margin: 0;
  color: #475d70;
  font-size: .9rem;
}

.lti-book1-form-panel {
  margin-block-start: 18px;
  padding: clamp(18px, 4vw, 30px);
  border: 1px solid var(--line, #dbe3ed);
  border-radius: 18px;
  background: var(--white, #fff);
}

.lti-book1-form-title {
  margin: 0;
  font-size: clamp(1.25rem, 2vw, 1.55rem);
  line-height: 1.25;
}

.lti-book1-form-note,
.lti-book1-output-note {
  margin: 8px 0 20px;
  color: #475d70;
  line-height: 1.55;
}

.lti-book1-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.lti-book1-field,
.lti-book1-field-wide {
  min-width: 0;
}

.lti-book1-field-wide,
.lti-book1-check {
  grid-column: 1 / -1;
}

.lti-book1-check {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  min-height: 44px;
  padding: 9px 12px;
  border: 1px solid var(--line, #dbe3ed);
  border-radius: 10px;
  background: #f8fbfd;
  font-weight: 650;
  line-height: 1.45;
  cursor: pointer;
}

.lti-book1-check input,
.lti-book1-review input {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  margin: 1px 0 0;
  accent-color: #0b4f95;
}

.lti-book1-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-block-start: 16px;
}

.lti-book1-action {
  min-width: 44px;
  min-height: 46px;
  border: 1px solid #164d7b;
  border-radius: 999px;
  background: #fff;
  color: #123f66;
  padding: 10px 17px;
  font: inherit;
  font-weight: 800;
  line-height: 1.25;
  cursor: pointer;
  touch-action: manipulation;
}

.lti-book1-action:hover {
  background: #edf5fb;
}

.lti-book1-action-primary {
  background: #0a3157;
  color: #fff;
}

.lti-book1-action-primary:hover {
  background: #164d7b;
}

.lti-book1-action-danger {
  border-color: #9b241f;
  color: #861f1a;
}

.lti-book1-privacy-scan {
  margin-block-start: 18px;
  padding: 14px 16px;
  border: 1px solid #ca776a;
  border-radius: 12px;
  background: #fff0ec;
  color: #641a16;
}

.lti-book1-privacy-scan[hidden] {
  display: none !important;
}

.lti-book1-privacy-scan p {
  margin: 6px 0;
}

.lti-book1-privacy-scan ul {
  margin-block: 8px 0;
}

.lti-book1-output {
  margin-block-start: 22px;
  padding: clamp(18px, 4vw, 28px);
  border: 1px solid #9fb0c1;
  border-radius: 18px;
  background: #f8fbfd;
}

.lti-book1-output h4 {
  margin: 0;
  font-size: 1.25rem;
}

.lti-book1-output textarea {
  min-height: 390px;
  background: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: max(.9rem, 15px);
}

.lti-book1-count {
  min-height: 1.4em;
  margin: 6px 0 0;
  color: #475d70;
  font-size: .85rem;
  text-align: end;
}

.lti-book1-review {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  min-height: 44px;
  margin-block-start: 14px;
  font-weight: 750;
  cursor: pointer;
}

.lti-book1-status {
  min-height: 1.6em;
  margin: 14px 2px 0;
  color: #23445d;
  font-weight: 750;
}

.lti-book1-status[data-state="success"] {
  color: #17633a;
}

.lti-book1-status[data-state="error"] {
  color: #8b1f1a;
}

.lti-book1-empty {
  margin: 0;
  padding: 18px;
  border: 1px dashed #7d8fa0;
  border-radius: 12px;
  text-align: center;
}

.lti-book1-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

html[data-theme="dark"] .canonical-forms-section {
  border-color: #365068;
}

html[data-theme="dark"] .lti-book1-forms {
  color: #edf6fc;
}

html[data-theme="dark"] .lti-book1-forms-intro,
html[data-theme="dark"] .lti-book1-local-note {
  border-color: #4d87b2;
  background: #102e48;
  color: #edf6fc;
}

html[data-theme="dark"] .lti-book1-picker,
html[data-theme="dark"] .lti-book1-form-panel {
  border-color: #365068;
  background: #10263b;
}

html[data-theme="dark"] .lti-book1-control input,
html[data-theme="dark"] .lti-book1-control select,
html[data-theme="dark"] .lti-book1-field input,
html[data-theme="dark"] .lti-book1-field textarea,
html[data-theme="dark"] .lti-book1-output textarea {
  border-color: #8094a8;
  background: #091d2f;
  color: #f2f8fc;
}

html[data-theme="dark"] .lti-book1-results,
html[data-theme="dark"] .lti-book1-form-note,
html[data-theme="dark"] .lti-book1-output-note,
html[data-theme="dark"] .lti-book1-count {
  color: #c2d3df;
}

html[data-theme="dark"] .lti-book1-check,
html[data-theme="dark"] .lti-book1-output {
  border-color: #4c6479;
  background: #112c43;
}

html[data-theme="dark"] .lti-book1-action {
  border-color: #8bb9de;
  background: #10263b;
  color: #edf6ff;
}

html[data-theme="dark"] .lti-book1-action:hover {
  background: #1c3e59;
}

html[data-theme="dark"] .lti-book1-action-primary {
  background: #eaf4fb;
  color: #0a2338;
}

html[data-theme="dark"] .lti-book1-action-danger,
html[data-theme="dark"] .lti-book1-status[data-state="error"] {
  border-color: #df8f87;
  color: #ffb4ad;
}

html[data-theme="dark"] .lti-book1-status {
  color: #a7e2bf;
}

html[data-theme="dark"] .lti-book1-privacy-scan,
html[data-theme="dark"] .lti-book1-forms-error {
  border-color: #ef9186;
  background: #3a1714;
  color: #ffe9e6;
}

@media (max-width: 720px) {
  .lti-book1-picker,
  .lti-book1-fields {
    grid-template-columns: 1fr;
  }

  .lti-book1-results,
  .lti-book1-field-wide,
  .lti-book1-check {
    grid-column: auto;
  }

  .lti-book1-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .lti-book1-action {
    width: 100%;
  }

  .lti-book1-output textarea {
    min-height: 320px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lti-book1-forms * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

@media (forced-colors: active) {
  .lti-book1-action,
  .lti-book1-check,
  .lti-book1-picker,
  .lti-book1-form-panel,
  .lti-book1-output {
    border: 1px solid CanvasText;
  }
}

@media print {
  body.lti-book1-printing * {
    visibility: hidden !important;
  }

  body.lti-book1-printing .lti-book1-print-target,
  body.lti-book1-printing .lti-book1-print-target * {
    visibility: visible !important;
  }

  body.lti-book1-printing .lti-book1-print-target {
    position: absolute !important;
    inset: 0 auto auto 0 !important;
    width: 100% !important;
    margin: 0 !important;
    color: #000 !important;
  }

  .lti-book1-print-target .lti-book1-forms-intro,
  .lti-book1-print-target .lti-book1-local-note,
  .lti-book1-print-target .lti-book1-picker,
  .lti-book1-print-target .lti-book1-generate-actions,
  .lti-book1-print-target .lti-book1-privacy-scan,
  .lti-book1-print-target .lti-book1-export-actions,
  .lti-book1-print-target .lti-book1-status,
  .lti-book1-print-target noscript {
    display: none !important;
  }

  .lti-book1-print-target .lti-book1-form-panel,
  .lti-book1-print-target .lti-book1-output {
    margin: 0 0 16pt !important;
    padding: 12pt !important;
    border: 1px solid #777 !important;
    background: #fff !important;
    break-inside: avoid;
  }

  .lti-book1-print-target input,
  .lti-book1-print-target textarea {
    border: 1px solid #777 !important;
    background: #fff !important;
    color: #000 !important;
  }

  .lti-book1-print-target .lti-book1-output textarea {
    min-height: 0 !important;
    overflow: visible !important;
  }

  .lti-book1-print-target .lti-book1-review,
  .lti-book1-print-target .lti-book1-count {
    display: none !important;
  }
}


/* V17 — entrée par situation, douze essentiels d’abord. */
.lti-book1-question{margin:0 0 6px;font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.1}
.lti-book1-question-note{margin:0 0 18px;color:var(--muted,#607080)}
.lti-book1-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}
.lti-book1-quick{min-height:54px;border:1px solid #7a95aa;border-radius:14px;background:#fff;color:#123f66;padding:11px 13px;font:inherit;font-weight:800;text-align:left;cursor:pointer}
.lti-book1-quick:hover{background:#edf5fb}
.lti-book1-quick:focus-visible{outline:3px solid #0b63ce;outline-offset:3px}
.lti-book1-all-tools{margin:0 0 18px;border:1px solid var(--line,#dbe3ed);border-radius:14px;overflow:hidden}
.lti-book1-all-tools>summary{padding:14px 16px;font-weight:850;cursor:pointer;background:#f8fbfd}
.lti-book1-all-tools .lti-book1-picker{border:0;border-top:1px solid var(--line,#dbe3ed);border-radius:0;margin:0}
html[data-theme="dark"] .lti-book1-quick{background:#10263b;color:#edf6ff;border-color:#6888a1}
html[data-theme="dark"] .lti-book1-quick:hover,html[data-theme="dark"] .lti-book1-all-tools>summary{background:#18344c}
@media(max-width:820px){.lti-book1-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.lti-book1-quick-grid{grid-template-columns:1fr}}
