:root{--brand-primary: #6366f1;--brand-secondary: #8b5cf6;--brand-accent: #06b6d4;--indigo-50: #eef2ff;--indigo-100: #e0e7ff;--indigo-200: #c7d2fe;--indigo-300: #a5b4fc;--indigo-400: #818cf8;--indigo-500: #6366f1;--indigo-600: #4f46e5;--indigo-700: #4338ca;--indigo-800: #3730a3;--indigo-900: #312e81;--purple-50: #faf5ff;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-300: #d8b4fe;--purple-400: #c084fc;--purple-500: #a855f7;--purple-600: #9333ea;--purple-700: #7c3aed;--purple-800: #6b21a8;--purple-900: #581c87;--cyan-50: #ecfeff;--cyan-100: #cffafe;--cyan-200: #a5f3fc;--cyan-300: #67e8f9;--cyan-400: #22d3ee;--cyan-500: #06b6d4;--cyan-600: #0891b2;--cyan-700: #0e7490;--cyan-800: #155e75;--cyan-900: #164e63;--success: #10b981;--success-light: #6ee7b7;--success-dark: #047857;--warning: #f59e0b;--warning-light: #fcd34d;--warning-dark: #d97706;--error: #ef4444;--error-light: #fca5a5;--error-dark: #dc2626;--info: #3b82f6;--info-light: #93c5fd;--info-dark: #1d4ed8;--animate-fast: .15s;--animate-normal: .25s;--animate-slow: .4s;--animate-slower: .6s;--ease-out-cubic: cubic-bezier(.33, 1, .68, 1);--ease-in-cubic: cubic-bezier(.32, 0, .67, 0);--ease-in-out-cubic: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--glass-light: rgba(255, 255, 255, .1);--glass-light-border: rgba(255, 255, 255, .2);--glass-light-strong: rgba(255, 255, 255, .15);--glass-dark: rgba(0, 0, 0, .1);--glass-dark-border: rgba(255, 255, 255, .1);--glass-dark-strong: rgba(0, 0, 0, .2);--glass-blur: blur(20px);--glass-blur-strong: blur(40px);--glass-blur-subtle: blur(10px);--space-0: 0;--space-px: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--space-36: 9rem;--space-40: 10rem;--space-44: 11rem;--space-48: 12rem;--space-52: 13rem;--space-56: 14rem;--space-60: 15rem;--space-64: 16rem;--space-72: 18rem;--space-80: 20rem;--space-96: 24rem;--radius-none: 0;--radius-sm: .125rem;--radius: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--text-9xl: 8rem;--font-thin: 100;--font-extralight: 200;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--font-black: 900;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .05);--shadow-none: 0 0 #0000;--shadow-indigo: 0 10px 15px -3px rgba(99, 102, 241, .1), 0 4px 6px -4px rgba(99, 102, 241, .1);--shadow-purple: 0 10px 15px -3px rgba(139, 92, 246, .1), 0 4px 6px -4px rgba(139, 92, 246, .1);--shadow-cyan: 0 10px 15px -3px rgba(6, 182, 212, .1), 0 4px 6px -4px rgba(6, 182, 212, .1);--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50;--z-auto: auto}.btn-system{--btn-padding-x: var(--space-4);--btn-padding-y: var(--space-2);--btn-font-size: var(--text-sm);--btn-font-weight: var(--font-medium);--btn-border-radius: var(--radius-lg);--btn-transition: all var(--animate-fast) var(--ease-out-cubic)}.btn-sm{--btn-padding-x: var(--space-3);--btn-padding-y: var(--space-1-5);--btn-font-size: var(--text-xs)}.btn-lg{--btn-padding-x: var(--space-6);--btn-padding-y: var(--space-3);--btn-font-size: var(--text-base)}.card-system{--card-padding: var(--space-6);--card-border-radius: var(--radius-xl);--card-border-width: 1px;--card-shadow: var(--shadow-sm);--card-transition: all var(--animate-normal) var(--ease-out-cubic)}.input-system{--input-padding-x: var(--space-3);--input-padding-y: var(--space-2);--input-font-size: var(--text-sm);--input-border-radius: var(--radius-lg);--input-border-width: 1px;--input-transition: all var(--animate-fast) var(--ease-out-cubic)}@media (max-width: 640px){:root{--space-4: .875rem;--space-6: 1.25rem;--space-8: 1.75rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.25rem;--card-padding: var(--space-4);--card-border-radius: var(--radius-lg)}}@media (max-width: 480px){:root{--space-4: .75rem;--space-6: 1rem;--card-padding: var(--space-3)}}.glass-card{background:var(--glass-light);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-light-border);border-radius:var(--radius-2xl)}[data-theme=dark] .glass-card{background:var(--glass-dark);border-color:var(--glass-dark-border)}.gradient-primary{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-secondary) 100%)}.gradient-accent{background:linear-gradient(135deg,var(--brand-accent) 0%,var(--brand-primary) 100%)}.text-gradient{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.focus-ring:focus{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-lg)}.hover-lift{transition:transform var(--animate-fast) var(--ease-out-cubic)}.hover-lift:hover{transform:translateY(-2px)}@media (prefers-reduced-motion: reduce){:root{--animate-fast: 0ms;--animate-normal: 0ms;--animate-slow: 0ms;--animate-slower: 0ms}.hover-lift:hover{transform:none}.hover-glow:hover{box-shadow:none}}@media (max-width: 320px){:root{--space-4: .75rem;--space-6: 1rem;--text-base: .875rem;--card-padding: var(--space-3)}}@media (min-width: 768px) and (max-width: 1023px){:root{--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--text-base: 1rem}.tablet-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6)}}@media (min-width: 1024px){:root{--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem}.desktop-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-8)}}.touch-target{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;touch-action:manipulation}.touch-target-large{min-height:56px;min-width:56px}.safe-area-padding{padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.mobile-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}.mobile-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-lg, .5rem);padding:clamp(1rem,4vw,1.5rem);margin:clamp(.5rem,2vw,1rem) 0;box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));transition:all var(--animate-normal, .25s) var(--ease-out-cubic, cubic-bezier(.33, 1, .68, 1))}.mobile-card:hover{box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transform:translateY(-1px)}.responsive-text{font-size:clamp(.875rem,2.5vw,1.125rem);line-height:1.5}.responsive-heading{font-size:clamp(1.25rem,5vw,2rem);line-height:1.2;font-weight:600}.enhanced-focus:focus{outline:2px solid var(--brand-primary, #6366f1);outline-offset:2px;border-radius:var(--radius-md, .375rem)}@media print{.no-print{display:none!important}.print-friendly{background:#fff!important;color:#000!important;box-shadow:none!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@keyframes glow{0%,to{box-shadow:0 0 20px rgba(99,102,241,.2)}50%{box-shadow:0 0 40px rgba(99,102,241,.4)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateY(0)}40%,43%{transform:translateY(-8px)}70%{transform:translateY(-4px)}90%{transform:translateY(-2px)}}.animate-fade-in{animation:fadeIn var(--animate-normal) var(--ease-out-cubic) forwards}.animate-slide-up{animation:slideUp var(--animate-normal) var(--ease-out-cubic) forwards}.animate-slide-down{animation:slideDown var(--animate-normal) var(--ease-out-cubic) forwards}.animate-slide-in-left{animation:slideInLeft var(--animate-normal) var(--ease-out-cubic) forwards}.animate-slide-in-right{animation:slideInRight var(--animate-normal) var(--ease-out-cubic) forwards}.animate-scale-in{animation:scaleIn var(--animate-fast) var(--ease-out-cubic) forwards}.animate-scale-out{animation:scaleOut var(--animate-fast) var(--ease-in-cubic) forwards}.animate-pulse{animation:pulse 2s var(--ease-in-out-cubic) infinite}.animate-glow{animation:glow 2s var(--ease-in-out-cubic) infinite alternate}.animate-float{animation:float 3s var(--ease-in-out-cubic) infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s var(--ease-bounce)}.transition-all{transition:all var(--animate-normal) var(--ease-out-cubic)}.transition-fast{transition:all var(--animate-fast) var(--ease-out-cubic)}.transition-slow{transition:all var(--animate-slow) var(--ease-out-cubic)}.transition-colors{transition:color var(--animate-fast) var(--ease-out-cubic),background-color var(--animate-fast) var(--ease-out-cubic),border-color var(--animate-fast) var(--ease-out-cubic)}.transition-transform{transition:transform var(--animate-normal) var(--ease-out-cubic)}.transition-opacity{transition:opacity var(--animate-fast) var(--ease-out-cubic)}.hover-lift{transition:transform var(--animate-fast) var(--ease-out-cubic),box-shadow var(--animate-fast) var(--ease-out-cubic)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--animate-fast) var(--ease-out-cubic)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--animate-normal) var(--ease-out-cubic)}.hover-glow:hover{box-shadow:var(--shadow-indigo)}.hover-brightness{transition:filter var(--animate-fast) var(--ease-out-cubic)}.hover-brightness:hover{filter:brightness(1.1)}.glass{background:var(--glass-light);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-light-border);transition:all var(--animate-normal) var(--ease-out-cubic)}[data-theme=dark] .glass{background:var(--glass-dark);border-color:var(--glass-dark-border)}.glass-strong{background:var(--glass-light-strong);backdrop-filter:var(--glass-blur-strong)}[data-theme=dark] .glass-strong{background:var(--glass-dark-strong)}.glass-subtle{backdrop-filter:var(--glass-blur-subtle)}.loading-shimmer{position:relative;overflow:hidden;background:var(--bg-card)}.loading-shimmer:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s ease-in-out infinite}[data-theme=dark] .loading-shimmer:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent)}.loading-dots:after{content:"...";animation:loadingDots 1.5s steps(4,end) infinite}@keyframes loadingDots{0%,20%{color:transparent;text-shadow:.25em 0 0 transparent,.5em 0 0 transparent}40%{color:currentColor;text-shadow:.25em 0 0 transparent,.5em 0 0 transparent}60%{text-shadow:.25em 0 0 currentColor,.5em 0 0 transparent}80%,to{text-shadow:.25em 0 0 currentColor,.5em 0 0 currentColor}}.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.1) 25%,rgba(255,255,255,.15),rgba(255,255,255,.1) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}[data-theme=dark] .skeleton{background:linear-gradient(90deg,rgba(255,255,255,.05) 25%,rgba(255,255,255,.1),rgba(255,255,255,.05) 75%);background-size:200% 100%}.delay-75{animation-delay:75ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.stagger-children>*{animation-delay:calc(var(--stagger-delay, .1s) * var(--index, 0))}.stagger-children>*:nth-child(1){--index: 1}.stagger-children>*:nth-child(2){--index: 2}.stagger-children>*:nth-child(3){--index: 3}.stagger-children>*:nth-child(4){--index: 4}.stagger-children>*:nth-child(5){--index: 5}.stagger-children>*:nth-child(6){--index: 6}.stagger-children>*:nth-child(7){--index: 7}.stagger-children>*:nth-child(8){--index: 8}.focus-ring{outline:none;position:relative;transition:all var(--animate-fast) var(--ease-out-cubic)}.focus-ring:focus:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:2px solid var(--brand-primary);border-radius:inherit;animation:scaleIn var(--animate-fast) var(--ease-out-cubic)}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.will-change-auto{will-change:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-pulse,.animate-glow,.animate-float,.animate-spin,.loading-shimmer:before,.skeleton{animation:none!important}}@media print{*,*:before,*:after{animation:none!important;transition:none!important;background:transparent!important;box-shadow:none!important}}:root{--color-primary: #6366f1;--color-primary-50: #eef2ff;--color-primary-100: #e0e7ff;--color-primary-200: #c7d2fe;--color-primary-300: #a5b4fc;--color-primary-400: #818cf8;--color-primary-500: #6366f1;--color-primary-600: #4f46e5;--color-primary-700: #4338ca;--color-primary-800: #3730a3;--color-primary-900: #312e81;--color-secondary: #8b5cf6;--color-accent: #06b6d4;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--bg-primary: var(--color-gray-50);--bg-secondary: #ffffff;--bg-tertiary: var(--color-gray-100);--bg-card: #ffffff;--bg-overlay: rgba(15, 23, 42, .6);--text-primary: var(--color-gray-900);--text-secondary: var(--color-gray-600);--text-tertiary: var(--color-gray-500);--text-accent: var(--color-primary-600);--text-inverse: #ffffff;--interactive-primary: var(--color-primary-600);--interactive-hover: var(--color-primary-700);--interactive-active: var(--color-primary-800);--interactive-disabled: var(--color-gray-300);--border-primary: var(--color-gray-200);--border-secondary: var(--color-gray-100);--border-focus: var(--color-primary-500);--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--glass-bg: rgba(255, 255, 255, .1);--glass-border: 1px solid rgba(255, 255, 255, .2);--glass-backdrop: blur(20px) saturate(180%);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-3xl: 24px;--radius-full: 9999px;--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--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-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-px: 1px;--space-0: 0px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--duration-75: 75ms;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-500: .5s;--duration-700: .7s;--duration-1000: 1s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50}[data-theme=dark]{--bg-primary: #0a0b0d;--bg-secondary: #1a1b1e;--bg-tertiary: #222429;--bg-card: #1e2024;--bg-overlay: rgba(0, 0, 0, .8);--text-primary: #ffffff;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--text-accent: var(--color-primary-400);--text-inverse: var(--color-gray-900);--border-primary: var(--color-gray-700);--border-secondary: var(--color-gray-800);--glass-bg: rgba(30, 32, 36, .8);--glass-border: 1px solid rgba(255, 255, 255, .1);--interactive-disabled: var(--color-gray-600)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%;tab-size:4}body{margin:0;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--duration-200) var(--ease-out),color var(--duration-200) var(--ease-out)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full);border:2px solid transparent;background-clip:content-box;transition:background var(--duration-200) var(--ease-out)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400);background-clip:content-box}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-gray-600);background-clip:content-box}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500);background-clip:content-box}::selection{background-color:var(--color-primary-200);color:var(--color-primary-900)}[data-theme=dark] ::selection{background-color:var(--color-primary-700);color:var(--color-primary-100)}:focus{outline:2px solid var(--border-focus);outline-offset:2px}.js-focus-visible :focus:not(.focus-visible){outline:none}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin:0;color:var(--text-secondary)}a{color:var(--text-accent);text-decoration:none;transition:color var(--duration-200) var(--ease-out)}a:hover{color:var(--interactive-hover);text-decoration:underline}.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}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop);border:var(--glass-border);border-radius:var(--radius-lg)}.card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-200) var(--ease-out),border-color var(--duration-200) var(--ease-out)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-focus)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-200) var(--ease-out);text-decoration:none;user-select:none}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:var(--interactive-primary);color:var(--text-inverse);border-color:var(--interactive-primary)}.btn-primary:hover:not(:disabled){background:var(--interactive-hover);border-color:var(--interactive-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-focus)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width: 768px){:root{--space-4: .875rem;--space-6: 1.25rem;--space-8: 1.75rem}.btn{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}}@media (prefers-contrast: high){:root{--border-primary: var(--text-primary);--border-secondary: var(--text-secondary)}}@media (prefers-reduced-motion: reduce){:root{--duration-75: 0ms;--duration-100: 0ms;--duration-150: 0ms;--duration-200: 0ms;--duration-300: 0ms;--duration-500: 0ms;--duration-700: 0ms;--duration-1000: 0ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
