*, *::before, *::after { box-sizing: border-box; } html, body { max-width: 100%; overflow-x: hidden; } body { font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; margin: 0; padding: 0; background-color: #f5f5f5; color: #111827; } .page { max-width: 1024px; margin: 0 auto; padding: 24px 16px 48px; } header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; flex-wrap: wrap; } .brand { display: flex; align-items: center; gap: 10px; } .logo { width: 32px; height: 32px; border-radius: 999px; background: radial-gradient(circle at 30% 30%, #34d399, #047857); } .brand-text-main { font-weight: 800; font-size: 18px; } .brand-text-sub { font-size: 12px; color: #6b7280; } nav { display: flex; gap: 10px; flex-wrap: wrap; } nav a { color: #374151; text-decoration: none; padding: 6px 10px; border-radius: 999px; font-size: 14px; } nav a:hover { background-color: #e5e7eb; } .section { margin-top: 18px; } .card { background-color: #ffffff; border-radius: 14px; padding: 14px 12px; box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04); } .section-header { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; } .section-title { font-size: 16px; font-weight: 700; } .hint { font-size: 12px; color: #6b7280; line-height: 1.7; } .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } @media (max-width: 720px) { .grid { grid-template-columns: 1fr; } } .field label { display: block; font-size: 12px; color: #374151; margin-bottom: 6px; } .field input, .field select { width: 100%; border: 1px solid #d1d5db; border-radius: 10px; padding: 10px 12px; font-size: 14px; outline: none; } .field input:focus, .field select:focus { border-color: #047857; box-shadow: 0 0 0 3px rgba(4, 120, 87, 0.12); } .btn { border: none; padding: 9px 16px; border-radius: 999px; font-size: 14px; font-weight: 700; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 6px; text-decoration: none; white-space: normal; } .btn-sm { padding: 7px 12px; font-size: 13px; } .btn-primary { background-color: #047857; color: #ffffff; } .btn-primary:hover { background-color: #065f46; } .btn-outline { background-color: transparent; border: 1px solid #d1d5db; color: #111827; } .btn-outline:hover { background-color: #e5e7eb; } .alert { border-radius: 12px; padding: 10px 12px; font-size: 13px; line-height: 1.7; display: none; margin-bottom: 12px; } .alert-success { background-color: #ecfdf5; border: 1px solid rgba(16,185,129,0.35); color: #065f46; display: block; } .alert-error { background-color: #fef2f2; border: 1px solid rgba(239,68,68,0.35); color: #991b1b; display: block; } .requests { display: grid; gap: 10px; } .request { background-color: #ffffff; border-radius: 14px; padding: 12px; border: 1px solid rgba(0,0,0,0.08); } .request-head { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; } .request-title { font-weight: 900; font-size: 14px; overflow-wrap: anywhere; } .request-meta { font-size: 12px; color: #6b7280; margin-top: 8px; overflow-wrap: anywhere; line-height: 1.7; } .request-message { white-space: pre-wrap; margin-top: 10px; background: rgba(0,0,0,0.03); padding: 10px; border-radius: 12px; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; } .request-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 10px; } .table-wrap { width: 100%; overflow: auto; border: 1px solid rgba(0,0,0,0.08); border-radius: 14px; background: #ffffff; } table { width: 100%; border-collapse: collapse; min-width: 920px; font-size: 13px; } thead th { text-align: right; background: #f9fafb; color: #111827; font-weight: 800; padding: 10px 12px; border-bottom: 1px solid rgba(0,0,0,0.08); white-space: nowrap; } tbody td { padding: 10px 12px; border-bottom: 1px solid rgba(0,0,0,0.06); vertical-align: top; overflow-wrap: anywhere; } tbody tr:hover td { background: rgba(0,0,0,0.015); } .status-pill { display: inline-flex; align-items: center; padding: 3px 8px; border-radius: 999px; font-size: 12px; border: 1px solid rgba(0,0,0,0.08); white-space: nowrap; } .status-pending { background: #fff7ed; color: #9a3412; } .status-approved { background: #ecfdf5; color: #065f46; } .status-rejected { background: #fef2f2; color: #991b1b; } .cell-actions { display: flex; gap: 8px; flex-wrap: wrap; } .btn[disabled] { opacity: 0.55; cursor: not-allowed; } details.msg { max-width: 520px; } details.msg >summary { cursor: pointer; color: #047857; font-weight: 800; list-style: none; } details.msg >summary::-webkit-details-marker { display: none; } details.msg >div { margin-top: 8px; white-space: pre-wrap; background: rgba(0,0,0,0.03); padding: 10px; border-radius: 12px; } .request-media-preview { display: grid; gap: 10px; margin-top: 10px; } .request-media-item { background: #ffffff; border: 1px solid rgba(0,0,0,0.08); border-radius: 12px; padding: 10px; } .request-media-title { color: #111827; font-size: 12px; font-weight: 900; margin-bottom: 8px; } .request-media-preview img, .request-media-preview video { background: #f3f4f6; border-radius: 10px; display: block; max-height: 320px; max-width: 100%; object-fit: contain; width: 100%; } .request-media-note { color: #6b7280; font-size: 12px; line-height: 1.7; margin-top: 8px; } dialog { width: min(760px, calc(100% - 24px)); max-height: calc(100vh - 32px); overflow: auto; border: 0; border-radius: 18px; padding: 0; box-shadow: 0 24px 70px rgba(15, 23, 42, 0.3); } dialog::backdrop { background: rgba(15, 23, 42, 0.5); } .edit-dialog-body { padding: 18px; } .edit-dialog-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; } .relation-list { display: grid; gap: 10px; margin-top: 10px; } .relation-card { border: 1px solid #d1d5db; border-radius: 14px; padding: 12px; background: #f9fafb; } .relation-fields { display: grid; grid-template-columns: minmax(180px, 1.4fr) minmax(140px, 1fr) minmax(140px, 0.8fr); gap: 10px; align-items: end; } .relation-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; } .source-tree-toolbar { display: flex; gap: 10px; flex-wrap: wrap; align-items: end; margin-bottom: 12px; } .source-tree-list { display: grid; gap: 8px; max-height: 360px; overflow: auto; padding: 4px; } .source-tree-item { width: 100%; border: 1px solid #e5e7eb; border-radius: 12px; background: #ffffff; padding: 10px 12px; text-align: right; } .source-tree-item:hover, .source-tree-item.active { border-color: #047857; background: #ecfdf5; } .source-tree-item-title { font-weight: 900; } .source-tree-item-meta { font-size: 12px; color: #6b7280; margin-top: 4px; line-height: 1.6; } .source-tree-item-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 8px; } @media (max-width: 720px) { .relation-fields { grid-template-columns: 1fr; } } .field textarea { width: 100%; min-height: 92px; border: 1px solid #d1d5db; border-radius: 10px; padding: 10px 12px; font: inherit; resize: vertical; } .batch-tools { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; align-items: start; } .batch-tools textarea { width: 100%; min-height: 260px; border: 1px solid #d1d5db; border-radius: 12px; padding: 10px 12px; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 12px; line-height: 1.7; resize: vertical; } .batch-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 10px 0; } .batch-stat { border: 1px solid #d1fae5; background: #ecfdf5; border-radius: 12px; padding: 10px; min-height: 66px; } .batch-stat strong { display: block; font-size: 20px; color: #065f46; line-height: 1.2; } .batch-stat span { display: block; font-size: 12px; color: #6b7280; margin-top: 4px; } .batch-list { display: grid; gap: 6px; max-height: 220px; overflow: auto; font-size: 12px; line-height: 1.6; } .batch-list-item { border: 1px solid #e5e7eb; border-radius: 10px; padding: 8px 10px; background: #f9fafb; overflow-wrap: anywhere; } @media (max-width: 820px) { .batch-tools { grid-template-columns: 1fr; } .batch-summary { grid-template-columns: 1fr; } } footer { margin-top: 24px; color: #6b7280; font-size: 12px; text-align: center; } /* admin unified top ui */
.page { padding-top: 18px;
}
header { margin-bottom: 16px;
}
#admin-login-section { margin-top: 12px !important; margin-bottom: 8px !important;
}
#admin-login-section >.card { padding: 10px 14px !important;
}
body.admin-authenticated #admin-login-title { font-size: 0;
}
body.admin-authenticated #admin-login-title::before { content: "لوحة الإدارة"; font-size: 18px; font-weight: 800;
}
body.admin-authenticated #alert,
body.admin-authenticated #admin-login-fields,
body.admin-authenticated #admin-login,
body.admin-authenticated #admin-forgot,
body.admin-authenticated #admin-locked-hint,
body.admin-authenticated #admin-login-section >.card >.hint { display: none !important;
}
body:not(.admin-authenticated) #admin-logout,
body:not(.admin-authenticated) #admin-refresh,
body:not(.admin-authenticated) #admin-enable-notifs,
body:not(.admin-authenticated) #admin-current-user { display: none !important;
}
body.admin-authenticated #admin-login-controls { display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 10px !important; flex-wrap: wrap !important; margin: 0 !important;
}
body.admin-authenticated #admin-login-controls >.field { display: flex !important; align-items: center !important; gap: 10px !important; flex-wrap: wrap !important; margin: 0 !important;
}
body.admin-authenticated #admin-login-controls label { display: none !important;
}
body.admin-authenticated #admin-current-user { display: inline-flex !important; align-items: center; padding: 7px 12px; border: 1px solid #cfe8db; border-radius: 999px; background: #f7fcf9; color: #0f5f46; font-weight: 800; margin: 0 !important;
}
body.admin-authenticated #admin-protected-sections { margin-top: 0 !important; padding-top: 0 !important;
}
body.admin-authenticated #admin-requests-section { margin-top: 8px !important;
}
#requests-inline-summary { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin: 0 0 14px !important;
}
.requests-summary-pill { display: inline-flex; align-items: center; gap: 6px; border: 1px solid #cfe8db; background: #f7fcf9; color: #0f5f46; border-radius: 999px; padding: 6px 12px; font-size: 13px; font-weight: 800;
}
.requests-summary-pill strong { color: #064e3b;
}
/* admin natural top spacing */
body.admin-authenticated #admin-login-section { margin-bottom: 10px !important;
}
body.admin-authenticated #admin-protected-sections { margin-top: 0 !important;
}
body.admin-authenticated #admin-requests-section { margin-top: 10px !important;
} /* admin requests polish */
body.admin-authenticated #admin-login-controls { justify-content: space-between !important;
}
body.admin-authenticated #admin-current-user { order: 1;
}
body.admin-authenticated #admin-action-buttons { order: 2;
}
#admin-requests-section .section-header { margin-bottom: 8px !important;
}
#admin-requests-title { font-size: 17px !important; font-weight: 900 !important;
}
.requests-summary-pill.requests-total { font-size: 14px; padding-inline: 14px;
}
.requests-summary-pill.requests-pending { border-color: #fed7aa; background: #fff7ed; color: #9a3412;
}
.requests-summary-pill.requests-approved { border-color: #bbf7d0; background: #ecfdf5; color: #065f46;
}
.requests-summary-pill.requests-rejected { border-color: #fecaca; background: #fef2f2; color: #991b1b;
} /* admin requests table polish */
#admin-requests-section .table-wrap { border-radius: 12px;
} #admin-requests-section table { min-width: 980px; font-size: 12px;
} #admin-requests-section thead th { padding: 8px 10px; font-size: 12px;
} #admin-requests-section tbody td { padding: 8px 10px; line-height: 1.55;
} #admin-requests-section th:nth-child(1),
#admin-requests-section td:nth-child(1) { width: 72px; white-space: nowrap; color: #6b7280; font-size: 12px;
} #admin-requests-section th:nth-child(2),
#admin-requests-section td:nth-child(2) { min-width: 135px; font-weight: 800;
} #admin-requests-section th:nth-child(4),
#admin-requests-section td:nth-child(4) { min-width: 140px; font-weight: 900; color: #111827;
} #admin-requests-section th:nth-child(5),
#admin-requests-section td:nth-child(5) { max-width: 115px; white-space: nowrap;
} #admin-requests-section th:nth-child(6),
#admin-requests-section td:nth-child(6) { max-width: 170px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
} #admin-requests-section th:nth-child(8),
#admin-requests-section td:nth-child(8) { width: 118px; white-space: nowrap; color: #6b7280; font-size: 12px;
} #admin-requests-section th:nth-child(9),
#admin-requests-section td:nth-child(9) { min-width: 95px;
} #admin-requests-section th:nth-child(10),
#admin-requests-section td:nth-child(10) { min-width: 230px;
} #admin-requests-section .cell-actions { gap: 6px; flex-wrap: nowrap;
} #admin-requests-section .cell-actions .btn,
#admin-requests-section td .btn { padding: 6px 10px; font-size: 12px; min-height: 32px; white-space: nowrap;
} /* admin requests pagination search */
.requests-toolbar { display: grid; grid-template-columns: minmax(240px, 1fr) 120px auto; gap: 10px; align-items: end; margin: 0 0 12px;
}
.requests-pager { display: inline-flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; min-height: 40px;
}
.requests-pager .hint { white-space: nowrap; font-weight: 700;
}
@media (max-width: 760px) { .requests-toolbar { grid-template-columns: 1fr; } .requests-pager { justify-content: flex-start; }
} /* compact requests pager and hide bottom login status */
#requests-toolbar { grid-template-columns: minmax(220px, 1fr) 96px auto !important; gap: 8px !important; margin-bottom: 10px !important;
}
#requests-toolbar .field label { margin-bottom: 4px !important;
}
#requests-toolbar input,
#requests-toolbar select { min-height: 36px !important; padding: 7px 10px !important;
}
.requests-pager { gap: 6px !important; min-height: 36px !important;
}
.requests-pager .btn { width: 36px !important; height: 36px !important; min-height: 36px !important; padding: 0 !important; font-size: 18px !important;
}
#requests-page-info { font-size: 12px !important; white-space: nowrap !important;
}
body.admin-authenticated #admin-requests-section #sb-status { display: none !important;
} /* requests scroll box instead of long page */
#admin-requests-section .table-wrap { max-height: 58vh !important; overflow: auto !important;
} #admin-requests-section thead th { position: sticky; top: 0; z-index: 2;
} #requests-toolbar { grid-template-columns: minmax(260px, 1fr) auto !important;
} .requests-page-size-field,
.requests-pager { display: none !important;
} body.admin-authenticated #admin-requests-section #sb-status { display: none !important;
} /* admin requests fixed viewport */
#admin-requests-section .table-wrap{ max-height:650px !important; overflow-y:auto !important; overflow-x:auto !important; border-radius:14px;
} /* sticky header */
#admin-requests-section thead th{ position:sticky; top:0; z-index:5; background:#f7f7f7;
} /* hide delegate stats block */
.section:has(#delegate-audit-summary){ display:none !important;
} /* admin delete request button */
#admin-requests-section .btn-danger { border-color: #fecaca !important; color: #991b1b !important; background: #fff !important;
}
#admin-requests-section .btn-danger:hover { background: #fef2f2 !important;
} /* compact important request table */
#admin-requests-section th:nth-child(1),
#admin-requests-section td:nth-child(1),
#admin-requests-section th:nth-child(3),
#admin-requests-section td:nth-child(3),
#admin-requests-section th:nth-child(5),
#admin-requests-section td:nth-child(5),
#admin-requests-section th:nth-child(6),
#admin-requests-section td:nth-child(6) { display: none !important;
} #admin-requests-section table { min-width: 760px !important;
} #admin-requests-section th:nth-child(2),
#admin-requests-section td:nth-child(2) { min-width: 150px !important; font-weight: 900 !important;
} #admin-requests-section th:nth-child(4),
#admin-requests-section td:nth-child(4) { min-width: 130px !important; font-weight: 900 !important;
} #admin-requests-section th:nth-child(8),
#admin-requests-section td:nth-child(8) { width: 105px !important; white-space: nowrap !important;
} #admin-requests-section th:nth-child(10),
#admin-requests-section td:nth-child(10) { min-width: 210px !important;
} #admin-requests-section details.msg >div { min-width: 260px; max-width: 520px;
} /* merged banner and general news */ /* requests stats cards */
.requests-stats-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; margin-top: 8px;
}
.requests-stat-card { border: 1px solid #e5e7eb; background: #ffffff; border-radius: 14px; padding: 12px; min-height: 72px;
}
.requests-stat-card strong { display: block; font-size: 22px; line-height: 1; color: #111827;
}
.requests-stat-card span { display: block; margin-top: 7px; font-size: 12px; color: #6b7280; font-weight: 800;
}
.requests-stat-card.stat-pending { background: #fff7ed; border-color: #fed7aa;
}
.requests-stat-card.stat-approved { background: #ecfdf5; border-color: #bbf7d0;
}
.requests-stat-card.stat-rejected { background: #fef2f2; border-color: #fecaca;
}
.requests-stat-card.stat-total { background: #f8fafc; border-color: #dbeafe;
} /* requests stats visibility fix */
.requests-stats-box { display: block !important; width: 100%; margin-top: 12px;
} /* requests stats 4x2 layout */
.requests-stats-cards { grid-template-columns: repeat(4, minmax(150px, 1fr)) !important; align-items: stretch;
} .requests-stat-card { min-height: 96px !important;
} @media (max-width: 900px) { .requests-stats-cards { grid-template-columns: repeat(2, minmax(130px, 1fr)) !important; }
} @media (max-width: 520px) { .requests-stats-cards { grid-template-columns: 1fr !important; }
} /* note 2 compact requests table */
#admin-requests-section th:nth-child(1),
#admin-requests-section td:nth-child(1),
#admin-requests-section th:nth-child(3),
#admin-requests-section td:nth-child(3),
#admin-requests-section th:nth-child(5),
#admin-requests-section td:nth-child(5),
#admin-requests-section th:nth-child(6),
#admin-requests-section td:nth-child(6) { display: none !important;
} #admin-requests-section table { min-width: 720px !important;
} #admin-requests-section th:nth-child(2),
#admin-requests-section td:nth-child(2),
#admin-requests-section th:nth-child(4),
#admin-requests-section td:nth-child(4) { font-weight: 900 !important;
} #admin-requests-section th:nth-child(8),
#admin-requests-section td:nth-child(8) { width: 100px !important; white-space: nowrap !important;
} #admin-requests-section th:nth-child(10),
#admin-requests-section td:nth-child(10) { min-width: 220px !important;
}

.maintenance-section {
  opacity: 0.92;
}
.maintenance-section > .section-header {
  cursor: pointer;
}
.maintenance-section.is-collapsed .section-body,
.maintenance-section.is-collapsed form,
.maintenance-section.is-collapsed textarea,
.maintenance-section.is-collapsed .grid,
.maintenance-section.is-collapsed .actions {
  display: none !important;
}
.maintenance-section .section-title::after {
  content: " — أدوات صيانة";
  font-size: 12px;
  color: #6b7280;
  font-weight: 600;
}

.extra-tools-section {
  opacity: 0.9;
}
.extra-tools-section > .section-header {
  cursor: pointer;
}
.extra-tools-section.is-collapsed .section-body,
.extra-tools-section.is-collapsed form,
.extra-tools-section.is-collapsed textarea,
.extra-tools-section.is-collapsed table,
.extra-tools-section.is-collapsed .table-wrap,
.extra-tools-section.is-collapsed .grid,
.extra-tools-section.is-collapsed .actions,
.extra-tools-section.is-collapsed details {
  display: none !important;
}
.extra-tools-section .section-title::after {
  content: " — أدوات إضافية";
  font-size: 12px;
  color: #6b7280;
  font-weight: 600;
}

.extra-tools-section > .section-header::before {
  content: "أداة غير يومية";
  display: inline-flex;
  align-items: center;
  margin-inline-end: 8px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f3f4f6;
  color: #6b7280;
  font-size: 11px;
  font-weight: 700;
}

body {
  background: #eef4f0 !important;
  color: #10231c !important;
}

.page {
  background: transparent !important;
}

header {
  background: linear-gradient(135deg, #ffffff 0%, #eef8f3 100%) !important;
  border: 1px solid #c7ddd3 !important;
  box-shadow: 0 10px 28px rgba(8, 86, 65, 0.10) !important;
}

.logo {
  background: linear-gradient(135deg, #0b7a5a, #20c997) !important;
  box-shadow: 0 8px 18px rgba(8, 120, 93, 0.25) !important;
}

.section,
.card,
.table-wrap {
  background: #f8fcfa !important;
  border: 1px solid #c9d8d1 !important;
  box-shadow: 0 12px 30px rgba(15, 35, 28, 0.08) !important;
}

.section-title,
.brand-text-main,
label,
th {
  color: #0b3d2f !important;
  font-weight: 900 !important;
}

.hint,
.brand-text-sub,
td {
  color: #4b5f58 !important;
}

input,
select,
textarea {
  background: #f8fcfa !important;
  color: #10231c !important;
  border: 1px solid #b7cbc2 !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: #0b7a5a !important;
  box-shadow: 0 0 0 4px rgba(11, 122, 90, 0.16) !important;
  outline: none !important;
}

.btn-primary,
button.btn-primary {
  background: #08785d !important;
  border-color: #08785d !important;
  color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(8, 120, 93, 0.22) !important;
}

.btn-outline,
button.btn-outline {
  background: #f8fcfa !important;
  border-color: #b9cbc3 !important;
  color: #123c30 !important;
}

.btn-outline:hover,
button.btn-outline:hover {
  background: #e6f6ef !important;
  border-color: #08785d !important;
  color: #075f49 !important;
}

table thead th {
  background: #eaf3ee !important;
  color: #0b3d2f !important;
}

tbody tr:nth-child(even) {
  background: #fbfdfc !important;
}

.status-pill,
#admin-current-user {
  background: #e0f4ec !important;
  border: 1px solid #9fd4bf !important;
  color: #075f49 !important;
}

.alert-success {
  background: #e0f4ec !important;
  color: #075f49 !important;
  border-color: #9fd4bf !important;
}

.alert-error {
  background: #fff1f0 !important;
  color: #b42318 !important;
  border-color: #f3b3ad !important;
}

body.admin-authenticated #admin-login-section {
  padding-top: 0 !important;
}

body.admin-authenticated #admin-login-section .section-header {
  margin-bottom: 4px !important;
  padding-bottom: 0 !important;
}

body.admin-authenticated #admin-login-section > .card {
  margin-top: 0 !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  min-height: 0 !important;
}

body.admin-authenticated #admin-login-controls {
  min-height: 0 !important;
}

.section {
  overflow: visible !important;
}

.section-header {
  padding: 14px 22px 8px !important;
  margin: 0 !important;
}

.section-title,
#admin-login-title,
#admin-requests-title {
  padding-inline: 8px !important;
  margin-inline: 0 !important;
  line-height: 1.8 !important;
}

.section > .card {
  margin: 0 18px 18px !important;
}

body.admin-authenticated #admin-login-section .section-header {
  padding: 12px 22px 6px !important;
}

body.admin-authenticated #admin-login-section > .card {
  margin: 0 18px 12px !important;
}

/* private admin/delegate soft working theme */
body {
  background: #eef4f0 !important;
}

.section,
.card,
.table-wrap,
.request,
.request-media-item,
.relation-card,
.source-tree-item,
.batch-list-item {
  background: #f8fcfa !important;
  border-color: #d8ebe2 !important;
}

input,
select,
textarea {
  background: #f8fcfa !important;
}

thead th {
  background: #edf7f1 !important;
}

tbody tr:nth-child(even) {
  background: #fbfdfc !important;
}



/* ===== Unified Admin & Delegate UI ===== */

:root{
  --ui-radius:16px;
  --ui-gap:16px;
  --ui-card:#f8fcfa;
  --ui-border:#d7e7de;
  --ui-shadow:0 10px 24px rgba(15,35,28,.08);
  --ui-input:#fdfefe;
  --ui-head:#edf7f1;
}

.section,
.card,
.table-wrap,
.request,
.request-media-item,
.relation-card,
.source-tree-item,
.batch-list-item{
    border-radius:var(--ui-radius)!important;
    box-shadow:var(--ui-shadow)!important;
    border:1px solid var(--ui-border)!important;
    background:var(--ui-card)!important;
}

.section-header{
    margin-bottom:var(--ui-gap)!important;
}

.section-title{
    font-size:20px!important;
    font-weight:800!important;
}

input,
select,
textarea{
    min-height:46px!important;
    border-radius:12px!important;
    background:var(--ui-input)!important;
}

button,
.btn,
.btn-primary,
.btn-outline{
    min-height:44px!important;
    border-radius:12px!important;
    font-weight:700!important;
}

table{
    border-collapse:separate!important;
    border-spacing:0!important;
}

thead th{
    background:var(--ui-head)!important;
    font-weight:800!important;
}

tbody td{
    padding:12px 14px!important;
}

tbody tr:nth-child(even){
    background:#fbfdfc!important;
}

/* Auth hard-stop: never show admin-only sections when logged out */
body:not(.admin-authenticated) section.admin-only-section {
  display: none !important;
}

.views-stats-block {
  white-space: pre-line;
  line-height: 1.65;
  font-size: 14px;
  margin-top: 4px;
}
