/* A reversible hide control; keep the complete premiere frame when open. */
.preview-floating button.preview-floating-hide{right:3px;top:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:48px;height:44px;min-height:44px;padding:2px;border:1px solid #e8c17b55;border-radius:5px;background:#21121bd9;color:#ffe6ae;line-height:1;cursor:pointer}
.preview-floating .preview-hide-icon{font:500 22px/16px var(--sans)}
.preview-floating .preview-hide-label{font:600 9px/13px var(--sans)}
.preview-floating button.preview-floating-hide:hover{border-color:#ffe5aa;background:#4d1933}
.preview-floating button.preview-floating-hide:focus-visible,.preview-restore:focus-visible{outline:2px solid #fff1c2;outline-offset:4px}
.preview-floating .preview-restore[hidden],.preview-floating .preview-floating-hide[hidden]{display:none!important}
.preview-restore{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;height:100%;min-width:44px;min-height:44px;margin:0;padding:5px 6px 6px;border:0;border-radius:17px;background:transparent;color:#fff0cd;cursor:pointer}
.preview-restore-devil{display:block;width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 5px #b8184b77);pointer-events:none}
.preview-restore-label{font:600 10px/1.3 var(--sans);white-space:nowrap;text-shadow:0 2px 3px #000,0 0 6px #000}
.preview-floating[data-minimized="true"]{left:18px;right:auto;transform:none;display:block;width:78px;height:76px;padding:0;gap:0;border:0;border-radius:0;background:transparent;box-shadow:none;animation:preview-dock-in .2s ease-out}
.preview-floating[data-minimized="true"]::before,.preview-floating[data-minimized="true"]::after{content:none}
.preview-floating[data-minimized="true"]>.preview-brand,.preview-floating[data-minimized="true"]>.preview-floating-controls,.preview-floating[data-minimized="true"]>.preview-spectacle{display:none}
.preview-floating[data-minimized="true"]:hover{background:transparent;box-shadow:none}
@keyframes preview-dock-in{from{opacity:0;transform:translateY(6px) scale(.94)}to{opacity:1;transform:none}}
@media(max-width:650px){.preview-floating .preview-brand{padding-right:48px}.preview-floating[data-minimized="true"]{left:15px;width:76px;height:72px}.preview-restore-devil{width:39px;height:39px}}
@media(prefers-reduced-motion:reduce){.preview-floating[data-minimized="true"]{animation:none}}

/* Ruby closing swirl and a gold burst when the full player returns. */
.preview-transition-sparkles{position:absolute;inset:0;pointer-events:none;z-index:4}
.preview-transition-sparkles i{position:absolute;left:50%;top:50%;opacity:0;font:18px/1 Georgia,serif;color:#fff1b7;text-shadow:0 0 8px #f3bf70;pointer-events:none}
.preview-transition-sparkles i:nth-child(2n){color:#f45c95;text-shadow:0 0 10px #c7175b;font-size:14px}
.preview-floating[data-transition="closing"]{pointer-events:none;transform-origin:50% 85%;animation:preview-ruby-close .38s cubic-bezier(.6,0,.7,.45) both}
.preview-floating[data-transition="opening"]{transform-origin:50% 50%;animation:preview-gold-open .62s cubic-bezier(.2,.75,.25,1) both}
.preview-floating[data-transition="closing"] .preview-transition-sparkles i{animation:preview-spark-in .35s ease-in both}
.preview-floating[data-transition="opening"] .preview-transition-sparkles i{animation:preview-spark-out .62s ease-out both}
.preview-floating[data-minimized="true"]>.preview-transition-sparkles{display:none}
.preview-floating[data-minimized="true"]::after{content:none}
.preview-floating[data-transition="docked"] .preview-restore-devil{animation:preview-devil-return .72s ease-out both}
.preview-restore-devil{animation:preview-devil-glint 4s ease-in-out infinite}
@keyframes preview-ruby-close{0%{opacity:1;transform:translateX(-50%) scale(1);filter:brightness(1)}35%{opacity:1;filter:brightness(1.3);box-shadow:0 0 35px #d5257299,0 0 12px #ffe4a9}100%{opacity:0;transform:translateX(calc(-50% + var(--preview-close-x))) translateY(12px) scale(.12) rotate(-13deg);filter:brightness(1.6) blur(1px)}}
@keyframes preview-gold-open{0%{opacity:0;transform:translateX(calc(-50% + var(--preview-open-x,0px))) translateY(var(--preview-open-y,22px)) scale(.025) rotate(5deg);filter:brightness(1.6)}60%{opacity:1;transform:translateX(-50%) translateY(-3px) scale(1.035) rotate(-.6deg);filter:brightness(1.15)}100%{opacity:1;transform:translateX(-50%);filter:brightness(1)}}
@keyframes preview-spark-in{0%{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) rotate(-70deg) scale(.6)}35%{opacity:1}100%{opacity:0;transform:translate(0,0) rotate(120deg) scale(.2)}}
@keyframes preview-spark-out{0%{opacity:0;transform:translate(0,0) scale(.2)}18%{opacity:1}100%{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) rotate(65deg) scale(1.2)}}
@keyframes preview-devil-return{0%,55%{filter:drop-shadow(0 0 4px #a1194b77)}80%{filter:drop-shadow(0 0 15px #ff7629);transform:scale(1.14)}100%{filter:drop-shadow(0 0 5px #b8184b77);transform:none}}
@keyframes preview-devil-glint{0%,100%{transform:translateY(0) rotate(-3deg);filter:drop-shadow(0 0 4px #aa184b55)}50%{transform:translateY(-2px) rotate(3deg);filter:drop-shadow(0 0 7px #ed5c9188)}}

/* The silver angel opens a halo; the navigation folds back into its bar. */
@media(max-width:650px){
  .mobile-navigation-ready .mobile-header-toggle{position:relative;isolation:isolate;gap:7px;min-width:112px;padding:6px 10px;overflow:visible}
  .mobile-menu-angel{display:block;width:30px;height:30px;flex:0 0 30px;object-fit:contain;filter:drop-shadow(0 0 4px #d7e8ff55);animation:menu-angel-glint 4.5s ease-in-out infinite}
  .mobile-menu-chevron{font:500 17px/1 var(--sans);color:#efd18b;transition:transform .24s ease}
  .mobile-header-toggle[aria-expanded="true"] .mobile-menu-chevron{transform:rotate(180deg)}
  .mobile-header-toggle::after{content:"";position:absolute;inset:-5px;border:1px solid #cee8ff99;border-radius:9px;opacity:0;pointer-events:none}
  .header[data-menu-effect="opening"] .mobile-header-toggle::after{animation:menu-halo-open .6s ease-out both}
  .header[data-menu-effect="closing"] .mobile-header-toggle::after{animation:menu-halo-close .4s ease-in both}
  .header[data-menu-effect="opening"] .mobile-menu-angel{animation:menu-angel-open .58s ease-out both}
  .header[data-menu-effect="closing"] .mobile-menu-angel{animation:menu-angel-close .4s ease-in-out both}
  .header[data-menu-effect="opening"] .mobile-header-panel{transform-origin:50% 0;animation:menu-panel-open .48s cubic-bezier(.2,.7,.3,1) both}
  .mobile-navigation-ready .header.is-compact[data-menu-effect="closing"] .mobile-header-panel{transform-origin:50% 0;animation:menu-panel-close .36s ease-in both;transition:grid-template-rows .36s ease,opacity .28s ease,visibility 0s .36s}
}
@keyframes menu-halo-open{0%{opacity:0;transform:scale(.8);box-shadow:0 0 0 #e0efff}25%{opacity:.9;box-shadow:0 0 18px #a6e8ff99}100%{opacity:0;transform:scale(1.32);box-shadow:0 0 25px #d3b5fa33}}
@keyframes menu-halo-close{0%{opacity:0;transform:scale(1.3)}45%{opacity:.85;box-shadow:0 0 20px #bde9ff88}100%{opacity:0;transform:scale(.75)}}
@keyframes menu-angel-glint{0%,100%{filter:drop-shadow(0 0 3px #d7e8ff44)}50%{filter:drop-shadow(0 0 6px #bddfff99)}}
@keyframes menu-angel-open{0%{transform:rotateY(120deg) scale(.6);filter:drop-shadow(0 0 3px #fff)}60%{transform:rotateY(0) scale(1.23);filter:drop-shadow(0 0 11px #c9ecff)}100%{transform:none;filter:drop-shadow(0 0 4px #d7e8ff66)}}
@keyframes menu-angel-close{0%{transform:rotate(0) scale(1)}40%{transform:rotate(-18deg) scale(.75)}75%{transform:rotate(9deg) scale(1.13);filter:drop-shadow(0 0 9px #f7f4ff)}100%{transform:none}}
@keyframes menu-panel-open{0%{transform:perspective(600px) rotateX(-18deg) scale(.96);filter:brightness(1.35)}65%{transform:perspective(600px) rotateX(2deg) scale(1.01)}100%{transform:none;filter:brightness(1)}}
@keyframes menu-panel-close{0%{transform:none;filter:brightness(1)}100%{transform:perspective(600px) rotateX(28deg) translateY(-8px) scale(.92);filter:brightness(1.25)}}
@media(prefers-reduced-motion:reduce){
  .preview-floating[data-transition],.preview-transition-sparkles i,.preview-floating[data-transition] .preview-transition-sparkles i,.preview-floating[data-transition]::after,.preview-restore-devil,.mobile-menu-angel,.header[data-menu-effect] .mobile-menu-angel,.header[data-menu-effect] .mobile-header-toggle::after,.header[data-menu-effect] .mobile-header-panel,.mobile-navigation-ready .header[data-menu-effect] .mobile-header-panel{animation:none!important}
  .mobile-menu-chevron{transition:none}
}

/* Viewport-sized fire bursts cannot push the phone page sideways. */
.identity-flames{position:fixed;inset:0;width:100%;height:100%;z-index:150;pointer-events:none;contain:strict}
.identity-flames[hidden]{display:none!important}
.identity-fold-ghost{pointer-events:none!important;overflow:visible!important;max-width:none!important;will-change:transform,opacity}
.identity-fold-ghost .mobile-header-panel-inner{height:100%;width:100%}
.identity-fold-ghost .preview-floating-hide{visibility:hidden}
.mobile-navigation-ready .header.is-compact[data-menu-effect="closing"] .mobile-header-panel{visibility:hidden;opacity:0;animation:none;transition:none;grid-template-rows:0fr}
.identity-sound-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;min-width:44px;min-height:44px;padding:4px;border:1px solid #d7bc7e88;border-radius:5px;background:linear-gradient(135deg,#302217,#21121c);color:#fff0cb;font:600 10px/1.3 var(--sans);cursor:pointer}
.identity-sound-toggle[aria-pressed="false"]{color:#c8bbb0;border-color:#8d7860}
.identity-sound-toggle:focus-visible{outline:2px solid #fff1bf;outline-offset:3px}
.header[data-menu-effect="opening"] .mobile-header-toggle{box-shadow:inset 0 0 12px #f6e2ab55,0 0 23px #b6dfff99}
.preview-floating[data-transition="opening"]{box-shadow:0 0 28px #e9365588,0 0 12px #ffa736aa,0 15px 40px #000b}
