:root {
    --isekai-color-primary: #4f46e5;
    --isekai-color-primary-hover: #4338ca;
    --isekai-color-secondary: #0f766e;
    --isekai-color-background: #f5f7fb;
    --isekai-color-surface: #ffffff;
    --isekai-color-border: #d7deea;
    --isekai-color-text: #172033;
    --isekai-color-text-muted: #5f6b82;
    --isekai-color-success: #15803d;
    --isekai-color-warning: #b45309;
    --isekai-color-danger: #b91c1c;

    --isekai-space-1: 0.25rem;
    --isekai-space-2: 0.5rem;
    --isekai-space-3: 0.75rem;
    --isekai-space-4: 1rem;
    --isekai-space-5: 1.25rem;
    --isekai-space-6: 1.5rem;
    --isekai-space-8: 2rem;
    --isekai-space-10: 2.5rem;
    --isekai-space-12: 3rem;

    --isekai-text-xs: 0.75rem;
    --isekai-text-sm: 0.875rem;
    --isekai-text-md: 1rem;
    --isekai-text-lg: 1.125rem;
    --isekai-heading-sm: 1rem;
    --isekai-heading-md: 1.5rem;
    --isekai-heading-lg: 2.5rem;

    --isekai-radius-sm: 0.375rem;
    --isekai-radius-md: 0.75rem;
    --isekai-radius-lg: 1.25rem;
    --isekai-radius-pill: 999px;

    --isekai-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.08);
    --isekai-shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
    --isekai-shadow-lg: 0 18px 44px rgba(15, 23, 42, 0.12);

    --isekai-container-sm: 48rem;
    --isekai-container-md: 64rem;
    --isekai-container-lg: 80rem;
    --isekai-container-xl: 90rem;
    --isekai-container-fluid: 100%;
    --isekai-container-width: var(--isekai-container-lg);
    --isekai-container-padding: 1rem;
    --isekai-header-height: 4.5rem;
    --isekai-logo-max-width: 180px;
    --isekai-header-background: #ffffff;
    --isekai-footer-background: #eef2f7;
    --isekai-mobile-breakpoint: 960px;

    --isekai-font-family: "Noto Sans TC", "Segoe UI", sans-serif;
    --isekai-font-size-sm: var(--isekai-text-sm);
    --isekai-font-size-base: var(--isekai-text-md);
    --isekai-font-size-lg: var(--isekai-text-lg);
    --isekai-font-size-xl: var(--isekai-heading-md);
    --isekai-line-height: 1.6;
}
