/* Shared accessibility improvements; loaded after each page's visual theme. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
html{scroll-padding-top:24px}body{overflow-wrap:break-word}
main:focus{outline:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #fff;outline-offset:4px;box-shadow:0 0 0 7px #101719}
.sample-paper :focus-visible{outline-color:#63461f;box-shadow:0 0 0 7px #f6f0e5}
.skip:focus{top:12px;z-index:1000;outline-color:var(--ink)}
.eyebrow,.micro,.book-number,.extract-label,.story-prompt span,.sample-chapter-label{font-size:12px!important;line-height:1.6;letter-spacing:.12em}
.brand-sub{font-size:10px!important;line-height:1.5;letter-spacing:.12em}
.hero-note,.hero-bottom,.book-card p,.reader-note,.reader-panel .reader-note,.reader-form .optional,.sample-copyright,.portrait-button span,.page-note,.scene-caption,.scroll-hint{font-size:14px!important;line-height:1.65}
.button,.text-link,.reader-consent{font-size:15px!important;line-height:1.5}
.button,.icon-button,.map-zoom,.menu-toggle,.menu-close,summary{min-height:44px}
.icon-button{min-width:44px}.text-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.reader-note a,.reader-room p a,.sample-next p a,.map-text-alternative a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.reader-consent{padding:8px 0}.reader-form-status:focus{outline:3px solid #dfb773;outline-offset:5px}
.map-text-alternative{margin:24px 0;max-width:900px;border:1px solid var(--line);padding:18px 24px}
.map-text-alternative summary{cursor:pointer;color:var(--gold);font-size:16px}
.map-text-alternative h3{font:24px/1.3 var(--serif);margin:24px 0 14px}
.map-text-alternative p{font-size:16px;line-height:1.75;margin:14px 0}
.map-text-alternative summary:focus-visible{outline:3px solid currentColor}
#map-dialog .map-text-alternative{margin:24px;max-width:none}
.reader-actions,.book-actions{row-gap:16px}.dialog-layout .reader-actions{align-items:flex-start}
img,svg,video,audio{max-width:100%}.reader-panel audio{min-width:0}
@media(max-width:480px){.book-hero{gap:28px}.sample-masthead{gap:16px}.sample-masthead h1{font-size:32px}.brand{letter-spacing:.07em}.site-header .brand-sub{font-size:9px!important}.book-actions .button,.reader-actions .button{max-width:100%;white-space:normal}.map-text-alternative{padding:16px}.dialog-layout .reader-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.button,.icon-button,.story-prompt,.portrait-image,.reader-panel,.reader-room,.map-text-alternative{border:1px solid CanvasText}.button{background:ButtonFace;color:ButtonText}.text-link,a{color:LinkText}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid Highlight;box-shadow:none}.cover-status{background:Canvas;color:CanvasText;border:1px solid CanvasText}}
