/**
 * LogiFunus Portal/Admin — dark, square, Century Gothic
 */
@import url("https://fonts.cdnfonts.com/css/century-gothic");

:root {
  --bg: #000 !important;
  --bg-2: #0a0a0a !important;
  --panel: #111 !important;
  --line: rgba(255,255,255,.16) !important;
  --text: #fff !important;
  --muted: rgba(255,255,255,.68) !important;
  --accent: #fff !important;
  --radius: 0 !important;
  --font: "Century Gothic", CenturyGothic, AppleGothic, sans-serif !important;
}

html, body {
  background: #000 !important;
  color: #fff !important;
  font-family: var(--font) !important;
  font-weight: 400 !important;
}

/* Login: fond gris plein écran, pas de bandes noires */
html:has(#auth:not(.hidden)),
body:has(#auth:not(.hidden)) {
  background: #f7f7f7 !important;
  color: #111 !important;
}

*, .card, .btn, button, input, select, textarea, .modal, .panel, .badge, .tag {
  border-radius: 0 !important;
}

h1, h2, h3, h4, .title, strong { font-weight: 700 !important; color: #fff !important; }

.sidebar, aside.sidebar, nav.sidebar, .app-sidebar {
  background: #000 !important;
  border-right: 1px solid var(--line) !important;
  color: #fff !important;
}
.sidebar a, aside.sidebar a {
  color: rgba(255,255,255,.78) !important;
}
.sidebar a.active, aside.sidebar a.active, .sidebar a:hover {
  background: #111 !important;
  color: #fff !important;
}

.topbar, header.app-header, .app-header {
  background: #000 !important;
  border-bottom: 1px solid var(--line) !important;
  color: #fff !important;
}

.main, .content, main, .page {
  background: #000 !important;
  color: #fff !important;
}

.card, .panel, .box, .modal-content, .table-wrap, .stat-card {
  background: #111 !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
  color: #fff !important;
}

table { color: rgba(255,255,255,.85) !important; }
th { color: rgba(255,255,255,.5) !important; border-color: var(--line) !important; }
td { border-color: var(--line) !important; }

input, select, textarea {
  background: #0a0a0a !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  color: #fff !important;
}

.btn, button, .button {
  border-radius: 0 !important;
  font-family: var(--font) !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
}
.btn-primary, .button-primary, button.primary, .btn-accent {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #fff !important;
}
.btn-secondary, .btn-ghost, .btn-outline {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.5) !important;
}
.btn-danger, .btn-delete { background: transparent !important; color: #ff6b6b !important; border: 1px solid #ff6b6b !important; }

.badge, .tag, .status {
  border-radius: 0 !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.badge-success, .status-active { background: #1a3d2a !important; color: #7dffa6 !important; border: 1px solid #7dffa6 !important; }

/* Kill light themes / orange accents */
body.light, .theme-light, [data-theme="light"] {
  background: #000 !important;
  color: #fff !important;
}



/* Auth screen — light card, square, Century Gothic (LD parity, LF brand) */
@import url("https://fonts.cdnfonts.com/css/century-gothic");

.auth-screen{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#f5f5f5 0%,#ebebeb 100%)!important;
  padding:24px;font-family:"Century Gothic",CenturyGothic,AppleGothic,sans-serif!important;
}
.auth-card{
  width:100%;max-width:420px;background:#fff!important;color:#000!important;
  border:1px solid #e0e0e0!important;border-radius:0!important;
  box-shadow:0 12px 40px rgba(0,0,0,.08)!important;padding:40px 34px!important;
}
.auth-card .brand{display:flex;align-items:center;gap:10px;margin-bottom:28px}
.auth-card .brand-mark{
  width:36px;height:36px;background:#000!important;color:#fff!important;
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;
  border-radius:0!important;
}
.auth-card .brand-name{font-size:1.15rem;font-weight:700;color:#000!important}
.auth-card .brand-name span{color:#000!important}
.auth-title{font-size:1.6rem;font-weight:700;color:#000!important;margin:0 0 8px}
.auth-sub{color:rgba(0,0,0,.58)!important;font-size:.95rem;margin:0 0 28px}
.auth-card .field label{
  display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(0,0,0,.5)!important;margin-bottom:6px;font-weight:700;
}
.auth-card input[type="email"],.auth-card input[type="password"],.auth-card input[type="text"]{
  width:100%;background:#fff!important;border:1px solid #ccc!important;color:#000!important;
  border-radius:0!important;padding:12px 12px!important;font-family:inherit;
}
.auth-remember{display:flex;align-items:center;gap:8px;color:rgba(0,0,0,.7)!important;font-size:13px;margin:18px 0 22px}
.auth-card .btn-primary{
  background:#1f1f1f!important;color:#fff!important;border:1px solid #1f1f1f!important;border-radius:0!important;
  width:100%;padding:14px;margin-top:8px;
}
.auth-card .btn-primary:hover{background:#222!important}
.auth-switch{text-align:center;margin-top:22px;color:rgba(0,0,0,.65)!important;font-size:13px}
.auth-switch a{color:#000!important;font-weight:700;cursor:pointer;text-decoration:none}
.auth-back{
  display:block;text-align:center;margin-top:26px;padding:12px;
  background:#f3f3f3!important;border:1px solid #ddd!important;border-radius:0!important;
  color:#000!important;font-size:13px;font-weight:700;
}
.auth-back:hover{opacity:1;border-color:#000}

/* MFA / selection cards square hover frame */
.auth-card [role="button"],.mfa-choice,.auth-option,.auth-method{
  border-radius:0!important;transition:border-color .25s, box-shadow .25s;
}
.auth-card [role="button"]:hover,.mfa-choice:hover,.auth-option:hover,.auth-method:hover{
  box-shadow:0 0 0 1px #000;
}

/* App cards hover frame */
#app .card:hover,#app .stat-card:hover{
  box-shadow:0 0 0 1px #fff!important;
}


/* Portal login v4 — pas de header, pas de notif, pas de bandes */
#app.hidden, .hidden#app { display: none !important; visibility: hidden !important; height: 0 !important; overflow: hidden !important; }
body:has(#auth:not(.hidden)) #app { display: none !important; }

.lf-auth-top { display: none !important; }

body:has(#auth:not(.hidden)) .notif-panel,
body:has(#auth:not(.hidden)) .notif-backdrop,
body:has(#auth:not(.hidden)) #notifPanel,
body:has(#auth:not(.hidden)) #notifBackdrop {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

.auth-screen {
  min-height: 100vh !important;
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 48px 24px !important;
  background: #f7f7f7 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
.auth-card {
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 420px !important;
  background: #ffffff !important;
  border: 1px solid rgba(17,17,17,.12) !important;
  border-radius: 0 !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.08) !important;
  padding: 40px 36px !important;
  text-align: left;
}
.auth-card .brand {
  display: flex !important; align-items: center !important; gap: 12px !important;
  margin-bottom: 22px !important; justify-content: center !important;
}
.auth-card .brand-logo {
  height: 40px !important; width: auto !important; max-width: 200px !important; display: block !important;
}
.auth-card .auth-title { text-align: center !important; }
.auth-card .auth-sub { text-align: center !important; }
.auth-card .brand-mark {
  width: 40px; height: 40px; background: #000000 !important; color: #ffffff !important;
  display: flex; align-items: center; justify-content: center; font-weight: 700; border-radius: 0 !important;
}
.auth-card .brand-logo { height: 36px; width: auto; display: block; }
.auth-card .brand-name { font-size: 1.2rem; font-weight: 700; color: #111111 !important; }
.auth-card .brand-name span { color: #111111 !important; }
.auth-title { color: #111111 !important; margin: 0 0 10px !important; }
.auth-sub { color: rgba(17,17,17,.58) !important; margin: 0 0 28px !important; line-height: 1.5; }
.auth-card .field { margin-bottom: 18px !important; }
.auth-card .field label { color: rgba(17,17,17,.5) !important; margin-bottom: 8px !important; }
.auth-card input[type="email"], .auth-card input[type="password"], .auth-card input[type="text"] {
  background: #ffffff !important; border: 1px solid rgba(17,17,17,.22) !important;
  color: #111111 !important; border-radius: 0 !important; padding: 13px 12px !important;
}
.auth-remember { margin: 8px 0 22px !important; color: rgba(17,17,17,.7) !important; }
.auth-card .btn-primary {
  background: #000000 !important; color: #ffffff !important; border: 1px solid #000000 !important;
  border-radius: 0 !important; width: 100%; padding: 14px !important; margin-top: 4px !important;
  text-decoration: none !important;
}
.auth-switch { margin-top: 22px !important; text-align: center; color: rgba(17,17,17,.65) !important; }
.auth-switch a { color: #111111 !important; font-weight: 700; text-decoration: none !important; border-bottom: none !important; }
.auth-back {
  display: block !important; text-align: center; margin-top: 26px !important; padding: 12px !important;
  background: #f7f7f7 !important; border: 1px solid rgba(17,17,17,.14) !important;
  color: #111111 !important; font-weight: 700 !important; text-decoration: none !important;
  border-radius: 0 !important;
}
.auth-back:hover { text-decoration: none !important; opacity: 1; border-color: #111111 !important; }

/* Admin login polish */
#login .login-card { border-radius: 0 !important; }
#login a, .login-card a { text-decoration: none !important; }
