:root {
    /* Current Year */
    --current-year: "2025";
    
    /* Font Family System */
    --font-family-main: "Inter", "Helvetica Neue", Arial, sans-serif;
    --font-family-text: "Noto Sans JP", "Noto Sans", "Inter", "Helvetica Neue", "Arial", sans-serif;
    --font-family-titles: var(--font-family-text);
    
    /* Font Weights - Exact Values */
    --font-text-regular-weight: 440;
    --font-text-semibold-weight: 550;
    --font-text-bold-weight: 660;
    --font-titles-weight: var(--font-text-bold-weight);
    --font-btn-font-weight: 550;
    --font-label-weight: 550;
    --font-caps-weight: 660;
    
    /* Font Smoothing */
    --font-titles-webkit-smoothing: antialiased;
    --font-titles-osx-smoothing: grayscale;
    --font-text-webkit-smoothing: antialiased;
    --font-text-osx-smoothing: grayscale;
    --font-text-stretch: normal;
    --font-btn-webkit-smoothing: auto;
    --font-btn-osx-smoothing: auto;
    
    /* Main Text Sizes */
    --font-main-size: 1.125rem;
    --font-main-line-height: 1.55555556;
    
    /* H1 Responsive Sizes - Exact Breakpoints */
    --font-h1-size-bp-sm: 2.25rem;
    --font-h1-line-height-bp-sm: 1.11111111;
    --font-h1-spacing-bp-sm: -0.2px;
    --font-h1-size-bp-md: 2.6875rem;
    --font-h1-line-height-bp-md: 1.11627907;
    --font-h1-spacing-bp-md: -0.3px;
    --font-h1-size-bp-lg: 3.375rem;
    --font-h1-line-height-bp-lg: 1.07407407;
    --font-h1-spacing-bp-lg: -0.4px;
    
    /* H1 Large Sizes (for hero) */
    --font-h1-size-large-sm: 3.25rem;
    --font-h1-line-height-large-sm: 1.03846154;
    --font-h1-spacing-large-sm: -0.4px;
    --font-h1-size-large-md: 3.875rem;
    --font-h1-line-height-large-md: 1.06451613;
    --font-h1-spacing-large-md: -0.4px;
    --font-h1-size-large-lg: 4.5rem;
    --font-h1-line-height-large-lg: 1.05555556;
    --font-h1-spacing-large-lg: -0.4px;
    
    /* H2 Responsive Sizes */
    --font-h2-size-bp-sm: 2rem;
    --font-h2-line-height-bp-sm: 1.125;
    --font-h2-spacing-bp-sm: -0.15px;
    --font-h2-line-height-bp-sm2: 1.37;
    --font-h2-size-bp-md: 2.375rem;
    --font-h2-line-height-bp-md: 1.15789474;
    --font-h2-spacing-bp-md: -0.2px;
    --font-h2-size-bp-lg: 2.875rem;
    --font-h2-line-height-bp-lg: 1.13043478;
    --font-h2-spacing-bp-lg: -0.3px;
    
    /* H3 Responsive Sizes */
    --font-h3-size-bp-sm: 1.75rem;
    --font-h3-line-height-bp-sm: 1.14285714;
    --font-h3-spacing-bp-sm: -0.1px;
    --font-h3-size-bp-md: 2.0625rem;
    --font-h3-line-height-bp-md: 1.21212121;
    --font-h3-spacing-bp-md: -0.15px;
    --font-h3-size-bp-lg: 2.375rem;
    --font-h3-line-height-bp-lg: 1.21052632;
    --font-h3-spacing-bp-lg: -0.2px;
    
    /* H4 Responsive Sizes */
    --font-h4-size-bp-sm: 1.5625rem;
    --font-h4-line-height-bp-sm: 1.2;
    --font-h4-spacing-bp-sm: -0.1px;
    --font-h4-size-bp-md: 1.8125rem;
    --font-h4-line-height-bp-md: 1.24137931;
    --font-h4-spacing-bp-md: -0.1px;
    --font-h4-size-bp-lg: 2rem;
    --font-h4-line-height-bp-lg: 1.25;
    --font-h4-spacing-bp-lg: -0.15px;
    
    /* H5 Responsive Sizes */
    --font-h5-size-bp-sm: 1.375rem;
    --font-h5-line-height-bp-sm: 1.27272727;
    --font-h5-spacing-bp-sm: -0.05px;
    --font-h5-size-bp-md: 1.5625rem;
    --font-h5-line-height-bp-md: 1.28;
    --font-h5-spacing-bp-md: -0.1px;
    --font-h5-size-bp-lg: 1.625rem;
    --font-h5-line-height-bp-lg: 1.30769231;
    --font-h5-spacing-bp-lg: -0.1px;
    
    /* H6 Responsive Sizes */
    --font-h6-size-bp-sm: 1.1875rem;
    --font-h6-line-height-bp-sm: 1.2631579;
    --font-h6-spacing-bp-sm: -0.03px;
    --font-h6-size-bp-md: 1.3125rem;
    --font-h6-line-height-bp-md: 1.33333333;
    --font-h6-spacing-bp-md: -0.05px;
    --font-h6-size-bp-lg: 1.375rem;
    --font-h6-line-height-bp-lg: 1.36363636;
    --font-h6-spacing-bp-lg: -0.05px;
    
    /* H7 Responsive Sizes */
    --font-h7-size-bp-sm: 1rem;
    --font-h7-line-height-bp-sm: 1.25;
    --font-h7-spacing-bp-sm: -0.03px;
    --font-h7-size-bp-md: 1rem;
    --font-h7-line-height-bp-md: 1.375;
    --font-h7-spacing-bp-md: -0.03px;
    --font-h7-size-bp-lg: 1.125rem;
    --font-h7-line-height-bp-lg: 1.44444444;
    --font-h7-spacing-bp-lg: -0.03px;
    
    /* Paragraph Sizes - Responsive */
    --font-p-lg-size-bp-sm: 1.125rem;
    --font-p-lg-line-height-bp-sm: 1.33333333;
    --font-p-lg-spacing-bp-sm: -0.1px;
    --font-p-lg-size-bp-md: 1.25rem;
    --font-p-lg-line-height-bp-md: 1.4;
    --font-p-lg-spacing-bp-md: -0.2px;
    --font-p-lg-size-bp-lg: 1.25rem;
    --font-p-lg-line-height-bp-lg: 1.5;
    --font-p-lg-spacing-bp-lg: -0.2px;
    
    --font-p-md-size-bp-sm: 1rem;
    --font-p-md-line-height-bp-sm: 1.375;
    --font-p-md-spacing-bp-sm: -0.1px;
    --font-p-md-size-bp-md: 1.125rem;
    --font-p-md-line-height-bp-md: 1.44444444;
    --font-p-md-size-bp-lg: 1.125rem;
    --font-p-md-line-height-bp-lg: 1.55555556;
    --font-p-md-spacing-bp-lg: -0.1px;
    
    /* Small Paragraph Sizes */
    --font-p-sm-size-bp-sm: 0.875rem;
    --font-p-sm-line-height-bp-sm: 1.42857143;
    --font-p-sm-spacing-bp-sm: -0.05px;
    --font-p-sm-size-bp-md: 1rem;
    --font-p-sm-line-height-bp-md: 1.5;
    --font-p-sm-spacing-bp-md: -0.1px;
    --font-p-sm-size-bp-lg: 1rem;
    --font-p-sm-line-height-bp-lg: 1.5;
    --font-p-sm-spacing-bp-lg: -0.1px;
    
    /* Tiny Paragraph Sizes */
    --font-p-tn-size-bp-sm: 0.8125rem;
    --font-p-tn-line-height-bp-sm: 1.38461539;
    --font-p-tn-spacing-bp-sm: -0.05px;
    --font-p-tn-size-bp-md: 0.875rem;
    --font-p-tn-line-height-bp-md: 1.42857143;
    --font-p-tn-spacing-bp-md: -0.05px;
    --font-p-tn-size-bp-lg: 0.875rem;
    --font-p-tn-line-height-bp-lg: 1.42857143;
    --font-p-tn-spacing-bp-lg: -0.05px;
    
    /* Tooltip Paragraph Sizes */
    --font-p-tooltip-size-bp-sm: 0.8125rem;
    --font-p-tooltip-line-height-bp-sm: 1.23076923;
    --font-p-tooltip-spacing-bp-sm: -0.05px;
    --font-p-tooltip-size-bp-md: 0.875rem;
    --font-p-tooltip-line-height-bp-md: 1.28571429;
    --font-p-tooltip-spacing-bp-md: -0.05px;
    
    /* Special Text Sizes */
    --font-p-st-size: 0.75rem;
    --font-p-st-line-height: 1.33333333;
    --font-p-st-spacing: -0.05px;
    
    /* Super Small Text Sizes */
    --font-p-sst-size: 0.6875rem;
    --font-p-sst-line-height: 1.27272727;
    --font-p-sst-spacing: -0.05px;
    
    /* Button Font Sizes */
    --font-btn-30-size: 0.875rem;
    --font-btn-30-line-height: 1;
    --font-btn-30-spacing: -0.05px;
    --font-btn-40-size: 0.875rem;
    --font-btn-40-line-height: 1.0625;
    --font-btn-40-spacing: -0.05px;
    --font-btn-50-size: 1rem;
    --font-btn-50-line-height: 1.125;
    --font-btn-50-spacing: -0.1px;
    --font-btn-60-size: 1.125rem;
    --font-btn-60-line-height: 1.25;
    --font-btn-60-spacing: -0.1px;
    --font-btn-80-size: 1.25rem;
    --font-btn-80-line-height: 1.1875;
    --font-btn-80-spacing: -0.2px;
    
    /* Caps Font Sizes */
    --font-caps-size: 0.875rem;
    --font-caps-line-height: 1.42857143;
    --font-caps-spacing: -0.05px;
    
    /* Label Weights */
    --font-label-sort-weight: 660;
    
    /* Additional Button Variants */
    --font-btn-70-size: 1.0625rem;
    --font-btn-70-line-height: 1.17647059;
    --font-btn-70-spacing: -0.1px;
    
    /* Form Input Sizes */
    --font-input-size: 1rem;
    --font-input-line-height: 1.5;
    --font-input-spacing: -0.05px;
    
    /* Color System - RGB Variables */
    --rgb-blue: 66, 152, 180;
    --rgb-blue-darker-01: 52, 120, 143;
    --rgb-blue-darker-03: 53, 122, 144;
    --rgb-purple: 136, 97, 154;
    --rgb-purple-darker-01: 88, 63, 110;
    --rgb-purple-darker-03: 54, 38, 61;
    --rgb-purple-darker-04: 108, 77, 123;
    --rgb-purple-lighter-02: 148, 113, 164;
    --rgb-green: 51, 164, 116;
    --rgb-green-darker-01: 39, 125, 88;
    --rgb-green-darker-03: 41, 131, 93;
    --rgb-green-lighter-05: 132, 200, 171;
    --rgb-yellow: 228, 174, 58;
    --rgb-yellow-darker-01: 207, 150, 28;
    --rgb-yellow-darker-03: 194, 148, 49;
    --rgb-red: 242, 94, 98;
    --rgb-red-darker-01: 194, 75, 78;
    --rgb-red-lighter-05: 247, 158, 160;
    --rgb-orange: 238, 139, 67;
    --rgb-orange-darker-01: 190, 111, 54;
    --rgb-darkblue: 46, 106, 125;
    --rgb-darkgray: 104, 112, 127;
    --rgb-white: 255, 255, 255;
    --rgb-lightgray: 204, 204, 204;
    --rgb-midgray: 187, 191, 198;
    --rgb-gray-07: 171, 175, 184;
    --rgb-gray-10: 120, 127, 141;
    --rgb-gray-09: 137, 144, 155;
    --rgb-ds-link: 123, 183, 202;
    
    /* Link Underline Colors - 50% Transparency */
    --link-blue-underline-50: rgba(var(--rgb-blue), 0.5);
    --link-purple-underline-50: rgba(var(--rgb-purple), 0.5);
    --link-green-underline-50: rgba(var(--rgb-green), 0.5);
    --link-yellow-underline-50: rgba(var(--rgb-yellow), 0.5);
    --link-red-underline-50: rgba(var(--rgb-red), 0.5);
    --link-darkblue-underline-50: rgba(var(--rgb-darkblue), 0.5);
    --link-darkgray-underline-50: rgba(var(--rgb-darkgray), 0.5);
    --link-lightgray-underline-50: rgba(var(--rgb-lightgray), 0.5);
    --link-midgray-underline-50: rgba(var(--rgb-midgray), 0.5);
    --link-yellow-darker-03-underline-50: rgba(var(--rgb-yellow-darker-03), 0.5);
    --link-white-underline-50: rgba(var(--rgb-white), 0.5);
    --link-ds-link-underline-50: rgba(var(--rgb-ds-link), 0.5);
    
    /* Link Underline Colors - 100% Transparency */
    --link-blue-underline-100: rgba(var(--rgb-blue), 1);
    --link-purple-underline-100: rgba(var(--rgb-purple), 1);
    --link-green-underline-100: rgba(var(--rgb-green), 1);
    --link-yellow-underline-100: rgba(var(--rgb-yellow), 1);
    --link-red-underline-100: rgba(var(--rgb-red), 1);
    --link-darkblue-underline-100: rgba(var(--rgb-darkblue), 1);
    --link-darkgray-underline-100: rgba(var(--rgb-darkgray), 1);
    --link-lightgray-underline-100: rgba(var(--rgb-lightgray), 1);
    --link-midgray-underline-100: rgba(var(--rgb-midgray), 1);
    --link-yellow-darker-03-underline-100: rgba(var(--rgb-yellow-darker-03), 1);
    --link-white-underline-100: rgba(var(--rgb-white), 1);
    --link-ds-link-underline-100: rgba(var(--rgb-ds-link), 1);
    
    /* Layout Variables - Desktop */
    --navbar-visible-h: 90px;
    --sticky-sidebar-top: 90px;
    --navbar-collapse-top: 0px;
    --subnav-collapse-top: 90px;
    --body-frozen-pad-rt: 11px;
    
    /* Layout Variables - Mobile Override (768px and below) */
    --navbar-visible-h-mobile: 60px;
    --sticky-sidebar-top-mobile: 60px;
    --subnav-collapse-top-mobile: 60px;
    --body-frozen-pad-rt-mobile: 0px;
    
    /* Container and Spacing Variables */
    --container-max-width: 1200px;
    --container-padding: 20px;
    --container-padding-mobile: 15px;
    --section-spacing-lg: 80px;
    --section-spacing-md: 60px;
    --section-spacing-sm: 40px;
    
    /* Border Radius Variables */
    --border-radius-sm: 6px;
    --border-radius-md: 12px;
    --border-radius-lg: 20px;
    --border-radius-full: 9999px;
    --border-radius-btn: 40px;
    
    /* Box Shadow Variables */
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 4px 15px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 8px 25px rgba(0, 0, 0, 0.15);
    --shadow-btn-hover: 0 8px 25px rgba(var(--rgb-purple), 0.25);
    
    /* Tailwind CSS Variables */
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / .5);
    --tw-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-ring-offset-shadow: 0 0 #0000;

    /* =======================
      MBTI人格类型主题色彩系统 - 全局变量定义
      ======================= */

   /* ENFJ系列 - 主角型 */
   --ENFJ: #33a574; 
   --ENFP: #33a574; 
   --ENTJ: #8a52a1; 
   --ENTP: #8a52a1; 

   /* ISFJ系列 - 守护者 */
   --ISFJ: #4297b4;  

   /* ISTJ系列 - 物流师 */
   --ISTJ: #4297b4;
   --ISTP: #e2b653;
   --ISFP: #e2b653;

   /* INFJ系列 - 提倡者 */
   --INFJ: #33a574;
   --INFP: #33a574;

   /* INTJ系列 - 建筑师 */
   --INTJ: #8a52a1; 
   --INTP: #8a52a1;

   /* ESFJ系列 - 执政官 */
   --ESFJ: #4297b4; 
   --ESFP: #e2b653; 

   /* ESTJ系列 - 总经理 */
   --ESTJ: #4297b4; 
   --ESTP: #e2b653;  

   /* MBTI人格类型深色版本（用于hover状态） */
   --ENFJ-hover: #298B5D;
   --ENFP-hover: #298B5D;
   --ENTJ-hover: #36263D;
   --ENTP-hover: #36263D;
   --ISFJ-hover: #357A90;
   --ISTJ-hover: #357A90;
   --ISTP-hover: #C29431;
   --ISFP-hover: #C29431;
   --INFJ-hover: #357A90;
   --INFP-hover: #298B5D;
   --INTJ-hover: #36263D;
   --INTP-hover: #36263D;
   --ESFJ-hover: #357A90;
   --ESFP-hover: #C29431;
   --ESTJ-hover: #357A90;
   --ESTP-hover: #C29431;

   /* MBTI人格类型背景色（用于装饰背景） */
   --ENFJ-background: #EBF6F1;
   --ENFP-background: #EBF6F1;
   --ENTJ-background: #F0ECF3;
   --ENTP-background: #F0ECF3;
   --ISFJ-background: #E8F4F8;
   --ISTJ-background: #E8F4F8;
   --ISTP-background: #FDF6E3;
   --ISFP-background: #FDF6E3;
   --INFJ-background: #E8F4F8;
   --INFP-background: #EBF6F1;
   --INTJ-background: #F0ECF3;
   --INTP-background: #F0ECF3;
   --ESFJ-background: #E8F4F8;
   --ESFP-background: #FDF6E3;
   --ESTJ-background: #E8F4F8;
   --ESTP-background: #FDF6E3;

   /* MBTI人格类型深色背景（用于解锁区域容器） */
   --ENFJ-background-deep: #D6ECE3;
   --ENFP-background-deep: #D6ECE3;
   --ENTJ-background-deep: #E4D9EA;
   --ENTP-background-deep: #E4D9EA;
   --ISFJ-background-deep: #D1E7F0;
   --ISTJ-background-deep: #D1E7F0;
   --ISTP-background-deep: #F9F0D4;
   --ISFP-background-deep: #F9F0D4;
   --INFJ-background-deep: #D1E7F0;
   --INFP-background-deep: #D6ECE3;
   --INTJ-background-deep: #E4D9EA;
   --INTP-background-deep: #E4D9EA;
   --ESFJ-background-deep: #D1E7F0;
   --ESFP-background-deep: #F9F0D4;
   --ESTJ-background-deep: #D1E7F0;
   --ESTP-background-deep: #F9F0D4;

   /* MBTI人格类型浅色背景（用于徽章标签） */
   --ENFJ-background-light: #c8e9dc;
   --ENFP-background-light: #c8e9dc;
   --ENTJ-background-light: #D9CDE2;
   --ENTP-background-light: #D9CDE2;
   --ISFJ-background-light: #C4DDE8;
   --ISTJ-background-light: #C4DDE8;
   --ISTP-background-light: #F5EBCC;
   --ISFP-background-light: #F5EBCC;
   --INFJ-background-light: #C4DDE8;
   --INFP-background-light: #c8e9dc;
   --INTJ-background-light: #D9CDE2;
   --INTP-background-light: #D9CDE2;
   --ESFJ-background-light: #C4DDE8;
   --ESFP-background-light: #F5EBCC;
   --ESTJ-background-light: #C4DDE8;
   --ESTP-background-light: #F5EBCC;

   /* 动态主题色彩 - 根据用户性格类型自动切换 */
   --primary-theme-color: var(--ENFJ);
   --primary-theme-color-hover: var(--ENFJ-hover);
   --primary-theme-background-color: var(--ENFJ-background);
   --primary-theme-background-deep: var(--ENFJ-background-deep);
   --primary-theme-background-light: var(--ENFJ-background-light);
}