/* Decorative scenery stays behind the interactive content. */
.shield-site.dream-theme {
  position: relative;
  isolation: isolate;
  --sky: #eff7fb;
  --ink: #30526c;
  --blue: #397ba6;
  --shadow: #d0e4ed;
  --win-shadow: 5px;
  background: var(--sky);
}
.dream-theme .dream-sky {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}
.dream-theme .dream-cloud {
  position: absolute;
  width: 192px;
  height: 80px;
  opacity: .65;
  image-rendering: pixelated;
  animation: cloud-drift 22s cubic-bezier(.45, 0, .55, 1) infinite;
  transform-origin: center;
  will-change: transform;
}
.dream-theme .cloud-one { top: 108px; left: -45px; width: 240px; height: 100px; }
.dream-theme .cloud-two { top: 370px; right: -34px; animation-duration: 27s; animation-delay: -9s; animation-direction: reverse; }
.dream-theme .cloud-three { top: 28px; left: 48%; width: 144px; height: 60px; opacity: .4; animation-delay: -17s; }
.dream-theme .cloud-four { bottom: 92px; left: 4%; opacity: .4; animation-duration: 32s; animation-delay: -12s; }
.dream-theme .dream-mountains {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 155px;
  background: #d9ecec;
  opacity: .48;
  clip-path: polygon(0 72%, 6% 72%, 6% 52%, 10% 52%, 10% 30%, 14% 30%, 14% 12%, 18% 12%, 18% 30%, 22% 30%, 22% 55%, 28% 55%, 28% 78%, 60% 78%, 60% 64%, 66% 64%, 66% 42%, 70% 42%, 70% 22%, 74% 22%, 74% 42%, 78% 42%, 78% 65%, 85% 65%, 85% 48%, 90% 48%, 90% 68%, 100% 68%, 100% 100%, 0 100%);
}
@keyframes cloud-drift {
  0%, 100% { transform: translate3d(-20px, 3px, 0) rotate(-1deg); }
  30% { transform: translate3d(10px, -15px, 0) rotate(.8deg); }
  60% { transform: translate3d(45px, -6px, 0) rotate(-.6deg); }
  80% { transform: translate3d(15px, 7px, 0) rotate(.4deg); }
}
.dream-theme .topbar { border-bottom-color: #cbdfe7; }
.dream-theme .brand-name,
.dream-theme .brand-desc,
.dream-theme .profile-qq,
.dream-theme .card-title,
.dream-theme .score-value,
.dream-theme .rating-badge,
.dream-theme .footer-logo { letter-spacing: 0; }
.dream-theme .brand-seal {
  color: #397ba6;
  background: #e0efef;
  border-color: #6f9daa;
  box-shadow: 3px 3px #c5dedf;
}
.dream-theme img.seal-mark { display: block; object-fit: contain; image-rendering: auto; }
.dream-theme .hero-note { color: #548579; }
.dream-theme .hero-note .icon { color: #548579; }
.dream-theme .intro { color: #637d89; line-height: 2; }
.dream-theme .window { --win-edge: #698fa9; --win-shadow-color: #d0e4ed; }
.dream-theme .window-bar {
  color: #426a82;
  background: #e0edf3;
  border-bottom-color: #aac8d8;
  min-height: 42px;
}
.dream-theme .window-pips span { background: #81aaa4; }
.dream-theme .window-pips span:last-child { background: #d4b56a; }
.dream-theme .input-wrap { background: #f6fafc; border-color: #bfd3df; box-shadow: inset 2px 2px #edf4f7; }
.dream-theme .submit { border-color: #32627f; box-shadow: 3px 3px #b5cddc; }
.dream-theme .guide-text { background: #f6fafc; border-color: #bfd3df; box-shadow: inset 2px 2px #edf4f7; }
.dream-theme .guide-text strong { color: #397ba6; }
.dream-theme .profile-section { background: transparent; border: 0; border-left: 2px solid #d1e3e7; }
.dream-theme .section-title { color: #4f7d79; border-bottom-color: #e0edef; }
.dream-theme .profile-head { background: #f8fcfc; }
.dream-theme .tag { color: #527d77; border-color: #b9d7ce; background: #eef7f3; }
.dream-theme .perks { border-top-color: #d0e3e7; }
.dream-theme .perk-icon { color: #5a8d85; background: #e4f0eb; border-color: #b3d0c8; box-shadow: 2px 2px #d3e5df; }
.dream-theme .footer { position: relative; border-top-color: #cbdfe7; }
@media (max-width: 780px) {
  .dream-theme .cloud-one { width: 120px; height: 50px; top: 90px; left: -65px; opacity: .35; }
  .dream-theme .cloud-two { width: 120px; height: 50px; top: 220px; right: -65px; opacity: .35; }
  .dream-theme .cloud-three,
  .dream-theme .cloud-four { display: none; }
  .dream-theme .dream-mountains { height: 88px; }
}
@media (prefers-reduced-motion: reduce) {
  .dream-theme .dream-cloud { animation: none; }
}
