/* MyFD demonstration wrapper; clinical source styling stays unchanged. */
.myfd-demo-links { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:8px; }
.myfd-demo-links a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.preview-banner { line-height:1.55; }
.demo-info-list { padding-left:22px; line-height:1.65; }
/* Checked answers remain reading material even when selection is locked. */
.answer-option:disabled { color:#193341; opacity:1; cursor:default; }
.original-pages { margin-bottom:24px; }
.original-pages>h2 { margin:0 0 16px; }
.original-pages>[data-toggle-originals] { min-height:44px; margin-top:8px; }
.protocol-book { min-width:0; }
.book-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.book-toolbar p { margin:0; font-weight:700; }
.book-viewport { max-height:70dvh; overflow:auto; padding:16px; background:#e4eaed; border:1px solid #cad4da; border-radius:10px; overscroll-behavior:contain; }
.book-paper { position:relative; width:fit-content; max-width:100%; margin:auto; background:#fff; box-shadow:0 2px 10px #142f3d1f; }
.book-paper img { display:block; max-width:100%; max-height:65dvh; width:auto; height:auto; margin:auto; }
.book-load-status { margin:0; padding:8px 12px; font-size:14px; }
.book-load-status:empty { display:none; }
.book-zoomed .book-paper { max-width:none; }
.book-zoomed .book-paper img { max-width:none; max-height:none; width:1102px; }
.book-controls { padding:18px 0 8px; }
.book-turn { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.book-jump { display:flex; align-items:center; gap:8px; margin:0; }
.book-jump label { font-weight:700; }
.book-jump input { width:76px; min-width:0; min-height:44px; border:1px solid #a7b6bf; border-radius:6px; padding:8px; color:#193341; background:#fff; font:inherit; }
.book-controls .button,.book-toolbar .button { min-height:44px; }
.book-controls button:disabled { opacity:.45; cursor:default; }
.book-slider-label { display:block; margin-top:18px; font-weight:700; font-size:14px; }
.book-slider { display:block; width:100%; min-height:44px; margin:0; accent-color:#193341; cursor:pointer; }
.protocol-book :focus-visible { outline:3px solid #246aa1; outline-offset:3px; }
#book-error { color:#a32e25; }
@media(max-width:760px) {
  .sidebar { flex-wrap:wrap; }
  .sidebar nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; margin:0; }
  .sidebar nav .nav-link { flex-direction:column; text-align:center; justify-content:center; min-height:64px; padding:8px 4px; line-height:1.3; }
  .sidebar nav .nav-link span { display:block; }
  .protocol-book .page-heading { flex-wrap:wrap; }
}
@media(max-width:600px) {
  .book-viewport { padding:6px; }
  .book-turn>[data-book-next] { margin-left:auto; }
  .book-jump { order:3; width:100%; justify-content:center; }
  .book-paper img { max-height:none; }
}
.study-layout select {
  -webkit-appearance:none; appearance:none;
  min-height:44px; padding:10px 36px 10px 12px;
  background-color:#fff;
  background-image:linear-gradient(45deg,transparent 50%,#193341 50%),linear-gradient(135deg,#193341 50%,transparent 50%);
  background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;
  background-size:5px 5px; background-repeat:no-repeat;
}
@media(max-width:600px) {
  .topbar { flex-wrap:wrap; gap:10px; height:auto; min-height:64px; padding-top:12px; padding-bottom:12px; }
  .topbar>span { flex:1 1 150px; }
  .preview-banner { padding:14px 18px; }
  .myfd-demo-links { gap:10px 16px; }
  .button-row { flex-wrap:wrap; }
  .rhythm-strip { max-width:100%; height:auto; }
  dialog { width:min(92vw,520px); max-height:90dvh; overflow:auto; }
}
@media(max-width:360px) {
  .patient-bar .patient-kind { flex-basis:100%; }
  .patient-bar .weight-entry { width:100%; }
  .patient-bar .weight-input input { flex:1; min-width:0; }
}
