:root{
  --mystic-night:#050309;--mystic-violet:#160c22;--mystic-panel:rgba(24,13,38,.72);
  --mystic-line:rgba(242,219,167,.16);--mystic-gold:#e9c77d;--mystic-purple:#af77e7;
  --mystic-text:#fff9eb;--mystic-muted:#cbbfd3;
}
html{scroll-behavior:smooth}
body.mystic-unified{
  min-height:100vh!important;color:var(--mystic-text)!important;
  background:
    radial-gradient(circle at 8% 0,rgba(125,62,178,.24),transparent 28rem),
    radial-gradient(circle at 94% 16%,rgba(35,126,171,.16),transparent 27rem),
    radial-gradient(circle at 50% 86%,rgba(188,125,47,.1),transparent 32rem),
    linear-gradient(180deg,#0c0613,#06030a 62%,#030205)!important;
  background-attachment:fixed!important;overflow-x:hidden;
}
.mystic-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.mystic-atmosphere::before,.mystic-atmosphere::after{
  content:"";position:absolute;inset:-20%;
  background-image:radial-gradient(circle,rgba(255,244,211,.78) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(176,124,232,.46) 0 1px,transparent 2px);
  background-size:97px 97px,163px 163px;opacity:.18;animation:mysticStars 60s linear infinite;
}
.mystic-atmosphere::after{opacity:.08;filter:blur(1px);animation-duration:86s;animation-direction:reverse}
.mystic-aurora{position:absolute;width:38rem;height:38rem;border-radius:50%;filter:blur(110px);opacity:.09;animation:mysticAurora 17s ease-in-out infinite}
.mystic-aurora.a{left:-18rem;top:18%;background:#954bcc}.mystic-aurora.b{right:-20rem;top:-10%;background:#3299c4;animation-delay:-8s}
body.mystic-unified>.app,body.mystic-unified>.wrap,body.mystic-unified>.shell,body.mystic-unified>main,
body.mystic-unified>.nature-layer+main{position:relative;z-index:2}
body.mystic-unified .topbar,body.mystic-unified .top,body.mystic-unified .header{
  position:relative;z-index:30;border-color:var(--mystic-line)!important;
}
body.mystic-unified .topbar::after,body.mystic-unified .top::after{
  content:"";position:absolute;left:12%;right:12%;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(233,199,125,.35),transparent);
}
body.mystic-unified h1,body.mystic-unified h2,body.mystic-unified h3,
body.mystic-unified .title,body.mystic-unified .modal-title{letter-spacing:-.035em}
body.mystic-unified .card,body.mystic-unified .panel,body.mystic-unified .hero,
body.mystic-unified .tool-card,body.mystic-unified .info-card,body.mystic-unified .result-card,
body.mystic-unified .detail-card,body.mystic-unified .calendar-card,body.mystic-unified .rune-card,
body.mystic-unified .angel-card,body.mystic-unified .moon-card,body.mystic-unified .festival-card,
body.mystic-unified .modal-content,body.mystic-unified .daily-card,body.mystic-unified .moon-mini{
  border-color:var(--mystic-line)!important;
  background-color:rgba(23,12,36,.68)!important;
  box-shadow:0 20px 55px rgba(0,0,0,.3)!important;
  backdrop-filter:blur(16px);
}
body.mystic-unified input:not([type="checkbox"]):not([type="radio"]),body.mystic-unified select,body.mystic-unified textarea{
  border-color:rgba(242,219,167,.17)!important;background:rgba(5,3,9,.38)!important;color:#fff!important;
}
body.mystic-unified input:focus,body.mystic-unified select:focus,body.mystic-unified textarea:focus{
  border-color:rgba(233,199,125,.58)!important;box-shadow:0 0 0 3px rgba(233,199,125,.09)!important;outline:none;
}
body.mystic-unified .btn-primary,body.mystic-unified .primary,body.mystic-unified .btn-gold,
body.mystic-unified button[type="submit"]:not(.danger):not(.close):not(.btn-close){
  background:linear-gradient(135deg,#edd08a,#b878df)!important;color:#170c20!important;border:0!important;
  box-shadow:0 10px 26px rgba(170,101,214,.17);
}
body.mystic-unified a,body.mystic-unified button{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
body.mystic-unified a:active,body.mystic-unified button:active{transform:scale(.975)}
.mystic-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:radial-gradient(circle,#29143d,#0a050f 58%,#030205);transition:opacity .55s ease,visibility .55s ease}
.mystic-loader.is-hidden{opacity:0;visibility:hidden}
.mystic-loader-inner{text-align:center}
.mystic-loader-logo{position:relative;width:104px;height:104px;margin:auto;display:grid;place-items:center}
.mystic-loader-logo::before,.mystic-loader-logo::after{content:"";position:absolute;inset:0;border:1px solid rgba(233,199,125,.4);border-radius:32px;animation:mysticSpin 2.8s linear infinite}
.mystic-loader-logo::after{inset:14px;border-color:rgba(174,111,231,.52);animation-direction:reverse;animation-duration:1.9s}
.mystic-loader-logo img{width:64px;height:64px;object-fit:contain;border-radius:20px;filter:drop-shadow(0 0 17px rgba(233,199,125,.28))}
.mystic-loader b{display:block;margin-top:17px;font-family:Georgia,serif;font-size:19px}.mystic-loader small{display:block;margin-top:6px;color:var(--mystic-muted);font-size:9px;text-transform:uppercase;letter-spacing:.16em}
.mystic-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
.mystic-reveal.visible{opacity:1;transform:none}
@keyframes mysticStars{to{transform:translate3d(97px,163px,0)}}@keyframes mysticAurora{50%{transform:translate(4rem,-3rem) scale(1.16)}}@keyframes mysticSpin{to{transform:rotate(360deg)}}
@media(max-width:650px){
  body.mystic-unified{background-attachment:scroll!important;-webkit-overflow-scrolling:touch}
  .mystic-atmosphere::before,.mystic-atmosphere::after{animation:none;opacity:.1}
  .mystic-aurora{display:none}
  body.mystic-unified .card,body.mystic-unified .panel,body.mystic-unified .hero,
  body.mystic-unified .tool-card,body.mystic-unified .info-card,body.mystic-unified .modal-content{backdrop-filter:none}
  .mystic-reveal{transition-duration:.35s}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.mystic-reveal{opacity:1;transform:none}}
