/* المالية ← البوّابات والمفاتيح — محصورة تحت .gwk فلا تتسرّب إلى بقية اللوحة.
   الألوان من رموز اللوحة (--surface/--border/--good/--warn/--crit…) ولكلٍّ
   نظير ليلي؛ وما لا رمز له في اللوحة (أزرق «تخدم القائم») يُعرَّف هنا مرّتين. */

.gwk {
  --gwk-unk: #4a5fc7; --gwk-unk-bg: #eaedfb; --gwk-unk-line: #c5cdf2;
  --gwk-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  display: flex; flex-direction: column; gap: 14px; margin-bottom: 24px;
}
:root[data-theme="dark"] .gwk { --gwk-unk: #8e9cf0; --gwk-unk-bg: #1c2142; --gwk-unk-line: #333c70 }

.gwk-num { font-variant-numeric: tabular-nums; direction: ltr; unicode-bidi: isolate }
.gwk-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap }
.gwk-muted { color: var(--muted) }

/* الرأس */
.gwk-head { margin-bottom: 0; align-items: center }
.gwk-who { font-size: 12px; font-weight: 800; color: var(--muted); background: var(--surface);
  border: 1px solid var(--border); border-radius: 999px; padding: 6px 12px; white-space: nowrap }
.gwk-who b { color: var(--text) }
.gwk-ro { border-radius: 12px; background: var(--warn-bg); border: 1px solid var(--warn-line); color: var(--warn);
  font-size: 13px; font-weight: 700; padding: 10px 14px; line-height: 1.7 }

/* شريط البيئة التي يقبلها الخادم */
.gwk-envbar { display: flex; gap: 14px; align-items: center; padding: 14px 18px; border-radius: 16px;
  border: 1px solid var(--warn-line); background: var(--warn-bg); color: var(--warn) }
.gwk-envbar.live { border-color: var(--good-line); background: var(--good-bg); color: var(--good) }
.gwk-envbar b { display: block; font-family: var(--fdisplay); font-size: 15.5px; font-weight: 800 }
.gwk-envbar span { font-size: 13px; font-weight: 600; line-height: 1.7 }
.gwk-envic { flex: none; width: 38px; height: 38px; border-radius: 12px; background: var(--surface);
  display: grid; place-items: center }

.gwk-note { border: 1px solid var(--warn-line); background: var(--warn-bg); color: var(--warn);
  border-radius: 12px; padding: 13px 16px; font-size: 13px; line-height: 1.75 }
.gwk-note b { display: block; font-family: var(--fdisplay); margin-bottom: 3px; font-size: 13.5px }
.gwk-note.crit { border-color: var(--crit-line); background: var(--crit-bg); color: var(--crit) }
.gwk-note:not(.warn):not(.crit) { border-color: var(--border); background: var(--surface-2); color: var(--muted) }
.gwk-note:not(.warn):not(.crit) b { color: var(--text) }

/* الأزرار */
.gwk-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex: none;
  border: 1px solid var(--border); background: var(--surface); color: var(--text); border-radius: 10px;
  padding: 8px 15px; cursor: pointer; font-family: var(--fdisplay); font-weight: 700; font-size: 12.5px; white-space: nowrap }
.gwk-btn:hover:not(:disabled) { border-color: var(--primary); color: var(--primary) }
.gwk-btn.p { background: var(--grad); color: #fff; border-color: transparent }
.gwk-btn.p:hover:not(:disabled) { color: #fff; filter: brightness(1.06) }
.gwk-btn.big { height: 42px; padding: 0 18px; font-size: 13.5px; border-radius: 12px }
.gwk-btn:disabled { opacity: .5; cursor: not-allowed }
.gwk-btn:focus-visible, .gwk-seg button:focus-visible, .gwk-in:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--primary) 45%, transparent); outline-offset: 2px }

.gwk-pill { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px;
  font-size: 11.5px; font-weight: 700; white-space: nowrap; border: 1px solid transparent; vertical-align: middle;
  font-family: var(--fbody) }
.gwk-pill.ok { background: var(--good-bg); color: var(--good); border-color: var(--good-line) }
.gwk-pill.wa { background: var(--warn-bg); color: var(--warn); border-color: var(--warn-line) }
.gwk-pill.un { background: var(--gwk-unk-bg); color: var(--gwk-unk); border-color: var(--gwk-unk-line) }
.gwk-pill.nu { background: var(--surface-2); color: var(--muted); border-color: var(--border) }
.gwk-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex: none }

.gwk-seg { display: inline-flex; border: 1px solid var(--border); border-radius: 999px; padding: 3px;
  background: var(--surface); gap: 2px; flex-wrap: wrap }
.gwk-seg button { border: 0; background: transparent; color: var(--muted); font-family: inherit; font-weight: 700;
  font-size: 12.5px; padding: 6px 13px; border-radius: 999px; cursor: pointer }
.gwk-seg button:hover:not(:disabled) { color: var(--primary) }
.gwk-seg button.on { background: var(--grad); color: #fff; cursor: default }
.gwk-seg button:disabled:not(.on) { opacity: .45; cursor: not-allowed }
.gwk-seg.sm button { font-size: 12px; padding: 5px 11px }

/* بطاقة البوّابة */
.gwk-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
  box-shadow: var(--shadow); overflow: hidden }
.gwk-card-h { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between;
  padding: 14px 18px; border-bottom: 1px solid var(--border-soft); background: var(--surface-2) }
.gwk-card-h h2 { font-family: var(--fdisplay); font-size: 16px; font-weight: 800; margin: 0;
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px }
.gwk-brand { direction: ltr; unicode-bidi: isolate; margin-inline-end: 2px }
.gwk-card-h p { margin: 2px 0 0; color: var(--muted); font-size: 12.5px; max-width: 70ch }

.gwk-body { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) }
.gwk-keys { padding: 6px 18px; min-width: 0 }
.gwk-row { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--border-soft); flex-wrap: wrap }
.gwk-row:last-child { border-bottom: 0 }
.gwk-row.editing { background: var(--warn-bg); margin: 0 -18px; padding: 12px 18px }
.gwk-kl { width: 190px; min-width: 0 }
.gwk-kl b { display: block; font-family: var(--fdisplay); font-size: 13.5px }
.gwk-kl span { display: block; color: var(--muted); font-size: 11.5px }
.gwk-kv { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 3px }
.gwk-kv small { color: var(--faint); font-size: 11.5px }
.gwk-kv small.warn { color: var(--warn); font-weight: 700 }
.gwk-mono { font-family: var(--gwk-mono); font-size: 12px; direction: ltr; unicode-bidi: isolate;
  display: inline-block; overflow-wrap: anywhere; max-width: 100% }
.gwk-acts { display: flex; gap: 8px; flex-wrap: wrap }
.gwk-rowerr { color: var(--crit); background: var(--crit-bg); border: 1px solid var(--crit-line); border-radius: 9px;
  padding: 6px 10px; font-size: 12.5px; font-weight: 700; line-height: 1.7; max-width: 100% }
.gwk-rowerr.pad { margin: 10px 18px 0 }

.gwk-in { width: 100%; box-sizing: border-box; border: 1.5px solid var(--warn-line); border-radius: 10px; padding: 8px 11px;
  background: var(--surface); color: var(--text); font-family: var(--gwk-mono); font-size: 12.5px }
.gwk-in::placeholder { font-family: var(--fbody); letter-spacing: 0; direction: rtl; text-align: right; color: var(--faint) }

/* الجاهزية */
.gwk-ready { border-inline-start: 1px solid var(--border-soft); padding: 16px 18px; background: var(--surface-2); min-width: 0 }
.gwk-ready h3 { margin: 0 0 10px; font-family: var(--fdisplay); font-size: 14px; font-weight: 800 }
.gwk-chk { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 12.5px }
.gwk-chk li { display: flex; gap: 8px; align-items: flex-start; flex-wrap: wrap }
.gwk-chk li::before { content: ""; width: 16px; height: 16px; border-radius: 50%; flex: none; margin-top: 2px }
.gwk-chk li > span { flex: 1; min-width: 0 }
.gwk-chk li.ok::before { background: var(--good) }
.gwk-chk li.no::before { background: var(--crit) }
.gwk-chk li.wa::before { background: var(--warn) }
.gwk-chk small { color: var(--muted); flex-basis: 100%; padding-inline-start: 24px; margin-top: -4px; line-height: 1.6 }
.gwk-ping { margin-top: 12px; font-size: 12.5px; font-weight: 700 }
.gwk-pr.ok { color: var(--good) }
.gwk-pr.no { color: var(--crit) }
.gwk-pr.nu { color: var(--muted); font-weight: 600 }
.gwk-ready-acts { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px }
.gwk-ready > small { display: block; margin-top: 6px; font-size: 11.5px }

/* عملية المالك التجريبية بريال */
.gwk-test { border-top: 1px solid var(--border-soft); padding: 16px 18px; display: flex; flex-direction: column; gap: 12px }
.gwk-test-h h3 { margin: 0 0 4px; font-family: var(--fdisplay); font-size: 14px; font-weight: 800 }
.gwk-test-h p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.85; max-width: 90ch }
.gwk-test-h p b { color: var(--warn) }
.gwk-tgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px }
.gwk-tnoaddr { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; font-size: 12.5px; font-weight: 700; cursor: pointer }
.gwk-tnoaddr input { margin-top: 3px }
.gwk-tnoaddr small { display: block; font-weight: 500; color: var(--muted) }
.gwk-tf { display: flex; flex-direction: column; gap: 4px; min-width: 0; font-size: 12px; color: var(--muted); font-weight: 700 }
.gwk-tin { border-color: var(--border); font-family: var(--fbody) }
.gwk-terr { color: var(--crit); font-size: 11.5px; font-weight: 700 }
.gwk-tlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column }
.gwk-trow { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;
  padding: 10px 0; border-top: 1px solid var(--border-soft) }
.gwk-tmeta { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; font-size: 12.5px }
a.gwk-btn { text-decoration: none }

@media (max-width: 900px) {
  .gwk-body { grid-template-columns: 1fr }
  .gwk-ready { border-inline-start: 0; border-top: 1px solid var(--border-soft) }
}
@media (max-width: 640px) {
  .gwk-kl { width: 100% }
  .gwk-who { white-space: normal }
  .gwk-envbar { align-items: flex-start }
  .gwk-card-h h2 { font-size: 15px }
}

/* النوافذ — داخل الصفحة لا confirm()/prompt() */
.gwk-ovl { position: fixed; inset: 0; background: rgba(23, 12, 36, .5); display: flex; align-items: center;
  justify-content: center; padding: 16px; z-index: 300 }
.gwk-dlg { width: 100%; max-width: 480px; background: var(--surface); color: var(--text); border: 1px solid var(--border);
  border-radius: 20px; padding: 22px; box-sizing: border-box; box-shadow: 0 24px 60px rgba(0, 0, 0, .35);
  max-height: calc(100vh - 32px); overflow: auto }
.gwk-dlg.hot { border: 2px solid var(--warn-line) }
.gwk-dlg h2 { font-family: var(--fdisplay); font-size: 18px; font-weight: 800; margin: 0 0 10px }
.gwk-dlg ul { margin: 0 0 14px; padding-inline-start: 18px; color: var(--muted); font-size: 13.5px; line-height: 1.95 }
.gwk-dlg ul b { color: var(--text) }
.gwk-dlg li::marker { color: var(--primary) }
.gwk-dlg-p { margin: 0 0 12px; color: var(--muted); font-size: 13.5px; line-height: 1.85 }
.gwk-dlg-dev { margin: -6px 0 10px; color: var(--warn); font-size: 12px; font-weight: 700 }
.gwk-code { font-size: 20px; letter-spacing: .4em; text-align: center; margin-bottom: 14px; border-color: var(--border) }
.gwk-code::placeholder { direction: ltr; text-align: center }
.gwk-dlg-err { margin-bottom: 14px }
.gwk-dlg .gwk-acts .p { flex: 1 }

/* هوية القسم المالي (وضع الهوية فقط) */
:root:not([data-sidebar-style="classic"]) .gwk-card{background:linear-gradient(180deg,var(--surface-2),var(--surface));border-radius:var(--r-lg);box-shadow:var(--shadow)}
:root:not([data-sidebar-style="classic"]) .gwk-who,:root:not([data-sidebar-style="classic"]) .gwk-envic{background:var(--glass)}
