:root{
  --dj-motion-ease:cubic-bezier(.22,.8,.22,1);
  --dj-motion-spring:cubic-bezier(.16,1,.3,1);
  --dj-motion-blue:59,109,246;
  --dj-motion-violet:124,92,255;
  --dj-motion-cyan:35,181,235;
}

html.dj-motion-ready{scroll-behavior:smooth}
html.dj-motion-ready body{min-height:100vh}
body.dj-login-screen{
  background:
    radial-gradient(circle at 14% 16%,rgba(var(--dj-motion-violet),.12),transparent 31%),
    radial-gradient(circle at 88% 14%,rgba(var(--dj-motion-cyan),.12),transparent 29%),
    linear-gradient(145deg,#fafaff 0%,#f5f7ff 52%,#f8fbff 100%);
}
body.dj-login-screen #app>div{background-color:transparent!important;background-image:none!important}
body.dj-login-screen .dj-login-card{
  border-color:rgba(255,255,255,.82)!important;
  background:rgba(255,255,255,.82)!important;
  box-shadow:0 28px 80px rgba(35,48,98,.14),0 2px 10px rgba(35,48,98,.05)!important;
  backdrop-filter:blur(22px) saturate(125%);
}

#dj-admin-ambient{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
#app{position:relative;z-index:1}
#dj-admin-ambient::before,#dj-admin-ambient::after{
  content:"";
  position:absolute;
  width:38vw;
  height:38vw;
  min-width:420px;
  min-height:420px;
  border-radius:50%;
  filter:blur(4px);
  opacity:.12;
  will-change:transform;
}
body.dj-login-screen #dj-admin-ambient::before,body.dj-login-screen #dj-admin-ambient::after{opacity:.2}
#dj-admin-ambient::before{
  left:-15vw;
  top:-22vw;
  background:radial-gradient(circle,rgba(var(--dj-motion-violet),.72),transparent 68%);
  animation:djAmbientOne 18s ease-in-out infinite alternate;
}
#dj-admin-ambient::after{
  right:-18vw;
  bottom:-22vw;
  background:radial-gradient(circle,rgba(var(--dj-motion-cyan),.6),transparent 69%);
  animation:djAmbientTwo 21s ease-in-out infinite alternate;
}

#dj-route-progress{
  position:fixed;
  inset:0 auto auto 0;
  z-index:99999;
  width:100%;
  height:3px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}
#dj-route-progress::before{
  content:"";
  display:block;
  width:42%;
  height:100%;
  border-radius:0 999px 999px 0;
  background:linear-gradient(90deg,#3b82f6,#7c5cff,#21b5eb);
  box-shadow:0 0 18px rgba(var(--dj-motion-blue),.55);
  transform:translateX(-120%);
}
#dj-route-progress.is-active{opacity:1}
#dj-route-progress.is-active::before{animation:djProgress 1.05s var(--dj-motion-ease) infinite}

.dj-page-enter{animation:djPageIn .52s var(--dj-motion-spring) both}
.dj-login-card{position:relative;isolation:isolate;overflow:hidden;animation:djLoginIn .7s var(--dj-motion-spring) both}
.dj-login-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:-1;
  border-radius:inherit;
  background:radial-gradient(360px circle at var(--dj-x,50%) var(--dj-y,0%),rgba(var(--dj-motion-blue),.12),transparent 55%);
  opacity:.85;
  pointer-events:none;
}
.dj-login-form>*{animation:djFieldIn .46s var(--dj-motion-spring) both}
.dj-login-form>*:nth-child(2){animation-delay:45ms}
.dj-login-form>*:nth-child(3){animation-delay:90ms}
.dj-login-form>*:nth-child(4){animation-delay:135ms}
.dj-login-form>*:nth-child(5){animation-delay:180ms}

.dj-motion-reveal{opacity:0;transform:translate3d(0,13px,0) scale(.992);filter:blur(3px)}
.dj-motion-reveal.dj-motion-visible{opacity:1;transform:none;filter:none;transition:opacity .5s var(--dj-motion-ease),transform .58s var(--dj-motion-spring),filter .5s ease}

.dj-motion-surface{--dj-x:50%;--dj-y:50%;position:relative;isolation:isolate;transition:transform .24s var(--dj-motion-ease),box-shadow .24s ease,border-color .24s ease}
.dj-motion-surface::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:radial-gradient(420px circle at var(--dj-x) var(--dj-y),rgba(var(--dj-motion-blue),.085),transparent 52%);
  opacity:0;
  pointer-events:none;
  transition:opacity .26s ease;
}
.dj-motion-surface>*{position:relative;z-index:1}
@media (hover:hover) and (pointer:fine){
  .dj-motion-surface:hover{transform:translateY(-2px);border-color:rgba(var(--dj-motion-blue),.2)!important;box-shadow:0 16px 38px rgba(22,35,70,.075)}
  .dj-motion-surface:hover::after{opacity:1}
}

html.dj-motion-ready button,html.dj-motion-ready a,html.dj-motion-ready input,html.dj-motion-ready textarea,html.dj-motion-ready select{
  transition-property:transform,box-shadow,border-color,background-color,color,opacity;
  transition-duration:.2s;
  transition-timing-function:var(--dj-motion-ease);
}
@media (hover:hover) and (pointer:fine){
  html.dj-motion-ready button:not(:disabled):hover{transform:translateY(-1px)}
  html.dj-motion-ready a[class*="button"]:hover,html.dj-motion-ready a[class*="btn"]:hover{transform:translateY(-1px)}
}
html.dj-motion-ready button:not(:disabled):active,html.dj-motion-ready a[class*="button"]:active,html.dj-motion-ready a[class*="btn"]:active{transform:scale(.975)}
html.dj-motion-ready input:focus,html.dj-motion-ready textarea:focus,html.dj-motion-ready select:focus{box-shadow:0 0 0 4px rgba(var(--dj-motion-blue),.1)}

.dj-table-row{transition:transform .2s var(--dj-motion-ease),background-color .2s ease,box-shadow .2s ease}
@media (hover:hover) and (pointer:fine){
  .dj-table-row:hover{transform:translateX(3px);box-shadow:-3px 0 0 rgba(var(--dj-motion-blue),.65)}
}

[role="dialog"],[data-state="open"][role="menu"],[data-state="open"][role="listbox"],[data-radix-popper-content-wrapper]>*{
  transform-origin:var(--radix-popover-content-transform-origin,50% 0);
  animation:djPopoverIn .28s var(--dj-motion-spring) both;
}
[data-state="open"][class*="overlay"],[data-state="open"][class*="Overlay"]{animation:djOverlayIn .22s ease both;backdrop-filter:blur(7px) saturate(115%)}
[data-state="closed"][role="dialog"],[data-state="closed"][role="menu"]{animation:djPopoverOut .16s ease both}

.dj-toast-enter{animation:djToastIn .48s var(--dj-motion-spring) both}
.dj-nav-active{position:relative;overflow:hidden}
.dj-nav-active::after{content:"";position:absolute;inset:auto 12% 3px;height:2px;border-radius:999px;background:currentColor;opacity:.55;animation:djNavLine .35s var(--dj-motion-spring) both}

.dj-loading-shimmer{position:relative;overflow:hidden}
.dj-loading-shimmer::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.58) 48%,transparent 64%);transform:translateX(-100%);animation:djShimmer 1.45s ease-in-out infinite;pointer-events:none}

@keyframes djPageIn{from{opacity:0;transform:translate3d(0,10px,0);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes djLoginIn{from{opacity:0;transform:translate3d(0,20px,0) scale(.975);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes djFieldIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes djPopoverIn{from{opacity:0;transform:translateY(-5px) scale(.965);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
@keyframes djPopoverOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-3px) scale(.98)}}
@keyframes djOverlayIn{from{opacity:0}to{opacity:1}}
@keyframes djToastIn{0%{opacity:0;transform:translate3d(18px,-8px,0) scale(.92)}65%{opacity:1;transform:translate3d(-2px,0,0) scale(1.015)}100%{transform:none}}
@keyframes djProgress{0%{transform:translateX(-120%)}65%{transform:translateX(145%)}100%{transform:translateX(260%)}}
@keyframes djNavLine{from{opacity:0;transform:scaleX(.2)}to{opacity:.55;transform:scaleX(1)}}
@keyframes djShimmer{0%{transform:translateX(-120%)}65%,100%{transform:translateX(140%)}}
@keyframes djAmbientOne{to{transform:translate3d(8vw,5vw,0) scale(1.12)}}
@keyframes djAmbientTwo{to{transform:translate3d(-7vw,-5vw,0) scale(1.08)}}

@media(max-width:768px){
  #dj-admin-ambient::before,#dj-admin-ambient::after{opacity:.08}
  .dj-motion-reveal{transform:translate3d(0,8px,0);filter:none}
  .dj-motion-surface:hover{transform:none;box-shadow:none}
  .dj-table-row:hover{transform:none;box-shadow:none}
}

@media(prefers-reduced-motion:reduce){
  html.dj-motion-ready{scroll-behavior:auto}
  html.dj-motion-ready *,html.dj-motion-ready *::before,html.dj-motion-ready *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .dj-motion-reveal{opacity:1;transform:none;filter:none}
}

#dj-ooeex-dispute-entry{position:fixed;right:22px;bottom:22px;z-index:9998;display:flex;align-items:center;gap:8px;padding:11px 17px;border:1px solid rgba(255,255,255,.52);border-radius:999px;background:linear-gradient(135deg,#121a31,#273760);box-shadow:0 14px 38px rgba(15,23,42,.26);color:#fff;text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.01em;cursor:grab;touch-action:none;user-select:none;transition:transform .22s ease,box-shadow .22s ease}
#dj-ooeex-dispute-entry:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(15,23,42,.34)}
#dj-ooeex-dispute-entry.dj-dispute-dragging{cursor:grabbing;transform:none;transition:none;box-shadow:0 20px 50px rgba(15,23,42,.4)}
#dj-ooeex-dispute-entry span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffb020;color:#172033;font-weight:900}
@media(max-width:640px){#dj-ooeex-dispute-entry{right:12px;bottom:12px;padding:10px 14px}}
