/**
 * NEO Theme - デザイントークン (CSS Custom Properties)
 */

:root {
    /* ─── カラーパレット ─── */
    --neo-color-primary: #2271b1;
    --neo-color-primary-hover: #135e96;
    --neo-color-primary-light: #e8f0fe;
    --neo-color-primary-gradient: linear-gradient(135deg, var(--neo-color-primary), var(--neo-color-primary-hover));
    --neo-color-secondary: #6c757d;
    --neo-color-accent: #e67e22;
    --neo-color-accent-hover: #d35400;
    --neo-color-success: #00a32a;
    --neo-color-warning: #dba617;
    --neo-color-danger: #d63638;
    --neo-color-info: #00a0d2;

    /* ─── テキストカラー ─── */
    --neo-color-text: #1a1a2e;
    --neo-color-text-secondary: #646970;
    --neo-color-text-muted: #a7aaad;
    --neo-color-text-inverse: #ffffff;

    /* ─── 背景カラー ─── */
    --neo-color-bg: #ffffff;
    --neo-color-bg-alt: #f8f9fa;
    --neo-color-bg-subtle: #f0f0f1;
    --neo-color-surface: #ffffff;

    /* ─── グラスモーフィズム ─── */
    --neo-glass-bg: rgba(255, 255, 255, 0.7);
    --neo-glass-blur: blur(16px);
    --neo-glass-border: 1px solid rgba(255, 255, 255, 0.3);

    /* ─── ボーダー ─── */
    --neo-color-border: #e0e0e0;
    --neo-color-border-light: #f0f0f1;

    /* ─── タイポグラフィ ─── */
    --neo-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", sans-serif;
    --neo-font-family-serif: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
    --neo-font-family-mono: "SF Mono", "Fira Code", "Consolas", monospace;
    --neo-font-size-base: 16px;
    --neo-font-size-xs: 0.75rem;
    --neo-font-size-sm: 0.875rem;
    --neo-font-size-md: 1.125rem;
    --neo-font-size-lg: 1.25rem;
    --neo-font-size-xl: 1.5rem;
    --neo-font-size-2xl: 1.875rem;
    --neo-font-size-3xl: 2.25rem;
    --neo-font-size-4xl: 3rem;
    --neo-line-height-tight: 1.3;
    --neo-line-height-base: 1.8;
    --neo-line-height-relaxed: 2.0;
    --neo-font-weight-normal: 400;
    --neo-font-weight-medium: 500;
    --neo-font-weight-semibold: 600;
    --neo-font-weight-bold: 700;

    /* ─── スペーシング ─── */
    --neo-space-xs: 0.25rem;
    --neo-space-sm: 0.5rem;
    --neo-space-md: 1rem;
    --neo-space-lg: 1.5rem;
    --neo-space-xl: 2rem;
    --neo-space-2xl: 3rem;
    --neo-space-3xl: 4rem;
    --neo-space-4xl: 6rem;

    /* ─── レイアウト ─── */
    --neo-container-max: 1200px;
    --neo-container-narrow: 800px;
    --neo-container-padding: 1.5rem;
    --neo-sidebar-width: 320px;
    --neo-header-height: 72px;

    /* ─── ボーダー半径 (UI Shape) ─── */
    --neo-radius-sm: 4px;
    --neo-radius-md: 8px;
    --neo-radius-lg: 12px;
    --neo-radius-xl: 16px;
    --neo-radius-full: 9999px;
    --neo-btn-radius: var(--neo-radius-full); /* デフォルト: カプセル型 */

    /* ─── シャドウ (Shadow Strength) ─── */
    --neo-shadow-opacity: 0.08;
    --neo-shadow-sm: 0 2px 8px rgba(0, 0, 0, var(--neo-shadow-opacity));
    --neo-shadow-md: 0 8px 24px rgba(0, 0, 0, calc(var(--neo-shadow-opacity) * 1.5));
    --neo-shadow-lg: 0 16px 48px rgba(0, 0, 0, calc(var(--neo-shadow-opacity) * 2));
    --neo-shadow-xl: 0 24px 64px rgba(0, 0, 0, calc(var(--neo-shadow-opacity) * 2.5));

    /* ─── トランジション ─── */
    --neo-transition-fast: 150ms ease-out;
    --neo-transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    --neo-transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);
    --neo-transition-spring: 600ms cubic-bezier(0.175, 0.885, 0.32, 1.275);

    /* ─── Z-Index ─── */
    --neo-z-dropdown: 100;
    --neo-z-sticky: 200;
    --neo-z-overlay: 500;
    --neo-z-modal: 1000;
    --neo-z-toast: 9000;
    --neo-z-max: 99999;
}