/* ==========================================================================
   NDS — NOBATET Design System — Unified Design Tokens
   Direction: Persian / RTL-First | Theme: Royal Blue (#1d4ed8)
   Canonical Token Layer (Batch 1 Consolidated)
   ========================================================================== */

:root {
    /* --------------------------------------------------------------------------
       1. Brand Colors (Royal Blue Ramp)
       -------------------------------------------------------------------------- */
    --nobat-primary: #1d4ed8;
    --nobat-primary-hover: #1e40af;
    --nobat-primary-active: #1e3a8a;
    --nobat-primary-light: #eff6ff;
    --nobat-primary-contrast: #ffffff;
    --nobat-primary-rgb: 29, 78, 216;

    /* Secondary / Slate Dark */
    --nobat-secondary: #0f172a;
    --nobat-secondary-hover: #1e293b;

    /* --------------------------------------------------------------------------
       2. Semantic Feedback States
       -------------------------------------------------------------------------- */
    --nobat-success: #10b981;
    --nobat-success-hover: #059669;
    --nobat-success-light: #ecfdf5;
    --nobat-success-border: #a7f3d0;
    --nobat-success-text: #047857;

    --nobat-warning: #f59e0b;
    --nobat-warning-hover: #d97706;
    --nobat-warning-light: #fffbeb;
    --nobat-warning-border: #fde68a;
    --nobat-warning-text: #b45309;

    --nobat-danger: #ef4444;
    --nobat-danger-hover: #dc2626;
    --nobat-danger-light: #fef2f2;
    --nobat-danger-border: #fecaca;
    --nobat-danger-text: #b91c1c;

    --nobat-info: #3b82f6;
    --nobat-info-hover: #2563eb;
    --nobat-info-light: #eff6ff;
    --nobat-info-border: #bfdbfe;
    --nobat-info-text: #1d4ed8;

    /* --------------------------------------------------------------------------
       3. Neutrals & Surfaces
       -------------------------------------------------------------------------- */
    --nobat-bg: #f8fafc;
    --nobat-surface: #ffffff;
    --nobat-surface-raised: #ffffff;
    --nobat-surface-muted: #f1f5f9;
    --nobat-surface-subtle: #f8fafc;
    --nobat-surface-soft: #f8fafc;
    --nobat-fill: #f4f4f5;
    --nobat-fill-hover: #e2e8f0;
    --nobat-border: #e2e8f0;
    --nobat-border-strong: #cbd5e1;
    --nobat-border-subtle: #f1f5f9;
    --nobat-hairline: rgba(0, 0, 0, 0.06);

    /* --------------------------------------------------------------------------
       4. Text Hierarchy
       -------------------------------------------------------------------------- */
    --nobat-text: #1e293b;
    --nobat-text-strong: #0f172a;
    --nobat-text-muted: #64748b;
    --nobat-text-subtle: #94a3b8;
    --nobat-text-inverse: #ffffff;

    /* --------------------------------------------------------------------------
       5. Radius Scale & Semantic Component Radii
       -------------------------------------------------------------------------- */
    --nobat-radius-xs: 6px;
    --nobat-radius-sm: 8px;
    --nobat-radius-md: 12px;
    --nobat-radius-lg: 16px;
    --nobat-radius-xl: 20px;
    --nobat-radius-pill: 9999px;

    /* Semantic Component Radii */
    --nobat-radius-input: 10px;
    --nobat-radius-card: 16px;
    --nobat-radius-btn: 12px;
    --nobat-radius-slot: 10px;

    /* --------------------------------------------------------------------------
       6. Spacing Scale (4px / 8px Grid)
       -------------------------------------------------------------------------- */
    --nobat-space-1: 4px;
    --nobat-space-2: 8px;
    --nobat-space-3: 12px;
    --nobat-space-4: 16px;
    --nobat-space-5: 20px;
    --nobat-space-6: 24px;
    --nobat-space-8: 32px;

    /* Spacing Semantic Aliases */
    --nobat-space-xs: 4px;
    --nobat-space-sm: 8px;
    --nobat-space-md: 12px;
    --nobat-space-lg: 16px;
    --nobat-space-xl: 20px;
    --nobat-space-2xl: 32px;

    /* --------------------------------------------------------------------------
       7. Control Heights & Layout Dimensions
       -------------------------------------------------------------------------- */
    --nobat-control-height-sm: 34px;
    --nobat-control-height: 40px;
    --nobat-control-height-lg: 48px;
    --nobat-max-width-portal: 760px;

    /* --------------------------------------------------------------------------
       8. Typography Scale & Weights
       -------------------------------------------------------------------------- */
    --nobat-font-family: 'Arad', system-ui, -apple-system, sans-serif;
    --nobat-font-size-xs: 11px;
    --nobat-font-size-sm: 12px;
    --nobat-font-size-base: 13.5px;
    --nobat-font-size-md: 14px;
    --nobat-font-size-lg: 16px;
    --nobat-font-size-xl: 20px;
    --nobat-font-size-2xl: 28px;

    --nobat-font-weight-regular: 400;
    --nobat-font-weight-medium: 500;
    --nobat-font-weight-semibold: 600;
    --nobat-font-weight-bold: 700;
    --nobat-font-weight-heavy: 800;
    --nobat-font-weight-black: 900;

    --nobat-line-height-none: 1;
    --nobat-line-height-tight: 1.25;
    --nobat-line-height-normal: 1.5;
    --nobat-line-height-loose: 1.65;

    /* --------------------------------------------------------------------------
       9. Shadows & Elevation
       -------------------------------------------------------------------------- */
    --nobat-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
    --nobat-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
    --nobat-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07), 0 2px 4px rgba(0, 0, 0, 0.06);
    --nobat-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
    --nobat-shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.04);
    --nobat-shadow-focus: 0 0 0 3px rgba(29, 78, 216, 0.2);

    /* --------------------------------------------------------------------------
       10. Z-Index Layer Scale
       -------------------------------------------------------------------------- */
    --nobat-z-dropdown: 100;
    --nobat-z-sticky: 200;
    --nobat-z-drawer: 800;
    --nobat-z-modal-backdrop: 1000;
    --nobat-z-modal: 1050;
    --nobat-z-popover: 1100;
    --nobat-z-toast: 1200;
    --nobat-z-datepicker: 999999;

    /* --------------------------------------------------------------------------
       11. Transitions & Focus Ring
       -------------------------------------------------------------------------- */
    --nobat-transition-fast: all 0.15s ease;
    --nobat-transition: all 0.2s ease;
    --nobat-transition-slow: all 0.35s ease;
    --nobat-focus-ring: 0 0 0 3px rgba(29, 78, 216, 0.2);

    /* ==========================================================================
       CANONICAL ALIASES & COMPATIBILITY LAYER
       ========================================================================== */

    /* NDS Short Aliases (--nds-*) */
    --nds-primary: var(--nobat-primary);
    --nds-primary-hover: var(--nobat-primary-hover);
    --nds-border: var(--nobat-border);
    --nds-text: var(--nobat-text);
    --nds-text-muted: var(--nobat-text-muted);
    --nds-radius-sm: var(--nobat-radius-sm);
    --nds-radius-md: var(--nobat-radius-md);
    --nds-radius-lg: var(--nobat-radius-lg);
    --nds-radius-xl: var(--nobat-radius-xl);

    /* Semantic Feedback Tone Aliases (--tone-*) */
    --tone-success-bg: var(--nobat-success-light);
    --tone-success-border: var(--nobat-success-border);
    --tone-success-text: var(--nobat-success-text);
    --tone-warning-bg: var(--nobat-warning-light);
    --tone-warning-border: var(--nobat-warning-border);
    --tone-warning-text: var(--nobat-warning-text);
    --tone-danger-bg: var(--nobat-danger-light);
    --tone-danger-border: var(--nobat-danger-border);
    --tone-danger-text: var(--nobat-danger-text);
    --tone-info-bg: var(--nobat-info-light);
    --tone-info-border: var(--nobat-info-border);
    --tone-info-text: var(--nobat-info-text);

    /* Legacy Aliases (--nobatet-*) */
    --nobatet-primary: var(--nobat-primary);
    --nobatet-primary-hover: var(--nobat-primary-hover);
    --nobatet-primary-active: var(--nobat-primary-active);
    --nobatet-primary-light: var(--nobat-primary-light);
    --nobatet-primary-contrast: var(--nobat-primary-contrast);
    --nobatet-primary-rgb: var(--nobat-primary-rgb);
    --nobatet-primary-dark: var(--nobat-primary-active);
    --nobatet-primary-border: var(--nobat-info-border);
    --nobatet-primary-shadow: 0 3px 8px rgba(29, 78, 216, 0.2);

    --nobatet-secondary: var(--nobat-secondary);
    --nobatet-secondary-hover: var(--nobat-secondary-hover);
    --nobatet-secondary-light: var(--nobat-surface-subtle);
    --nobatet-secondary-border: var(--nobat-border-strong);

    --nobatet-success: var(--nobat-success);
    --nobatet-success-hover: var(--nobat-success-hover);
    --nobatet-success-light: var(--nobat-success-light);
    --nobatet-success-border: var(--nobat-success-border);
    --nobatet-success-text: var(--nobat-success-text);

    --nobatet-warning: var(--nobat-warning);
    --nobatet-warning-hover: var(--nobat-warning-hover);
    --nobatet-warning-light: var(--nobat-warning-light);
    --nobatet-warning-border: var(--nobat-warning-border);
    --nobatet-warning-text: var(--nobat-warning-text);

    --nobatet-danger: var(--nobat-danger);
    --nobatet-danger-hover: var(--nobat-danger-hover);
    --nobatet-danger-light: var(--nobat-danger-light);
    --nobatet-danger-border: var(--nobat-danger-border);
    --nobatet-danger-text: var(--nobat-danger-text);

    --nobatet-info: var(--nobat-info);
    --nobatet-info-hover: var(--nobat-info-hover);
    --nobatet-info-light: var(--nobat-info-light);
    --nobatet-info-border: var(--nobat-info-border);
    --nobatet-info-text: var(--nobat-info-text);

    --nobatet-bg: var(--nobat-bg);
    --nobatet-surface: var(--nobat-surface);
    --nobatet-surface-raised: var(--nobat-surface-raised);
    --nobatet-surface-muted: var(--nobat-surface-muted);
    --nobatet-surface-subtle: var(--nobat-surface-subtle);
    --nobatet-surface-soft: var(--nobat-surface-soft);
    --nobatet-fill: var(--nobat-fill);
    --nobatet-fill-hover: var(--nobat-fill-hover);

    --nobatet-border: var(--nobat-border);
    --nobatet-border-strong: var(--nobat-border-strong);
    --nobatet-border-subtle: var(--nobat-border-subtle);
    --nobatet-border-light: var(--nobat-border-subtle);

    --nobatet-text: var(--nobat-text);
    --nobatet-text-strong: var(--nobat-text-strong);
    --nobatet-text-muted: var(--nobat-text-muted);
    --nobatet-text-subtle: var(--nobat-text-subtle);
    --nobatet-text-inverse: var(--nobat-text-inverse);

    --nobatet-radius-xs: var(--nobat-radius-xs);
    --nobatet-radius-sm: var(--nobat-radius-sm);
    --nobatet-radius-md: var(--nobat-radius-md);
    --nobatet-radius-lg: var(--nobat-radius-lg);
    --nobatet-radius-xl: var(--nobat-radius-xl);
    --nobatet-radius-pill: var(--nobat-radius-pill);
    --nobatet-radius-card: var(--nobat-radius-card);
    --nobatet-radius-btn: var(--nobat-radius-btn);
    --nobatet-radius-input: var(--nobat-radius-input);
    --nobatet-radius-slot: var(--nobat-radius-slot);
    --nobatet-btn-radius: var(--nobat-radius-btn);
    --nobatet-radius: var(--nobat-radius-md);

    --nobatet-input-height: var(--nobat-control-height-lg);
    --nobatet-btn-height: 50px;
    --nobatet-label-size: var(--nobat-font-size-md);
    --nobatet-btn-size: 15px;
    --nobatet-max-width: var(--nobat-max-width-portal);

    --nobatet-font-family: var(--nobat-font-family);
    --nobatet-font: var(--nobat-font-family);
    --nobatet-font-size-xs: var(--nobat-font-size-xs);
    --nobatet-font-size-sm: var(--nobat-font-size-sm);
    --nobatet-font-size-base: var(--nobat-font-size-base);
    --nobatet-font-size-md: var(--nobat-font-size-md);
    --nobatet-font-size-lg: var(--nobat-font-size-lg);
    --nobatet-font-size-xl: var(--nobat-font-size-xl);
    --nobatet-font-size-2xl: var(--nobat-font-size-2xl);

    --nobatet-shadow-xs: var(--nobat-shadow-xs);
    --nobatet-shadow-sm: var(--nobat-shadow-sm);
    --nobatet-shadow-md: var(--nobat-shadow-md);
    --nobatet-shadow-lg: var(--nobat-shadow-lg);
    --nobatet-shadow-xl: var(--nobat-shadow-xl);
    --nobatet-transition: var(--nobat-transition);
    --nobatet-focus-ring: var(--nobat-focus-ring);
    --nobatet-focus: var(--nobat-focus-ring);

    --nobatet-header-offset: var(--wp-admin--admin-bar--height, 0px);
    --nobatet-accent-border: rgba(245, 158, 11, 0.25);
    --nobatet-accent-shadow: rgba(245, 158, 11, 0.08);
}