/* ---------------------------------------------------------
   Prime Zone — Auth pages (login.php / register.php)
   Dedicated dark, animated design. Loaded only on auth pages.
--------------------------------------------------------- */
:root{
    --ax-bg:#07070F;
    --ax-glass-brd:rgba(255,255,255,0.09);
    --ax-cyan:#3FE8CE;
    --ax-violet:#9B7CFF;
    --ax-magenta:#FF5FB8;
    --ax-gold:#FFC857;
    --ax-text:#F3F1FA;
    --ax-muted:#8C8AA8;
    --ax-font-head:'Sora',sans-serif;
    --ax-font-body:'Inter',sans-serif;
}
.ax-page *{box-sizing:border-box;}
html:has(.ax-page), .ax-page{height:100%;}
body.ax-page{
    margin:0;background:var(--ax-bg);color:var(--ax-text);font-family:var(--ax-font-body);
    -webkit-font-smoothing:antialiased;overflow-x:hidden;
    padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
    display:flex;align-items:center;justify-content:center;min-height:100%;padding:32px 18px;
    position:relative;
}

.ax-aurora{position:fixed;inset:0;z-index:0;overflow:hidden;}
.ax-blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:0.55;}
.ax-b1{width:480px;height:480px;background:var(--ax-violet);top:-160px;left:-120px;animation:axDrift1 16s ease-in-out infinite;}
.ax-b2{width:420px;height:420px;background:var(--ax-cyan);bottom:-160px;right:-100px;animation:axDrift2 20s ease-in-out infinite;}
.ax-b3{width:320px;height:320px;background:var(--ax-magenta);bottom:10%;left:8%;opacity:0.28;animation:axDrift3 24s ease-in-out infinite;}
@keyframes axDrift1{0%,100%{transform:translate(0,0);}50%{transform:translate(60px,50px);}}
@keyframes axDrift2{0%,100%{transform:translate(0,0);}50%{transform:translate(-50px,-40px);}}
@keyframes axDrift3{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(30px,-30px) scale(1.15);}}
.ax-grain{position:fixed;inset:0;z-index:1;pointer-events:none;
    background-image:radial-gradient(rgba(255,255,255,0.035) 1px, transparent 1px);
    background-size:3px 3px;opacity:0.5;}

.ax-orbit-wrap{position:absolute;top:-30px;left:50%;transform:translateX(-50%);width:220px;height:80px;z-index:3;}
.ax-chip{
    position:absolute;top:0;padding:6px 12px;border-radius:99px;font-family:var(--ax-font-head);font-weight:700;font-size:10.5px;
    background:rgba(255,255,255,0.06);border:1px solid var(--ax-glass-brd);backdrop-filter:blur(6px);
    color:var(--ax-text);white-space:nowrap;
}
.ax-chip1{left:0;animation:axFloat1 5s ease-in-out infinite;}
.ax-chip2{right:0;animation:axFloat2 6s ease-in-out infinite;}
.ax-chip3{left:50%;transform:translateX(-50%);top:-18px;animation:axFloat3 4.5s ease-in-out infinite;
    background:linear-gradient(135deg,var(--ax-gold),#B9812F);color:#2A1B03;border:none;}
@keyframes axFloat1{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
@keyframes axFloat2{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
@keyframes axFloat3{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,-8px);}}

.ax-card-outer{
    position:relative;z-index:2;width:100%;max-width:400px;margin-top:56px;
    border-radius:26px;padding:1.5px;
    background:conic-gradient(from var(--ax-ang,0deg),var(--ax-cyan),var(--ax-violet),var(--ax-magenta),var(--ax-cyan));
    animation:axSpin 6s linear infinite;
}
@keyframes axSpin{to{--ax-ang:360deg;}}
@property --ax-ang{syntax:'<angle>';inherits:false;initial-value:0deg;}

.ax-card{border-radius:24.5px;background:rgba(12,12,22,0.86);backdrop-filter:blur(18px);padding:34px 28px 28px;}

.ax-logo-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:22px;text-decoration:none;}
.ax-logo-mark{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--ax-cyan),var(--ax-violet));
    display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ax-logo-mark svg{width:14px;height:14px;}
.ax-logo-text{font-family:var(--ax-font-head);font-weight:700;font-size:14px;letter-spacing:0.3px;color:var(--ax-text);}

.ax-tabs{position:relative;display:flex;background:rgba(255,255,255,0.05);border:1px solid var(--ax-glass-brd);
    border-radius:99px;padding:4px;margin-bottom:26px;}
.ax-tab-indicator{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:99px;
    background:linear-gradient(135deg,var(--ax-cyan),var(--ax-violet));transition:transform .35s cubic-bezier(.65,0,.35,1);}
.ax-tab{position:relative;z-index:1;flex:1;text-align:center;padding:10px 0;font-size:13.5px;font-weight:600;
    cursor:pointer;color:var(--ax-muted);transition:color .3s ease;user-select:none;text-decoration:none;display:block;}
.ax-tab.active{color:#07070F;}

.ax-title{font-family:var(--ax-font-head);font-size:21px;font-weight:700;margin:0 0 4px;color:var(--ax-text);}
.ax-subtitle{color:var(--ax-muted);font-size:13px;margin:0 0 22px;}

.ax-field{margin-bottom:15px;}
.ax-field label{display:block;font-size:12px;font-weight:600;color:var(--ax-muted);margin-bottom:6px;}
.ax-field .req{color:var(--ax-magenta);}
.ax-input-wrap{position:relative;display:flex;align-items:center;}
.ax-input-wrap svg{position:absolute;left:14px;width:15px;height:15px;color:var(--ax-muted);flex-shrink:0;transition:color .2s;}
.ax-input-wrap input{
    width:100%;padding:12px 14px 12px 40px;border-radius:13px;border:1.5px solid var(--ax-glass-brd);
    background:rgba(255,255,255,0.04);color:var(--ax-text);font-size:14px;font-family:var(--ax-font-body);
    outline:none;transition:border-color .2s ease, box-shadow .2s ease;
}
.ax-input-wrap input::placeholder{color:#5C5A78;}
.ax-input-wrap input:focus{border-color:var(--ax-cyan);box-shadow:0 0 0 3px rgba(63,232,206,0.15);}
.ax-input-wrap:has(input:focus) svg{color:var(--ax-cyan);}
.ax-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}

.ax-btn-main{
    position:relative;overflow:hidden;width:100%;padding:13px 0;border:none;border-radius:13px;
    font-family:var(--ax-font-body);font-weight:700;font-size:14.5px;cursor:pointer;color:#07070F;margin-top:8px;
    background:linear-gradient(135deg,var(--ax-cyan),var(--ax-violet));
    box-shadow:0 12px 28px rgba(155,124,255,0.28);
}
.ax-btn-main::before{
    content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;
    background:linear-gradient(120deg,transparent,rgba(255,255,255,0.55),transparent);
    transform:skewX(-20deg);animation:axShine 3.2s ease-in-out infinite;
}
@keyframes axShine{0%{left:-60%;}45%{left:120%;}100%{left:120%;}}
.ax-btn-main:disabled{opacity:0.6;cursor:not-allowed;}

.ax-switch-line{text-align:center;margin-top:18px;font-size:13px;color:var(--ax-muted);}
.ax-switch-line a{color:var(--ax-gold);font-weight:600;text-decoration:none;}

.ax-formpane{animation:axFadeUp .4s ease;}
@keyframes axFadeUp{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}

.ax-alert{padding:12px 16px;border-radius:12px;font-size:13px;margin-bottom:18px;}
.ax-alert-error{background:rgba(255,95,184,0.12);color:#FF9BD4;border:1px solid rgba(255,95,184,0.25);}
.ax-alert-success{background:rgba(63,232,206,0.12);color:#8FF2DF;border:1px solid rgba(63,232,206,0.25);}

@media (prefers-reduced-motion:reduce){
    .ax-blob,.ax-chip1,.ax-chip2,.ax-chip3,.ax-card-outer,.ax-btn-main::before{animation:none;}
}
