/* Foreground preserves the baked-in logo; the room fills every viewport. */
#title-view{overflow:hidden;isolation:isolate;background:#030711}
#title-view::before{content:"";position:absolute;inset:-24px;background:linear-gradient(#03071175,#030711a6),url('../assets/title/title_yume_derby_club.webp') center 60%/cover;filter:blur(18px);z-index:-1;pointer-events:none}
#title-view .title-opening-stage{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100vw,56.28svh);aspect-ratio:941/1672;max-height:100svh;isolation:isolate}
#title-view .release-title-art{display:block;width:100%;height:100%;object-fit:contain}
#title-view .title-phone-glow{position:absolute;inset:30% 13% 15% 13%;background:radial-gradient(ellipse at 50% 52%,#8bd5ff55 0%,#4aaeff2b 34%,transparent 68%);mix-blend-mode:screen;transform:rotate(12deg);animation:titlePhoneBreath 5.6s ease-in-out infinite;pointer-events:none}
#title-view .release-title-actions{position:absolute;z-index:3;bottom:0;left:0;right:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:35px max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#030914e8 40%,#030914);margin:0}
#title-view .release-title-actions button{min-height:48px;min-width:130px;padding:12px 20px;border:1px solid #a7d6ec;border-radius:8px;background:#071d35ee;color:#f9edc8;font-weight:700;box-shadow:0 4px 20px #0008;cursor:pointer;font-size:clamp(14px,2vw,17px)}
#title-view .release-title-actions button:first-child{background:linear-gradient(#28577c,#122d4e);border-color:#efd598}
#title-view button:focus-visible,#adv-view .title-music-toggle:focus-visible{outline:3px solid #ffe4a0;outline-offset:3px}
.title-music-toggle{position:absolute;z-index:6;left:max(12px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));min-height:44px;padding:8px 14px;border:1px solid #b4c6d5;border-radius:24px;background:#071321e8;color:#f7edce;font-size:12px;cursor:pointer}
#adv-view>.title-music-toggle{display:none}
#adv-view.has-opening-music>.title-music-toggle{display:block;top:auto;bottom:max(8px,env(safe-area-inset-bottom));left:auto;right:max(12px,env(safe-area-inset-right))}
#adv-view.has-opening-music .adv-next{padding-right:100px}
#adv-view.has-opening-music.art-only>.title-music-toggle{bottom:auto;top:max(12px,env(safe-area-inset-top))}
@keyframes titlePhoneBreath{0%,100%{opacity:.33;transform:rotate(11deg) translate(-.5%,.3%)}40%{opacity:.75;transform:rotate(12deg) translate(.8%,-.6%)}70%{opacity:.49;transform:rotate(11.6deg) translate(-.2%,-.2%)}}
@media(max-width:480px){#title-view .release-title-actions{gap:8px;padding-top:28px}#title-view .release-title-actions button{min-width:0;flex:1;padding:12px 6px}}
@media(max-height:450px) and (orientation:landscape){#title-view .release-title-actions{padding-top:12px;padding-bottom:8px}#title-view .release-title-actions button{min-height:44px;padding:8px 16px}}
@media(prefers-reduced-motion:reduce){#title-view .title-phone-glow{animation:none;opacity:.45}}
