.reader-body{background:#080808}.reader-header{width:min(1440px,90%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #242424}.reader-header>a:last-child{font-size:.875rem;color:#d4cec4}.reading-layout{width:min(1320px,90%);margin:48px auto 80px;display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);gap:clamp(30px,5vw,85px);align-items:start}.reading-intro{position:sticky;top:40px;padding-top:15px}.reading-intro .eyebrow{font-size:.75rem;letter-spacing:.17em;margin-bottom:22px}.reading-intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2.2rem,3.5vw,3.6rem);letter-spacing:-.045em;line-height:1.08;margin-bottom:28px}.reading-intro h1 span{color:#c6a76b}.reading-author{font-size:.875rem;color:#aaa59c;line-height:1.8}.reading-author strong{color:#eee9df;font-weight:400}.reading-edition{font-size:.8125rem;color:#a8a298;line-height:1.8}.reading-note{border-top:1px solid #34302a;margin-top:40px;padding-top:24px}.reading-note>span{font-size:.75rem;letter-spacing:.16em;color:#c6a76b}.reading-note p{font:italic 1.3rem/1.5 Georgia,serif;color:#d1cabf;margin:12px 0 28px}.rights-link{font-size:.875rem;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#65553a}.reader{min-width:0;scroll-margin-top:20px}.reader-toolbar{position:sticky;top:0;z-index:3;background:#141310;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border:1px solid #34302a;border-bottom:0;min-height:66px}.reader-toolbar[hidden],.reader-pagination[hidden],.script-page[hidden],.excerpt-end[hidden]{display:none}.page-picker{display:flex;gap:10px;align-items:center;font-size:.875rem;white-space:nowrap;color:#c9c3b8}.reader button,.reader select{font:inherit;font-size:.875rem;min-height:44px;color:#eee8dc;border:1px solid #4c4436;background:#1a1814;border-radius:3px;cursor:pointer;padding:8px 13px}.reader select{color-scheme:dark;min-width:58px}.reader button:hover{border-color:#c6a76b;color:#dfc38f}.reader button:disabled{opacity:.35;cursor:default}.reader button:focus-visible,.reader select:focus-visible{outline:2px solid #c6a76b;outline-offset:4px}.reader-progress{position:absolute;height:2px;bottom:0;left:0;right:0;background:#302a20}.reader-progress span{display:block;height:100%;width:10%;background:#c6a76b;transition:width .2s}.script-page{background:#eeeae2;color:#24221f;padding:30px clamp(24px,5vw,64px) 52px;box-shadow:0 18px 65px #0005;min-height:820px;margin:0 0 24px}.script-page:focus{outline:none}.paper-label{display:flex;justify-content:space-between;gap:20px;padding-bottom:28px;font-size:.75rem;letter-spacing:.08em;color:#746c60}.paper-label span:first-child{text-transform:uppercase}.script-text{font-family:'Courier New',Courier,monospace;font-size:1rem;line-height:1.48}.script-text p{margin:0 0 .8em;overflow-wrap:break-word}.script-text .script-act{text-align:center;font-weight:bold;margin:0 0 1.7em}.script-text .script-scene{font-weight:bold;margin-top:1.7em}.script-text .script-transition{text-align:right;font-weight:bold;margin-bottom:1.5em}.script-text .script-character{margin:1.1em 0 0 29%;}.script-text .script-dialogue{margin:0 12% .8em 17%;}.script-text .script-parenthetical{margin:0 18% 0 24%;}.reader-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}.page-count{font-size:.8125rem;letter-spacing:.1em;color:#b7aa94;white-space:nowrap}.excerpt-end{padding:48px 0 16px;margin-top:40px;border-top:1px solid #34302a}.excerpt-end .eyebrow{margin-bottom:16px}.excerpt-end h2{font:400 clamp(1.8rem,3vw,2.6rem)/1.15 Georgia,serif;letter-spacing:-.025em}.excerpt-end p:not(.eyebrow){max-width:520px;color:#bdb7ab;font-size:1rem;line-height:1.8}.excerpt-end .button{margin-top:12px}.return-story{display:block;font-size:.875rem;color:#bdb7ab;margin-top:24px}.reader-footer{width:min(1440px,90%);margin:auto;border-top:1px solid #242424;font-size:.8125rem;color:#aaa59c;padding:28px 0;display:flex;justify-content:space-between;gap:20px}.reader-body.night .script-page{background:#191919;color:#e3dfd6}.reader-body.night .paper-label{color:#a39a8a}.reader-body.night .script-page{box-shadow:none;border:1px solid #303030}
@media(max-width:1000px){.reading-layout{grid-template-columns:1fr;max-width:780px;margin-top:30px;gap:28px}.reading-intro{position:static;display:grid;grid-template-columns:1fr auto;gap:0 25px;padding:0}.reading-intro .eyebrow{grid-column:1/-1;margin-bottom:14px}.reading-intro h1{font-size:2.8rem;margin-bottom:12px}.reading-intro h1 br{display:none}.reading-author{grid-column:1;margin:0}.reading-edition{grid-column:2;grid-row:2;align-self:end;text-align:right;margin-bottom:12px}.reading-note{display:none}.rights-link{grid-column:1/-1;margin-top:16px}.script-page{min-height:760px}}
@media(max-width:540px){.reader-header{width:92%;padding:10px 0}.reader-header .signature-brand{width:145px}.reader-header>a:last-child{font-size:.8125rem}.reading-layout{width:100%;margin-top:26px;gap:24px}.reading-intro{display:block;padding:0 6%}.reading-intro h1{font-size:2.35rem}.reading-author br{display:none}.reading-author strong{margin-left:4px}.reading-edition{text-align:left;margin:10px 0 16px}.reading-edition br{display:none}.reading-edition br:after{content:' · '}.rights-link{display:inline-block;margin-top:0}.reader-toolbar{padding:10px 5%;gap:8px}.page-picker{gap:7px}.reader button{padding:8px 11px}.script-page{padding:24px 6% 36px;min-height:0;box-shadow:none}.paper-label{font-size:.75rem;letter-spacing:.015em;padding-bottom:26px}.script-text{line-height:1.5;font-size:1rem}.script-text .script-character{margin-left:21%}.script-text .script-dialogue{margin-left:9%;margin-right:4%}.script-text .script-parenthetical{margin-left:15%;margin-right:5%}.reader-pagination{margin:20px 5% 0;gap:8px}.page-count{font-size:.75rem;letter-spacing:0}.excerpt-end{margin:36px 6% 0;padding-top:30px}.reader-footer{flex-direction:column;text-align:center;align-items:center;gap:10px}.reader-footer>span{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.reader-progress span{transition:none}}
@media(max-width:540px){.reading-edition br{display:block}}
