/* ── DESIGN TOKENS ─────────────────────────────────── */
:root {
  --navy:        #0f1e2e;
  --navy-mid:    #162535;
  --navy-light:  #1e3248;
  --navy-border: #243a52;
  --gold:        #c9a84c;
  --gold-light:  #e8c97a;
  --gold-dim:    rgba(201,168,76,0.15);
  --cream:       #f5f0e8;
  --cream-dark:  #ede5d6;
  --red:         #c0392b;
  --red-light:   #e74c3c;
  --red-dim:     rgba(192,57,43,0.12);
  --green:       #1a6b4a;
  --green-light: #27ae60;
  --green-dim:   rgba(26,107,74,0.12);
  --amber:       #d4830a;
  --amber-dim:   rgba(212,131,10,0.12);
  --blue-light:  #4a9edd;
  --text-primary:   #f0ebe0;
  --text-secondary: #a8b8c8;
  --text-muted:     #6a8099;
  --sidebar-w: 260px;
}

/* ── RESET ─────────────────────────────────────────── */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: 'DM Sans', sans-serif;
  background:  var(--navy);
  color:        var(--text-primary);
  min-height:   100vh;
  overflow-x:   hidden;
}

/* ── SCROLLBAR ─────────────────────────────────────── */
::-webkit-scrollbar       { width: 6px; }
::-webkit-scrollbar-track { background: var(--navy); }
::-webkit-scrollbar-thumb { background: var(--navy-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--text-muted); }

/* ── ROLE-BASED VISIBILITY ─────────────────────────── */
/* Hide elements based on data-role set on <body> */
[data-role="client"]   .attorney-only,
[data-role="client"]   .admin-only      { display: none !important; }
[data-role="attorney"] .admin-only      { display: none !important; }
