:root{color-scheme:dark;--ink:#f3eee4;--muted:#b7b8b1;--accent:#e0cba2;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#080c0d;color:var(--ink);scroll-padding-top:25vh;scrollbar-gutter:stable}*{box-sizing:border-box}body{margin:0;background:#080c0d}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.symbols{position:absolute;width:0;height:0;overflow:hidden}.icon{display:inline-grid;place-items:center;border:0;border-radius:50%;padding:0;width:48px;height:48px;flex-shrink:0;background:transparent;color:var(--ink);touch-action:manipulation}.icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.icon:hover{background:#ffffff12}.icon:disabled{opacity:.3;cursor:default}.world{position:fixed;inset:0;z-index:0;pointer-events:none;height:100lvh;overflow:hidden}.world img,.shade{position:absolute;inset:0;width:100%;height:100%}.world img{object-fit:cover;object-position:50% 35%}.shade{background:linear-gradient(180deg,#03060940 0%,#03060965 20%,#030609d8 39%,#030609ec 62%,#030609c9 100%)}header{position:fixed;z-index:3;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:calc(env(safe-area-inset-top) + 8px) max(16px,env(safe-area-inset-right)) 16px max(24px,env(safe-area-inset-left));background:linear-gradient(#05090bb8,transparent);pointer-events:none}header span{font-size:10px;letter-spacing:.22em;color:#e4e4dcbd;font-weight:500}header button{pointer-events:auto}#reader{position:relative;z-index:1;max-width:650px;margin:auto;padding:43svh max(28px,env(safe-area-inset-right)) 20svh max(28px,env(safe-area-inset-left))}.scene+.scene{padding-top:42px;border-top:1px solid #d7c39c26;margin-top:44px}.beat{margin:0 0 54px;position:relative;scroll-margin-top:28vh}.prose{font-family:Georgia,"Times New Roman",serif;font-size:clamp(20px,5.2vw,24px);line-height:1.75;letter-spacing:.005em;margin:0;color:#e0dcd3;text-shadow:0 2px 15px #000}.dialogue{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(19px,5vw,22px);line-height:1.75}.speaker{display:block;font-size:9px;font-weight:600;letter-spacing:.18em;color:#d5c29c;margin-bottom:8px}.beat.is-active .prose{color:#fff7e6}.beat::before{content:"";position:absolute;left:-15px;top:9px;width:2px;height:24px;background:transparent}.beat.is-active::before{background:#d5bd88b8}.phrase{display:inline;padding:0;border:0;border-radius:0;background:none;font:inherit;color:inherit;text-decoration:underline;text-decoration-color:#eadfc27c;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-style:dotted;user-select:text;-webkit-user-select:text;min-width:0}.semantic-cue{margin:18px 0 0;border-left:1px solid #ccb88935;padding:5px 7px;background:linear-gradient(90deg,#080f11b8,#080f1140);border-radius:0 8px 8px 0;overflow:hidden}.semantic-cue svg{display:block;width:100%;height:auto;max-height:175px;color:#ddd0b2;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.semantic-cue .person{stroke-width:5.2}.semantic-cue .motion{color:#e2c28a;stroke-width:2.2}.semantic-cue .absent{stroke-dasharray:4 6;stroke-opacity:.75}.semantic-cue .label{fill:#e0d6c4;stroke:none;font:13px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.6px}.semantic-cue figcaption{font-size:12px;line-height:1.5;letter-spacing:.015em;color:#d8c8aa;margin:2px 10px 7px}.beat.is-active .semantic-cue{border-left-color:#dcc28a9c}body[data-visuals="off"] .semantic-cue{display:none}#progress{position:fixed;z-index:3;bottom:0;left:0;right:0;height:max(2px,env(safe-area-inset-bottom));background:#080c0dce;pointer-events:none}#progress span{display:block;height:2px;width:0;background:#d6c09a}dialog{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,560px);max-height:83dvh;overflow:auto;overscroll-behavior:contain;color:var(--ink);background:#10191bf9;border:1px solid #ffffff16;border-bottom:0;border-radius:20px 20px 0 0;padding:32px 28px calc(26px + env(safe-area-inset-bottom));box-shadow:0 -15px 100px #0006}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}dialog h2{font:26px/1.3 Georgia,serif;padding-right:28px;margin:4px 0 22px}dialog h3{font-size:13px;font-weight:500;color:var(--muted);margin-top:25px}dialog p{font-size:17px;line-height:1.7;margin:14px 0}dialog .muted{font-size:13px;color:var(--muted)}.close{position:absolute;right:10px;top:10px;color:var(--muted)}blockquote{border-left:1px solid #ad9870;margin:20px 0 0;padding:6px 0 6px 18px;font-size:16px;line-height:1.7;color:#ddd8ce}#lookup-visual .semantic-cue{margin:0 0 16px;padding:0;border:0;background:transparent}#lookup-visual .semantic-cue svg{max-height:150px}.actions{display:flex;gap:18px;border-top:1px solid #ffffff18;margin-top:25px;padding-top:12px}.preference{display:flex;align-items:center;justify-content:space-between;min-height:48px;font-size:15px}.preference input{width:22px;height:22px;accent-color:#d9c192}#history:empty{display:none}#history button{display:block;border:0;border-bottom:1px solid #ffffff12;background:none;width:100%;text-align:left;padding:14px 0;font-size:16px;min-height:48px}details{margin-top:20px;color:var(--muted);font-size:12px}summary{cursor:pointer;min-height:44px;display:flex;align-items:center}details p{font-size:12px;line-height:1.8}details a{color:inherit}.status{position:fixed;z-index:4;top:80px;left:20px;right:20px;background:#1e282bee;font-size:13px;padding:16px;border-radius:8px}body:has(dialog[open]){overflow:hidden}@media(min-width:700px){#reader{padding-top:44vh}.shade{background:linear-gradient(180deg,#0005,#030609c4 30%,#030609ed 60%,#030609c9)}.semantic-cue svg{max-height:175px}}@media(max-width:350px){#reader{padding-left:24px;padding-right:24px}.prose{font-size:20px}.dialogue{font-size:19px}}@media(prefers-reduced-motion:no-preference){.prose,.semantic-cue{transition:color .12s,border-color .12s}}
