/* ==========================================================================
   rachadej-ui — theme-saturday.css
   ธีม "วันเสาร์ (มงคล)" คัดลอกจากโปรเจกต์ Rachadej Platform (www/assets/css/site.css + aeya-tokens.css)
   พื้นมืดกรมท่า #0f172a · เน้นม่วง #c084fc + ฟ้า #38bdf8 · ปุ่มหลักไล่ฟ้า→ม่วง

   โหลดต่อจาก components.css (และ mycalendar.css ถ้าใช้) — ไฟล์นี้ไม่มีผลถ้าไม่ตั้ง data-theme="saturday"
   ตัวแปรสีอยู่ใน tokens.css; ไฟล์นี้แก้เฉพาะจุดที่คอมโพเนนต์ตั้งค่าสีขาวตายตัวไว้
   ข้อยกเว้นที่คงพื้นขาวโดยตั้งใจ: กระดาษ A4 (.rui-paper-*), การ์ดแคปภาพ (.rui-capture-card), โลโก้ตราโรงพยาบาล
   ========================================================================== */

:root[data-theme="saturday"] { color-scheme: dark; }
:root[data-theme="saturday"] body {
  background-color: var(--rui-canvas);
  background-image:
    radial-gradient(60% 45% at 0% 0%, rgba(126, 34, 206, .14), transparent 70%),
    radial-gradient(55% 40% at 100% 100%, rgba(2, 132, 199, .12), transparent 70%);
  background-attachment: fixed;
}

/* ---------- การ์ด / พื้นผิว ---------- */
:root[data-theme="saturday"] .rui-card {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft));
  border-color: var(--rui-line-subtle, rgba(255, 255, 255, .08));
}
:root[data-theme="saturday"] .rui-card--luxury,
:root[data-theme="saturday"] .rui-numbered-card {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft));
  border-color: var(--rui-line-subtle, rgba(255, 255, 255, .08));
  box-shadow: 0 4px 20px -4px rgba(0, 0, 0, .4);
}
:root[data-theme="saturday"] .rui-card--luxury:hover,
:root[data-theme="saturday"] .rui-numbered-card:hover {
  border-color: rgba(192, 132, 252, .35);
  box-shadow: 0 10px 30px -5px rgba(126, 34, 206, .25);
}
:root[data-theme="saturday"] .rui-card-icon,
:root[data-theme="saturday"] .rui-numbered-box {
  background: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 16%, var(--rui-surface));
  border-color: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 28%, transparent);
}
:root[data-theme="saturday"] .rui-card-badge {
  color: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 80%, #ffffff);
  background: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 18%, var(--rui-surface));
  border-color: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 30%, transparent);
}
:root[data-theme="saturday"] .rui-card-links {
  border-top-color: rgba(255, 255, 255, .08);
}
:root[data-theme="saturday"] .rui-card-link-item {
  color: var(--rui-text);
}
:root[data-theme="saturday"] .rui-card-link-item:hover {
  background: rgba(255, 255, 255, .06);
  color: #ffffff;
}
:root[data-theme="saturday"] .rui-card--premium {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft));
  border-color: rgba(255, 255, 255, .1);
}
:root[data-theme="saturday"] .rui-card--premium:hover { border-color: rgba(192, 132, 252, .4); }
:root[data-theme="saturday"] .rui-card-foot { background: rgba(255, 255, 255, .03); border-top-color: rgba(255, 255, 255, .08); }
:root[data-theme="saturday"] .rui-card-watermark { opacity: .16; }
:root[data-theme="saturday"] .rui-legend { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .1); box-shadow: none; }
:root[data-theme="saturday"] .rui-pagehead--card {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft));
  border-color: rgba(192, 132, 252, .25);
}
:root[data-theme="saturday"] .rui-pagehead-stats {
  background: transparent;
  border-color: transparent;
}
:root[data-theme="saturday"] .rui-pagehead-stat {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}
:root[data-theme="saturday"] button.rui-pagehead-stat:hover {
  background: rgba(255, 255, 255, .06);
  border-color: transparent;
}
:root[data-theme="saturday"] button.rui-pagehead-stat[aria-pressed="true"] {
  background: rgba(255, 255, 255, .1);
  border-color: transparent;
  box-shadow: none;
}
:root[data-theme="saturday"] .rui-kpi-pill { background: color-mix(in srgb, var(--rui-c, var(--rui-primary)) 18%, var(--rui-surface)); }
:root[data-theme="saturday"] .rui-sidebar,
:root[data-theme="saturday"] .rui-tablewrap { background: var(--rui-surface); }

/* ---------- ปุ่ม ---------- */
:root[data-theme="saturday"] .rui-btn {
  background: linear-gradient(180deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .04));
  border-color: rgba(255, 255, 255, .16); color: var(--rui-text-strong);
}
:root[data-theme="saturday"] .rui-btn:hover { background: var(--rui-primary-soft); border-color: var(--rui-primary-line); color: #ffffff; }
:root[data-theme="saturday"] .rui-btn--primary {
  background: linear-gradient(135deg, #0284c7 0%, #7e22ce 100%); border-color: transparent; color: #ffffff;
  box-shadow: 0 8px 20px -10px rgba(126, 34, 206, .7);
}
:root[data-theme="saturday"] .rui-btn--primary:hover { background: linear-gradient(135deg, #0284c7 0%, #7e22ce 100%); color: #ffffff; filter: brightness(1.12); }
:root[data-theme="saturday"] .rui-btn--quiet { background: transparent; border-color: transparent; color: var(--rui-muted); box-shadow: none; }
:root[data-theme="saturday"] .rui-btn--quiet:hover { background: rgba(255, 255, 255, .07); color: var(--rui-text-strong); }
:root[data-theme="saturday"] .rui-btn--danger { background: var(--rui-danger); color: #1b0a0a; }
:root[data-theme="saturday"] .rui-btn--danger:hover { background: var(--rui-danger); border-color: transparent; color: #1b0a0a; filter: brightness(1.08); }
:root[data-theme="saturday"] .rui-btn--success { background: var(--rui-success); color: #04231a; }
:root[data-theme="saturday"] .rui-btn--success:hover { background: var(--rui-success); border-color: transparent; color: #04231a; filter: brightness(1.08); }
:root[data-theme="saturday"] .rui-iconbtn:hover { color: var(--rui-primary-strong); }
:root[data-theme="saturday"] .rui-iconbtn--danger:hover { color: var(--rui-danger); }
:root[data-theme="saturday"] .rui-stepper .rui-iconbtn:hover { background: var(--rui-primary-soft); border-color: var(--rui-primary-line); }
:root[data-theme="saturday"] .rui-split:not(:has(.rui-btn--primary)) { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .16); }
:root[data-theme="saturday"] .rui-split:has(.rui-btn--primary) { background: linear-gradient(135deg, #0284c7 0%, #7e22ce 100%); }

/* ---------- Chip / Segmented / Tabs ---------- */
:root[data-theme="saturday"] .rui-chip {
  background: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .03));
  border-color: rgba(255, 255, 255, .14); color: var(--rui-text);
}
:root[data-theme="saturday"] .rui-chip:hover { background: var(--rui-primary-soft); border-color: var(--rui-primary-line); color: var(--rui-primary-strong); }
:root[data-theme="saturday"] .rui-chip[aria-pressed="true"],
:root[data-theme="saturday"] .rui-chip--filter.is-active,
:root[data-theme="saturday"] .rui-chip--filter[aria-pressed="true"] {
  background: linear-gradient(135deg, #0284c7, #7e22ce); color: #ffffff; border-color: transparent;
}
:root[data-theme="saturday"] .rui-segmented {
  background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .12); box-shadow: inset 0 1px 2px rgba(0, 0, 0, .3);
}
:root[data-theme="saturday"] .rui-segmented > button[aria-pressed="true"] {
  background: linear-gradient(180deg, rgba(192, 132, 252, .28), rgba(192, 132, 252, .14));
  color: var(--rui-primary-strong);
  box-shadow: 0 0 0 1px rgba(192, 132, 252, .4), 0 6px 14px -8px rgba(126, 34, 206, .8);
}
:root[data-theme="saturday"] .rui-tab-count { background: rgba(255, 255, 255, .06); }

/* ---------- ฟอร์ม ---------- */
:root[data-theme="saturday"] .rui-input,
:root[data-theme="saturday"] .rui-select,
:root[data-theme="saturday"] .rui-textarea { background-color: rgba(15, 23, 42, .7); color: var(--rui-text-strong); border-color: rgba(255, 255, 255, .16); }
:root[data-theme="saturday"] .rui-input::placeholder,
:root[data-theme="saturday"] .rui-textarea::placeholder { color: var(--rui-muted); }
:root[data-theme="saturday"] .rui-select:not([multiple]):not(.select2-hidden-accessible) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='2' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5' /%3E%3C/svg%3E");
}
@supports (appearance: base-select) {
  :root[data-theme="saturday"] .rui-select:not([multiple]):not(.select2-hidden-accessible)::picker(select) {
    background: linear-gradient(140deg, rgba(30, 41, 59, .97), rgba(15, 23, 42, .94));
    border-color: rgba(255, 255, 255, .14);
    box-shadow: 0 24px 48px -16px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .08);
  }
}

/* ---------- Overlay / กระจก / แจ้งเตือน ---------- */
:root[data-theme="saturday"] .rui-toast,
:root[data-theme="saturday"] .rui-modal--glass, :root[data-theme="saturday"] .rui-toast--glass, :root[data-theme="saturday"] .rui-dropdown--glass,
:root[data-theme="saturday"] .rui-loader-badge {
  background: linear-gradient(140deg, rgba(30, 41, 59, .94), rgba(15, 23, 42, .86));
  border-color: rgba(255, 255, 255, .14); color: var(--rui-text-strong);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 24px 56px -16px rgba(0, 0, 0, .6);
}
:root[data-theme="saturday"] .rui-loader { background: color-mix(in srgb, var(--rui-canvas) 70%, transparent); }
:root[data-theme="saturday"] .rui-loader-seal { background: #ffffff; }
:root[data-theme="saturday"] .rui-glass {
  --glass-bg: rgba(30, 41, 59, .6); --glass-bg-2: rgba(30, 41, 59, .3);
  --glass-line: rgba(255, 255, 255, .16); --glass-text: #f8fafc;
}
:root[data-theme="saturday"] .rui-alert {
  background: linear-gradient(135deg, color-mix(in srgb, var(--_c) 16%, var(--rui-surface)), color-mix(in srgb, var(--_c) 6%, var(--rui-surface)));
  border-color: color-mix(in srgb, var(--_c) 32%, transparent);
}
:root[data-theme="saturday"] .rui-alert > svg { background: color-mix(in srgb, var(--_c) 22%, var(--rui-surface)); }
:root[data-theme="saturday"] .rui-callout {
  background: linear-gradient(135deg, color-mix(in srgb, var(--rui-c, var(--rui-primary)) 16%, var(--rui-surface)), var(--rui-surface));
}

/* ---------- Tracker / Steps ---------- */
:root[data-theme="saturday"] .rui-tracker-node { background: linear-gradient(180deg, var(--rui-surface-soft), var(--rui-surface)); border-color: rgba(255, 255, 255, .14); }
:root[data-theme="saturday"] .rui-tracker--ring .rui-tracker-node { background: var(--rui-surface); }
:root[data-theme="saturday"] .rui-tracker-step[data-state="done"] .rui-tracker-node { background: var(--rui-success-soft); }
:root[data-theme="saturday"] .rui-tracker-step[data-state="current"] .rui-tracker-node { background: linear-gradient(135deg, #0284c7, #7e22ce); }

/* ---------- ปฏิทิน MyCalendar ---------- */
:root[data-theme="saturday"] .mycal {
  background: linear-gradient(140deg, rgba(30, 41, 59, .97), rgba(15, 23, 42, .94));
  border-color: rgba(255, 255, 255, .14); color: var(--rui-text);
}
:root[data-theme="saturday"] .mycal-month, :root[data-theme="saturday"] .mycal-year { background: rgba(15, 23, 42, .8); color: var(--rui-text-strong); }
:root[data-theme="saturday"] .mycal-cell.selected { background: linear-gradient(135deg, #0284c7, #7e22ce) !important; }
:root[data-theme="saturday"] input.thai-date {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.8' stroke='%2394a3b8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");
}

/* ---------- Hero / หัวเว็บ ---------- */
:root[data-theme="saturday"] .rui-hero { box-shadow: 0 24px 60px -24px rgba(0, 0, 0, .7); }

/* ---------- หน้า catalog (showcase.css) ---------- */
:root[data-theme="saturday"] .sc-item { background: var(--rui-surface); border-color: rgba(255, 255, 255, .1); }
:root[data-theme="saturday"] .sc-item-head {
  background: linear-gradient(100deg, color-mix(in srgb, var(--rui-c, var(--rui-primary)) 16%, var(--rui-surface)) 0%, var(--rui-surface) 70%);
  border-bottom-color: rgba(255, 255, 255, .1);
}
:root[data-theme="saturday"] .sc-cls button { background: rgba(255, 255, 255, .05); color: var(--rui-muted); border-color: rgba(255, 255, 255, .12); }
:root[data-theme="saturday"] .sc-note { background: rgba(255, 255, 255, .03); color: var(--rui-muted); }
:root[data-theme="saturday"] .sc-note strong { color: var(--rui-text-strong); }
:root[data-theme="saturday"] .sc-theme[aria-pressed="true"] {
  background: linear-gradient(135deg, #0284c7, #7e22ce);
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 4px 12px -4px rgba(126, 34, 206, .7);
}
:root[data-theme="saturday"] .sc-theme:not([aria-pressed="true"]) {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .16);
  color: var(--rui-text);
}
:root[data-theme="saturday"] .sc-theme:not([aria-pressed="true"]):hover {
  background: var(--rui-primary-soft);
  border-color: var(--rui-primary-line);
  color: var(--rui-primary-strong);
}
:root[data-theme="saturday"] .rui-code, :root[data-theme="saturday"] code.rui-code { background: rgba(255, 255, 255, .08); color: #e9d5ff; border-color: rgba(255, 255, 255, .12); }

/* ---------- Stat glass / DataTable ---------- */
:root[data-theme="saturday"] .rui-stat--glass {
  background: linear-gradient(140deg, rgba(30, 41, 59, .7), rgba(15, 23, 42, .5));
  border-color: rgba(255, 255, 255, .14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 18px 40px -18px rgba(0, 0, 0, .6);
}
:root[data-theme="saturday"] .rui-stat--glass .rui-stat-label,
:root[data-theme="saturday"] .rui-stat--glass .rui-stat-sub { color: var(--rui-muted); }
:root[data-theme="saturday"] .rui-datatable { --rui-dt-grid: rgba(255, 255, 255, .08); --rui-dt-focus: #38bdf8; }
:root[data-theme="saturday"] .rui-dt-toolbar { background: linear-gradient(135deg, var(--rui-surface-soft), var(--rui-surface)); border-color: rgba(255, 255, 255, .1); }
:root[data-theme="saturday"] .rui-datatable .rui-table thead th { color: var(--rui-text-strong); }
:root[data-theme="saturday"] .rui-datatable .rui-table tbody tr:hover > th,
:root[data-theme="saturday"] .rui-datatable .rui-table tbody tr:hover > td { background: rgba(255, 255, 255, .05); }
:root[data-theme="saturday"] .rui-dt-th-violet  { background: rgba(168, 85, 247, .2) !important;  color: #e9d5ff !important; }
:root[data-theme="saturday"] .rui-dt-th-sky     { background: rgba(56, 189, 248, .18) !important; color: #bae6fd !important; }
:root[data-theme="saturday"] .rui-dt-th-emerald { background: rgba(52, 211, 153, .18) !important; color: #a7f3d0 !important; }
:root[data-theme="saturday"] .rui-dt-th-indigo  { background: rgba(129, 140, 248, .2) !important; color: #c7d2fe !important; }
:root[data-theme="saturday"] .rui-dt-cell-violet { background: rgba(168, 85, 247, .08); color: #e9d5ff; }
:root[data-theme="saturday"] .rui-dt-cell-indigo { background: rgba(129, 140, 248, .08); color: #c7d2fe; }

/* ---------- บล็อก UI Pele รุ่นเก่า (.sp-* / .rui-kpi-card ฯลฯ) ให้เป็นโทนมืด ---------- */
:root[data-theme="saturday"] .sp-stat-card,
:root[data-theme="saturday"] .rui-kpi-card,
:root[data-theme="saturday"] .sp-filter-box,
:root[data-theme="saturday"] .rui-bottom-chart-card,
:root[data-theme="saturday"] .sp-capture-toolbar {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft)) !important;
  border-color: rgba(255, 255, 255, .1) !important; color: var(--rui-text);
}
:root[data-theme="saturday"] .sp-stat-label,
:root[data-theme="saturday"] .rui-filter-label { color: var(--rui-muted); }
:root[data-theme="saturday"] .rui-bottom-chart-header { color: var(--rui-text-strong); }
:root[data-theme="saturday"] .rui-tabs-underline,
:root[data-theme="saturday"] .nav-tabs-custom { border-bottom-color: rgba(255, 255, 255, .12); }
:root[data-theme="saturday"] .rui-tabs-underline .rui-tab-item,
:root[data-theme="saturday"] .nav-tabs-custom .nav-link { color: var(--rui-muted); }
:root[data-theme="saturday"] .rui-tabs-underline .rui-tab-item:hover,
:root[data-theme="saturday"] .nav-tabs-custom .nav-link:hover,
:root[data-theme="saturday"] .rui-tabs-underline .rui-tab-item.active,
:root[data-theme="saturday"] .nav-tabs-custom .nav-link.active { color: var(--rui-primary-strong); }
:root[data-theme="saturday"] .nav-tabs-custom .nav-link.active,
:root[data-theme="saturday"] .rui-tabs-underline .rui-tab-item.active { border-bottom-color: var(--rui-primary); }
:root[data-theme="saturday"] .badge-sp     { background-color: rgba(56, 189, 248, .16);  color: #7dd3fc; }
:root[data-theme="saturday"] .badge-year   { background-color: rgba(52, 211, 153, .16);  color: #6ee7b7; }
:root[data-theme="saturday"] .badge-dept   { background-color: rgba(251, 191, 36, .16);  color: #fcd34d; }
:root[data-theme="saturday"] .badge-type   { background-color: rgba(255, 255, 255, .08); color: #cbd5e1; }
:root[data-theme="saturday"] .rui-table-progress { background-color: rgba(255, 255, 255, .12); }
/* การ์ดแคปภาพ (.rui-capture-card) และกระดาษ A4 (.rui-paper-*) คงเป็นพื้นขาวโดยตั้งใจ: ใช้ส่งออกเป็นรูป/พิมพ์ */

/* ---------- ปุ่มที่ตั้งพื้นขาวเป็น inline style ในตัวอย่าง (แบนเนอร์ / การ์ดรายการ) ---------- */
:root[data-theme="saturday"] .rui-banner .rui-btn,
:root[data-theme="saturday"] .rui-card .rui-btn[style*="background:#fff"] { color: #0f172a; }

/* ---------- scrollbar ---------- */
:root[data-theme="saturday"] { scrollbar-color: #334155 #0f172a; }
:root[data-theme="saturday"] ::selection { background: rgba(168, 85, 247, .45); color: #ffffff; }

/* ---------- สีประจำหมวดบนพื้นมืด: ใช้เฉด 400 ให้ตัวอักษร/วงแหวนอ่านชัด (คอนทราสต์ ≥ 4.5:1) ---------- */
:root[data-theme="saturday"] .rui-c-blue    { --rui-c: #60a5fa; }
:root[data-theme="saturday"] .rui-c-indigo  { --rui-c: #818cf8; }
:root[data-theme="saturday"] .rui-c-purple  { --rui-c: #c084fc; }
:root[data-theme="saturday"] .rui-c-emerald { --rui-c: #34d399; }
:root[data-theme="saturday"] .rui-c-teal    { --rui-c: #2dd4bf; }
:root[data-theme="saturday"] .rui-c-amber   { --rui-c: #fbbf24; }
:root[data-theme="saturday"] .rui-c-orange  { --rui-c: #fb923c; }
:root[data-theme="saturday"] .rui-c-rose    { --rui-c: #fb7185; }
:root[data-theme="saturday"] .rui-c-cyan    { --rui-c: #22d3ee; }
:root[data-theme="saturday"] .rui-c-slate   { --rui-c: #94a3b8; }
/* พื้นทึบสีอ่อน → ตัวอักษรบนพื้นนั้นต้องเป็นสีเข้ม */
:root[data-theme="saturday"] .rui-pin,
:root[data-theme="saturday"] .rui-cat .rui-badge:not(.rui-badge--tag),
:root[data-theme="saturday"] .rui-tracker-badge,
:root[data-theme="saturday"] .rui-step[data-done="true"] .rui-step-dot { color: #0b1224; }
:root[data-theme="saturday"] .rui-tracker-badge[data-zero] { color: var(--rui-text); background: rgba(255, 255, 255, .14); }
:root[data-theme="saturday"] .rui-chip-count { background: rgba(255, 255, 255, .08); color: var(--rui-text); }
:root[data-theme="saturday"] .rui-chip--filter[aria-pressed="true"] .rui-chip-count { background: rgba(255, 255, 255, .22); color: #ffffff; }
:root[data-theme="saturday"] .rui-step[aria-current="step"] .rui-step-dot { color: #ffffff; }
:root[data-theme="saturday"] .rui-cat[aria-current="true"] .rui-badge:not(.rui-badge--tag) { color: #ffffff; }
:root[data-theme="saturday"] .rui-section-count { background: rgba(255, 255, 255, .06); }

/* ---------- ตัวกรอง / แถบเครื่องมือของ UI Pele (ชื่อคลาสฝั่ง rui-*) ---------- */
:root[data-theme="saturday"] .rui-filter-box,
:root[data-theme="saturday"] .rui-capture-toolbar {
  background: linear-gradient(180deg, var(--rui-surface), var(--rui-surface-soft)) !important;
  border-color: rgba(255, 255, 255, .1) !important; color: var(--rui-text);
}
:root[data-theme="saturday"] [style*="color:#1e3c72"] { color: #93c5fd !important; }
:root[data-theme="saturday"] :is(.rui-capture-card, .rui-paper-a4) [style*="color:#1e3c72"] { color: #1e3c72 !important; }
:root[data-theme="saturday"] .rui-card .rui-btn[style*="background:#fff"] { background: rgba(255, 255, 255, .1) !important; color: var(--rui-text-strong); }

/* ---------- สีตัวอักษร inline ในตัวอย่างเก่า (style="color:#...") ให้อ่านออกบนพื้นมืด ---------- */
:root[data-theme="saturday"] [style*="color:#475569"],
:root[data-theme="saturday"] [style*="color:#334155"],
:root[data-theme="saturday"] [style*="color:#1e293b"],
:root[data-theme="saturday"] [style*="color:#0f172a"] { color: var(--rui-text) !important; }
:root[data-theme="saturday"] [style*="color:#64748b"],
:root[data-theme="saturday"] [style*="color:#94a3b8"] { color: var(--rui-muted) !important; }
:root[data-theme="saturday"] [style*="color:#16a34a"] { color: #4ade80 !important; }
:root[data-theme="saturday"] [style*="color:#dc2626"] { color: #f87171 !important; }
/* การ์ดแคปภาพและกระดาษ A4 ต้องคงสีเดิม (ใช้ส่งออก/พิมพ์) */
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#475569"] { color: #475569 !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#334155"] { color: #334155 !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#1e293b"] { color: #1e293b !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#0f172a"] { color: #0f172a !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#64748b"] { color: #64748b !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#94a3b8"] { color: #94a3b8 !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#16a34a"] { color: #16a34a !important; }
:root[data-theme="saturday"] :is(.rui-capture-card,.rui-paper-a4) [style*="color:#dc2626"] { color: #dc2626 !important; }

/* พื้นอ่อน inline ในตัวอย่างเก่า (เช่น กราฟบาร์ล่าง) → พื้นโปร่งบนสีมืด */
:root[data-theme="saturday"] [style*="background:#f8fafc"],
:root[data-theme="saturday"] [style*="background: #f8fafc"],
:root[data-theme="saturday"] [style*="background:#f1f5f9"],
:root[data-theme="saturday"] [style*="background-color:#f8fafc"] { background: rgba(255, 255, 255, .05) !important; }
:root[data-theme="saturday"] :is(.rui-capture-card, .rui-paper-a4) [style*="background:#f8fafc"] { background: #f8fafc !important; }

/* ---------- คอนทราสต์รอบสอง (ตรวจด้วยสคริปต์วัดสี ≥ 4.5:1) ---------- */
/* พื้นสีหลักที่มีตัวอักษรขาว: ใช้ม่วงเข้มกว่าเดิม (#7e22ce) */
:root[data-theme="saturday"] .rui-cat[aria-current="true"] .rui-badge:not(.rui-badge--tag),
:root[data-theme="saturday"] .rui-page[aria-current="page"],
:root[data-theme="saturday"] .rui-step[aria-current="step"] .rui-step-dot { background: #7e22ce; border-color: #7e22ce; color: #ffffff; }
:root[data-theme="saturday"] a:not([class]) { color: var(--rui-primary-strong); }
:root[data-theme="saturday"] .rui-cat .rui-badge--tag[style*="--rui-primary)"] { color: var(--rui-primary-strong) !important; }
:root[data-theme="saturday"] .sp-stat-number.text-primary, :root[data-theme="saturday"] .rui-kpi--primary .sp-stat-number { color: #60a5fa !important; }
:root[data-theme="saturday"] .sp-stat-number.text-info,    :root[data-theme="saturday"] .rui-kpi--info .sp-stat-number    { color: #38bdf8 !important; }
:root[data-theme="saturday"] .sp-stat-number.text-success, :root[data-theme="saturday"] .rui-kpi--success .sp-stat-number { color: #4ade80 !important; }
:root[data-theme="saturday"] .sp-stat-number.text-warning, :root[data-theme="saturday"] .rui-kpi--warning .sp-stat-number { color: #fbbf24 !important; }
:root[data-theme="saturday"] [style*="color:#2563eb"], :root[data-theme="saturday"] [style*="color:#0d6efd"] { color: #60a5fa !important; }
:root[data-theme="saturday"] :is(.rui-capture-card, .rui-paper-a4) [style*="color:#2563eb"] { color: #2563eb !important; }

/* ---------- รอบตรวจภาพจริง ---------- */
/* Skeleton: บนพื้นมืดต้องสว่างกว่าพื้นจึงจะเห็น */
:root[data-theme="saturday"] .rui-skel {
  background: linear-gradient(90deg, rgba(255, 255, 255, .07) 25%, rgba(255, 255, 255, .16) 50%, rgba(255, 255, 255, .07) 75%);
  background-size: 200% 100%;
}
/* ปุ่มขาวบนหัว UI Pele (พื้นน้ำเงินเข้ม): คงตัวอักษรเข้มให้อ่านออก */
:root[data-theme="saturday"] .rui-pele-header-actions .rui-btn[style*="background:#ffffff"],
:root[data-theme="saturday"] .rui-pele-header-actions .rui-btn[style*="background: #ffffff"] { color: #1e293b !important; }
:root[data-theme="saturday"] .rui-select[multiple] option:checked { background: #7e22ce linear-gradient(0deg, #7e22ce, #7e22ce); color: #ffffff; }

/* ---------- Drawer / Sheet / Command palette ---------- */
:root[data-theme="saturday"] .rui-drawer-profile {
  background: linear-gradient(135deg, rgba(168, 85, 247, .16), rgba(56, 189, 248, .1));
  border-color: rgba(192, 132, 252, .3);
}
:root[data-theme="saturday"] .rui-drawer-badge { background: rgba(248, 113, 113, .16); color: #fca5a5; border-color: rgba(248, 113, 113, .35); }
:root[data-theme="saturday"] .rui-drawer-close-bar { border-color: rgba(255, 255, 255, .18); }
:root[data-theme="saturday"] .rui-drawer-close-bar:hover { background: var(--rui-surface-soft); color: var(--rui-text-strong); border-color: rgba(192, 132, 252, .4); }
:root[data-theme="saturday"] .rui-palette { background: linear-gradient(140deg, rgba(30, 41, 59, .97), rgba(15, 23, 42, .95)); border: 1px solid rgba(255, 255, 255, .14); }
:root[data-theme="saturday"] .rui-palette input { background: rgba(15, 23, 42, .7); color: var(--rui-text-strong); border-bottom-color: rgba(255, 255, 255, .12); }
:root[data-theme="saturday"] .rui-palette input::placeholder { color: var(--rui-muted); }
:root[data-theme="saturday"] .rui-sheet-grip { background: rgba(192, 132, 252, .38); }
:root[data-theme="saturday"] #lb1 .rui-aspect {
  background: linear-gradient(135deg, var(--rui-surface), var(--rui-surface-soft)) !important;
  color: var(--rui-text) !important;
  border-color: rgba(255, 255, 255, .16);
}

/* ---------- Hover & Interactive Fixes ---------- */
:root[data-theme="saturday"] .rui-user-menu-item--danger:hover {
  background: rgba(248, 113, 113, .16);
}
:root[data-theme="saturday"] .rui-user-menu-item--danger:hover .rui-user-menu-item-title {
  color: #fca5a5;
}
:root[data-theme="saturday"] .rui-dropdown-head {
  background: linear-gradient(135deg, var(--rui-surface-soft) 0%, rgba(168, 85, 247, .12) 100%);
}
:root[data-theme="saturday"] .rui-dropdown-foot-link {
  color: var(--rui-primary-strong);
}
:root[data-theme="saturday"] .rui-page:hover:not([aria-current="page"]) {
  border-color: var(--rui-primary-line);
  background: var(--rui-primary-soft);
  color: var(--rui-primary-strong);
}

/* ---------- 16.8 Chart Engine Dark Theme (Saturday) ---------- */
:root[data-theme="saturday"] .rui-chart-grid-line {
  stroke: rgba(255, 255, 255, 0.08);
}
:root[data-theme="saturday"] .rui-chart-axis-text {
  fill: var(--rui-muted);
}
:root[data-theme="saturday"] .rui-chart-val-text,
:root[data-theme="saturday"] .rui-chart-center-val,
:root[data-theme="saturday"] .rui-chart-gauge-val {
  fill: #ffffff;
}
:root[data-theme="saturday"] .rui-chart-hbar-track,
:root[data-theme="saturday"] .rui-chart-gauge-bg {
  background: rgba(255, 255, 255, 0.1);
  stroke: rgba(255, 255, 255, 0.1);
}
:root[data-theme="saturday"] .rui-chart-hbar-row:hover {
  background: rgba(255, 255, 255, 0.06);
}
:root[data-theme="saturday"] .rui-chart-hbar-target {
  background: #ffffff;
  box-shadow: 0 0 4px rgba(255, 255, 255, 0.4);
}
:root[data-theme="saturday"] .rui-chart-legend-btn {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.16);
  color: var(--rui-text-strong);
}
:root[data-theme="saturday"] .rui-chart-tooltip {
  background: rgba(15, 23, 42, 0.96);
  border-color: rgba(168, 85, 247, 0.28);
  box-shadow: 0 16px 36px -4px rgba(0, 0, 0, 0.6), 0 0 20px rgba(168, 85, 247, 0.12);
}
:root[data-theme="saturday"] .rui-chart-ring-bg {
  stroke: rgba(255, 255, 255, 0.1);
}
:root[data-theme="saturday"] .rui-chart-ring-val {
  fill: #ffffff;
}
:root[data-theme="saturday"] .rui-chart-state-text {
  color: var(--rui-muted);
}
:root[data-theme="saturday"] .rui-bsc-summary {
  background: var(--rui-surface);
  border-color: rgba(255, 255, 255, 0.12);
}
:root[data-theme="saturday"] .rui-bsc-card,
:root[data-theme="saturday"] .rui-kpi-subcard {
  background: var(--rui-surface);
  border-color: rgba(255, 255, 255, 0.12);
}
:root[data-theme="saturday"] .rui-bsc-card-foot {
  border-top-color: rgba(255, 255, 255, 0.08);
}
:root[data-theme="saturday"] .rui-bsc-progress {
  background: rgba(255, 255, 255, 0.12);
}
:root[data-theme="saturday"] .rui-kpi-subcard-criteria {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.06);
}
:root[data-theme="saturday"] .rui-bsc-summary-pill {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.1);
  color: var(--rui-text);
}
