/* Style futuriste noir + bleu néon */
:root{
  --bg:#05060a;
  --panel:#0b0f14;
  --accent:#00d0ff;
  --muted:#9aa6b2;
  --glass: rgba(255,255,255,0.03);
  --neon-shadow: 0 0 10px rgba(0,208,255,0.12), 0 0 30px rgba(0,208,255,0.06);
  --radius:12px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#020204 0%, #071022 100%);color:#dfe9ef;min-height:100vh}

/* Login */
.bg-login{display:flex;align-items:center;justify-content:center;min-height:100vh}
.login-card{width:360px;padding:28px;border-radius:14px;background:linear-gradient(135deg, rgba(255,255,255,0.02), rgba(0,0,0,0.05));backdrop-filter: blur(6px);box-shadow:var(--neon-shadow)}
h1{margin:0 0 6px 0;font-size:22px}
.form label{display:block;margin:10px 0;font-size:13px;color:var(--muted)}
.form input,.form textarea,.form select{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:transparent;color:inherit}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;border:none;background:var(--accent);color:#001;cursor:pointer;font-weight:700}
.error{background:#ffdee0;color:#6b0006;padding:8px;border-radius:8px;margin:8px 0}

/* Topbar */
.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:linear-gradient(90deg, rgba(0,0,0,0.4), rgba(255,255,255,0.02));box-shadow:var(--neon-shadow)}
.brand{font-weight:800;letter-spacing:1px}
.brand .dot{color:var(--accent);margin-left:6px}
.menu a{margin:0 10px;text-decoration:none;color:var(--muted);padding:8px 12px;border-radius:8px}
.menu a.active{color:var(--accent);background:rgba(0,208,255,0.03);box-shadow:0 0 8px rgba(0,208,255,0.04)}
.user-area{display:flex;gap:12px;align-items:center}
.logout{font-size:13px;color:var(--muted);text-decoration:none}

/* Main */
.container{max-width:1100px;margin:26px auto;padding:18px;border-radius:16px;background:var(--panel);box-shadow:var(--neon-shadow)}
.neon-panel{border:1px solid rgba(0,208,255,0.06)}

/* cards */
.cards{display:flex;gap:14px;margin-top:12px}
.card{flex:1;padding:14px;border-radius:12px;background:var(--glass);text-align:center}
.card h3{margin:0;font-size:13px;color:var(--muted)}
.card p{font-size:20px;margin:8px 0}

/* Tabs */
.tabs{display:flex;gap:8px;margin:12px 0}
.tabs a{padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--muted);background:transparent}
.tab-active{background:rgba(0,208,255,0.04);color:var(--accent)}

/* form grid */
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.form-grid label{display:flex;flex-direction:column}
.form-grid input[type=number]{width:100px}
.form-section{padding:10px}

/* material card */
.material-card{display:flex;justify-content:space-between;gap:12px;padding:14px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(0,0,0,0.04));margin:10px 0}
.mat-ref{font-size:12px;color:var(--muted);letter-spacing:1px}
.mat-desc{color:var(--muted);margin-top:8px}
.mat-right{min-width:180px;text-align:right;color:var(--muted)}

/* footer */
.footer{padding:12px;text-align:center;color:var(--muted);margin-top:18px;border-top:1px solid rgba(255,255,255,0.02)}

/* small */
.toast{background:rgba(0,255,200,0.06);padding:10px;border-radius:10px;margin-bottom:12px;color:var(--accent)}
.file{padding:10px;background:rgba(255,255,255,0.02);border-radius:8px;margin:6px 0;color:var(--muted)}
.neon{box-shadow:0 6px 24px rgba(0,208,255,0.03)}
