/* Authored SVG animation: motion uses translate/rotate independent of SVG placement. */
.cd-actor .cd-breathe{animation:cd-breathe 4.8s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 90%}.cd-eye{animation:cd-eye 6.1s infinite;transform-box:fill-box;transform-origin:center}.cd-search-hand{animation:cd-search 5.2s ease-in-out infinite;transform-box:fill-box;transform-origin:5% 90%}.cd-lens-glint{animation:cd-glint 4.5s ease-in-out infinite}.cd-beam{animation:cd-beam 13s ease-in-out infinite alternate;transform-origin:720px 0;transform-box:view-box}.cd-fog{animation:cd-fog 18s ease-in-out infinite alternate}.cd-dust{animation:cd-dust 8s ease-in-out infinite}.cd-pipe-flow{animation:cd-flow 3s linear infinite}.cd-caution{animation:cd-flow 24s linear infinite}.cd-steam{animation:cd-steam 4s ease-in-out infinite}.cd-lamp{animation:cd-lamp 7s ease-in-out infinite}.cd-art-drift{animation:cd-drift 6s ease-in-out infinite;animation-delay:var(--cd-delay,0s)}.svg-hot:hover .hot-art{filter:drop-shadow(0 0 7px #e9b75f66)}.svg-hot:focus-visible{outline:none}.svg-hot:focus-visible .hit{stroke:#f6d698!important;stroke-width:3px!important}.hero-art,.intro-hero-scene-box,.scene-wrap{position:relative;overflow:hidden}.case-cover .cover-drawing{animation:cd-drift 7s ease-in-out infinite}.case-card:nth-child(2) .cover-drawing{animation-delay:-3s}.brand-mark{animation:cd-emblem 8s ease-in-out infinite}.scene-corner{animation:cd-corner 5s ease-in-out infinite}.scene-tag{animation:cd-signal 6s ease-in-out infinite}.case-status:before,.hero-footnote span,.save-state .dot{animation:cd-beacon 3.2s ease-in-out infinite}.cd-motion-control{position:fixed;right:14px;bottom:12px;z-index:90;border:1px solid #877151;background:#141c2af5;color:#edd4a5;border-radius:5px;padding:8px 12px;font:500 10px 'Be Vietnam Pro',Arial,sans-serif;cursor:pointer;box-shadow:0 4px 18px #0005}.cd-motion-control:hover{border-color:#e9b75f}.cd-motion-control:focus-visible{outline:2px solid #e9b75f;outline-offset:3px}.cd-motion-paused *,.cd-motion-paused *:before,.cd-motion-paused *:after{animation-play-state:paused!important}.cd-motion-paused .scene-image{visibility:hidden}.cd-static-board{display:none}.cd-motion-paused .cd-static-board{display:block!important;visibility:visible!important}body .cd-pulse-dot{animation:cd-beacon 3.2s ease-in-out infinite!important}.cd-gate-visual svg{animation:cd-drift 7s ease-in-out infinite}
@keyframes cd-breathe{0%,100%{translate:0 0;scale:1 1}50%{translate:0 -2px;scale:1 1.012}}@keyframes cd-eye{0%,43%,47%,100%{scale:1 1}45%{scale:1 .12}}@keyframes cd-search{0%,100%{rotate:-5deg}50%{rotate:8deg}}@keyframes cd-glint{0%,65%,100%{opacity:.15}75%{opacity:.9}}@keyframes cd-beam{from{rotate:-18deg;opacity:.35}to{rotate:16deg;opacity:.8}}@keyframes cd-fog{from{translate:-60px 4px;opacity:.4}to{translate:70px -8px;opacity:.9}}@keyframes cd-dust{0%,100%{translate:0 0;opacity:.15}50%{translate:8px -20px;opacity:.65}}@keyframes cd-flow{to{stroke-dashoffset:-96}}@keyframes cd-steam{0%,100%{translate:0 8px;opacity:.15}50%{translate:4px -12px;opacity:.6}}@keyframes cd-lamp{0%,100%{opacity:.55}50%{opacity:1}}@keyframes cd-drift{0%,100%{translate:0 0}50%{translate:0 -4px}}@keyframes cd-emblem{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 5px #e9b75f55)}}@keyframes cd-corner{0%,100%{opacity:.4}50%{opacity:1}}@keyframes cd-signal{0%,100%{color:#a88a69}50%{color:#f1cf9b}}@keyframes cd-beacon{0%,100%{opacity:.5;box-shadow:0 0 0 #ce675b00}50%{opacity:1;box-shadow:0 0 10px #ce675b66}}
@media(max-width:600px){.cd-motion-control{padding:7px 9px;font-size:9px;right:10px}.cd-atmosphere .cd-dust:nth-of-type(n+9){display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.scene-image{visibility:hidden}.cd-static-board{display:block!important;visibility:visible!important}.cd-motion-control{display:none}}
.cd-background *,.cd-background *:before,.cd-background *:after{animation-play-state:paused!important}

/* Give the newly drawn first case scene a readable cinematic canvas. */
body[data-case="001"] .intro{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:24px!important}body[data-case="001"] .intro>.hero-art{order:-1;width:100%;max-width:none;min-width:0}body[data-case="001"] .intro>.intro-copy{width:100%;max-width:none}.cd-gate-visual svg{max-height:340px}

/* Curious detective club — warm, rounded and inviting. */
:root{--case-accent:#dfc18a;--gold:#e9c68e;--line:#526778}
body{background:#142233!important;background-image:radial-gradient(ellipse at 80% 0,#a7895c14,transparent 60%)!important}.workspace{background:radial-gradient(ellipse at 75% 0,#85928a12,transparent 60%)}
.case-portal-nav{background:#172839fa!important;border-color:#7b745c!important}.sidebar{background:#192c3e!important}.topbar{background:#203449f7!important}.side-foot{background:#253e50!important;border-color:#61727b!important}.brand strong{color:#f5dfb1!important}.brand-mark{background:#d9bd8220!important;border-radius:11px!important;border-color:#c8ad79!important}.navbtn.current,.nav-item.active{background:#dcc08a1c!important;border-color:#a8b3a0!important;color:#ffdfa8!important;box-shadow:inset 3px 0 #d7bc83!important;border-radius:12px!important}.navbtn:hover,.nav-item:hover{background:#87b8b31a!important}.navbtn,.nav-item{border-radius:12px!important}
.intro,.intro-hero-wrap{background:linear-gradient(125deg,#2b4053,#223448)!important;border:1px solid #8b8b774f!important;border-top:3px solid #e3c78f!important;border-radius:22px!important;box-shadow:0 12px 35px #07142133!important}.intro-copy h1,.intro-hero-wrap h1{color:#fff0d5!important;line-height:1.3!important}.intro-copy h1 em{color:#efcc94!important}.intro-copy p,.intro-hero-wrap p{color:#d0dce0!important}.hero-art,.intro-hero-scene-box{background:#20384a!important;border-color:#99b6b377!important;border-radius:16px!important;box-shadow:0 8px 20px #10233044!important}.hero-art svg,.intro-hero-scene-box svg,.scene-wrap svg{filter:none!important}.card,.panel,.feature,.feature-card,.scene-wrap,.bag{background:#283e51!important;border:1px solid #78908d66!important;border-radius:16px!important;box-shadow:0 5px 18px #0a192733!important}.bag{border-top:3px solid #e0c48e!important}.feature h3,.feature-card h3{color:#f8dfad!important}.intro-copy .questions>*,.question{border-radius:12px!important}.btn,.btn-primary,.btn-gold{border-radius:11px!important}.btn.primary,.btn.gold,.btn-primary,.btn-gold{background:#edcc92!important;color:#26394b!important;box-shadow:0 3px 0 #9e8862!important}.btn.ghost,.btn-ghost{background:#355366!important;border-color:#8eacae!important;color:#e3eded!important;border-radius:11px!important}.iconbtn{background:#2f4d61!important;border-radius:10px!important}.tag,.vh-rec,.vh-code{border-radius:7px!important}.vh-rec{color:#efd8af!important;background:#b397651a!important;border-color:#bfa36e88!important}.vb-stamp{background:#d5b79115!important;border-color:#cca98988!important;color:#e3c9a7!important;border-radius:7px!important}.dialog{background:#273e51!important;border-color:#9eb2a1!important;border-radius:18px!important}.dialog-head,.dialog-header,.dialog-footer{background:#2f495d!important;border-color:#829b9466!important}.dialog-head h2,.dialog-header h2{color:#ffebc4!important}.dialog-body{color:#deebef!important}body .cd-gate-card{background:linear-gradient(90deg,#344e5d 0 43%,#243b4f 43%)!important;border:1px solid #b3b191!important;border-top:4px solid #edcc92!important;border-radius:22px!important}body .cd-gate-card h2{color:#ffebc8!important}.cd-gate-visual svg{filter:none!important}body .cd-btn-start{background:#edcc92!important;color:#26394b!important;border-radius:10px!important}.cd-motion-control{background:#263d4ff5;border-color:#a9a589;color:#f6e1bb;border-radius:12px}.cd-beam{opacity:.5}.cd-fog{display:none}.cd-actor-cute .cd-breathe{animation-duration:5.5s}.cd-actor-cute .cd-search-hand{animation-duration:6.5s}.cd-actor-cute .cd-eye{animation-duration:6s}.eyebrow{color:#b3dcd3!important}.pocket{background:#34566a!important}.cd-caution{display:none}
@media(max-width:900px){body .cd-gate-card{background:#243b4f!important}.intro,.intro-hero-wrap{border-radius:17px!important}.intro-copy h1{font-size:35px!important}.intro-hero-wrap h1{font-size:30px!important}.sidebar{background:#1b3043!important}}
/* Unified home editorial typography and illustrated motion. */
body{background:#0c111a!important;color:#f0e8d8!important}.workspace{background:radial-gradient(ellipse at 80% 0,#99733b12,transparent 65%)}.sidebar{background:#101823!important}.topbar,.case-portal-nav{background:#121c29f5!important}.side-foot,.bag,.card,.panel,.feature,.feature-card,.scene-wrap{background:#1b2635!important;border-color:#6c654b66!important}.intro,.intro-hero-wrap{background:linear-gradient(135deg,#222d3c,#151f2d)!important;border-color:#89764e88!important;border-top-color:#e9b75f!important}.intro-copy h1,.intro-hero-wrap h1{font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(38px,4.5vw,68px)!important;font-weight:700!important;line-height:1.13!important;letter-spacing:-1.5px!important;color:#f6ecd8!important;max-width:1000px;margin:18px 0 24px!important;text-wrap:balance}.intro-copy h1 em{color:#e9b75f!important}.heading h2,.page-head h2,.page-head h1{font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(28px,3vw,42px)!important;line-height:1.25!important;color:#f1dfba!important}.card h3,.panel h3,.bag h3,.feature h3,.feature-card h3{font-family:'Playfair Display',Georgia,serif!important;font-size:22px!important;color:#efdcaf!important}.intro-copy p,.intro-hero-wrap p,.page-head p{color:#bcc4cc!important;line-height:1.9!important}.eyebrow,.section-kicker{font-family:'JetBrains Mono',monospace!important;color:#e4bc78!important;letter-spacing:1.8px!important;font-size:10px!important}.navbtn.current,.nav-item.active{background:#d4b77915!important;border-color:#ac925b88!important;color:#efd09a!important}.btn.primary,.btn-primary,.btn.gold,.btn-gold,body .cd-btn-start{background:#e4bd79!important;color:#202b36!important}.btn.ghost,.btn-ghost,.iconbtn{background:#263747!important;border-color:#657881!important}.hero-art,.intro-hero-scene-box{background:#1c2e3d!important;border-color:#a38c5866!important}.dialog{background:#1b2939!important;border-color:#a28d6188!important}.dialog-head,.dialog-header,.dialog-footer{background:#243346!important}.dialog h2,.dialog h3{font-family:'Playfair Display',Georgia,serif!important;color:#f4dfb8!important}.vh-rec,.vh-code,.tag{color:#e8cf9b!important}.pocket{background:#293e4e!important}body .cd-gate-card{background:linear-gradient(90deg,#293b48 0 43%,#1b2939 43%)!important}body .cd-gate-card h2{font-size:38px!important}.intro>.hero-art{order:initial!important}.intro-copy{order:-1!important}.intro-copy .questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.intro-copy .questions>*{margin:0!important}.cd-art-drift{animation-duration:7s}.cd-actor-cute .cd-breathe{animation-timing-function:ease-in-out}.hero-art svg,.intro-hero-scene-box svg{border-radius:12px}.brand-mark svg,.feature svg,.feature-card svg{animation:cd-drift 7s ease-in-out infinite}.feature:nth-child(even) svg,.feature-card:nth-child(even) svg{animation-delay:-3s}.dialog-body svg[role="img"]{animation:cd-drift 8s ease-in-out infinite}@media(max-width:900px){.intro-copy h1,.intro-hero-wrap h1{font-size:38px!important;letter-spacing:-.8px!important}.intro-copy .questions{grid-template-columns:1fr}.card h3,.panel h3{font-size:21px!important}body .cd-gate-card{background:#1b2939!important}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
