/* Crisp comic framing: native text, native-size artwork, no blur or enlarged low-resolution covers. */
#tell-case-comic{position:fixed;inset:0;margin:0;padding:0;width:100%;height:100dvh;max-width:none;max-height:none;border:0;background:#19213d;color:#30436b;font-family:Nunito,system-ui,sans-serif;overflow:hidden;box-sizing:border-box}#tell-case-comic::backdrop{background:#19213d}#tell-case-comic *{box-sizing:border-box}#tell-case-comic .comic-shell{height:100%;max-width:1440px;margin:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;padding:calc(env(safe-area-inset-top,0px) + 18px) 24px calc(env(safe-area-inset-bottom,0px) + 18px)}#tell-case-comic .comic-top{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff9e8}#tell-case-comic .comic-top small{display:block;font-size:11px;letter-spacing:1px;font-weight:900;text-transform:uppercase}#tell-case-comic .comic-top strong{display:block;font-size:21px;line-height:1.3}#tell-case-comic button{font:800 16px/1.3 Nunito,system-ui;cursor:pointer;min-height:46px;padding:10px 16px;border:2px solid #b8c9df;border-radius:13px;background:#fffdf8;color:#30436b}#tell-case-comic button:disabled{opacity:.35;cursor:default}#tell-case-comic button:focus-visible{outline:3px solid #ffdf72;outline-offset:3px}#tell-case-comic .comic-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:20px;min-height:0}#tell-case-comic .comic-scene{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;margin:0;padding:34px 0 0;border:4px solid #10182c;border-radius:8px;background:#fff0cf;box-shadow:5px 5px 0 #090e20;overflow:hidden}#tell-case-comic .comic-scene-label{position:absolute;top:0;left:0;z-index:1;background:#ffdf72;border-right:3px solid #19213d;border-bottom:3px solid #19213d;padding:6px 14px;font-size:12px;font-weight:1000;letter-spacing:1px;color:#19213d}#tell-case-comic .comic-topic-art{display:block;width:min(100%,836px);height:auto;max-height:100%;object-fit:contain;filter:none!important;transform:none!important;image-rendering:auto}#tell-case-comic .comic-caption{align-self:center;position:relative;border:4px solid #10182c;border-radius:10px;background:#fffdf5;box-shadow:6px 6px 0 #090e20;padding:28px 22px;max-height:100%;overflow:auto}#tell-case-comic .comic-caption-number{position:absolute;right:12px;top:10px;font-size:11px;font-weight:1000;color:#7259bb}#tell-case-comic .comic-caption h1{margin:0 0 14px;font:900 clamp(25px,2.8vw,38px)/1.15 'Baloo 2',Nunito,system-ui;letter-spacing:-.4px}#tell-case-comic .comic-caption p{font-size:17px;line-height:1.6;margin:0}#tell-case-comic .comic-speech{margin-top:18px;background:#eee8ff;border:2px solid #c4b4e7;border-radius:18px 18px 18px 3px;padding:13px;font-size:14px;font-weight:800;line-height:1.5;color:#5d448c}#tell-case-comic .comic-controls{display:flex;align-items:center;gap:16px;justify-content:space-between}#tell-case-comic .comic-pagination{font-size:14px;font-weight:900;color:#fff9e8;white-space:nowrap}#tell-case-comic .comic-controls .primary{background:#ffdf72;color:#4a3711;border-color:#cda446;box-shadow:0 4px 0 #a67f2c;min-width:200px}#tell-case-comic .comic-evidence-board{position:relative;width:100%;height:100%;min-height:0;display:grid;place-items:center;padding:28px;background:repeating-linear-gradient(0deg,#e2c797 0 3px,#e7d1a8 3px 42px)}#tell-case-comic .comic-attached-photo{position:relative;margin:0;padding:12px 12px 24px;transform:rotate(-4deg);width:min(80%,280px);background:#fffdf7;box-shadow:3px 5px 0 #a18354,0 8px 24px #785e3333}#tell-case-comic .comic-attached-photo:before{content:'';position:absolute;left:50%;top:-15px;width:75px;height:25px;background:#e8dab49c;transform:translateX(-50%) rotate(5deg)}#tell-case-comic .comic-attached-photo img{display:block;width:100%;max-height:35vh;height:auto;object-fit:contain;aspect-ratio:1}#tell-case-comic .comic-attached-photo figcaption{font-size:11px;font-weight:900;text-align:center;margin:9px 0 0;color:#3d4d68;line-height:1.4}#tell-case-comic .comic-file-stamp{position:absolute;bottom:25px;right:14px;border:4px double #7259bb;border-radius:5px;padding:6px 14px;color:#7259bb;background:#fffdf8e8;font-size:17px;font-weight:1000;letter-spacing:2px;transform:rotate(-12deg)}
/* A case folder carries the same evidence through notes, practice and check. */
#app .case-file-content{display:flex;flex-direction:column;gap:8px;min-height:0;padding-top:12px!important}#app .dossier-heading{display:flex;align-items:center;gap:10px;min-height:44px;flex-shrink:0;color:#30436b}#app .dossier-heading-copy{flex:1;min-width:0}#app .dossier-heading small{display:block;font-size:9px;line-height:1.3;letter-spacing:.65px;font-weight:900;text-transform:uppercase;color:#75644a}#app .dossier-heading strong{display:block;font-size:19px;line-height:1.2}#app .dossier-heading>button:not(.back){background:#fff1cd;border:2px solid #d8b979;border-radius:12px;padding:7px 12px;font-size:12px;font-weight:900;min-height:40px}#app .dossier-heading .back{width:40px;height:40px;flex:0 0 40px;padding:8px}#app .dossier-heading .pill{font-size:10px;padding:7px;white-space:nowrap}#app .dossier-stage-tabs{display:flex;gap:5px;flex-shrink:0;margin:0;padding:0 0 0 12px;list-style:none;border-bottom:3px solid #b8965d}#app .dossier-stage-tabs li{position:relative;padding:7px 17px 6px;background:#e4d3b7;color:#64553f;font-size:12px;font-weight:900;border:2px solid #c5aa7a;border-bottom:0;border-radius:10px 10px 0 0}#app .dossier-stage-tabs li[aria-current]{background:#fffdf8;color:#5c448d;border-color:#b8965d}#app .dossier-stage-tabs .stage-done{background:#dcebd7;color:#35613c}#app .case-file-content .lessonstage{display:block!important;position:relative;flex:1;min-height:0;width:100%;max-width:100%;height:auto;margin:0;background:#e7d0a6;border:2px solid #c5aa7a;border-radius:4px 16px 16px 16px;padding:10px;overflow:hidden}#app .case-file-content .dossier-paper{position:relative;background:#fffdf8!important;border:1px solid #d5c8ae!important;border-radius:4px!important;box-shadow:2px 3px 0 #bfab84!important}#app .case-file-content .lessoncard.dossier-paper{height:100%;max-height:none;overflow:auto;margin:0;padding:20px 20px 20px 36px;display:block!important}#app .case-file-content .lessoncard.dossier-paper:before{content:'';position:absolute;top:0;bottom:0;left:11px;width:8px;background:radial-gradient(circle at 4px 32px,#d9ccaf 0 3px,transparent 3.5px) 0 0/8px 90px repeat-y;pointer-events:none}#app .dossier-exhibit{float:right;width:clamp(130px,20vw,220px);margin:6px 2px 15px 20px;padding:8px 8px 18px;background:#fff;border:1px solid #e3dac8;box-shadow:1px 3px 4px #947f5955;transform:rotate(3deg);position:relative}#app .dossier-exhibit:before{content:'';position:absolute;top:-9px;left:35%;width:48px;height:17px;background:#ead8b6a8;transform:rotate(-5deg)}#app .dossier-exhibit img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}#app .dossier-exhibit figcaption{font-size:9px;font-weight:1000;letter-spacing:1px;text-align:center;line-height:1.5;color:#74664e;margin-top:6px}#app .case-file-content .note-listen{float:none;display:block;width:max-content;margin:0 0 12px}#app .case-file-content .lessonbadge{display:block;width:max-content;max-width:100%;font-size:9px;margin-bottom:9px}#app .case-file-content .lessoncard h1{font-size:clamp(24px,3vw,33px);line-height:1.15;margin:10px 0}#app .case-file-content .lessoncard>p{font-size:16px;line-height:1.5}#app .case-file-content .interactive-reveal{background:#f6eedb;border-color:#e4d5b2}#app .case-file-content .interactive-reveal summary{color:#645037}#app .case-file-content .interactive-options button{border-radius:10px}#app .case-file-content .practicecard.dossier-paper{padding:20px;overflow:auto;max-height:100%;margin:0 auto}#app .case-file-content .practiceheading{flex-shrink:0}#app .case-file-content .practiceheading h1{font-size:24px}#app .case-file-content .playarea{background:#e7d0a6;border:2px solid #c5aa7a;border-radius:4px 16px 16px 16px;padding:10px;flex:1;min-height:0;margin:0}#app .case-file-content .gameprogress{flex-shrink:0;margin:0}#app .case-file-content .lessoncontinue{flex-shrink:0;margin:0 0 5px}#app .case-file-content #reading-pause{margin:0;padding:3px 0 6px;flex-shrink:0}#app .case-file-content .interactive-content{min-height:0}
#app .dossier-cover{position:relative;max-width:820px;width:100%;margin:auto;background:#e7d0a6;border:2px solid #c5aa7a;border-radius:7px 20px 20px 20px;padding:24px;box-shadow:0 6px 0 #b59865;overflow:auto;min-height:0}#app .dossier-cover>.back{position:absolute;top:14px;left:14px}#app .dossier-tab{display:block;margin:-24px 0 16px 36px;width:max-content;max-width:calc(100% - 36px);padding:8px 14px;background:#fff1c9;border:1px solid #c5aa7a;border-top:0;border-radius:0 0 10px 10px;font-size:11px;font-weight:900;color:#6e5836}#app .dossier-cover-sheet{background:#fffdf8;padding:20px;border:1px solid #d7c7a7;text-align:center;box-shadow:2px 3px 0 #c6b086}#app .dossier-reference{font-size:10px;font-weight:1000;letter-spacing:1px;color:#6e5836}#app .dossier-cover h1{font-size:30px;line-height:1.2;margin:10px 0 18px}#app .dossier-cover-photo{width:min(210px,100%);margin:0 auto 12px;padding:8px;background:#fff;box-shadow:1px 3px 5px #77613d55;transform:rotate(-3deg)}#app .dossier-cover-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}#app .dossier-cover-photo figcaption{font-size:10px;font-weight:900;margin-top:6px}#app .dossier-cover p{font-size:15px;line-height:1.5;margin:12px 0}#app .dossier-route{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;font-size:11px;font-weight:900;color:#6e5836;margin:12px 0}#app .dossier-cover-sheet>button{display:block;width:min(380px,100%);margin:10px auto 0;font-size:17px;min-height:46px;padding:10px}
@media(max-width:700px){#tell-case-comic .comic-shell{gap:10px;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px calc(env(safe-area-inset-bottom,0px) + 14px)}#tell-case-comic .comic-top strong{font-size:16px}#tell-case-comic .comic-top small{font-size:9px;max-width:220px}#tell-case-comic .comic-top button{font-size:12px;padding:9px 12px;min-height:42px;flex-shrink:0}#tell-case-comic .comic-spread{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(100px,1fr) auto;gap:11px}#tell-case-comic .comic-caption{align-self:stretch;max-height:38dvh;padding:17px 16px;box-shadow:3px 3px 0 #090e20}#tell-case-comic .comic-caption h1{font-size:25px;line-height:1.1;margin-bottom:8px}#tell-case-comic .comic-caption p{font-size:14px;line-height:1.45}#tell-case-comic .comic-speech{font-size:12px;line-height:1.4;margin-top:10px;padding:8px 10px}#tell-case-comic .comic-scene-label{font-size:9px;padding:5px 10px}#tell-case-comic .comic-scene{padding-top:25px;box-shadow:3px 3px 0 #090e20}#tell-case-comic .comic-controls{gap:10px}#tell-case-comic .comic-controls button{font-size:13px;padding:10px;min-width:0}#tell-case-comic .comic-controls .primary{flex:1;max-width:240px}#tell-case-comic .comic-pagination{font-size:12px}#tell-case-comic .comic-evidence-board{padding:16px}#tell-case-comic .comic-attached-photo{width:auto;height:100%;max-width:210px;padding:6px 6px 16px;display:flex;flex-direction:column;min-height:0}#tell-case-comic .comic-attached-photo img{height:calc(100% - 20px);min-height:0;width:auto;max-width:100%;object-fit:contain}#tell-case-comic .comic-attached-photo figcaption{font-size:8px;line-height:1.2;margin-top:4px}#tell-case-comic .comic-file-stamp{font-size:11px;padding:4px 10px;bottom:10px;right:8px}#app .case-file-content{padding-top:8px!important;gap:6px}#app .dossier-heading strong{font-size:15px}#app .dossier-heading small{font-size:8px}#app .dossier-heading{gap:7px}#app .dossier-heading .pill{display:none}#app .dossier-heading>button:not(.back){padding:7px;min-height:40px}#app .dossier-stage-tabs{padding-left:7px;gap:3px}#app .dossier-stage-tabs li{padding:6px 13px;font-size:10px}#app .case-file-content .lessonstage{padding:7px}#app .case-file-content .lessoncard.dossier-paper{padding:12px 13px 14px 28px}#app .dossier-exhibit{width:86px;margin:0 0 12px 12px;padding:5px 5px 10px}#app .dossier-exhibit figcaption{font-size:7px}#app .case-file-content .lessoncard h1{font-size:23px}#app .case-file-content .lessoncard>p{font-size:14px}#app .case-file-content .note-listen{font-size:11px;min-height:36px;padding:7px 12px;margin-bottom:10px}#app .case-file-content .interactive-reveal{padding:9px 10px}#app .case-file-content .interactive-reveal p,#app .case-file-content .interactive-reveal summary{font-size:13px}#app .dossier-cover{padding:15px}#app .dossier-tab{margin-top:-15px}#app .dossier-cover-sheet{padding:15px}#app .dossier-cover h1{font-size:24px}#app .dossier-cover-photo{width:140px}}
@media(max-height:600px){#tell-case-comic .comic-speech{display:none}#tell-case-comic .comic-caption{padding:14px}#tell-case-comic .comic-caption h1{font-size:22px}#tell-case-comic .comic-caption p{font-size:13px}#app .case-file-content .lessoncontinue{font-size:17px;min-height:43px;padding:8px}#app .dossier-cover-photo{width:100px}}
html:is([data-tell-theme=contrast],[data-tell-theme=cream]) #app .dossier-paper,html:is([data-tell-theme=contrast],[data-tell-theme=cream]) #tell-case-comic .comic-caption{background:var(--tell-surface)!important;color:var(--tell-ink)!important;border-color:var(--tell-edge)!important}html[data-tell-text-size=largest] #tell-case-comic .comic-caption{overflow:auto;max-height:100%}
@media(prefers-reduced-motion:no-preference){#tell-case-comic .comic-spread{animation:tell-comic-page .18s ease-out}@keyframes tell-comic-page{from{opacity:.6;translate:8px 0}to{opacity:1;translate:0 0}}}html[data-tell-motion=reduce] #tell-case-comic .comic-spread{animation:none}
#tell-case-comic .comic-top>div{min-width:0;flex:1}#tell-case-comic .comic-controls{min-width:0}#tell-case-comic .comic-caption h1:focus{outline:none}
@media(max-width:700px){#tell-case-comic .comic-controls .primary{min-width:0}#tell-case-comic .comic-top small{overflow-wrap:anywhere}}
@media(min-width:701px){#tell-case-comic .comic-scene{align-self:center;justify-self:center;width:100%;max-width:900px;height:auto;aspect-ratio:16/10;max-height:100%}}
#tell-case-comic .comic-caption,#app .dossier-heading-copy,#app .dossier-paper{overflow-wrap:anywhere}
/* Mobile artwork fills its panel. The exhibit page keeps its paper-board layout. */
@media(max-width:700px){
 #tell-case-comic .comic-scene:not(.comic-evidence-scene){padding:0}
 #tell-case-comic .comic-scene .comic-topic-art{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center}
}
/* Focus still moves to the story title for screen readers; interactive controls retain their rings. */
html[data-tell-a11y] #tell-case-comic #comic-story-title:focus{outline:none!important;outline-offset:0!important;box-shadow:none}

/* Opening comics share the edge-to-edge mid-story stage. */
#tell-case-comic{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;border:0;margin:0;padding:0;overflow:auto;background:#19213d}
#app .tell-prologue-comic{position:fixed;inset:0;z-index:1000;min-height:100dvh;height:100dvh;overflow:auto;background:#19213d;color:#30436b}
#tell-case-comic .play-comic-shell{min-height:100dvh}#tell-case-comic article,#app .tell-prologue-comic article{box-sizing:border-box;flex-shrink:0}#tell-case-comic button:disabled{opacity:.45}
#tell-case-comic .play-comic-shell>img,#app .tell-prologue-comic>img{display:block;max-width:none;max-height:none;aspect-ratio:auto;object-fit:cover}
@media(max-width:700px){#tell-case-comic .play-comic-shell>img,#app .tell-prologue-comic>img{object-position:42% center}}

#tell-case-comic .play-comic-shell .primary,#app .tell-prologue-comic .primary{background:#ffdf72;color:#493912;border-color:#cba346}
/* A connected festival prologue, using the same visual language as the case acts. */
html.tell-prologue-open,html.tell-prologue-open body{overflow:hidden}
#app .prologue-screen{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:calc(16px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));height:100dvh;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;background-image:linear-gradient(#2a203c38,#2a203c08 30%,#2a203c66),var(--prologue-art);background-size:cover;background-position:center;font-family:Nunito,system-ui,sans-serif;color:#302b45}
.prologue-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex:none}.prologue-top>div{display:grid;gap:6px;background:#fffaf0ee;padding:10px 14px;border:1px solid #d8c4e6;border-radius:14px;backdrop-filter:blur(8px)}.prologue-top span{font-size:11px;font-weight:900;letter-spacing:1.2px;color:#76579a}.prologue-top small{font-size:10px;font-weight:800;color:#7b6b8a}
.prologue-screen button{min-height:44px;cursor:pointer;font-family:inherit;white-space:normal;line-height:1.35}.prologue-screen button:disabled{cursor:default;opacity:.5}.prologue-screen button:focus-visible{outline:3px solid #234784;outline-offset:3px}.prologue-top>button{flex:none;padding:8px 13px;border:2px solid #d4c1e5;border-radius:13px;background:#fffaf0;color:#534269;font-weight:800;font-size:14px}
.prologue-panel{width:min(590px,100%);box-sizing:border-box;align-self:center;margin-top:auto;background:#fffaf0f5;backdrop-filter:blur(10px);padding:20px;border:2px solid #c8b2e1;border-radius:24px;box-shadow:0 14px 50px #31213e44;animation:prologue-arrive .25s ease both;flex:none}
.prologue-kicker{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#85639f;margin:0 0 7px}.prologue-panel .prologue-title{font:800 clamp(24px,5vw,32px)/1.12 'Baloo 2',Nunito,system-ui;margin:0 0 14px;color:#302b45;letter-spacing:0}.prologue-title:focus{outline:0}.prologue-pip{display:flex;align-items:center;gap:12px;padding:11px;background:#eee6ff;border-radius:16px;margin-bottom:14px}.prologue-pip img{width:48px;height:48px;object-fit:contain;flex:none;animation:prologue-nod 5s ease-in-out infinite}.prologue-pip p{font-size:14px;line-height:1.45;margin:0}
.prologue-invitation{display:flex;align-items:center;gap:15px;width:100%;text-align:left;padding:18px;border:2px solid #c9b4e0;border-radius:17px;background:#fff2c8;color:#514065;box-shadow:0 4px 0 #d9c6a0}.prologue-invitation>span:first-child{font-size:44px;color:#8b68b5;flex:none}.prologue-invitation>span:last-child{display:grid;gap:7px}.prologue-invitation small{font-size:9px;letter-spacing:1px;font-weight:900}.prologue-invitation strong{font:800 24px/1.2 'Baloo 2',Nunito,system-ui}.prologue-invitation>span>span{font-size:13px;font-weight:800}
.prologue-evidence{padding:14px;border:2px solid #c5cde0;border-radius:16px;background:#fffdf8}.prologue-evidence>small{font-size:9px;letter-spacing:1px;font-weight:900;color:#77708a}.prologue-evidence h2,.prologue-discovery h2{font:800 23px/1.2 'Baloo 2',Nunito,system-ui;margin:9px 0}.prologue-evidence p,.prologue-discovery p{font-size:14px;line-height:1.45;margin:8px 0 0}.prologue-evidence .prologue-new-lead{padding:10px;border-radius:10px;background:#eee6ff;color:#6b4d8d;font-weight:800;font-size:13px;margin-top:12px}
.prologue-inspect,.prologue-choices>button{display:block;width:100%;padding:10px 12px;border:2px solid #c5b2dc;border-radius:12px;background:#eee6ff;color:#59427e;font-size:14px;font-weight:800;margin-top:12px}.prologue-sender{margin-top:12px;padding:10px;border:1px dashed #c3a752;border-radius:12px;background:#fff1be;overflow-wrap:anywhere}.prologue-sender small{font-size:9px;letter-spacing:1px;font-weight:900}.prologue-sender strong{display:block;margin-top:6px;font-size:13px}.prologue-sender p{font-size:12px;margin-top:6px}.prologue-choices{display:grid;gap:7px;margin-top:10px}.prologue-choices>button{margin:0;background:#eee6ff}.prologue-choices>button:last-child{background:#fff9ec}.prologue-hint{font-size:13px;line-height:1.4;color:#805267;margin:10px 0 0}
.prologue-discovery{text-align:center;padding:14px;border:2px solid #b0c4a0;border-radius:16px;background:#edf4e7}.prologue-discovery>span{display:grid;place-items:center;width:42px;height:42px;margin:0 auto;border-radius:50%;background:#8bc395;color:#27593c;font-size:27px}
.prologue-trails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.prologue-trails>button{display:flex;align-items:center;gap:7px;padding:10px;border:2px solid #d2c3e3;border-radius:13px;background:#f5efff;color:#5d4d7b;text-align:left}.prologue-trails>button>span{font-size:10px;font-weight:900;color:#9b7cba}.prologue-trails strong{font-size:13px}.prologue-trails>button[aria-pressed=true]{background:#e7d9ff;border-color:#8e6db7}.prologue-trail-detail{min-height:70px;box-sizing:border-box;padding:12px;background:#fff0c8;border:1px solid #e1ce98;border-radius:14px;margin-top:10px}.prologue-trail-detail>strong{font-size:14px}.prologue-trail-detail p{font-size:13px;line-height:1.4;margin:6px 0 0}.prologue-route-note{font-size:12px;line-height:1.4;color:#7c688d;margin:12px 0 0}
.prologue-next{width:100%;padding:13px 15px;border:0;border-radius:14px;background:#7659b8;color:white;font-size:15px;font-weight:900;margin-top:14px;box-shadow:0 3px 0 #59418c}.prologue-next:disabled{background:#e3deeb;color:#7b7187;box-shadow:none;opacity:1!important}
@media(min-width:1000px){#app .prologue-screen{padding-right:5vw;padding-bottom:4vh;background-position:center 45%}.prologue-panel{align-self:flex-end;margin-top:auto;width:550px}.prologue-top{margin-right:0}}
@media(max-width:440px){.prologue-trails{grid-template-columns:repeat(2,minmax(0,1fr))}.prologue-panel{padding:15px}.prologue-pip{gap:9px;padding:9px}.prologue-pip p{font-size:13px}.prologue-pip img{width:40px;height:40px}.prologue-top span{font-size:9px}.prologue-top>div{padding:9px 11px}}
@media(max-height:700px){#app .prologue-screen{gap:12px;padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom))}.prologue-panel{padding:13px}.prologue-panel .prologue-title{font-size:24px;margin-bottom:10px}.prologue-pip{padding:8px;margin-bottom:10px}.prologue-pip img{width:34px;height:34px}.prologue-pip p{font-size:12px}.prologue-evidence{padding:10px}.prologue-evidence p{font-size:13px}.prologue-evidence h2{font-size:21px}.prologue-sender{margin-top:8px;padding:8px}.prologue-trails{gap:6px}.prologue-trails>button{padding:8px}.prologue-trail-detail{padding:9px;min-height:66px}.prologue-route-note{font-size:11px;margin-top:9px}.prologue-next{margin-top:10px;padding:11px}.prologue-discovery p{font-size:13px}}
@keyframes prologue-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes prologue-nod{50%{transform:rotate(-4deg)}}
@media(prefers-reduced-motion:reduce){.prologue-screen *{animation:none!important}}html[data-tell-motion=reduce] .prologue-screen *{animation:none!important}
@media(hover:hover) and (pointer:fine){.prologue-screen button:not(:disabled):hover{filter:brightness(.97);box-shadow:0 3px 10px #7d599120}}
/* A tap-led cinematic before the first prologue panel. */
#app .prologue-film{position:fixed;inset:0;z-index:1000;height:100dvh;overflow:hidden;background:#3e304a;color:#fff;font-family:Nunito,system-ui,sans-serif;isolation:isolate}
.film-background,.film-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.film-background{animation:film-drift 12s ease-in-out alternate infinite}.film-shade{z-index:-1;background:linear-gradient(#211a3155,transparent 28%,transparent 48%,#211a31bd)}
.film-controls{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(14px + env(safe-area-inset-top)) 16px 12px}.film-controls>span{font-size:10px;font-weight:900;letter-spacing:1.2px;text-shadow:0 2px 5px #20172d;text-align:center}.prologue-film button{font:800 14px/1.3 Nunito,system-ui;min-height:44px;cursor:pointer;white-space:normal}.prologue-film button:focus-visible{outline:3px solid #ffdc75;outline-offset:4px}.prologue-film button:disabled{opacity:.5;cursor:default}.film-controls>button{border:1px solid #fff8;border-radius:13px;background:#fffaf0e8;color:#4c3c63;padding:9px 13px}.film-controls>button:first-child{width:44px;padding:0;font-size:25px}
.film-hotspot{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:78px;height:78px;min-height:78px;border:2px solid #fff;border-radius:50%;background:#7659b8b3;color:#fff;box-shadow:0 0 0 10px #fff3;backdrop-filter:blur(3px);animation:film-invite 2.4s ease-in-out infinite}.film-hotspot>span{font-size:35px}
.film-caption-bar{position:absolute;left:16px;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:12px}.film-caption-bar>p{font:800 clamp(17px,4vw,23px)/1.3 'Baloo 2',Nunito,system-ui;margin:0;text-align:center;text-shadow:0 2px 8px #20172d}.film-caption-bar .film-next{display:block;width:min(370px,100%);padding:14px;border:2px solid #fff6;border-radius:16px;background:#7659b8;color:#fff;box-shadow:0 5px 16px #21152e44}.film-sound-controls{display:flex;justify-content:center;gap:12px}.film-sound-controls button{border:0;padding:7px 12px;background:#20172d66;border-radius:12px;color:#fff;font-size:11px;min-height:44px}
.film-envelope{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%) rotate(-5deg);width:min(340px,72vw);height:min(220px,46vw);min-height:0!important;border:0;background:transparent;padding:0;perspective:900px;filter:drop-shadow(5px 15px 12px #3c281b55)}
.film-envelope-back{position:absolute;inset:0;background:linear-gradient(#ddc7a3,#f6e9d4);border-radius:8px;box-shadow:inset 0 0 0 2px #d5be98;z-index:1}.film-envelope-front{position:absolute;inset:0;background:linear-gradient(150deg,#fff5df,#e3cca9);clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);border-radius:8px;z-index:4}.film-envelope-flap{position:absolute;inset:0 0 auto;height:57%;background:linear-gradient(165deg,#fff6e3,#e4ceab);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top center;z-index:5;backface-visibility:visible}.film-envelope-seal{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:3px solid #9d7cbd;background:#765394;color:#eddffa;font-size:27px;box-shadow:0 3px 5px #66467655;z-index:6}
.film-letter-paper{position:absolute;left:7%;right:7%;top:9%;height:83%;padding:15%;box-sizing:border-box;border-radius:4px;background:#fffdf2;box-shadow:0 2px 10px #6a4d2b22;z-index:2}.film-letter-paper>i{display:block;background:#c9b8d8;height:4px;border-radius:4px;margin:12px 0}.film-letter-paper>i:nth-child(2){width:85%}.film-letter-paper>b{display:block;color:#9c7cb9;text-align:center;font-size:30px;margin-top:10px}
.film-opening .film-envelope{pointer-events:none}.film-opening .film-envelope-seal{animation:film-seal-away .2s forwards}.film-opening .film-envelope-flap{animation:film-flap-open .5s ease forwards}.film-opening .film-letter-paper{animation:film-paper-open .6s .15s ease forwards}.film-opening .film-caption-bar .film-next{pointer-events:none}
@keyframes film-drift{from{transform:scale(1.01)}to{transform:scale(1.07) translateY(-1%)}}@keyframes film-invite{50%{box-shadow:0 0 0 16px #fff1}}@keyframes film-seal-away{to{opacity:0;transform:translate(-50%,-50%) scale(.65)}}@keyframes film-flap-open{to{transform:rotateX(180deg);z-index:0}}@keyframes film-paper-open{to{transform:translateY(-46%) rotate(5deg) scale(1.03)}}
@media(min-width:900px){.film-background{object-position:center 55%}.film-envelope{width:380px;height:245px}.film-controls{padding-left:28px;padding-right:28px}.film-caption-bar{bottom:28px}}
@media(max-height:650px){.film-caption-bar{gap:7px;bottom:calc(10px + env(safe-area-inset-bottom))}.film-envelope{top:40%;width:250px;height:162px}.film-caption-bar>p{font-size:17px}.film-caption-bar .film-next{padding:11px}.film-controls>span{font-size:9px}.film-hotspot{width:64px;height:64px;min-height:64px;top:43%}}
@media(prefers-reduced-motion:reduce){.prologue-film *{animation:none!important}.film-opening .film-envelope-flap{transform:rotateX(180deg)}.film-opening .film-letter-paper{transform:translateY(-40%)}}html[data-tell-motion=reduce] .prologue-film *{animation:none!important}
.film-ambient{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(22px);transform:scale(1.12);z-index:-3}.film-stage-1 .film-hotspot{top:34%}.film-envelope{top:49%}
@media(min-aspect-ratio:4/3){.film-background{object-fit:contain;object-position:center!important}.film-stage-1 .film-hotspot{top:34%}}
@media(max-height:650px){.film-envelope{top:43%}}
.film-picture{position:absolute;inset:0;display:block;z-index:-2}.film-picture .film-background{z-index:auto;object-fit:cover!important;object-position:center!important}.film-ambient>img{display:block;width:100%;height:100%;object-fit:cover}
@media(orientation:landscape){.film-stage-1 .film-hotspot{top:32%}#app .prologue-scene-0{background-image:linear-gradient(#2a203c38,#2a203c08 30%,#2a203c66),var(--prologue-art-wide,var(--prologue-art))}}
