/* All tokens belong to the app root; never reset the WordPress theme. */
.tc-app {
  --tc-primary: #0f5132;
  --tc-primary-dark: #0a3d26;
  --tc-primary-soft: #e7f3ec;
  --tc-secondary: #1f7a5a;
  --tc-accent: #c9a227;
  --tc-background: #f7f8f6;
  --tc-surface: #fff;
  --tc-surface-alt: #f0f3f1;
  --tc-text: #1f2937;
  --tc-muted: #6b7280;
  --tc-border: #e3e7e5;
  --tc-control-border: #75827b;
  --tc-success: #2e7d32;
  --tc-warning: #d4a017;
  --tc-warning-ink: #765609;
  --tc-warning-soft: #fff5da;
  --tc-error: #b42318;
  --tc-error-soft: #fff0ed;
  --tc-info: #2563eb;
  --tc-info-soft: #eef3ff;
  --tc-on-primary: #fff;
  --tc-space-1: 4px;
  --tc-space-2: 8px;
  --tc-space-3: 12px;
  --tc-space-4: 16px;
  --tc-space-5: 20px;
  --tc-space-6: 24px;
  --tc-space-8: 32px;
  --tc-space-10: 40px;
  --tc-space-12: 48px;
  --tc-radius-1: 8px;
  --tc-radius-2: 12px;
  --tc-radius-3: 18px;
  --tc-radius-4: 24px;
  --tc-radius-pill: 999px;
  --tc-shadow: 0 3px 16px rgb(17 43 28 / 4%);
  --tc-shadow-raised: 0 8px 32px rgb(17 43 28 / 8%);
  --tc-font: Inter, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --tc-font-arabic: 'Noto Naskh Arabic', 'Amiri', 'Traditional Arabic', serif;
  --tc-duration: 180ms;
  --tc-focus: var(--tc-primary);
  color-scheme: light;
  font-family: var(--tc-font);
  font-size: 16px;
  line-height: 1.6;
  color: var(--tc-text);
  background: var(--tc-background);
  overflow-wrap: anywhere;
}
.tc-app[data-theme='dark'] {
  --tc-background: #111714;
  --tc-surface: #18201c;
  --tc-surface-alt: #202923;
  --tc-text: #f3f5f4;
  --tc-muted: #a8b0ab;
  --tc-border: #303a34;
  --tc-control-border: #83968a;
  --tc-primary: #4fa77b;
  --tc-primary-dark: #67bd92;
  --tc-primary-soft: #203d2c;
  --tc-secondary: #83c9a9;
  --tc-accent: #d2b75a;
  --tc-on-primary: #111714;
  --tc-success: #90ce97;
  --tc-warning-ink: #f0d078;
  --tc-warning-soft: #342d19;
  --tc-error: #ffafa5;
  --tc-error-soft: #37221f;
  --tc-info: #9bbcff;
  --tc-info-soft: #202b42;
  --tc-shadow: 0 3px 16px rgb(0 0 0 / 10%);
  --tc-shadow-raised: 0 8px 32px rgb(0 0 0 / 20%);
  color-scheme: dark;
}
.tc-app *, .tc-app *::before, .tc-app *::after { box-sizing: border-box; }
.tc-app [hidden] { display: none !important; }
.tc-app h1, .tc-app h2, .tc-app h3 { font-family: var(--tc-font); color: var(--tc-text); letter-spacing: -.025em; line-height: 1.25; margin: 0; font-weight: 650; }
.tc-app h1 { font-size: clamp(28px, 4vw, 32px); }
.tc-app h2 { font-size: clamp(22px, 3vw, 26px); }
.tc-app h3 { font-size: clamp(18px, 2vw, 21px); }
.tc-app p { margin: var(--tc-space-2) 0 0; }
.tc-app a { color: var(--tc-primary); text-decoration: none; }
.tc-app button, .tc-app input, .tc-app select { font: inherit; }
.tc-app button { cursor: pointer; }
.tc-app :where(a, button, input, select, [tabindex]):focus-visible { outline: 3px solid var(--tc-focus); outline-offset: 4px; }
.tc-app button:disabled { cursor: not-allowed; }
.tc-app .tc-icon { width: 22px; height: 22px; display: block; flex: 0 0 auto; }
@media (prefers-reduced-motion: reduce) { .tc-app *, .tc-app *::before, .tc-app *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
