/* Ebadi Console — centrally maintained Design System (Ebadi App master tokens). */
:root {
  --eb-primary: #C8922F; --eb-pressed: #B77F25; --eb-primary-soft: #F7EBD5;
  --eb-text: #1F2328; --eb-muted: #76716B; --eb-border: #E9E4DC;
  --eb-surface: #FFFFFF; --eb-soft: #F8F7F5;
  --eb-success: #3F9B66; --eb-warning: #C98A2B; --eb-danger: #C94F4F;
  --eb-font: Peyda, Tahoma, Arial, sans-serif;
  --eb-space-1: 4px; --eb-space-2: 8px; --eb-space-3: 12px;
  --eb-space-4: 16px; --eb-space-5: 20px; --eb-space-6: 24px; --eb-space-8: 32px;
  --eb-radius-control: 12px; --eb-radius-card: 16px; --eb-radius-modal: 20px;
}
html, body.eb-console-body { margin: 0; min-height: 100%; }
body.eb-console-body { background:var(--eb-soft); font-family:var(--eb-font); color:var(--eb-text); direction:rtl; font-size:13px; font-weight:500; line-height:1.75; }
body.eb-console-body *, body.eb-console-body *::before, body.eb-console-body *::after { box-sizing:border-box; }
body.eb-console-body button,body.eb-console-body input,body.eb-console-body select { font: inherit; }
body.eb-console-body a { color:inherit; text-decoration:none; }
body.eb-console-body h1,body.eb-console-body h2,body.eb-console-body p { margin:0; }
body.eb-console-body h2 { font-size:16px; font-weight:800; line-height:1.5; }
body.eb-console-body svg { width:20px; height:20px; flex-shrink:0; }
body.eb-console-body :focus-visible { outline:2px solid var(--eb-primary); outline-offset:2px; }
.eb-app { width:min(100%,560px); margin:0 auto; min-height:100vh; background:var(--eb-soft); }
.eb-header { height:68px; background:var(--eb-surface); border-bottom:1px solid var(--eb-border); padding:0 16px; display:flex; justify-content:space-between; align-items:center; gap:12px; }
.eb-brand { display:flex; align-items:center; gap:12px; }
.eb-brand-mark,.eb-logo { background:var(--eb-primary-soft); color:var(--eb-primary); border-radius:12px; display:grid; place-items:center; font-weight:900; }
.eb-brand-mark { width:40px; height:40px; font-size:20px; }
.eb-brand-title,.eb-brand-subtitle { display:block; }
.eb-brand-title { font-size:14px; font-weight:800; line-height:1.5; }
.eb-brand-subtitle { font-size:11px; color:var(--eb-muted); }
.eb-header-actions { display:flex; align-items:center; gap:8px; }
.eb-icon-btn { display:inline-flex; border:1px solid var(--eb-border); color:var(--eb-text); background:var(--eb-surface); width:40px; height:40px; border-radius:12px; align-items:center; justify-content:center; cursor:pointer; }
.eb-icon-btn:hover { background:var(--eb-soft); }
.eb-page { padding:16px 16px 32px; display:flex; flex-direction:column; gap:24px; }
.eb-userbar { display:flex; justify-content:space-between; gap:8px; align-items:center; color:var(--eb-muted); font-size:12px; }
.eb-userbar strong { color:var(--eb-text); }
.eb-btn { display:inline-flex; justify-content:center; align-items:center; vertical-align:middle; gap:8px; border-radius:12px; border:1px solid transparent; cursor:pointer; font-size:13px; font-weight:800; padding:0 16px; min-height:44px; transition:background .15s; }
.eb-btn-primary { min-height:48px; color:white; background:var(--eb-primary); }
.eb-btn-primary:hover { background:var(--eb-pressed); }
.eb-btn-secondary { background:white; border-color:var(--eb-border); color:var(--eb-text); }
.eb-btn-ghost { background:transparent; color:var(--eb-muted); padding:0 8px; }
.eb-btn-ghost:hover { background:white; }
.eb-page-title { font-size:20px; font-weight:900; line-height:1.45; }
.eb-page-heading { display:grid; gap:8px; }
.eb-muted { color:var(--eb-muted); font-size:12px; }
.eb-section { display:grid; gap:12px; margin-top:8px; }
.eb-section-heading { display:flex; justify-content:space-between; align-items:center; }
.eb-card { padding:16px; border:1px solid var(--eb-border); border-radius:16px; background:var(--eb-surface); }
.eb-card p { font-size:13px; line-height:1.75; }
.eb-stat-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.eb-stat { display:grid; gap:8px; min-width:0; }
.eb-stat-value { font-size:24px; font-weight:900; line-height:1.2; color:var(--eb-primary); }
.eb-stat .eb-muted { font-size:11px; }
.eb-grid-links { display:grid; gap:12px; }
.eb-quick-link { display:flex; justify-content:space-between; align-items:center; font-weight:700; }
.eb-status { display:inline-flex; align-items:center; justify-self:start; border-radius:999px; padding:4px 12px; font-size:11px; font-weight:700; }
.eb-status-warning { background:#FFF4DF; color:#875800; }
.eb-status-success { background:#E7F5ED; color:#247348; }
.eb-navigation { display:grid; gap:4px; padding:8px; background:var(--eb-surface); border:1px solid var(--eb-border); border-radius:16px; }
.eb-navigation[hidden] { display:none; }
.eb-nav-link { display:flex; align-items:center; gap:12px; padding:8px 12px; border-radius:12px; min-height:44px; font-weight:700; }
.eb-nav-link.is-active,.eb-nav-link:hover { background:var(--eb-primary-soft); color:var(--eb-pressed); }
.eb-form { display:grid; gap:12px; }
.eb-field { display:grid; gap:4px; }
.eb-field label { font-size:12px; font-weight:700; }
.eb-field input,.eb-field select,.eb-person select { border:1px solid var(--eb-border); background:white; border-radius:12px; padding:0 12px; min-height:48px; width:100%; color:var(--eb-text); }
.eb-field input:focus,.eb-field select:focus,.eb-person select:focus { border-color:var(--eb-primary); outline:2px solid var(--eb-primary-soft); }
.eb-field input[type="email"] { direction:ltr; text-align:right; }
.eb-help { font-size:11px; color:var(--eb-muted); }
.eb-notice { background:var(--eb-primary-soft); padding:12px 16px; border-radius:12px; border:1px solid var(--eb-border); font-size:12px; }
.eb-notice-error { background:#FFF0EE; color:#9C3737; }
.eb-notice-success { background:#E7F5ED; color:#247348; }
.eb-btn-danger { background:var(--eb-danger); color:white; }
.eb-btn-danger:hover { filter:brightness(.92); }
.eb-full { width:100%; }
.eb-stack { display:grid; gap:12px; }
.eb-person { display:grid; gap:12px; }
.eb-person strong { font-size:14px; font-weight:800; }
.eb-person-actions { display:flex; gap:8px; align-items:center; }
.eb-person-actions select { flex:1; width:auto; min-width:0; }
.eb-inline-form { display:inline-flex; align-items:center; }
.eb-inline-form button { flex-shrink:0; }
.eb-tabs { display:flex; flex-wrap:wrap; padding:4px; gap:4px; background:white; border-radius:12px; border:1px solid var(--eb-border); }
.eb-tab { display:inline-flex; min-height:40px; align-items:center; justify-content:center; border-radius:10px; padding:4px 12px; font-size:12px; font-weight:700; }
.eb-tab.is-active { background:var(--eb-primary-soft); color:var(--eb-pressed); }
.eb-check-row { display:flex; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--eb-border); font-size:12px; font-weight:700; }
.eb-check-row input { width:18px; height:18px; accent-color:var(--eb-primary); }
.eb-check-row:last-of-type { border-bottom:0; }
.eb-codeblock { background:var(--eb-soft); border:1px solid var(--eb-border); padding:12px; border-radius:12px; overflow-wrap:anywhere; overflow-x:auto; font-size:11px; }
.eb-table-wrap { overflow-x:auto; width:100%; }
.eb-table { border-collapse:collapse; width:100%; min-width:380px; text-align:right; }
.eb-table th,.eb-table td { padding:12px 8px; border-bottom:1px solid var(--eb-border); font-size:11px; vertical-align:top; }
.eb-table th { color:var(--eb-muted); font-weight:700; }
.eb-footer { text-align:center; font-size:11px; color:var(--eb-muted); padding-top:16px; }
.eb-login-wrap { display:flex; align-items:center; justify-content:center; min-height:100vh; padding:24px 16px; }
.eb-login-card { width:min(100%,400px); display:grid; gap:16px; }
.eb-login-card .eb-muted { text-align:center; }
.eb-login-card .eb-page-title,.eb-eyebrow { text-align:center; }
.eb-eyebrow { letter-spacing:.12em; font-size:11px; font-weight:700; color:var(--eb-primary); }
.eb-logo { margin:auto; width:48px; height:48px; font-size:24px; }
.eb-reset { display:block; }
.eb-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media(max-width:360px) { .eb-page,.eb-header { padding-left:12px; padding-right:12px; } .eb-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:561px) { .eb-app { border-left:1px solid var(--eb-border); border-right:1px solid var(--eb-border); } }

/* v0.3 shared operational components — only the central Design System defines them. */
.eb-role-label { display:block; font-size:11px; color:var(--eb-muted); }
.eb-empty-state { display:grid; gap:8px; align-content:center; min-height:100px; }
.eb-empty-state strong { font-size:14px; font-weight:800; }
.eb-search-form { display:grid; gap:12px; }
.eb-search-form .eb-field { min-width:0; }
.eb-search-form .eb-btn { justify-self:start; }
.eb-person-title { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
.eb-person-title strong { font-size:14px; font-weight:800; min-width:0; overflow-wrap:anywhere; }
.eb-customer, .eb-queue-item { display:grid; gap:8px; min-width:0; }
.eb-customer-meta { display:flex; flex-wrap:wrap; gap:4px 16px; font-size:11px; color:var(--eb-muted); }
.eb-customer-meta > span { max-width:100%; overflow-wrap:anywhere; }
.eb-pagination { display:flex; gap:12px; align-items:center; justify-content:space-between; font-size:12px; }
.eb-pagination .eb-btn { min-height:44px; }
.eb-status-neutral { background:var(--eb-soft); color:var(--eb-muted); }
.eb-danger-zone { display:grid; gap:12px; }
.eb-danger-zone .eb-btn-danger { justify-self:start; }
.eb-quick-link svg { width:20px; height:20px; }
.eb-stat:hover, .eb-quick-link:hover { border-color:var(--eb-primary); }
.eb-stat:focus-visible, .eb-quick-link:focus-visible { outline:2px solid var(--eb-primary); outline-offset:2px; }
@media (max-width:360px) {
    .eb-person-title { flex-wrap:wrap; }
    .eb-customer-meta { flex-direction:column; }
}
