/* NatierTix TEAM — team.css */
:root{
  --navy:#040323;--navy2:#080620;--navy3:#0d0b2a;
  --gold:#e79a1f;--gold-dk:#b03910;
  --logo-grad:linear-gradient(90deg,#e79a1f,#b03910);
  --green:#22c55e;--yellow:#f59e0b;--red:#ef4444;
  --white:#f0f0fa;--sub:rgba(255,255,255,.45);
  --ff-disp:'Bebas Neue','Barlow Condensed',sans-serif;
  --ff-body:'Barlow',sans-serif;--ff-mono:'Space Mono',monospace;
  --r:8px;--r-lg:14px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:var(--ff-body);background:var(--navy);color:var(--white);min-height:100vh;}
a{color:inherit;text-decoration:none;}button{cursor:pointer;font-family:var(--ff-body);border:none;background:none;}

/* Login */
.team-login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#040323,#0d0b2a);padding:1.5rem;}
.team-login-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2.5rem 2rem;width:100%;max-width:380px;text-align:center;}
.team-login-logo{width:80px;margin:0 auto 1rem;filter:drop-shadow(0 4px 16px rgba(231,154,31,.3));}
.team-login-title{font-family:var(--ff-disp);font-size:2rem;font-weight:900;letter-spacing:.04em;line-height:1.1;margin-bottom:.35rem;}
.team-login-title span{background:var(--logo-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.team-login-sub{font-size:.78rem;color:var(--sub);margin-bottom:1.5rem;line-height:1.5;}

/* Nav */
.team-nav{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.2rem;background:rgba(4,3,35,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;z-index:100;}
.team-nav-title{font-family:var(--ff-disp);font-size:1.2rem;font-weight:900;letter-spacing:.04em;flex:1;}
.team-nav-title span{background:var(--logo-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.team-nav-right{display:flex;align-items:center;gap:.8rem;}
.team-nav-user{font-size:.75rem;font-weight:600;color:rgba(255,255,255,.6);}
.team-nav-logout{font-family:var(--ff-mono);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);padding:.35rem .7rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--r);transition:all .2s;}
.team-nav-logout:hover{color:#ef4444;border-color:rgba(239,68,68,.3);}

/* Content */
.team-content{max-width:540px;margin:0 auto;padding:1.5rem 1rem;}

/* Stats bar */
.team-stats{display:flex;align-items:center;justify-content:center;gap:1.5rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg);padding:1rem;margin-bottom:1.5rem;flex-wrap:wrap;}
.ts-item{text-align:center;}
.ts-n{font-family:var(--ff-disp);font-size:1.5rem;font-weight:900;color:var(--gold);display:block;line-height:1;}
.ts-l{font-size:.65rem;color:var(--sub);display:block;margin-top:.1rem;font-family:var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;}
.ts-div{width:1px;height:36px;background:rgba(255,255,255,.1);}

/* Scanner box */
.team-scanner-wrap{margin-bottom:1.5rem;}
.team-scanner-box{position:relative;aspect-ratio:1;max-width:320px;margin:0 auto;background:#000;border-radius:16px;overflow:hidden;border:2px solid rgba(255,255,255,.1);}
.team-scanner-idle{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background:var(--navy2);}
.scan-reticle{position:absolute;inset:15px;pointer-events:none;}
.sr-corner{position:absolute;width:24px;height:24px;border-color:var(--gold);border-style:solid;}
.sr-tl{top:0;left:0;border-width:3px 0 0 3px;}
.sr-tr{top:0;right:0;border-width:3px 3px 0 0;}
.sr-bl{bottom:0;left:0;border-width:0 0 3px 3px;}
.sr-br{bottom:0;right:0;border-width:0 3px 3px 0;}
.sr-scanline{position:absolute;left:0;right:0;top:50%;height:2px;background:linear-gradient(to right,transparent,var(--gold),transparent);animation:scanLine 2s ease-in-out infinite;}
@keyframes scanLine{0%,100%{top:10%;opacity:0}20%{opacity:1}80%{opacity:1}50%{top:90%}}

/* Manual entry */
.team-manual{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg);padding:1.2rem;margin-top:1rem;}

/* Forms */
.team-field{margin-bottom:1rem;}
.team-input{width:100%;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.12);border-radius:var(--r);padding:.65rem .9rem;color:var(--white);font-family:var(--ff-body);font-size:.9rem;transition:border-color .2s;appearance:none;}
.team-input::placeholder{color:rgba(255,255,255,.25);}
.team-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(231,154,31,.1);}
.team-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--logo-grad);color:#fff;font-family:var(--ff-mono);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.3rem;border-radius:var(--r);transition:opacity .2s;white-space:nowrap;box-shadow:0 2px 8px rgba(176,57,16,.25);}
.team-btn:hover{opacity:.9;}
.team-btn-outline{background:rgba(255,255,255,.07);color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.15);box-shadow:none;}
.team-btn-outline:hover{background:rgba(255,255,255,.12);}
.team-err{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);color:#ff6b6b;padding:.75rem 1rem;border-radius:var(--r);font-size:.82rem;margin-bottom:1rem;text-align:left;}

/* Result panel */
.team-result{border-radius:var(--r-lg);padding:1.5rem;text-align:center;margin-bottom:1.5rem;}
.team-result-ok{background:rgba(34,197,94,.08);border:2px solid rgba(34,197,94,.3);}
.team-result-warn{background:rgba(251,191,36,.08);border:2px solid rgba(251,191,36,.3);}
.team-result-error{background:rgba(239,68,68,.08);border:2px solid rgba(239,68,68,.3);}
.result-icon{font-size:2.5rem;margin-bottom:.5rem;}
.result-title{font-family:var(--ff-disp);font-size:1.6rem;font-weight:900;letter-spacing:.04em;margin-bottom:.8rem;}
.team-result-ok    .result-title{color:var(--green);}
.team-result-warn  .result-title{color:var(--yellow);}
.team-result-error .result-title{color:var(--red);}
.result-body{text-align:left;background:rgba(255,255,255,.04);border-radius:var(--r);padding:.8rem 1rem;margin-bottom:.5rem;}
.result-row{display:flex;justify-content:space-between;font-size:.82rem;padding:.3rem 0;border-bottom:1px solid rgba(255,255,255,.06);}
.result-row:last-child{border:none;}
.result-row span{color:rgba(255,255,255,.5);}
.result-row strong{color:var(--white);font-weight:600;}

/* Recent scans */
.team-recent{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:var(--r-lg);overflow:hidden;}
.team-recent-title{font-family:var(--ff-mono);font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.35);padding:.8rem 1.2rem;border-bottom:1px solid rgba(255,255,255,.06);}
.recent-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:.8rem;align-items:center;padding:.65rem 1.2rem;border-bottom:1px solid rgba(255,255,255,.05);font-size:.8rem;}
.recent-item:last-child{border-bottom:none;}
.recent-code{font-family:var(--ff-mono);font-weight:700;font-size:.75rem;color:var(--gold);letter-spacing:.08em;}
.recent-event{color:rgba(255,255,255,.55);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.recent-time{font-family:var(--ff-mono);font-size:.65rem;color:rgba(255,255,255,.3);}
.recent-result{font-size:1rem;}
.recent-valid .recent-code{color:var(--green);}
.recent-already_used .recent-code{color:var(--yellow);}
.recent-not_found .recent-code,.recent-invalid .recent-code{color:var(--red);}

@media(max-width:480px){.team-content{padding:1rem .8rem;}.team-scanner-box{max-width:100%;}}
