@layer legacy, system;
@layer legacy {
:root {
  --om-primary: #004851;
  --om-primary-2: #006a73;
  --om-primary-soft: #eaf5f4;
  --om-gold: #92842c;
  --om-gold-soft: #f8f4df;
  --om-bg: #f4f7f9;
  --om-card: #fff;
  --om-text: #17202f;
  --om-muted: #667085;
  --om-line: #e2e8ee;
  --om-danger: #b54749;
  --om-danger-soft: #fff1f0;
  --om-success: #14866d;
  --om-success-soft: #eaf8f3;
  --om-blue: #3779bf;
  --om-blue-soft: #edf5ff;

  
  --om-warn: #a56b09;
  --om-warn-soft: #fff6e4;
  --om-warn-strong: #d59d27;

  --om-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 10px 30px rgba(15, 23, 42, .045);
  --om-radius: 16px;
  --om-control: 42px;

  
  --om-sidebar-w: 270px;

  font-family: Tahoma, "Segoe UI", Arial, sans-serif;
  color-scheme: light;
}


* { box-sizing: border-box; }
html { background: var(--om-bg); scroll-behavior: smooth; }
body { margin: 0; color: var(--om-text); background: var(--om-bg); font-size: 14px; line-height: 1.75; }
button, input, select, textarea { font: inherit; }
button, a { touch-action: manipulation; }
a { color: inherit; text-decoration: none; }
.om-icon { display: inline-block; flex: 0 0 auto; vertical-align: middle; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }


.om-shell { min-height: 100vh; }
.om-sidebar { position: fixed; inset: 0 0 0 auto; width: var(--om-sidebar-w); background: #fff; border-left: 1px solid var(--om-line); z-index: 50; display: flex; flex-direction: column; padding: 18px 14px; }
.om-brand { height: 64px; display: flex; align-items: center; gap: 11px; padding: 0 8px 18px; border-bottom: 1px solid var(--om-line); }
.om-brand-mark { width: 42px; height: 42px; border-radius: 13px; background: linear-gradient(145deg, var(--om-primary), #087783); color: #fff; display: grid; place-items: center; box-shadow: 0 8px 20px rgba(0, 72, 81, .2); }
.om-brand strong { display: block; font-size: 15px; }
.om-brand span { display: block; color: var(--om-muted); font-size: 10px; }
.om-sidebar-close { display: none; margin-right: auto; }
.om-nav { padding: 18px 0; display: flex; flex-direction: column; gap: 4px; overflow: auto; }
.om-nav-label { font-size: 10px; color: #98a2b3; padding: 14px 14px 5px; }
.om-nav a { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 9px 12px; border-radius: 11px; color: #475467; font-weight: 600; transition: .18s ease; }
.om-nav a:hover { background: #f4f7f8; color: var(--om-primary); }
.om-nav a.is-active { color: var(--om-primary); background: var(--om-primary-soft); box-shadow: inset -3px 0 var(--om-primary); }
.om-nav a.is-active .om-icon { stroke-width: 2.2; }
.om-sidebar-user { margin-top: auto; border: 1px solid var(--om-line); border-radius: 14px; padding: 10px; display: flex; align-items: center; gap: 9px; background: #fbfcfd; }
.om-sidebar-user > div { min-width: 0; flex: 1; }
.om-sidebar-user strong, .om-sidebar-user small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.om-sidebar-user strong { font-size: 12px; }
.om-sidebar-user small { font-size: 10px; color: var(--om-muted); }
.om-avatar { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--om-primary); color: #fff; font-weight: 700; }
.om-avatar.is-soft { background: var(--om-primary-soft); color: var(--om-primary); border: 1px solid #cee3e2; }
.om-avatar.is-large { width: 62px; height: 62px; font-size: 23px; box-shadow: 0 0 0 7px rgba(255, 255, 255, .15); }
.om-icon-button { border: 0; background: transparent; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 9px; color: #667085; cursor: pointer; }
.om-icon-button:hover { background: #eef2f4; color: var(--om-primary); }


.om-main { margin-right: var(--om-sidebar-w); min-width: 0; }
.om-topbar { height: 68px; position: sticky; top: 0; z-index: 35; background: rgba(255, 255, 255, .92); backdrop-filter: blur(14px); border-bottom: 1px solid var(--om-line); display: flex; align-items: center; padding: 0 26px; gap: 18px; }
.om-menu-button { display: none; }
.om-topbar-title { display: flex; align-items: center; gap: 8px; font-weight: 700; }
.om-topbar-title small { font-size: 10px; color: var(--om-muted); font-weight: 400; }
.om-global-search { margin: auto; width: min(420px, 45vw); height: 40px; border: 1px solid var(--om-line); border-radius: 10px; display: flex; align-items: center; gap: 9px; padding: 0 12px; color: #98a2b3; background: #f9fafb; }
.om-global-search span { flex: 1; }
.om-global-search kbd { direction: ltr; border: 1px solid #d8dee5; background: #fff; border-radius: 6px; padding: 1px 6px; font-size: 10px; }
.om-topbar-actions { display: flex; align-items: center; gap: 7px; font-size: 11px; color: var(--om-muted); }
.om-live-dot, .om-health-dot { width: 9px; height: 9px; border-radius: 50%; display: inline-block; background: #1ca680; box-shadow: 0 0 0 4px rgba(28, 166, 128, .12); }
.om-live-dot.is-off { background: #98a2b3; box-shadow: none; }
.om-page { width: min(1480px, 100%); margin: 0 auto; padding: 28px; }
.om-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.om-page-heading h1 { font-size: 25px; line-height: 1.35; margin: 3px 0 4px; letter-spacing: -.5px; }
.om-page-heading p { margin: 0; color: var(--om-muted); font-size: 12px; }
.om-eyebrow { font-size: 10px; letter-spacing: 1px; color: var(--om-gold); font-weight: 700; }
.om-heading-actions { display: flex; gap: 9px; align-items: center; }
.om-button { min-height: 40px; padding: 8px 15px; border-radius: 10px; border: 1px solid transparent; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-weight: 700; font-size: 12px; cursor: pointer; white-space: nowrap; transition: .18s ease; }
.om-button:hover { transform: translateY(-1px); }
.om-button.is-primary { background: var(--om-primary); color: #fff; box-shadow: 0 8px 18px rgba(0, 72, 81, .13); }
.om-button.is-primary:hover { background: #00606a; }
.om-button.is-secondary { background: #fff; border-color: #dbe3e8; color: var(--om-primary); }
.om-button.is-ghost { background: transparent; color: #667085; }
.om-button.is-small { min-height: 34px; padding: 5px 11px; font-size: 11px; }
.om-button.is-wide { width: 100%; }
.om-count-pill, .om-soft-badge { border: 1px solid #dce5e7; background: #fff; border-radius: 999px; padding: 6px 11px; color: #667085; font-size: 11px; }
.om-alert { padding: 12px 15px; border-radius: 11px; margin-bottom: 18px; border: 1px solid; }
.om-alert.is-success { background: var(--om-success-soft); border-color: #bde7d8; color: #126b58; }
.om-alert.is-error { background: var(--om-danger-soft); border-color: #f3ceca; color: #9a3438; }
.om-alert ul { margin: 6px 18px 0; }
.om-card { background: var(--om-card); border: 1px solid var(--om-line); border-radius: var(--om-radius); box-shadow: var(--om-shadow); }
.om-card-header { min-height: 70px; padding: 17px 20px; border-bottom: 1px solid var(--om-line); display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.om-card-header h2 { font-size: 15px; margin: 0 0 2px; }
.om-card-header p { font-size: 10px; color: var(--om-muted); margin: 0; }
.om-card-header > a { font-size: 11px; color: var(--om-primary); font-weight: 700; }
.om-help { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: #fff6d6; color: #8a7617; cursor: help; font-size: 11px; }


.om-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 16px; }
.om-kpi-grid.is-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.om-kpi-card { min-height: 112px; padding: 17px; border: 1px solid var(--om-line); background: #fff; border-radius: 15px; display: flex; align-items: center; gap: 13px; box-shadow: var(--om-shadow); position: relative; overflow: hidden; }
.om-kpi-card:before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: var(--accent); }
.om-kpi-card.is-teal { --accent: var(--om-primary); --soft: var(--om-primary-soft); }
.om-kpi-card.is-blue { --accent: var(--om-blue); --soft: var(--om-blue-soft); }
.om-kpi-card.is-gold { --accent: var(--om-gold); --soft: var(--om-gold-soft); }

.om-kpi-card.is-rose { --accent: var(--om-danger); --soft: var(--om-danger-soft); }
.om-kpi-icon { width: 46px; height: 46px; border-radius: 13px; background: var(--soft); color: var(--accent); display: grid; place-items: center; }
.om-kpi-card > div:last-child { min-width: 0; }
.om-kpi-card span, .om-kpi-card strong, .om-kpi-card small { display: block; }
.om-kpi-card span { font-size: 11px; color: var(--om-muted); }
.om-kpi-card strong { font-size: 19px; line-height: 1.5; }
.om-kpi-card small { font-size: 9px; color: #98a2b3; }
.om-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(320px, .8fr); gap: 16px; margin-bottom: 16px; }
.om-dashboard-grid.is-lower { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.om-chart-card { min-width: 0; }
.om-bars { height: 280px; padding: 25px 22px 16px; display: flex; align-items: flex-end; gap: 11px; direction: ltr; overflow-x: auto; }
.om-bar-item { height: 100%; min-width: 30px; flex: 1; display: flex; flex-direction: column; align-items: center; gap: 5px; }
.om-bar-track { height: 210px; width: min(28px, 70%); background: #eef3f4; border-radius: 9px; display: flex; align-items: flex-end; overflow: hidden; }
.om-bar-track i { width: 100%; background: linear-gradient(180deg, #1a9c91, var(--om-primary)); border-radius: 9px 9px 3px 3px; min-height: 7px; }
.om-bar-item small, .om-bar-value { font-size: 9px; color: #98a2b3; }
.om-frequency-list { padding: 13px 20px; }
.om-frequency-row { padding: 10px 0; border-bottom: 1px dashed #e5eaee; }
.om-frequency-row:last-child { border: 0; }
.om-frequency-row > div:first-child { display: flex; justify-content: space-between; margin-bottom: 6px; font-size: 11px; }
.om-frequency-row strong { font-size: 10px; color: var(--om-primary); }
.om-progress { height: 7px; background: #eaf0f1; border-radius: 8px; overflow: hidden; }
.om-progress i { height: 100%; display: block; background: linear-gradient(90deg, var(--om-primary), #1c9b90); border-radius: 8px; }
.om-list { padding: 6px 18px; }
.om-list-row { min-height: 67px; display: flex; align-items: center; gap: 11px; padding: 9px 2px; border-bottom: 1px solid #edf0f2; }
.om-list-row:last-child { border-bottom: 0; }
.om-list-avatar { width: 38px; height: 38px; border-radius: 11px; background: var(--om-primary-soft); color: var(--om-primary); display: grid; place-items: center; }
.om-list-avatar.is-success { background: var(--om-success-soft); color: var(--om-success); }
.om-list-main { min-width: 0; flex: 1; }
.om-list-main strong, .om-list-main small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.om-list-main strong { font-size: 12px; }
.om-list-main small { font-size: 9px; color: var(--om-muted); }
.om-list-row > b, .om-payment-list b { font-size: 12px; color: var(--om-gold); }
.om-list-row > b small, .om-payment-list b small { font-size: 9px; }
.om-priority-dot { width: 9px; height: 9px; border-radius: 50%; background: #98a2b3; }
.om-priority-dot.is-important { background: var(--om-warn-strong); }
.om-priority-dot.is-urgent { background: #c94b59; }
.om-status { display: inline-flex; align-items: center; width: max-content; border-radius: 999px; padding: 3px 8px; font-size: 9px; background: #f1f3f5; color: #667085; }

.om-status.is-new, .om-status.is-draft { background: #f3f1ff; color: #6e59b0; }
.om-status.is-active, .om-status.is-sent { background: var(--om-success-soft); color: var(--om-success); }
.om-status.is-loyal { background: var(--om-gold-soft); color: #786a16; }
.om-status.is-at_risk, .om-status.is-important { background: var(--om-warn-soft); color: var(--om-warn); }
.om-status.is-inactive, .om-status.is-paused { background: #f0f2f4; color: #667085; }
.om-status.is-urgent { background: var(--om-danger-soft); color: var(--om-danger); }
.om-empty { min-height: 190px; padding: 30px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #98a2b3; }
.om-empty strong { color: #475467; margin-top: 8px; }
.om-empty p { font-size: 10px; margin: 3px 0; max-width: 360px; }
.om-empty-inline { color: #98a2b3; font-size: 11px; padding: 22px; text-align: center; }


.om-filter-card { margin-bottom: 14px; padding: 13px; }
.om-filter-bar { display: grid; grid-template-columns: minmax(230px, 1fr) 190px 210px auto auto; gap: 9px; }
.om-search-field { position: relative; }
.om-search-field .om-icon { position: absolute; right: 13px; top: 12px; color: #98a2b3; }
.om-search-field input { padding-right: 41px; }
.om-form-stack { display: flex; flex-direction: column; gap: 13px; }
.om-form-stack label > span, .om-form-grid label > span, .om-date-field > span { display: block; font-size: 10px; color: #475467; font-weight: 700; margin-bottom: 5px; }
.om-form-stack label small { font-weight: 400; color: #98a2b3; }
.om-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }

.om-form-stack input, .om-form-stack select, .om-form-stack textarea,
.om-filter-bar input, .om-filter-bar select,
.om-rule-row input, .om-rule-row select,
.om-task-actions input {
  width: 100%; min-width: 0; min-height: var(--om-control); border: 1px solid #d7e0e5; border-radius: 9px;
  background: #fff; color: var(--om-text); padding: 8px 11px; outline: 0; transition: .15s;
}
.om-form-stack textarea { resize: vertical; }
.om-form-stack input:focus, .om-form-stack select:focus, .om-form-stack textarea:focus,
.om-filter-bar input:focus, .om-filter-bar select:focus,
.om-rule-row input:focus, .om-rule-row select:focus { border-color: #72aaa9; box-shadow: 0 0 0 3px rgba(0, 72, 81, .08); }
.om-table-card { overflow: hidden; }
.om-table-wrap { overflow: auto; }
.om-table { width: 100%; border-collapse: collapse; min-width: 1000px; }
.om-table th { background: #f8fafb; color: #667085; font-size: 10px; font-weight: 700; text-align: right; padding: 12px 14px; border-bottom: 1px solid var(--om-line); white-space: nowrap; }
.om-table td { padding: 13px 14px; border-bottom: 1px solid #edf0f2; vertical-align: middle; font-size: 11px; }
.om-table tbody tr:hover { background: #fbfdfd; }
.om-person { display: flex; align-items: center; gap: 9px; min-width: 170px; }
.om-person strong, .om-person small { display: block; }
.om-person small, .om-cell-note { color: #98a2b3; font-size: 9px; }
.om-money { color: var(--om-gold); white-space: nowrap; }
.om-money small { font-size: 9px; }
.om-date-pair small { display: block; white-space: nowrap; }
.om-row-action { text-align: left; }
.om-pagination { padding: 14px 18px; border-top: 1px solid var(--om-line); }
.pagination { display: flex; list-style: none; gap: 4px; margin: 0; padding: 0; }
.page-link { min-width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid var(--om-line); border-radius: 8px; font-size: 10px; }
.active > .page-link { background: var(--om-primary); color: #fff; border-color: var(--om-primary); }
.disabled > .page-link { opacity: .4; }


.om-profile-hero { background: linear-gradient(135deg, #004851, #076a70); border-radius: 18px; color: #fff; padding: 22px 24px; margin-bottom: 14px; box-shadow: 0 15px 35px rgba(0, 72, 81, .15); position: relative; overflow: hidden; }
.om-profile-hero:after { content: ""; position: absolute; width: 240px; height: 240px; border: 55px solid rgba(255, 255, 255, .04); border-radius: 50%; left: -70px; top: -100px; }
.om-profile-main { position: relative; z-index: 1; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.om-back { font-size: 10px; display: inline-flex; align-items: center; gap: 5px; opacity: .8; margin-bottom: 12px; }
.om-profile-person { display: flex; align-items: center; gap: 14px; }
.om-profile-person h1 { font-size: 24px; margin: 2px 0; }
.om-profile-person .om-eyebrow { color: #dfd58e; }
.om-profile-meta { display: flex; align-items: center; gap: 8px; font-size: 10px; opacity: .88; }
.om-profile-meta i { width: 3px; height: 3px; background: #fff; border-radius: 50%; }
.om-profile-total { text-align: left; }
.om-profile-total span, .om-profile-total small { display: block; font-size: 10px; opacity: .8; }
.om-profile-total strong { font-size: 29px; }
.om-metric-strip { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: #fff; border: 1px solid var(--om-line); border-radius: 14px; margin-bottom: 15px; box-shadow: var(--om-shadow); }
.om-metric-strip > div { padding: 15px 17px; border-left: 1px solid var(--om-line); min-width: 0; }
.om-metric-strip > div:last-child { border: 0; }
.om-metric-strip span, .om-metric-strip strong { display: block; }
.om-metric-strip span { font-size: 9px; color: var(--om-muted); }
.om-metric-strip strong { font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.om-profile-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 15px; }
.om-profile-content, .om-profile-aside { display: flex; flex-direction: column; gap: 15px; }
.om-timeline { padding: 18px 22px; }
.om-timeline article, .om-activity-stream article { display: grid; grid-template-columns: 35px 1fr; gap: 12px; position: relative; padding-bottom: 18px; }
.om-timeline article:not(:last-child):before, .om-activity-stream article:not(:last-child):before { content: ""; position: absolute; right: 17px; top: 34px; bottom: 0; width: 1px; background: #dfe7ea; }
.om-timeline-icon { width: 35px; height: 35px; border-radius: 11px; background: var(--om-primary-soft); color: var(--om-primary); display: grid; place-items: center; position: relative; z-index: 1; }
.om-timeline article header, .om-activity-stream article header { display: flex; justify-content: space-between; gap: 10px; }
.om-timeline article strong, .om-activity-stream article strong { font-size: 12px; }
.om-timeline article time, .om-activity-stream article time { font-size: 9px; color: #98a2b3; }
.om-timeline article p, .om-activity-stream article p { font-size: 10px; color: #667085; margin: 2px 0; }
.om-timeline article small, .om-activity-stream article small { font-size: 9px; color: #98a2b3; }
.om-payment-list { padding: 7px 18px; }
.om-payment-list > div { display: flex; align-items: center; gap: 10px; min-height: 63px; border-bottom: 1px solid #edf0f2; }
.om-payment-list > div:last-child { border: 0; }
.om-tag-field { border: 0; padding: 0; margin: 0; }
.om-tag-field legend { font-size: 10px; font-weight: 700; color: #475467; margin-bottom: 7px; }
.om-tag-field > div { display: flex; flex-wrap: wrap; gap: 6px; }
.om-chip-check input { position: absolute; opacity: 0; pointer-events: none; }
.om-chip-check span { display: block ; border: 1px solid #dfe6e9; border-radius: 999px; padding: 4px 9px ; margin: 0 ; font-size: 9px ; cursor: pointer; }
.om-chip-check input:checked + span { background: var(--om-primary-soft); border-color: #a9cecb; color: var(--om-primary); }
.om-check, .om-check-card { display: flex ; align-items: center; gap: 9px; }
.om-check input, .om-check-card input { width: 17px ; height: 17px ; min-height: 0 ; accent-color: var(--om-primary); }
.om-check-card { border: 1px solid var(--om-line); border-radius: 10px; padding: 10px; }
.om-check-card span { margin: 0 ; }
.om-check-card strong, .om-check-card small { display: block; }
.om-check-card small { font-size: 8px ; color: #98a2b3; }
.om-compact-list { padding: 9px 17px; }
.om-compact-list > div { display: flex; align-items: center; gap: 9px; padding: 9px 0; border-bottom: 1px solid #edf0f2; }
.om-compact-list strong, .om-compact-list small { display: block; }
.om-compact-list strong { font-size: 11px; }
.om-compact-list small { font-size: 8px; color: #98a2b3; }


.om-tabs { display: flex; gap: 5px; margin-bottom: 14px; }
.om-tabs a { padding: 7px 14px; border-radius: 9px; color: #667085; font-size: 11px; font-weight: 700; }
.om-tabs a.is-active { background: #fff; color: var(--om-primary); box-shadow: var(--om-shadow); }
.om-task-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.om-task-card { background: #fff; border: 1px solid var(--om-line); border-top: 3px solid #cbd5dc; border-radius: 14px; padding: 16px; box-shadow: var(--om-shadow); }
.om-task-card.is-important { border-top-color: var(--om-warn-strong); }
.om-task-card.is-urgent { border-top-color: #c94b59; }
.om-task-card > header { display: flex; justify-content: space-between; }
.om-task-card time { font-size: 9px; color: var(--om-muted); }
.om-task-card time.is-overdue { color: var(--om-danger); font-weight: 700; }
.om-task-card h2 { font-size: 14px; margin: 14px 0 3px; }
.om-task-card > p { font-size: 10px; color: var(--om-muted); min-height: 36px; margin: 0 0 14px; }
.om-task-meta { display: flex; flex-wrap: wrap; gap: 10px; border-top: 1px solid var(--om-line); padding-top: 11px; }
.om-task-meta span { font-size: 9px; display: flex; align-items: center; gap: 5px; color: #667085; }
.om-task-actions { display: flex; gap: 7px; margin-top: 12px; }
.om-task-actions input { min-height: 34px; font-size: 10px; }
.om-task-result { background: #f8fafb; border-radius: 9px; padding: 9px; margin-top: 12px; font-size: 9px; }
.om-badge-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.om-badge-card { background: #fff; border: 1px solid var(--om-line); border-radius: 16px; overflow: hidden; box-shadow: var(--om-shadow); align-self: start; }
.om-badge-card.is-disabled { opacity: .62; }
.om-badge-art { height: 110px; background: radial-gradient(circle at 50% 0, #fbf6d9, #eef7f6); display: grid; place-items: center; color: var(--om-gold); }
.om-badge-body { padding: 15px; }
.om-badge-body > header { display: flex; justify-content: space-between; }
.om-badge-body h2 { font-size: 14px; margin: 12px 0 4px; }
.om-badge-body > p { font-size: 9px; color: var(--om-muted); min-height: 75px; }
.om-badge-rules { display: flex; flex-direction: column; gap: 4px; background: #f8fafb; border-radius: 9px; padding: 8px; }
.om-badge-rules span { font-size: 8px; color: #667085; }
.om-badge-card details { border-top: 1px solid var(--om-line); margin-top: 12px; padding-top: 10px; }
.om-badge-card summary { font-size: 10px; color: var(--om-primary); cursor: pointer; margin-bottom: 10px; }
.om-campaign-list { padding: 8px 18px; }
.om-campaign-list article { min-height: 72px; display: flex; align-items: center; gap: 11px; border-bottom: 1px solid #edf0f2; }
.om-campaign-list article:last-child { border: 0; }
.om-campaign-meta { width: 100px; text-align: left; }
.om-campaign-meta small, .om-campaign-meta strong { display: block; }
.om-campaign-meta small { font-size: 8px; color: #98a2b3; }
.om-campaign-meta strong { font-size: 10px; }
.om-campaign-form { display: grid ; grid-template-columns: 1.15fr .85fr; gap: 18px; }
.om-campaign-form section { display: flex; flex-direction: column; gap: 12px; }
.om-campaign-form h3 { font-size: 13px; margin: 0; border-bottom: 1px solid var(--om-line); padding-bottom: 9px; }
.om-rule-builder { border: 1px dashed #cedadd; border-radius: 11px; padding: 10px; }
.om-rule-builder > header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.om-rule-row { display: grid; grid-template-columns: 1.4fr .7fr 1fr 34px; gap: 6px; margin-top: 6px; }
.om-rule-row input, .om-rule-row select { min-height: 36px; font-size: 9px; }
.om-safety-note { display: flex; gap: 9px; background: var(--om-primary-soft); border: 1px solid #cce1df; color: var(--om-primary); padding: 11px; border-radius: 10px; }
.om-safety-note strong { font-size: 10px; }
.om-safety-note p { font-size: 8px; margin: 2px 0; }
.om-activity-stream { padding: 20px; }
.om-settings-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.om-health-card { display: flex; align-items: center; gap: 13px; padding: 18px; }
.om-health-dot.is-ok { background: var(--om-success); }
.om-health-dot.is-warning { background: var(--om-warn-strong); }
.om-health-card > div { flex: 1; }
.om-health-card h2 { font-size: 13px; margin: 0; }
.om-health-card p { font-size: 9px; color: var(--om-muted); margin: 2px 0; }
.om-health-card > strong { font-size: 10px; }
.om-settings-note { padding: 20px; margin-top: 14px; }
.om-settings-note h2 { font-size: 14px; margin-top: 0; }
.om-settings-note p { color: var(--om-muted); font-size: 10px; }
.om-settings-note code { direction: ltr; background: #eef2f4; padding: 2px 6px; border-radius: 5px; }


.om-dialog { width: min(600px, calc(100vw - 28px)); max-height: calc(100vh - 30px); padding: 0; border: 0; border-radius: 17px; box-shadow: 0 30px 80px rgba(15, 23, 42, .25); overflow: auto; }
.om-dialog.is-wide { width: min(940px, calc(100vw - 28px)); }
.om-dialog::backdrop { background: rgba(15, 23, 42, .42); backdrop-filter: blur(3px); }
.om-dialog > form > header { position: sticky; top: 0; z-index: 2; background: #fff; min-height: 72px; padding: 15px 19px; border-bottom: 1px solid var(--om-line); display: flex; justify-content: space-between; align-items: center; }
.om-dialog h2 { font-size: 16px; margin: 0; }
.om-dialog header p { font-size: 9px; color: var(--om-muted); margin: 0; }
.om-dialog-body { padding: 18px ; }
.om-dialog footer { position: sticky; bottom: 0; background: #fff; border-top: 1px solid var(--om-line); padding: 12px 18px; display: flex; justify-content: flex-end; gap: 8px; }
.om-input-action { display: flex; gap: 5px; }
.om-input-action input { flex: 1; }

.om-jalali-popover { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; background: rgba(15, 23, 42, .35); padding: 15px; }
.om-jalali-panel { width: min(400px, 100%); background: #fff; border-radius: 15px; box-shadow: 0 25px 60px rgba(15, 23, 42, .22); padding: 17px; }
.om-jalali-panel h3 { font-size: 14px; margin: 0 0 12px; }
.om-jalali-inputs { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 7px; }
.om-jalali-time { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 8px; }
.om-jalali-panel input, .om-jalali-panel select { width: 100%; height: 40px; border: 1px solid var(--om-line); border-radius: 8px; padding: 6px; }
.om-jalali-actions { display: flex; justify-content: flex-end; gap: 7px; margin-top: 14px; }


.om-auth { min-height: 100vh; background: #eef3f4; display: grid; place-items: center; padding: 25px; }
.om-login-shell { width: min(1020px, 100%); min-height: 600px; background: #fff; border-radius: 24px; box-shadow: 0 30px 90px rgba(15, 23, 42, .12); display: grid; grid-template-columns: 1.1fr .9fr; overflow: hidden; }
.om-login-story { background: linear-gradient(145deg, #003c44, #096b72); color: #fff; padding: 65px; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
.om-login-story:before, .om-login-story:after { content: ""; position: absolute; border-radius: 50%; border: 70px solid rgba(255, 255, 255, .035); }
.om-login-story:before { width: 300px; height: 300px; top: -170px; left: -130px; }
.om-login-story:after { width: 230px; height: 230px; bottom: -140px; right: -100px; }
.om-login-logo { width: 54px; height: 54px; border-radius: 16px; background: rgba(255, 255, 255, .12); display: grid; place-items: center; margin-bottom: 25px; }
.om-login-story .om-eyebrow { color: #d8ce7e; }
.om-login-story h1 { font-size: 32px; line-height: 1.6; margin: 8px 0 12px; }
.om-login-story > p { font-size: 12px; opacity: .78; max-width: 470px; }
.om-login-quote { margin-top: 40px; padding: 14px 17px; border-right: 3px solid #c9b94e; background: rgba(255, 255, 255, .07); border-radius: 8px; font-size: 12px; }
.om-login-card { padding: 60px 50px; display: flex; flex-direction: column; justify-content: center; }
.om-login-card h2 { font-size: 25px; margin: 5px 0; }
.om-login-card > div > p { font-size: 11px; color: var(--om-muted); margin: 0 0 25px; }
.om-login-help { text-align: center; color: #98a2b3; margin-top: 16px; font-size: 9px; }
.om-sidebar-backdrop { display: none; }


@media (max-width: 1180px) {
  .om-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .om-badge-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .om-task-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .om-metric-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .om-metric-strip > div:nth-child(3) { border-left: 0; }
  .om-metric-strip > div:nth-child(-n+3) { border-bottom: 1px solid var(--om-line); }
}
@media (max-width: 980px) {
  .om-sidebar { transform: translateX(105%); transition: .2s ease; box-shadow: -20px 0 60px rgba(15, 23, 42, .16); }
  body.om-sidebar-open .om-sidebar { transform: none; }
  body.om-sidebar-open .om-sidebar-backdrop { display: block; position: fixed; inset: 0; background: rgba(15, 23, 42, .35); z-index: 45; }
  .om-sidebar-close, .om-menu-button { display: grid; }
  .om-main { margin-right: 0; }
  .om-global-search { margin-right: auto; }
  .om-dashboard-grid, .om-dashboard-grid.is-lower { grid-template-columns: 1fr; }
  .om-profile-grid { grid-template-columns: 1fr; }
  .om-profile-aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
  .om-badge-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .om-settings-grid { grid-template-columns: 1fr; }
  .om-filter-bar { grid-template-columns: 1fr 1fr 1fr auto; }
  .om-filter-bar .om-search-field { grid-column: span 4; }
  .om-campaign-form { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  :root { --om-radius: 14px; }
  .om-topbar { height: 60px; padding: 0 14px; gap: 8px; }
  .om-topbar-title, .om-topbar-actions { display: none; }
  .om-global-search { width: auto; flex: 1; }
  .om-global-search span { font-size: 10px; }
  .om-global-search kbd { display: none; }
  .om-page { padding: 18px 12px 85px; }
  .om-page-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .om-page-heading h1 { font-size: 21px; }
  .om-heading-actions { width: 100%; overflow: auto; }
  .om-kpi-grid, .om-kpi-grid.is-three { grid-template-columns: 1fr 1fr; gap: 9px; }
  .om-kpi-card { min-height: 102px; padding: 13px; }
  .om-kpi-icon { width: 40px; height: 40px; }
  .om-kpi-card strong { font-size: 15px; }
  .om-card-header { padding: 14px 15px; min-height: 62px; }
  .om-bars { height: 240px; padding-inline: 14px; }
  .om-bar-track { height: 170px; }
  .om-profile-main { align-items: flex-start; flex-direction: column; }
  .om-profile-total { text-align: right; }
  .om-profile-person h1 { font-size: 20px; }
  .om-profile-meta { flex-wrap: wrap; }
  .om-metric-strip { grid-template-columns: 1fr 1fr; }
  .om-metric-strip > div { border-bottom: 1px solid var(--om-line) ; }
  .om-metric-strip > div:nth-child(2n) { border-left: 0; }
  .om-metric-strip > div:last-child { grid-column: span 2; border-bottom: 0 ; }
  .om-profile-aside { display: flex; }
  .om-filter-bar { grid-template-columns: 1fr; }
  .om-filter-bar .om-search-field { grid-column: auto; }
  .om-table { min-width: 0; }
  .om-table thead { display: none; }
  .om-table, .om-table tbody, .om-table tr, .om-table td { display: block; width: 100%; }
  .om-table tr { padding: 12px 14px; border-bottom: 1px solid var(--om-line); }
  .om-table td { display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 0; padding: 6px 0; text-align: left; }
  
  .om-table td:before { content: attr(data-label); font-size: 9px; color: #98a2b3; text-align: right; }
  .om-table td:first-child { padding-bottom: 10px; }
  .om-table td:first-child:before, .om-table .om-row-action:before { display: none; }
  .om-row-action .om-button { width: 100%; margin-top: 6px; }
  .om-task-grid { grid-template-columns: 1fr; }
  .om-badge-grid { grid-template-columns: 1fr; }
  .om-task-actions { flex-direction: column; }
  .om-dialog-body { padding: 14px ; }
  .om-form-grid { grid-template-columns: 1fr; }
  .om-rule-row { grid-template-columns: 1fr .7fr; }
  .om-rule-row input { grid-column: 1; }
  .om-rule-row .om-icon-button { grid-column: 2; grid-row: 2; }
  .om-campaign-list article { display: grid; grid-template-columns: 42px 1fr auto; padding: 10px 0; }
  .om-campaign-meta { display: none; }
  .om-login-shell { grid-template-columns: 1fr; min-height: 0; }
  .om-login-story { display: none; }
  .om-login-card { padding: 36px 24px; }
  .om-auth { padding: 12px; }
  .om-tabs { overflow: auto; }
  
}
@media (max-width: 430px) {
  .om-kpi-grid, .om-kpi-grid.is-three { grid-template-columns: 1fr; }
  .om-profile-hero { padding: 18px; }
  .om-profile-person { align-items: flex-start; }
  .om-avatar.is-large { width: 48px; height: 48px; font-size: 18px; }
  .om-metric-strip { grid-template-columns: 1fr; }
  .om-metric-strip > div, .om-metric-strip > div:nth-child(2n), .om-metric-strip > div:last-child { grid-column: auto; border-left: 0; border-bottom: 1px solid var(--om-line) ; }
  .om-metric-strip > div:last-child { border-bottom: 0 ; }
}
@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto ; transition: none ; animation: none ; }
}


.om-rule-row > [data-rule-value] { display: block; min-width: 0; }
.om-profile-hero:after { display: none; }
@media (max-width: 700px) {
  .om-rule-row > [data-rule-value] { grid-column: 1; }
  .om-rule-row > [data-rule-value] input, .om-rule-row > [data-rule-value] select { grid-column: auto; }
}
@media print {
  .om-sidebar, .om-topbar, .om-button, .om-filter-card { display: none ; }
  .om-main { margin: 0; }
  .om-page { padding: 0; }
  .om-card { box-shadow: none; }
}


.om-campaign-metrics { display: grid; grid-template-columns: repeat(2, minmax(72px, 1fr)); gap: 3px 10px; min-width: 210px; }
.om-campaign-metrics span { font-size: 8px; color: var(--om-muted); white-space: nowrap; }
.om-campaign-metrics b { font-size: 10px; color: var(--om-primary); }
.om-campaign-actions { display: flex; align-items: center; gap: 6px; }
.om-campaign-actions form { margin: 0; }
.om-audience-preview { display: grid; grid-template-columns: 1fr auto; gap: 10px; border: 1px solid #cfe2e1; background: #f4faf9; border-radius: 12px; padding: 12px; }
.om-audience-preview > div:first-child { display: flex; align-items: center; gap: 9px; color: var(--om-primary); }
.om-audience-preview span strong, .om-audience-preview span small { display: block; }
.om-audience-preview span small { font-size: 8px; color: var(--om-muted); }
.om-audience-preview > [data-preview-result] { grid-column: 1 / -1; background: #fff; border-radius: 9px; padding: 10px; font-size: 10px; color: #475467; }
.om-audience-preview > [data-preview-result] > strong { color: var(--om-primary); font-size: 12px; }
.om-audience-preview ul { margin: 8px 16px 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 15px; }
.om-audience-preview li { font-size: 8px; color: #667085; }
.om-rule-builder > header small { display: block; font-size: 8px; color: #98a2b3; font-weight: 400; }
@media (max-width: 1100px) {
  .om-campaign-list article { flex-wrap: wrap; }
  .om-campaign-metrics { order: 5; width: 100%; grid-template-columns: repeat(4, 1fr); border-top: 1px dashed var(--om-line); padding-top: 8px; }
  .om-campaign-actions { margin-right: auto; }
}
@media (max-width: 700px) {
  .om-campaign-list article { grid-template-columns: 42px minmax(0, 1fr) auto ; }
  .om-campaign-metrics { grid-column: 1 / -1; grid-template-columns: repeat(2, 1fr); min-width: 0; }
  .om-campaign-actions { grid-column: 1 / -1; width: 100%; margin: 0; }
  .om-campaign-actions form { flex: 1; }
  .om-campaign-actions .om-button { width: 100%; }
  .om-audience-preview { grid-template-columns: 1fr; }
  .om-audience-preview > .om-button, .om-audience-preview > [data-preview-result] { grid-column: 1; }
  .om-audience-preview ul { grid-template-columns: 1fr; }
}


.om-test-panel { margin-bottom: 14px; }
.om-test-panel > summary { list-style: none; cursor: pointer; padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; color: var(--om-primary); }
.om-test-panel > summary::-webkit-details-marker { display: none; }
.om-test-panel > summary > span:first-child { display: flex; align-items: center; gap: 9px; }
.om-test-panel > summary small { display: block; color: var(--om-muted); font-size: 8px; font-weight: 400; }
.om-test-panel > summary > span:last-child { font-size: 9px; color: var(--om-muted); }
.om-test-form { border-top: 1px solid var(--om-line); padding: 14px 18px; display: grid; grid-template-columns: 160px 190px 1fr 1.5fr auto; gap: 9px; align-items: end; }
.om-test-form label span { display: block; font-size: 9px; font-weight: 700; margin-bottom: 4px; }
.om-test-form input, .om-test-form select { width: 100%; height: 40px; border: 1px solid #d7e0e5; border-radius: 9px; padding: 7px 10px; }
.om-test-form .om-button { height: 40px; }
@media (max-width: 1000px) {
  .om-test-form { grid-template-columns: 1fr 1fr; }
  .om-test-form .is-wide { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .om-test-panel > summary > span:last-child { display: none; }
  .om-test-form { grid-template-columns: 1fr; }
  .om-test-form .is-wide { grid-column: auto; }
  .om-test-form .om-button { width: 100%; }
}


.om-badge-art img { width: 84px; height: 84px; object-fit: cover; border-radius: 18px; box-shadow: 0 8px 20px rgba(23, 32, 47, .12); }
.om-earned-badges { padding: 12px 16px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.om-earned-badge { border: 1px solid #e1e7e9; background: #fbfdfd; border-radius: 10px; padding: 8px; display: grid; grid-template-columns: 32px 1fr; column-gap: 7px; align-items: center; color: var(--om-primary); }
.om-earned-badge img { grid-row: 1 / 3; width: 32px; height: 32px; object-fit: cover; border-radius: 8px; }
.om-earned-badge > .om-icon { grid-row: 1 / 3; }
.om-earned-badge b { font-size: 9px; color: var(--om-text); }
.om-earned-badge small { font-size: 7px; color: var(--om-muted); }
.om-manual-badges { border-top: 1px solid var(--om-line); padding: 12px 16px; display: flex; flex-direction: column; gap: 7px; }


:root {
  
  --om-primary: #00636b;
  --om-primary-2: #006a73;
  --om-primary-ink: #ffffff;
  --om-primary-soft: #e8f5f2;
  --om-primary-line: #cce1df;
  --om-gold: #92842c;
  --om-gold-soft: #f8f4df;
  --om-blue: #3779bf;
  --om-blue-soft: #edf5ff;
  --om-success: #14866d;
  --om-success-soft: #eaf8f3;
  --om-danger: #b54749;
  --om-danger-soft: #fff1f0;
  --om-warn: #a56b09;
  --om-warn-soft: #fff6e4;
  --om-focus: #168b92;

  
  --om-bg: #f8f9fb;
  --om-card: #ffffff;
  --om-surface: #f1f3f5;
  --om-line: #eaedf0;

  
  --om-text: #252e35;
  --om-muted: #66717b;
  --om-faint: #98a2b3;

  
  --om-radius: 14px;
  --om-radius-sm: 9px;
  --om-radius-lg: 18px;
  --om-control: 42px;

  
  --om-shadow: 0 1px 2px rgba(23, 32, 47, .04), 0 8px 24px rgba(23, 32, 47, .05);
  --om-shadow-lg: 0 30px 80px rgba(15, 23, 42, .22);
  --om-shadow-primary: 0 8px 18px rgba(0, 99, 107, .16);

  
  --fs-2xs: 11px;
  --fs-xs: 12px;
  --fs-sm: 13px;
  --fs-base: 14px;
  --fs-md: 15px;
  --fs-lg: 17px;
  --fs-xl: 20px;
  --fs-2xl: 24px;
  --fs-display: 28px;

  
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px;
  --sp-5: 20px; --sp-6: 24px; --sp-7: 30px; --sp-8: 40px;

  
  --ease: cubic-bezier(.2, .6, .2, 1);
  --dur: .18s;

  
  --om-sidebar-w: 240px;

  color-scheme: light;
}

html[data-theme="dark"] {
  --om-primary: #53b7ad;
  --om-primary-2: #69d5c6;
  --om-primary-ink: #08131a;
  --om-primary-soft: #193c3a;
  --om-primary-line: #2c5754;
  --om-gold: #d7c97a;
  --om-gold-soft: #37352b;
  --om-blue: #91bdff;
  --om-blue-soft: #223851;
  --om-success: #79d5ac;
  --om-success-soft: #1e3b34;
  --om-danger: #f0a1a6;
  --om-danger-soft: #3e2833;
  --om-warn: #e0a94a;
  --om-warn-soft: #3a3020;
  --om-focus: #69d5c6;

  --om-bg: #101722;
  --om-card: #192330;
  --om-surface: #202d3c;
  --om-line: #304052;
  --om-text: #e7edf4;
  --om-muted: #a5b2bf;
  --om-faint: #7e8fa1;

  --om-shadow: 0 1px 2px rgba(0, 0, 0, .3);
  --om-shadow-lg: 0 30px 80px rgba(0, 0, 0, .55);
  --om-shadow-primary: 0 8px 18px rgba(0, 0, 0, .35);

  color-scheme: dark;
}


html { background: var(--om-bg); scroll-behavior: smooth; }
body { background: var(--om-bg); color: var(--om-text); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
html, body { direction: rtl; text-align: right; }
[hidden] { display: none ; }
h1, h2, h3, h4, p { overflow-wrap: anywhere; }
:focus-visible { outline: 2px solid var(--om-focus); outline-offset: 2px; border-radius: 4px; }
.om-button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--om-focus); outline-offset: 2px; }
.om-skip { position: fixed; top: -80px; right: 20px; z-index: 100; padding: var(--sp-3); background: var(--om-card); color: var(--om-primary); border-radius: var(--om-radius-sm); box-shadow: var(--om-shadow); }
.om-skip:focus { top: 10px; }
::selection { background: var(--om-primary-soft); color: var(--om-text); }


* { scrollbar-width: thin; scrollbar-color: var(--om-line) transparent; }
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { background: var(--om-line); border-radius: 999px; border: 3px solid transparent; background-clip: content-box; }
*::-webkit-scrollbar-thumb:hover { background: var(--om-faint); background-clip: content-box; }


bdi[dir="ltr"], .om-date, .om-phone, input[type="tel"], input[dir="ltr"], code, time { direction: ltr; unicode-bidi: isolate; }
input[dir="ltr"] { text-align: left; }
input[data-jalali-display] { text-align: right; font-variant-numeric: tabular-nums; }
.om-money, .om-table td, .om-table th, .om-kpi-card strong, .om-count-pill { font-variant-numeric: tabular-nums; }


input, select, textarea { color: var(--om-text); background-color: var(--om-card); border-color: var(--om-line); min-width: 0; }
input[type="checkbox"] { accent-color: var(--om-primary); }


.om-sidebar { background: var(--om-card); width: var(--om-sidebar-w); padding: var(--sp-5) var(--sp-4); border-left-color: var(--om-line); }
.om-main { margin-right: var(--om-sidebar-w); }
.om-brand { height: 66px; border-bottom-color: var(--om-line); }
.om-brand-mark { background: var(--om-primary); color: var(--om-primary-ink); border-radius: var(--om-radius-sm); box-shadow: none; }
.om-brand strong { font-size: var(--fs-lg); }
.om-brand span { font-size: var(--fs-2xs); color: var(--om-muted); }
.om-brand-mark img { width: 100%; height: 100%; object-fit: contain; }
.om-nav { gap: var(--sp-1); }
.om-nav-label { font-size: var(--fs-2xs); color: var(--om-muted); letter-spacing: .3px; border-top: 1px solid var(--om-line); margin-top: var(--sp-3); padding-top: var(--sp-4); }
.om-nav a { min-height: 42px; font-size: var(--fs-sm); color: var(--om-muted); border-radius: var(--om-radius-sm); }
.om-nav a:hover { background: var(--om-surface); color: var(--om-text); }
.om-nav a.is-active { background: var(--om-primary-soft); color: var(--om-primary); box-shadow: inset -3px 0 var(--om-primary); }
.om-sidebar-user { background: var(--om-surface); border-color: var(--om-line); }
.om-sidebar-user small { font-size: var(--fs-2xs); color: var(--om-muted); }
.om-topbar { height: 66px; background: var(--om-card); padding-inline: var(--sp-6); border-bottom-color: var(--om-line); }
.om-topbar-title small { font-size: var(--fs-2xs); color: var(--om-muted); }
.om-global-search { background: var(--om-surface); border-color: var(--om-line); color: var(--om-muted); cursor: pointer; min-width: 0; }
.om-global-search kbd { background: var(--om-card); border-color: var(--om-line); font-size: var(--fs-2xs); }
.om-theme-control select { padding: 7px 10px; border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); max-width: 145px; font-size: var(--fs-xs); background: var(--om-card); color: var(--om-text); }
.om-page { padding: var(--sp-6); max-width: 1600px; }
.om-page-heading h1 { font-size: var(--fs-display); letter-spacing: -.4px; }
.om-page-heading p { font-size: var(--fs-sm); color: var(--om-muted); }
.om-eyebrow { color: var(--om-primary); font-size: var(--fs-2xs); letter-spacing: .3px; }
.om-heading-actions { flex-wrap: wrap; }


.om-button { min-height: 40px; padding: 9px 16px; border-radius: var(--om-radius-sm); font-size: var(--fs-xs); font-weight: 700; transition: transform var(--dur) var(--ease), background var(--dur) var(--ease), box-shadow var(--dur) var(--ease); }
.om-button:hover { transform: translateY(-1px); }
.om-button.is-primary { background: var(--om-primary); color: var(--om-primary-ink); box-shadow: var(--om-shadow-primary); }
.om-button.is-primary:hover { background: var(--om-primary-2); }
.om-button.is-secondary, .om-count-pill, .om-soft-badge { background: var(--om-card); border-color: var(--om-line); color: var(--om-text); }
.om-count-pill, .om-soft-badge { font-size: var(--fs-2xs); }
.om-button.is-small { min-height: 34px; padding: 5px 11px; font-size: var(--fs-2xs); }
.om-icon-button { color: var(--om-muted); }
.om-icon-button:hover { background: var(--om-surface); color: var(--om-primary); }
.om-alert { padding: var(--sp-3) var(--sp-4); border-radius: var(--om-radius-sm); font-size: var(--fs-sm); }
.om-alert.is-success { background: var(--om-success-soft); border-color: var(--om-success); color: var(--om-success); }
.om-alert.is-error { background: var(--om-danger-soft); border-color: var(--om-danger); color: var(--om-danger); }


.om-card { background: var(--om-card); border: 1px solid var(--om-line); border-radius: var(--om-radius); box-shadow: var(--om-shadow); }
.om-card-header { min-height: 66px; padding: var(--sp-4) var(--sp-5); border-bottom-color: var(--om-line); }
.om-card-header h2 { font-size: var(--fs-md); }
.om-card-header p { font-size: var(--fs-2xs); color: var(--om-muted); }
.om-card-header > a { font-size: var(--fs-xs); color: var(--om-primary); font-weight: 700; }
.om-help { background: var(--om-gold-soft); color: var(--om-gold); font-size: var(--fs-2xs); }


.om-kpi-grid { gap: var(--sp-4); margin-bottom: var(--sp-5); }
.om-kpi-card { min-height: 118px; padding: var(--sp-5); border: 1px solid var(--om-line); border-radius: var(--om-radius); background: var(--om-card); box-shadow: var(--om-shadow); gap: var(--sp-4); }
.om-kpi-card:before { height: 3px; background: var(--accent); }
.om-kpi-card.is-teal { --accent: var(--om-primary); --soft: var(--om-primary-soft); }
.om-kpi-card.is-blue { --accent: var(--om-blue); --soft: var(--om-blue-soft); }
.om-kpi-card.is-gold { --accent: var(--om-gold); --soft: var(--om-gold-soft); }
.om-kpi-card.is-rose { --accent: var(--om-danger); --soft: var(--om-danger-soft); }
.om-kpi-icon { width: 46px; height: 46px; border-radius: var(--om-radius-sm); background: var(--soft); color: var(--accent); }
.om-kpi-card span { font-size: var(--fs-xs); color: var(--om-muted); }
.om-kpi-card strong { font-size: var(--fs-2xl); letter-spacing: -.5px; }
.om-kpi-card small { font-size: var(--fs-2xs); color: var(--om-faint); }


.om-list-main small, .om-person small, .om-cell-note, .om-date-pair small,
.om-frequency-row > div:first-child, .om-timeline article p, .om-activity-stream article p,
.om-timeline article time, .om-activity-stream article time, .om-timeline article small,
.om-activity-stream article small, .om-list-row > b small, .om-payment-list b small,
.om-compact-list small, .om-badge-body > p, .om-badge-rules span, .om-metric-strip span,
.om-campaign-meta small, .om-check-card small, .om-safety-note p, .om-test-panel > summary small,
.om-test-panel > summary > span:last-child, .om-audience-preview span small, .om-audience-preview li,
.om-earned-badge small, .om-bar-item small, .om-bar-value, .om-report-bar small { font-size: var(--fs-2xs) ; }
.om-list-main strong, .om-timeline article strong, .om-activity-stream article strong,
.om-person strong, .om-payment-list > div strong, .om-compact-list strong { font-size: var(--fs-xs); }
.om-metric-strip strong, .om-badge-body h2, .om-frequency-row strong, .om-campaign-meta strong { font-size: var(--fs-sm); }
.om-list-row > b, .om-payment-list b { font-size: var(--fs-sm); }


.om-list-row { min-height: 64px; border-bottom-color: var(--om-line); }
.om-list-row:hover { background: var(--om-surface); }
.om-list-avatar { background: var(--om-primary-soft); color: var(--om-primary); border-radius: var(--om-radius-sm); }
.om-list-avatar.is-success { background: var(--om-success-soft); color: var(--om-success); }
.om-table { min-width: 1000px; }
.om-table th { background: var(--om-surface); color: var(--om-muted); font-size: var(--fs-xs); text-align: right; border-bottom-color: var(--om-line); }
.om-table td { color: var(--om-text); font-size: var(--fs-sm); padding: var(--sp-4); border-bottom-color: var(--om-line); text-align: right; vertical-align: middle; }
.om-table tbody tr:hover { background: var(--om-surface); }
.om-table bdi { display: inline-block; }
.om-avatar { background: var(--om-primary); color: var(--om-primary-ink); font-weight: 700; }
.om-avatar.is-soft { background: var(--om-primary-soft); color: var(--om-primary); border: 0; }


.om-status { font-size: var(--fs-2xs); border-radius: 999px; padding: 4px 9px; border: 1px solid transparent; }
.om-status.is-new, .om-status.is-draft { background: var(--om-blue-soft); color: var(--om-blue); }
.om-status.is-active, .om-status.is-sent, .om-status.is-loyal, .om-status.is-done { background: var(--om-success-soft); color: var(--om-success); }
.om-status.is-loyal { background: var(--om-gold-soft); color: var(--om-gold); }
.om-status.is-at_risk, .om-status.is-important { background: var(--om-warn-soft); color: var(--om-warn); }
.om-status.is-inactive, .om-status.is-paused { background: var(--om-surface); color: var(--om-muted); }
.om-status.is-urgent { background: var(--om-danger-soft); color: var(--om-danger); }


.om-bars { height: 280px; padding: var(--sp-6) var(--sp-5) var(--sp-4); }
.om-bar-track { background: var(--om-surface); }
.om-bar-track i { background: linear-gradient(180deg, var(--om-primary-2), var(--om-primary)); border-radius: 7px 7px 0 0; min-height: 2px; }
.om-progress { background: var(--om-surface); }
.om-progress i { background: var(--om-primary); }
.om-line-chart { padding: 14px var(--sp-5) var(--sp-4); }
.om-line-chart svg { width: 100%; height: auto; display: block; direction: ltr; }
.om-chart-grid { stroke: var(--om-line); stroke-width: 1; }
.om-chart-line { fill: none; stroke: var(--om-primary); stroke-width: 2.5; stroke-linejoin: round; }
.om-chart-area { fill: var(--om-primary); opacity: .1; }
.om-chart-dot { fill: var(--om-primary); }
.om-chart-label { fill: var(--om-muted); font-size: var(--fs-xs); font-family: inherit; }
.om-chart-legend { font-size: var(--fs-2xs); color: var(--om-muted); display: flex; align-items: center; justify-content: center; gap: 6px; flex-wrap: wrap; }
.om-chart-legend > span { width: 12px; height: 5px; background: var(--om-primary); }
.om-chart-data { margin-top: var(--sp-3); color: var(--om-muted); font-size: var(--fs-xs); }
.om-chart-data table { width: 100%; }
.om-chart-switch { display: flex; padding: 3px; background: var(--om-surface); border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); gap: 3px; }
.om-chart-switch button { border: 0; background: transparent; color: var(--om-muted); padding: 5px 13px; border-radius: var(--om-radius-sm); cursor: pointer; font-size: var(--fs-xs); }
.om-chart-switch button[aria-pressed="true"] { background: var(--om-card); color: var(--om-primary); box-shadow: var(--om-shadow); }
.om-donut-layout { display: flex; align-items: center; justify-content: center; padding: var(--sp-5); gap: var(--sp-5); min-height: 290px; }
.om-donut { width: 200px; max-width: 48%; flex-shrink: 0; }
.om-donut-track { fill: none; stroke: var(--om-surface); stroke-width: 23; }
.om-donut-total { fill: var(--om-text); font-size: var(--fs-2xl); font-weight: 500; }
.om-donut-legend { padding: 0; margin: 0; list-style: none; flex: 1; min-width: 0; }
.om-donut-legend li { display: flex; align-items: center; gap: var(--sp-2); padding: var(--sp-2) 0; font-size: var(--fs-xs); border-bottom: 1px solid var(--om-line); }
.om-donut-legend li:last-child { border: 0; }
.om-donut-legend li > span { width: 9px; height: 9px; flex-shrink: 0; border-radius: 3px; }
.om-donut-legend li > div { flex: 1; }
.om-donut-legend small { display: block; color: var(--om-muted); font-size: var(--fs-2xs); }
.om-report-bars { display: flex; flex-direction: column; gap: var(--sp-3); max-height: 550px; overflow: auto; padding: var(--sp-3); }
.om-report-bar { display: grid; grid-template-columns: 100px minmax(60px, 1fr) 180px; align-items: center; gap: var(--sp-4); font-size: var(--fs-xs); }
.om-report-bar > div { height: 18px; border-radius: var(--om-radius-sm); background: var(--om-surface); overflow: hidden; }
.om-report-bar i { display: block; height: 100%; background: var(--om-primary); border-radius: var(--om-radius-sm); }


.om-form-grid, .om-form-stack { gap: var(--sp-4); }
.om-form-grid label > span, .om-form-stack label > span, .om-date-field > span { font-size: var(--fs-xs); color: var(--om-muted); font-weight: 700; margin-bottom: 5px; }
.om-form-grid label, .om-form-stack label { min-width: 0; font-size: var(--fs-sm); color: var(--om-text); }
.om-form-grid input, .om-form-grid select, .om-form-grid textarea,
.om-form-stack input, .om-form-stack select, .om-form-stack textarea {
  font-size: var(--fs-base); min-height: var(--om-control); border-radius: var(--om-radius-sm);
  border: 1px solid var(--om-line); background: var(--om-card); color: var(--om-text); width: 100%; padding: 10px 12px;
  transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.om-form-grid textarea, .om-form-stack textarea { min-height: 100px; resize: vertical; }
.om-form-grid input:focus, .om-form-stack input:focus, .om-form-grid select:focus, .om-form-stack select:focus,
.om-form-grid textarea:focus, .om-form-stack textarea:focus { border-color: var(--om-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--om-focus) 18%, transparent); }
.om-form-grid input[type="checkbox"], .om-form-stack input[type="checkbox"] { width: 18px; min-height: 18px; padding: 0; flex-shrink: 0; }
.om-field-help { font-size: var(--fs-xs); line-height: 1.8; color: var(--om-muted); }
.om-check-card { border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); padding: var(--sp-3); background: var(--om-card); color: var(--om-text); line-height: 1.7; }
.om-check-card small { color: var(--om-muted); }
.om-tag-field legend { font-size: var(--fs-xs); }
.om-chip-check span { font-size: var(--fs-2xs) ; }
.om-chip-check input:checked + span { background: var(--om-primary-soft); border-color: var(--om-primary-line); color: var(--om-primary); }
.om-permissions { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-3); padding: var(--sp-4); border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); }
.om-permissions label { font-size: var(--fs-xs); }


.om-filter-card { padding: var(--sp-4); }
.om-rule-builder { border: 1px dashed var(--om-line); border-radius: var(--om-radius-sm); padding: var(--sp-3); }
.om-rule-builder > header small { display: block; font-size: var(--fs-2xs); color: var(--om-faint); font-weight: 400; }
.om-rule-row { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) 34px; align-items: center; gap: var(--sp-2); }
.om-rule-row input, .om-rule-row select { min-height: 38px; font-size: var(--fs-xs); width: 100%; min-width: 0; }
.om-safety-note { background: var(--om-primary-soft); border: 1px solid var(--om-primary-line); color: var(--om-primary); padding: var(--sp-3); border-radius: var(--om-radius-sm); }
.om-safety-note strong { font-size: var(--fs-xs); }


.om-segments { padding: var(--sp-4) var(--sp-5); display: flex; gap: var(--sp-2); align-items: center; flex-wrap: wrap; }
.om-segment { display: flex; align-items: center; background: var(--om-surface); border-radius: var(--om-radius-sm); padding: 4px 9px; gap: var(--sp-2); }
.om-segment button { background: none; border: 0; color: var(--om-muted); cursor: pointer; }
.om-welcome { display: flex; gap: var(--sp-4); align-items: center; background: var(--om-card); border: 1px solid var(--om-line); border-radius: var(--om-radius); padding: var(--sp-5) var(--sp-6); margin-bottom: var(--sp-6); }
.om-welcome h2 { margin: 0; font-size: var(--fs-lg); }
.om-welcome p { margin: 3px 0 0; color: var(--om-muted); font-size: var(--fs-xs); }
.om-welcome time { margin-inline-start: auto; color: var(--om-muted); font-size: var(--fs-xs); }
.om-extra-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-4); margin-bottom: var(--sp-6); }
.om-extra-stats > div { background: var(--om-card); padding: var(--sp-4); border-radius: var(--om-radius-sm); border: 1px solid var(--om-line); }
.om-extra-stats span { display: block; color: var(--om-muted); font-size: var(--fs-xs); }
.om-extra-stats strong { font-size: var(--fs-md); }
.om-book-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: var(--sp-5); margin: var(--sp-5) 0; }
.om-panel-pad { padding: var(--sp-6); margin-bottom: var(--sp-5); }
.om-panel-pad h2 { font-size: var(--fs-lg); }
.om-panel-pad p { color: var(--om-muted); line-height: 1.9; }
.om-preview-box { padding: var(--sp-4); border-radius: var(--om-radius-sm); border: 1px solid var(--om-line); background: var(--om-card); color: var(--om-text); }
.om-message-preview { white-space: pre-wrap; overflow-wrap: anywhere; }


.om-profile-hero { background: linear-gradient(135deg, var(--om-primary), var(--om-primary-2)); border-radius: var(--om-radius); color: var(--om-primary-ink); padding: var(--sp-6); box-shadow: var(--om-shadow-primary); }
.om-profile-hero:after { display: none; }
.om-profile-hero .om-eyebrow { color: var(--om-primary-ink); opacity: .82; }
.om-profile-total strong { font-size: var(--fs-2xl); }
.om-metric-strip { background: var(--om-card); border: 1px solid var(--om-line); border-radius: var(--om-radius); }
.om-metric-strip > div { border-left-color: var(--om-line); }
.om-timeline-icon { background: var(--om-primary-soft); color: var(--om-primary); border-radius: var(--om-radius-sm); }
.om-timeline article:not(:last-child):before, .om-activity-stream article:not(:last-child):before { background: var(--om-line); }
.om-timeline article p, .om-activity-stream article p { color: var(--om-muted); }
html[data-theme="dark"] .om-profile-hero { background: var(--om-primary-soft); color: var(--om-text); }
html[data-theme="dark"] .om-profile-hero .om-eyebrow { color: var(--om-primary); }


.om-dialog { direction: rtl; width: min(740px, calc(100vw - 32px)); max-height: 90dvh; padding: 0; border: 1px solid var(--om-line); border-radius: var(--om-radius-lg); box-shadow: var(--om-shadow-lg); color: var(--om-text); background: var(--om-card); overflow: auto; }
.om-dialog.is-wide { width: min(1040px, calc(100vw - 32px)); }
.om-dialog::backdrop { background: rgba(9, 16, 26, .5); backdrop-filter: blur(3px); }
.om-dialog > form > header, .om-dialog footer { position: sticky; background: var(--om-card); border-color: var(--om-line); color: var(--om-text); padding: 18px var(--sp-6); }
.om-dialog > form > header { top: 0; z-index: 2; border-bottom: 1px solid var(--om-line); }
.om-dialog footer { bottom: 0; border-top: 1px solid var(--om-line); display: flex; justify-content: flex-end; gap: var(--sp-2); }
.om-dialog h2 { font-size: var(--fs-xl); margin: 0; }
.om-dialog header p { font-size: var(--fs-xs); color: var(--om-muted); margin: 0; }
.om-dialog-body { padding: var(--sp-6) ; }
.om-jalali-panel { background: var(--om-card); border: 1px solid var(--om-line); color: var(--om-text); border-radius: var(--om-radius); box-shadow: var(--om-shadow-lg); padding: var(--sp-5); }
.om-jalali-panel input, .om-jalali-panel select { width: 100%; height: 40px; border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); padding: 6px; background: var(--om-card); color: var(--om-text); }
.om-campaign-form { display: grid ; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-6); }
.om-campaign-form section { min-width: 0; padding: var(--sp-5); border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); background: var(--om-surface); display: flex; flex-direction: column; gap: var(--sp-3); }
.om-campaign-form h3 { font-size: var(--fs-sm); margin: 0; border-bottom: 1px solid var(--om-line); padding-bottom: var(--sp-2); }
.om-audience-preview { display: grid; grid-template-columns: 1fr auto; gap: var(--sp-3); border: 1px solid var(--om-primary-line); background: var(--om-primary-soft); border-radius: var(--om-radius-sm); padding: var(--sp-3); }
.om-audience-preview > div:first-child { display: flex; align-items: center; gap: var(--sp-2); color: var(--om-primary); }
.om-audience-preview > [data-preview-result] { grid-column: 1 / -1; background: var(--om-card); border-radius: var(--om-radius-sm); padding: var(--sp-3); font-size: var(--fs-xs); color: var(--om-text); }
.om-audience-preview > [data-preview-result] > strong { color: var(--om-primary); font-size: var(--fs-sm); }
.om-audience-preview ul { margin: var(--sp-2) var(--sp-4) 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-1) var(--sp-4); }
.om-audience-preview li { color: var(--om-muted); }
.om-campaign-list article { min-height: 68px; display: flex; align-items: center; gap: var(--sp-3); border-bottom: 1px solid var(--om-line); }
.om-campaign-metrics { display: grid; grid-template-columns: repeat(2, minmax(72px, 1fr)); gap: 3px var(--sp-3); min-width: 210px; }
.om-campaign-metrics span { font-size: var(--fs-2xs); color: var(--om-muted); white-space: nowrap; }
.om-campaign-metrics b { font-size: var(--fs-xs); color: var(--om-primary); }
.om-campaign-actions { display: flex; align-items: center; gap: var(--sp-2); }


.om-badge-card { border-color: var(--om-line); border-radius: var(--om-radius); background: var(--om-card); box-shadow: var(--om-shadow); }
.om-badge-card.is-disabled { opacity: .6; }
.om-badge-art { background: radial-gradient(circle at 50% 0, var(--om-gold-soft), var(--om-surface)); color: var(--om-gold); }
.om-badge-rules { background: var(--om-surface); border-radius: var(--om-radius-sm); }
.om-badge-rules span { color: var(--om-muted); }
.om-badge-card summary { font-size: var(--fs-xs); color: var(--om-primary); cursor: pointer; }
.om-badge-art img { width: 84px; height: 84px; object-fit: cover; border-radius: var(--om-radius); box-shadow: var(--om-shadow); }
.om-earned-badges { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-2); padding: var(--sp-3) var(--sp-4); }
.om-earned-badge { border: 1px solid var(--om-line); background: var(--om-surface); border-radius: var(--om-radius-sm); color: var(--om-primary); }
.om-earned-badge b { font-size: var(--fs-2xs); color: var(--om-text); }
.om-earned-badge small { color: var(--om-muted); }


.om-task-card { background: var(--om-card); border: 1px solid var(--om-line); border-top: 3px solid var(--om-line); border-radius: var(--om-radius); padding: var(--sp-4); box-shadow: var(--om-shadow); }
.om-task-card.is-important { border-top-color: var(--om-warn); }
.om-task-card.is-urgent { border-top-color: var(--om-danger); }
.om-task-card time.is-overdue { color: var(--om-danger); font-weight: 700; }
.om-task-meta { border-top-color: var(--om-line); }


.om-test-panel > summary { color: var(--om-primary); }
.om-test-form { display: grid; grid-template-columns: 160px 190px 1fr 1.5fr auto; gap: var(--sp-4); padding: var(--sp-5); border-top: 1px solid var(--om-line); align-items: end; }
.om-test-form label span { display: block; font-size: var(--fs-xs); font-weight: 700; margin-bottom: var(--sp-1); }
.om-test-form input, .om-test-form select { width: 100%; height: 40px; border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); padding: 7px 10px; background: var(--om-card); color: var(--om-text); }


.om-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4); }
.om-health-card { display: flex; align-items: center; gap: var(--sp-4); padding: var(--sp-5); }
.om-health-dot.is-ok { background: var(--om-success); }
.om-health-dot.is-warning { background: var(--om-warn); }
.om-health-card h2 { font-size: var(--fs-sm); margin: 0; }
.om-health-card p { font-size: var(--fs-xs); color: var(--om-muted); margin: 2px 0; }
.om-health-card > strong { font-size: var(--fs-xs); }
.om-settings-note { padding: var(--sp-5); margin-top: var(--sp-4); }
.om-settings-note p { color: var(--om-muted); font-size: var(--fs-xs); }
.om-settings-note code { direction: ltr; background: var(--om-surface); padding: 2px 6px; border-radius: 5px; }
html[data-theme="dark"] .om-health-card strong, html[data-theme="dark"] .om-cell-note { color: var(--om-muted); }
html[data-theme="dark"] .om-chip-check span { background: var(--om-surface); border-color: var(--om-line); color: var(--om-text); }
html[data-theme="dark"] .om-form-grid label > span, html[data-theme="dark"] .om-form-stack label > span { color: var(--om-text); }


.om-auth { min-height: 100vh; background: var(--om-bg); display: grid; place-items: center; padding: var(--sp-7); }
.om-login-shell { width: min(1020px, 100%); min-height: 600px; background: var(--om-card); border: 1px solid var(--om-line); border-radius: 24px; box-shadow: var(--om-shadow-lg); display: grid; grid-template-columns: 1.1fr .9fr; overflow: hidden; }
.om-login-story { background: linear-gradient(145deg, var(--om-primary), var(--om-primary-2)); color: var(--om-primary-ink); padding: 65px; }
.om-login-story .om-eyebrow { color: var(--om-primary-ink); opacity: .85; }
html[data-theme="dark"] .om-login-story { color: var(--om-text); }
.om-login-card { background: var(--om-card); color: var(--om-text); }
.om-otp-card { width: min(460px, 100%); }


.om-pagination { padding: var(--sp-4) var(--sp-5); border-top: 1px solid var(--om-line); }
.pagination { list-style: none; display: flex; gap: var(--sp-1); margin: 0; padding: 0; flex-wrap: wrap; }
.page-link { min-width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid var(--om-line); border-radius: var(--om-radius-sm); font-size: var(--fs-2xs); background: var(--om-card); color: var(--om-text); }
.active > .page-link { background: var(--om-primary-soft); color: var(--om-primary); border-color: var(--om-primary-line); }
.disabled > .page-link { opacity: .5; }


.om-empty { min-height: 190px; color: var(--om-faint); }
.om-empty strong { color: var(--om-muted); }
.om-empty p { font-size: var(--fs-2xs); color: var(--om-muted); }
.om-empty-inline { color: var(--om-faint); font-size: var(--fs-xs); }


@media (min-width: 1200px) {
  .om-dashboard-grid { grid-template-columns: minmax(0, 1.65fr) minmax(320px, 1fr); }
  .om-dashboard-grid.is-lower { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1180px) {
  .om-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .om-badge-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .om-task-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .om-metric-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .om-metric-strip > div:nth-child(3) { border-left: 0; }
  .om-metric-strip > div:nth-child(-n+3) { border-bottom: 1px solid var(--om-line); }
  .om-extra-stats { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 1024px) {
  .om-sidebar { transform: translateX(110%); transition: transform .2s var(--ease); box-shadow: -20px 0 60px rgba(15, 23, 42, .16); }
  .om-sidebar-open .om-sidebar { transform: translateX(0); }
  .om-main { margin-right: 0; }
  .om-menu-button, .om-sidebar-close { display: grid; }
  .om-sidebar-open .om-sidebar-backdrop { display: block; position: fixed; inset: 0; background: rgba(8, 19, 26, .53); z-index: 45; }
}
@media (max-width: 760px) {
  .om-campaign-form { grid-template-columns: 1fr ; }
  .om-permissions { grid-template-columns: 1fr; }
  .om-rule-row { grid-template-columns: 1fr 1fr; }
  .om-rule-row [data-rule-value] { grid-column: 1; }
  .om-report-bar { grid-template-columns: 78px 1fr; gap: var(--sp-2); }
  .om-report-bar b { grid-column: 2; }
  .om-panel-pad { padding: var(--sp-4); }
  .om-form-grid { grid-template-columns: 1fr; }
  .om-dialog footer { flex-wrap: wrap; }
  .om-campaign-form section { padding: var(--sp-4); }
  .om-table-wrap { max-width: 100%; overflow-x: auto; }
}
@media (max-width: 600px) {
  .om-page { padding: var(--sp-5) var(--sp-4); }
  .om-topbar { height: 62px; gap: var(--sp-2); padding-inline: var(--sp-3); }
  .om-topbar-title { display: none; }
  .om-global-search { width: auto; flex: 1; margin: 0; padding: 0 8px; }
  .om-global-search kbd { display: none; }
  .om-theme-control select { max-width: 113px; padding: 6px; font-size: var(--fs-2xs); }
  .om-page-heading { align-items: flex-start; gap: var(--sp-3); }
  .om-page-heading h1 { font-size: var(--fs-xl); }
  .om-welcome { padding: var(--sp-4); gap: var(--sp-3); }
  .om-welcome time { display: none; }
  .om-kpi-card { min-height: 112px; padding: var(--sp-4); }
  .om-kpi-card strong { font-size: var(--fs-xl); }
  .om-profile-grid { grid-template-columns: 1fr; }
  .om-extra-stats { gap: 9px; }
  .om-test-form { grid-template-columns: 1fr; }
  .om-test-form .is-wide { grid-column: auto; }
  .om-test-form .om-button { width: 100%; }
  .om-dialog { width: calc(100% - 28px); max-width: 560px; }
  .om-dialog-body { padding: var(--sp-4) ; }
  .om-login-shell { grid-template-columns: 1fr; min-height: 0; }
  .om-login-story { display: none; }
  .om-login-card { padding: 36px var(--sp-6); }
  .om-auth { padding: var(--sp-4); }
  .om-dashboard-grid, .om-dashboard-grid.is-lower { grid-template-columns: 1fr; }
  .om-settings-grid { grid-template-columns: 1fr; }
  .om-donut-layout { flex-direction: column; }
}
@media (max-width: 430px) {
  .om-kpi-grid { grid-template-columns: 1fr; }
  .om-metric-strip { grid-template-columns: 1fr; }
  .om-metric-strip > div { border-left: 0; }
}


@media print {
  .om-sidebar, .om-topbar, .om-button, .om-filter-card, .om-pagination { display: none ; }
  .om-main { margin: 0; }
  .om-page { padding: 0; }
  .om-card { box-shadow: none; border-color: #ccc; }
  .om-kpi-card { break-inside: avoid; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto ; transition: none ; animation: none ; }
}


input, select, textarea { color: var(--om-text); background-color: var(--om-card); border-color: var(--om-line); }
.om-form-stack input, .om-form-stack select, .om-form-stack textarea,
.om-form-grid input, .om-form-grid select, .om-form-grid textarea,
.om-filter-bar input, .om-filter-bar select,
.om-rule-row input, .om-rule-row select,
.om-task-actions input,
.om-test-form input, .om-test-form select,
.om-jalali-panel input, .om-jalali-panel select,
.om-theme-control select { background-color: var(--om-card); color: var(--om-text); border-color: var(--om-line); }
.om-form-stack input:focus, .om-form-stack select:focus, .om-form-stack textarea:focus,
.om-form-grid input:focus, .om-form-grid select:focus, .om-form-grid textarea:focus,
.om-filter-bar input:focus, .om-filter-bar select:focus,
.om-rule-row input:focus, .om-rule-row select:focus { border-color: var(--om-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--om-focus) 20%, transparent); }


.om-form-stack select, .om-form-grid select, .om-filter-bar select,
.om-rule-row select, .om-test-form select, .om-jalali-panel select, .om-theme-control select {
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2366717b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: left 12px center; padding-left: 34px; cursor: pointer;
}
html[data-theme="dark"] .om-form-stack select, html[data-theme="dark"] .om-form-grid select,
html[data-theme="dark"] .om-filter-bar select, html[data-theme="dark"] .om-rule-row select,
html[data-theme="dark"] .om-test-form select, html[data-theme="dark"] .om-jalali-panel select,
html[data-theme="dark"] .om-theme-control select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a5b2bf' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

option, optgroup { background-color: var(--om-card); color: var(--om-text); }

input[type="checkbox"], input[type="radio"] { appearance: auto; -webkit-appearance: auto; background-image: none; padding: 0; width: 18px; height: 18px; min-height: 0; accent-color: var(--om-primary); }


img.om-avatar{object-fit:cover;border-radius:50%;display:block}


.om-cache-status{display:flex;align-items:center;gap:8px;padding:9px 12px;margin-top:8px;border-top:1px solid var(--om-line);color:var(--om-muted);font-size:12px;font-weight:600}
.om-cache-status:hover{color:var(--om-primary)}


.om-cell-note{display:block;margin-top:2px}


@media (min-width:1025px){
  .om-panel-pad .om-form-grid,.om-panel-pad .om-form-stack{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-items:start;column-gap:16px}
  .om-panel-pad .om-form-grid .is-wide,.om-panel-pad .om-form-stack .is-wide,.om-panel-pad .om-form-grid textarea,.om-panel-pad .om-form-stack textarea,.om-panel-pad .om-form-grid .om-check-card,.om-panel-pad .om-form-stack .om-check-card,.om-panel-pad .om-form-grid .om-tag-field,.om-panel-pad .om-form-stack .om-tag-field,.om-panel-pad .om-form-grid button,.om-panel-pad .om-form-stack button,.om-panel-pad .om-form-grid details,.om-panel-pad .om-form-stack details,.om-panel-pad .om-form-grid article,.om-panel-pad .om-form-stack article,.om-panel-pad .om-form-grid .om-delete-occasion,.om-panel-pad .om-form-stack .om-delete-occasion{grid-column:1/-1}
}
.om-page{padding:16px 20px}
.om-card-header{min-height:52px;padding:12px 16px}
.om-panel-pad{padding:16px 20px;margin-bottom:16px}
.om-form-grid,.om-form-stack{gap:12px}
.om-form-grid input,.om-form-grid select,.om-form-grid textarea,.om-form-stack input,.om-form-stack select,.om-form-stack textarea{min-height:38px;padding:8px 11px}
.om-form-grid textarea,.om-form-stack textarea{min-height:74px}
.om-table td{padding:12px 16px}
.om-empty{min-height:120px}

:root{--om-bg:#f4f6f9;--om-card:#ffffff;--om-surface:#edf2f6;--om-text:#233444;--om-muted:#526678;--om-line:#d7e0e8;--om-primary:#00646a;--om-primary-soft:#e0f2ee;--om-gold:#806514;--om-gold-soft:#f9f2d9;--om-success:#176b48;--om-success-soft:#e3f4eb;--om-danger:#aa3448;--om-danger-soft:#fce9ee;--om-blue:#285f96;--om-blue-soft:#e7eff9;--om-radius:12px;--om-focus:#00747b}
html[data-theme=dark]{--om-bg:#151d26;--om-card:#1e2935;--om-surface:#273544;--om-text:#edf3f9;--om-muted:#b5c5d5;--om-line:#435366;--om-primary:#73decd;--om-primary-soft:#203f3d;--om-gold:#e5d385;--om-gold-soft:#3a3528;--om-success:#8bdfb5;--om-success-soft:#233e35;--om-danger:#ffafbb;--om-danger-soft:#462c36;--om-blue:#a5cfff;--om-blue-soft:#293c54;--om-focus:#73decd}
body{font-size:14px;line-height:1.8}button,input,select,textarea{font-size:14px;line-height:1.6}small,.om-field-help{font-size:12px;line-height:1.8}h1,h2,h3{line-height:1.55}.om-page{padding:28px;max-width:1600px}.om-page-heading h1{font-size:25px}.om-page-heading p{font-size:14px}.om-eyebrow{font-size:12px}.om-nav a{font-size:14px;min-height:44px}.om-nav-label{font-size:12px}.om-topbar-title small,.om-sidebar-user small{font-size:12px}.om-sidebar-user strong{font-size:13px}.om-theme-control select{font-size:12px;min-height:36px}.om-topbar-actions{display:flex}.om-sidebar-close{display:none}
.om-card,.om-badge-card,.om-task-card,.om-dialog,.om-jalali-panel{background:var(--om-card);color:var(--om-text);border:1px solid var(--om-line);border-radius:var(--om-radius)}.om-card-header h2,.om-panel-pad h2{font-size:18px}.om-card-header p{font-size:13px}.om-badge-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}.om-badge-card{overflow:hidden}.om-badge-art{background:var(--om-gold-soft);color:var(--om-gold);height:112px}.om-badge-body{padding:20px}.om-badge-body h2{font-size:18px;color:var(--om-text)}.om-badge-body p{font-size:14px;line-height:1.9;color:var(--om-muted);min-height:0}.om-badge-rules{background:var(--om-surface);color:var(--om-text);padding:14px;border-radius:9px}.om-badge-rules span{font-size:13px}.om-badge-body details{border-color:var(--om-line)}.om-badge-body summary{font-size:13px;color:var(--om-primary)}.om-earned-badge,.om-audience-preview,.om-audience-preview>[data-preview-result]{background:var(--om-surface);color:var(--om-text);border-color:var(--om-line)}.om-earned-badge b,.om-earned-badge small,.om-audience-preview li{font-size:12px;color:var(--om-text)}.om-audience-preview span small,.om-rule-builder>header small,.om-test-panel>summary small,.om-test-panel>summary>span:last-child{font-size:12px;color:var(--om-muted)}.om-audience-preview>[data-preview-result]{font-size:13px}.om-audience-preview ul{padding-inline-start:18px}
.om-button{min-height:42px;font-size:14px;padding:9px 16px;border-radius:8px;align-self:start;justify-self:start;line-height:1.6;cursor:pointer}.om-button.is-primary{background:#00646a;color:#fff}.om-button.is-primary:hover{background:#004f54}.om-button.is-secondary{background:var(--om-surface);color:var(--om-text);border-color:var(--om-line)}.om-button.is-ghost{color:var(--om-muted)}.om-button.is-small{min-height:36px;font-size:12px;padding:6px 12px}.om-button.is-wide{width:100%}.om-icon-button{align-self:center;flex-shrink:0}.om-soft-badge,.om-status,.om-count-pill{font-size:12px}.om-form-grid{align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.om-form-grid>.is-wide{grid-column:1/-1}.om-form-grid>button{align-self:start;justify-self:start}.om-form-grid>label,.om-form-stack>label{display:flex;flex-direction:column;gap:7px;font-size:14px}.om-form-grid label>span,.om-form-stack label>span{font-size:14px;color:var(--om-text)}.om-form-grid label.om-check,.om-form-stack label.om-check,.om-form-stack label.om-check-card{flex-direction:row;align-items:center}.om-form-grid input,.om-form-grid select,.om-form-stack input,.om-form-stack select{min-height:44px}.om-form-grid input[type=checkbox],.om-form-stack input[type=checkbox]{min-height:18px;width:18px}.om-form-grid input[type=hidden],.om-form-stack input[type=hidden]{display:none}.om-filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.om-filter-bar>label{min-width:160px;flex:1}.om-filter-bar .om-search-field{min-width:220px}.om-filter-bar button,.om-filter-bar>a{align-self:end}.om-filter-bar label>span{font-size:12px}.om-filter-bar input,.om-filter-bar select{font-size:14px;min-height:44px;width:100%}
input::placeholder,textarea::placeholder{color:var(--om-muted);opacity:1}input[type=tel],input[type=number],input[type=time],input[dir=ltr],.om-date,.om-phone,bdi[dir=ltr]{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}input[type=tel],input[dir=ltr]{text-align:left}input[data-jalali-display]{direction:ltr;text-align:right;unicode-bidi:isolate}.om-date{display:inline-block;white-space:nowrap}.om-input-action{align-items:center;min-width:0}.om-input-action input{min-width:0}.om-input-action .om-icon-button{width:40px;height:44px}code,.om-settings-note code{display:inline-block;direction:ltr;unicode-bidi:isolate;color:var(--om-text);background:var(--om-surface);border:1px solid var(--om-line);padding:3px 8px;border-radius:6px;font-size:12px}
.om-profile-hero{display:flex;flex-direction:column;gap:24px;background:#07545c;color:#fff;text-align:right;padding:28px}.om-profile-main{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;width:100%}.om-profile-person{order:0;display:flex;align-items:center;gap:20px;min-width:0}.om-profile-main>.om-back{order:1;margin-inline-start:auto;color:#d3efef;font-size:13px}.om-profile-person h1{font-size:27px}.om-profile-meta{font-size:13px;flex-wrap:wrap}.om-profile-total{text-align:right;align-self:flex-start}.om-profile-total>span,.om-profile-total small{font-size:13px;color:#d3efef}.om-profile-total strong{font-size:30px;display:block;direction:ltr;unicode-bidi:isolate}.om-profile-hero .om-eyebrow{color:#eee2aa}.om-profile-grid{grid-template-columns:minmax(0,1fr) 340px;gap:22px}.om-profile-aside{min-width:0}.om-timeline h3{font-size:15px}.om-timeline p,.om-timeline time,.om-timeline small{font-size:12px}.om-metric-strip strong,.om-metric-strip span{font-size:13px}.om-metric-strip small{font-size:12px}.om-health-card p,.om-health-card strong{font-size:13px}.om-settings-note p{font-size:13px}.om-campaign-metrics span,.om-campaign-metrics b{font-size:12px}.om-cell-note{font-size:12px;color:var(--om-muted)}
.om-table-wrap{width:100%;max-width:100%;overflow:auto}.om-table{border-collapse:collapse;width:100%;font-size:14px}.om-table th{font-size:13px;background:var(--om-surface);color:var(--om-text);padding:14px 18px}.om-table td{font-size:14px;padding:14px 18px;text-align:right;color:var(--om-text)}.om-table td small{font-size:12px}.om-table .om-person strong{font-size:14px;unicode-bidi:plaintext}.om-table .om-person small{font-size:12px}.om-table td:before{display:none}.om-book-grid>a{margin:0}.om-book-grid p{font-size:14px}.om-book-grid small{font-size:12px}
.om-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 4px;direction:rtl}.om-pager-summary{color:var(--om-muted);font-size:13px;margin:0}.om-pager-summary b{color:var(--om-text)}.om-pager-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.om-page-link{display:flex;align-items:center;justify-content:center;min-width:38px;min-height:40px;padding:6px 12px;border:1px solid var(--om-line);border-radius:8px;background:var(--om-card);color:var(--om-text);font-size:13px}.om-page-link.is-current{background:var(--om-primary-soft);border-color:var(--om-primary);color:var(--om-primary);font-weight:700}.om-page-link.is-disabled{background:var(--om-surface);color:var(--om-muted)}a.om-page-link:hover{border-color:var(--om-primary)}.om-identity-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.om-identity-tabs span{font-variant-numeric:tabular-nums}.om-pagination{padding:8px 18px}
.om-jalali-popover{position:fixed;inset:0;margin:auto;width:min(440px,calc(100vw - 32px));height:fit-content;max-height:90dvh;padding:0;border:0;background:transparent;overflow:auto;color:var(--om-text)}.om-jalali-popover[open]{display:block}.om-jalali-popover::backdrop{background:#07101c88;backdrop-filter:blur(2px)}.om-jalali-panel{width:100%;padding:24px;box-shadow:none;direction:rtl}.om-jalali-panel h3{font-size:18px;margin:0}.om-jalali-inputs{grid-template-columns:1fr 1.2fr .8fr;gap:10px}.om-jalali-panel label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:13px;color:var(--om-text)}.om-jalali-panel input,.om-jalali-panel select{height:44px;font-size:16px;text-align:center;padding:8px}.om-jalali-time{direction:ltr;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end;margin-top:18px}.om-jalali-time>span{height:44px;display:flex;align-items:center;font-size:24px}.om-jalali-time label{direction:rtl;text-align:center}.om-jalali-time input{direction:ltr}.om-jalali-actions{justify-content:flex-start;gap:10px;margin-top:24px}.om-picker-error{font-size:13px;color:var(--om-danger)}.om-dialog h2{font-size:20px}.om-dialog-body{font-size:14px}.om-dialog footer{gap:12px}
@media(max-width:1100px){.om-profile-grid{grid-template-columns:1fr}.om-profile-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.om-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1024px){.om-sidebar-close{display:grid}.om-main{margin-right:0}}
@media(max-width:700px){.om-page{padding:20px 14px}.om-profile-main{flex-direction:column;align-items:flex-start}.om-profile-main>.om-back{order:-1;margin-inline-start:0}.om-profile-person h1{font-size:23px}.om-profile-hero{padding:22px}.om-profile-aside{grid-template-columns:1fr;display:grid}.om-form-grid{grid-template-columns:1fr}.om-filter-bar>label{width:100%;min-width:0}.om-filter-bar .om-search-field{min-width:0}.om-heading-actions{overflow:visible;flex-wrap:wrap}.om-topbar-actions{display:flex}.om-global-search span{font-size:12px}.om-jalali-panel{padding:18px}.om-pager-number{display:none}.om-pager{align-items:flex-start;gap:12px}.om-pager-links{width:100%;justify-content:space-between}.om-identity-tabs .om-button{font-size:12px;padding:8px 10px}.om-table{display:table;min-width:640px}.om-table thead{display:table-header-group}.om-table tbody{display:table-row-group}.om-table tr{display:table-row;width:auto;padding:0}.om-table th,.om-table td{display:table-cell;width:auto;padding:12px 14px;vertical-align:middle;border-bottom:1px solid var(--om-line)}.om-table td:first-child{padding:12px 14px}.om-table .om-row-action .om-button{width:auto;margin:0}}
@media(max-width:430px){.om-kpi-grid{grid-template-columns:1fr}.om-profile-person{gap:15px}.om-metric-strip{grid-template-columns:1fr}.om-theme-control select{max-width:115px}}

.om-datetime{display:inline-flex;direction:rtl;align-items:center;gap:5px;flex-wrap:wrap;vertical-align:middle}.om-date-separator{font-size:inherit;color:var(--om-muted)}


input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=range]):not([type=color]),select,textarea{box-sizing:border-box;max-width:100%;min-height:44px;border:1px solid var(--om-line);border-radius:8px;background:var(--om-card);color:var(--om-text);padding:10px 12px;font:inherit;font-size:14px}
textarea{resize:vertical;min-height:100px}select{color-scheme:light}html[data-theme=dark] select{color-scheme:dark}
.om-campaign-form section>label{display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--om-text);min-width:0}.om-campaign-form section>label>input,.om-campaign-form section>label>select,.om-campaign-form section>label>textarea{width:100%}.om-campaign-form section>label small{font-size:12px;line-height:1.8;color:var(--om-muted)}.om-campaign-form section{display:flex;flex-direction:column;gap:18px;align-self:start}.om-campaign-form section h3{font-size:16px;margin:0;padding-bottom:12px;border-bottom:1px solid var(--om-line)}
.om-rule-row input,.om-rule-row select{font-size:13px;background:var(--om-card);color:var(--om-text);border-color:var(--om-line);min-height:44px}.om-rule-row [data-rule-value]{min-width:0}.om-rule-builder>header strong{font-size:14px}.om-safety-note strong{font-size:14px}.om-safety-note p{font-size:12px;line-height:1.9}.om-safety-note{border-color:var(--om-line)}
.om-dialog header p{font-size:13px}.om-dialog footer{justify-content:flex-start;flex-direction:row-reverse}.om-dialog .om-icon-button{min-width:40px;min-height:40px}.om-test-form label span{font-size:13px}.om-test-form input,.om-test-form select{height:auto;background:var(--om-card);color:var(--om-text);border-color:var(--om-line)}
.om-timeline article strong,.om-activity-stream article strong{font-size:15px}.om-timeline article time,.om-activity-stream article time,.om-timeline article small,.om-activity-stream article small{font-size:12px;color:var(--om-muted)}.om-timeline article p,.om-activity-stream article p{font-size:13px;color:var(--om-muted)}.om-timeline article header,.om-activity-stream article header{flex-wrap:wrap}
.om-kpi-card span,.om-kpi-card>div>span{font-size:13px}.om-kpi-card small{font-size:12px}.om-kpi-card strong{font-size:24px}.om-list-main strong{font-size:14px}.om-list-main small{font-size:12px}.om-extra-stats span{font-size:13px}.om-tag-field legend{font-size:13px;color:var(--om-text)}.om-chip-check span{font-size:12px;border-color:var(--om-line)}.om-check-card small{font-size:12px;color:var(--om-muted)}.om-chip-check input:focus-visible+span{outline:2px solid var(--om-focus);outline-offset:3px}
.om-table tbody tr:hover{background:var(--om-surface)}.om-table td,.om-payment-list>div,.om-compact-list>div{border-color:var(--om-line)}
[hidden]{display:none}
@media(max-width:760px){.om-test-form{grid-template-columns:1fr}.om-test-form .is-wide{grid-column:auto}.om-campaign-form section{gap:16px}.om-dialog footer .om-button{flex:0 1 auto}.om-timeline article header time{width:100%}}

.om-demographics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.om-demographics dt{font-weight:700}.om-demographics dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.om-occasion{border-top:1px solid var(--om-line);padding:20px 0}.om-occasion header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.om-occasion h3{margin:0;font-size:17px}.om-occasion p{white-space:pre-wrap}.om-delete-occasion{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.om-live-status{padding:10px 16px;border:1px solid var(--om-line);background:var(--om-surface);border-radius:8px;margin-bottom:16px;font-size:13px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.om-report-total{font-size:26px;line-height:1.6;font-variant-numeric:tabular-nums}.om-report-total small{font-size:15px;color:var(--om-muted);font-weight:500}.om-report-amount{font-size:18px;line-height:1.7;font-variant-numeric:tabular-nums;white-space:nowrap}.om-report-amount small{font-size:13px;font-weight:500}.om-table td.om-report-table-amount{font-size:18px;font-weight:700;color:var(--om-primary);font-variant-numeric:tabular-nums;white-space:nowrap}


:root { --om-content-max: 1480px; }
.om-page { width: 100%; max-width: var(--om-content-max); margin-inline: auto; }
.om-page-heading { align-items: center; }
.om-page-heading h1 { letter-spacing: -.025em; line-height: 1.45; }
.om-page-heading p { max-width: 72ch; line-height: 1.8; }
.om-card, .om-task-card, .om-badge-card { box-shadow: 0 1px 3px rgba(17,42,58,.035); }
.om-nav a { border-radius: 9px; transition: background-color .18s ease, color .18s ease; }
.om-nav a.is-active { font-weight: 700; }
.om-button { transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.om-button:not(:disabled):active { transform: translateY(1px); }
.om-button:disabled { opacity: .55; cursor: not-allowed; }
.om-table tbody tr { transition: background-color .16s ease; }
.om-table tbody tr:hover { background: var(--om-surface); }
.om-table th { white-space: nowrap; }
.om-table td { vertical-align: middle; }
.om-dialog { max-height: min(88dvh, 900px); overflow-y: auto; }
.om-dialog::backdrop { background: rgba(8,25,37,.58); }
.om-alert { border-radius: var(--om-radius-sm); line-height: 1.8; }
:where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--om-focus); outline-offset: 3px; }
.om-rule-row { flex-wrap: wrap; }
.om-rule-row > [data-params] { display: flex; flex: 1 1 230px; flex-wrap: wrap; gap: 8px; min-width: 0; }
.om-rule-row > [data-params] > * { flex: 1 1 150px; min-width: 0; }
@media (max-width: 700px) {
  .om-page { padding: 18px 14px 32px; }
  .om-page-heading { align-items: stretch; }
  .om-page-heading h1 { font-size: 21px; }
  .om-page-heading .om-button { width: fit-content; }
  .om-card-header { flex-wrap: wrap; gap: 10px; }
  .om-table { min-width: 640px; }
  .om-dialog { width: calc(100vw - 20px); max-width: none; }
  .om-profile-hero { padding: 18px ; }
  .om-profile-main { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .om-nav a, .om-button, .om-table tbody tr { transition: none; }
}

.om-call-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0}.om-call-item{display:grid;gap:.45rem;border-top:1px solid #e8e4dc;padding:1rem 0}.om-call-item small{color:#68727a}.om-call-item form{max-width:36rem}.om-call-item textarea{width:100%}

}
@layer system {
/* Omid CRM 3 · authoritative shared design system; RTL, light and dark. */
:root {
 --om-primary:#087f78;--om-primary-2:#06655f;--om-primary-ink:#fff;--om-primary-soft:#e7f5f1;--om-primary-line:#b7dcd3;
 --om-bg:#f4f7f8;--om-card:#fff;--om-surface:#f0f5f5;--om-line:#dfe8e8;--om-text:#18383c;--om-muted:#5b7276;--om-faint:#7d9296;
 --om-gold:#8a6718;--om-gold-soft:#faf3df;--om-blue:#3968ad;--om-blue-soft:#edf2fc;
 --om-success:#177550;--om-success-soft:#e8f6ee;--om-danger:#b33f52;--om-danger-soft:#fff0f2;--om-warn:#946314;--om-warn-soft:#fff5df;
 --om-focus:#168b82;--om-radius:16px;--om-radius-sm:10px;--om-radius-lg:20px;--om-control:44px;--om-sidebar-w:272px;
 --om-shadow:0 2px 6px #153b4004,0 10px 28px #153b4005;--om-shadow-lg:0 24px 80px #102f4026;--om-shadow-primary:none;
 --om-content-max:1600px;--om-font:Farhang2FaNum,Tahoma,sans-serif;color-scheme:light;
}
html[data-theme=dark]{
 --om-primary:#70d4c3;--om-primary-2:#91e5d7;--om-primary-ink:#102c2b;--om-primary-soft:#193e3c;--om-primary-line:#2c6058;
 --om-bg:#101c26;--om-card:#192a35;--om-surface:#20343f;--om-line:#304650;--om-text:#e5eff1;--om-muted:#abc0c6;--om-faint:#849da6;
 --om-gold:#dfc277;--om-gold-soft:#38352b;--om-blue:#a1bff4;--om-blue-soft:#263b54;
 --om-success:#83d9af;--om-success-soft:#203f35;--om-danger:#ffabb9;--om-danger-soft:#422b37;--om-warn:#edcb86;--om-warn-soft:#3e3525;
 --om-focus:#70d4c3;--om-shadow:0 3px 16px #030d141f;--om-shadow-lg:0 24px 80px #0006;color-scheme:dark;
}
*{box-sizing:border-box}html,body{direction:rtl;text-align:right}body{margin:0;font:400 14px/1.8 var(--om-font);background:var(--om-bg);color:var(--om-text)}
button,input,select,textarea{font:inherit}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{line-height:1.6}h2{font-size:18px}h3{font-size:16px}small,.om-field-help{font-size:12px;line-height:1.8;color:var(--om-muted)}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a:hover{color:var(--om-primary)}[hidden]{display:none!important}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--om-focus);outline-offset:3px}
.om-icon{width:20px;height:20px;flex:0 0 auto;vertical-align:middle;stroke-width:1.75}.om-icon[width="30"],.om-icon[width="34"],.om-icon[width="36"]{width:32px;height:32px}
.om-main,.om-page,.om-card,.om-form-grid>*,.om-form-stack>*,.om-dashboard-grid>*,.om-profile-grid>*,.om-settings-grid>*{min-width:0}
/* Shell: fixed brand and account, one independently scrolling navigation. */
.om-shell{min-height:100dvh}.om-sidebar{width:var(--om-sidebar-w);height:100dvh;background:var(--om-card);padding:22px 14px 14px;border-inline-end:1px solid var(--om-line);border-left:1px solid var(--om-line);gap:12px}
.om-brand{height:auto;min-height:66px;flex-shrink:0;padding:0 8px 18px;border-bottom:1px solid var(--om-line);gap:10px}.om-brand-mark{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:var(--om-primary-soft);color:var(--om-primary);box-shadow:none;overflow:hidden}.om-brand-mark img{width:100%;height:100%;object-fit:contain}.om-brand strong{font-size:17px}.om-brand span{font-size:11px;color:var(--om-muted)}
.om-nav{flex:1;min-height:0;padding:0 2px 8px;gap:5px;overscroll-behavior:contain;scrollbar-width:thin}.om-nav-label{padding:12px 12px 4px;margin:0;border:0;font-size:11px;color:var(--om-faint);letter-spacing:0}.om-nav a{flex-shrink:0;min-height:44px;border-radius:10px;padding:9px 12px;gap:12px;color:var(--om-muted);font-size:13px;font-weight:500;line-height:1.65;border:1px solid transparent}.om-nav a:hover{background:var(--om-surface);color:var(--om-text)}.om-nav a.is-active{color:var(--om-primary);background:var(--om-primary-soft);border-color:var(--om-primary-line);box-shadow:none;font-weight:700}.om-nav a.is-active:after{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;margin-inline-start:auto;flex-shrink:0}
.om-sidebar-user{flex-shrink:0;margin:0;background:var(--om-surface);border:1px solid var(--om-line);border-radius:12px;padding:10px;min-height:64px}.om-avatar{flex:0 0 auto;background:var(--om-primary-soft);color:var(--om-primary);border:1px solid var(--om-primary-line)}.om-sidebar-user strong{font-size:12px}.om-sidebar-user small{font-size:11px}
.om-main{margin-right:var(--om-sidebar-w)}.om-topbar{height:76px;padding:0 28px;gap:20px;background:var(--om-card);backdrop-filter:none;border-bottom:1px solid var(--om-line)}.om-topbar-title{flex-direction:column;align-items:flex-start;gap:0;font-size:14px}.om-topbar-title small{font-size:11px}.om-topbar-actions{display:flex;margin-inline-start:auto}.om-global-search{width:min(430px,40vw);min-width:0;height:44px;border-radius:10px;background:var(--om-surface);color:var(--om-muted);border:1px solid var(--om-line);margin:0 auto;font-size:13px;cursor:pointer}.om-global-search kbd{background:var(--om-card);border-color:var(--om-line)}.om-global-search span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.om-page{width:100%;max-width:var(--om-content-max);padding:28px;margin-inline:auto}.om-page-heading{gap:20px;align-items:center;margin-bottom:24px}.om-page-heading h1{font-size:26px;letter-spacing:0;margin:0 0 5px}.om-page-heading p{font-size:13px;max-width:84ch;color:var(--om-muted)}.om-eyebrow{font-size:11px;letter-spacing:0;color:var(--om-primary);font-weight:500}.om-heading-actions{gap:8px;flex-wrap:wrap;overflow:visible}
/* Shared controls: exclusions keep checkboxes and hidden inputs correctly sized. */
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]),select,textarea{
 width:100%;min-width:0;max-width:100%;min-height:var(--om-control);border:1px solid var(--om-line);border-radius:var(--om-radius-sm);padding:10px 12px;background-color:var(--om-card);color:var(--om-text);font:inherit;line-height:1.6;box-shadow:none;
}
select{appearance:none;padding-inline-end:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237b9296' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center;background-size:16px;color-scheme:inherit}
html[data-theme=dark] select{color-scheme:dark}option{background:var(--om-card);color:var(--om-text)}textarea{min-height:104px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--om-faint);opacity:1}input[type=file]{padding:7px;font-size:12px}input::file-selector-button{border:0;border-radius:6px;padding:6px 10px;margin-inline-end:10px;background:var(--om-surface);color:var(--om-text);font:inherit;cursor:pointer}
input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;padding:0;flex:0 0 18px;margin:0;accent-color:var(--om-primary)}input[type=hidden]{display:none}
.om-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.om-form-stack{display:flex;flex-direction:column;gap:18px}.om-form-grid>.is-wide{grid-column:1/-1}.om-form-grid>button{grid-column:1/-1}.om-form-stack>label,.om-form-grid>label,.om-campaign-form section>label,.om-permissions label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:13px}.om-form-grid label>span,.om-form-stack label>span{font-size:13px;color:var(--om-text);margin:0}.om-form-grid label.om-check,.om-form-stack label.om-check,.om-form-stack label.om-check-card,.om-check,.om-check-card{display:flex;flex-direction:row;align-items:center;gap:10px;min-height:44px;line-height:1.8;font-weight:400}.om-check-card{background:var(--om-surface);border:1px solid var(--om-line);padding:12px;border-radius:10px}.om-check-card strong{font-size:13px}.om-check-card small{font-size:12px}
.om-button{min-height:44px;padding:10px 16px;border-radius:10px;font-size:13px;line-height:1.65;white-space:normal;text-align:center;gap:8px;box-shadow:none;justify-content:center;align-self:start;transition:background-color .15s,border-color .15s}.om-button:hover{transform:none}.om-button.is-primary{background:var(--om-primary);color:var(--om-primary-ink);box-shadow:none}.om-button.is-primary:hover{background:var(--om-primary-2);color:var(--om-primary-ink)}.om-button.is-secondary{background:var(--om-card);border-color:var(--om-line);color:var(--om-text)}.om-button.is-secondary:hover{border-color:var(--om-primary);color:var(--om-primary)}.om-button.is-ghost{background:transparent;color:var(--om-muted)}.om-button.is-danger{background:var(--om-danger-soft);border-color:var(--om-danger);color:var(--om-danger)}.om-button.is-small{min-height:36px;font-size:12px;padding:6px 12px}.om-button.is-wide{width:100%;justify-content:center}.om-button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.om-icon-button{width:40px;height:40px;min-width:40px;min-height:40px;color:var(--om-muted);background:transparent;border-radius:10px}.om-icon-button:hover{background:var(--om-surface);color:var(--om-primary)}.om-sidebar-close,.om-menu-button{display:none}.om-filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.om-filter-bar>label{flex:1 1 160px;min-width:0;display:flex;flex-direction:column;gap:7px}.om-filter-bar>.om-check{flex-direction:row}.om-filter-bar>.om-search-field{flex:2 1 240px}.om-filter-bar .om-search-field input{padding-inline-start:40px}.om-filter-bar .om-search-field .om-icon{top:auto;bottom:12px}.om-filter-bar>.om-button{align-self:end}
.om-theme-control{margin:0;display:block;flex-shrink:0}.om-theme-control select{min-height:40px;width:142px;max-width:100%;font-size:12px;padding:8px 12px 8px 34px}
/* Cards, tables, lists and all report pages. */
.om-card,.om-task-card,.om-badge-card,.om-kpi-card{border:1px solid var(--om-line);border-radius:var(--om-radius);background:var(--om-card);box-shadow:var(--om-shadow);color:var(--om-text)}.om-panel-pad{padding:22px;margin-bottom:20px}.om-panel-pad>h2{margin:0 0 10px;font-size:18px}.om-panel-pad>p{font-size:13px;color:var(--om-muted)}.om-card-header{min-height:72px;padding:18px 22px;gap:12px;flex-wrap:wrap;border-color:var(--om-line)}.om-card-header h2{font-size:17px;margin:0}.om-card-header p{font-size:12px;color:var(--om-muted)}.om-card-header>a{font-size:12px}
.om-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.om-kpi-card{min-height:124px;padding:20px;gap:14px;align-items:flex-start}.om-kpi-card:before{display:none}.om-kpi-icon{width:44px;height:44px;border-radius:12px;flex-shrink:0}.om-kpi-card span{font-size:12px}.om-kpi-card strong{font-size:24px;line-height:1.55;overflow-wrap:anywhere}.om-kpi-card small{font-size:11px;color:var(--om-muted)}
.om-dashboard-grid{gap:20px;margin-bottom:20px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.om-dashboard-grid.is-lower{grid-template-columns:repeat(2,minmax(0,1fr))}.om-task-grid,.om-badge-grid,.om-book-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px;align-items:stretch}.om-task-card{padding:20px;display:flex;flex-direction:column}.om-task-card h2{font-size:17px}.om-task-card p{font-size:13px}.om-task-actions{margin-top:auto;padding-top:16px;gap:10px}.om-book-grid>.om-card{margin:0}.om-book-grid>a{transition:border-color .15s}.om-book-grid>a:hover{border-color:var(--om-primary)}.om-task-grid>.om-empty,.om-book-grid>.om-empty{grid-column:1/-1}.om-badge-body{padding:20px}.om-badge-art{height:100px}.om-badge-body p{min-height:0;font-size:13px}
.om-table-wrap{max-width:100%;width:100%;overflow:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.om-table{display:table;width:100%;min-width:640px;border-collapse:collapse}.om-table thead{display:table-header-group}.om-table tbody{display:table-row-group}.om-table tr{display:table-row;width:auto;padding:0}.om-table th,.om-table td{display:table-cell;padding:14px 18px;text-align:right;vertical-align:middle;border-bottom:1px solid var(--om-line);font-size:13px;width:auto}.om-table th{background:var(--om-surface);color:var(--om-muted);font-size:12px;white-space:nowrap;font-weight:500}.om-table td{color:var(--om-text)}.om-table td:first-child{padding:14px 18px}.om-table td:before{display:none}.om-table tbody tr:last-child td{border-bottom:0}.om-table tbody tr:hover{background:var(--om-surface)}.om-table td small,.om-table .om-person small{font-size:11px}.om-table .om-person strong{font-size:13px}.om-table .om-row-action .om-button{width:auto;margin:0}.om-row-action{white-space:nowrap}.om-person{gap:10px}.om-table td.om-report-table-amount{font-size:16px;font-weight:700;color:var(--om-primary)}
.om-status,.om-soft-badge,.om-count-pill{font-size:11px;line-height:1.7;border-radius:8px;padding:4px 9px;max-width:100%;white-space:normal}.om-status.is-inactive,.om-status.is-paused{background:var(--om-surface);color:var(--om-muted)}.om-status.is-active,.om-status.is-sent{color:var(--om-success);background:var(--om-success-soft)}.om-status.is-important{color:var(--om-warn);background:var(--om-warn-soft)}.om-status.is-urgent{color:var(--om-danger);background:var(--om-danger-soft)}
.om-metric-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));margin-bottom:20px;overflow:hidden}.om-metric-strip>div{padding:16px 20px;min-width:0;border:0;border-inline-end:1px solid var(--om-line);grid-column:auto}.om-metric-strip>div:last-child{grid-column:auto}.om-metric-strip strong{font-size:19px;overflow-wrap:anywhere}.om-metric-strip span{font-size:12px}.om-list-row{min-height:66px}.om-compact-list>div,.om-payment-list>div{border-color:var(--om-line)}.om-compact-list small,.om-payment-list small{font-size:11px}.om-list-main strong{font-size:13px}.om-empty{min-height:170px;padding:28px;color:var(--om-muted)}.om-empty strong{color:var(--om-text);font-size:15px}.om-empty p{font-size:12px}.om-empty-inline{color:var(--om-muted);font-size:12px}
.om-alert{font-size:13px;line-height:1.9;border-radius:12px;padding:14px 18px}.om-alert.is-error{color:var(--om-danger);background:var(--om-danger-soft);border-color:var(--om-danger)}.om-alert.is-success{color:var(--om-success);background:var(--om-success-soft);border-color:var(--om-success)}.om-live-status{padding:8px 12px;background:transparent;font-size:11px;border:0;border-inline-start:2px solid var(--om-primary);border-radius:0;margin-bottom:20px;color:var(--om-muted)}
.om-tabs{gap:8px;flex-wrap:wrap}.om-tabs a{min-height:40px;padding:8px 16px;border-radius:10px}.om-tabs a.is-active{background:var(--om-primary-soft);color:var(--om-primary)}.om-pager{padding:16px 0}.om-page-link{min-width:40px;min-height:40px;border-radius:10px;font-size:12px}.om-pagination{padding:12px 20px}.om-pager-summary{font-size:12px}
/* Profile, permission editors, campaign builder and calendar. */
.om-profile-hero{padding:24px;background:#095950;border-radius:16px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:24px;box-shadow:none}.om-profile-hero:after{display:none}.om-profile-main{display:flex;flex-direction:row;align-items:center;gap:20px;flex:1;min-width:0;width:auto}.om-profile-person{gap:14px}.om-profile-person h1{font-size:25px}.om-profile-total{align-self:center}.om-profile-total strong{font-size:26px}.om-profile-meta{font-size:12px}.om-profile-grid{grid-template-columns:minmax(0,1fr) 340px;gap:20px}.om-profile-aside{min-width:0}.om-profile-aside .om-form-grid{grid-template-columns:1fr}.om-timeline article p,.om-timeline article time,.om-activity-stream article p{font-size:12px}.om-timeline article header,.om-activity-stream article header{flex-wrap:wrap;gap:8px}.om-call-item{border-top:1px solid var(--om-line)}.om-call-item small{color:var(--om-muted)}
.om-permissions{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--om-line);border-radius:12px;padding:16px;gap:16px}.om-permissions label>span{font-size:12px}.om-tag-field{min-width:0;border-color:var(--om-line)}.om-tag-field legend{font-size:12px}.om-chip-check input{position:absolute;opacity:0}.om-chip-check span{font-size:12px;border-color:var(--om-line)}.om-chip-check input:focus-visible+span{outline:3px solid var(--om-focus);outline-offset:3px}details>summary{cursor:pointer;padding:12px 0;font-size:13px;color:var(--om-primary)}details[open]>summary{margin-bottom:12px}
.om-campaign-form{gap:20px;align-items:start}.om-campaign-form section{padding:20px;gap:18px;min-width:0}.om-rule-row{gap:8px;min-width:0;flex-wrap:wrap}.om-rule-row>[data-params]{display:flex;flex:1 1 220px;flex-wrap:wrap;gap:8px;min-width:0}.om-rule-row>[data-params]>*{flex:1 1 140px;min-width:0}.om-rule-builder>header{flex-wrap:wrap;gap:10px}.om-test-form{gap:12px}.om-demographics{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:16px}.om-demographics>div{padding:14px;background:var(--om-surface);border-radius:10px}.om-report-amount{font-size:17px;white-space:normal}.om-report-total{font-size:26px}.om-report-bar b{white-space:normal}.om-report-bars:empty:after{content:'در این بازه داده‌ای برای نمودار وجود ندارد.';display:block;padding:28px;text-align:center;color:var(--om-muted)}
/* Native dialogs keep their focus management, including nested date pickers. */
.om-dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--om-line);border-radius:18px;overflow:auto;background:var(--om-card);color:var(--om-text);box-shadow:var(--om-shadow-lg)}.om-dialog.is-wide{width:min(1040px,calc(100vw - 32px))}.om-dialog::backdrop,.om-jalali-popover::backdrop{background:#081923a6;backdrop-filter:blur(3px)}.om-dialog>form>header{padding:20px 24px;border-bottom:1px solid var(--om-line);background:var(--om-card);position:sticky;top:0;z-index:2}.om-dialog h2{font-size:20px}.om-dialog header p{font-size:12px}.om-dialog-body{padding:24px}.om-dialog footer{padding:16px 24px;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;border-top:1px solid var(--om-line);background:var(--om-card)}.om-dialog footer .om-button.is-primary{order:-1}.om-jalali-panel{border:1px solid var(--om-line);border-radius:16px;padding:24px;background:var(--om-card)}.om-jalali-popover{display:block;inset:0;margin:auto;width:min(440px,calc(100vw - 32px));height:fit-content;max-height:90dvh;padding:0;background:transparent;border:0;overflow:auto}.om-jalali-popover:not([open]){display:none}.om-jalali-panel input,.om-jalali-panel select{font-size:16px}.om-jalali-inputs{grid-template-columns:1fr 1.2fr .8fr}.om-jalali-time{grid-template-columns:1fr auto 1fr}
/* Both sign-in steps share precisely the same frame and spacing. */
.om-auth{min-height:100dvh;padding:32px;background:var(--om-bg);display:grid;place-items:center}.om-login-shell{width:min(1000px,100%);min-height:600px;display:grid;grid-template-columns:1fr 1fr;background:var(--om-card);border:1px solid var(--om-line);border-radius:24px;box-shadow:var(--om-shadow);overflow:hidden}.om-login-story{display:flex;padding:48px;background:#095950;color:#fff;justify-content:space-between}.om-login-story:before,.om-login-story:after{display:none}.om-login-story .om-eyebrow{color:#a7decf}.om-login-story h1{font-size:32px;line-height:1.7;margin:24px 0 16px}.om-login-story p{font-size:14px;color:#d3e9e4;opacity:1}.om-login-quote{font-size:13px;margin-top:28px;border-color:#b1c79b;background:#ffffff0c}.om-login-logo{width:64px;height:64px;border-radius:16px;background:#ffffff14;margin:0;overflow:hidden}.om-login-brand{max-width:100%;max-height:100%;object-fit:contain}.om-login-card{padding:40px;gap:24px;justify-content:center;background:var(--om-card)}.om-auth-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.om-auth-brand{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--om-muted)}.om-auth-brand .om-brand-mark{width:36px;height:36px;flex-basis:36px}.om-auth-heading h2{font-size:28px;margin:0 0 8px}.om-auth-heading p{font-size:13px;color:var(--om-muted);margin:0}.om-login-card .om-alert{margin:0}.om-login-card .om-form-stack{gap:20px}.om-login-card .om-button{min-height:48px}.om-login-help{margin:0;font-size:12px;color:var(--om-muted)}.om-security-note{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:10px;background:var(--om-primary-soft);color:var(--om-primary);font-size:12px;line-height:1.8}.om-security-note .om-icon{margin-top:2px}.om-password-field{position:relative}.om-password-field input{padding-inline-end:48px}.om-password-field .om-icon-button{position:absolute;inset-inline-end:3px;top:3px}.om-otp-input{letter-spacing:.5em;text-align:center;font-size:24px!important;min-height:60px!important;font-variant-numeric:tabular-nums}
@media(min-width:1025px){.om-sidebar{transform:none}.om-main{margin-right:var(--om-sidebar-w)}}
@media(max-width:1280px){.om-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.om-profile-grid{grid-template-columns:1fr}.om-profile-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.om-dashboard-grid{grid-template-columns:1fr}.om-profile-main>.om-back{margin:0}}
@media(max-width:1024px){.om-sidebar{width:min(304px,calc(100vw - 40px));transform:translateX(110%);transition:transform .2s;box-shadow:-12px 0 40px #03182126;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(14px,env(safe-area-inset-bottom))}.om-sidebar-open .om-sidebar{transform:translateX(0)}.om-sidebar-open{overflow:hidden}.om-main{margin-right:0}.om-sidebar-close,.om-menu-button{display:grid}.om-sidebar-open .om-sidebar-backdrop{display:block;position:fixed;inset:0;background:#07172280;z-index:45}.om-topbar{padding-inline:20px;gap:12px}.om-login-story{padding:32px}.om-login-story h1{font-size:27px}.om-login-card{padding:32px}}
@media(max-width:760px){.om-page{padding:20px 16px 32px}.om-topbar{height:68px;padding:0 12px;gap:8px}.om-topbar-title{display:none}.om-topbar-actions{display:flex}.om-global-search{flex:1;width:auto;min-width:40px}.om-global-search span{font-size:12px}.om-global-search kbd{display:none}.om-theme-control select{width:118px;font-size:11px}.om-page-heading{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:20px}.om-page-heading h1{font-size:23px}.om-heading-actions{width:100%;gap:8px}.om-page-heading>.om-button{align-self:start}.om-panel-pad,.om-card-header{padding:18px}.om-dashboard-grid,.om-dashboard-grid.is-lower,.om-profile-grid,.om-profile-aside{grid-template-columns:1fr}.om-form-grid,.om-permissions,.om-campaign-form{grid-template-columns:1fr}.om-form-grid>.is-wide{grid-column:auto}.om-filter-bar>label,.om-filter-bar>.om-search-field{flex-basis:100%;width:100%}.om-filter-bar>.om-check{flex-basis:auto}.om-kpi-grid,.om-kpi-grid.is-three{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.om-kpi-card{min-height:120px;padding:16px;flex-direction:column;gap:10px}.om-kpi-card strong{font-size:23px}.om-kpi-card small{font-size:11px}.om-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.om-metric-strip>div{padding:14px;grid-column:auto;border-bottom:1px solid var(--om-line)}.om-metric-strip>div:last-child{grid-column:auto}.om-metric-strip strong{font-size:17px}.om-task-grid,.om-badge-grid,.om-book-grid{grid-template-columns:1fr}.om-profile-main{flex-direction:column;align-items:flex-start;gap:14px}.om-profile-person h1{font-size:23px}.om-profile-hero{padding:20px}.om-profile-aside{display:grid}.om-dialog-body{padding:18px}.om-dialog>form>header,.om-dialog footer{padding:16px 18px}.om-dialog{max-height:calc(100dvh - 24px)}.om-report-bar{grid-template-columns:100px 1fr}.om-report-bar b{grid-column:2}.om-auth{padding:20px 16px;align-items:center}.om-login-shell{display:block;min-height:0;width:min(480px,100%);border-radius:20px}.om-login-story{display:none}.om-login-card{padding:28px 24px;gap:24px}.om-auth-heading h2{font-size:26px}.om-auth input:not([type=checkbox]),.om-auth select{font-size:16px}.om-auth .om-theme-control select{font-size:12px}.om-login-card .om-form-stack{gap:18px}.om-auth-toolbar{align-items:center}.om-identity-tabs{flex-wrap:wrap}.om-rule-row{grid-template-columns:1fr 1fr}.om-test-form{grid-template-columns:1fr}.om-test-form>.is-wide{grid-column:auto}}
@media(max-width:380px){.om-global-search span{display:none}.om-global-search{justify-content:center;flex:0 0 44px}.om-topbar-actions{margin-inline-start:auto}.om-login-card{padding:24px 18px}.om-auth-toolbar{gap:12px}.om-auth-brand{font-size:12px}.om-kpi-grid,.om-kpi-grid.is-three{grid-template-columns:1fr}.om-kpi-card{flex-direction:row;align-items:center;min-height:108px}.om-metric-strip{grid-template-columns:1fr}.om-jalali-panel{padding:18px}.om-jalali-inputs{gap:6px}}

/* A real brand image keeps its transparent background and natural proportions. */
.om-brand{justify-content:space-between}
.om-brand-mark.is-image{width:186px;height:72px;flex:0 1 186px;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.om-brand-mark.is-image img{display:block;width:100%;height:100%;object-fit:contain}
.om-auth-brand .om-brand-mark.is-image{width:154px;height:60px;flex:0 1 154px}
.om-login-logo.is-image{width:132px;height:56px;border-radius:0;background:transparent;overflow:visible}
.om-login-logo.is-image .om-login-brand{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
/* Include mobile browsers that request a wider desktop-style viewport. */
@media(max-width:1280px){.om-auth{padding:20px 16px}.om-login-shell{display:flex;flex-direction:column;width:min(520px,100%);min-height:0}.om-login-story{display:block;padding:18px 28px}.om-login-story h1{margin:0;font-size:17px;line-height:1.9}.om-login-card{padding:28px 24px;gap:20px}}
@media(max-width:760px){.om-login-shell{width:100%}.om-login-story{padding:15px 24px}.om-login-story h1{font-size:15px}.om-login-card{padding:24px 20px}.om-auth-brand .om-brand-mark.is-image{width:138px;height:55px;flex-basis:138px}}
@media(max-width:380px){.om-auth-brand .om-brand-mark.is-image{width:118px;height:48px;flex-basis:118px}.om-login-card{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.om-sidebar,.om-topbar,.om-sidebar-backdrop,.om-button,.om-live-status{display:none!important}.om-main{margin:0}.om-page{padding:0}.om-card{box-shadow:none;break-inside:avoid}body{background:white;color:black}.om-table-wrap{overflow:visible}.om-table{min-width:0}}

.om-brand>div:nth-child(2){min-width:0;flex:1}.om-brand strong{overflow-wrap:anywhere}.om-dialog>form>header>div{min-width:0}.om-report-total{overflow-wrap:anywhere}.om-table td[colspan]>.om-empty{min-height:140px}

/* Donor forms: keep controls away from the card edge and make category selection work by touch. */
.om-profile-aside .om-card:not(.om-panel-pad)>form{padding:20px 22px 22px}
.om-profile-aside .om-card:not(.om-panel-pad)>.om-empty-inline{padding:20px 22px}
.om-tag-field{border:0;padding:0;margin:0;min-width:0}
.om-tag-field>div{display:flex;flex-wrap:wrap;gap:8px}
.om-chip-check{position:relative;display:inline-flex;align-items:center;min-height:44px;cursor:pointer}
.om-chip-check input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;min-height:100%;opacity:0;margin:0;z-index:1;cursor:pointer;pointer-events:auto}
.om-chip-check span{display:inline-flex;align-items:center;min-height:44px;padding:8px 13px;border-radius:999px;border:1px solid var(--om-line);background:var(--om-surface);font-size:12px;line-height:1.5;color:var(--om-text);margin:0}
.om-chip-check input:checked+span{background:var(--om-primary-soft);border-color:var(--om-primary);color:var(--om-primary);font-weight:700}
.om-chip-check input:focus-visible+span{outline:3px solid var(--om-focus);outline-offset:3px}
.om-tag-options{display:flex;flex-wrap:wrap;gap:8px}
.om-tag-option{display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:44px;max-width:100%;padding:8px 12px;border:1px solid var(--om-line);border-radius:10px;background:var(--om-surface);color:var(--om-text);cursor:pointer}
.om-tag-option input[type=checkbox]{position:static;opacity:1;pointer-events:auto;z-index:auto;flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--om-primary);cursor:pointer}
.om-tag-option>span{min-width:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.om-tag-option:has(input:checked){background:var(--om-primary-soft);border-color:var(--om-primary)}
.om-tag-option input:checked+span{color:var(--om-primary);font-weight:700}
.om-tag-option input:focus-visible{outline:3px solid var(--om-focus);outline-offset:3px}
.om-profile-aside .om-field-help bdi{overflow-wrap:anywhere}

/* Physical right edge for the eye icon; password text starts at the left edge. */
.om-password-field{display:block;position:relative;direction:ltr}
.om-password-field input{direction:ltr;padding-right:52px;padding-left:12px}
.om-password-field .om-icon-button{position:absolute;inset-inline-end:auto;left:auto;right:4px;top:50%;transform:translateY(-50%);z-index:1}
.om-resend-form{display:grid;gap:6px}.om-resend-form small{display:block;text-align:center}

@media(max-width:760px){
 .om-profile-aside .om-card:not(.om-panel-pad)>form{padding:18px}
 .om-profile-aside .om-card:not(.om-panel-pad)>.om-empty-inline{padding:18px}
 .om-heading-actions>.om-button{flex:1 1 150px;min-width:0}
 .om-identity-tabs>.om-button{flex:1 1 145px;min-width:0}
 .om-profile-grid,.om-profile-aside,.om-profile-content{min-width:0}
}
@media(max-width:380px){.om-topbar{gap:6px;padding-inline:8px}.om-theme-control select{width:108px}.om-global-search{padding-inline:8px}}

.om-change-list{padding:4px 22px 16px}
.om-change-list article{padding:14px 0;border-bottom:1px solid var(--om-line);overflow-wrap:anywhere}
.om-change-list article:last-child{border-bottom:0}
.om-change-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.om-change-heading strong{font-size:13px}.om-change-heading time,.om-change-list small{font-size:11px;color:var(--om-muted)}
.om-change-list p{font-size:12px;margin:6px 0 0}
.om-change-list .om-change-reason{padding:8px 10px;border-radius:8px;background:var(--om-surface)}
.om-change-list>.om-empty-inline{display:block;margin:0;padding:16px 0}
@media(max-width:760px){.om-change-list{padding-inline:18px}}

/* Keep the magnifier in the input background, on the opposite edge from RTL text. */
.om-filter-bar label.om-search-field{position:relative;display:block;min-width:0}
.om-filter-bar label.om-search-field input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]){
  padding-right:12px;padding-left:48px;text-overflow:ellipsis;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23849da6' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m16 16 4 4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:left 14px center;background-size:20px 20px;
}
.om-password-field input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]){
  padding-right:52px;padding-left:12px;
}
.om-button,.om-global-search,.om-nav a{gap:10px}
.om-button>.om-icon,.om-global-search>.om-icon,.om-nav a>.om-icon{flex:0 0 auto;margin:0}
.om-button{display:inline-flex;align-items:center;min-width:0}
.om-global-search>span,.om-nav a>span{min-width:0}

/* Keep donor rows within the phone viewport; other report tables retain scrolling. */
@media(max-width:760px){
 .om-filter-bar label.om-search-field{width:100%;flex-basis:100%}
 .om-donor-table-card .om-table-wrap{overflow:visible}
 .om-donor-table-card .om-table{display:block;min-width:0;width:100%}
 .om-donor-table-card .om-table thead{display:none}
 .om-donor-table-card .om-table tbody{display:block}
 .om-donor-table-card .om-table tr{display:block;width:100%;padding:14px 16px;border-bottom:1px solid var(--om-line)}
 .om-donor-table-card .om-table td,.om-donor-table-card .om-table td:first-child{
   display:flex;width:100%;min-width:0;align-items:flex-start;justify-content:space-between;
   gap:12px;padding:7px 0;border:0;text-align:right;white-space:normal;
 }
 .om-donor-table-card .om-table td::before{content:attr(data-label);display:block;flex:0 0 38%;min-width:0;color:var(--om-muted);font-size:12px;text-align:right}
 .om-donor-table-card .om-table td:first-child::before,.om-donor-table-card .om-table td.om-row-action::before,.om-donor-table-card .om-table td[colspan]::before{display:none}
 .om-donor-table-card .om-table td:first-child{padding-bottom:12px}
 .om-donor-table-card .om-table td>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .om-donor-table-card .om-table .om-person{min-width:0;width:100%}
 .om-donor-table-card .om-table .om-person>span:last-child{min-width:0}
 .om-donor-table-card .om-table .om-row-action .om-button{width:100%}
 .om-donor-table-card .om-table td[colspan]{display:block;text-align:center}
}

}
