/* Reader surfaces are scoped to avoid changing the student's account or library. */
.il-reader {
  --reader-ink: #232323;
  --reader-muted: #606060;
  --reader-accent: #5d5d5d;
  --reader-paper: #f8f8f8;
  --reader-desk: #eaeaea;
  --reader-line: #d9d9d9;
  --reader-control-line: #7f7f7f;
  position: fixed;
  inset: 0;
  z-index: 300;
  display: flex;
  flex-direction: column;
  background: var(--reader-desk);
  color: var(--reader-ink);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
}
.il-reader *, .il-reader *::before, .il-reader *::after { box-sizing: border-box; }
.il-reader [hidden] { display: none !important; }
.il-reader button, .il-reader input, .il-reader select, .il-reader textarea { font: inherit; }
.il-reader button { cursor: pointer; color: inherit; border: 0; background: none; touch-action: manipulation; }
.il-reader button:disabled { cursor: default; opacity: .35; }
.il-reader button, .il-reader a, .il-reader input, .il-reader textarea, .il-reader select { -webkit-tap-highlight-color: transparent; }
.il-reader :focus-visible { outline: 3px solid var(--reader-accent); outline-offset: 3px; }
.il-reader-stage:focus-visible { outline-offset: -3px; }
.il-reader svg { width: 21px; height: 21px; stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.il-reader h2, .il-reader h3, .il-reader p { margin: 0; }
.il-reader-header {
  min-height: 74px;
  padding: max(12px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) 12px max(24px, env(safe-area-inset-left));
  display: flex;
  align-items: center;
  gap: 24px;
  background: var(--reader-paper);
  border-bottom: 1px solid var(--reader-line);
  z-index: 3;
}
.il-reader-back { display: flex; align-items: center; gap: 4px; min-height: 44px; padding: 0; color: var(--reader-accent) !important; font-size: 14px !important; white-space: nowrap; }
.il-reader-heading { display: flex; flex-direction: column; gap: 5px; min-width: 0; margin-right: auto; }
.il-reader-heading strong { font-size: 15px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 52vw; }
.il-reader-heading > span { font-size: 11px; color: var(--reader-muted); }
.il-reader-tools { display: flex; gap: 3px; }
.il-reader-icon { width: 44px; height: 44px; border-radius: 10px; display: inline-flex; justify-content: center; align-items: center; padding: 0; transition: background .18s ease, color .18s ease; }
.il-reader-icon:hover { background: #7878780d; }
.il-reader-icon[aria-pressed="true"], .il-reader-icon[aria-expanded="true"] { color: var(--reader-accent); background: #78787812; }
.il-reader-icon[aria-pressed="true"][data-reader-action="bookmark"] svg { fill: #78787822; }
.il-reader-body { flex: 1; min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr); position: relative; }
.il-reader.has-panel .il-reader-body { grid-template-columns: 320px minmax(0, 1fr); }
.il-reader-stage { position: relative; width: 100%; max-width: none; margin: 0; padding: 0; min-width: 0; min-height: 0; overflow: auto; overscroll-behavior: contain; scroll-behavior: auto; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
.il-reader-sheet-wrap { width: max-content; min-width: 100%; min-height: 100%; display: flex; justify-content: center; align-items: flex-start; padding: 24px 32px; }
.il-reader-sheet { background: white; position: relative; flex-shrink: 0; line-height: 0; box-shadow: 0 2px 4px #2626260c, 0 10px 36px #26262614; }
.il-reader-sheet-wrap.is-continuous { flex-direction: column; align-items: center; justify-content: flex-start; gap: 18px; overflow-anchor: none; }
.il-reader-stage { overflow-anchor: none; }
.il-reader-page-slot { position: relative; flex: none; background: #ffffffb0; line-height: 0; }
.il-reader-page-slot > .il-reader-sheet { position: absolute; inset: 0 auto auto 0; }
.il-reader-page-placeholder { position: absolute; inset: 0; display: grid; place-content: center; color: var(--reader-muted); font-size: 12px; line-height: 1.5; }
.il-reader-page-slot[data-failed] { cursor: pointer; }
.il-reader-tool-label { display: none; }
.il-reader-tools .il-reader-icon, .il-reader-back { min-width: 44px; }
.il-reader-tools .il-reader-tool-label { display: inline; font-size: 12px; }
.il-reader-tools .il-reader-icon { width: auto; padding: 0 10px; gap: 7px; }
.il-reader-tools [data-reader-action="bookmark"], .il-reader-tools [data-reader-action="theme"], .il-reader-tools [data-reader-action="focus"] { display: none; }
.il-reader-icon[data-reader-action="reading"], .il-reader-panel-heading .il-reader-icon { width: auto; padding: 0 12px; gap: 7px; }
.il-reader-icon[data-reader-action="reading"] .il-reader-tool-label, .il-reader-panel-heading .il-reader-tool-label { display: inline; font-size: 12px; }
.il-reader-setting { display: flex; flex-direction: column; gap: 10px; margin-bottom: 22px; font-size: 12px; font-weight: 600; }
.il-reader-setting select { width: 100%; min-height: 48px; padding: 12px; background: var(--reader-paper); color: var(--reader-ink); border: 1px solid var(--reader-control-line); border-radius: 10px; font: inherit; }
.il-reader-setting-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 24px; }
.il-reader-setting-button { min-height: 54px; display: flex; align-items: center; gap: 8px; padding: 10px !important; border: 1px solid var(--reader-control-line) !important; border-radius: 10px; font-size: 12px !important; text-align: left; }
.il-reader-setting-button svg { flex: none; }
.il-reader-stage.is-pinching .il-reader-sheet { transition: none; }
.il-reader-stage.is-pinching .textLayer { user-select: none; -webkit-user-select: none; }
.il-reader-sheet canvas { display: block; }
.il-reader-state { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; gap: 14px; width: min(350px, calc(100% - 40px)); padding: 26px; text-align: center; background: var(--reader-paper); border: 1px solid var(--reader-line); border-radius: 18px; box-shadow: 0 12px 40px #2929290c; line-height: 1.5; z-index: 2; }
.il-reader-state strong { font-size: 16px; }
.il-reader-state p { font-size: 13px; color: var(--reader-muted); }
.il-reader-spinner { width: 28px; height: 28px; border: 2px solid var(--reader-line); border-top-color: var(--reader-accent); border-radius: 50%; animation: il-reader-spin .8s linear infinite; }
@keyframes il-reader-spin { to { transform: rotate(360deg); } }
.il-reader-footer { flex-shrink: 0; padding: 7px max(24px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left)); background: var(--reader-paper); border-top: 1px solid var(--reader-line); z-index: 3; }
.il-reader-dock { display: flex; align-items: center; gap: 20px; max-width: 1120px; margin: auto; min-height: 48px; }
.il-reader-pages { display: flex; align-items: center; gap: 6px; }
.il-reader-page-label { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--reader-muted); white-space: nowrap; }
.il-reader-page-label input { width: 48px; min-height: 44px; color: var(--reader-ink); border: 1px solid var(--reader-control-line); background: transparent; text-align: center; border-radius: 8px; appearance: textfield; -moz-appearance: textfield; }
.il-reader-page-label input::-webkit-inner-spin-button, .il-reader-page-label input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.il-reader-page-label b { font-weight: 400; }
.il-reader-zoom { display: flex; align-items: center; gap: 2px; margin-left: auto; }
.il-reader-zoom select { appearance: none; padding: 10px 8px; min-height: 44px; min-width: 75px; border: 0; background: transparent; color: var(--reader-ink); text-align: center; cursor: pointer; font-size: 12px; }
.il-reader-save-state { min-width: 128px; text-align: right; font-size: 10px; color: var(--reader-muted); }
.il-reader-save-state.is-error { color: #535353; cursor: pointer; }
.il-reader-timeline { display: block; width: 100%; max-width: 1120px; margin: 1px auto 0; }
.il-reader-timeline input { display: block; width: 100%; height: 44px; margin: 0; appearance: none; background: transparent; cursor: pointer; accent-color: var(--reader-accent); }
.il-reader-timeline input::-webkit-slider-runnable-track { height: 3px; background: linear-gradient(to right, var(--reader-accent) var(--reader-progress, 0%), var(--reader-control-line) var(--reader-progress, 0%)); border-radius: 3px; }
.il-reader-timeline input::-webkit-slider-thumb { appearance: none; width: 12px; height: 12px; border: 2px solid var(--reader-paper); background: var(--reader-accent); box-shadow: 0 0 0 1px var(--reader-accent); border-radius: 50%; margin-top: -4.5px; }
.il-reader-timeline input::-moz-range-track { height: 3px; background: var(--reader-control-line); border-radius: 3px; }
.il-reader-timeline input::-moz-range-progress { height: 3px; background: var(--reader-accent); }
.il-reader-timeline input::-moz-range-thumb { width: 10px; height: 10px; background: var(--reader-accent); border: 2px solid var(--reader-paper); border-radius: 50%; }
.il-reader-panel { display: flex; flex-direction: column; min-height: 0; background: var(--reader-paper); border-right: 1px solid var(--reader-line); z-index: 4; }
.il-reader-panel-heading { flex-shrink: 0; padding: 15px 16px 10px 23px; display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.il-reader-panel-heading h2 { font-size: 19px; letter-spacing: -.4px; font-weight: 600; }
.il-reader-panel-content { overflow: auto; flex: 1; padding: 0 20px 24px; overscroll-behavior: contain; scrollbar-width: thin; }
.il-reader-panel-tabs { display: flex; gap: 4px; padding: 4px; background: var(--reader-desk); border-radius: 9px; margin-bottom: 18px; }
.il-reader-panel-tabs button { flex: 1; min-height: 36px; font-size: 12px; border-radius: 6px; }
.il-reader-panel-tabs button.is-selected { background: var(--reader-paper); box-shadow: 0 1px 4px #29292912; font-weight: 600; }
.il-reader-panel-intro { padding: 22px 4px; line-height: 1.55; }
.il-reader-panel-intro strong { font-size: 14px; font-weight: 600; }
.il-reader-panel-intro p, .il-reader-panel-help { color: var(--reader-muted); font-size: 12px; line-height: 1.65; }
.il-reader-panel-intro p { margin-top: 7px; }
.il-reader-outline-row { display: flex; width: 100%; gap: 16px; align-items: baseline; padding: 13px 4px 13px calc(4px + var(--outline-depth, 0) * 12px); border-bottom: 1px solid var(--reader-line) !important; text-align: left; line-height: 1.45; font-size: 12px !important; }
.il-reader-outline-row span { flex: 1; }
.il-reader-outline-row small { color: var(--reader-muted); font-size: 10px; }
.il-reader-outline-row[aria-current] { color: var(--reader-accent); font-weight: 600; }
.il-reader-outline-row:hover { background: #78787808; }
.il-reader-thumbnails { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 12px; }
.il-reader-thumbnail { min-height: 172px; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 10px; position: relative; padding: 10px 4px; border-radius: 9px; font-size: 11px !important; }
.il-reader-thumbnail::before { content: ''; display: block; width: 100px; height: 140px; border: 1px solid var(--reader-line); background: #fff; border-radius: 1px; }
.il-reader-thumbnail.is-loaded::before { display: none; }
.il-reader-thumbnail canvas { max-width: 100%; box-shadow: 0 1px 5px #29292922; }
.il-reader-thumbnail[aria-current] { background: #7878780c; color: var(--reader-accent); box-shadow: inset 0 0 0 1px #78787855; }
.il-reader-search-form { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 18px; }
.il-reader-search-form input, .il-reader-password input { min-height: 46px; padding: 12px; border-radius: 9px; border: 1px solid var(--reader-control-line); background: transparent; color: var(--reader-ink); font-size: 13px; width: 100%; }
.il-reader-primary { min-height: 44px; padding: 10px 16px !important; background: var(--reader-accent) !important; color: white !important; border-radius: 9px; font-size: 13px !important; font-weight: 600 !important; }
.il-reader-primary:hover { filter: brightness(.95); }
.il-reader-result { display: flex; flex-direction: column; gap: 8px; text-align: left; width: 100%; padding: 16px 0; border-bottom: 1px solid var(--reader-line) !important; line-height: 1.6; }
.il-reader-result strong { color: var(--reader-accent); font-size: 12px; }
.il-reader-result span { font-size: 12px; }
.il-reader-result mark { color: inherit; background: #c7c7c777; border-radius: 2px; }
.il-reader-note-editor { display: flex; flex-direction: column; gap: 12px; padding-top: 4px; }
.il-reader-note-sync { margin: 0; color: var(--reader-ink); font-size: 12px; line-height: 1.5; }
.il-reader-note-sync.is-error { font-weight: 600; }
.il-reader-note-editor label { font-size: 12px; font-weight: 600; }
.il-reader-note-editor textarea { resize: vertical; padding: 14px; min-height: 135px; max-height: 350px; width: 100%; border: 1px solid var(--reader-control-line); border-radius: 10px; color: var(--reader-ink); background: transparent; font-size: 13px; line-height: 1.65; }
.il-reader-notes-title { font-size: 12px; font-weight: 600; margin: 28px 0 4px !important; }
.il-reader-saved-row { display: flex; align-items: center; gap: 8px; padding: 14px 0; border-bottom: 1px solid var(--reader-line); }
.il-reader-saved-row > .il-reader-icon { flex-shrink: 0; }
.il-reader-saved-row > button:first-child { flex: 1; text-align: left; min-width: 0; line-height: 1.5; padding: 0; }
.il-reader-saved-row strong { font-size: 12px; font-weight: 600; display: block; color: var(--reader-accent); }
.il-reader-saved-row span { display: block; font-size: 12px; color: var(--reader-muted); margin-top: 7px; white-space: pre-wrap; overflow-wrap: anywhere; }
.il-reader-return, .il-reader-exit-focus { position: absolute; z-index: 5; background: var(--reader-paper) !important; border: 1px solid var(--reader-line) !important; border-radius: 24px; box-shadow: 0 3px 15px #29292912; min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 10px 16px !important; font-size: 12px !important; }
.il-reader-return { left: 24px; bottom: 116px; }
.il-reader.has-panel .il-reader-return { left: 344px; }
.il-reader-exit-focus { right: max(20px, env(safe-area-inset-right)); top: max(16px, env(safe-area-inset-top)); }
.il-reader-toast { position: absolute; bottom: 122px; left: 50%; transform: translateX(-50%); max-width: min(450px, calc(100% - 36px)); padding: 12px 18px; color: #fff; background: #272727f2; border-radius: 12px; font-size: 12px; line-height: 1.5; box-shadow: 0 6px 22px #0002; z-index: 10; text-align: center; }
.il-reader-password { display: flex; flex-direction: column; gap: 10px; width: 100%; }
.il-reader-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.il-reader.is-focused .il-reader-header, .il-reader.is-focused .il-reader-footer { display: none; }
.il-reader.is-focused .il-reader-return { bottom: 24px; }
.il-reader.is-dark { --reader-ink: #ebebeb; --reader-muted: #aaaaaa; --reader-paper: #242424; --reader-desk: #161616; --reader-line: #3c3c3c; --reader-control-line: #7c7c7c; --reader-accent: #ababab; }
.il-reader.is-dark .il-reader-sheet { box-shadow: 0 5px 32px #0005; }
.il-reader.is-dark .il-reader-primary { color: #1d1d1d !important; }
.il-reader.is-dark .il-reader-save-state.is-error { color: #b9b9b9; }

/* Text-layer geometry follows PDF.js 5.4.296 (Mozilla, Apache-2.0). */
.il-reader .textLayer {
  position: absolute; text-align: initial; inset: 0; overflow: clip;
  opacity: 1; line-height: 1; -webkit-text-size-adjust: none; text-size-adjust: none;
  forced-color-adjust: none; transform-origin: 0 0; caret-color: CanvasText; z-index: 1;
}
.il-reader .textLayer :is(span, br) { color: transparent; position: absolute; white-space: pre; cursor: text; transform-origin: 0% 0%; }
.il-reader .textLayer > :not(.markedContent), .il-reader .textLayer .markedContent span:not(.markedContent) { z-index: 1; }
.il-reader .textLayer span.markedContent { top: 0; height: 0; }
.il-reader .textLayer span[role="img"] { user-select: none; cursor: default; }
.il-reader .textLayer ::selection { background: #90909044; }
.il-reader .textLayer br::selection { background: transparent; }
.il-reader .textLayer .endOfContent { display: block; position: absolute; inset: 100% 0 0; z-index: 0; cursor: default; user-select: none; }
.il-reader .textLayer.selecting .endOfContent { top: 0; }
.hiddenCanvasElement { position: absolute; inset: 0 auto auto 0; width: 0; height: 0; visibility: hidden; pointer-events: none; }

@media (max-width: 1000px) {
  .il-reader-header { gap: 15px; padding-left: 16px; padding-right: 16px; }
  .il-reader-heading strong { max-width: 30vw; }
  .il-reader-save-state { min-width: 105px; }
}
@media (max-width: 700px) {
  .il-reader-header { flex-wrap: wrap; gap: 4px 12px; padding: max(8px, env(safe-area-inset-top)) 12px 6px; }
  .il-reader-back span { display: inline; font-size: 12px; }
  .il-reader-back { width: auto; justify-content: center; }
  .il-reader-heading { flex: 1; }
  .il-reader-heading strong { max-width: calc(100vw - 132px); font-size: 14px; }
  .il-reader-heading > span { font-size: 10px; }
  .il-reader-tools { width: 100%; justify-content: space-between; padding-left: 3px; padding-right: 3px; }
  .il-reader-tools .il-reader-icon { width: auto; height: 44px; flex: 1; gap: 6px; font-size: 11px; }
  .il-reader-tools .il-reader-tool-label { display: inline; }
  .il-reader-tools [data-reader-action="bookmark"],.il-reader-tools [data-reader-action="theme"],.il-reader-tools [data-reader-action="focus"] { display: none; }
  .il-reader.has-panel .il-reader-body { grid-template-columns: minmax(0, 1fr); }
  .il-reader-panel { position: absolute; inset: 0; border: 0; z-index: 6; }
  .il-reader-panel-heading { padding: 10px 16px 8px 20px; }
  .il-reader-panel-content { padding: 0 20px 24px; }
  .il-reader-thumbnails { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .il-reader-sheet-wrap { padding: 12px 8px; }
  .il-reader-footer { padding: 5px max(8px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)); }
  .il-reader-dock { gap: 4px; flex-wrap: wrap; }
  .il-reader-pages { gap: 0; }
  .il-reader-page-label { gap: 5px; font-size: 11px; }
  .il-reader-page-label input { width: 44px; }
  .il-reader-zoom { gap: 0; }
  .il-reader-footer .il-reader-zoom { display: none; }
  .il-reader-footer [data-reader-action="reading"] { margin-left: auto; }
  .il-reader-timeline { display: none; }
  .il-reader[data-reading-mode="continuous"] .il-reader-pages > .il-reader-icon { display: none; }
  .il-reader-zoom .il-reader-icon { width: 44px; }
  .il-reader-zoom select { min-width: 56px; padding: 10px 3px; }
  .il-reader-save-state { width: 100%; min-width: 0; text-align: center; min-height: 12px; font-size: 9px; }
  .il-reader-return, .il-reader.has-panel .il-reader-return { left: 12px; bottom: calc(142px + env(safe-area-inset-bottom)); max-width: calc(100% - 24px); }
  .il-reader.has-panel .il-reader-return { display: none; }
  .il-reader-toast { bottom: calc(144px + env(safe-area-inset-bottom)); }
}
@media (max-width: 360px) {
  .il-reader-zoom .il-reader-icon { width: 44px; }
  .il-reader-pages .il-reader-icon { width: 44px; }
  .il-reader-thumbnails { grid-template-columns: 1fr 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .il-reader *, .il-reader *::before, .il-reader *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
  .il-reader .textLayer ::selection { background: Highlight; }
  .il-reader-sheet, .il-reader-state { border: 1px solid CanvasText; }
}

/* Contrast belongs to the reader chrome; source PDF colours are never inverted. */
.il-reader input::placeholder,.il-reader textarea::placeholder{color:var(--reader-muted);opacity:1}
.il-reader-icon[aria-pressed="true"],.il-reader-icon[aria-expanded="true"]{box-shadow:inset 0 -2px currentColor}
.il-reader-panel-tabs button.is-selected{box-shadow:inset 0 -2px var(--reader-accent);font-weight:600}
.il-reader-outline-row[aria-current]{text-decoration:underline;text-underline-offset:3px}
.il-reader-thumbnail[aria-current]{box-shadow:inset 0 0 0 2px var(--reader-accent);font-weight:600}
.il-reader.is-dark .il-reader-result mark{background:#434343}
@media(max-width:700px){.il-reader-search-form input,.il-reader-password input,.il-reader-note-editor textarea{font-size:16px}.il-reader-panel-tabs button{min-height:44px}.il-reader-save-state.is-error{min-height:44px;display:flex;align-items:center;justify-content:center}.il-reader-saved-row>button:first-child{min-height:44px}}
@media(max-width:360px){.il-reader-return,.il-reader-toast{bottom:calc(186px + env(safe-area-inset-bottom))}.il-reader-zoom{flex-wrap:nowrap}}

/* One quiet navigation bar; document tools appear when requested. */
.il-reader{--reader-ink:#232323;--reader-muted:#646464;--reader-accent:#555555;--reader-paper:#ffffff;--reader-desk:#f2f2f2;--reader-line:#e5e5e5}
.il-reader-header{min-height:58px;padding:6px max(18px,env(safe-area-inset-right)) 6px max(18px,env(safe-area-inset-left));gap:16px;background:var(--reader-paper)}
.il-reader-heading{gap:3px}
.il-reader-heading strong{font-size:14px;letter-spacing:-.2px}
.il-reader-heading>span{font-size:10px}
.il-reader-back{font-size:13px!important}
.il-reader-tools{gap:3px}
.il-reader-tools .il-reader-icon{height:44px;padding:0 10px;gap:6px}
.il-reader-tools .il-reader-tool-label{font-size:11px}
.il-reader-tools [data-reader-action=reading]{width:44px;padding:0}
.il-reader-tools [data-reader-action=reading] .il-reader-tool-label{display:none}
.il-reader-icon:hover{background:#5555550d}
.il-reader-footer{padding:0 max(16px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:0;background:var(--reader-paper)}
.il-reader-dock{min-height:44px;gap:12px;justify-content:center}
.il-reader-pages{gap:5px}
.il-reader-page-label{gap:4px;font-size:11px}
.il-reader-page-label input{border:0 solid var(--reader-control-line);border-bottom-width:1px;border-radius:0;min-height:44px;width:44px;font-size:12px;font-weight:600;line-height:1}
.il-reader-page-label input:focus-visible{background:var(--reader-desk);outline-offset:-3px}
.il-reader-page-label b{font-size:11px;font-weight:400}
.il-reader-page-divider{color:var(--reader-muted)}
.il-reader-page-word{display:none}
.il-reader-zoom{margin-left:16px}
.il-reader-save-state{position:absolute;right:20px;min-width:0;max-width:240px;text-align:right;font-size:10px}
.il-reader-timeline{display:none}
.il-reader-panel-heading{padding:16px 16px 12px 24px}
.il-reader-panel-heading h2{font-size:23px;font-weight:600;letter-spacing:-.6px}
.il-reader-panel-heading .il-reader-icon{font-size:12px;background:var(--reader-desk);border-radius:22px}
.il-reader-panel-content{padding:4px 24px 26px}
.il-reader-shortcuts{margin:0 0 26px;border-radius:14px;background:var(--reader-desk);padding:0 14px}
.il-reader-shortcut{display:flex;align-items:center;gap:14px;width:100%;min-height:70px;text-align:left;padding:14px 0;border-bottom:1px solid var(--reader-line)!important}
.il-reader-shortcut:last-child{border-bottom:0!important}
.il-reader-shortcut>svg{color:var(--reader-accent);width:23px;height:23px;flex:none}
.il-reader-shortcut>span{display:flex;flex-direction:column;gap:4px}
.il-reader-shortcut strong{font-size:13px;font-weight:600;line-height:1.3}
.il-reader-shortcut small{font-size:11px;color:var(--reader-muted);line-height:1.4}
.il-reader-setting{font-size:12px;gap:9px;margin-bottom:22px}
.il-reader-setting select{font-size:14px;border-radius:10px;padding:12px;min-height:46px}
.il-reader-setting-actions{gap:8px;margin-bottom:16px}
.il-reader-setting-button{border-color:var(--reader-line)!important;min-height:52px;font-size:12px!important;background:var(--reader-desk)!important}
.il-reader-note-editor textarea,.il-reader-search-form input,.il-reader-password input{font-size:16px}
.il-reader-primary{border-radius:11px;font-size:14px!important}
.il-reader-return{bottom:66px;border-radius:22px;font-size:11px!important}
.il-reader-toast{bottom:74px;font-size:13px}
@media(max-width:700px){
  .il-reader-header{flex-wrap:nowrap;min-height:56px;padding:max(6px,env(safe-area-inset-top)) 8px 6px;gap:6px}
  .il-reader-back{width:44px;min-width:44px;justify-content:center}
  .il-reader-back span{display:none}
  .il-reader-heading{margin:0;flex:1;gap:3px}
  .il-reader-heading strong{max-width:calc(100vw - 160px);font-size:13px;line-height:1.3}
  .il-reader-heading>span{font-size:10px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100vw - 160px)}
  .il-reader-tools{width:auto;flex:none;padding:0;gap:0}
  .il-reader-tools .il-reader-icon{width:44px;min-width:44px;height:44px;padding:0;flex:none;gap:0}
  .il-reader-tools .il-reader-tool-label{display:none}
  .il-reader-tools [data-reader-action=search],.il-reader-tools [data-reader-action=notes]{display:none}
  .il-reader-sheet-wrap{padding:10px 8px;gap:18px}
  .il-reader-footer{padding:0 8px max(0px,env(safe-area-inset-bottom));border:0}
  .il-reader-dock{flex-wrap:nowrap;min-height:44px;justify-content:center;gap:0}
  .il-reader-pages{gap:7px}
  .il-reader-page-label{font-size:11px;gap:2px}
  .il-reader-page-label input{min-height:44px;width:44px;font-size:12px;background:transparent}
  .il-reader-save-state{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .il-reader.has-save-error .il-reader-dock{flex-wrap:wrap}
  .il-reader.has-save-error .il-reader-save-state{position:static;width:100%;height:auto;min-height:44px;clip-path:none;white-space:normal;display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px}
  .il-reader.has-panel .il-reader-footer{display:none}
  .il-reader-panel-heading{padding:18px 16px 14px 24px}
  .il-reader-panel-content{padding:4px 24px 24px}
  .il-reader-shortcut strong{font-size:14px}
  .il-reader-shortcut small{font-size:12px}
  .il-reader-setting select{font-size:16px}
  .il-reader-return,.il-reader.has-panel .il-reader-return{bottom:calc(58px + env(safe-area-inset-bottom));left:12px}
  .il-reader-toast{bottom:calc(62px + env(safe-area-inset-bottom))}
  .il-reader-exit-focus{font-size:11px!important;padding:8px 12px!important;min-height:44px;top:max(8px,env(safe-area-inset-top));right:8px}
}

.il-reader:not(.is-dark){--reader-ink:#1d1d1f;--reader-muted:#636366;--reader-accent:#303034;--reader-paper:#ffffff;--reader-desk:#f2f2f7;--reader-line:#e5e5ea;--reader-control-line:#7a7a80}
.il-reader svg.il-system-icon,.il-reader svg.il-system-icon path{stroke:none!important;fill:currentColor}
.il-reader-icon:hover{background:#80808012}
.il-reader-icon[aria-pressed=true],.il-reader-icon[aria-expanded=true]{background:#8080801c;color:var(--reader-ink)}
.il-reader-icon[aria-pressed=true][data-reader-action=bookmark] svg{fill:currentColor}

/* The return action occupies its own row instead of covering the PDF. */
.il-reader .il-reader-return,
.il-reader.has-panel .il-reader-return,
.il-reader.is-focused .il-reader-return {
  position:static; flex-shrink:0; align-self:stretch; width:auto; margin:0;
  min-height:44px; justify-content:flex-start;
  padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))!important;
  border:0!important; border-top:1px solid var(--reader-line)!important;
  border-radius:0!important; box-shadow:none; max-width:none;
}

/* Initial protected page snapshot; replaced by the original PDF canvas. */
.il-reader-opening-preview {display:block;position:absolute;top:12px;left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:900px;height:auto;pointer-events:none;box-shadow:0 4px 18px #0000000a;}
.has-opening-preview .il-reader-state {top:auto;bottom:90px;transform:translateX(-50%);width:min(340px,calc(100% - 32px));padding:12px 16px;gap:4px;background:var(--reader-paper);}
.has-opening-preview .il-reader-spinner {width:16px;height:16px;}
.has-opening-preview .il-reader-state strong {font-size:13px;}
.has-opening-preview .il-reader-state p {font-size:11px;margin:0;}

/* Painel de opções v2 (13/10/2026): cartão de download no topo, listas agrupadas,
   controles segmentados e chaves — no lugar dos selects e da grade de botões. */
.il-reader{--rp-gold:#b8862b;--rp-gold-ink:#ffffff;--rp-card:var(--reader-desk)}
.il-reader.is-dark{--rp-gold:#d4a24c;--rp-gold-ink:#1a1408}
.il-reader-icon[aria-pressed=true],.il-reader-icon[aria-expanded=true]{box-shadow:none}
.il-reader-tools [data-reader-action=download]{color:var(--rp-gold)}
.il-reader-tools [data-reader-action=download]:hover{background:color-mix(in srgb,var(--rp-gold) 12%,transparent)}
.il-rp-download{display:flex;align-items:center;gap:14px;width:100%;padding:16px!important;margin:4px 0 22px;border-radius:16px;background:var(--rp-gold)!important;color:var(--rp-gold-ink)!important;text-align:left;box-shadow:0 6px 18px -8px color-mix(in srgb,var(--rp-gold) 70%,transparent);transition:transform .15s ease,filter .15s ease}
.il-rp-download:hover{filter:brightness(1.05)}
.il-rp-download:active{transform:scale(.98)}
.il-rp-download-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.2);flex:none}
.il-reader.is-dark .il-rp-download-icon{background:rgba(0,0,0,.12)}
.il-rp-download-icon svg{width:24px;height:24px}
.il-rp-download-copy{display:flex;flex-direction:column;gap:3px}
.il-rp-download-copy strong{font-size:16px;font-weight:700;letter-spacing:-.01em}
.il-rp-download-copy small{font-size:13px;opacity:.85}
.il-rp-section{margin:0 0 22px}
.il-rp-title{margin:0 0 8px 4px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--reader-muted)}
.il-rp-list{border-radius:14px;background:var(--rp-card);overflow:hidden}
.il-rp-row{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px!important;text-align:left;position:relative;background:transparent;transition:background .15s ease}
.il-rp-row:hover{background:#8080800f}
.il-rp-row+.il-rp-row::before{content:"";position:absolute;top:0;left:56px;right:0;border-top:1px solid var(--reader-line)}
.il-rp-row-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--reader-paper);color:var(--reader-ink);flex:none}
.il-rp-row-icon svg{width:18px;height:18px}
.il-rp-row-copy{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.il-rp-row-copy strong,.il-rp-row-copy>span{font-size:15px;font-weight:500;color:var(--reader-ink)}
.il-rp-row-copy small{font-size:12.5px;color:var(--reader-muted)}
.il-rp-chevron{color:var(--reader-muted);opacity:.6;display:flex}
.il-rp-chevron svg{width:16px;height:16px}
.il-rp-row:disabled{opacity:.45}
.il-rp-switch{width:44px;height:26px;border-radius:13px;background:#78788052;position:relative;flex:none;transition:background .2s ease}
.il-rp-switch::after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s ease}
.il-rp-row[aria-pressed=true] .il-rp-switch{background:var(--rp-gold)}
.il-rp-row[aria-pressed=true] .il-rp-switch::after{transform:translateX(18px)}
.il-rp-segmented{display:flex;padding:3px;margin:0 0 10px;border-radius:11px;background:var(--rp-card);gap:2px}
.il-rp-segmented button{flex:1;min-height:40px;border-radius:9px;font-size:14px;font-weight:500;color:var(--reader-muted);transition:background .15s ease,color .15s ease}
.il-rp-segmented button[aria-pressed=true]{background:var(--reader-paper);color:var(--reader-ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.il-rp-zoom{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;border-radius:11px;background:var(--rp-card)}
.il-rp-zoom-label{flex:1;font-size:15px;color:var(--reader-ink)}
.il-rp-zoom-value{min-width:64px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums;color:var(--reader-muted)}
.il-rp-zoom-button{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:var(--reader-paper)!important;color:var(--reader-ink)}
.il-rp-zoom-button:disabled{opacity:.4}
.il-rp-zoom-button svg{width:18px;height:18px}
.il-rp-hint{margin:4px 4px 0;font-size:12.5px;color:var(--reader-muted)}
@media(max-width:700px){
  .il-reader-heading strong,.il-reader-heading>span{max-width:calc(100vw - 205px)}
  .il-rp-row-copy strong,.il-rp-row-copy>span{font-size:16px}
}
/* Topo: "Descargar" sempre à vista, em pílula dourada (pedido do Izzat, 13/10/2026). */
.il-reader-tools .il-reader-icon[data-reader-action=download]{width:auto;min-width:0;padding:0 14px 0 11px;gap:6px;height:36px;margin:4px 4px 0 0;align-self:center;border-radius:999px;background:var(--rp-gold);color:var(--rp-gold-ink)}
.il-reader-tools .il-reader-icon[data-reader-action=download]:hover{background:var(--rp-gold);filter:brightness(1.06)}
.il-reader-tools .il-reader-icon[data-reader-action=download] svg{width:18px;height:18px}
.il-reader-tools .il-reader-icon[data-reader-action=download] .il-reader-tool-label{display:inline;font-size:13px;font-weight:600}
@media(max-width:700px){
  .il-reader-tools [data-reader-action=contents]{display:none}
  .il-reader-tools .il-reader-icon[data-reader-action=download]{margin:0 2px 0 0}
  .il-reader-heading strong,.il-reader-heading>span{max-width:calc(100vw - 230px)}
}
