/* The Diamond Reports v3.7.3 - Phan's two soft greetings.
   Keeps the real Phan app icon. CSS/SVG only; no network-loaded animation.
   Inherits Interface animations preference and iOS Reduce Motion. */
#iosHomeView .tdr-phan-mascot {
  position: relative;
  display: block;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  margin-top: 3px;
  border-radius: 13px;
  isolation: isolate;
  overflow: visible;
}
#iosHomeView .tdr-phan-actor {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  overflow: hidden;
  transform-origin: 52% 70%;
  -webkit-transform-origin: 52% 70%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#iosHomeView .tdr-phan-mascot .ios-brand-icon {
  display: block;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  flex: none !important;
  border-radius: inherit !important;
  object-fit: cover;
  box-shadow: none !important;
}
#iosHomeView .tdr-phan-eyelids {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
#iosHomeView .tdr-phan-eyes-closed { opacity: 0; }
#iosHomeView .tdr-phan-mascot::before {
  content: '';
  position: absolute;
  z-index: 0;
  inset: -5px;
  border-radius: 17px;
  background: conic-gradient(from 35deg,rgba(70,167,250,.32),rgba(172,126,241,.38),rgba(68,194,163,.25),rgba(70,167,250,.32));
  filter: blur(7px);
  -webkit-filter: blur(7px);
  opacity: 0;
  pointer-events: none;
}
#iosHomeView .tdr-phan-sparkle {
  position: absolute;
  z-index: 2;
  width: 10px;
  height: 10px;
  opacity: 0;
  pointer-events: none;
  transform: scale(.65);
  -webkit-transform: scale(.65);
}
#iosHomeView .tdr-phan-sparkle svg {
  width: 100%; height: 100%; display: block;
  fill: currentColor;
  filter: drop-shadow(0 0 3px currentColor);
  -webkit-filter: drop-shadow(0 0 3px currentColor);
}
#iosHomeView .tdr-phan-sparkle-a { top: -5px; right: -5px; color: #7E9EFF; }
#iosHomeView .tdr-phan-sparkle-b { bottom: 1px; left: -7px; color: #62C9B3; width: 7px; height: 7px; }
html[data-theme="light"] #iosHomeView .tdr-phan-sparkle-a { color: #748BDF; }
html[data-theme="light"] #iosHomeView .tdr-phan-sparkle-b { color: #35A6A5; }

/* Two eye blinks and two tiny head tilts over 4.6 seconds, no loops. */
#iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-actor {
  animation: tdr-phan-hello 4.6s ease-in-out 1 both;
  -webkit-animation: tdr-phan-hello 4.6s ease-in-out 1 both;
}
#iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-eyes-closed {
  animation: tdr-phan-blink 4.6s steps(1,end) 1 both;
  -webkit-animation: tdr-phan-blink 4.6s steps(1,end) 1 both;
}
#iosHomeView .tdr-phan-mascot.is-playing::before {
  animation: tdr-phan-halo 4.6s ease-in-out 1 both;
  -webkit-animation: tdr-phan-halo 4.6s ease-in-out 1 both;
}
#iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-sparkle-a {
  animation: tdr-phan-sparkle-one 4.6s ease-out 1 both;
  -webkit-animation: tdr-phan-sparkle-one 4.6s ease-out 1 both;
}
#iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-sparkle-b {
  animation: tdr-phan-sparkle-two 4.6s ease-out 1 both;
  -webkit-animation: tdr-phan-sparkle-two 4.6s ease-out 1 both;
}
@keyframes tdr-phan-hello {
  0%, 11%, 36%, 56%, 82%, 100% { transform: rotate(0deg) translateY(0); }
  19% { transform: rotate(-3deg) translateY(-.8px); }
  26% { transform: rotate(1.7deg) translateY(0); }
  68% { transform: rotate(2.5deg) translateY(-1px); }
  75% { transform: rotate(-1deg) translateY(0); }
}
@keyframes tdr-phan-blink {
  0%, 14%, 18.5%, 61%, 64.5%, 100% { opacity: 0; }
  15%, 17.5%, 62%, 63.5% { opacity: 1; }
}
@keyframes tdr-phan-halo {
  0%, 8%, 42%, 56%, 88%, 100% { opacity: 0; }
  22% { opacity: .36; }
  72% { opacity: .3; }
}
@keyframes tdr-phan-sparkle-one {
  0%, 10%, 31%, 57%, 86%, 100% { opacity: 0; transform: scale(.45) rotate(-22deg); }
  18%, 25%, 71%, 77% { opacity: .86; transform: scale(1) rotate(10deg); }
}
@keyframes tdr-phan-sparkle-two {
  0%, 20%, 47%, 58%, 84%, 100% { opacity: 0; transform: scale(.45) rotate(-25deg); }
  30%, 35%, 72%, 77% { opacity: .75; transform: scale(1) rotate(12deg); }
}
/* Keep the same header geometry on small iPhones. */
@media (max-width: 430px) {
  #iosHomeView .tdr-phan-mascot {
    width: 38px; height: 38px; flex-basis: 38px; margin-top: 0; border-radius: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #iosHomeView .tdr-phan-mascot,
  #iosHomeView .tdr-phan-mascot::before,
  #iosHomeView .tdr-phan-mascot *,
  #iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-actor,
  #iosHomeView .tdr-phan-mascot.is-playing .tdr-phan-eyes-closed {
    animation: none !important;
    -webkit-animation: none !important;
    transition: none !important;
  }
}
html[data-motion="off"] #iosHomeView .tdr-phan-mascot.is-playing :is(.tdr-phan-actor,.tdr-phan-eyes-closed,.tdr-phan-sparkle),
html[data-motion="off"] #iosHomeView .tdr-phan-mascot.is-playing::before {
  animation: none !important;
  -webkit-animation: none !important;
}
