.mellow-video-layer{position:absolute;z-index:15;inset:0;pointer-events:none}
.mellow-video-layer[hidden]{display:none}
.mellow-video-letterbox:before,.mellow-video-letterbox:after{content:"";position:absolute;z-index:1;left:0;right:0;height:clamp(22px,4.4vh,58px);background:#010305}
.mellow-video-letterbox:before{top:0}.mellow-video-letterbox:after{bottom:0}
.mellow-video-caption{position:absolute;z-index:2;left:50%;bottom:7.5%;width:min(920px,82vw);padding:1rem 1.4rem 1.15rem;text-align:center;transform:translateX(-50%);color:#fff;text-shadow:0 2px 5px #000,0 0 22px rgba(0,0,0,.92)}
.mellow-video-caption span{display:block;margin-bottom:.55rem;color:#6ff7e2;font-size:.62rem;font-weight:900;letter-spacing:.24em;text-transform:uppercase}
.mellow-video-caption strong{display:block;margin:0 auto .7rem;font-size:clamp(1.35rem,2.9vw,3rem);line-height:1.02;letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance}
.mellow-video-caption p{max-width:780px;margin:0 auto;color:#fff8ed;font-size:clamp(1rem,1.45vw,1.35rem);font-weight:650;line-height:1.45;text-wrap:balance}
.story-frame[data-mellow-video="cinematic-subtitles"] .story-copy,.story-frame[data-mellow-video="cinematic-subtitles"] .comic-bubble{opacity:0!important;pointer-events:none}
.story-frame[data-mellow-video="cyberpunk-title"] .story-copy,.story-frame[data-mellow-video="cyberpunk-title"] .comic-bubble{opacity:0!important;pointer-events:none}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-letterbox:before,.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-letterbox:after{height:clamp(4px,.7vh,10px);background:linear-gradient(90deg,#00e8d0 0 18%,#143a47 18% 82%,#ff3ebf 82%);box-shadow:0 0 18px rgba(0,232,208,.35)}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption{left:clamp(28px,6vw,96px);bottom:clamp(86px,12vh,150px);width:min(1080px,86vw);padding:clamp(1rem,2vw,1.55rem) clamp(1.1rem,2.5vw,2.2rem);text-align:left;transform:none;background:linear-gradient(105deg,rgba(1,13,22,.94),rgba(3,22,32,.72) 72%,rgba(3,22,32,.12));border-left:3px solid #58ffe2;border-top:1px solid rgba(88,255,226,.58);clip-path:polygon(0 0,96% 0,100% 28%,100% 100%,4% 100%,0 72%);box-shadow:-8px 0 28px rgba(0,232,208,.18),inset 0 0 32px rgba(9,219,255,.055);text-shadow:none;overflow:hidden}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(88,255,226,.045) 6px);mix-blend-mode:screen}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption:after{content:"";position:absolute;left:0;top:0;width:34%;height:2px;background:linear-gradient(90deg,#58ffe2,#ff3ebf,transparent);box-shadow:0 0 14px #58ffe2}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption span,.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption p{display:none}
.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption strong{position:relative;z-index:1;max-width:22ch;margin:0;color:#f4ffff;font-family:inherit;font-size:clamp(1.65rem,4.2vw,4.7rem);font-weight:950;line-height:.96;letter-spacing:.015em;text-transform:uppercase;text-wrap:balance;text-shadow:2px 0 0 rgba(255,62,191,.72),-2px 0 0 rgba(0,232,208,.7),0 0 18px rgba(88,255,226,.3)}
.mellow-video-layer.is-entering .story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption strong,.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-layer.is-entering .mellow-video-caption strong{animation:mellow-video-cyber-title .82s cubic-bezier(.16,.86,.25,1) both}
.mellow-video-layer.is-entering .mellow-video-caption span{animation:mellow-video-kicker .7s ease-out both}
.mellow-video-layer.is-entering .mellow-video-caption strong{animation:mellow-video-title 1.15s cubic-bezier(.16,.8,.24,1) both}
.mellow-video-layer.is-entering .mellow-video-caption p{animation:mellow-video-subtitle .72s .42s ease-out both}
@keyframes mellow-video-kicker{from{opacity:0;letter-spacing:.42em}to{opacity:1;letter-spacing:.24em}}
@keyframes mellow-video-title{0%{opacity:0;transform:scale(.94);filter:blur(8px)}55%{opacity:1;filter:blur(0)}100%{opacity:1;transform:none}}
@keyframes mellow-video-subtitle{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes mellow-video-cyber-title{0%{opacity:0;transform:translateX(-28px) skewX(-5deg);filter:blur(7px)}34%{opacity:.82;transform:translateX(8px) skewX(2deg);filter:blur(0)}48%{opacity:.45;transform:translateX(-3px)}62%{opacity:1;transform:translateX(2px)}100%{opacity:1;transform:none}}
@media(max-width:900px){
  .mellow-video-letterbox:before,.mellow-video-letterbox:after{height:20px}
  .mellow-video-caption{left:14px;right:14px;bottom:max(84px,calc(env(safe-area-inset-bottom) + 72px));width:auto;padding:.75rem .35rem .85rem;transform:none}
  .mellow-video-caption span{margin-bottom:.35rem;font-size:.49rem;letter-spacing:.16em}
  .mellow-video-caption strong{max-width:24ch;margin-bottom:.42rem;font-size:clamp(1.02rem,4.8vw,1.34rem);line-height:1.06}
  .mellow-video-caption p{max-width:36ch;font-size:clamp(.79rem,3.35vw,.94rem);line-height:1.38}
  .story-frame[data-mellow-video="cinematic-subtitles"] .frame-shade{background:linear-gradient(180deg,rgba(2,8,13,.02) 0 43%,rgba(2,8,13,.25) 56%,rgba(2,8,13,.88) 78%,#02080d 100%)}
  .story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption{left:14px;right:14px;bottom:max(84px,calc(env(safe-area-inset-bottom) + 72px));width:auto;padding:1rem 1rem 1.05rem;clip-path:polygon(0 0,94% 0,100% 24%,100% 100%,6% 100%,0 72%)}
  .story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-caption strong{max-width:19ch;font-size:clamp(1.18rem,6.4vw,2rem);line-height:1.02;letter-spacing:.01em}
  .story-frame[data-mellow-video="cyberpunk-title"] .frame-shade{background:linear-gradient(180deg,rgba(1,7,12,.02) 0 46%,rgba(1,7,12,.28) 60%,rgba(1,7,12,.9) 82%,#01070c 100%)}
}
@media(prefers-reduced-motion:reduce){
  .mellow-video-layer.is-entering .mellow-video-caption span,.mellow-video-layer.is-entering .mellow-video-caption strong,.mellow-video-layer.is-entering .mellow-video-caption p,.story-frame[data-mellow-video="cyberpunk-title"] .mellow-video-layer.is-entering .mellow-video-caption strong{animation:none}
}

/* Optional reusable coding-agent window returned by MellowVideo.agentWindowMarkup(). */
.mellow-agent-window{position:absolute;z-index:7;width:min(68%,620px);padding:14px;border:1px solid;border-radius:12px;color:#eaffff;box-shadow:0 28px 70px rgba(0,0,0,.7);font:600 13px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.mellow-agent-window header{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(126,224,218,.22)}.mellow-agent-window header b{color:var(--agent-accent)}.mellow-agent-window header span{color:#83a2ab;font-size:10px}.mellow-agent-thread{display:grid;gap:7px;padding-top:9px}.mellow-agent-message{padding:8px 10px;border-radius:7px;background:#0a2532}.mellow-agent-message small{display:block;margin-bottom:3px;color:var(--agent-accent);font-size:8px;letter-spacing:.12em}.mellow-agent-message.is-earlier,.mellow-agent-message.is-reply{opacity:.55}.mellow-agent-message.is-reply,.mellow-agent-message.is-working{margin-left:10%}.mellow-agent-message.is-prompt i{color:var(--agent-accent)}.mellow-agent-enter{text-align:right}.mellow-agent-enter kbd{display:inline-block;padding:4px 8px;border:1px solid var(--agent-accent);border-radius:5px;background:#123542;color:#eaffff}.mellow-agent-window footer{padding-top:10px;text-align:right;color:#8cabb3;font-size:10px}
.mellow-agent-window[data-agent-theme="vscode"]{--agent-accent:#4fc1ff;--agent-panel:#111b24}.mellow-agent-window[data-agent-theme="claude-code"]{--agent-accent:#54e6d6;--agent-panel:#03141d}.mellow-agent-window[data-agent-theme]{border-color:var(--agent-accent);background:color-mix(in srgb,var(--agent-panel) 96%,transparent)}
.mellow-agent-window[data-agent-effect="prompt-zoom"]{transform-origin:72% 32%;animation:mellow-agent-prompt-zoom var(--mellow-agent-duration,5s) infinite cubic-bezier(.2,.8,.2,1)}.mellow-agent-window[data-agent-effect="none"]{animation:none}@keyframes mellow-agent-prompt-zoom{0%,8%{opacity:0;transform:scale(.82) translateY(18px)}20%,96%{opacity:1;transform:scale(1.04)}100%{opacity:0;transform:scale(.98)}}@media(max-width:900px){.mellow-agent-window[data-agent-effect="prompt-zoom"]{transform-origin:center top;animation-name:mellow-agent-prompt-zoom-mobile}@keyframes mellow-agent-prompt-zoom-mobile{0%,8%{opacity:0;transform:scale(.88) translateY(16px)}20%,96%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.98)}}}
.mellow-agent-window[data-agent-effect="prompt-pan"]{transform-origin:center 62%;animation:mellow-agent-prompt-pan var(--mellow-agent-duration,5s) infinite cubic-bezier(.2,.8,.2,1)}.mellow-agent-window[data-agent-effect="prompt-pan"] .mv-agent-typed-char{opacity:1;animation:none}@keyframes mellow-agent-prompt-pan{0%,7%{opacity:0;transform:scale(1.42) translateX(10%)}12%,31%{opacity:1;transform:scale(1.42) translateX(10%)}54%{opacity:1;transform:scale(1.42) translateX(-10%)}66%,96%{opacity:1;transform:scale(1) translateX(0)}100%{opacity:0;transform:scale(.98)}}@media(max-width:900px){.mellow-agent-window[data-agent-effect="prompt-pan"]{transform-origin:center 62%;animation-name:mellow-agent-prompt-pan-mobile}@keyframes mellow-agent-prompt-pan-mobile{0%,7%{opacity:0;transform:scale(1.28) translateX(9%)}12%,31%{opacity:1;transform:scale(1.28) translateX(9%)}54%{opacity:1;transform:scale(1.28) translateX(-9%)}66%,96%{opacity:1;transform:scale(1) translateX(0)}100%{opacity:0;transform:scale(.98)}}}
.mellow-agent-window[data-agent-effect="prompt-pan"] header,.mellow-agent-window[data-agent-effect="prompt-pan"] .is-earlier,.mellow-agent-window[data-agent-effect="prompt-pan"] .is-reply{animation:mellow-agent-context-reveal var(--mellow-agent-duration,5s) infinite both}.mellow-agent-window[data-agent-effect="prompt-pan"] .is-prompt{box-shadow:0 0 0 1px rgba(84,230,214,.35),0 0 30px rgba(84,230,214,.12);animation:mellow-agent-prompt-focus var(--mellow-agent-duration,5s) infinite both}@keyframes mellow-agent-context-reveal{0%,57%{opacity:.08;filter:blur(1.5px)}68%,100%{opacity:1;filter:none}}@keyframes mellow-agent-prompt-focus{0%,57%{box-shadow:0 0 0 1px rgba(84,230,214,.8),0 0 36px rgba(84,230,214,.28)}68%,100%{box-shadow:0 0 0 1px rgba(84,230,214,.22),0 0 12px rgba(84,230,214,.08)}}

/* Optional scene 0 / chapter title card returned by chapterCardMarkup(). */
.mellow-chapter-card{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:#031019;color:#fff;isolation:isolate}.mellow-chapter-card:before{content:"";position:absolute;inset:-20%;z-index:-2;background:radial-gradient(circle at 25% 35%,color-mix(in srgb,var(--mellow-card-contrast) 58%,transparent),transparent 25%),radial-gradient(circle at 75% 68%,color-mix(in srgb,var(--mellow-card-accent) 55%,transparent),transparent 28%),linear-gradient(135deg,#061b27,#01080e 65%);transform:rotate(-4deg)}.mellow-card-dots{position:absolute;inset:0;z-index:-1;opacity:.24;background-image:radial-gradient(circle,rgba(255,255,255,.72) 0 1px,transparent 1.6px);background-size:8px 8px;mask-image:linear-gradient(120deg,#000,transparent 70%)}.mellow-card-panel{position:relative;width:min(82%,860px);padding:clamp(28px,5vw,70px);border:4px solid #071017;background:#f5ead6;color:#071017;transform:rotate(-1.5deg);box-shadow:14px 14px 0 var(--mellow-card-accent),-12px -12px 0 var(--mellow-card-contrast),0 30px 70px rgba(0,0,0,.58)}.mellow-card-panel:after{content:"";position:absolute;right:-4px;bottom:-34px;border:18px solid transparent;border-top:22px solid #071017;border-right:0}.mellow-card-panel small{display:block;margin-bottom:10px;color:#087d74;font-size:clamp(10px,1.1vw,15px);font-weight:950;letter-spacing:.24em}.mellow-card-panel strong{display:block;max-width:14ch;font-size:clamp(42px,8vw,108px);font-weight:1000;line-height:.82;letter-spacing:-.065em;text-transform:uppercase;text-shadow:3px 3px 0 var(--mellow-card-accent),-2px -2px 0 var(--mellow-card-contrast)}.mellow-card-panel p{max-width:34ch;margin:18px 0 0;font-size:clamp(15px,1.6vw,24px);font-weight:800;line-height:1.25}.mellow-card-panel>span{position:absolute;right:22px;top:18px;display:grid;place-items:center;width:58px;height:58px;border:3px solid #071017;border-radius:50%;background:var(--mellow-card-contrast);font-size:18px;font-weight:1000;transform:rotate(8deg)}.mellow-chapter-card[data-chapter-theme="cinematic-dark"] .mellow-card-panel{border-color:var(--mellow-card-accent);background:rgba(2,16,24,.9);color:#fff;box-shadow:0 0 40px color-mix(in srgb,var(--mellow-card-accent) 30%,transparent)}.mellow-chapter-card[data-chapter-effect="panel-slam"] .mellow-card-panel{animation:mellow-card-slam var(--mellow-card-duration,3s) infinite cubic-bezier(.18,.85,.22,1)}.mellow-chapter-card[data-chapter-effect="panel-slam"] .mellow-card-dots{animation:mellow-card-drift var(--mellow-card-duration,3s) infinite ease-in-out}@keyframes mellow-card-slam{0%,6%{opacity:0;transform:scale(1.45) rotate(-7deg);filter:blur(8px)}20%,78%{opacity:1;transform:scale(1) rotate(-1.5deg);filter:none}92%,100%{opacity:0;transform:scale(.96) rotate(1deg)}}@keyframes mellow-card-drift{0%{transform:translate(-18px,-8px)}70%,100%{transform:translate(18px,8px)}}@media(max-width:900px){.mellow-card-panel{width:84%;padding:30px 24px 34px;box-shadow:8px 8px 0 var(--mellow-card-accent),-7px -7px 0 var(--mellow-card-contrast)}.mellow-card-panel strong{font-size:clamp(40px,14vw,66px)}.mellow-card-panel p{font-size:14px}.mellow-card-panel>span{right:14px;top:12px;width:42px;height:42px;font-size:13px}}

@media(max-width:900px){.mellow-card-panel strong{max-width:100%;font-size:clamp(32px,10.5vw,48px);letter-spacing:-.055em}}

/* FrameTimeline: one active internal frame; nested transitions run once per visit. */
.is-mellow-frame-timeline>.mellow-frame,.is-mellow-frame-timeline>.cinematic-step{animation:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:none!important}.is-mellow-frame-timeline>.mellow-frame.is-mellow-frame-active,.is-mellow-frame-timeline>.cinematic-step.is-mellow-frame-active{opacity:1!important;visibility:visible!important;pointer-events:auto!important}.is-mellow-frame-timeline>.is-mellow-frame-active *{animation-delay:0s!important;animation-iteration-count:1!important}.is-mellow-frame-timeline>.is-mellow-frame-active.cinematic-step-4:before{animation-delay:0s!important;animation-iteration-count:1!important}.is-mellow-frame-timeline>.is-mellow-frame-active .mellow-agent-message.is-working span,.is-mellow-frame-timeline>.is-mellow-frame-active .mellow-agent-message.is-prompt em{animation-iteration-count:infinite!important}

/* Optional developer overlay. It never changes story layout or exported media. */
.mellow-debug-panel{position:fixed;z-index:1000;right:10px;top:82px;width:min(310px,calc(100vw - 20px));border:1px solid rgba(80,234,215,.72);border-radius:10px;background:rgba(1,13,20,.94);color:#dffffa;box-shadow:0 14px 40px rgba(0,0,0,.52),0 0 24px rgba(80,234,215,.12);font:700 10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;backdrop-filter:blur(12px)}.mellow-debug-toggle{display:block;width:100%;border:0;border-bottom:1px solid rgba(80,234,215,.25);padding:7px 9px;background:rgba(10,45,55,.88);color:#65f3df;font:900 9px ui-monospace,monospace;letter-spacing:.15em;text-align:left;cursor:pointer}.mellow-debug-body{display:grid;gap:3px;padding:9px}.mellow-debug-body b{color:#fff}.mellow-debug-body span{color:#9db9bf}.mellow-debug-body [data-debug-frame],.mellow-debug-body [data-debug-time]{color:#68ead8}.mellow-debug-body i{display:block;height:3px;margin-top:4px;background:#16343e}.mellow-debug-body i em{display:block;height:100%;background:linear-gradient(90deg,#50ead7,#ff4ea1)}.mellow-debug-panel.is-collapsed{width:66px}.mellow-debug-panel.is-collapsed .mellow-debug-body{display:none}.mellow-debug-panel.is-collapsed .mellow-debug-toggle{border-bottom:0;text-align:center}@media(max-width:900px){.mellow-debug-panel{top:64px;right:7px;width:min(276px,calc(100vw - 14px));font-size:8px}.mellow-debug-toggle{padding:5px 7px;font-size:8px}.mellow-debug-body{gap:2px;padding:7px}}@media print{.mellow-debug-panel{display:none!important}}

/* Debug Mode mini editor: compact by default, with live controls on demand. */
.mellow-debug-body details{margin-top:5px;border-top:1px solid rgba(80,234,215,.2);padding-top:5px}.mellow-debug-body summary{list-style:none;color:#65f3df;letter-spacing:.12em;cursor:pointer;user-select:none}.mellow-debug-body summary::-webkit-details-marker{display:none}.mellow-debug-body summary::after{content:' +';float:right}.mellow-debug-body details[open] summary::after{content:' −'}.mellow-debug-controls{display:grid;gap:5px;margin-top:7px;max-height:min(52vh,430px);overflow:auto;padding-right:2px}.mellow-debug-controls label{display:grid;grid-template-columns:minmax(88px,1fr) minmax(110px,1.25fr);align-items:center;gap:7px}.mellow-debug-controls label>span{overflow:hidden;color:#9db9bf;text-overflow:ellipsis;white-space:nowrap}.mellow-debug-controls select,.mellow-debug-controls input[type=number]{min-width:0;width:100%;border:1px solid rgba(80,234,215,.32);border-radius:5px;background:#071d27;color:#effffc;padding:4px 5px;font:700 9px ui-monospace,SFMono-Regular,Consolas,monospace}.mellow-debug-controls input[type=checkbox]{justify-self:end;width:28px;height:15px;margin:0;accent-color:#50ead7;cursor:pointer}.mellow-debug-panel.is-timing-hidden [data-debug-time],.mellow-debug-panel.is-timing-hidden [data-debug-range],.mellow-debug-panel.is-timing-hidden [data-debug-total],.mellow-debug-panel.is-timing-hidden .mellow-debug-body>i{display:none}.mellow-card-panel strong[hidden]{display:none!important}@media(max-width:900px){.mellow-debug-controls{gap:4px;max-height:45vh}.mellow-debug-controls label{grid-template-columns:minmax(78px,1fr) minmax(100px,1.2fr);gap:5px}.mellow-debug-controls select,.mellow-debug-controls input[type=number]{padding:3px 4px;font-size:8px}}
.mellow-debug-panel[data-mellow-debug-placement="after-host"]{position:relative;inset:auto;width:min(560px,calc(100% - 24px));margin:14px auto 28px;z-index:2}.mellow-debug-panel[data-mellow-debug-placement="after-host"].is-collapsed{width:min(120px,calc(100% - 24px));margin-right:12px}@media(max-width:900px){.mellow-debug-panel[data-mellow-debug-placement="after-host"]{top:auto;right:auto;width:calc(100% - 24px);margin:12px auto 22px;font-size:9px}.mellow-debug-panel[data-mellow-debug-placement="after-host"].is-collapsed{width:88px;margin-right:12px}}
.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]{position:absolute;inset:auto 18px 22px auto;width:min(310px,calc(100% - 36px));margin:0;z-index:24}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"].is-collapsed{width:72px}@media(max-width:900px){.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]{position:absolute;top:auto;right:12px;bottom:max(92px,calc(env(safe-area-inset-bottom) + 82px));width:calc(100% - 24px);max-height:188px;margin:0;font-size:8px}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"] .mellow-debug-body{padding:6px 8px}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"] .mellow-debug-controls{max-height:112px}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"] details[open] .mellow-debug-controls{overflow:auto}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"].is-collapsed{width:72px}}

/* Live editor + reusable prompt export. */
.mellow-debug-prompt{display:grid;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(80,234,215,.22)}.mellow-debug-prompt>b{color:#65f3df;letter-spacing:.12em}.mellow-debug-prompt select,.mellow-debug-prompt textarea{width:100%;border:1px solid rgba(80,234,215,.38);border-radius:6px;background:#061a23;color:#effffc;padding:6px;font:700 9px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace}.mellow-debug-prompt textarea{min-height:92px;resize:vertical;white-space:pre-wrap}.mellow-debug-prompt>div{display:grid;grid-template-columns:1fr auto;gap:6px}.mellow-debug-prompt button{border:1px solid #50ead7;border-radius:6px;background:#10343d;color:#78f8e5;padding:6px 8px;font:900 8px ui-monospace,monospace;letter-spacing:.06em;cursor:pointer}.mellow-debug-prompt button:first-child{background:#50ead7;color:#03151b}.mellow-debug-prompt button:disabled{opacity:.42;cursor:not-allowed}.mellow-debug-prompt small{min-height:1em;color:#ffda7b;letter-spacing:.1em}.mellow-debug-panel:has(details[open]){box-shadow:0 18px 70px rgba(0,0,0,.78),0 0 28px rgba(80,234,215,.16)}
@media(max-width:900px){.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]:has(details[open]){top:auto;bottom:max(82px,calc(env(safe-area-inset-bottom) + 72px));height:min(58svh,520px);max-height:min(58svh,520px);overflow:auto;background:rgba(1,13,20,.985)}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]:has(details[open]) .mellow-debug-body{display:block}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]:has(details[open]) .mellow-debug-controls{max-height:none;overflow:visible}.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]:has(details[open]) .mellow-debug-body>span,.mellow-debug-panel[data-mellow-debug-placement="frame-footer"]:has(details[open]) .mellow-debug-body>i{display:none}.mellow-debug-prompt textarea{min-height:105px}.mellow-debug-prompt button{padding:7px 8px}}

.mellow-debug-controls .mellow-debug-action{width:100%;border:1px solid #50ead7;border-radius:5px;background:#10343d;color:#75f7e3;padding:5px;font:900 8px ui-monospace,monospace;letter-spacing:.06em;cursor:pointer}
.mellow-debug-controls .mellow-debug-readout{display:block;min-width:0;color:#fff4df;font:800 8px ui-monospace,monospace;text-align:right;white-space:nowrap}

/* Reusable iPhone-safe audio consent gate. */
.mellow-audio-gate{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 36%,rgba(21,89,84,.34),transparent 38%),rgba(1,7,11,.88);backdrop-filter:blur(18px);opacity:0;transition:opacity .4s ease}.mellow-audio-gate.is-visible{opacity:1}.mellow-audio-card{position:relative;width:min(520px,100%);overflow:hidden;border:1px solid rgba(91,255,230,.38);border-radius:28px;padding:36px 36px 30px;text-align:center;background:linear-gradient(150deg,rgba(11,31,38,.98),rgba(3,13,19,.99));color:#fff6e8;box-shadow:0 30px 90px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.08)}.mellow-audio-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 20%,rgba(66,232,208,.08) 48%,transparent 72%);transform:translateX(-70%);animation:mellow-audio-sheen 4s ease-in-out infinite}.mellow-audio-orbit{position:relative;display:grid;place-items:center;width:108px;height:108px;margin:0 auto 21px;border:1px solid rgba(66,232,208,.34);border-radius:50%;box-shadow:0 0 48px rgba(66,232,208,.16)}.mellow-audio-orbit:before,.mellow-audio-orbit:after,.mellow-audio-orbit i{content:"";position:absolute;border:1px solid rgba(66,232,208,.22);border-radius:50%}.mellow-audio-orbit:before{inset:12px}.mellow-audio-orbit:after{inset:25px}.mellow-audio-orbit i:first-child{inset:-10px;border-style:dashed;animation:mellow-audio-spin 12s linear infinite}.mellow-audio-orbit i:nth-child(2){width:8px;height:8px;right:6px;top:15px;border:0;background:#50ead7;box-shadow:0 0 18px #50ead7}.mellow-audio-orbit span{position:relative;z-index:2;color:#50ead7;font-size:2rem;text-shadow:0 0 22px rgba(66,232,208,.8)}.mellow-audio-card [data-audio-kicker]{margin:0 0 10px;color:#50ead7;font-size:.66rem;font-weight:900;letter-spacing:.2em}.mellow-audio-card h2{max-width:430px;margin:0 auto 14px;font-size:clamp(1.75rem,4vw,2.65rem);line-height:1.04;letter-spacing:-.035em;text-wrap:balance}.mellow-audio-card [data-audio-copy]{max-width:430px;margin:0 auto 25px;color:#c6d7d5;font-size:.97rem;line-height:1.55}.mellow-audio-actions{display:flex;justify-content:center;gap:10px}.mellow-audio-actions button{min-height:48px;border-radius:999px;padding:0 21px;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}.mellow-audio-actions [data-audio-enable]{border:0;background:#50ead7;color:#03231f;box-shadow:0 0 26px rgba(66,232,208,.22)}.mellow-audio-actions [data-audio-skip]{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#e5efed}.mellow-audio-card [data-audio-note]{display:block;margin-top:17px;color:#79918f;font-size:.68rem}@keyframes mellow-audio-spin{to{transform:rotate(360deg)}}@keyframes mellow-audio-sheen{50%,100%{transform:translateX(80%)}}@media(max-width:900px){.mellow-audio-gate{padding:16px}.mellow-audio-card{padding:27px 18px 23px;border-radius:23px}.mellow-audio-orbit{width:86px;height:86px;margin-bottom:17px}.mellow-audio-card h2{font-size:clamp(1.55rem,8vw,2rem)}.mellow-audio-card [data-audio-copy]{font-size:.84rem;margin-bottom:20px}.mellow-audio-actions{flex-direction:column}.mellow-audio-actions button{width:100%}.mellow-audio-card [data-audio-note]{margin-top:13px}}@media(prefers-reduced-motion:reduce){.mellow-audio-card:before,.mellow-audio-orbit i{animation:none!important}}

/* Isolated speaker motion: only a selected character region moves. */
.has-mellow-speaker-motion{isolation:isolate}.mellow-speaker-layer{position:absolute!important;z-index:2!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;pointer-events:none!important;clip-path:var(--mellow-speaker-clip,inset(0));-webkit-mask-image:var(--mellow-speaker-mask,none);mask-image:var(--mellow-speaker-mask,none);transform-origin:var(--mellow-speaker-origin,50% 50%);will-change:transform;backface-visibility:hidden}.mellow-speaker-layer[data-speaker-motion="gentle-talk"]{animation:mellow-speaker-gentle calc(2.35s / var(--mellow-speaker-speed,1)) infinite cubic-bezier(.45,.05,.55,.95)}.mellow-speaker-layer[data-speaker-motion="expressive-talk"]{animation:mellow-speaker-expressive calc(1.65s / var(--mellow-speaker-speed,1)) infinite cubic-bezier(.4,.1,.55,.9)}
@keyframes mellow-speaker-gentle{0%,100%{transform:translate3d(0,0,0) rotate(0) scale(1)}18%{transform:translate3d(calc(.35px * var(--mellow-speaker-intensity,1)),calc(-.55px * var(--mellow-speaker-intensity,1)),0) rotate(calc(-.08deg * var(--mellow-speaker-intensity,1))) scale(calc(1 + .0009 * var(--mellow-speaker-intensity,1)))}46%{transform:translate3d(calc(-.3px * var(--mellow-speaker-intensity,1)),calc(.45px * var(--mellow-speaker-intensity,1)),0) rotate(calc(.06deg * var(--mellow-speaker-intensity,1))) scale(1)}72%{transform:translate3d(calc(.45px * var(--mellow-speaker-intensity,1)),calc(-.25px * var(--mellow-speaker-intensity,1)),0) rotate(calc(-.04deg * var(--mellow-speaker-intensity,1))) scale(calc(1 + .0006 * var(--mellow-speaker-intensity,1)))}}
@keyframes mellow-speaker-expressive{0%,100%{transform:translate3d(0,0,0) rotate(0) scale(1)}22%{transform:translate3d(calc(.75px * var(--mellow-speaker-intensity,1)),calc(-1px * var(--mellow-speaker-intensity,1)),0) rotate(calc(-.15deg * var(--mellow-speaker-intensity,1))) scale(calc(1 + .0015 * var(--mellow-speaker-intensity,1)))}55%{transform:translate3d(calc(-.6px * var(--mellow-speaker-intensity,1)),calc(.65px * var(--mellow-speaker-intensity,1)),0) rotate(calc(.12deg * var(--mellow-speaker-intensity,1))) scale(1)}78%{transform:translate3d(calc(.5px * var(--mellow-speaker-intensity,1)),calc(-.4px * var(--mellow-speaker-intensity,1)),0) rotate(calc(-.08deg * var(--mellow-speaker-intensity,1))) scale(calc(1 + .001 * var(--mellow-speaker-intensity,1)))}}
@media(prefers-reduced-motion:reduce){.mellow-speaker-layer{animation:none!important}}

/* Reusable cinematic camera moves and HTML thought bubbles. */
.has-mellow-camera-motion{overflow:hidden}.has-mellow-camera-motion:before{content:"";position:absolute;z-index:4;inset:-20%;pointer-events:none;opacity:0;background:repeating-conic-gradient(from 0deg at var(--mellow-camera-origin,42% 38%),rgba(255,255,255,.1) 0 .35deg,transparent .5deg 5deg);mix-blend-mode:screen;animation:mellow-anime-lines var(--mellow-camera-duration,2.5s) both}.mellow-camera-target{transform-origin:var(--mellow-camera-origin,42% 38%);will-change:transform}.has-mellow-camera-motion[data-camera-motion="anime-thought-zoom"] .mellow-camera-target{animation:mellow-anime-thought-zoom var(--mellow-camera-duration,2.5s) both cubic-bezier(.16,.75,.22,1)}.has-mellow-camera-motion[data-camera-motion="slow-focus-push"] .mellow-camera-target{animation:mellow-slow-focus-push var(--mellow-camera-duration,2.5s) both ease-in-out}.has-mellow-camera-motion[data-camera-motion="slow-focus-push"]:before{display:none}
@keyframes mellow-anime-thought-zoom{0%{transform:scale(1)}16%{transform:scale(calc(1 + .105 * var(--mellow-camera-intensity,1))) translate3d(calc(-.6% * var(--mellow-camera-intensity,1)),calc(.25% * var(--mellow-camera-intensity,1)),0)}30%{transform:scale(calc(1 + .092 * var(--mellow-camera-intensity,1))) translate3d(calc(-.25% * var(--mellow-camera-intensity,1)),0,0)}58%{transform:scale(calc(1 + .1 * var(--mellow-camera-intensity,1))) translate3d(calc(-.45% * var(--mellow-camera-intensity,1)),calc(-.18% * var(--mellow-camera-intensity,1)),0)}100%{transform:scale(calc(1 + .095 * var(--mellow-camera-intensity,1))) translate3d(calc(-.35% * var(--mellow-camera-intensity,1)),0,0)}}@keyframes mellow-slow-focus-push{to{transform:scale(calc(1 + .075 * var(--mellow-camera-intensity,1)))}}@keyframes mellow-anime-lines{0%,8%{opacity:0;transform:scale(.8)}14%{opacity:.32}27%,100%{opacity:0;transform:scale(1.08)}}
.mellow-thought-bubble:after{left:34%!important;bottom:-12px!important;width:10px!important;height:10px!important;border:0!important;border-radius:50%!important;background:#f4ead7!important;box-shadow:13px 13px 0 -2px #f4ead7,25px 23px 0 -4px #f4ead7!important;opacity:.98}.mellow-thought-bubble:before{content:"";position:absolute;left:calc(34% + 13px);bottom:-25px;width:6px;height:6px;border-radius:50%;background:#f4ead7;opacity:.95}
@media(prefers-reduced-motion:reduce){.mellow-camera-target,.has-mellow-camera-motion:before{animation:none!important}}

/* Very short cache-aware preload indicator. */
.mellow-preload-overlay{position:fixed;z-index:2100;inset:0;display:grid;place-items:center;pointer-events:none;background:rgba(1,8,12,.62);backdrop-filter:blur(8px);opacity:0;transition:opacity .12s ease}.mellow-preload-overlay.is-visible{opacity:1}.mellow-preload-overlay>div{display:flex;align-items:center;gap:10px;padding:10px 15px;border:1px solid rgba(80,234,215,.38);border-radius:999px;background:#061a23;color:#8cf9e8;box-shadow:0 12px 40px rgba(0,0,0,.5);font:900 9px ui-monospace,monospace;letter-spacing:.14em}.mellow-preload-overlay i{width:13px;height:13px;border:2px solid rgba(80,234,215,.25);border-top-color:#50ead7;border-radius:50%;animation:mellow-preload-spin .45s linear infinite}@keyframes mellow-preload-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.mellow-preload-overlay i{animation:none}}
