*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:var(--color-text);background:var(--color-bg);min-height:100vh;overflow-x:hidden}:root{--color-primary: hsl(250, 98%, 62%);--color-primary-light: hsl(250, 98%, 72%);--color-primary-dark: hsl(250, 98%, 52%);--color-secondary: hsl(180, 90%, 55%);--color-secondary-light: hsl(180, 90%, 65%);--color-accent: hsl(330, 98%, 65%);--color-accent-light: hsl(330, 98%, 75%);--color-success: hsl(142, 85%, 50%);--color-warning: hsl(45, 100%, 55%);--color-error: hsl(4, 98%, 65%);--color-info: hsl(199, 98%, 55%);--gradient-primary: linear-gradient(135deg, hsl(250, 98%, 62%) 0%, hsl(280, 98%, 62%) 100%);--gradient-secondary: linear-gradient(135deg, hsl(180, 90%, 55%) 0%, hsl(200, 90%, 65%) 100%);--gradient-accent: linear-gradient(135deg, hsl(330, 98%, 65%) 0%, hsl(350, 98%, 65%) 100%);--gradient-dark: linear-gradient(135deg, hsl(240, 25%, 15%) 0%, hsl(240, 25%, 25%) 100%);--color-bg: hsl(240, 25%, 10%);--color-bg-elevated: hsl(240, 25%, 14%);--color-bg-secondary: hsl(240, 25%, 18%);--color-surface: hsl(240, 20%, 16%);--color-surface-hover: hsl(240, 20%, 22%);--color-text: hsl(0, 0%, 100%);--color-text-secondary: hsl(0, 0%, 88%);--color-text-tertiary: hsl(0, 0%, 72%);--color-border: hsla(240, 20%, 45%, .5);--color-border-hover: hsla(240, 20%, 60%, .7);--color-success-rgb: 52, 211, 153;--color-warning-rgb: 251, 191, 36;--color-error-rgb: 239, 68, 68;--glass-bg: hsla(240, 25%, 18%, .85);--glass-border: hsla(0, 0%, 100%, .15);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .45);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-md: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 1.875rem;--font-4xl: 2.25rem;--font-5xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 20px -5px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 30px -8px rgba(0, 0, 0, .25);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .35);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}h1,h2,h3,h4,h5,h6{font-family:Outfit,Inter,sans-serif;font-weight:var(--font-bold);line-height:1.2;color:var(--color-text);margin-bottom:var(--space-md)}h1{font-size:var(--font-4xl);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:var(--font-3xl)}h3{font-size:var(--font-2xl)}h4{font-size:var(--font-xl)}p{margin-bottom:var(--space-md);color:var(--color-text-secondary)}a{color:var(--color-primary-light);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-lg)}.glass{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-xl);border:1.5px solid var(--color-border);box-shadow:var(--shadow-md);transition:border-color var(--transition-base),box-shadow var(--transition-base);position:relative;will-change:border-color,box-shadow}.card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg)}.btn-outline{background:transparent;color:var(--color-text);border:1.5px solid var(--color-border)}.btn-outline:hover{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary-light)}.btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--font-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-size:var(--font-base);font-weight:var(--font-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 14px rgba(72,39,236,.39)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(72,39,236,.5)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover)}.btn-accent{background:var(--gradient-accent);color:#fff;box-shadow:0 4px 14px rgba(238,47,143,.39)}.btn-accent:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(238,47,143,.5)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.input{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--font-base);font-family:inherit;color:var(--color-text);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(72,39,236,.1)}.textarea{min-height:120px;resize:vertical;font-family:inherit}.badge{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);font-size:var(--font-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.badge-primary{background:rgba(72,39,236,.2);color:var(--color-primary-light)}.badge-success{background:rgba(33,196,93,.2);color:var(--color-success)}.badge-warning{background:rgba(231,176,8,.2);color:var(--color-warning)}.badge-error{background:rgba(244,64,52,.2);color:var(--color-error)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn var(--transition-base) ease-out}.animate-slideIn{animation:slideInFromRight var(--transition-base) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-surface);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-surface-hover)}@media (max-width: 768px){html{font-size:14px}.container{padding:0 var(--space-md)}h1{font-size:var(--font-3xl)}h2{font-size:var(--font-2xl)}}.skeleton{background:linear-gradient(90deg,var(--color-surface) 0%,var(--color-surface-hover) 50%,var(--color-surface) 100%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.range-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:transparent;outline:none;cursor:pointer;transition:background .2s}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--gradient-primary);cursor:grab;border:2px solid var(--color-text);box-shadow:0 2px 8px rgba(0,0,0,.4);transition:transform .15s ease,box-shadow .15s ease}.range-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 2px 12px rgba(99,102,241,.6)}.range-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.15)}.range-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--gradient-primary);cursor:grab;border:2px solid var(--color-text);box-shadow:0 2px 8px rgba(0,0,0,.4);transition:transform .15s ease,box-shadow .15s ease}.range-slider::-moz-range-thumb:hover{transform:scale(1.2)}.range-slider::-moz-range-track{height:6px;border-radius:3px;background:var(--color-bg-secondary)}.range-slider:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}@keyframes soundWave{0%,to{height:20%;opacity:.5}50%{height:100%;opacity:1}}.animate-sound-wave{animation:soundWave .5s ease-in-out infinite}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(1.3);opacity:0}}.animate-pulse-ring:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:inherit;border:2px solid currentColor;animation:pulse-ring 1.5s ease-out infinite}@keyframes progress-bar{0%{width:0%}50%{width:70%}to{width:100%}}.animate-progress-bar{animation:progress-bar 2s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.audio-fade-in{animation:fadeIn .3s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.btn-lift{transition:transform .2s ease,box-shadow .2s ease}.btn-lift:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(99,102,241,.3)}.voice-btn-active{background:var(--color-primary);color:#fff;box-shadow:0 4px 12px rgba(99,102,241,.4)}.cache-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;background:rgba(34,197,94,.2);color:#22c55e;border:1px solid rgba(34,197,94,.3)}.neural-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;background:linear-gradient(135deg,rgba(99,102,241,.2),rgba(168,85,247,.2));color:#a855f7;border:1px solid rgba(168,85,247,.3)}
