:root {
    --pi-primary: #118548;
    --pi-primary-hover: #0d6f3b;
    --pi-primary-active: #095a31;
    --pi-primary-soft: #e8f7ef;
    --pi-primary-contrast: #ffffff;

    --pi-bg: #f6f8f7;
    --pi-bg-secondary: #eef3f1;
    --pi-bg-subtle: var(--pi-bg-secondary);
    --pi-surface: #ffffff;
    --pi-surface-secondary: #f8faf9;
    --pi-surface-elevated: #ffffff;
    --pi-surface-interactive: #f3f7f5;
    --pi-surface-hover: var(--pi-surface-interactive);

    --pi-text: #101817;
    --pi-text-secondary: #42504d;
    --pi-text-muted: #6d7a76;
    --pi-text-inverse: #f6fbf8;

    --pi-border: #dbe5e1;
    --pi-border-soft: #edf2f0;
    --pi-border-strong: #aebdb7;

    --pi-success: #12834a;
    --pi-success-soft: #e7f7ee;
    --pi-danger: #c93434;
    --pi-danger-soft: #fdecec;
    --pi-warning: #b7791f;
    --pi-warning-soft: #fff5db;
    --pi-info: #2563a8;
    --pi-info-soft: #eaf2fb;

    --pi-radius-xs: 4px;
    --pi-radius-sm: 6px;
    --pi-radius-md: 8px;
    --pi-radius-lg: 10px;
    --pi-radius-xl: 12px;
    --pi-radius-pill: 999px;

    --pi-shadow-xs: 0 1px 2px rgba(16, 24, 23, .04);
    --pi-shadow-sm: 0 6px 18px rgba(16, 24, 23, .07);
    --pi-shadow-md: 0 14px 36px rgba(16, 24, 23, .10);
    --pi-shadow-lg: 0 22px 56px rgba(16, 24, 23, .14);

    --pi-space-1: 4px;
    --pi-space-2: 8px;
    --pi-space-3: 12px;
    --pi-space-4: 16px;
    --pi-space-5: 20px;
    --pi-space-6: 24px;
    --pi-space-8: 32px;
    --pi-space-10: 40px;
    --pi-space-12: 48px;

    --pi-sidebar-width: 284px;
    --pi-sidebar-width-compact: 252px;
    --pi-topbar-height: 72px;
    --pi-topbar-height-compact: 64px;
    --pi-content-max-width: 1180px;
    --pi-shell-max-width: 1360px;
    --pi-right-column-width: 320px;
    --pi-shell-gap: var(--pi-space-6);

    --pi-breakpoint-mobile: 576px;
    --pi-breakpoint-tablet: 768px;
    --pi-breakpoint-desktop: 1024px;
    --pi-breakpoint-wide: 1280px;

    --pi-font-family: Inter, Manrope, "Segoe UI", Roboto, Arial, sans-serif;
    --pi-font-xs: .75rem;
    --pi-font-sm: .875rem;
    --pi-font-md: 1rem;
    --pi-font-lg: 1.125rem;
    --pi-font-xl: 1.375rem;
    --pi-font-2xl: 1.75rem;
    --pi-font-size-xs: var(--pi-font-xs);
    --pi-font-size-sm: var(--pi-font-sm);
    --pi-font-size-md: var(--pi-font-md);
    --pi-font-size-lg: var(--pi-font-lg);
    --pi-font-size-xl: var(--pi-font-xl);
    --pi-font-caption: var(--pi-font-xs);
    --pi-font-metadata: var(--pi-font-sm);
    --pi-font-body: var(--pi-font-md);
    --pi-font-card-title: var(--pi-font-lg);
    --pi-font-section-title: var(--pi-font-xl);
    --pi-font-page-title: var(--pi-font-2xl);
    --pi-font-display-auth: clamp(2.5rem, 6vw, 5.2rem);
    --pi-line-tight: 1.2;
    --pi-line-normal: 1.5;

    --pi-transition-fast: 120ms ease;
    --pi-transition-normal: 180ms ease;
    --pi-disabled-opacity: .58;
    --pi-control-height-sm: 32px;
    --pi-control-height-md: 40px;
    --pi-control-height-lg: 48px;

    --pi-focus-ring: 0 0 0 3px color-mix(in srgb, var(--pi-primary) 20%, transparent);
    --pi-overlay: rgba(8, 18, 17, .48);
    --pi-chart-grid: #d7e1dd;
    --pi-chart-tooltip-bg: #101817;
    --pi-chart-tooltip-text: #f6fbf8;
}
