/* admin-polish.css — v12 premium admin + login */
:root{--ap-ease:cubic-bezier(.22,1,.36,1);--ap-red:#ef4444;--ap-orange:#f97316;}
body{-webkit-font-smoothing:antialiased;overflow-x:hidden;}
/* LOGIN — animated mesh + floating orbs */
.login-wrap{min-height:100svh;display:grid;place-items:center;padding:clamp(1rem,4vw,2.5rem);overflow:hidden;}
.login-wrap::after{content:"";position:absolute;inset:-20%;z-index:-2;pointer-events:none;
  background:conic-gradient(from 0deg at 50% 50%,rgba(239,68,68,.16),transparent 25%,rgba(249,115,22,.12),transparent 60%,rgba(239,68,68,.16));
  filter:blur(80px);animation:apSpin 28s linear infinite;}
@keyframes apSpin{to{transform:rotate(360deg)}}
.login-card{position:relative;animation:apRise .9s var(--ap-ease) both;backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);
  background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015))!important;border:1px solid rgba(255,255,255,.09)!important;}
.login-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
  background:conic-gradient(from var(--ap-a,0deg),transparent 0 70%,var(--ap-red),var(--ap-orange),transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:apBorder 6s linear infinite;}
@property --ap-a{syntax:"<angle>";inherits:false;initial-value:0deg;}
@keyframes apBorder{to{--ap-a:360deg}}
@keyframes apRise{from{opacity:0;transform:translateY(28px) scale(.97);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.login>*{animation:apItem .7s var(--ap-ease) both;}
.login>*:nth-child(1){animation-delay:.15s}.login>*:nth-child(2){animation-delay:.22s}.login>*:nth-child(3){animation-delay:.29s}
.login>*:nth-child(4){animation-delay:.36s}.login>*:nth-child(5){animation-delay:.43s}.login>*:nth-child(6){animation-delay:.5s}.login>*:nth-child(7){animation-delay:.57s}
@keyframes apItem{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.art-pills .pill{animation:apFloat 5s ease-in-out infinite;}
.art-pills .pill:nth-child(2){animation-delay:-1.6s}.art-pills .pill:nth-child(3){animation-delay:-3.2s}
@keyframes apFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.inp input{border-radius:14px!important;}
.inp:focus-within input{border-color:rgba(239,68,68,.65)!important;box-shadow:0 0 0 4px rgba(239,68,68,.14),0 10px 30px -14px rgba(239,68,68,.6)!important;}
.inp:focus-within .lead{color:var(--ap-red);transform:scale(1.1);}
.inp .lead{transition:color .3s,transform .4s var(--ap-ease);}
.btn{position:relative;overflow:hidden;transition:transform .35s var(--ap-ease),box-shadow .35s,filter .3s;}
.btn:not(.ghost){background:linear-gradient(135deg,var(--ap-red),var(--ap-orange))!important;background-size:200% 200%!important;}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .7s var(--ap-ease);}
.btn:hover::after{left:130%;}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px -16px rgba(239,68,68,.75);}
.btn:active{transform:scale(.97);}
.btn svg{transition:transform .35s var(--ap-ease);}.btn:hover svg{transform:translateX(3px);}
.err:not(:empty){animation:apShake .45s;}
@keyframes apShake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
/* DASHBOARD */
#dashView:not(.hidden) main>*{animation:apItem .7s var(--ap-ease) both;}
#dashView main>*:nth-child(2){animation-delay:.08s}#dashView main>*:nth-child(3){animation-delay:.16s}#dashView main>*:nth-child(4){animation-delay:.24s}
header.top{backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);}
.glass{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.012));transition:transform .5s var(--ap-ease),box-shadow .5s,border-color .5s;}
.panel,.stat,.hero-total{border-radius:22px!important;}
.stat:hover,.panel:hover,.hero-total:hover{border-color:rgba(239,68,68,.35)!important;}
.hero-total .amt{background:linear-gradient(90deg,#fff,#fecaca,#fb923c,#fff);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:apShimmer 6s linear infinite;}
@keyframes apShimmer{to{background-position:250% 0}}
.quick button{transition:transform .3s var(--ap-ease),background .3s,border-color .3s;}
.quick button:hover{transform:translateY(-2px);border-color:rgba(239,68,68,.5);}
input,select{transition:border-color .3s,box-shadow .3s;}
input:focus,select:focus{outline:none;border-color:rgba(239,68,68,.6)!important;box-shadow:0 0 0 4px rgba(239,68,68,.12)!important;}
.live i{box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:apPulse 2s infinite;}
@keyframes apPulse{70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.toast{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:16px!important;}
/* responsive */
@media (max-width:900px){.login-card{grid-template-columns:1fr!important;}.login-art{display:none!important;}}
@media (max-width:640px){
  .login-card{width:100%;border-radius:22px!important;}
  .top-grid,.grid,.stats{grid-template-columns:1fr!important;}
  .row2{grid-template-columns:1fr!important;}
  .panel.sticky{position:relative!important;top:auto!important;}
  .greet{flex-direction:column;align-items:flex-start!important;gap:.8rem;}
  .hero-total .amt{font-size:clamp(2rem,11vw,3rem)!important;}
  #logoutBtn span{display:none;}
}
@media (prefers-reduced-motion:reduce){.login-wrap::after,.login-card::before,.art-pills .pill,.hero-total .amt{animation:none!important;}}
