@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#24382e;background:#a9d5df}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0;border-radius:8px;background:#fffdf2;color:#263a30;padding:12px 17px}button:hover{background:#e8edce}button:focus-visible,a:focus-visible{outline:3px solid #dc713f}#world{position:fixed;inset:0}canvas{display:block;width:100%;height:100%}header{position:fixed;top:26px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}header>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font:700 22px 'Space Grotesk',sans-serif;letter-spacing:-1px}.brand small{display:block;font:600 9px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:4px}.logo{font-size:44px}.top-actions{display:flex;gap:8px;align-items:center}.pill{font-size:9px;letter-spacing:1.5px;margin-right:16px}#quest{position:fixed;top:117px;left:30px;background:#fffdf0eF;padding:23px 25px;border-radius:12px;width:300px;box-shadow:0 8px 30px #30493612}small,.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:700}#quest small{color:#728365;font-size:9px}h2{font-family:'Space Grotesk',sans-serif;font-size:20px;letter-spacing:-.7px;margin:10px 0}p{font-size:13px;line-height:1.7}#quest p{color:#718071}#progress{color:#d3922b;letter-spacing:6px;font-size:24px;border-top:1px solid #e2e3d1;padding-top:12px}#progress span{font-size:10px;letter-spacing:0;color:#64735e;float:right;margin-top:10px}footer{position:fixed;bottom:0;left:0;right:0;background:#fffdf2ed;display:flex;justify-content:space-between;padding:18px 30px;gap:15px;font-size:10px;font-weight:700;letter-spacing:.8px}footer span:not(.live-dot){color:#7b8576}footer b{margin-left:12px}footer .divider{margin:0 12px}.live-dot{display:inline-block;width:7px;height:7px;background:#73894b;border-radius:50%;margin-right:6px}#crosshair{position:fixed;top:50%;left:50%;color:white;opacity:.65}#prompt{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:#263c30;color:#fff9df;padding:13px 24px;border-radius:9px;font-size:14px}#toast{position:fixed;top:95px;left:50%;transform:translateX(-50%);background:#fff6cf;border-radius:8px;padding:12px 20px;opacity:0;transition:opacity .3s;pointer-events:none}.scrim{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#243d3440;backdrop-filter:blur(5px);z-index:5}[hidden]{display:none!important}.welcome-card{background:#fffdf0;padding:42px 46px;border-radius:18px;width:530px;box-shadow:0 24px 100px #173d3540}.eyebrow{color:#8b955c;font-size:9px}h1{font:600 44px/1.12 'Space Grotesk',sans-serif;letter-spacing:-2px;margin:20px 0}h1 em{color:#839352;font-style:normal}.welcome-card p{color:#77816b;max-width:390px}.primary{background:#294733;color:#fffce7;width:100%;padding:17px;text-align:left;font-weight:600;margin:14px 0}.primary:hover{background:#3c6145}.primary span{float:right}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0 26px;font-size:11px;color:#7d846e}.control-grid b{display:block;color:#3f5141;font-size:10px;margin-bottom:6px}.welcome-card>small{font-weight:400;letter-spacing:0;color:#8a907c;font-size:10px}.dialogue-card{width:440px;background:#fffdf0;padding:30px;border-radius:16px}.dialogue-card h2{font-size:30px}.dialogue-card p{font-size:17px;min-height:85px}.dialogue-card #close{width:100%;background:transparent;font-size:12px}kbd{margin-left:12px;color:#858c76}#mobile{display:none;position:fixed;bottom:70px;left:15px;right:15px;justify-content:space-between;align-items:end;pointer-events:none}#mobile button{pointer-events:auto;margin:2px;touch-action:none;background:#fffde9ba;width:43px;height:43px;padding:0}@media(pointer:coarse){#mobile{display:flex}}@media(max-width:700px){header{top:14px;left:16px;right:16px}.brand{font-size:16px}.brand small{font-size:7px}.logo{font-size:32px}.pill,#help,footer>div:nth-child(2),#dance-state{display:none}.top-actions button{font-size:11px;padding:10px}#quest{top:85px;left:16px;width:230px;padding:15px}#quest h2{font-size:17px}#quest p{font-size:11px}footer{padding:14px 16px;font-size:9px}.welcome-card{width:calc(100% - 30px);padding:26px}h1{font-size:36px}.dialogue-card{margin:15px}#toast{top:70px;width:85%;font-size:12px}}
.opening-card{width:min(580px,calc(100vw - 30px));max-height:90vh;overflow:auto}.opening-card>p{font-size:18px;line-height:1.7;min-height:90px}.opening-card>small{color:#85935d}.decision-caption{font-size:10px;letter-spacing:1.5px;color:#8a8e77;margin:22px 0 12px}.decision{display:flex;text-align:left;align-items:center;gap:14px;width:100%;padding:15px;margin:9px 0;line-height:1.5;font-size:14px}.decision.rejected{background:#ebe9df;color:#929285;cursor:not-allowed}.decision.chosen{background:#2d4d38;color:#fff8d9;border:2px solid #d3b961}.decision.chosen:hover{background:#3e6248}.chosen small{display:block;font-size:10px;letter-spacing:0;font-weight:400;color:#c2d0b0;margin-top:4px}.pointing{font-size:29px;animation:point-at-it .8s ease-in-out infinite alternate}:is(#leo-close,#tavern-close){width:100%;font-size:11px;background:transparent;color:#848872}#cinematic-fade{position:fixed;inset:0;background:#000;pointer-events:none;opacity:0;z-index:8}#cinematic-caption{position:fixed;bottom:18%;left:10%;right:10%;text-align:center;color:#fff9de;font:500 24px 'Space Grotesk',sans-serif;text-shadow:0 2px 12px #000;opacity:0;pointer-events:none;z-index:9}#opening-ending{z-index:10;background:transparent;backdrop-filter:none}#replay-opening{background:transparent;font-size:12px;width:100%}@keyframes point-at-it{from{transform:translateX(-7px)}to{transform:translateX(5px)}}@media(prefers-reduced-motion:reduce){.pointing{animation:none}}
header{justify-content:flex-end}#welcome{background:#243d341a;backdrop-filter:blur(2px)}#welcome .welcome-card{background:#fffdf0f5}#welcome h1{font-size:52px}#welcome .eyebrow{font-size:12px;letter-spacing:2px;color:#3e5542}#welcome .control-grid{gap:13px;margin:16px 0 20px}#welcome .welcome-card>small{display:none}@media(max-width:700px){#welcome h1{font-size:42px}}
#coin-counter{display:flex;align-items:center;gap:8px;background:#fff8df;border:1px solid #e3d8ae;border-radius:9px;padding:10px 16px;color:#805b21;min-width:70px;font-size:17px}#coin-total{font-variant-numeric:tabular-nums}#scrub-forg{position:fixed;right:24px;bottom:95px;background:#2f543b;color:#fff9dd;border:2px solid #b2cf79;box-shadow:0 4px 18px #19362730;touch-action:none;z-index:3}#scrub-forg:disabled{background:#71846b;cursor:default;font-size:11px}#forg-status{position:fixed;right:24px;bottom:155px;padding:8px 12px;border-radius:7px;background:#fffbe9e8;color:#45613b;font-size:11px;pointer-events:none}#forg-status:empty{display:none}@media(max-width:700px){#coin-counter{padding:8px 12px;font-size:14px}#scrub-forg{right:16px;bottom:200px;font-size:12px}#forg-status{right:16px;bottom:250px;font-size:10px}}

#quest{display:none!important}#frog-status{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);background:#fff1cfeb;color:#624629;padding:12px 18px;border-radius:8px;font-size:12px;pointer-events:none;text-align:center}#frog-status:empty{display:none}
@font-face{font-family:RetroTerminal;src:url('assets/fonts/VT323-Regular.ttf') format('truetype');font-display:swap}
:is(#opening-dialogue,#tavern-dialogue){background:#09070775;backdrop-filter:blur(2px)}
:is(#opening-dialogue,#tavern-dialogue) .opening-card{position:relative;width:min(720px,calc(100vw - 34px));padding:30px 32px 20px;border-radius:0;background:repeating-linear-gradient(0deg,#201c1b 0px,#201c1b 3px,#241f1d 3px,#241f1d 4px);border:5px solid #74644f;box-shadow:inset 3px 3px #ab9773,inset -3px -3px #0c0a09,0 0 0 3px #191313,0 0 0 6px #3e332c,12px 14px 0 #0006;color:#ebd5aa;font-family:RetroTerminal,'Courier New',monospace}
:is(#opening-dialogue,#tavern-dialogue) .opening-card::before,:is(#opening-dialogue,#tavern-dialogue) .opening-card::after{content:'◆';position:absolute;top:9px;color:#b69a66;font-size:13px;text-shadow:2px 2px #000}:is(#opening-dialogue,#tavern-dialogue) .opening-card::before{left:10px}:is(#opening-dialogue,#tavern-dialogue) .opening-card::after{right:10px}
:is(#opening-dialogue,#tavern-dialogue) .opening-card>small{display:block;color:#bca777;letter-spacing:2px;font:20px RetroTerminal,monospace;border-bottom:2px solid #514236;padding-bottom:12px;margin-bottom:13px}
:is(#opening-dialogue,#tavern-dialogue) h2{font:42px/1 RetroTerminal,monospace;letter-spacing:2px;color:#d45b43;text-shadow:2px 2px #5a211b,3px 3px #080606;margin:14px 0 20px}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-line,#tavern-line){font:27px/1.3 RetroTerminal,monospace;letter-spacing:.3px;text-shadow:1px 2px #000;min-height:150px;color:#f0deaf;margin-bottom:18px;white-space:pre-wrap}
:is(#opening-dialogue,#tavern-dialogue).typing :is(#leo-line,#tavern-line)::after{content:'▌';color:#e6b95b;animation:terminal-cursor .65s steps(1) infinite}
:is(#opening-dialogue,#tavern-dialogue) button{font:23px/1.15 RetroTerminal,monospace;border-radius:0;letter-spacing:1px}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next){background:#672e26;color:#f3d7a0;border:3px solid;border-color:#ae6650 #351a16 #351a16 #ae6650;text-shadow:2px 2px #25110e;padding:13px 16px}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next):hover{background:#854030;color:#fff2c6}:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next):active{border-color:#351a16 #ae6650 #ae6650 #351a16}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-close,#tavern-close){font:18px RetroTerminal,monospace;color:#ae9d7e;margin-top:5px}
:is(#opening-dialogue,#tavern-dialogue) .decision-caption{font:20px RetroTerminal,monospace;color:#d0b272;border-top:2px solid #514236;padding-top:16px}
:is(#opening-dialogue,#tavern-dialogue) .decision{font-size:22px;border:2px solid #62503e;padding:12px}:is(#opening-dialogue,#tavern-dialogue) .rejected{background:#2c2925;color:#847767}:is(#opening-dialogue,#tavern-dialogue) .chosen{background:#5e2c25;color:#f7db9b;border-color:#ce9e56;box-shadow:inset 2px 2px #98523c}:is(#opening-dialogue,#tavern-dialogue) .chosen small{font:17px RetroTerminal,monospace;color:#d2b98b}:is(#opening-dialogue,#tavern-dialogue) .pointing{font-size:25px}
@keyframes terminal-cursor{50%{opacity:0}}@media(max-width:700px){:is(#opening-dialogue,#tavern-dialogue) .opening-card{padding:24px 20px 15px}:is(#opening-dialogue,#tavern-dialogue) h2{font-size:33px}:is(#opening-dialogue,#tavern-dialogue) :is(#leo-line,#tavern-line){font-size:24px;min-height:175px}:is(#opening-dialogue,#tavern-dialogue) .opening-card>small{font-size:17px}:is(#opening-dialogue,#tavern-dialogue) button{font-size:20px}}@media(prefers-reduced-motion:reduce){:is(#opening-dialogue,#tavern-dialogue).typing :is(#leo-line,#tavern-line)::after{animation:none}}
/* Handheld-era conversation box: paper, ink and a simple double frame. */
:is(#opening-dialogue,#tavern-dialogue){align-items:flex-end;padding:0 24px 70px;background:#00000018;backdrop-filter:none}
:is(#opening-dialogue,#tavern-dialogue) .opening-card{width:min(820px,100%);padding:22px 28px 14px;background:#fffde8;border:5px solid #28352e;border-radius:8px;box-shadow:inset 0 0 0 3px #fffde8,inset 0 0 0 6px #6d8064,0 4px 0 #17271e;color:#27382b;max-height:75vh}
:is(#opening-dialogue,#tavern-dialogue) .opening-card::before,:is(#opening-dialogue,#tavern-dialogue) .opening-card::after{content:none}
:is(#opening-dialogue,#tavern-dialogue) .opening-card>small{display:inline-block;color:#27382b;font:25px RetroTerminal,monospace;letter-spacing:1px;border:0;padding:0 0 8px;margin:0}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-line,#tavern-line){font:29px/1.25 RetroTerminal,monospace;color:#27382b;text-shadow:none;letter-spacing:.2px;min-height:100px;margin:2px 0 14px}
:is(#opening-dialogue,#tavern-dialogue).typing :is(#leo-line,#tavern-line)::after{color:#27382b}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next){display:block;width:auto;max-width:100%;margin:0 0 0 auto;background:transparent;color:#27382b;text-shadow:none;border:0;padding:5px 0 5px 15px;box-shadow:none;font-size:20px}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next):hover{background:transparent;color:#526a42}:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next):active{border:0}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next)::after{content:'▼';display:inline-block;margin-left:12px;font-size:17px;animation:handheld-arrow .8s steps(2,end) infinite}
:is(#opening-dialogue,#tavern-dialogue).typing :is(#leo-next,#tavern-next)::after{animation:handheld-arrow .8s steps(2,end) infinite;opacity:.65}
:is(#opening-dialogue,#tavern-dialogue) :is(#leo-close,#tavern-close){font-size:17px;color:#65725b;padding:7px 0 0;margin:0;background:transparent;text-align:left;width:auto}
:is(#opening-dialogue,#tavern-dialogue) .decision-caption{color:#526347;border-top:2px solid #9aa68b;font-size:20px;padding-top:12px;margin-top:12px}
:is(#opening-dialogue,#tavern-dialogue) .decision{border:2px solid #849577;border-radius:3px;font-size:22px;background:#eeefdb;color:#344332;padding:10px 12px;letter-spacing:0;box-shadow:none}
:is(#opening-dialogue,#tavern-dialogue) .decision.rejected{color:#89907e;background:#eeefdf;border-color:#c2c8b2}
:is(#opening-dialogue,#tavern-dialogue) .decision.chosen{color:#233721;background:#e1eacb;border:3px solid #3e5535;box-shadow:none}
:is(#opening-dialogue,#tavern-dialogue) .decision.chosen:hover{background:#d5e3b7}:is(#opening-dialogue,#tavern-dialogue) .chosen small{color:#53654a;font-size:18px}
@keyframes handheld-arrow{50%{transform:translateY(4px)}}
@media(max-width:700px){:is(#opening-dialogue,#tavern-dialogue){padding:0 12px 60px}:is(#opening-dialogue,#tavern-dialogue) .opening-card{padding:18px 18px 12px;max-height:80vh}:is(#opening-dialogue,#tavern-dialogue) :is(#leo-line,#tavern-line){font-size:25px;min-height:125px}:is(#opening-dialogue,#tavern-dialogue) .opening-card>small{font-size:23px}:is(#opening-dialogue,#tavern-dialogue) .decision{font-size:21px}}
@media(prefers-reduced-motion:reduce){:is(#opening-dialogue,#tavern-dialogue) :is(#leo-next,#tavern-next)::after{animation:none}}
#cinematic-caption{font:34px/1.25 RetroTerminal,'Courier New',monospace;letter-spacing:.5px;color:#fff3c9;text-shadow:2px 2px #100c20, -1px -1px #100c20;left:8%;right:8%;bottom:15%;max-width:850px;margin:auto}@media(max-width:700px){#cinematic-caption{font-size:28px;bottom:18%}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#welcome.title-screen{background:#b9d2dd;backdrop-filter:none;overflow:hidden;padding:24px;z-index:15;display:flex;justify-content:center;align-items:flex-start}
#title-landscape{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;pointer-events:none}
.title-content{position:relative;width:min(850px,100%);text-align:center;padding-top:clamp(22px,6vh,70px);font-family:RetroTerminal,monospace;color:#46536a}
.title-kicker{font:16px RetroTerminal,monospace;letter-spacing:3px;color:#53607a;margin:0 0 16px}
#welcome h1.pixel-title{margin:0 auto;width:min(740px,100%);font-size:inherit;line-height:1}
#title-logo{width:100%;height:auto;image-rendering:pixelated;display:block}
#welcome .title-dedication{font:30px RetroTerminal,monospace;letter-spacing:1px;color:#554766;margin:16px 0 26px;text-shadow:1px 1px #f3e4e1}
.title-dedication span{color:#c66f8c;font-size:22px;margin-left:6px}
.pixel-start{font:26px RetroTerminal,monospace;letter-spacing:3px;background:#fff4cf;color:#57485d;border:3px solid #57485d;border-radius:0;padding:13px 34px;box-shadow:4px 4px 0 #57485d;transition:transform .1s,box-shadow .1s}
.pixel-start span{font-size:17px;margin-right:10px;color:#c47c8d}.pixel-start:hover{background:#fff9e6;transform:translateY(-2px);box-shadow:4px 6px 0 #57485d}.pixel-start:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #57485d}
.title-hint{font:17px RetroTerminal,monospace;color:#536276;margin:17px 0 10px}.title-controls{font:16px RetroTerminal,monospace;display:inline-block;color:#536276}.title-controls summary{cursor:pointer;letter-spacing:2px;list-style:none}.title-controls summary::before{content:'+ ';color:#8b6a82}.title-controls[open]{background:#fff5ddeb;padding:12px 20px;box-shadow:3px 3px #7b8790}.title-controls p{font:18px/1.4 RetroTerminal,monospace;margin:8px 0 0}.title-bottom{position:absolute;bottom:14px;left:15px;right:15px;text-align:center;font:13px RetroTerminal,monospace;letter-spacing:1.5px;color:#374c41}.title-bottom span{padding:0 10px;color:#fff0c3}
@media(max-width:700px){#welcome.title-screen{padding:18px 12px}.title-content{padding-top:12vh}.title-kicker{font-size:12px;letter-spacing:1px}#welcome .title-dedication{font-size:25px;margin:18px 0 28px}.title-hint{font-size:14px}.pixel-start{font-size:24px}.title-bottom{font-size:11px;letter-spacing:.5px;bottom:10px}}@media(max-height:650px) and (min-width:701px){.title-content{padding-top:5px}#welcome h1.pixel-title{width:480px}.title-kicker{margin-bottom:5px}#welcome .title-dedication{margin:6px 0 12px;font-size:25px}.title-hint{margin:12px 0 6px}.pixel-start{padding:9px 27px}}
/* A single cloud-framed title and one start button. */
.title-content{padding-top:clamp(60px,15vh,150px);width:min(850px,100%)}
#welcome h1.pixel-title{position:relative;isolation:isolate;padding:34px 24px 38px;width:min(780px,100%)}
#welcome h1.pixel-title::before{content:'';position:absolute;z-index:-1;inset:0;background:#fff9e5;clip-path:polygon(0 25%,5% 25%,5% 15%,12% 15%,12% 7%,25% 7%,25% 0,41% 0,41% 6%,60% 6%,60% 0,77% 0,77% 8%,88% 8%,88% 16%,95% 16%,95% 27%,100% 27%,100% 78%,95% 78%,95% 90%,86% 90%,86% 96%,70% 96%,70% 100%,28% 100%,28% 96%,13% 96%,13% 89%,5% 89%,5% 77%,0 77%);box-shadow:inset 0 -14px #d4e6ee}
#welcome h1.pixel-title::after{content:'';position:absolute;z-index:-2;width:125%;height:145%;left:-12.5%;top:-19%;background:radial-gradient(ellipse at 50% 100%,transparent 53%,#9b68d0 53% 57%,#4e9ce4 57% 61%,#53b669 61% 65%,#f6d447 65% 69%,#f7993d 69% 73%,#e75c76 73% 77%,transparent 77%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);image-rendering:pixelated}
.pixel-start{margin-top:32px;background:#ffdf70;border-color:#45344e;color:#45344e;box-shadow:5px 5px 0 #45344e}.pixel-start:hover{background:#ffe995}.pixel-start span{color:#bd4a66}
@media(max-width:700px){.title-content{padding-top:20vh}#welcome h1.pixel-title{padding:28px 12px 30px}.pixel-start{margin-top:28px}}@media(max-height:650px) and (min-width:701px){.title-content{padding-top:35px}#welcome h1.pixel-title{width:550px;padding:22px}.pixel-start{margin-top:22px}}
#welcome h1.pixel-title::after{background:var(--title-rainbow) center/100% 100% no-repeat;image-rendering:pixelated}
.title-credit{position:absolute;bottom:15px;left:0;right:0;margin:0;text-align:center;font:19px RetroTerminal,monospace;color:#fff4ce;text-shadow:2px 2px #355638;letter-spacing:1px;pointer-events:none}.title-music-toggle{position:absolute;right:20px;bottom:15px;padding:5px 12px;border:2px solid #42634a;border-radius:0;color:#fff4ce;background:#416c48;font:24px RetroTerminal,monospace;box-shadow:2px 2px #2f4e36}.title-music-toggle:hover{background:#548456}
.title-music-toggle{right:24px;bottom:24px;padding:12px 18px;border:3px solid #45344e;background:#ffdf70;color:#45344e;font:23px RetroTerminal,monospace;letter-spacing:1px;box-shadow:4px 4px 0 #45344e;min-height:48px}.title-music-toggle:hover{background:#fff0a3;transform:translateY(-2px)}.title-music-toggle[aria-pressed="false"]{background:#fff4de;color:#65516a}.title-credit{bottom:30px}@media(max-width:700px){.title-music-toggle{right:14px;bottom:16px;font-size:19px;padding:10px 13px;min-height:44px}.title-credit{text-align:left;left:18px;right:auto;bottom:28px}}
:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:22px;margin-top:4px}:is(#speaker-portrait,#tavern-portrait){width:112px;height:112px;image-rendering:pixelated;border:3px solid #52664c;box-shadow:2px 2px #9ba88a;background:#e8eedb}:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech :is(#leo-line,#tavern-line){margin:0 0 12px;min-height:125px;font-size:27px;line-height:1.22}@media(max-width:700px){:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech{grid-template-columns:76px minmax(0,1fr);gap:12px}:is(#speaker-portrait,#tavern-portrait){width:76px;height:76px}:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech :is(#leo-line,#tavern-line){font-size:23px;min-height:135px}}@media(max-width:390px){:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech{grid-template-columns:60px minmax(0,1fr);gap:10px}:is(#speaker-portrait,#tavern-portrait){width:60px;height:60px}:is(#opening-dialogue,#tavern-dialogue) .dialogue-speech :is(#leo-line,#tavern-line){font-size:22px}}
:is(#opening-dialogue,#tavern-dialogue).dan-thinking .dialogue-speech{grid-template-columns:180px minmax(0,1fr)}:is(#opening-dialogue,#tavern-dialogue).dan-thinking :is(#speaker-portrait,#tavern-portrait){width:180px;height:180px}:is(#opening-dialogue,#tavern-dialogue).dan-thinking .opening-card>small{color:#687252}@media(max-width:700px){:is(#opening-dialogue,#tavern-dialogue).dan-thinking .dialogue-speech{grid-template-columns:112px minmax(0,1fr)}:is(#opening-dialogue,#tavern-dialogue).dan-thinking :is(#speaker-portrait,#tavern-portrait){width:112px;height:112px}:is(#opening-dialogue,#tavern-dialogue).dan-thinking .dialogue-speech :is(#leo-line,#tavern-line){font-size:22px}}@media(max-width:390px){:is(#opening-dialogue,#tavern-dialogue).dan-thinking .dialogue-speech{grid-template-columns:1fr}:is(#opening-dialogue,#tavern-dialogue).dan-thinking :is(#speaker-portrait,#tavern-portrait){width:96px;height:96px}}

#disco-button{position:fixed;right:24px;bottom:95px;z-index:3;background:#f7df9e;border:3px solid #66523c;font:24px RetroTerminal,monospace;box-shadow:3px 3px #382b27;border-radius:0}#disco-button:disabled{background:#dba3c9}#pub-transition{position:fixed;inset:0;background:#171310;pointer-events:none;opacity:0;z-index:8}

#dialogue #next::after{content:"▼";display:inline-block;margin-left:12px;font-size:17px;animation:handheld-arrow .8s steps(2,end) infinite}@media(prefers-reduced-motion:reduce){#dialogue #next::after{animation:none}}
