*{margin:0;padding:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}img{max-width:100%;height:auto;border:0}video,audio,canvas{display:inline-block;max-width:100%}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}table{border-collapse:collapse;border-spacing:0}ul,ol{list-style:none}.ie8 *{box-sizing:content-box}@supports not (display: flex){.flex{display:inline-block}.flex-col{display:block}.justify-between{text-align:justify}.justify-between:after{content:"";display:inline-block;width:100%}.items-center{vertical-align:middle}}@supports not (display: grid){.grid{display:flex;flex-wrap:wrap}.grid-cols-2>*{width:50%}.grid-cols-3>*{width:33.333%}.grid-cols-4>*{width:25%}}:root{--primary-color: #3b82f6;--secondary-color: #6b7280;--background-color: #ffffff;--text-color: #111827;--border-color: #e5e7eb}.dark{--primary-color: #60a5fa;--secondary-color: #9ca3af;--background-color: #1f2937;--text-color: #f9fafb;--border-color: #374151}.bg-blue-600{background-color:var(--primary-color, #3b82f6)}.text-gray-800{color:var(--text-color, #111827)}.border-gray-200{border-color:var(--border-color, #e5e7eb)}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.flex{display:-ms-flexbox;display:flex}.flex-col{-ms-flex-direction:column;flex-direction:column}.justify-between{-ms-flex-pack:justify;justify-content:space-between}.items-center{-ms-flex-align:center;align-items:center}.grid{display:-ms-grid;display:grid}.overflow-auto{-ms-overflow-style:scrollbar}.opacity-50{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";filter:alpha(opacity=50)}}@-moz-document url-prefix(){.scrollbar-thin{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.5) transparent}}@supports (-webkit-hyphens: none){.bg-gradient-to-r{background:-webkit-linear-gradient(left,var(--primary-color),var(--secondary-color))}.flex-grow{-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1}.fixed{-webkit-backface-visibility:hidden;backface-visibility:hidden}}@-ms-viewport{width:device-width}@viewport{width:device-width}@media(hover:none)and (pointer:coarse){button{-webkit-tap-highlight-color:transparent}.overflow-auto{-webkit-overflow-scrolling:touch}}.new-component{font-family:inherit!important;font-size:inherit!important}.theme-aware{color:inherit!important;background-color:inherit!important}.new-component{font-family:var(--font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif)}@supports not (--css: variables){.bg-white{background-color:#fff}.text-gray-800{color:#1f2937}.dark .bg-gray-800{background-color:#1f2937}.dark .text-white{color:#fff}}.transform{transform:translateZ(0);will-change:transform}.aspect-ratio-container{position:relative;padding-bottom:56.25%;height:0}.aspect-ratio-content{position:absolute;top:0;left:0;width:100%;height:100%}@media(prefers-contrast:high){.btn-primary{background-color:#06c!important;color:#fff!important}.card{border:2px solid currentColor!important}.text-sm{font-size:.9rem!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.transition-colors{transition:none!important}}:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media(prefers-contrast:high){:focus{outline:3px solid var(--primary-color)}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.no-print,nav,footer{display:none!important}}@tailwind base;@tailwind components;@tailwind utilities;@layer base{body{@apply font-sans antialiased;font-family:var(--font-family-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}a{@apply text-blue-600 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-300 transition-colors;}button{@apply focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 disabled:opacity-50 disabled:cursor-not-allowed;}input,textarea,select{@apply border rounded-md px-3 py-2 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent;}.dark{@apply bg-gray-900 text-gray-100;}}@layer components{.btn-primary{@apply bg-blue-600 hover:bg-blue-700 text-white font-medium py-2 px-4 rounded-md transition-colors duration-200 shadow-sm;}.btn-secondary{@apply bg-gray-200 hover:bg-gray-300 text-gray-800 dark:bg-gray-700 dark:hover:bg-gray-600 dark:text-gray-200 font-medium py-2 px-4 rounded-md transition-colors duration-200;}.btn-danger{@apply bg-red-600 hover:bg-red-700 text-white font-medium py-2 px-4 rounded-md transition-colors duration-200;}.card{@apply bg-white dark:bg-gray-800 rounded-lg shadow-md border border-gray-200 dark:border-gray-700 overflow-hidden;}.form-group{@apply mb-4;}.form-label{@apply block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1;}.progress-bar{@apply h-2 rounded-full bg-gray-200 dark:bg-gray-700 overflow-hidden;}.progress-bar-fill{@apply h-full transition-all duration-500 ease-out;}.loading-spinner{@apply animate-spin rounded-full h-5 w-5 border-2 border-t-transparent;}.tooltip{@apply absolute z-50 px-2 py-1 text-xs font-medium text-white bg-gray-900 rounded shadow-lg opacity-0 invisible transition-all duration-200;}.modal-overlay{@apply fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50;}.modal-content{@apply bg-white dark:bg-gray-800 rounded-lg shadow-xl max-w-2xl w-full mx-4 p-6;}.dropdown-menu{@apply absolute right-0 mt-2 w-56 rounded-md shadow-lg bg-white dark:bg-gray-800 ring-1 ring-black ring-opacity-5 focus:outline-none z-50;}.container{@apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8;}}@layer utilities{.truncate-2{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.truncate-3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.scrollbar-thin{scrollbar-width:thin}.scrollbar-thin::-webkit-scrollbar{width:6px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:#9ca3af80;border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:#9ca3afb3}.dark .scrollbar-thin::-webkit-scrollbar-thumb{background-color:#6b728080}.dark .scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:#6b7280b3}.grid-cols-auto-fill{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.grid-cols-auto-fit{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.transition-all-200{transition:all .2s ease-in-out}.transition-all-300{transition:all .3s ease-in-out}.mask-gradient{mask-image:linear-gradient(to bottom,#000 70%,#0000);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 70%,rgba(0,0,0,0))}}@media(max-width:640px){.btn{@apply py-2 px-3 text-sm;}.modal-content{@apply p-4 mx-2;}}@media(min-width:768px){.container{@apply px-6;}}@media(min-width:1024px){.container{@apply px-8;}}@media print{.no-print{display:none!important}body{@apply bg-white text-black;}}*{@apply transition-colors duration-200;}.sr-only{@apply absolute w-px h-px p-0 -m-px overflow-hidden clip-rect(0,0,0,0) whitespace-nowrap border-0;}@media(prefers-contrast:high){.btn-primary{@apply bg-blue-700;}.card{@apply border-2;}}:root{--color-gold-primary: #D4AF37;--color-gold-secondary: #FFD700;--color-gold-accent: #B8860B;--color-gold-light: #F7E98E;--color-gold-medium: #E6C547;--color-gold-dark: #9A7B0A;--color-gold-glow: rgba(212, 175, 55, .2);--color-gold-shadow: rgba(212, 175, 55, .3);--color-gold-gradient: linear-gradient(135deg, #FFD700 0%, #D4AF37 50%, #B8860B 100%);--animation-duration-fast: .15s;--animation-duration-normal: .3s;--animation-duration-slow: .5s;--animation-easing-spring: cubic-bezier(.68, -.55, .265, 1.55);--animation-easing-smooth: cubic-bezier(.4, 0, .2, 1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem}:root{--color-primary: #FFFFFF;--color-secondary: #F8FAFC;--color-tertiary: #F1F5F9;--color-accent: #D4AF37;--color-text-primary: #1E293B;--color-text-secondary: #475569;--color-text-tertiary: #64748B;--color-text-accent: #B8860B;--color-border-light: rgba(0, 0, 0, .05);--color-border-medium: rgba(0, 0, 0, .1);--color-border-strong: rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25)}.dark{--color-primary: #0F172A;--color-secondary: #1E293B;--color-tertiary: #334155;--color-accent: #FFD700;--color-text-primary: #F8FAFC;--color-text-secondary: #E2E8F0;--color-text-tertiary: #CBD5E1;--color-text-accent: #FFD700;--color-border-light: rgba(255, 255, 255, .05);--color-border-medium: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .2);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .8)}.btn-enhanced{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-weight:700;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--color-border-medium);border-radius:var(--radius-xl);background:var(--color-primary);color:var(--color-text-primary);box-shadow:var(--shadow-md);transition:all var(--animation-duration-normal) var(--animation-easing-spring);cursor:pointer;-webkit-user-select:none;user-select:none;overflow:hidden}.btn-enhanced:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--color-gold-gradient);opacity:0;transition:all var(--animation-duration-normal) var(--animation-easing-spring);z-index:-1}.btn-enhanced:hover{transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-lg);border-color:var(--color-gold-primary)}.btn-enhanced:hover:before{left:0;opacity:.1}.btn-enhanced:active{transform:translateY(0) scale(.98);box-shadow:var(--shadow-sm)}.btn-enhanced:focus{outline:2px solid var(--color-gold-primary);outline-offset:2px}.btn-golden{background:var(--color-gold-gradient);color:#fff;border-color:var(--color-gold-accent);box-shadow:var(--shadow-md),0 0 20px var(--color-gold-glow)}.btn-golden:hover{box-shadow:var(--shadow-lg),0 0 30px var(--color-gold-glow);transform:translateY(-3px) scale(1.05)}.modal-enhanced{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);background:#00000080;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:modal-fade-in var(--animation-duration-normal) var(--animation-easing-smooth)}.modal-content-enhanced{position:relative;width:100%;max-width:75rem;max-height:90vh;padding:var(--spacing-3xl);background:var(--color-primary);border:6px solid var(--color-border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);overflow:auto;animation:modal-slide-up var(--animation-duration-normal) var(--animation-easing-spring)}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(2rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.floating-menu-enhanced{position:absolute;background:var(--color-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-md);min-width:15rem;z-index:100;animation:float-in var(--animation-duration-normal) var(--animation-easing-spring)}@keyframes float-in{0%{opacity:0;transform:translateY(-.5rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.floating-menu-item{display:flex;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md) var(--spacing-lg);font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-primary);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--animation-duration-fast) var(--animation-easing-smooth)}.floating-menu-item:hover{background:var(--color-secondary);color:var(--color-text-accent);transform:translate(.25rem)}.floating-menu-item:active{transform:translate(.125rem) scale(.98)}.header-enhanced{position:fixed;top:0;left:0;right:0;height:7rem;display:flex;align-items:center;justify-content:space-between;padding:0 4rem;background:var(--color-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:2px solid var(--color-border-light);box-shadow:var(--shadow-sm);z-index:300}.logo-enhanced{display:flex;align-items:center;gap:var(--spacing-lg);font-weight:900;font-size:var(--font-size-4xl);text-transform:uppercase;letter-spacing:-.025em;line-height:1.2}.logo-text-primary{color:var(--color-text-primary);letter-spacing:.2em}.logo-text-accent{position:relative;color:var(--color-gold-primary);letter-spacing:.2em}.logo-text-accent:after{content:"";position:absolute;bottom:-.25rem;left:0;width:100%;height:.25rem;background:var(--color-gold-primary);opacity:.5;border-radius:var(--radius-full)}.sidebar-enhanced{position:fixed;top:7rem;right:0;width:30rem;height:calc(100vh - 7rem);background:var(--color-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-left:2px solid var(--color-border-light);box-shadow:var(--shadow-lg);transition:transform var(--animation-duration-normal) var(--animation-easing-spring);z-index:200}.sidebar-enhanced.hidden{transform:translate(100%)}.canvas-grid-enhanced{background-image:radial-gradient(circle at 1px 1px,var(--color-gold-glow) 1px,transparent 0);background-size:20px 20px;background-position:0 0}.block-enhanced{position:absolute;background:var(--color-primary);border:2px solid var(--color-border-medium);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--animation-duration-normal) var(--animation-easing-spring);overflow:hidden}.block-enhanced:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-gold-primary)}.block-enhanced.selected{border-color:var(--color-gold-primary);box-shadow:var(--shadow-lg),0 0 20px var(--color-gold-glow)}.block-enhanced.processing{border-color:var(--color-gold-secondary);box-shadow:var(--shadow-lg),0 0 30px var(--color-gold-glow);animation:processing-pulse 2s ease-in-out infinite}@keyframes processing-pulse{0%,to{box-shadow:var(--shadow-lg),0 0 20px var(--color-gold-glow)}50%{box-shadow:var(--shadow-xl),0 0 40px var(--color-gold-glow)}}@media(max-width:768px){.header-enhanced{padding:0 var(--spacing-lg);height:5rem}.logo-enhanced{font-size:var(--font-size-2xl);gap:var(--spacing-md)}.sidebar-enhanced{width:100vw;top:5rem;height:calc(100vh - 5rem)}.modal-content-enhanced{padding:var(--spacing-xl);margin:var(--spacing-md)}.btn-enhanced{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs)}}@media(max-width:640px){.header-enhanced{padding:0 var(--spacing-md)}.floating-menu-enhanced{min-width:12rem}.modal-enhanced{padding:var(--spacing-md)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--color-border-light: rgba(0, 0, 0, .3);--color-border-medium: rgba(0, 0, 0, .5);--color-border-strong: rgba(0, 0, 0, .8)}.dark{--color-border-light: rgba(255, 255, 255, .3);--color-border-medium: rgba(255, 255, 255, .5);--color-border-strong: rgba(255, 255, 255, .8)}}.btn-enhanced:focus-visible,.floating-menu-item:focus-visible{outline:2px solid var(--color-gold-primary);outline-offset:2px}@media print{.header-enhanced,.sidebar-enhanced,.floating-menu-enhanced{display:none!important}.modal-enhanced{position:static!important;background:#fff!important;box-shadow:none!important}}:root{--font-family-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--text-primary: #111827;--text-secondary: #374151;--text-tertiary: #6b7280;--text-high-contrast: #000000;--text-summary: #1f2937}.dark{--text-primary: #f9fafb;--text-secondary: #e5e7eb;--text-tertiary: #9ca3af;--text-high-contrast: #ffffff;--text-summary: #f3f4f6}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;font-variant-ligatures:common-ligatures;font-display:swap}@media(min-resolution:2dppx){*{-webkit-font-smoothing:subpixel-antialiased}}html{font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary)}body{font-family:var(--font-family-primary);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);letter-spacing:var(--letter-spacing-normal);-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}.text-enhanced{font-family:var(--font-family-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;font-variant-ligatures:common-ligatures}.text-high-contrast{color:var(--text-high-contrast);font-weight:var(--font-weight-medium);text-shadow:0 0 1px rgba(0,0,0,.1)}.dark .text-high-contrast{text-shadow:0 0 1px rgba(255,255,255,.1)}.text-summary{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);color:var(--text-summary);letter-spacing:var(--letter-spacing-wide);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-crisp{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;transform:translateZ(0);backface-visibility:hidden}.text-ultra-crisp{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision;font-feature-settings:"kern" 1,"liga" 1;font-variant-ligatures:common-ligatures;transform:translateZ(0);will-change:transform;backface-visibility:hidden;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.text-antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-subpixel-antialiased{-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}.text-optimize-legibility{text-rendering:optimizeLegibility}.text-optimize-speed{text-rendering:optimizeSpeed}.text-geometric-precision{text-rendering:geometricPrecision}.text-kerning{font-kerning:normal;font-feature-settings:"kern" 1}.text-ligatures{font-variant-ligatures:common-ligatures;font-feature-settings:"liga" 1}.text-no-ligatures{font-variant-ligatures:none;font-feature-settings:"liga" 0}.text-chinese-optimized{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans CJK SC",var(--font-family-primary);font-weight:var(--font-weight-normal);letter-spacing:.05em}.text-english-optimized{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:-.01em}.text-mono-optimized{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.text-numeric-optimized{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}.text-xs-enhanced{font-size:var(--font-size-xs);line-height:var(--line-height-tight);font-weight:var(--font-weight-medium)}.text-sm-enhanced{font-size:var(--font-size-sm);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium)}.text-base-enhanced{font-size:var(--font-size-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal)}.text-lg-enhanced{font-size:var(--font-size-lg);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal)}.text-xl-enhanced{font-size:var(--font-size-xl);line-height:var(--line-height-tight);font-weight:var(--font-weight-medium)}@media(max-width:640px){.text-summary{font-size:.8125rem;line-height:1.4}.text-sm-enhanced{font-size:.8125rem}.text-base-enhanced{font-size:.9375rem}}@media(min-width:641px)and (max-width:1024px){.text-summary{font-size:var(--font-size-sm);line-height:1.45}}@media(min-width:1025px){.text-summary{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}}.light-theme .text-enhanced,:root:not(.dark) .text-enhanced{color:var(--text-primary);text-shadow:none}.dark .text-enhanced{color:var(--text-primary);text-shadow:0 0 1px rgba(0,0,0,.3);-webkit-font-smoothing:antialiased}.dark .text-summary{color:var(--text-summary);font-weight:var(--font-weight-medium);text-shadow:0 0 1px rgba(0,0,0,.2)}.text-accessible{color:var(--text-high-contrast);font-weight:var(--font-weight-medium);min-height:1.5em}@media(prefers-contrast:high){.text-enhanced,.text-summary,.text-high-contrast{color:var(--text-high-contrast);font-weight:var(--font-weight-semibold);text-shadow:none}.dark .text-enhanced,.dark .text-summary,.dark .text-high-contrast{color:var(--text-high-contrast);text-shadow:0 0 2px rgba(0,0,0,.8)}}.btn-text-enhanced{font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.nav-text-enhanced{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-normal);color:var(--text-secondary)}.modal-text-enhanced{line-height:var(--line-height-relaxed);color:var(--text-primary);font-weight:var(--font-weight-normal)}.tooltip-text-enhanced{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-wide)}.form-label-enhanced{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);letter-spacing:var(--letter-spacing-normal)}@media(max-resolution:1.5dppx){.text-dpi-standard{-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;text-rendering:optimizeSpeed}}@media(min-resolution:1.5dppx){.text-dpi-high{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.text-enhanced,.text-crisp,.text-ultra-crisp{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media(min-resolution:2.5dppx){.text-dpi-ultra{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision;font-feature-settings:"kern" 1,"liga" 1}.text-enhanced,.text-crisp,.text-ultra-crisp,.text-summary{font-weight:calc(var(--font-weight-normal) + 50);letter-spacing:.01em}}.text-dpi-adaptive{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}@media(max-resolution:1.5dppx){.text-dpi-adaptive{-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}}@media(min-resolution:2dppx){.text-dpi-adaptive{text-rendering:geometricPrecision;font-feature-settings:"kern" 1,"liga" 1}}@supports (-webkit-font-smoothing: antialiased){.text-webkit-optimized{-webkit-font-smoothing:antialiased;-webkit-text-stroke:.01em transparent}}@-moz-document url-prefix(){.text-firefox-optimized{-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}}@supports (-ms-high-contrast: active){.text-edge-optimized{text-rendering:optimizeLegibility;font-feature-settings:"kern" 1}}.text-gpu-accelerated{transform:translateZ(0);will-change:transform;backface-visibility:hidden}.text-cache-optimized{contain:style layout;content-visibility:auto;contain-intrinsic-size:0 1.2em}.text-performance-optimized{contain:layout style;will-change:auto;transform:translateZ(0)}.text-container-stable{contain:layout;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.debug-text-boundaries{outline:1px solid rgba(255,0,0,.3);background:#ffff001a}.debug-font-info:after{content:attr(data-font-size) " / " attr(data-line-height);position:absolute;top:-1.5em;left:0;font-size:.75rem;color:red;background:#fff;padding:2px 4px;border:1px solid red;z-index:9999}html{font-family:var(--font-family-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif);scroll-behavior:smooth}body,p,span,div,h1,h2,h3,h4,h5,h6,button,input,textarea,select,label{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.summary,.info-summary,.text-summary,[class*=summary]{@apply text-summary;}button{@apply btn-text-enhanced;}nav,nav a,.nav-item{@apply nav-text-enhanced;}.modal,.modal-content,[role=dialog]{@apply modal-text-enhanced;}label,.form-label{@apply form-label-enhanced;}.tooltip,[role=tooltip]{@apply tooltip-text-enhanced;}*,*:before,*:after{transform:translateZ(0);will-change:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--color-gold-primary);border-radius:var(--radius-full);transition:background var(--animation-duration-fast) ease}::-webkit-scrollbar-thumb:hover{background:var(--color-gold-accent)}::selection{background:var(--color-gold-glow);color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-gold-primary);outline-offset:2px;border-radius:var(--radius-sm)}:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in var(--animation-duration-normal) ease-out}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.animate-slide-in-right{animation:slide-in-right var(--animation-duration-normal) var(--animation-easing-spring)}@keyframes scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.animate-scale-in{animation:scale-in var(--animation-duration-normal) var(--animation-easing-spring)}.high-contrast{--color-text-primary: #000000;--color-text-secondary: #333333;--color-bg-primary: #ffffff;--color-bg-secondary: #f5f5f5;--color-border: #000000;--color-link: #0000ff;--color-link-hover: #000080;--color-button-bg: #000000;--color-button-text: #ffffff;--color-focus: #ff0000}.high-contrast.dark{--color-text-primary: #ffffff;--color-text-secondary: #cccccc;--color-bg-primary: #000000;--color-bg-secondary: #1a1a1a;--color-border: #ffffff;--color-link: #00ffff;--color-link-hover: #0080ff;--color-button-bg: #ffffff;--color-button-text: #000000;--color-focus: #ffff00}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body{font-size:var(--base-font-size, 1rem)}.enhanced-focus *:focus,.enhanced-focus *:focus-visible{outline:3px solid var(--color-focus, #0066cc)!important;outline-offset:2px!important;border-radius:4px!important;box-shadow:0 0 0 1px var(--color-focus, #0066cc)!important}.enhanced-focus button:focus,.enhanced-focus input:focus,.enhanced-focus textarea:focus,.enhanced-focus select:focus{outline:3px solid var(--color-focus, #0066cc)!important;outline-offset:2px!important;box-shadow:0 0 8px #0066cc4d!important}.keyboard-navigation [tabindex="-1"]:focus{outline:none}.keyboard-navigation button,.keyboard-navigation input,.keyboard-navigation textarea,.keyboard-navigation select,.keyboard-navigation a,.keyboard-navigation [role=button],.keyboard-navigation [role=link]{position:relative}.keyboard-navigation button:focus:after,.keyboard-navigation input:focus:after,.keyboard-navigation textarea:focus:after,.keyboard-navigation select:focus:after,.keyboard-navigation a:focus:after,.keyboard-navigation [role=button]:focus:after,.keyboard-navigation [role=link]:focus:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid var(--color-focus, #0066cc);border-radius:6px;pointer-events:none;z-index:1000}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.skip-link{position:absolute;top:-40px;left:6px;background:var(--color-button-bg, #000000);color:var(--color-button-text, #ffffff);padding:8px;text-decoration:none;border-radius:4px;z-index:10000;transition:top .3s}.skip-link:focus{top:6px}.high-contrast img{filter:contrast(1.2) brightness(1.1)}.high-contrast .shadow-lg,.high-contrast .shadow-xl,.high-contrast .shadow-2xl{box-shadow:0 0 0 2px var(--color-border)!important}.high-contrast .bg-gradient-to-r,.high-contrast .bg-gradient-to-l,.high-contrast .bg-gradient-to-t,.high-contrast .bg-gradient-to-b{background:var(--color-bg-primary)!important;border:2px solid var(--color-border)!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--color-text-primary: #000000;--color-bg-primary: #ffffff;--color-border: #000000}.dark{--color-text-primary: #ffffff;--color-bg-primary: #000000;--color-border: #ffffff}}@media(prefers-reduced-data:reduce){.animate-spin,.animate-pulse,.animate-bounce{animation:none!important}}.high-contrast .fixed.inset-0{background:#000c!important}.high-contrast .dark .fixed.inset-0{background:#fffc!important}.high-contrast [role=tooltip]{background:var(--color-bg-primary)!important;color:var(--color-text-primary)!important;border:2px solid var(--color-border)!important}
