.companion{border:1px solid #cbd5c5;border-radius:22px;background:#fffdf7;margin:24px 0;overflow:hidden}.companion summary{list-style:none;cursor:pointer;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.companion summary::-webkit-details-marker{display:none}.companion summary strong{display:block;font:600 28px/1.2 var(--serif);margin:7px 0}.companion-kicker{display:block;font:600 10px/1.5 var(--sans);letter-spacing:.16em;color:#827249}.companion-intro{font-size:14px;color:var(--muted);display:block}.companion-plus{font-size:27px;color:var(--accent)}.companion[open] .companion-plus{transform:rotate(45deg)}.companion-content{padding:0 24px 24px}.companion-cover{margin:0 0 20px}.companion-cover img{display:block;width:100%;height:160px;object-fit:cover;border-radius:14px}.companion-cover figcaption{font-size:11px;color:var(--muted);margin-top:6px}.companion-help{font-size:14px;line-height:1.65;color:var(--muted)}.companion-stage{border:1px solid #d1dac8;border-radius:20px;background:linear-gradient(135deg,#eef1e5,#fffdf7);overflow:hidden}.companion-panel{padding:30px;min-height:230px}.companion-panel[hidden]{display:none}.companion-number{font:500 37px/1 var(--serif);color:#9a814a;margin:0 0 22px}.companion-number span{font:400 13px var(--sans);color:var(--muted)}.companion-caption{font:500 29px/1.38 var(--serif);margin:0;color:var(--ink)}.companion-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0 24px}.companion-navigation button{min-height:44px;font-size:14px;padding:10px 16px}.companion-navigation #companionPosition{font-size:12px;color:var(--muted);white-space:nowrap}.companion-question{border-left:2px solid #b3975b;padding:0 0 0 18px;margin:24px 0}.companion-question>p:not(.companion-kicker){font:500 24px/1.4 var(--serif)}.companion-question small,.companion-print-hint{font-size:12px;color:var(--muted);line-height:1.5}.companion-print-hint{max-width:500px;margin-bottom:0}@media(max-width:480px){.companion summary{padding:20px}.companion summary strong{font-size:25px}.companion-content{padding:0 18px 22px}.companion-panel{padding:24px;min-height:260px}.companion-caption{font-size:27px}.companion-navigation button{font-size:12px;padding:10px 12px}.companion-cover img{height:140px}}
@media print{
 #printSheet.companion-print{font:11pt/1.5 var(--sans)}
 #printSheet.companion-print,#printSheet.companion-print .companion-print-grid{break-inside:auto}
 #printSheet.companion-print h1{font-size:24pt}
 #printSheet.companion-print .companion-print-intro{font-size:10pt;margin-bottom:14pt}
 #printSheet.companion-print .companion-print-grid{display:grid;grid-template-columns:1fr 1fr;gap:12pt}
 #printSheet.companion-print .companion-print-card{border:1pt solid #9aa58e;padding:15pt;break-inside:avoid;min-height:135pt;display:flex;flex-direction:column}
 #printSheet.companion-print .companion-print-card>p:not(.companion-print-number){font:500 15pt/1.35 var(--serif)}
 #printSheet.companion-print .companion-print-number{font:600 10pt var(--sans);color:#587052;margin-bottom:12pt}
 #printSheet.companion-print .companion-print-card small{font:8pt var(--sans);color:#666;margin-top:auto;padding-top:10pt}
 #printSheet.companion-print .companion-print-question{break-inside:avoid;margin-top:16pt}
}
.companion-comic{margin:0 0 22px}.companion-comic img{display:block;width:100%;height:auto;border-radius:14px}.companion-comic figcaption{font-size:11px;color:var(--muted);line-height:1.5;margin-top:7px}.companion-cover[hidden]{display:none}
@media print{#printSheet.companion-print .companion-comic{margin:12pt 0 18pt;break-inside:avoid}#printSheet.companion-print .companion-comic img{display:block;width:100%;max-height:160mm;object-fit:contain;border-radius:0}#printSheet.companion-print .companion-comic figcaption{font:8pt/1.4 var(--sans);color:#555}}

/* The actual generated artwork takes centre stage, one readable panel at a time. */
.comic-reader{margin:32px 0 48px;border:1px solid #d9d7cf;border-radius:28px;background:#fffdf8;overflow:hidden;scroll-margin-top:24px}.comic-reader-heading{padding:30px 30px 20px}.comic-reader-heading h2{font-size:clamp(27px,5vw,38px);margin:8px 0 10px;letter-spacing:-.03em}.comic-reader-heading>p:last-child{color:#59677a;font-size:16px;line-height:1.6}.comic-reading-stage{max-width:600px;margin:0 auto;padding:0 24px}.comic-panel-image{position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:#eee7da;border-radius:12px}.comic-panel-image img{position:absolute;width:200%;max-width:none;height:auto;display:block}.comic-reading-caption{padding:22px 0 8px}.comic-page-number{font-size:11px;font-weight:750;letter-spacing:.14em;color:#9b7433}.comic-reading-caption p{font-size:clamp(20px,4vw,26px);line-height:1.5;margin:10px 0;color:#172d4c;font-weight:600}.comic-reader-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px;max-width:600px;padding:16px 24px 28px;margin:auto}.comic-reader-navigation>span{font-size:12px;color:#59677a;white-space:nowrap}.comic-reader-navigation button{min-height:46px;padding:12px 18px}.comic-full-sheet{margin:0 24px;border-top:1px solid #ded9cc;border-bottom:1px solid #ded9cc}.comic-full-sheet summary{cursor:pointer;padding:20px 0;font-weight:650;font-size:14px}.comic-reader-actions{display:flex;gap:12px;flex-wrap:wrap;padding:24px 24px 0}.comic-download{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.comic-reader>.privacy-note{margin:18px 24px 28px;line-height:1.6}.comic-reader>.companion-comic{margin:0 24px}.comic-print-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comic-print-panel{break-inside:avoid}.comic-print-panel>p{font-size:11pt;line-height:1.45;margin:8px 0 0}
@media(max-width:600px){.comic-reader{border-radius:20px;margin:24px 0 32px}.comic-reader-heading{padding:24px 20px 12px}.comic-reading-stage{padding:0 14px}.comic-reader-navigation{padding:12px 14px 24px}.comic-reader-navigation button{font-size:13px;padding:12px 14px}.comic-reader-actions{padding:20px 14px 0;gap:10px}.comic-reader-actions>*{flex:1 1 100%;font-size:14px}.comic-reader>.privacy-note{margin:16px 18px 24px}.comic-full-sheet{margin:0 18px}}
@media print{.comic-print-grid{gap:15pt}.comic-print-panel .comic-panel-image{border-radius:0}.comic-print-panel{page-break-inside:avoid}.comic-print-panel>p{color:#111}.typed-telling{gap:10pt}.telling-segment{padding:10pt;break-inside:avoid}.story-body .segment-label{font-size:8pt}.story-body .say{font-size:11pt}.story-body .parent-cue{font-size:9pt}#printSheet.companion-print h1{font-size:23pt}.comic-panel-image img{max-width:none!important}}
@media print{#printSheet.companion-print,#printSheet .comic-print-grid{break-inside:auto}#printSheet .comic-print-panel{break-inside:avoid-page}}
