/* Hijau Rumput design tokens - lawn-bowls green, jack gold. Light default, dark via [data-theme] or OS preference. */
:root {
  --plbm-primary: #167044;
  --plbm-primary-hover: #115a38;
  --plbm-primary-soft: #e3f2e9;
  --plbm-on-primary: #ffffff;
  --plbm-accent: #e3a82b;
  --plbm-accent-soft: #fbf0d3;
  --plbm-bg: #f6f8f4;
  --plbm-surface: #ffffff;
  --plbm-surface-2: #eef2ec;
  --plbm-border: #dde4da;
  --plbm-text: #17231b;
  --plbm-text-muted: #5b6b60;
  --plbm-good: #167044;
  --plbm-warn: #b7791f;
  --plbm-bad: #b3261e;
  --plbm-info: #1f6fa8;
  --plbm-good-soft: #e3f2e9;
  --plbm-warn-soft: #fbf0d3;
  --plbm-bad-soft: #fbe5e3;
  --plbm-info-soft: #e2eff8;
  --plbm-gold: #c98b12;
  --plbm-silver: #7d8a93;
  --plbm-bronze: #a5622f;
  --plbm-chart-1: #167044;
  --plbm-chart-2: #e3a82b;
  --plbm-chart-3: #1f6fa8;
  --plbm-chart-4: #b3541e;
  --plbm-chart-5: #6b3fa0;
  --plbm-radius: 12px;
  --plbm-radius-sm: 8px;
  --plbm-shadow: 0 1px 2px rgba(23, 35, 27, .06), 0 4px 14px rgba(23, 35, 27, .05);
  --plbm-font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --plbm-font-head: 'Plus Jakarta Sans', 'Inter', system-ui, sans-serif;
  --plbm-focus: 0 0 0 3px rgba(22, 112, 68, .35);
  /* Bootstrap bridge */
  --bs-primary: var(--plbm-primary);
  --bs-primary-rgb: 22, 112, 68;
  --bs-body-bg: var(--plbm-bg);
  --bs-body-color: var(--plbm-text);
  --bs-body-font-family: var(--plbm-font);
  --bs-border-color: var(--plbm-border);
  --bs-link-color: var(--plbm-primary);
  --bs-link-color-rgb: 22, 112, 68;
  --bs-link-hover-color: var(--plbm-primary-hover);
  --bs-link-hover-color-rgb: 17, 90, 56;
  --bs-secondary-color: var(--plbm-text-muted);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { color-scheme: dark; }
}
:root[data-theme="dark"] { color-scheme: dark; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --plbm-primary: #4cc585; --plbm-primary-hover: #6ad59c; --plbm-primary-soft: #16301f; --plbm-on-primary: #0b1a11;
    --plbm-accent: #f0bd4a; --plbm-accent-soft: #3a2f10;
    --plbm-bg: #0e1711; --plbm-surface: #151f18; --plbm-surface-2: #1b2820; --plbm-border: #2a3a2f;
    --plbm-text: #e7efe9; --plbm-text-muted: #9bb0a2;
    --plbm-good: #4cc585; --plbm-warn: #f0bd4a; --plbm-bad: #ff8a80; --plbm-info: #6bb6e8;
    --plbm-good-soft: #16301f; --plbm-warn-soft: #3a2f10; --plbm-bad-soft: #3d1c19; --plbm-info-soft: #14283a;
    --plbm-chart-1: #4cc585; --plbm-chart-2: #f0bd4a; --plbm-chart-3: #6bb6e8; --plbm-chart-4: #e8905c; --plbm-chart-5: #b794e8;
    --plbm-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 14px rgba(0, 0, 0, .3);
    --plbm-focus: 0 0 0 3px rgba(76, 197, 133, .45);
    --bs-body-bg: var(--plbm-bg); --bs-body-color: var(--plbm-text); --bs-border-color: var(--plbm-border);
    --bs-primary: var(--plbm-primary); --bs-primary-rgb: 76, 197, 133; --bs-secondary-color: var(--plbm-text-muted);
    --bs-link-color: var(--plbm-primary); --bs-link-color-rgb: 76, 197, 133; --bs-link-hover-color: var(--plbm-primary-hover); --bs-link-hover-color-rgb: 106, 213, 156;
  }
}
:root[data-theme="dark"] {
  --plbm-primary: #4cc585; --plbm-primary-hover: #6ad59c; --plbm-primary-soft: #16301f; --plbm-on-primary: #0b1a11;
  --plbm-accent: #f0bd4a; --plbm-accent-soft: #3a2f10;
  --plbm-bg: #0e1711; --plbm-surface: #151f18; --plbm-surface-2: #1b2820; --plbm-border: #2a3a2f;
  --plbm-text: #e7efe9; --plbm-text-muted: #9bb0a2;
  --plbm-good: #4cc585; --plbm-warn: #f0bd4a; --plbm-bad: #ff8a80; --plbm-info: #6bb6e8;
  --plbm-good-soft: #16301f; --plbm-warn-soft: #3a2f10; --plbm-bad-soft: #3d1c19; --plbm-info-soft: #14283a;
  --plbm-chart-1: #4cc585; --plbm-chart-2: #f0bd4a; --plbm-chart-3: #6bb6e8; --plbm-chart-4: #e8905c; --plbm-chart-5: #b794e8;
  --plbm-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 14px rgba(0, 0, 0, .3);
  --plbm-focus: 0 0 0 3px rgba(76, 197, 133, .45);
  --bs-body-bg: var(--plbm-bg); --bs-body-color: var(--plbm-text); --bs-border-color: var(--plbm-border);
  --bs-primary: var(--plbm-primary); --bs-primary-rgb: 76, 197, 133; --bs-secondary-color: var(--plbm-text-muted);
  --bs-link-color: var(--plbm-primary); --bs-link-color-rgb: 76, 197, 133; --bs-link-hover-color: var(--plbm-primary-hover); --bs-link-hover-color-rgb: 106, 213, 156;
}
