
/* KAMAR STEP36 - Hide public member login/register temporarily. Does not touch Supabase/Auth/Admin logic. */
.kamar-member-access-hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}
.kamar-access-closed{max-width:760px;margin:80px auto;padding:42px 34px;border:1px solid rgba(238,206,122,.28);border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(212,166,63,.045));box-shadow:0 24px 80px rgba(0,0,0,.34);text-align:center;color:#f6f0df}
.kamar-access-closed img{width:86px;height:86px;object-fit:contain;border-radius:22px;background:#050505;border:1px solid rgba(238,206,122,.32);padding:10px;margin-bottom:20px}
.kamar-access-closed .eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;color:#f1d98c;letter-spacing:.28em;text-transform:uppercase;font-weight:900;font-size:13px}
.kamar-access-closed h1,.kamar-access-closed h2{font-size:clamp(28px,4vw,46px);line-height:1.05;margin:0 0 16px;color:#fff1d6;letter-spacing:-.04em}
.kamar-access-closed p{margin:0 auto 24px;max-width:620px;color:rgba(245,240,230,.74);font-weight:750;line-height:1.6;font-size:16px}
.kamar-access-closed .closed-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.kamar-access-closed .closed-actions a{min-width:190px;text-align:center;text-decoration:none}
@media(max-width:680px){.kamar-access-closed{margin:38px 16px;padding:30px 20px}.kamar-access-closed .closed-actions a{width:100%;min-width:0}}

/* Kamar Step 61: universal fix for the JS-injected global header
   (dashboard.html, admin*.html, member-*.html, affiliate-dashboard.html).
   This stylesheet is loaded on every page in the site, so putting the
   fix here guarantees the header logo/menu never renders unstyled,
   regardless of which other stylesheets a given page does or doesn't
   include. Without this, the logo shows at its raw 1536x1536 size. */
.kamar-global-brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:#f5f0e6;
  font-weight:1000;
}
.kamar-global-brand img{
  width:46px;
  height:46px;
  border-radius:14px;
  object-fit:cover;
}
.kamar-global-center,
.kamar-global-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.kamar-global-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(238,206,122,.18);
  text-decoration:none;
  color:#d4a63f;
  font-weight:900;
  background:rgba(255,255,255,.035);
}


/* NEW (2026-08-01): header.kamar-global-header sendiri belum punya display:flex,
   jadi anak-anaknya (brand/center/actions) tetap tersusun 3 baris ke bawah
   walau masing-masing sudah flex. Tambahan kecil ini menyatukan jadi 1 baris. */
header.kamar-global-header{
     display:flex;
     flex-wrap:wrap;
     align-items:center;
     justify-content:space-between;
     gap:16px;
     position:sticky;
     top:0;
     z-index:40;
     padding:16px 26px;
     border-bottom:1px solid rgba(238,206,122,.10);
     background:rgba(7,7,6,.86);
     backdrop-filter:blur(14px);
}
@media(max-width:680px){
     header.kamar-global-header{padding:12px 16px}
     .kamar-global-center{display:none!important}
}

/* NEW (2026-08-01): admin-affiliate-list.html & admin-affiliate-reward.html
   punya dialog #confirmModal ("Konfirmasi/Batal/Ya, Lanjutkan") tanpa CSS
   sama sekali, jadi selalu tampil sebagai teks polos di bawah halaman.
   Disembunyikan default, jadi overlay tengah layar saat class .show aktif. */
.confirm{
     display:none;
     position:fixed;
     inset:0;
     z-index:200;
     align-items:center;
     justify-content:center;
     background:rgba(5,5,4,.72);
     backdrop-filter:blur(6px);
}
.confirm.show{display:flex}
.confirm-box{
     width:min(420px,92vw);
     border:1px solid rgba(238,206,122,.28);
     border-radius:26px;
     padding:26px;
     background:linear-gradient(135deg,#151310,#0b0a08);
     box-shadow:0 30px 80px rgba(0,0,0,.5);
}
.confirm-box h3{margin:0 0 10px;color:#fff3d8;font-size:20px}
.confirm-box p{margin:0 0 20px;color:rgba(245,240,230,.72);line-height:1.6}
.confirm-actions{display:flex;gap:10px;justify-content:flex-end}
