:root{color-scheme:light;--paper:#f3efe5;--ink:#20383e;--teal:#19383f;--gold:#a47b42;--line:#cec7b8;--body-size:18px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#132c32}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{display:flex;justify-content:center;background:radial-gradient(ellipse at 50% 30%,#31535a,#132c32 70%)}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,summary:focus-visible,.artwork:focus-visible{outline:3px solid #bc894a;outline-offset:-3px}button:disabled{opacity:.35;cursor:default}button,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}button:active:not(:disabled){filter:brightness(.94)}
.reader{width:min(100%,520px);height:100vh;height:100dvh;background:var(--paper);display:grid;grid-template-rows:58px minmax(0,38%) minmax(0,1fr) 157px;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 0 90px #0004;position:relative;overflow:hidden}
.toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);min-width:0}.brand{font-size:13px;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:7px}.brand-mark{font-size:24px;color:var(--gold);font-weight:400}.brand small{font-size:10px;letter-spacing:1px;font-weight:400;padding-left:9px;border-left:1px solid var(--line);margin-left:4px;color:#6a746d}.tools{display:flex;gap:4px}.icon-button{border:0;background:transparent;min-width:42px;min-height:44px;font-size:19px;display:grid;place-items:center;padding:5px}.icon-button:first-child{font-family:Georgia,serif}
.artwork{margin:0;position:relative;background:var(--teal);min-height:0;overflow:hidden;touch-action:manipulation}.artwork img{display:block;width:100%;height:100%;object-fit:contain;user-select:none}.scene-caption{position:absolute;bottom:0;left:0;right:0;padding:36px 24px 17px;background:linear-gradient(transparent,#112c32ee);color:var(--paper);pointer-events:none}.scene-caption span{font-size:10px;letter-spacing:2.4px;color:#ddc29a;font-weight:700}.scene-caption h1{font:normal clamp(23px,6vw,31px)/1.12 Georgia,serif;letter-spacing:-.5px;margin:6px 0 0}.exit-immersive{display:none;position:absolute;right:12px;top:12px;width:44px;height:44px;border:1px solid #eadbc14d;border-radius:50%;color:var(--paper);background:#19383fa8;font-size:28px;opacity:0}.exit-immersive:focus-visible{opacity:1}
.reading{min-height:0;padding:18px 26px 0;display:flex;flex-direction:column;gap:10px}.reading-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;letter-spacing:1.6px;font-weight:700;color:#886638;min-height:15px}.reading-meta #pageCounter{letter-spacing:1px;font-size:12px;font-weight:400;color:#687577}.text-frame{flex:1;min-height:0;overflow:hidden;position:relative}.text-frame p{font-family:Georgia,'Times New Roman',serif;font-size:var(--body-size);line-height:1.55;margin:0;white-space:pre-wrap;overflow-wrap:break-word}.progress{display:flex;gap:4px;align-items:center;height:4px;flex-shrink:0}.progress span{height:2px;background:#c8c4b9;flex:1}.progress span.done{background:#a9824a}
.navigation{padding:8px 22px 14px;min-height:0;display:flex;flex-direction:column;gap:5px}.nav-heading{display:flex;justify-content:space-between;align-items:center;min-height:30px;color:#717b79;font-size:12px}.quiet-button{background:none;border:0;font-size:13px;padding:8px 0;min-height:36px}.nav-heading .quiet-button{text-align:left;min-width:85px}.help-button{font-family:Georgia,serif;border:1px solid #c4c5bb;border-radius:50%;background:transparent;width:26px;height:26px;margin-left:48px;font-size:15px}.actions{flex:1;display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:0}.primary{background:var(--teal);color:var(--paper);border:1px solid var(--teal);border-radius:3px;min-height:52px;padding:12px 20px;font:normal 19px Georgia,serif}.actions .primary{flex:1;max-height:62px}.choice{background:#fcfaf5;border:1px solid #bdb6a6;border-radius:2px;display:flex;align-items:center;gap:14px;text-align:left;padding:10px 13px;min-height:45px;flex:1;line-height:1.15}.choice .choice-number{font:14px Georgia,serif;color:#93682f;padding-right:12px;border-right:1px solid #d6cdbb}.choice .choice-label{font:normal 17px Georgia,serif}.choice:hover{background:#eae4d6;border-color:#a47b42}.primary:hover{background:#28515a}.full{width:100%}
.reader.immersive{grid-template-rows:0 minmax(0,42%) minmax(0,1fr) 157px}.immersive .toolbar{visibility:hidden;overflow:hidden}.immersive .scene-caption{display:none}.immersive .exit-immersive{display:block}.immersive .help-button{visibility:hidden}.immersive .reading-meta{opacity:.75}
.toast{position:fixed;z-index:5;left:50%;top:calc(20px + env(safe-area-inset-top,0px));width:min(88vw,430px);transform:translate(-50%,-140px);background:#fcfaf5;color:var(--ink);border:1px solid #b29b75;padding:15px 20px;font-size:14px;line-height:1.4;box-shadow:0 5px 30px #0003;transition:transform .25s;pointer-events:none;border-radius:4px}.toast.show{transform:translate(-50%,0)}
dialog{width:min(calc(100% - 28px),460px);max-height:85vh;max-height:85dvh;overflow:auto;border:1px solid #ab997a;border-radius:8px;background:var(--paper);color:var(--ink);padding:20px 24px;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#102a31bb;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.7px;color:#886638;font-weight:700}.dialog-top .icon-button{font:28px Arial;min-width:36px}dialog h2{font:30px/1.1 Georgia,serif;letter-spacing:-.7px;margin:16px 0}dialog p,dialog li{font-size:15px;line-height:1.55}dialog ol{padding-left:20px}dialog li{padding:5px 0}dialog p.settings-note{font-size:13px;color:#6c7774}.field-label{display:block;font-size:14px;margin:24px 0 12px}.segmented{display:flex;border:1px solid #bcb5a6;border-radius:3px;overflow:hidden}.segmented button{background:transparent;border:0;border-right:1px solid #bcb5a6;flex:1;padding:12px 4px;font-size:14px;min-height:44px}.segmented button:last-child{border:0}.segmented button[aria-pressed=true]{background:var(--teal);color:var(--paper)}details{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}summary{cursor:pointer;font-size:14px;line-height:1.5}.restart{display:block;margin:14px auto 0;color:#866336}
@media(min-width:650px) and (min-height:750px){.reader{height:min(100dvh - 40px,920px);margin:auto;border:1px solid #77837c;border-radius:6px}.reader.immersive{height:100dvh;border:0;border-radius:0}.reading{padding-left:32px;padding-right:32px}}
@media(max-height:690px){.reader{grid-template-rows:48px minmax(0,32%) minmax(0,1fr) 139px}.reader.immersive{grid-template-rows:0 minmax(0,36%) minmax(0,1fr) 139px}.reading{padding:12px 22px 0;gap:7px}.navigation{padding:5px 18px 10px;gap:2px}.scene-caption{padding:22px 22px 12px}.scene-caption h1{font-size:24px}.brand small{display:none}.text-frame p{line-height:1.45}.choice{padding:7px 12px}}
@media(max-height:430px) and (orientation:landscape){.reader{width:min(100%,1000px);grid-template-columns:42% 58%;grid-template-rows:42px minmax(0,1fr) 132px;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.toolbar{grid-column:1 / -1}.artwork{grid-column:1;grid-row:2 / 4}.reading{grid-column:2;grid-row:2}.navigation{grid-column:2;grid-row:3}.reader.immersive{grid-template-rows:0 minmax(0,1fr) 132px}.scene-caption h1{font-size:24px}.reading{padding-top:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
/* The original ivory / petrol reading surface, adapted to full bilingual scenes. */
.brand{letter-spacing:1px;font-size:11px;line-height:1.3;white-space:pre-line;gap:6px}.brand-mark{font-size:23px}.toolbar{padding:0 14px}.language-button{font:700 13px Arial!important}.tools{gap:0}.scene-caption h1{font-size:clamp(20px,5.5vw,29px)}.reading-meta #chapterLabel{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.5px}.reading-meta #pageCounter{flex-shrink:0}.reader{grid-template-rows:58px minmax(0,38%) minmax(0,1fr) 206px}.reader.immersive{grid-template-rows:0 minmax(0,42%) minmax(0,1fr) 206px}.navigation{padding:6px 18px 10px}.nav-heading{gap:6px}.nav-heading .quiet-button{min-width:0;font-size:12px}.nav-heading #navHint{text-align:center;max-width:54%;color:#866336}.nav-heading #navHint:disabled{opacity:1;color:#717b79}.help-button{margin-left:0;flex-shrink:0}.choice{flex:1;padding:8px 10px;gap:9px;min-height:58px}.choice .choice-label{font-size:16px;line-height:1.2}.choice .choice-number{padding-right:9px}.choice small{display:block;font:11px Arial;margin-top:4px;color:#776f60}.choice.locked{background:#ece8dd;border-style:dashed}.choice.locked .choice-label{color:#6a6c63}.actions .primary{width:100%}.text-frame p{overflow-wrap:anywhere}
@media(max-height:690px){.reader{grid-template-rows:48px minmax(0,30%) minmax(0,1fr) 206px}.reader.immersive{grid-template-rows:0 minmax(0,34%) minmax(0,1fr) 206px}.reading{padding:10px 20px 0;gap:6px}.scene-caption{padding:20px 18px 10px}}
@media(max-height:430px) and (orientation:landscape){.reader{grid-template-rows:42px minmax(0,1fr) 170px}.reader.immersive{grid-template-rows:0 minmax(0,1fr) 170px}.choice{min-height:52px}.choice .choice-label{font-size:15px}.reading{padding:5px 18px 0;gap:3px}.text-frame p{line-height:1.25}.navigation{padding:2px 14px 5px}.nav-heading{min-height:24px}.nav-heading .quiet-button{padding:3px 0;min-height:26px}}

/* The cover shares the normal reading layout with the opening text. */
.opening-cover .scene-caption{display:none}

.gate-link{display:block;text-align:center;text-decoration:none;box-sizing:border-box}#accessGate h2{font-size:24px}#accessGate p{line-height:1.6}.brand-mark{color:inherit;text-decoration:none}
