.ei-document-reader {
  --ei-doc-overlay: rgba(1, 4, 4, .94);
  --ei-doc-window: #0e1211;
  --ei-doc-header: #171c1a;
  --ei-doc-meta-bg: #242b27;
  --ei-doc-paper: #111513;
  --ei-doc-text: #e7e4da;
  --ei-doc-title: #f0eee5;
  --ei-doc-muted: #aeb9b0;
  --ei-doc-accent: #9db3a3;
  --ei-doc-border: #5f665f;
  --ei-doc-soft-border: #3d453f;
  --ei-doc-button: #161b18;
  --ei-doc-button-text: #dce5dc;
  --ei-doc-button-hover: #263129;
  --ei-doc-button-accent: #243128;
  --ei-doc-focus: #9bbb9f;
  --ei-doc-font: Georgia, "Noto Serif TC", serif;
  --ei-doc-mono: ui-monospace, SFMono-Regular, monospace;
  --ei-doc-radius: 0px;
  --ei-doc-paper-radius: 0px;
  --ei-doc-background-opacity: .2;
  --ei-doc-window-shadow: 0 28px 80px rgba(0, 0, 0, .82), inset 0 0 0 2px #202622;
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: grid;
  place-items: center;
  padding: clamp(14px, 4vw, 48px);
  opacity: 0;
  color: var(--ei-doc-text);
  font-family: var(--ei-doc-font);
  transition: opacity .18s steps(3, end);
}

.ei-document-reader.is-visible { opacity: 1; }

.ei-document-reader-backdrop {
  position: absolute;
  inset: 0;
  background: var(--ei-doc-overlay);
}

.ei-document-reader-window {
  position: relative;
  width: min(760px, 100%);
  max-height: min(88vh, 900px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--ei-doc-window);
  border: 1px solid var(--ei-doc-border);
  border-radius: var(--ei-doc-radius);
  box-shadow: var(--ei-doc-window-shadow);
}

.ei-document-reader-background {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: var(--ei-doc-background-opacity);
  pointer-events: none;
}

.ei-document-reader-background[hidden] { display: none; }

.ei-document-reader-window > :not(.ei-document-reader-background) {
  position: relative;
  z-index: 1;
}

.ei-document-reader-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px 13px;
  color: var(--ei-doc-title);
  background: var(--ei-doc-header);
  border-bottom: 1px solid var(--ei-doc-border);
}

.ei-document-reader-header small {
  display: block;
  margin-bottom: 5px;
  color: var(--ei-doc-accent);
  font: 700 10px/1.2 var(--ei-doc-mono);
  letter-spacing: .18em;
  text-transform: uppercase;
}

.ei-document-reader-header h2 {
  margin: 0;
  color: inherit;
  font: 700 clamp(20px, 4vw, 29px)/1.16 var(--ei-doc-font);
  letter-spacing: .04em;
}

.ei-document-reader-header button[hidden]{display:none!important;}
.ei-document-reader-header button {
  appearance: none;
  position: relative;
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  border: 1px solid var(--ei-doc-border);
  border-radius: var(--ei-doc-radius);
  background: var(--ei-doc-button);
  color: var(--ei-doc-button-text);
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}

.ei-document-reader-header button::before,
.ei-document-reader-header button::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 15px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transform-origin: center;
}

.ei-document-reader-header button::before { transform: translate(-50%, -50%) rotate(45deg); }
.ei-document-reader-header button::after { transform: translate(-50%, -50%) rotate(-45deg); }

.ei-document-reader-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  padding: 9px 18px;
  background: var(--ei-doc-meta-bg);
  color: var(--ei-doc-muted);
  font: 700 11px/1.4 var(--ei-doc-mono);
}

.ei-document-reader-meta span {
  padding: 2px 7px;
  border: 1px solid var(--ei-doc-soft-border);
}

.ei-document-reader-paper {
  position: relative;
  min-height: 260px;
  flex: 1;
  overflow: auto;
  margin: 14px;
  background: var(--ei-doc-paper);
  border: 1px solid var(--ei-doc-soft-border);
  border-radius: var(--ei-doc-paper-radius);
  box-shadow: inset 0 0 54px rgba(0, 0, 0, .55);
}

.ei-document-reader-grain {
  pointer-events: none;
  position: absolute;
  inset: 0;
  opacity: .4;
  background:
    repeating-linear-gradient(0deg, rgba(218, 226, 217, .025) 0, rgba(218, 226, 217, .025) 1px, transparent 1px, transparent 4px),
    radial-gradient(circle at 18% 24%, rgba(198, 211, 201, .08) 0 1px, transparent 2px),
    radial-gradient(circle at 78% 62%, rgba(198, 211, 201, .06) 0 1px, transparent 2px);
  background-size: auto, 27px 31px, 41px 37px;
}

.ei-document-reader-cover {
  position: relative;
  z-index: 1;
  display: block;
  width: auto;
  max-width: min(72%, 360px);
  max-height: 180px;
  margin: 30px auto 0;
  object-fit: contain;
  border: 1px solid var(--ei-doc-border);
  filter: grayscale(.45) contrast(1.08);
}

.ei-document-reader-cover[hidden] { display: none; }

.ei-document-reader-page {
  position: relative;
  z-index: 1;
  min-height: 245px;
  padding: clamp(24px, 5vw, 48px);
  white-space: pre-wrap;
  color: var(--ei-doc-text);
  font-size: clamp(16px, 2.3vw, 19px);
  line-height: 1.95;
  letter-spacing: .035em;
  text-shadow: 0 1px #000;
}

.ei-document-reader footer {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  gap: 8px;
  align-items: center;
  padding: 0 14px 10px;
}

.ei-document-reader footer button {
  min-height: 42px;
  border: 1px solid var(--ei-doc-border);
  border-radius: var(--ei-doc-radius);
  background: var(--ei-doc-button);
  color: var(--ei-doc-button-text);
  padding: 8px 12px;
  font: 700 12px/1.2 var(--ei-doc-mono);
  cursor: pointer;
}

.ei-document-reader footer button:hover:not(:disabled),
.ei-document-reader footer button:focus-visible,
.ei-document-reader-header button:focus-visible {
  background: var(--ei-doc-button-hover);
  color: var(--ei-doc-accent);
  outline: 2px solid var(--ei-doc-focus);
  outline-offset: 1px;
}

.ei-document-reader footer button:disabled {
  opacity: .36;
  cursor: not-allowed;
}

.ei-document-reader footer span {
  text-align: center;
  color: var(--ei-doc-muted);
  font: 700 12px/1 var(--ei-doc-mono);
}

.ei-document-reader footer .ei-document-reader-keep {
  background: var(--ei-doc-button-accent);
  border-color: var(--ei-doc-accent);
  color: var(--ei-doc-button-text);
}

.ei-document-reader-status {
  min-height: 18px;
  margin: 0;
  padding: 0 16px 12px;
  color: var(--ei-doc-muted);
  font: 600 12px/1.4 system-ui, sans-serif;
  text-align: center;
}

.ei-document-reader-is-open { overflow: hidden; }

/* Reader default plus the canonical Ei 26-style set. Every preset drives the
   full reader component through shared variables instead of recoloring one panel. */

/* v0.1.171 — Gallery optional headerless mode. */
.ei-document-reader-header[hidden],
.ei-document-reader-meta[hidden] { display: none !important; }
.ei-document-reader.is-header-hidden .ei-document-reader-corner-close:not([hidden]) {
  display: block!important;
  position:absolute!important;
  left:auto!important;
  right:max(10px,env(safe-area-inset-right))!important;
  top:max(10px,env(safe-area-inset-top))!important;
  bottom:auto!important;
  margin:0!important;
  transform:none!important;
  box-sizing:border-box!important;
  width: 36px;
  height: 36px;
  border: 1px solid var(--ei-doc-border);
  border-radius: max(4px, calc(var(--ei-doc-radius) * .7));
  background: var(--ei-doc-window);
  color: var(--ei-doc-button-text);
  font: 400 29px/32px Arial, sans-serif;
  text-shadow: none;
  backdrop-filter: blur(4px);
}
.ei-document-reader.is-header-hidden .ei-document-reader-corner-close:not([hidden]):hover {
  background: var(--ei-doc-button-hover);
}
.ei-document-reader.is-header-hidden .ei-document-reader-corner-close:not([hidden]):focus-visible {
  outline: 2px solid var(--ei-doc-focus);
  outline-offset: 2px;
}

.ei-document-reader-style-echoes{--ei-doc-overlay:rgba(1,4,4,.94);--ei-doc-window:#0e1211;--ei-doc-header:#171c1a;--ei-doc-meta-bg:#242b27;--ei-doc-paper:#111513;--ei-doc-text:#e7e4da;--ei-doc-title:#f0eee5;--ei-doc-muted:#aeb9b0;--ei-doc-accent:#9db3a3;--ei-doc-border:#5f665f;--ei-doc-soft-border:#3d453f;--ei-doc-button:#161b18;--ei-doc-button-text:#dce5dc;--ei-doc-button-hover:#263129;--ei-doc-button-accent:#243128;--ei-doc-focus:#9bbb9f;--ei-doc-radius:0px;--ei-doc-background-opacity:.2}


.ei-document-reader-corner-close{display:none;position:absolute;z-index:2147483647;right:14px;top:12px;width:42px;height:42px;padding:0;border:0;background:transparent;color:var(--ei-doc-button-text);cursor:pointer;font:400 34px/40px Arial,sans-serif;text-align:center;text-shadow:0 1px 2px #000}
.ei-document-reader-corner-close[hidden]{display:none!important}
.ei-document-reader-style-bio{--ei-doc-overlay:rgba(0,0,0,.96);--ei-doc-window:#000;--ei-doc-header:#000;--ei-doc-meta-bg:#000;--ei-doc-paper:#000;--ei-doc-text:#ececec;--ei-doc-title:#f7f7f7;--ei-doc-muted:#a7a7a7;--ei-doc-accent:#48f050;--ei-doc-border:#1d1d1d;--ei-doc-soft-border:#0b0b0b;--ei-doc-button:#000;--ei-doc-button-text:#49f24f;--ei-doc-button-hover:#071307;--ei-doc-button-accent:#031003;--ei-doc-focus:#63ff6a;--ei-doc-font:"Courier New",ui-monospace,monospace;--ei-doc-mono:"Courier New",ui-monospace,monospace;--ei-doc-radius:0px;--ei-doc-paper-radius:0px;--ei-doc-background-opacity:.07;--ei-doc-window-shadow:0 0 0 1px #0b0b0b,0 24px 80px rgba(0,0,0,.92)}
.ei-document-reader-style-bio .ei-document-reader-corner-close:not([hidden]){display:block!important;position:absolute!important;top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;width:46px!important;height:46px!important;color:#49f24f!important;background:rgba(0,0,0,.38)!important;border:1px solid rgba(73,242,79,.28)!important;border-radius:3px!important;font:400 36px/42px Arial,sans-serif!important;text-align:center!important;text-shadow:0 0 5px rgba(73,242,79,.42)!important;filter:none!important;z-index:2147483647!important}.ei-document-reader-style-bio .ei-document-reader-corner-close:hover{color:#7dff83}.ei-document-reader-style-bio .ei-document-reader-corner-close:focus-visible{outline:1px solid #63ff6a;outline-offset:2px}@media(min-width:900px){.ei-document-reader-style-bio .ei-document-reader-window{overflow:visible}.ei-document-reader-style-bio .ei-document-reader-corner-close:not([hidden]){top:0!important;right:-58px!important}}
.ei-document-reader-style-bio{letter-spacing:.01em;text-shadow:1px 1px 0 #000}.ei-document-reader-style-bio .ei-document-reader-window{width:min(980px,100%);max-height:min(92vh,900px)}.ei-document-reader-style-bio .ei-document-reader-header,.ei-document-reader-style-bio .ei-document-reader-meta{display:none}.ei-document-reader-style-bio .ei-document-reader-paper{position:relative;margin:0;border:0;min-height:0;background:#000}.ei-document-reader-style-bio .ei-document-reader-cover{position:absolute;left:50%;top:50%;width:min(38vw,280px);max-width:44%;transform:translate(-50%,-50%) perspective(600px) rotateX(58deg) rotateZ(-36deg);transform-origin:center center;filter:drop-shadow(0 8px 0 rgba(128,90,20,.38)) drop-shadow(0 14px 16px rgba(0,0,0,.72));border:0;border-radius:0}.ei-document-reader-style-bio .ei-document-reader-page{min-height:min(72vh,760px);padding:28px 38px 32px;font:700 clamp(21px,2.2vw,26px)/1.45 "Courier New",ui-monospace,monospace;color:#efefef;white-space:pre-wrap;letter-spacing:.06em}.ei-document-reader-style-bio .ei-document-reader-page::first-line{letter-spacing:.12em}.ei-document-reader-style-bio footer{display:grid;grid-template-columns:72px 1fr 72px auto;align-items:center;gap:16px;padding:10px 18px 14px;background:#000;border-top:0}.ei-document-reader-style-bio footer button{border:0;background:transparent;min-height:42px;padding:0;color:#44ef4d;font:700 14px/1 "Courier New",ui-monospace,monospace;text-transform:uppercase;box-shadow:none}.ei-document-reader-style-bio footer button[data-ei-document-prev],.ei-document-reader-style-bio footer button[data-ei-document-next]{font-size:0;position:relative}.ei-document-reader-style-bio footer button[data-ei-document-prev]::before{content:'◀';font-size:34px;line-height:1}.ei-document-reader-style-bio footer button[data-ei-document-next]::before{content:'▶';font-size:34px;line-height:1}.ei-document-reader-style-bio footer [data-ei-document-number]{justify-self:center;color:#f0f0f0;font:700 14px/1 "Courier New",ui-monospace,monospace;letter-spacing:.18em}.ei-document-reader-style-bio .ei-document-reader-keep{justify-self:end;padding:0 6px;color:#44ef4d;font-size:13px;letter-spacing:.12em}.ei-document-reader-style-bio .ei-document-reader-status{display:none!important}.ei-document-reader-style-bio .ei-document-reader-header button{cursor:pointer}.ei-document-reader-style-bio .ei-document-reader-backdrop{cursor:default}.ei-document-reader-style-bio .ei-document-reader-window::after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.02);pointer-events:none}
@media(max-width:760px){.ei-document-reader-style-bio .ei-document-reader-window{width:100%;max-height:none;height:100%}.ei-document-reader-style-bio .ei-document-reader-page{padding:24px 20px 78px;font-size:18px;line-height:1.4}.ei-document-reader-style-bio footer{grid-template-columns:56px 1fr 56px auto;position:sticky;bottom:0;padding:8px 10px 12px}.ei-document-reader-style-bio .ei-document-reader-cover{width:min(54vw,210px);max-width:56%}}
.ei-document-reader-style-basic{--ei-doc-overlay:rgba(15,23,42,.82);--ei-doc-window:#fff;--ei-doc-header:#f8fafc;--ei-doc-meta-bg:#eef2f7;--ei-doc-paper:#fff;--ei-doc-text:#1f2937;--ei-doc-title:#111827;--ei-doc-muted:#596579;--ei-doc-accent:#2563eb;--ei-doc-border:#cbd5e1;--ei-doc-soft-border:#dbe3ee;--ei-doc-button:#fff;--ei-doc-button-text:#1f2937;--ei-doc-button-hover:#e8eef8;--ei-doc-button-accent:#dbeafe;--ei-doc-focus:#2563eb;--ei-doc-radius:8px;--ei-doc-paper-radius:6px;--ei-doc-background-opacity:.15;--ei-doc-window-shadow:0 24px 70px rgba(15,23,42,.32)}
.ei-document-reader-style-basic_black{--ei-doc-overlay:rgba(0,0,0,.9);--ei-doc-window:#111;--ei-doc-header:#191919;--ei-doc-meta-bg:#222;--ei-doc-paper:#0b0b0b;--ei-doc-text:#f1f1f1;--ei-doc-title:#fff;--ei-doc-muted:#b7b7b7;--ei-doc-accent:#f5f5f5;--ei-doc-border:#555;--ei-doc-soft-border:#383838;--ei-doc-button:#151515;--ei-doc-button-text:#fff;--ei-doc-button-hover:#2b2b2b;--ei-doc-button-accent:#262626;--ei-doc-focus:#fff;--ei-doc-radius:5px;--ei-doc-background-opacity:.16}
.ei-document-reader-style-full_black{--ei-doc-overlay:#000;--ei-doc-window:#000;--ei-doc-header:#000;--ei-doc-meta-bg:#000;--ei-doc-paper:#000;--ei-doc-text:#fff;--ei-doc-title:#fff;--ei-doc-muted:#bdbdbd;--ei-doc-accent:#fff;--ei-doc-border:#2f2f2f;--ei-doc-soft-border:#222;--ei-doc-button:#000;--ei-doc-button-text:#fff;--ei-doc-button-hover:#171717;--ei-doc-button-accent:#0c0c0c;--ei-doc-focus:#fff;--ei-doc-radius:0px;--ei-doc-background-opacity:.1;--ei-doc-window-shadow:none}
.ei-document-reader-style-minimal{--ei-doc-overlay:rgba(240,242,245,.9);--ei-doc-window:#fff;--ei-doc-header:#fff;--ei-doc-meta-bg:#fafafa;--ei-doc-paper:#fff;--ei-doc-text:#27272a;--ei-doc-title:#18181b;--ei-doc-muted:#71717a;--ei-doc-accent:#52525b;--ei-doc-border:#e4e4e7;--ei-doc-soft-border:#eeeeef;--ei-doc-button:#fff;--ei-doc-button-text:#27272a;--ei-doc-button-hover:#f4f4f5;--ei-doc-button-accent:#f4f4f5;--ei-doc-focus:#52525b;--ei-doc-radius:3px;--ei-doc-paper-radius:2px;--ei-doc-background-opacity:.1;--ei-doc-window-shadow:0 18px 50px rgba(0,0,0,.14)}
.ei-document-reader-style-glass{--ei-doc-overlay:rgba(8,15,28,.76);--ei-doc-window:rgba(24,38,59,.88);--ei-doc-header:rgba(42,61,86,.72);--ei-doc-meta-bg:rgba(67,87,113,.48);--ei-doc-paper:rgba(13,25,43,.7);--ei-doc-text:#eef8ff;--ei-doc-title:#fff;--ei-doc-muted:#c6dded;--ei-doc-accent:#8bd5ff;--ei-doc-border:rgba(184,225,255,.55);--ei-doc-soft-border:rgba(184,225,255,.25);--ei-doc-button:rgba(22,44,69,.8);--ei-doc-button-text:#effaff;--ei-doc-button-hover:rgba(63,110,148,.75);--ei-doc-button-accent:rgba(39,91,127,.8);--ei-doc-focus:#91ddff;--ei-doc-radius:18px;--ei-doc-paper-radius:13px;--ei-doc-background-opacity:.22;--ei-doc-window-shadow:0 30px 90px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.18)}
.ei-document-reader-style-pixel{--ei-doc-overlay:rgba(7,9,18,.94);--ei-doc-window:#17182b;--ei-doc-header:#262844;--ei-doc-meta-bg:#101122;--ei-doc-paper:#0c0d19;--ei-doc-text:#f7f4d7;--ei-doc-title:#fff49a;--ei-doc-muted:#b8b4d3;--ei-doc-accent:#65f0c2;--ei-doc-border:#f8df6d;--ei-doc-soft-border:#746cad;--ei-doc-button:#252643;--ei-doc-button-text:#fff8cf;--ei-doc-button-hover:#3e4170;--ei-doc-button-accent:#315f58;--ei-doc-focus:#67f2c4;--ei-doc-font:ui-monospace,monospace;--ei-doc-radius:0px;--ei-doc-background-opacity:.16;--ei-doc-window-shadow:8px 8px 0 #080912}
.ei-document-reader-style-dq{--ei-doc-overlay:rgba(2,8,42,.9);--ei-doc-window:#08228a;--ei-doc-header:#071d76;--ei-doc-meta-bg:#0b318f;--ei-doc-paper:#061968;--ei-doc-text:#fff;--ei-doc-title:#fff;--ei-doc-muted:#d7e2ff;--ei-doc-accent:#ffe86b;--ei-doc-border:#fff;--ei-doc-soft-border:#8ca7ff;--ei-doc-button:#092b99;--ei-doc-button-text:#fff;--ei-doc-button-hover:#1444c4;--ei-doc-button-accent:#775d08;--ei-doc-focus:#ffe86b;--ei-doc-font:ui-monospace,monospace;--ei-doc-radius:7px;--ei-doc-paper-radius:6px;--ei-doc-background-opacity:.14;--ei-doc-window-shadow:0 0 0 4px #071752,0 25px 80px #000}
.ei-document-reader-style-ei_world{--ei-doc-overlay:rgba(7,12,24,.9);--ei-doc-window:#10182a;--ei-doc-header:#18243b;--ei-doc-meta-bg:#202e48;--ei-doc-paper:#0c1425;--ei-doc-text:#eef5ff;--ei-doc-title:#fff;--ei-doc-muted:#b9c8dd;--ei-doc-accent:#80d7ff;--ei-doc-border:#5077a5;--ei-doc-soft-border:#2e496b;--ei-doc-button:#17243a;--ei-doc-button-text:#edf7ff;--ei-doc-button-hover:#264b6c;--ei-doc-button-accent:#215273;--ei-doc-focus:#7fe0ff;--ei-doc-radius:14px;--ei-doc-paper-radius:10px;--ei-doc-background-opacity:.19;--ei-doc-window-shadow:0 30px 90px rgba(0,0,0,.65),0 0 30px rgba(71,158,220,.2)}
.ei-document-reader-style-rpg{--ei-doc-overlay:rgba(20,12,4,.91);--ei-doc-window:#2a1b0e;--ei-doc-header:#3b2714;--ei-doc-meta-bg:#4a321c;--ei-doc-paper:#24170d;--ei-doc-text:#f8edcf;--ei-doc-title:#fff0b8;--ei-doc-muted:#d9c49a;--ei-doc-accent:#f4cc69;--ei-doc-border:#a77a2d;--ei-doc-soft-border:#705020;--ei-doc-button:#34210f;--ei-doc-button-text:#fff0c4;--ei-doc-button-hover:#5a3d1b;--ei-doc-button-accent:#624716;--ei-doc-focus:#ffd76b;--ei-doc-radius:5px;--ei-doc-paper-radius:2px;--ei-doc-background-opacity:.18;--ei-doc-window-shadow:0 0 0 3px #4b3216,0 28px 80px #000}
.ei-document-reader-style-western{--ei-doc-overlay:rgba(30,20,12,.88);--ei-doc-window:#e7d6b4;--ei-doc-header:#3e2819;--ei-doc-meta-bg:#c8ae82;--ei-doc-paper:#f2e3c4;--ei-doc-text:#3a281a;--ei-doc-title:#f9e8bd;--ei-doc-muted:#684d31;--ei-doc-accent:#b4772e;--ei-doc-border:#76502d;--ei-doc-soft-border:#b99a6d;--ei-doc-button:#4b301c;--ei-doc-button-text:#f7e6bd;--ei-doc-button-hover:#6c4727;--ei-doc-button-accent:#76542a;--ei-doc-focus:#d99a45;--ei-doc-radius:2px;--ei-doc-background-opacity:.18;--ei-doc-window-shadow:0 24px 70px rgba(24,13,5,.62)}
.ei-document-reader-style-classic_wood{--ei-doc-overlay:rgba(18,8,2,.9);--ei-doc-window:#573418;--ei-doc-header:#3b210f;--ei-doc-meta-bg:#6c4525;--ei-doc-paper:#d8bd8c;--ei-doc-text:#392516;--ei-doc-title:#f4dfb2;--ei-doc-muted:#4d3825;--ei-doc-accent:#e7b862;--ei-doc-border:#9b6a32;--ei-doc-soft-border:#8f6a42;--ei-doc-button:#432510;--ei-doc-button-text:#f6e5bd;--ei-doc-button-hover:#71451f;--ei-doc-button-accent:#72521f;--ei-doc-focus:#ffc865;--ei-doc-radius:4px;--ei-doc-paper-radius:1px;--ei-doc-background-opacity:.2;--ei-doc-window-shadow:inset 0 0 0 5px #2d180b,0 28px 80px #000}
.ei-document-reader-style-parchment{--ei-doc-overlay:rgba(44,31,18,.86);--ei-doc-window:#c7a66e;--ei-doc-header:#af8952;--ei-doc-meta-bg:#d2b681;--ei-doc-paper:#ead7aa;--ei-doc-text:#3d2b1c;--ei-doc-title:#2e1e13;--ei-doc-muted:#674a2d;--ei-doc-accent:#7b421d;--ei-doc-border:#75502c;--ei-doc-soft-border:#aa8352;--ei-doc-button:#9e7545;--ei-doc-button-text:#28190e;--ei-doc-button-hover:#b98e58;--ei-doc-button-accent:#8f683c;--ei-doc-focus:#6f3518;--ei-doc-radius:3px;--ei-doc-paper-radius:2px;--ei-doc-background-opacity:.14;--ei-doc-window-shadow:0 20px 65px rgba(28,16,6,.55)}
.ei-document-reader-style-ink{--ei-doc-overlay:rgba(231,229,218,.9);--ei-doc-window:#f0eee4;--ei-doc-header:#e3e0d4;--ei-doc-meta-bg:#d6d3c8;--ei-doc-paper:#f6f4ea;--ei-doc-text:#1c1c1b;--ei-doc-title:#111;--ei-doc-muted:#555650;--ei-doc-accent:#262725;--ei-doc-border:#43443f;--ei-doc-soft-border:#a6a69d;--ei-doc-button:#e6e3d8;--ei-doc-button-text:#171817;--ei-doc-button-hover:#cac8bf;--ei-doc-button-accent:#d2d0c6;--ei-doc-focus:#111;--ei-doc-radius:0px;--ei-doc-background-opacity:.12;--ei-doc-window-shadow:12px 14px 0 rgba(32,33,31,.2)}
.ei-document-reader-style-chinese{--ei-doc-overlay:rgba(41,3,3,.92);--ei-doc-window:#5d1212;--ei-doc-header:#790f12;--ei-doc-meta-bg:#3d0d0d;--ei-doc-paper:#f0dfbe;--ei-doc-text:#3c1e18;--ei-doc-title:#ffe4a1;--ei-doc-muted:#d6b66c;--ei-doc-accent:#f3c45b;--ei-doc-border:#d1a13f;--ei-doc-soft-border:#9d6f2d;--ei-doc-button:#771316;--ei-doc-button-text:#ffe8ae;--ei-doc-button-hover:#9e1d20;--ei-doc-button-accent:#875315;--ei-doc-focus:#ffd46c;--ei-doc-radius:2px;--ei-doc-background-opacity:.14;--ei-doc-window-shadow:0 0 0 3px #2f0707,0 28px 80px #000}
.ei-document-reader-style-japanese{--ei-doc-overlay:rgba(30,28,25,.88);--ei-doc-window:#e8e1d4;--ei-doc-header:#3c3b39;--ei-doc-meta-bg:#d2c8b8;--ei-doc-paper:#f3eee5;--ei-doc-text:#282724;--ei-doc-title:#f4f1e9;--ei-doc-muted:#625d55;--ei-doc-accent:#a13d35;--ei-doc-border:#706a61;--ei-doc-soft-border:#b9b0a2;--ei-doc-button:#494642;--ei-doc-button-text:#f3eee5;--ei-doc-button-hover:#69645d;--ei-doc-button-accent:#8b3731;--ei-doc-focus:#a13d35;--ei-doc-radius:1px;--ei-doc-background-opacity:.13;--ei-doc-window-shadow:0 22px 65px rgba(0,0,0,.45)}
.ei-document-reader-style-cute{--ei-doc-overlay:rgba(87,57,79,.78);--ei-doc-window:#fff7fd;--ei-doc-header:#ffe5f5;--ei-doc-meta-bg:#f5d8eb;--ei-doc-paper:#fffafd;--ei-doc-text:#513d4a;--ei-doc-title:#673f58;--ei-doc-muted:#806879;--ei-doc-accent:#d9589c;--ei-doc-border:#eaa8cd;--ei-doc-soft-border:#f1cde1;--ei-doc-button:#fff0f9;--ei-doc-button-text:#6e405b;--ei-doc-button-hover:#ffd8ee;--ei-doc-button-accent:#f7c5e1;--ei-doc-focus:#d9589c;--ei-doc-radius:22px;--ei-doc-paper-radius:16px;--ei-doc-background-opacity:.13;--ei-doc-window-shadow:0 25px 70px rgba(97,48,77,.35)}
.ei-document-reader-style-dark{--ei-doc-overlay:rgba(5,6,10,.92);--ei-doc-window:#151820;--ei-doc-header:#20242d;--ei-doc-meta-bg:#11141b;--ei-doc-paper:#0f1117;--ei-doc-text:#e5e7eb;--ei-doc-title:#f9fafb;--ei-doc-muted:#9ca3af;--ei-doc-accent:#a5b4fc;--ei-doc-border:#4b5563;--ei-doc-soft-border:#303744;--ei-doc-button:#20242c;--ei-doc-button-text:#f3f4f6;--ei-doc-button-hover:#343b48;--ei-doc-button-accent:#303750;--ei-doc-focus:#a5b4fc;--ei-doc-radius:14px;--ei-doc-paper-radius:10px;--ei-doc-background-opacity:.17}
.ei-document-reader-style-windows95{--ei-doc-overlay:rgba(0,0,0,.65);--ei-doc-window:#c0c0c0;--ei-doc-header:#000080;--ei-doc-meta-bg:#d5d5d5;--ei-doc-paper:#fff;--ei-doc-text:#000;--ei-doc-title:#fff;--ei-doc-muted:#222;--ei-doc-accent:#000080;--ei-doc-border:#fff;--ei-doc-soft-border:#808080;--ei-doc-button:#c0c0c0;--ei-doc-button-text:#000;--ei-doc-button-hover:#d8d8d8;--ei-doc-button-accent:#c0c0c0;--ei-doc-focus:#000080;--ei-doc-font:"Courier New",monospace;--ei-doc-radius:0px;--ei-doc-background-opacity:.12;--ei-doc-window-shadow:inset -3px -3px #000,inset 3px 3px #fff,8px 10px 0 rgba(0,0,0,.3)}
.ei-document-reader-style-windows{--ei-doc-overlay:rgba(12,20,36,.74);--ei-doc-window:#f8fbff;--ei-doc-header:#e8f1fd;--ei-doc-meta-bg:#edf4fc;--ei-doc-paper:#fff;--ei-doc-text:#20252b;--ei-doc-title:#11161c;--ei-doc-muted:#586575;--ei-doc-accent:#0067c0;--ei-doc-border:#b8c6d8;--ei-doc-soft-border:#d8e1ec;--ei-doc-button:#f6f9fd;--ei-doc-button-text:#20252b;--ei-doc-button-hover:#e2edf9;--ei-doc-button-accent:#d9ebff;--ei-doc-focus:#0067c0;--ei-doc-radius:9px;--ei-doc-paper-radius:5px;--ei-doc-background-opacity:.12;--ei-doc-window-shadow:0 28px 80px rgba(7,20,39,.38)}
.ei-document-reader-style-mac{--ei-doc-overlay:rgba(18,20,28,.68);--ei-doc-window:rgba(244,244,247,.93);--ei-doc-header:rgba(227,227,232,.92);--ei-doc-meta-bg:rgba(238,238,242,.9);--ei-doc-paper:rgba(255,255,255,.9);--ei-doc-text:#25252a;--ei-doc-title:#16161a;--ei-doc-muted:#67676f;--ei-doc-accent:#007aff;--ei-doc-border:rgba(90,90,100,.28);--ei-doc-soft-border:rgba(90,90,100,.18);--ei-doc-button:rgba(255,255,255,.7);--ei-doc-button-text:#25252a;--ei-doc-button-hover:#e4e4e9;--ei-doc-button-accent:#d7eaff;--ei-doc-focus:#007aff;--ei-doc-radius:20px;--ei-doc-paper-radius:13px;--ei-doc-background-opacity:.14;--ei-doc-window-shadow:0 30px 90px rgba(0,0,0,.35)}
.ei-document-reader-style-cyberpunk{--ei-doc-overlay:rgba(2,2,12,.94);--ei-doc-window:#090a19;--ei-doc-header:#11132b;--ei-doc-meta-bg:#08091b;--ei-doc-paper:#050613;--ei-doc-text:#e9fbff;--ei-doc-title:#fff;--ei-doc-muted:#8ed8df;--ei-doc-accent:#29f3ff;--ei-doc-border:#ff39d4;--ei-doc-soft-border:#2b8490;--ei-doc-button:#101328;--ei-doc-button-text:#e9feff;--ei-doc-button-hover:#242150;--ei-doc-button-accent:#173c47;--ei-doc-focus:#29f3ff;--ei-doc-font:ui-monospace,monospace;--ei-doc-radius:2px;--ei-doc-background-opacity:.2;--ei-doc-window-shadow:0 0 24px rgba(41,243,255,.28),8px 8px 0 rgba(255,57,212,.22)}
.ei-document-reader-style-nasapunk{--ei-doc-overlay:rgba(2,7,14,.94);--ei-doc-window:#111a21;--ei-doc-header:#202d34;--ei-doc-meta-bg:#0b151b;--ei-doc-paper:#071017;--ei-doc-text:#edf7f7;--ei-doc-title:#fff;--ei-doc-muted:#a8bbc0;--ei-doc-accent:#ff8b3d;--ei-doc-border:#75868c;--ei-doc-soft-border:#3d4e55;--ei-doc-button:#18262d;--ei-doc-button-text:#f1f7f7;--ei-doc-button-hover:#2d4148;--ei-doc-button-accent:#6b321b;--ei-doc-focus:#ff8b3d;--ei-doc-font:ui-monospace,monospace;--ei-doc-radius:4px;--ei-doc-paper-radius:2px;--ei-doc-background-opacity:.18;--ei-doc-window-shadow:0 28px 90px #000,inset 0 0 0 2px #273840}
.ei-document-reader-style-steampunk{--ei-doc-overlay:rgba(22,12,5,.93);--ei-doc-window:#342116;--ei-doc-header:#4a2c18;--ei-doc-meta-bg:#251811;--ei-doc-paper:#1e1510;--ei-doc-text:#f0d9ad;--ei-doc-title:#ffe1a1;--ei-doc-muted:#c2a67c;--ei-doc-accent:#d8953c;--ei-doc-border:#94602e;--ei-doc-soft-border:#614226;--ei-doc-button:#442a17;--ei-doc-button-text:#f6ddb0;--ei-doc-button-hover:#69401f;--ei-doc-button-accent:#674115;--ei-doc-focus:#edaa4a;--ei-doc-radius:7px;--ei-doc-paper-radius:4px;--ei-doc-background-opacity:.19;--ei-doc-window-shadow:0 0 0 3px #1d120c,0 28px 80px #000}
.ei-document-reader-style-terminal{--ei-doc-overlay:rgba(0,7,2,.96);--ei-doc-window:#020c05;--ei-doc-header:#041408;--ei-doc-meta-bg:#020a04;--ei-doc-paper:#010803;--ei-doc-text:#75f49a;--ei-doc-title:#9affb7;--ei-doc-muted:#56bd73;--ei-doc-accent:#63ff91;--ei-doc-border:#258d48;--ei-doc-soft-border:#14552b;--ei-doc-button:#031307;--ei-doc-button-text:#76f79b;--ei-doc-button-hover:#0a2b13;--ei-doc-button-accent:#0b3318;--ei-doc-focus:#72ff9e;--ei-doc-font:ui-monospace,monospace;--ei-doc-radius:0px;--ei-doc-background-opacity:.14;--ei-doc-window-shadow:0 0 28px rgba(39,255,103,.16)}
.ei-document-reader-style-arcane{--ei-doc-overlay:rgba(9,3,25,.94);--ei-doc-window:#21113a;--ei-doc-header:#321a50;--ei-doc-meta-bg:#180c2d;--ei-doc-paper:#130922;--ei-doc-text:#f0e9ff;--ei-doc-title:#fff0ff;--ei-doc-muted:#c5aedb;--ei-doc-accent:#c58cff;--ei-doc-border:#8552b4;--ei-doc-soft-border:#51306f;--ei-doc-button:#2b1645;--ei-doc-button-text:#f3e8ff;--ei-doc-button-hover:#4a2870;--ei-doc-button-accent:#52316d;--ei-doc-focus:#d1a0ff;--ei-doc-radius:16px;--ei-doc-paper-radius:11px;--ei-doc-background-opacity:.21;--ei-doc-window-shadow:0 0 38px rgba(164,96,255,.28),0 30px 85px #000}
.ei-document-reader-style-wabisabi{--ei-doc-overlay:rgba(40,38,31,.86);--ei-doc-window:#b8ae96;--ei-doc-header:#8f8876;--ei-doc-meta-bg:#a79e88;--ei-doc-paper:#d8d0bc;--ei-doc-text:#37362f;--ei-doc-title:#24251f;--ei-doc-muted:#5e5e51;--ei-doc-accent:#586348;--ei-doc-border:#777363;--ei-doc-soft-border:#aaa38e;--ei-doc-button:#98917e;--ei-doc-button-text:#24251f;--ei-doc-button-hover:#aaa28c;--ei-doc-button-accent:#7d8468;--ei-doc-focus:#4d5a3c;--ei-doc-radius:2px;--ei-doc-paper-radius:1px;--ei-doc-background-opacity:.15;--ei-doc-window-shadow:9px 12px 28px rgba(38,34,25,.38)}

@media (max-width: 620px) {
  .ei-document-reader { padding: 0; place-items: stretch; }
  .ei-document-reader-window { width: 100%; height: 100%; max-height: none; border: 0; }
  .ei-document-reader-header { padding: 13px 14px 11px; }
  .ei-document-reader-meta { padding: 7px 14px; }
  .ei-document-reader-paper { min-height: 0; margin: 9px; }
  .ei-document-reader-page { min-height: 100%; padding: 24px 20px; font-size: 16px; }
  .ei-document-reader-cover { max-height: 132px; margin-top: 20px; }
  .ei-document-reader footer {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "prev next" "number number" "keep keep";
    padding: 0 9px 8px;
  }
  .ei-document-reader [data-ei-document-prev] { grid-area: prev; }
  .ei-document-reader [data-ei-document-next] { grid-area: next; }
  .ei-document-reader [data-ei-document-number] { grid-area: number; }
  .ei-document-reader [data-ei-document-complete] { grid-area: keep; }
  .ei-document-reader-status { padding: 0 10px 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .ei-document-reader { transition: none; }
}


/* ============================================================
 * v0.1.145 — Bio fixed desktop viewport + optional diagnostics
 * Ownership: Ei Memory Library document reader only.
 * This block is intentionally last in source order so older Bio rules
 * cannot re-expand the window from page content.
 * ============================================================ */
@media (min-width:761px){
  .ei-document-reader.ei-document-reader-style-bio .ei-document-reader-window{
    width:min(980px,calc(100vw - 150px))!important;
    height:min(760px,calc(100dvh - 80px))!important;
    min-height:min(760px,calc(100dvh - 80px))!important;
    max-height:min(760px,calc(100dvh - 80px))!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  .ei-document-reader.ei-document-reader-style-bio .ei-document-reader-paper{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .ei-document-reader.ei-document-reader-style-bio .ei-document-reader-page{
    display:block!important;
    flex:1 1 auto!important;
    width:100%!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable!important;
    box-sizing:border-box!important;
  }
  .ei-document-reader.ei-document-reader-style-bio footer{
    flex:0 0 auto!important;
  }
}

/* Diagnostic overlay: created only when the admin setting enables it. */
.ei-ml-doc-diag-panel{
  position:fixed!important;
  left:10px!important;
  bottom:10px!important;
  z-index:2147483647!important;
  max-width:min(520px,calc(100vw - 20px))!important;
  padding:8px 10px!important;
  margin:0!important;
  border:1px solid #38ff55!important;
  border-radius:4px!important;
  background:rgba(0,0,0,.92)!important;
  color:#71ff84!important;
  box-shadow:0 0 0 1px rgba(56,255,85,.15),0 8px 30px rgba(0,0,0,.6)!important;
  font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  letter-spacing:0!important;
  white-space:pre-wrap!important;
  text-shadow:none!important;
  pointer-events:none!important;
}


/* ============================================================
 * v0.1.146 — content overflow down-arrow.
 * Positioned by JS in the reader's bottom-right control area, directly above
 * the complete/close button; hidden unless more content exists below.
 * Uses the active reader style variables by default.
 * ============================================================ */
.ei-document-reader .ei-document-reader-window > .ei-document-reader-scroll-down{
  appearance:none;
  position:absolute!important;
  z-index:40!important;
  left:auto;
  right:14px;
  top:auto;
  bottom:66px;
  float:none;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  border:1px solid var(--ei-doc-border);
  border-radius:var(--ei-doc-radius);
  background:color-mix(in srgb,var(--ei-doc-button) 92%,transparent);
  color:var(--ei-doc-accent);
  box-shadow:0 5px 16px rgba(0,0,0,.25),inset 0 0 0 1px color-mix(in srgb,var(--ei-doc-accent) 10%,transparent);
  font:700 18px/1 var(--ei-doc-mono);
  text-shadow:none;
  cursor:pointer;
  opacity:.92;
  transition:opacity .14s ease,transform .14s ease,background .14s ease,color .14s ease;
}
/* v0.1.155 — canonical placement: inside the paper box lower-right corner.
 * JS sets inline right/bottom offsets from the current paper rect. */
.ei-document-reader .ei-document-reader-window > .ei-document-reader-scroll-down:not([hidden]){
  display:grid!important;
  position:absolute!important;
  left:auto!important;
  right:var(--ei-doc-scroll-right,24px)!important;
  top:auto!important;
  bottom:var(--ei-doc-scroll-bottom,105px)!important;
}
.ei-document-reader .ei-document-reader-window > .ei-document-reader-scroll-down[hidden]{display:none!important}
.ei-document-reader-scroll-down:hover,.ei-document-reader-scroll-down:focus-visible{
  background:var(--ei-doc-button-hover);
  color:var(--ei-doc-button-text);
  outline:2px solid var(--ei-doc-focus);
  outline-offset:1px;
  transform:translateY(2px);
  opacity:1;
}
.ei-document-reader-scroll-down span{display:block;line-height:1;transform:translateY(1px)}

/* Bio: green low-tech triangular cue matching the existing page arrows. */
.ei-document-reader-style-bio .ei-document-reader-scroll-down{
  width:40px;height:40px;
  border:1px solid rgba(73,242,79,.32);
  border-radius:2px;
  background:rgba(0,0,0,.62);
  color:#44ef4d;
  box-shadow:0 0 8px rgba(68,239,77,.08);
  font-family:"Courier New",ui-monospace,monospace;
  font-size:22px;
}
.ei-document-reader-style-bio .ei-document-reader-scroll-down:hover,
.ei-document-reader-style-bio .ei-document-reader-scroll-down:focus-visible{background:rgba(6,34,8,.78);color:#7dff83;outline-color:#63ff6a}

/* Pixel / DQ: harder corners and stepped shadow. */
.ei-document-reader-style-pixel .ei-document-reader-scroll-down,
.ei-document-reader-style-dq .ei-document-reader-scroll-down{
  border-radius:0;
  box-shadow:3px 3px 0 color-mix(in srgb,var(--ei-doc-border) 75%,#000);
  font-family:var(--ei-doc-mono);
}

/* Windows 95: classic raised control treatment. */
.ei-document-reader-style-windows95 .ei-document-reader-scroll-down{
  border:0;
  border-radius:0;
  background:#c0c0c0;
  color:#000;
  box-shadow:inset -2px -2px #000,inset 2px 2px #fff,inset -3px -3px #808080;
}
.ei-document-reader-style-windows95 .ei-document-reader-scroll-down:active{box-shadow:inset 2px 2px #000,inset -2px -2px #fff;transform:translate(1px,1px)}

@media(max-width:620px){
  .ei-document-reader-scroll-down{width:46px;height:46px;font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .ei-document-reader-scroll-down{transition:none}
}

/* v0.1.155 — mobile uses the same semantic location; JS still owns the exact paper-relative placement. */
@media(max-width:620px){
  .ei-document-reader .ei-document-reader-window > .ei-document-reader-scroll-down:not([hidden]){
    right:var(--ei-doc-scroll-right,20px)!important;
    bottom:var(--ei-doc-scroll-bottom,98px)!important;
  }
}


/* ============================================================
 * v0.1.148 — repair Bio scroll viewport regression.
 * v0.1.147 accidentally made .ei-document-reader-paper a row flex container
 * and forced the page to height:0, which could collapse visible content to only
 * the first line. This final block re-asserts a column flow and a real scrollable
 * page viewport.
 * ============================================================ */
@media (min-width:761px){
  .ei-document-reader.ei-document-reader-style-bio .ei-document-reader-paper{display:flex!important;flex-direction:column!important;overflow:hidden!important;min-height:0!important;}
  .ei-document-reader.ei-document-reader-style-bio .ei-document-reader-page{display:block!important;flex:1 1 auto!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;}
}


/* ============================================================
 * v0.1.175 — Gallery-only "AAVG 調查（全螢幕）" (aavg_investigation).
 * Full-screen investigation viewport with image-first composition, outlined
 * subtitles and compact bottom controls.
 * ============================================================ */
.ei-document-reader.ei-document-reader-style-aavg_investigation{
  --ei-doc-overlay:rgba(0,0,0,.94);
  --ei-doc-window:transparent;
  --ei-doc-paper:transparent;
  --ei-doc-text:#fff;
  --ei-doc-title:#fff;
  --ei-doc-muted:rgba(255,255,255,.9);
  --ei-doc-accent:#fff;
  --ei-doc-border:transparent;
  --ei-doc-soft-border:transparent;
  --ei-doc-button:rgba(0,0,0,.72);
  --ei-doc-button-text:#fff;
  --ei-doc-button-hover:rgba(0,0,0,.9);
  --ei-doc-button-accent:rgba(0,0,0,.82);
  --ei-doc-focus:#fff;
  --ei-doc-radius:0px;
  --ei-doc-paper-radius:0px;
  --ei-doc-background-opacity:0;
  --ei-doc-window-shadow:none;
  --ei-doc-font:system-ui,-apple-system,"Noto Sans TC",sans-serif;
  --ei-doc-mono:system-ui,-apple-system,"Noto Sans TC",sans-serif;
  padding:0!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-backdrop{background:#000!important}
.ei-document-reader-style-aavg_investigation .ei-document-reader-window{
  width:100vw!important;
  width:100dvw!important;
  height:100vh!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-header,
.ei-document-reader-style-aavg_investigation .ei-document-reader-meta,
.ei-document-reader-style-aavg_investigation .ei-document-reader-grain,
.ei-document-reader-style-aavg_investigation .ei-document-reader-background,
.ei-document-reader-style-aavg_investigation .ei-document-reader-cover,
.ei-document-reader-style-aavg_investigation .ei-document-reader-scroll-down{display:none!important}
.ei-document-reader-style-aavg_investigation .ei-document-reader-paper{
  position:relative!important;
  flex:1 1 auto!important;
  min-height:0!important;
  height:100%!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#000!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-gallery-image-wrap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#000!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-gallery-image-wrap.is-cropped{height:100%!important;max-height:none!important}
.ei-document-reader-style-aavg_investigation .ei-document-reader-gallery-image{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-gallery-image-wrap.is-cropped .ei-document-reader-gallery-image{
  object-fit:cover!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-page{
  position:absolute!important;
  z-index:3!important;
  left:max(12px,env(safe-area-inset-left))!important;
  right:max(12px,env(safe-area-inset-right))!important;
  bottom:90px!important;
  min-height:0!important;
  padding:0 0 4px!important;
  margin:0 auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  white-space:pre-wrap!important;
  text-align:center!important;
  font:800 clamp(22px,3vw,36px)/1.42 system-ui,-apple-system,"Noto Sans TC",sans-serif!important;
  letter-spacing:.02em!important;
  text-shadow:
    -2px -2px 0 #000,
    0 -2px 0 #000,
    2px -2px 0 #000,
    -2px 0 0 #000,
    2px 0 0 #000,
    -2px 2px 0 #000,
    0 2px 0 #000,
    2px 2px 0 #000,
    0 5px 16px rgba(0,0,0,.96)!important;
  -webkit-text-stroke:1.6px #000;
  paint-order:stroke fill;
  pointer-events:none!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-page:empty{display:none!important}
.ei-document-reader-style-aavg_investigation footer{
  position:absolute!important;
  z-index:4!important;
  left:max(10px,env(safe-area-inset-left))!important;
  right:max(10px,env(safe-area-inset-right))!important;
  bottom:max(10px,env(safe-area-inset-bottom))!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
}
.ei-document-reader-style-aavg_investigation footer button,
.ei-document-reader-style-aavg_investigation footer span{
  min-height:36px!important;
  padding:7px 12px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:6px!important;
  background:rgba(0,0,0,.68)!important;
  color:#fff!important;
  box-shadow:none!important;
  text-shadow:0 1px 2px rgba(0,0,0,.88)!important;
  backdrop-filter:blur(3px);
}
.ei-document-reader-style-aavg_investigation footer span{display:inline-flex!important;align-items:center!important;justify-content:center!important;font:700 13px/1.1 var(--ei-doc-mono)!important}
.ei-document-reader-style-aavg_investigation footer button:hover:not(:disabled),
.ei-document-reader-style-aavg_investigation footer button:focus-visible,
.ei-document-reader-style-aavg_investigation .ei-document-reader-corner-close:not([hidden]):focus-visible{
  background:rgba(0,0,0,.88)!important;
  outline:2px solid rgba(255,255,255,.92)!important;
  outline-offset:2px!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-status{
  position:absolute!important;
  z-index:4!important;
  left:max(14px,env(safe-area-inset-left))!important;
  right:max(14px,env(safe-area-inset-right))!important;
  bottom:max(56px,calc(env(safe-area-inset-bottom) + 46px))!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.95)!important;
  text-align:center!important;
  font:600 13px/1.35 system-ui,-apple-system,"Noto Sans TC",sans-serif!important;
  text-shadow:0 1px 3px rgba(0,0,0,.96)!important;
}
.ei-document-reader-style-aavg_investigation .ei-document-reader-corner-close:not([hidden]){
  display:grid!important;
  place-items:center!important;
  position:absolute!important;
  z-index:5!important;
  left:auto!important;
  right:max(10px,env(safe-area-inset-right))!important;
  top:max(10px,env(safe-area-inset-top))!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:6px!important;
  background:rgba(0,0,0,.72)!important;
  color:#fff!important;
  font:400 30px/1 Arial,sans-serif!important;
  box-shadow:none!important;
  transform:none!important;
  text-shadow:0 1px 2px rgba(0,0,0,.9)!important;
  backdrop-filter:blur(3px);
  pointer-events:auto!important;
}
@media(max-width:760px){
  .ei-document-reader-style-aavg_investigation .ei-document-reader-page{
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:max(88px,calc(env(safe-area-inset-bottom) + 72px))!important;
    font-size:clamp(18px,5vw,26px)!important;
    line-height:1.38!important;
    -webkit-text-stroke:1.3px #000;
  }
  .ei-document-reader-style-aavg_investigation footer{gap:6px!important;bottom:max(8px,env(safe-area-inset-bottom))!important}
  .ei-document-reader-style-aavg_investigation footer button,
  .ei-document-reader-style-aavg_investigation footer span{min-height:34px!important;padding:6px 10px!important;font-size:12px!important}
  .ei-document-reader-style-aavg_investigation .ei-document-reader-status{bottom:max(50px,calc(env(safe-area-inset-bottom) + 42px))!important;font-size:12px!important}
  .ei-document-reader-style-aavg_investigation .ei-document-reader-corner-close:not([hidden]){width:38px!important;height:38px!important;font-size:28px!important}
}

/* ============================================================
 * v0.1.172 — Gallery-only "無框展示" (bare_display).
 * No decorative window/paper/image borders. Caption is the only content block
 * and may use dark or light contrast. Controls remain minimal and functional.
 * ============================================================ */
.ei-document-reader-style-bare_display{
  --ei-doc-overlay:rgba(0,0,0,.58);
  --ei-doc-window:transparent;
  --ei-doc-paper:transparent;
  --ei-doc-text:#fff;
  --ei-doc-title:#fff;
  --ei-doc-muted:rgba(255,255,255,.82);
  --ei-doc-accent:#fff;
  --ei-doc-border:transparent;
  --ei-doc-soft-border:transparent;
  --ei-doc-button:rgba(0,0,0,.74);
  --ei-doc-button-text:#fff;
  --ei-doc-button-hover:rgba(0,0,0,.9);
  --ei-doc-button-accent:rgba(0,0,0,.84);
  --ei-doc-focus:#fff;
  --ei-doc-radius:4px;
  --ei-doc-paper-radius:0px;
  --ei-doc-background-opacity:0;
  --ei-doc-window-shadow:none;
  --ei-doc-font:system-ui,-apple-system,"Noto Sans TC",sans-serif;
  --ei-doc-mono:system-ui,-apple-system,"Noto Sans TC",sans-serif;
}
.ei-document-reader-style-bare_display .ei-document-reader-window{
  width:min(960px,calc(100vw - 28px));
  max-height:min(94dvh,1080px);
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.ei-document-reader-style-bare_display .ei-document-reader-header,
.ei-document-reader-style-bare_display .ei-document-reader-meta{display:none!important}
.ei-document-reader-style-bare_display .ei-document-reader-paper{
  min-height:0;
  margin:0;
  overflow:auto;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.ei-document-reader-style-bare_display .ei-document-reader-grain,
.ei-document-reader-style-bare_display .ei-document-reader-background{display:none!important}
.ei-document-reader-style-bare_display .ei-document-reader-gallery-image-wrap{
  margin:0 auto;
  overflow:visible;
  border:0!important;
  border-radius:0!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-gallery-image{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-gallery-image-wrap.is-cropped{
  border:0!important;
  border-radius:0!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-page{
  box-sizing:border-box;
  width:var(--ei-gallery-caption-width,100%);
  min-height:0;
  margin:0 auto;
  padding:14px 18px;
  border:0;
  border-radius:0;
  box-shadow:none;
  line-height:1.7;
  letter-spacing:.01em;
  text-shadow:none;
}
.ei-document-reader-style-bare_display .ei-document-reader-page:empty{display:none!important}
.ei-document-reader-style-bare_display.bare-caption-dark .ei-document-reader-page{background:#000;color:#fff}
.ei-document-reader-style-bare_display.bare-caption-light .ei-document-reader-page{background:#fff;color:#111}
.ei-document-reader-style-bare_display footer{
  grid-template-columns:auto 1fr auto auto;
  gap:8px;
  padding:10px 0 0;
  border:0;
  background:transparent;
}
.ei-document-reader-style-bare_display footer button{
  min-height:38px;
  padding:8px 12px;
  border:0;
  border-radius:4px;
  background:rgba(0,0,0,.76);
  color:#fff;
  box-shadow:none;
  text-shadow:none;
}
.ei-document-reader-style-bare_display footer button:hover:not(:disabled),
.ei-document-reader-style-bare_display footer button:focus-visible{
  background:#000;
  color:#fff;
  outline:2px solid rgba(255,255,255,.9);
  outline-offset:2px;
}
.ei-document-reader-style-bare_display footer span{
  color:#fff;
  text-shadow:0 1px 3px rgba(0,0,0,.85);
}
.ei-document-reader-style-bare_display .ei-document-reader-status{
  min-height:16px;
  padding:7px 0 0;
  color:#fff;
  text-shadow:0 1px 3px rgba(0,0,0,.85);
}
.ei-document-reader-style-bare_display .ei-document-reader-corner-close:not([hidden]){
  display:grid!important;
  place-items:center!important;
  left:auto!important;
  right:max(8px,env(safe-area-inset-right))!important;
  top:max(8px,env(safe-area-inset-top))!important;
  bottom:auto!important;
  width:38px!important;
  height:38px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:4px!important;
  background:rgba(0,0,0,.76)!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
  font:400 28px/1 Arial,sans-serif!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-scroll-down{
  border:0;
  border-radius:4px;
  background:rgba(0,0,0,.76);
  color:#fff;
  box-shadow:none;
}
@media(max-width:620px){
  .ei-document-reader-style-bare_display .ei-document-reader-window{width:calc(100vw - 20px);max-height:96dvh}
  .ei-document-reader-style-bare_display .ei-document-reader-page{padding:12px 14px}
  .ei-document-reader-style-bare_display footer{gap:6px;padding-top:8px}
}


/* ============================================================
 * v0.1.173 — Bare display compact cluster + mobile centering.
 * Bare display is content-sized, not full-screen-window-sized. The image width
 * drives the whole cluster width so close/navigation/completion stay nearby.
 * ============================================================ */
.ei-document-reader.ei-document-reader-style-bare_display{
  place-items:center!important;
  align-items:center!important;
  justify-items:center!important;
  box-sizing:border-box!important;
  padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-window{
  width:min(var(--ei-bare-cluster-width,720px),calc(100vw - 24px))!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100vh - 24px)!important;
  max-height:calc(100dvh - 24px)!important;
  align-self:center!important;
  justify-self:center!important;
  overflow:visible!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-paper{
  flex:0 1 auto!important;
  width:100%!important;
  min-height:0!important;
  max-height:calc(100vh - 118px)!important;
  max-height:calc(100dvh - 118px)!important;
  margin:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-gallery-image-wrap{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-page{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
.ei-document-reader-style-bare_display footer{
  display:flex!important;
  flex:0 0 auto!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  gap:6px!important;
  margin:0!important;
  padding:7px 0 0!important;
}
.ei-document-reader-style-bare_display footer [data-ei-document-prev]:disabled,
.ei-document-reader-style-bare_display footer [data-ei-document-next]:disabled{
  display:none!important;
}
.ei-document-reader-style-bare_display footer [data-ei-document-number]{
  flex:0 0 auto!important;
  min-width:42px!important;
  padding:0 4px!important;
}
.ei-document-reader-style-bare_display footer button{
  flex:0 0 auto!important;
  min-height:34px!important;
  padding:7px 10px!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-status{
  flex:0 0 auto!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:5px 4px 0!important;
  line-height:1.35!important;
  box-sizing:border-box!important;
}
.ei-document-reader-style-bare_display .ei-document-reader-corner-close:not([hidden]){
  display:grid!important;
  position:absolute!important;
  z-index:2147483647!important;
  left:auto!important;
  right:6px!important;
  top:6px!important;
  bottom:auto!important;
  margin:0!important;
  transform:none!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}
@media(max-width:620px){
  .ei-document-reader.ei-document-reader-style-bare_display{
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
  }
  .ei-document-reader-style-bare_display .ei-document-reader-window{
    width:min(var(--ei-bare-cluster-width,calc(100vw - 24px)),calc(100vw - 24px))!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100vh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    margin:auto!important;
  }
  .ei-document-reader-style-bare_display .ei-document-reader-paper{
    max-height:calc(100vh - 108px)!important;
    max-height:calc(100dvh - 108px)!important;
  }
  .ei-document-reader-style-bare_display .ei-document-reader-page{
    min-height:0!important;
    padding:12px 14px!important;
  }
  .ei-document-reader-style-bare_display footer{
    grid-template-columns:none!important;
    grid-template-areas:none!important;
    padding-top:6px!important;
  }
  .ei-document-reader-style-bare_display .ei-document-reader-corner-close:not([hidden]){
    right:5px!important;
    top:5px!important;
    width:36px!important;
    height:36px!important;
  }
}

/* ============================================================
 * v0.1.168 — Gallery Showcase mode.
 * Reuses the canonical Ei 26+1 reader chrome, footer and scroll cue.
 * Images are page-local and rendered only while the gallery is open.
 * ============================================================ */
.ei-document-reader.is-gallery .ei-document-reader-paper{
  display:block;
}
.ei-document-reader-gallery-image-wrap{
  --ei-gallery-image-width:72%;
  --ei-gallery-image-radius:10px;
  --ei-gallery-border-width:1px;
  --ei-gallery-border-color:var(--ei-doc-soft-border);
  --ei-gallery-crop-height:360px;
  --ei-gallery-crop-x:50%;
  --ei-gallery-crop-y:50%;
  --ei-gallery-crop-zoom:1;
  position:relative;
  z-index:1;
  width:var(--ei-gallery-image-width);
  max-width:100%;
  margin:clamp(22px,4vw,36px) auto 0;
  overflow:visible;
}
.ei-document-reader-gallery-image-wrap[hidden]{display:none!important}
.ei-document-reader-gallery-image-wrap[data-align="left"]{margin-left:clamp(20px,4vw,42px);margin-right:auto}
.ei-document-reader-gallery-image-wrap[data-align="right"]{margin-left:auto;margin-right:clamp(20px,4vw,42px)}
.ei-document-reader-gallery-image-wrap[data-align="center"]{margin-left:auto;margin-right:auto}
.ei-document-reader-gallery-image{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:var(--ei-gallery-crop-x) var(--ei-gallery-crop-y);
  border:var(--ei-gallery-border-width) solid var(--ei-gallery-border-color);
  border-radius:var(--ei-gallery-image-radius);
  box-shadow:0 12px 30px rgba(0,0,0,.2);
  transform-origin:var(--ei-gallery-crop-x) var(--ei-gallery-crop-y);
}
.ei-document-reader-gallery-image-wrap.is-cropped{
  height:var(--ei-gallery-crop-height);
  max-height:min(64vh,var(--ei-gallery-crop-height));
  overflow:hidden;
  border:var(--ei-gallery-border-width) solid var(--ei-gallery-border-color);
  border-radius:var(--ei-gallery-image-radius);
}
.ei-document-reader-gallery-image-wrap.is-cropped .ei-document-reader-gallery-image{
  width:100%;
  height:100%;
  border:0;
  border-radius:0;
  object-fit:cover;
  transform:scale(var(--ei-gallery-crop-zoom));
  box-shadow:none;
}
.ei-document-reader.is-gallery .ei-document-reader-page{
  min-height:120px;
  padding-top:clamp(22px,4vw,38px);
  font-size:var(--ei-gallery-text-size,18px);
  text-align:var(--ei-gallery-text-align,left);
}
.ei-document-reader.is-gallery .ei-document-reader-page:empty{
  min-height:36px;
  padding-top:18px;
  padding-bottom:18px;
}
.ei-document-reader.is-gallery .ei-document-reader-cover{display:none!important}
.ei-document-reader.is-gallery footer button[hidden]{display:none!important}
@media(max-width:620px){
  .ei-document-reader-gallery-image-wrap{width:min(var(--ei-gallery-image-width),92%);margin-top:18px}
  .ei-document-reader-gallery-image-wrap[data-align="left"]{margin-left:14px}
  .ei-document-reader-gallery-image-wrap[data-align="right"]{margin-right:14px}
  .ei-document-reader-gallery-image-wrap.is-cropped{max-height:min(52vh,var(--ei-gallery-crop-height))}
}


/* ============================================================
 * v0.1.177 — Gallery headerless close control reliability.
 * Theme-independent close button: draw the X with CSS strokes so font metrics,
 * native button appearance and theme chrome cannot hide/crop the glyph.
 * ============================================================ */
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-window{
  isolation:isolate!important;
}
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden]){
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  position:absolute!important;
  z-index:2147483647!important;
  box-sizing:border-box!important;
  left:auto!important;
  right:max(10px,env(safe-area-inset-right))!important;
  top:max(10px,env(safe-area-inset-top))!important;
  bottom:auto!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  transform:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  color:var(--ei-doc-button-text)!important;
}
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden])::before,
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden])::after{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  top:50%!important;
  width:18px!important;
  height:2px!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:currentColor!important;
  box-shadow:none!important;
  transform-origin:center!important;
  pointer-events:none!important;
}
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden])::before{
  transform:translate(-50%,-50%) rotate(45deg)!important;
}
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden])::after{
  transform:translate(-50%,-50%) rotate(-45deg)!important;
}
.ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden]):focus-visible{
  outline:2px solid var(--ei-doc-focus)!important;
  outline-offset:2px!important;
}
@media(max-width:620px){
  .ei-document-reader.is-gallery.is-header-hidden .ei-document-reader-corner-close:not([hidden]){
    right:max(8px,env(safe-area-inset-right))!important;
    top:max(8px,env(safe-area-inset-top))!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
  }
}
