/* ============================================
   LAMPAHI NEON DESIGN SYSTEM
   Semua halaman pakai file ini
   ============================================ */

:root{
  /* Background */
  --bg:#08090c;
  --bg-elev:#0e1016;
  --bg-card:#10121a;
  --bg-input:#050608;

  /* Border */
  --border:#1a1d28;
  --border-hover:#2a3050;

  /* Text */
  --text:#eef2ff;
  --text-muted:#8a90a8;
  --text-dim:#5a6078;

  /* NEON BLUE — sesuai logo */
  --neon:#3b9dff;
  --neon-bright:#5eb3ff;
  --neon-cyan:#00d4ff;
  --neon-deep:#1e5fbf;
  --neon-glow:rgba(59,157,255,.45);
  --neon-glow-soft:rgba(59,157,255,.15);

  /* Gold accent */
  --gold:#d4a740;

  /* Status */
  --green:#22c55e;
  --green-bg:rgba(34,197,94,.1);
  --yellow:#fbbf24;
  --yellow-bg:rgba(251,191,36,.1);
  --red:#f87171;
  --red-bg:rgba(248,113,113,.1);

  /* Spacing */
  --radius:14px;
  --radius-sm:8px;
  --radius-lg:16px;
}

/* ============ RESET ============ */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  background:var(--bg);color:var(--text);
  line-height:1.5;-webkit-font-smoothing:antialiased;
  font-feature-settings:"cv02","cv03","cv04","cv11";
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* ============ BACKGROUND GLOW ============ */
body::before{
  content:"";position:fixed;
  width:600px;height:600px;border-radius:50%;
  background:var(--neon-deep);filter:blur(140px);opacity:.18;
  top:-250px;left:-250px;pointer-events:none;z-index:0;
  animation:bg-float 22s ease-in-out infinite;
}
body::after{
  content:"";position:fixed;
  width:500px;height:500px;border-radius:50%;
  background:rgba(0,212,255,.15);filter:blur(140px);
  bottom:-200px;right:-200px;pointer-events:none;z-index:0;
  animation:bg-float 28s ease-in-out infinite reverse;
}
@keyframes bg-float{
  0%,100%{transform:translate(0,0) scale(1)}
  50%{transform:translate(60px,80px) scale(1.15)}
}
body > *{position:relative;z-index:1}

/* ============ CONTAINER ============ */
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.container-sm{max-width:480px;margin:0 auto;padding:0 24px}

/* ============ SCROLL REVEAL ============ */
.reveal{
  opacity:0;transform:translateY(30px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
.reveal.in{opacity:1;transform:translateY(0)}

.stagger > *{
  opacity:0;transform:translateY(30px);
  transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);
}
.stagger.in > *{opacity:1;transform:translateY(0)}
.stagger.in > *:nth-child(1){transition-delay:.05s}
.stagger.in > *:nth-child(2){transition-delay:.1s}
.stagger.in > *:nth-child(3){transition-delay:.15s}
.stagger.in > *:nth-child(4){transition-delay:.2s}
.stagger.in > *:nth-child(5){transition-delay:.25s}
.stagger.in > *:nth-child(6){transition-delay:.3s}
.stagger.in > *:nth-child(7){transition-delay:.35s}
.stagger.in > *:nth-child(8){transition-delay:.4s}

/* ============ NAV (TOP) ============ */
.nav{
  padding:20px 0;display:flex;justify-content:space-between;align-items:center;
  position:sticky;top:0;background:rgba(8,9,12,.7);backdrop-filter:blur(16px);
  z-index:100;border-bottom:1px solid transparent;transition:all .3s;
}
.nav.scrolled{border-bottom-color:var(--border);background:rgba(8,9,12,.92)}
.nav .brand{
  font-weight:700;font-size:16px;letter-spacing:-.01em;
  display:flex;align-items:center;gap:10px;
}
.brand-logo{
  width:32px;height:32px;border-radius:8px;
  background:linear-gradient(135deg,var(--neon-deep),var(--neon-cyan));
  display:flex;align-items:center;justify-content:center;
  font-size:16px;box-shadow:0 0 20px var(--neon-glow-soft);
}
.nav .tag{color:var(--text-dim);font-weight:500;font-size:13px}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{color:var(--text-muted);font-size:14px;transition:color .2s}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--text)}

/* ============ BUTTONS ============ */
.btn{
  padding:10px 20px;background:#fff;color:#000;border:none;
  border-radius:10px;font-size:14px;font-weight:600;
  cursor:pointer;font-family:inherit;transition:all .25s;
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
}
.btn:hover{
  transform:translateY(-1px);
  box-shadow:0 0 30px var(--neon-glow),0 8px 24px rgba(0,0,0,.4);
}
.btn-primary{background:#fff;color:#000}
.btn-secondary{
  background:transparent;color:var(--text);
  border:1px solid var(--border);font-weight:500;
}
.btn-secondary:hover{
  border-color:var(--neon);color:var(--neon-bright);
  box-shadow:0 0 24px var(--neon-glow-soft);
}
.btn-ghost{
  padding:8px 16px;border:1px solid var(--border);
  border-radius:8px;font-size:13px;font-weight:500;
  color:var(--text);background:transparent;
}
.btn-ghost:hover{
  border-color:var(--neon);color:var(--neon-bright);
  box-shadow:0 0 20px var(--neon-glow-soft);
}
.btn-danger{
  background:var(--red-bg);color:var(--red);
  border:1px solid rgba(248,113,113,.3);
}
.btn-danger:hover{
  background:var(--red);color:#fff;
  box-shadow:0 0 30px rgba(248,113,113,.4);
}
.btn-green{
  background:var(--green-bg);color:var(--green);
  border:1px solid rgba(34,197,94,.3);
}
.btn-green:hover{
  background:var(--green);color:#fff;
  box-shadow:0 0 30px rgba(34,197,94,.4);
}
.btn-sm{padding:6px 12px;font-size:12px;border-radius:8px}
.btn-lg{padding:14px 28px;font-size:15px}

/* ============ CARD ============ */
.card{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius);padding:24px;
  transition:all .35s cubic-bezier(.16,1,.3,1);
  position:relative;overflow:hidden;
}
.card::before{
  content:"";position:absolute;inset:-1px;border-radius:var(--radius);
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),
              var(--neon-glow) 0%,transparent 40%);
  opacity:0;transition:opacity .4s;pointer-events:none;z-index:0;
}
.card:hover::before{opacity:1}
.card:hover{
  border-color:var(--neon);transform:translateY(-3px);
  box-shadow:0 0 0 1px var(--neon),0 0 30px var(--neon-glow),0 0 60px var(--neon-glow-soft);
}
.card.flat:hover{transform:none}
.card > *{position:relative;z-index:1}

/* Card bagian atas (badge + arrow) */
.card-top{
  display:flex;justify-content:space-between;align-items:flex-start;
  margin-bottom:auto;
}
.card .tag{
  display:inline-block;padding:4px 10px;border-radius:6px;
  background:#151824;border:1px solid var(--border);
  font-size:11px;font-weight:500;color:var(--text-muted);
  letter-spacing:.02em;transition:all .3s;
}
.card:hover .tag{
  border-color:var(--neon);color:var(--neon-bright);
  background:rgba(59,157,255,.08);
}
.card .arrow{
  width:28px;height:28px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  color:var(--text-dim);transition:all .3s;
}
.card:hover .arrow{
  color:var(--neon-bright);background:rgba(59,157,255,.1);
  transform:translate(2px,-2px);
}

/* ============ STAT CARD (Dashboard) ============ */
.stat-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:16px;margin-bottom:32px;
}
.stat{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius);padding:24px;
  transition:all .3s;position:relative;overflow:hidden;
}
.stat::after{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--neon),var(--neon-cyan));
  opacity:0;transition:opacity .3s;
}
.stat:hover{
  border-color:var(--neon);
  box-shadow:0 0 40px var(--neon-glow-soft);
  transform:translateY(-2px);
}
.stat:hover::after{opacity:1}
.stat .label{
  font-size:12px;color:var(--text-dim);
  text-transform:uppercase;letter-spacing:.08em;
  font-weight:500;margin-bottom:12px;
}
.stat .value{
  font-size:28px;font-weight:700;letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
  background:linear-gradient(135deg,#fff,var(--neon-bright) 90%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.stat.accent-green .value{
  background:linear-gradient(135deg,#fff,var(--green) 90%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.stat.accent-red .value{
  background:linear-gradient(135deg,#fff,var(--red) 90%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.stat .sub{font-size:12px;color:var(--text-dim);margin-top:6px}

/* ============ FORM ============ */
.form-group{margin-bottom:16px}
.form-group label{
  display:block;font-size:13px;color:var(--text-muted);
  margin-bottom:8px;font-weight:500;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
select,
textarea{
  width:100%;padding:12px 16px;
  background:var(--bg-input);border:1px solid var(--border);
  border-radius:10px;color:var(--text);
  font-size:14px;font-family:inherit;
  transition:all .25s;
}
input:focus,select:focus,textarea:focus{
  outline:none;border-color:var(--neon);
  box-shadow:0 0 24px var(--neon-glow-soft);
}
input::placeholder,textarea::placeholder{color:#4a5068}
textarea{min-height:100px;resize:vertical}
select{cursor:pointer}

/* Search input dengan tombol */
.search-row{display:flex;gap:8px;margin-bottom:20px}
.search-row input{flex:1}

/* ============ TABLE ============ */
.table-wrap{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius);overflow:hidden;
}
table{
  width:100%;border-collapse:collapse;
}
thead{background:#0d0f17;border-bottom:1px solid var(--border)}
th{
  padding:14px 16px;text-align:left;
  font-size:11px;text-transform:uppercase;
  color:var(--text-dim);letter-spacing:.08em;
  font-weight:600;white-space:nowrap;
}
td{
  padding:16px;border-top:1px solid var(--border);
  font-size:14px;vertical-align:middle;
}
tbody tr{transition:background .2s}
tbody tr:hover{background:rgba(59,157,255,.04)}
tbody tr:hover td{border-top-color:var(--border-hover)}

/* ============ BADGE ============ */
.badge{
  display:inline-block;padding:3px 10px;border-radius:6px;
  font-size:11px;font-weight:600;letter-spacing:.02em;
}
.badge-green{background:var(--green-bg);color:var(--green);border:1px solid rgba(34,197,94,.2)}
.badge-yellow{background:var(--yellow-bg);color:var(--yellow);border:1px solid rgba(251,191,36,.2)}
.badge-red{background:var(--red-bg);color:var(--red);border:1px solid rgba(248,113,113,.2)}
.badge-blue{background:var(--neon-glow-soft);color:var(--neon-bright);border:1px solid rgba(59,157,255,.3)}
.badge-gray{background:rgba(255,255,255,.05);color:var(--text-muted);border:1px solid var(--border)}

/* ============ ALERT ============ */
.alert{
  padding:14px 18px;border-radius:10px;font-size:13px;
  margin-bottom:16px;line-height:1.6;
}
.alert-success{background:var(--green-bg);border:1px solid rgba(34,197,94,.2);color:var(--green)}
.alert-error{background:var(--red-bg);border:1px solid rgba(248,113,113,.2);color:var(--red)}
.alert-warning{background:var(--yellow-bg);border:1px solid rgba(251,191,36,.2);color:var(--yellow)}
.alert-info{background:var(--neon-glow-soft);border:1px solid rgba(59,157,255,.25);color:var(--neon-bright)}

/* ============ CODE ============ */
code{
  font-family:'SF Mono',Monaco,Menlo,monospace;
  font-size:13px;color:var(--neon-bright);
  background:rgba(59,157,255,.08);
  padding:2px 8px;border-radius:6px;
  border:1px solid rgba(59,157,255,.15);
}

/* ============ EMPTY STATE ============ */
.empty{
  text-align:center;padding:64px 24px;
  color:var(--text-dim);font-size:14px;
}
.empty-icon{
  font-size:48px;margin-bottom:16px;opacity:.3;
}

/* ============ SIDEBAR (Admin) ============ */
.admin-topbar{
  position:sticky;top:0;z-index:100;
  background:rgba(8,9,12,.85);backdrop-filter:blur(16px);
  padding:16px 24px;border-bottom:1px solid var(--border);
  display:flex;justify-content:space-between;align-items:center;
}
.admin-topbar .brand{
  display:flex;align-items:center;gap:10px;
  font-weight:700;font-size:15px;letter-spacing:-.01em;
}
.admin-topbar .brand-logo{
  width:28px;height:28px;border-radius:8px;
  background:linear-gradient(135deg,var(--neon-deep),var(--neon-cyan));
  display:flex;align-items:center;justify-content:center;
  font-size:14px;box-shadow:0 0 20px var(--neon-glow-soft);
}
.notif-bell{
  position:relative;font-size:20px;color:var(--text);
  padding:8px;border-radius:8px;transition:all .2s;
  display:inline-flex;align-items:center;
}
.notif-bell:hover{background:rgba(59,157,255,.1);color:var(--neon-bright)}
.notif-badge{
  position:absolute;top:0;right:0;
  background:var(--red);color:#fff;
  font-size:10px;padding:2px 6px;border-radius:10px;
  font-weight:700;min-width:18px;text-align:center;
  box-shadow:0 0 12px rgba(248,113,113,.5);
}

.admin-sidebar{
  width:220px;background:rgba(10,11,16,.7);
  backdrop-filter:blur(12px);
  position:fixed;top:61px;left:0;bottom:0;
  padding:16px 0;border-right:1px solid var(--border);
  overflow-y:auto;
}
.admin-sidebar a{
  display:flex;align-items:center;gap:12px;
  padding:11px 24px;color:var(--text-muted);
  font-size:14px;border-left:3px solid transparent;
  transition:all .2s;position:relative;
}
.admin-sidebar a:hover{
  color:var(--text);background:rgba(59,157,255,.05);
  border-left-color:rgba(59,157,255,.4);
}
.admin-sidebar a.active{
  color:var(--text);background:rgba(59,157,255,.08);
  border-left-color:var(--neon);
}
.admin-sidebar a.active::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--neon);box-shadow:0 0 12px var(--neon);
}
.admin-sidebar .icon{font-size:16px;width:20px;text-align:center}

.admin-content{
  margin-left:220px;padding:32px;
  max-width:calc(100% - 220px);
}

/* ============ HEADING ============ */
h1{font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}
h2{font-size:18px;font-weight:600;letter-spacing:-.01em;margin:32px 0 16px;color:var(--text)}
h3{font-size:15px;font-weight:600;margin-bottom:8px}
.page-sub{color:var(--text-muted);font-size:14px;margin-bottom:24px}

/* ============ TOAST ============ */
.toast{
  position:fixed;bottom:32px;left:50%;transform:translateX(-50%) translateY(20px);
  background:var(--neon);color:#000;
  padding:12px 24px;border-radius:10px;
  font-weight:600;font-size:14px;
  box-shadow:0 0 40px var(--neon-glow),0 10px 30px rgba(0,0,0,.5);
  opacity:0;transition:all .3s;z-index:999;pointer-events:none;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ============ RESPONSIVE ============ */
@media(max-width:900px){
  .admin-sidebar{display:none}
  .admin-content{margin-left:0;max-width:100%;padding:20px}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .container{padding:0 16px}
  .admin-content{padding:16px}
  .stat-grid{grid-template-columns:1fr}
  .nav-links a:not(.btn-ghost){display:none}
  table{font-size:13px}
  th,td{padding:10px 12px}
}

/* ============ REDUCED MOTION ============ */
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal,.stagger > *{opacity:1;transform:none}
}
/* ============ SVG ICON SYSTEM ============ */
.icon-box{
  width:40px;height:40px;border-radius:10px;
  background:rgba(59,157,255,.08);
  border:1px solid rgba(59,157,255,.15);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--neon-bright);
  transition:all .3s;
  flex-shrink:0;
}
.icon-box svg{width:20px;height:20px}
.icon-box.lg{width:56px;height:56px;border-radius:14px}
.icon-box.lg svg{width:26px;height:26px}
.icon-box.sm{width:32px;height:32px;border-radius:8px}
.icon-box.sm svg{width:16px;height:16px}

/* Icon inline di teks */
.icon-inline{
  display:inline-flex;align-items:center;gap:8px;
  vertical-align:middle;
}
.icon-inline svg{
  color:var(--neon-bright);flex-shrink:0;
}

/* Sidebar icon */
.admin-sidebar a .icon-box{
  background:transparent;border:none;
  width:auto;height:auto;
  color:var(--text-dim);
}
.admin-sidebar a .icon-box svg{width:18px;height:18px}
.admin-sidebar a:hover .icon-box,
.admin-sidebar a.active .icon-box{color:var(--neon-bright)}

/* Nav menu icon */
.nav-menu a .icon-box{
  background:transparent;border:none;
  width:auto;height:auto;
  color:inherit;
}
.nav-menu a .icon-box svg{width:16px;height:16px}

/* Feature list dengan check icon */
.feature-list{
  list-style:none;padding:0;margin:0;
}
.feature-list li{
  padding:12px 0;
  border-bottom:1px solid var(--border);
  display:flex;gap:12px;align-items:flex-start;
  color:var(--text-muted);font-size:14px;
}
.feature-list li:last-child{border-bottom:none}
.feature-list li svg{
  color:var(--neon-bright);flex-shrink:0;margin-top:3px;
}

/* ============ MOBILE IMPROVEMENTS ============ */
@media(max-width:640px){
  body{font-size:15px}
  h1{font-size:20px}
  h2{font-size:16px;margin:24px 0 12px}
  
  .container{padding:0 16px}
  .admin-content{padding:16px}
  
  .stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .stat{padding:16px}
  .stat .label{font-size:10px;letter-spacing:.06em;margin-bottom:8px}
  .stat .value{font-size:20px}
  .stat .sub{font-size:11px}
  
  /* Card lebih compact */
  .card{padding:16px;border-radius:12px}
  
  /* Nav mobile — 2 baris, scroll horizontal */
  .nav-menu{
    display:flex;gap:2px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .nav-menu::-webkit-scrollbar{display:none}
  .nav-menu a{padding:8px 12px;font-size:12px;white-space:nowrap}
  
  /* Topbar mobile */
  .admin-topbar{padding:12px 16px}
  .admin-topbar .brand{font-size:14px}
  .admin-topbar .brand-logo{width:26px;height:26px;font-size:12px}
  
  /* Form mobile */
  input,select,textarea{font-size:16px !important} /* biar tidak zoom di iOS */
  input[type="number"]{font-size:16px !important}
  
  /* Table mobile — horizontal scroll */
  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .table-wrap table{min-width:600px}
  th,td{padding:10px 12px;font-size:13px}
  
  /* Button mobile */
  .btn{padding:10px 16px;font-size:13px}
  .btn-lg{padding:12px 20px;font-size:14px}
  
  /* Icon box mobile */
  .icon-box{width:36px;height:36px;border-radius:8px}
  .icon-box svg{width:18px;height:18px}
  .icon-box.lg{width:48px;height:48px}
  .icon-box.lg svg{width:22px;height:22px}
  
  /* Agent card mobile */
  .agent-grid{grid-template-columns:1fr}
  .agent-card{min-height:auto;padding:18px}
  
  /* Flex col di mobile */
  .mobile-col{flex-direction:column !important;align-items:stretch !important}
  
  /* Hide tagline di mobile */
  .nav .tag{display:none}
}

@media(max-width:400px){
  .stat-grid{grid-template-columns:1fr}
  h1{font-size:18px}
}

/* ============ TOUCH FEEDBACK (mobile) ============ */
@media(hover:none){
  .card:active,
  .agent-card:active,
  .stat:active{
    border-color:var(--neon);
    box-shadow:0 0 0 1px var(--neon),0 0 30px var(--neon-glow-soft);
    transform:scale(.98);
  }
  .btn:active{transform:scale(.96)}
  .icon-box:active{transform:scale(.9)}
}
/* ============ LOGO LAMPAHI ============ */
.brand-logo-img{
  width:40px !important;
  height:40px !important;
  max-width:40px !important;
  max-height:40px !important;
  object-fit:contain;
  display:inline-block;
  vertical-align:middle;
  filter:drop-shadow(0 0 12px var(--neon-glow));
}
.brand-logo-img.sm{
  width:36px !important;
  height:36px !important;
  max-width:36px !important;
  max-height:36px !important;
}

/* Logo di hero/landing */
.hero-logo{
  width:120px;height:120px;object-fit:contain;
  margin:0 auto 24px;display:block;
  filter:drop-shadow(0 0 30px var(--neon-glow));
  animation:logo-float 4s ease-in-out infinite;
}
@keyframes logo-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

/* Logo di login/register (centered) */
.auth-logo{
  width:80px;height:80px;object-fit:contain;
  margin:0 auto 24px;display:block;
  filter:drop-shadow(0 0 40px var(--neon-glow));
  animation:logo-pulse 3s ease-in-out infinite;
}
@keyframes logo-pulse{
  0%,100%{filter:drop-shadow(0 0 40px var(--neon-glow))}
  50%{filter:drop-shadow(0 0 60px var(--neon)) drop-shadow(0 0 100px var(--neon-glow-soft))}
}

/* Favicon fallback */
@media(max-width:640px){
  .brand-logo-img{width:28px;height:28px}
  .auth-logo{width:64px;height:64px}
  .hero-logo{width:80px;height:80px}
}
/* ============ LOGO LAMPAHI ============ */
.brand-logo-img{
  width:32px !important;
  height:32px !important;
  object-fit:contain;
  filter:drop-shadow(0 0 12px var(--neon-glow));
  display:inline-block;
  vertical-align:middle;
}
.brand-logo-img.sm{width:28px !important;height:28px !important}
.brand-logo-img.lg{width:56px !important;height:56px !important}

.admin-topbar .brand{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px;
}

/* Paksa logo dalam topbar selalu kecil */
.admin-topbar img{
  width:28px !important;
  height:28px !important;
  max-width:28px !important;
  max-height:28px !important;
  object-fit:contain !important;
}
/* ============ LOGO LAMPAHI ============ */
.brand-logo-img{
  width:32px !important;
  height:32px !important;
  max-width:32px !important;
  max-height:32px !important;
  object-fit:contain;
  display:inline-block;
  vertical-align:middle;
  filter:drop-shadow(0 0 12px var(--neon-glow));
}
.brand-logo-img.sm{
  width:28px !important;
  height:28px !important;
  max-width:28px !important;
  max-height:28px !important;
}
.brand-logo-img.lg{
  width:56px !important;
  height:56px !important;
  max-width:56px !important;
  max-height:56px !important;
}

/* Paksa logo di topbar selalu kecil */
.admin-topbar img,
.admin-topbar .brand img{
  width:28px !important;
  height:28px !important;
  max-width:28px !important;
  max-height:28px !important;
  object-fit:contain !important;
}

.admin-topbar .brand{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px;
}
/* ============ FORCE PLACEHOLDER SAMAR ============ */
.form-card input::placeholder,
.form-card textarea::placeholder,
input::placeholder,
textarea::placeholder{
  color:#3a4055 !important;
  -webkit-text-fill-color:#3a4055 !important;
  opacity:1 !important;
}

/* Khusus di dalam form-card lebih samar lagi */
.form-card input::placeholder,
.form-card textarea::placeholder{
  color:#2e3448 !important;
  -webkit-text-fill-color:#2e3448 !important;
}
/* ============================================
   GLOBAL DARK INPUTS — untuk SEMUA halaman
   ============================================ */

input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
select,
textarea{
  background:#050608 !important;
  background-color:#050608 !important;
  color:#eef2ff !important;
  -webkit-text-fill-color:#eef2ff !important;
  border:1px solid #1a1d28 !important;
  border-radius:10px !important;
  padding:12px 16px !important;
  font-size:14px !important;
  font-family:inherit !important;
  transition:border-color .2s, box-shadow .2s !important;
  color-scheme: dark !important;
  width:100% !important;
}

input:focus,
select:focus,
textarea:focus{
  outline:none !important;
  border-color:var(--neon) !important;
  box-shadow:0 0 24px var(--neon-glow-soft) !important;
}

/* Placeholder — SANGAT SAMAR */
input::placeholder,
textarea::placeholder{
  color:#2e3448 !important;
  -webkit-text-fill-color:#2e3448 !important;
  opacity:1 !important;
}

/* Select dropdown arrow */
select{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a90a8' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>") !important;
  background-repeat:no-repeat !important;
  background-position:right 16px center !important;
  padding-right:44px !important;
  cursor:pointer;
  appearance:none !important;
  -webkit-appearance:none !important;
}

select option{
  background:#050608 !important;
  color:#eef2ff !important;
}

/* Input yang disabled — lebih pudar */
input:disabled,
select:disabled,
textarea:disabled{
  opacity:.5 !important;
  cursor:not-allowed !important;
}