:root{--yellow:#ffce43;--muted:var(--faint)}*{box-sizing:border-box}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:4px}.intro{max-width:1120px;margin:auto;padding:44px 28px 30px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800}.intro h1{font-family:Impact,'Arial Black',sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.025em;line-height:.94;font-size:clamp(42px,6vw,80px);position:relative;margin:16px 0}.intro h1 em{font-style:normal;color:var(--red)}.intro>p:last-child{font-size:17px}.burst{display:inline-flex;align-items:center;justify-content:center;background:var(--yellow);border:3px solid;transform:rotate(9deg);font:900 20px/1.1 Arial;padding:20px;border-radius:50%;margin-left:30px;vertical-align:middle}.reader-shell{padding:0 22px 30px}.toolbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:var(--paper);border:2px solid var(--ink);max-width:1000px;margin:auto;padding:12px;box-shadow:4px 4px 0 var(--ink)}.toolbar label{font-size:12px;font-weight:800;text-transform:uppercase}.toolbar select,.toolbar button,.bottom-controls button{border:2px solid var(--ink);background:var(--paper);padding:10px;min-height:44px;border-radius:0;font-weight:700}.toolbar select{max-width:235px}.toolbar button[aria-pressed=true]{background:var(--ink);color:white}.hint{text-align:center;font-size:13px;color:var(--muted);margin:18px auto;max-width:850px}.bookstage{position:relative;max-width:1020px;margin:auto;perspective:1600px;padding:0 58px}.bookstage:has(.wide){max-width:1260px}#book{max-width:820px;margin:auto;transform-origin:left center;filter:drop-shadow(10px 16px 12px #43372340);touch-action:pan-y;transition:transform .17s ease,opacity .17s}#book.turning{transform:rotateY(-7deg);opacity:.6}#book.wide{max-width:1100px}.edge{position:absolute;top:40%;font-size:44px;width:44px;height:64px;background:var(--ink);color:var(--paper);border:0;z-index:1}.prev{left:0}.next{right:0}.page{background:var(--paper);border:2px solid var(--ink);padding:28px;min-height:1060px;position:relative;display:flex;flex-direction:column;overflow:hidden}.page:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Ccircle cx='1' cy='1' r='.5' fill='%23141414' opacity='.09'/%3E%3C/svg%3E");opacity:.5}.folio{display:flex;justify-content:space-between;gap:14px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;border-top:2px solid;margin-top:auto;padding-top:12px}.page-header{border-bottom:4px solid;padding-bottom:16px;margin-bottom:16px}.page-header p{font-size:11px;font-weight:900;letter-spacing:.13em;margin:0 0 8px;color:var(--teal)}.page h2,.page h3{font-family:Impact,'Arial Black',sans-serif;line-height:1;text-transform:uppercase;letter-spacing:-.015em}.page h2{font-size:clamp(28px,3.8vw,49px);margin:0}.page h3{font-size:27px;margin:14px 0}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{margin:0;border:3px solid;background:white;position:relative}.scene{aspect-ratio:1;background-size:200% 200%;background-repeat:no-repeat;border-bottom:3px solid;position:relative}.scene b{position:absolute;top:5px;left:5px;background:var(--yellow);padding:3px 7px;font-size:13px;border:2px solid}.panel figcaption{padding:10px 12px;min-height:116px;position:relative;z-index:1}.caption{font-size:11px;font-style:italic;margin:0 0 5px;color:#51483d}.dialogue{font-size:15px;line-height:1.28;margin:0;font-weight:650}.dialogue strong{color:var(--red)}.basis{font-size:10px;line-height:1.4;margin:14px 0 16px;color:#575147}.cover{background:var(--yellow);padding:22px;min-height:1060px}.cover-top{font-size:12px;font-weight:900;display:flex;justify-content:space-between;border-bottom:3px solid;padding-bottom:10px}.masthead{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(50px,7vw,88px);line-height:.9;text-transform:uppercase;letter-spacing:-.035em;color:var(--red);text-shadow:3px 3px 0 var(--paper);margin:18px 0;transform:rotate(-2deg)}.masthead small{font-size:.35em;display:block;color:var(--ink);text-shadow:none;letter-spacing:.08em}.cover-line{background:var(--ink);color:white;padding:12px;font-size:22px;font-weight:900;text-transform:uppercase;transform:rotate(1deg);margin:12px 0 16px}.cover-art{height:420px;position:relative;background:var(--teal);border:4px solid;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:5px}.cover-art img{width:100%;height:100%;object-fit:cover;object-position:center}.cover-art .scene{height:100%;aspect-ratio:auto;background-size:200% 200%}.cover-teasers{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.teaser{border:3px solid;padding:13px;background:var(--paper);font-weight:900;font-size:20px;line-height:1.05;box-shadow:3px 3px 0 var(--red)}.cover-bottom{font-weight:900;font-size:18px;text-transform:uppercase;text-align:center;margin:18px 0}.cast-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.cast{margin:0;text-align:center}.cast img{width:100%;display:block;aspect-ratio:1;object-fit:cover;border:2px solid}.cast figcaption{font-size:12px;font-weight:900;padding:5px 0}.lead{font-size:21px;line-height:1.35}.copy{font-size:16px;line-height:1.5}.box{border:3px solid;background:white;padding:19px;margin:15px 0}.box.red{background:var(--red);color:var(--paper)}.box.blue{background:var(--teal);color:white}.box.yellow{background:var(--yellow)}.columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contents-list{list-style:none;padding:0;margin:0}.contents-list li{border-bottom:1px solid #b9aa8e;padding:9px 0;font-size:14px}.contents-list button{border:0;background:none;font:inherit;text-align:left;padding:0;width:100%}.contents-list b{float:right}.pullquote{font-size:32px;font-weight:900;line-height:1.05;color:var(--red);border-left:8px solid var(--red);padding-left:16px;margin:24px 0}.portrait-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portrait-pair img{width:100%;border:3px solid}.dialogue-list p{border:2px solid;background:white;padding:14px;font-size:18px;line-height:1.35;margin:12px 0}.dialogue-list strong{color:var(--red)}.big-number{font-size:64px;font-weight:900;line-height:1;color:var(--red)}.shelf{display:grid;gap:13px}.shelf article{border:3px solid;background:white;padding:15px}.shelf h3{font-size:24px;margin:0 0 10px}.shelf p{line-height:1.4;margin:7px 0;font-size:15px}.source-links{font-size:12px;line-height:1.8}.riddle{font-size:20px;font-weight:800;line-height:1.3}.puzzle-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;max-width:400px;margin:20px auto;font-family:monospace;font-size:22px;font-weight:900}.puzzle-grid span{aspect-ratio:1;display:grid;place-items:center;background:white;border:1px solid}.invoice{width:100%;border-collapse:collapse;background:white;font-size:16px}.invoice td,.invoice th{border:2px solid;padding:10px;text-align:left}.invoice tfoot{font-weight:900;background:var(--yellow)}.answer{margin:14px 0;line-height:1.4}.back-feature{border:4px solid;background:var(--teal);color:white;padding:30px;transform:rotate(-1deg)}.back-feature h2{font-size:60px}.back-feature p{font-size:23px;line-height:1.3}.back-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px 0}.back-cats img{width:100%;border:3px solid}.bottom-controls{display:flex;justify-content:center;align-items:center;gap:22px;margin:25px auto 14px;font-size:14px}.progress{height:6px;background:#bfb298;max-width:820px;margin:auto}.progress i{display:block;background:var(--red);height:100%;transition:width .2s}.archive,.closing{max-width:1000px;margin:auto;padding:32px 24px}.archive h2,.closing h2{font-size:32px;margin:8px 0 22px}.issue-card{display:flex;align-items:center;gap:20px;background:var(--paper);border:3px solid;padding:20px;box-shadow:5px 5px 0 var(--ink);max-width:650px}.issue-card button{background:var(--red);color:white;border:2px solid var(--ink);padding:14px;font-weight:900}.closing{border-top:3px solid;line-height:1.6}#error{max-width:820px;margin:20px auto;background:white;border:3px solid var(--red);padding:20px}.textmode .story-grid{display:block}.textmode .panel{margin-bottom:18px}.textmode .scene{max-height:240px;background-size:200% auto}.textmode .panel figcaption{min-height:0}.textmode .dialogue{font-size:20px;line-height:1.55}.textmode .caption{font-size:15px}.textmode .page{min-height:0}.textmode .basis{font-size:14px}.textmode .columns{display:block}.textmode .copy{font-size:20px}.print-only{display:none}
@media(max-width:700px){.intro{padding:28px 18px 20px}.intro h1{font-size:45px}.burst{font-size:15px;padding:12px;margin-left:10px}.reader-shell{padding:0 8px 25px}.toolbar{gap:7px;padding:8px}.toolbar button,.toolbar select{font-size:12px;padding:8px}.toolbar select{max-width:175px}.bookstage{padding:0}.edge{display:none}.page{padding:15px;min-height:0}.page h2{font-size:32px}.page-header{padding-bottom:12px;margin-bottom:12px}.page-header p{font-size:9px}.story-grid{gap:8px}.panel{border-width:2px}.panel figcaption{padding:8px;min-height:140px}.dialogue{font-size:13px;line-height:1.3}.caption{font-size:10px}.basis{margin:12px 0}.folio{margin-top:18px;font-size:8px}.cover{min-height:750px;padding:16px}.cover-top{font-size:9px}.masthead{font-size:53px}.cover-line{font-size:17px}.cover-art{height:300px}.teaser{font-size:17px;padding:10px}.cover-bottom{font-size:15px}.cast-grid{grid-template-columns:repeat(5,1fr);gap:5px}.cast figcaption{font-size:10px}.lead{font-size:18px}.copy{font-size:14px}.columns{gap:10px}.box{padding:12px}.page h3{font-size:22px}.dialogue-list p{font-size:15px}.pullquote{font-size:26px}.riddle{font-size:16px}.puzzle-grid{font-size:18px}.invoice{font-size:13px}.invoice td,.invoice th{padding:8px}.back-feature{padding:20px}.back-feature h2{font-size:44px}.back-feature p{font-size:18px}.issue-card{display:block}.issue-card button{margin-top:15px}.bottom-controls{gap:12px}.bottom-controls button{font-size:12px}.hint{font-size:11px}.textmode .story-grid{display:block}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}#book.turning{transform:none}}
@media print{@page{size:A4;margin:8mm}body{background:white}header.site,.intro,.reader-shell,.archive,.closing,footer.site{display:none}.print-only{display:block}.print-only .page{width:194mm;height:278mm;min-height:0;padding:6mm;break-after:page;box-shadow:none;font-size:11pt}.print-only .page:last-child{break-after:auto}.print-only .page h2{font-size:30pt}.print-only .scene{max-height:74mm}.print-only .panel figcaption{min-height:24mm}.print-only .dialogue{font-size:10pt}.print-only .caption{font-size:8pt}.print-only .cover-art{height:105mm}.print-only .masthead{font-size:60pt}.print-only .basis{font-size:7pt}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.columns img{max-width:100%;height:auto;display:block}.textmode .scene{max-height:none}
.columns>*{min-width:0}.columns img{width:100%;max-width:100%;height:auto;display:block}.textmode .scene{max-height:none}

/* Alignment with the main site: fonts, cream cards, red accent */
.intro .eyebrow{font-family:var(--hand);font-size:22px;letter-spacing:0;font-weight:400;color:var(--red);display:inline-block;transform:rotate(-2deg);margin:0}
.eyebrow{font-family:var(--hand);font-weight:400;letter-spacing:0;font-size:20px;color:var(--red)}
.intro h1,.page h2,.page h3,.masthead,.teaser,.cover-line,.cover-bottom,.big-number,.pullquote,.burst,.archive h2,.closing h2,.issue-card button,.toolbar button,.bottom-controls button,.toolbar label,.edge{font-family:var(--display);font-weight:400}
.intro h1{letter-spacing:.5px;line-height:1}
.burst{background:var(--red);color:var(--paper);font-size:22px;letter-spacing:.5px}
.page,.toolbar,.issue-card,.panel,.box,.shelf article,.dialogue-list p,.invoice,.puzzle-grid span{background-color:var(--card)}
.page{font-family:var(--body);line-height:1.35}
.page h2,.page h3{letter-spacing:.3px}
.toolbar button,.bottom-controls button{text-transform:uppercase;letter-spacing:.6px;font-size:16px}
.toolbar label{font-size:14px;letter-spacing:.6px}
.toolbar button[aria-pressed=true]{color:var(--paper)}
.toolbar button:hover:not(:disabled),.bottom-controls button:hover:not(:disabled){background:var(--ink);color:var(--paper)}
.dialogue{font-family:var(--body);font-size:16px;font-weight:600}
.caption{font-family:var(--body);font-size:12px}
.pullquote{font-size:36px}
.teaser{font-size:24px}
.cover-line{font-size:26px}
.cover-bottom{font-size:22px}
.issue-card button{font-size:18px;text-transform:uppercase;letter-spacing:.6px;background:var(--red)}
.issue-card button:hover{background:var(--ink)}
.puzzle-grid{font-family:var(--display);font-weight:400}
.hint,.copy,.shelf p{font-family:var(--body)}
.box.blue,.back-feature,.cover-art{background-color:var(--teal)}
.progress{background:rgba(20,20,20,.2)}
@media(max-width:700px){.dialogue{font-size:14px}.intro .eyebrow{font-size:19px}.burst{font-size:16px}.teaser{font-size:19px}.cover-line{font-size:19px}.cover-bottom{font-size:17px}.pullquote{font-size:28px}}
