:root{--bg-primary: #0a0e17;--bg-secondary: #111827;--bg-tertiary: #1f2937;--bg-card: #1a2234;--bg-card-hover: #243047;--bg-glass: rgba(26, 34, 52, .8);--bg-overlay: rgba(0, 0, 0, .6);--accent-primary: #6366f1;--accent-primary-light: #818cf8;--accent-primary-dark: #4f46e5;--accent-green: #10b981;--accent-green-light: #34d399;--accent-green-dark: #059669;--accent-red: #ef4444;--accent-red-light: #f87171;--accent-red-dark: #dc2626;--accent-blue: #3b82f6;--accent-blue-light: #60a5fa;--accent-blue-dark: #2563eb;--accent-gold: #f59e0b;--accent-gold-light: #fbbf24;--accent-gold-dark: #d97706;--accent-purple: #8b5cf6;--accent-purple-light: #a78bfa;--accent-purple-dark: #7c3aed;--accent-cyan: #06b6d4;--accent-cyan-light: #22d3ee;--accent-cyan-dark: #0891b2;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--text-disabled: #475569;--text-inverse: #0f172a;--border-color: rgba(45, 58, 79, .6);--border-hover: rgba(59, 130, 246, .5);--border-focus: rgba(99, 102, 241, .6);--border-error: rgba(239, 68, 68, .5);--border-success: rgba(16, 185, 129, .5);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--shadow-xl: 0 16px 60px rgba(0, 0, 0, .6);--shadow-glow: 0 0 30px rgba(59, 130, 246, .15);--shadow-glow-primary: 0 0 30px rgba(99, 102, 241, .2);--shadow-glow-success: 0 0 20px rgba(16, 185, 129, .2);--shadow-glow-error: 0 0 20px rgba(239, 68, 68, .2);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--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;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--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-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-4);--space-lg: var(--space-6);--space-xl: var(--space-8);--space-2xl: var(--space-12);--radius-none: 0;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55);--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-tertiary: #e2e8f0;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--bg-glass: rgba(255, 255, 255, .8);--bg-overlay: rgba(0, 0, 0, .4);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-disabled: #94a3b8;--text-inverse: #f8fafc;--border-color: rgba(148, 163, 184, .3);--border-hover: rgba(59, 130, 246, .4);--border-focus: rgba(99, 102, 241, .5);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 20px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 60px rgba(0, 0, 0, .15);--shadow-glow: 0 0 30px rgba(59, 130, 246, .1);--shadow-glow-primary: 0 0 30px rgba(99, 102, 241, .15)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;font-size:16px;scroll-behavior:smooth}ul,ol{list-style:none}body{min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6,button,input,label{line-height:1.25}h1,h2,h3,h4,h5,h6{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}table{border-collapse:collapse;border-spacing:0}fieldset{border:none}legend{padding:0}summary{cursor:pointer}dialog{padding:0;border:none}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent-primary, #6366f1);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background:#6366f14d;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary, #111827);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-color, rgba(45, 58, 79, .6));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted, #64748b)}*{scrollbar-width:thin;scrollbar-color:var(--border-color, rgba(45, 58, 79, .6)) var(--bg-secondary, #111827)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--accent-primary, #6366f1),0 0 10px var(--accent-primary, #6366f1),0 0 15px var(--accent-primary, #6366f1)}50%{box-shadow:0 0 10px var(--accent-primary, #6366f1),0 0 20px var(--accent-primary, #6366f1),0 0 30px var(--accent-primary, #6366f1)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes progress{0%{width:0%}to{width:100%}}.animate-fadeIn{animation:fadeIn var(--transition-normal) ease forwards}.animate-fadeOut{animation:fadeOut var(--transition-normal) ease forwards}.animate-fadeInUp{animation:fadeInUp var(--transition-slow) ease forwards}.animate-fadeInDown{animation:fadeInDown var(--transition-slow) ease forwards}.animate-fadeInLeft{animation:fadeInLeft var(--transition-slow) ease forwards}.animate-fadeInRight{animation:fadeInRight var(--transition-slow) ease forwards}.animate-scaleIn{animation:scaleIn var(--transition-normal) ease forwards}.animate-scaleOut{animation:scaleOut var(--transition-normal) ease forwards}.animate-popIn{animation:popIn var(--transition-slow) cubic-bezier(.68,-.55,.265,1.55) forwards}.animate-slideUp{animation:slideUp var(--transition-slow) ease forwards}.animate-slideDown{animation:slideDown var(--transition-slow) ease forwards}.animate-slideLeft{animation:slideLeft var(--transition-slow) ease forwards}.animate-slideRight{animation:slideRight var(--transition-slow) ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-card) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.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}.duration-75{animation-duration:75ms}.duration-100{animation-duration:.1s}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.duration-1000{animation-duration:1s}.transition-none{transition:none}.transition-all{transition:all var(--transition-normal)}.transition-colors{transition:color,background-color,border-color var(--transition-fast)}.transition-opacity{transition:opacity var(--transition-normal)}.transition-transform{transition:transform var(--transition-normal)}.transition-shadow{transition:box-shadow var(--transition-normal)}.hover-lift{transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--transition-normal)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--transition-normal)}.hover-glow:hover{box-shadow:var(--shadow-glow-primary)}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);background-image:radial-gradient(ellipse at 20% 10%,rgba(99,102,241,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 90%,rgba(139,92,246,.06) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(6,182,212,.04) 0%,transparent 70%);background-attachment:fixed}[data-theme=light] body{background-image:radial-gradient(ellipse at 20% 10%,rgba(99,102,241,.05) 0%,transparent 50%),radial-gradient(ellipse at 80% 90%,rgba(139,92,246,.04) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(6,182,212,.03) 0%,transparent 70%)}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}p{color:var(--text-secondary);line-height:var(--leading-relaxed)}a{color:var(--accent-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-blue-light)}small{font-size:var(--text-sm);color:var(--text-muted)}code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-0-5) var(--space-1);background:var(--bg-secondary);border-radius:var(--radius-sm)}.mono{font-family:var(--font-mono)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-green{color:var(--accent-green)}.text-red{color:var(--accent-red)}.text-blue{color:var(--accent-blue)}.text-gold{color:var(--accent-gold)}.text-purple{color:var(--accent-purple)}.text-cyan{color:var(--accent-cyan)}.bg-primary{background:var(--bg-primary)}.bg-secondary{background:var(--bg-secondary)}.bg-card{background:var(--bg-card)}.bg-green{background:var(--accent-green)}.bg-red{background:var(--accent-red)}.bg-blue{background:var(--accent-blue)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.w-full{width:100%}.w-auto{width:auto}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-full{max-width:100%}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);transition:all var(--transition-normal)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.glass{background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color)}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-card) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@media(max-width:768px){html{font-size:14px}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-xl)}}@media(max-width:480px){html{font-size:13px}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:var(--space-xl) 0}.container{max-width:1800px;margin:0 auto;padding:0 var(--space-xl)}.error-banner{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--accent-red);margin-bottom:var(--space-xl)}.error-banner button{margin-left:auto;padding:.5rem 1rem;background:#ef444433;border:1px solid var(--accent-red);border-radius:var(--radius-sm);color:var(--accent-red);cursor:pointer;font-weight:600;transition:all var(--transition-fast)}.error-banner button:hover{background:var(--accent-red);color:#fff}.timestamp{text-align:center;color:var(--text-muted);font-size:.85rem;margin-top:var(--space-xl);font-family:var(--font-mono);display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.cache-badge{background:#f59e0b33;color:var(--accent-gold);padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}@media(max-width:768px){.container{padding:0 var(--space-md)}.main-content{padding:var(--space-lg) 0}}.login-required{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-xl)}.login-required-content{text-align:center;max-width:400px}.login-required-icon{font-size:4rem;margin-bottom:var(--space-lg);animation:pulse 2s infinite ease-in-out}.login-required h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:var(--space-md)}.login-required p{color:var(--text-secondary);margin-bottom:var(--space-xl);line-height:1.6}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:var(--font-semibold);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);border:1px solid transparent;outline:none;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative}.btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-sm{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm);min-height:32px}.btn-md{padding:var(--space-2-5) var(--space-4);font-size:var(--text-sm);min-height:40px}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base);min-height:48px}.btn-primary{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-purple) 100%);color:#fff;box-shadow:0 4px 15px #6366f14d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #6366f166}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 10px #6366f14d}.btn-secondary{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--accent-primary)}.btn-secondary:active:not(:disabled){background:var(--bg-secondary)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-card);color:var(--text-primary)}.btn-ghost:active:not(:disabled){background:var(--bg-secondary)}.btn-danger{background:var(--accent-red);color:#fff;box-shadow:0 4px 15px #ef44444d}.btn-danger:hover:not(:disabled){background:var(--accent-red-dark);transform:translateY(-2px);box-shadow:0 6px 25px #ef444466}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-success{background:var(--accent-green);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-success:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-2px);box-shadow:0 6px 25px #10b98166}.btn-success:active:not(:disabled){transform:translateY(0)}.btn-full{width:100%}.btn-loading .btn-content{opacity:0}.btn-spinner{position:absolute;display:flex;align-items:center;justify-content:center}.btn-spinner svg{width:1.25em;height:1.25em}.btn-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-icon svg{width:1em;height:1em}.btn-icon-left{margin-right:var(--space-1)}.btn-icon-right{margin-left:var(--space-1)}.btn-content{display:flex;align-items:center;gap:var(--space-2)}.header{padding:var(--space-md) var(--space-xl);background:linear-gradient(180deg,rgba(59,130,246,.05) 0%,transparent 100%);border-bottom:1px solid var(--border-color)}.header-content{max-width:1800px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--space-md)}.header-menu-btn{display:none;padding:var(--space-2);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.header-menu-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--accent-blue)}.header-brand{display:flex;align-items:center;gap:var(--space-sm)}.brand-logo{display:flex;align-items:center;justify-content:center}.brand-logo svg{width:36px;height:36px}.brand-text h1{font-size:1.25rem;font-weight:700;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-blue) 50%,var(--accent-green) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap}.header-indicators{display:flex;align-items:center;gap:var(--space-sm);flex:1;justify-content:center}.indicator-pill{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.indicator-pill:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);transform:translateY(-1px)}.pill-icon{font-size:.9rem;line-height:1}.pill-icon.purple,.pill-icon.gold,.pill-icon.blue{opacity:.9}.pill-label{color:var(--text-primary)}.indicator-details{max-width:1800px;margin:var(--space-md) auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.indicator-detail-item{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm);background:var(--bg-card);border-radius:var(--radius-md)}.detail-icon{font-size:1.25rem;line-height:1;flex-shrink:0}.detail-icon.purple,.detail-icon.gold,.detail-icon.blue{opacity:.9}.detail-content{display:flex;flex-direction:column;gap:.15rem}.detail-content strong{font-size:.85rem;color:var(--text-primary)}.detail-content span{font-size:.75rem;color:var(--text-muted);line-height:1.4}.header-actions{display:flex;align-items:center;gap:var(--space-sm)}.header-theme-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.header-theme-btn:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);transform:scale(1.05)}.header-theme-btn:active{transform:scale(.95)}.theme-icon{font-size:1.1rem;line-height:1}.header-user{display:flex;align-items:center;position:relative}.header-avatar-btn{padding:0;background:none;border:none;cursor:pointer;border-radius:var(--radius-full);transition:all var(--transition-normal)}.header-avatar-btn:hover{transform:scale(1.05)}.header-avatar-btn:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.header-avatar{width:36px;height:36px;border-radius:var(--radius-full);border:2px solid var(--border-color);transition:all var(--transition-normal)}.header-avatar-btn:hover .header-avatar{border-color:var(--accent-primary)}.header-user-menu{position:absolute;top:calc(100% + var(--space-sm));right:0;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:100;animation:fadeIn .15s ease-out;overflow:hidden}.user-menu-header{padding:var(--space-md);border-bottom:1px solid var(--border-color)}.user-menu-name{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.user-menu-email{display:block;font-size:.85rem;color:var(--text-muted)}.user-menu-divider{height:1px;background:var(--border-color)}.user-menu-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);background:none;border:none;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all var(--transition-fast);text-align:left}.user-menu-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.user-menu-icon{font-size:1rem}.header-login-btn{white-space:nowrap}@media(max-width:1024px){.indicator-details{grid-template-columns:1fr}.header-indicators{display:none}}@media(max-width:768px){.header{padding:var(--space-md)}.header-content{flex-wrap:wrap}.header-menu-btn{display:flex;order:-1}.header-brand{flex:1;min-width:0}.brand-logo svg{width:28px;height:28px}.brand-text h1{font-size:1rem}.header-indicators{display:none}.header-actions{gap:var(--space-xs)}.header-theme-btn{width:32px;height:32px}.theme-icon{font-size:1rem}.header-avatar{width:32px;height:32px}.indicator-details{gap:var(--space-sm)}.indicator-detail-item{padding:var(--space-xs)}}.sidebar-backdrop{display:none;position:fixed;inset:0;background:var(--bg-overlay);z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.sidebar-backdrop.visible{opacity:1;visibility:visible}.sidebar{display:flex;flex-direction:column;width:280px;height:100%;background:var(--bg-secondary);border-right:1px solid var(--border-color);overflow-y:auto}.sidebar-header{display:none;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--border-color)}.sidebar-header h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.sidebar-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sidebar-close:hover{background:var(--bg-card);color:var(--text-primary)}.sidebar-nav{flex:1;padding:var(--space-md)}.sidebar-filters{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-filter-btn{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);color:var(--text-secondary);text-align:left;cursor:pointer;transition:all var(--transition-normal)}.sidebar-filter-btn:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.sidebar-filter-btn.active{background:var(--bg-card);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:var(--shadow-glow-primary)}.sidebar-filter-btn .filter-icon{font-size:1.25rem;flex-shrink:0}.sidebar-filter-btn .filter-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-0-5)}.sidebar-filter-btn .filter-label{font-size:var(--text-sm);font-weight:var(--font-medium)}.sidebar-filter-btn .filter-description{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-filter-btn.active .filter-description{color:var(--text-secondary)}.filter-badge{display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1-5);background:var(--accent-primary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);color:#fff}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--border-color)}.sidebar-link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-secondary);text-decoration:none;font-size:var(--text-sm);transition:all var(--transition-normal)}.sidebar-link:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--accent-blue)}.sidebar-link-icon{font-size:1.1rem}.sidebar-link svg{margin-left:auto;opacity:.5}@media(min-width:1024px){.sidebar-backdrop{display:none!important}.sidebar{position:relative}}@media(max-width:1023px){.sidebar-backdrop{display:block}.sidebar{position:fixed;top:0;left:0;height:100vh;z-index:var(--z-modal);transform:translate(-100%);transition:transform var(--transition-normal);box-shadow:var(--shadow-xl)}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex}}@media(max-width:640px){.sidebar{width:100%;max-width:320px}.sidebar-filter-btn{padding:var(--space-md) var(--space-sm)}.sidebar-filter-btn .filter-description{display:none}}.layout{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-primary)}.layout-container{display:flex;flex:1;overflow:hidden}.layout-main{flex:1;overflow-y:auto;overflow-x:hidden}.layout-content{max-width:1800px;margin:0 auto;padding:var(--space-lg)}@media(max-width:1023px){.layout-content{padding:var(--space-md)}}@media(max-width:640px){.layout-content{padding:var(--space-sm)}}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap}.filter-tabs{display:flex;gap:var(--space-sm);flex-wrap:wrap}.filter-tab{display:flex;align-items:center;gap:.4rem;padding:.6rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);font-weight:500;font-size:.9rem}.filter-tab:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-hover)}.filter-tab.active{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-color:transparent;color:#fff;box-shadow:0 4px 15px #3b82f64d}.filter-icon{font-size:.9rem}.toolbar-right{display:flex;align-items:center;gap:var(--space-md)}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:.75rem;font-size:.9rem;pointer-events:none}.search-input{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);padding:.6rem 2rem .6rem 2.5rem;border-radius:var(--radius-md);width:220px;font-size:.9rem;outline:none;transition:all var(--transition-fast)}.search-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f633;width:260px}.search-input::placeholder{color:var(--text-muted)}.search-clear{position:absolute;right:.5rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;font-size:.8rem;line-height:1}.search-clear:hover{color:var(--text-primary)}.view-toggle{display:flex;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.view-btn{padding:.6rem .8rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;transition:all var(--transition-fast)}.view-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.view-btn.active{background:var(--accent-blue);color:#fff}.refresh-btn{white-space:nowrap}.stock-count{color:var(--text-muted);font-size:.85rem;white-space:nowrap}.stock-count strong{color:var(--text-primary);font-family:var(--font-mono)}@media(max-width:1200px){.toolbar{flex-direction:column;align-items:stretch}.filter-tabs{justify-content:center}.toolbar-right{justify-content:center;flex-wrap:wrap}}@media(max-width:768px){.filter-tab{padding:.5rem .75rem;font-size:.85rem}.filter-label{display:none}.filter-icon{font-size:1.1rem}.search-input{width:150px}.search-input:focus{width:180px}}.stock-table-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);animation:slideUp .4s ease-out}.stock-table-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) transparent}.stock-table-scroll::-webkit-scrollbar{height:8px}.stock-table-scroll::-webkit-scrollbar-track{background:transparent}.stock-table-scroll::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}.stock-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.stock-table th{text-align:left;padding:var(--space-4) var(--space-3);background:var(--bg-secondary);color:var(--text-secondary);font-weight:var(--font-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:10;transition:all var(--transition-fast)}.stock-table th.sortable{cursor:pointer}.stock-table th.sortable:hover{color:var(--text-primary);background:var(--bg-card-hover)}.stock-table th.sorted{color:var(--accent-blue)}.th-content{display:flex;align-items:center;gap:var(--space-1)}.sort-indicator{color:var(--accent-blue);font-weight:var(--font-bold);transition:transform var(--transition-fast)}.stock-table td{padding:var(--space-3);border-bottom:1px solid var(--border-color);vertical-align:middle;transition:background var(--transition-fast)}.stock-row{animation:fadeInRow .3s ease-out;animation-delay:calc(var(--row-index, 0) * 20ms);animation-fill-mode:both}@keyframes fadeInRow{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stock-row:hover td{background:var(--bg-card-hover)}.stock-row.watched{background:#ef44440d}.stock-row.watched:hover td{background:#ef44441a}.stock-table tr:last-child td{border-bottom:none}.rank-badge{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);font-weight:var(--font-bold);font-size:var(--text-sm);font-family:var(--font-mono);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.rank-badge:hover{transform:scale(1.1)}.rank-badge.gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1a1a1a;box-shadow:0 2px 10px #fbbf2466}.rank-badge.silver{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#1a1a1a;box-shadow:0 2px 10px #d1d5db4d}.rank-badge.bronze{background:linear-gradient(135deg,#d97706,#92400e);color:#fff;box-shadow:0 2px 10px #d977064d}.rank-badge.normal{background:var(--bg-secondary);color:var(--text-secondary)}.symbol-link{display:inline-block;padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-mono);font-weight:var(--font-semibold);color:var(--text-primary);text-decoration:none;transition:all var(--transition-fast)}.symbol-link:hover{background:var(--accent-blue);border-color:var(--accent-blue);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.value{font-family:var(--font-mono);font-weight:var(--font-medium);transition:color var(--transition-fast)}.value.positive{color:var(--accent-green)}.value.negative{color:var(--accent-red)}.percentile-cell{display:flex;align-items:center;gap:var(--space-2)}.percentile-bar{width:60px;height:6px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.percentile-bar.wide{width:80px}.percentile-fill{height:100%;border-radius:var(--radius-full);transition:width .5s cubic-bezier(.4,0,.2,1)}.percentile-fill.high{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-dark))}.percentile-fill.medium{background:linear-gradient(90deg,var(--accent-gold),var(--accent-gold-dark))}.percentile-fill.low{background:linear-gradient(90deg,var(--accent-red),var(--accent-red-dark))}.percentile-value{font-family:var(--font-mono);font-weight:var(--font-semibold);font-size:var(--text-sm);min-width:28px}.percentile-value.high{color:var(--accent-green)}.percentile-value.medium{color:var(--accent-gold)}.percentile-value.low{color:var(--accent-red)}.ibd-breakdown{display:flex;gap:var(--space-1);flex-wrap:wrap}.ibd-pill{font-size:var(--text-xs);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);background:var(--bg-secondary);cursor:help;transition:all var(--transition-fast)}.ibd-pill:hover{transform:scale(1.05)}.ibd-pill.positive{color:var(--accent-green);border:1px solid rgba(16,185,129,.2)}.ibd-pill.negative{color:var(--accent-red);border:1px solid rgba(239,68,68,.2)}.signal-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;transition:all var(--transition-fast)}.signal-badge:hover{transform:scale(1.05)}.signal-badge.elite{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-dark));color:#fff;box-shadow:var(--shadow-glow-success)}.signal-badge.strong{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.3)}.signal-badge.moderate{background:#f59e0b26;color:var(--accent-gold);border:1px solid rgba(245,158,11,.3)}.signal-badge.weak{background:#94a3b826;color:var(--text-secondary);border:1px solid var(--border-color)}.signal-badge.bearish{background:#ef444426;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.watchlist-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;transition:transform var(--transition-fast);padding:var(--space-1);border-radius:var(--radius-full)}.watchlist-btn:hover{transform:scale(1.2);background:var(--bg-secondary)}.watchlist-btn.active{animation:heartbeat .3s ease}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.table-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);color:var(--text-muted)}.empty-icon{font-size:3rem;margin-bottom:var(--space-4);animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.stock-table th,.stock-table td{padding:var(--space-2-5) var(--space-2)}.ibd-breakdown{flex-direction:column;gap:var(--space-1)}}@media(max-width:768px){.stock-table-container{border-radius:var(--radius-lg)}.rank-badge{width:28px;height:28px;font-size:var(--text-xs)}.symbol-link{padding:var(--space-1-5) var(--space-2);font-size:var(--text-xs)}}.stock-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);overflow:hidden;transition:all var(--transition-normal);animation:cardFadeIn .4s ease-out;animation-delay:calc(var(--card-index, 0) * 50ms);animation-fill-mode:both}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.stock-card-glass{position:absolute;inset:0;background:linear-gradient(135deg,#ffffff0d,#ffffff05,#fff0);pointer-events:none;z-index:0}.stock-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-blue),var(--accent-purple));opacity:0;transition:opacity var(--transition-fast)}.stock-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--shadow-glow);border-color:var(--border-hover)}.stock-card:hover:before{opacity:1}.stock-card.watched{border-color:#ef44444d;background:linear-gradient(135deg,var(--bg-card) 0%,rgba(239,68,68,.05) 100%)}.stock-card.watched:before{background:linear-gradient(90deg,var(--accent-red),var(--accent-red-light));opacity:1}.stock-card-header{position:relative;z-index:1;display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.stock-card-rank .rank-badge{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);font-weight:var(--font-bold);font-size:var(--text-sm);font-family:var(--font-mono);transition:transform var(--transition-fast)}.stock-card-rank .rank-badge:hover{transform:scale(1.1)}.stock-card-rank .rank-badge.gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1a1a1a;box-shadow:0 2px 12px #fbbf2466}.stock-card-rank .rank-badge.silver{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#1a1a1a;box-shadow:0 2px 12px #d1d5db4d}.stock-card-rank .rank-badge.bronze{background:linear-gradient(135deg,#d97706,#92400e);color:#fff;box-shadow:0 2px 12px #d977064d}.stock-card-rank .rank-badge.normal{background:var(--bg-secondary);color:var(--text-secondary)}.stock-card-symbol{flex:1;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);text-decoration:none;transition:color var(--transition-fast)}.stock-card-symbol:hover{color:var(--accent-blue)}.stock-card-watchlist{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;cursor:pointer;transition:all var(--transition-fast)}.stock-card-watchlist:hover{transform:scale(1.1);background:var(--bg-card-hover)}.stock-card-watchlist.active{animation:heartPulse .3s ease}@keyframes heartPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.stock-card-signal{position:relative;z-index:1;margin-bottom:var(--space-4)}.stock-card-signal .signal-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold)}.stock-card-signal .signal-badge.elite{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-dark));color:#fff;box-shadow:var(--shadow-glow-success)}.stock-card-signal .signal-badge.strong{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.3)}.stock-card-signal .signal-badge.moderate{background:#f59e0b26;color:var(--accent-gold);border:1px solid rgba(245,158,11,.3)}.stock-card-signal .signal-badge.weak{background:#94a3b826;color:var(--text-secondary);border:1px solid var(--border-color)}.stock-card-signal .signal-badge.bearish{background:#ef444426;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.stock-card-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-4)}.metric-item{display:flex;flex-direction:column;gap:var(--space-1)}.metric-item.composite{grid-column:span 2}.metric-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.metric-value{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--font-semibold)}.metric-value.positive{color:var(--accent-green)}.metric-value.negative{color:var(--accent-red)}.metric-bar{height:4px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.metric-fill{height:100%;border-radius:var(--radius-full);transition:width .6s cubic-bezier(.4,0,.2,1)}.metric-fill.high{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-light))}.metric-fill.medium{background:linear-gradient(90deg,var(--accent-gold),var(--accent-gold-light))}.metric-fill.low{background:linear-gradient(90deg,var(--accent-red),var(--accent-red-light))}.metric-percentile{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-medium)}.metric-percentile.high{color:var(--accent-green)}.metric-percentile.medium{color:var(--accent-gold)}.metric-percentile.low{color:var(--accent-red)}.composite-score{display:flex;align-items:center;gap:var(--space-3)}.composite-bar{flex:1;height:8px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.composite-fill{height:100%;border-radius:var(--radius-full);transition:width .6s cubic-bezier(.4,0,.2,1)}.composite-fill.high{background:linear-gradient(90deg,var(--accent-green),var(--accent-cyan))}.composite-fill.medium{background:linear-gradient(90deg,var(--accent-gold),var(--accent-gold-light))}.composite-fill.low{background:linear-gradient(90deg,var(--accent-red),var(--accent-red-light))}.composite-value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--font-bold);min-width:48px;text-align:right}.composite-value.high{color:var(--accent-green)}.composite-value.medium{color:var(--accent-gold)}.composite-value.low{color:var(--accent-red)}.stock-card-breakdown{position:relative;z-index:1;padding-top:var(--space-4);border-top:1px solid var(--border-color)}.breakdown-label{display:block;font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.breakdown-pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.breakdown-pill{font-size:var(--text-xs);font-family:var(--font-mono);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--bg-secondary);cursor:help;transition:all var(--transition-fast)}.breakdown-pill:hover{transform:scale(1.05)}.breakdown-pill.positive{color:var(--accent-green);border:1px solid rgba(16,185,129,.2)}.breakdown-pill.negative{color:var(--accent-red);border:1px solid rgba(239,68,68,.2)}@media(max-width:640px){.stock-card{padding:var(--space-4)}.stock-card-metrics{grid-template-columns:1fr}.metric-item.composite{grid-column:span 1}.stock-card-symbol{font-size:var(--text-lg)}}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;justify-content:space-between;align-items:center;overflow:hidden;transition:all var(--transition-normal);animation:statCardFadeIn .4s ease-out;animation-delay:calc(var(--card-index, 0) * 80ms);animation-fill-mode:both}@keyframes statCardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-card-glass{position:absolute;inset:0;background:linear-gradient(135deg,#ffffff0d,#ffffff05,#fff0);pointer-events:none;z-index:0}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-xl) var(--radius-xl) 0 0;transition:height var(--transition-fast)}.stat-card.blue:before{background:linear-gradient(135deg,var(--accent-blue),var(--accent-blue-light))}.stat-card.green:before{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-light))}.stat-card.red:before{background:linear-gradient(135deg,var(--accent-red),var(--accent-red-light))}.stat-card.gold:before{background:linear-gradient(135deg,var(--accent-gold),var(--accent-gold-light))}.stat-card.purple:before{background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-light))}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.stat-card:hover:before{height:4px}.stat-card.blue:hover{box-shadow:var(--shadow-lg),0 0 30px #3b82f626}.stat-card.green:hover{box-shadow:var(--shadow-lg),0 0 30px #10b98126}.stat-card.red:hover{box-shadow:var(--shadow-lg),0 0 30px #ef444426}.stat-card.gold:hover{box-shadow:var(--shadow-lg),0 0 30px #f59e0b26}.stat-card.purple:hover{box-shadow:var(--shadow-lg),0 0 30px #8b5cf626}.stat-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-1)}.stat-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-medium)}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);font-family:var(--font-mono);line-height:1;transition:transform var(--transition-fast)}.stat-card:hover .stat-value{transform:scale(1.05)}.stat-card.blue .stat-value{color:var(--accent-blue)}.stat-card.green .stat-value{color:var(--accent-green)}.stat-card.red .stat-value{color:var(--accent-red)}.stat-card.gold .stat-value{color:var(--accent-gold)}.stat-card.purple .stat-value{color:var(--accent-purple)}.stat-percent{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted);font-weight:var(--font-medium)}.stat-desc{font-size:var(--text-xs);color:var(--text-muted);max-width:120px}.stat-icon{position:relative;z-index:1;font-size:2.5rem;opacity:.6;transition:all var(--transition-normal)}.stat-card:hover .stat-icon{opacity:1;transform:scale(1.1) rotate(5deg)}@media(max-width:1400px){.stats-grid{grid-template-columns:repeat(3,1fr)}.stat-card:nth-child(4),.stat-card:nth-child(5){grid-column:span 1}}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.stat-card:last-child{grid-column:span 2}}@media(max-width:640px){.stats-grid{grid-template-columns:1fr}.stat-card:last-child{grid-column:span 1}.stat-card{padding:var(--space-4)}.stat-value{font-size:var(--text-2xl)}.stat-icon{font-size:2rem}}@keyframes valueUpdate{0%{transform:scale(1)}50%{transform:scale(1.1);color:var(--accent-cyan)}to{transform:scale(1)}}.stat-value.updating{animation:valueUpdate .3s ease}.skeleton{background:var(--bg-secondary);position:relative;overflow:hidden}.skeleton-animated{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-card) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;border-radius:var(--radius-sm);width:100%}.skeleton-circular{border-radius:var(--radius-full);flex-shrink:0}.skeleton-rectangular{border-radius:0;width:100%}.skeleton-rounded{border-radius:var(--radius-lg);width:100%}.skeleton-text-group{display:flex;flex-direction:column;width:100%}.skeleton-gap-xs{gap:var(--space-1)}.skeleton-gap-sm{gap:var(--space-2)}.skeleton-gap-md{gap:var(--space-3)}.skeleton-gap-lg{gap:var(--space-4)}.skeleton-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden}.skeleton-card-content{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.skeleton-table{display:flex;flex-direction:column;gap:var(--space-1);width:100%}.skeleton-table-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.skeleton-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg-card);border-bottom:1px solid var(--border-color)}.skeleton-table-row:last-child{border-bottom:none;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.skeleton-pulse{animation:skeleton-pulse 2s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.stock-table-skeleton{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden}.skeleton-header{display:flex;gap:var(--space-2);padding:var(--space-4) var(--space-3);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.skeleton-header-cell{display:flex;align-items:center}.skeleton-body{display:flex;flex-direction:column}.skeleton-row{display:flex;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border-color);animation:skeletonRowFadeIn .3s ease-out;animation-delay:calc(var(--row-index, 0) * 50ms);animation-fill-mode:both}@keyframes skeletonRowFadeIn{0%{opacity:0}to{opacity:1}}.skeleton-row:last-child{border-bottom:none}.skeleton-cell{display:flex;align-items:center;flex-shrink:0}.skeleton-percentile{display:flex;align-items:center;gap:var(--space-2)}.skeleton-percentile.wide{gap:var(--space-3)}.skeleton-pills{display:flex;gap:var(--space-1);flex-wrap:wrap}@media(max-width:1024px){.skeleton-header,.skeleton-row{padding:var(--space-2-5) var(--space-2)}.skeleton-pills{flex-direction:column}}.stock-card-skeleton{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);animation:cardSkeletonFadeIn .4s ease-out;animation-delay:calc(var(--card-index, 0) * 80ms);animation-fill-mode:both}@keyframes cardSkeletonFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.skeleton-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.skeleton-card-header>:nth-child(2){flex:1}.skeleton-card-signal{margin-bottom:var(--space-4)}.skeleton-card-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-4)}.skeleton-metric{display:flex;flex-direction:column;gap:var(--space-1)}.skeleton-metric.composite{grid-column:span 2}.skeleton-composite-score{display:flex;align-items:center;gap:var(--space-3)}.skeleton-composite-score>:first-child{flex:1}.skeleton-card-breakdown{padding-top:var(--space-4);border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-breakdown-pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.stock-card-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-4)}@media(max-width:640px){.stock-card-skeleton{padding:var(--space-4)}.skeleton-card-metrics{grid-template-columns:1fr}.skeleton-metric.composite{grid-column:span 1}.stock-card-skeleton-grid{grid-template-columns:1fr}}.stats-grid-skeleton{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card-skeleton{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;justify-content:space-between;align-items:center;animation:statSkeletonFadeIn .4s ease-out;animation-delay:calc(var(--card-index, 0) * 80ms);animation-fill-mode:both}@keyframes statSkeletonFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stat-skeleton-content{display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:1400px){.stats-grid-skeleton{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.stats-grid-skeleton{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.stat-card-skeleton:last-child{grid-column:span 2}}@media(max-width:640px){.stats-grid-skeleton{grid-template-columns:1fr}.stat-card-skeleton:last-child{grid-column:span 1}.stat-card-skeleton{padding:var(--space-4)}}.rs-chart{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--border-color)}.rs-chart-empty{display:flex;align-items:center;justify-content:center;min-height:180px;color:var(--text-muted);font-size:var(--text-sm)}.rs-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.rs-chart-symbol{font-family:var(--font-mono);font-weight:var(--font-bold);font-size:var(--text-lg);color:var(--text-primary)}.rs-chart-composite{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent-primary);background:#6366f126;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md)}.rs-chart-tooltip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-lg);min-width:160px}.tooltip-title{font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--text-sm)}.tooltip-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1);font-size:var(--text-xs)}.tooltip-label{color:var(--text-muted)}.tooltip-percentile{font-family:var(--font-mono);font-weight:var(--font-medium);color:var(--accent-primary)}.performance-chart{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--border-color)}.performance-chart-empty{display:flex;align-items:center;justify-content:center;min-height:220px;color:var(--text-muted);font-size:var(--text-sm)}.performance-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:var(--space-2)}.performance-chart-title{font-weight:var(--font-semibold);font-size:var(--text-base);color:var(--text-primary)}.performance-chart-weighted{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md)}.performance-chart-weighted.positive{background:#10b98126;color:var(--accent-green)}.performance-chart-weighted.negative{background:#ef444426;color:var(--accent-red)}.performance-chart-legend{display:flex;justify-content:center;gap:var(--space-6);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-color);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-secondary)}.legend-line{width:20px;height:3px;border-radius:2px}.legend-line.legend-dashed{background:linear-gradient(90deg,var(--accent-cyan) 0%,var(--accent-cyan) 40%,transparent 40%,transparent 60%,var(--accent-cyan) 60%,var(--accent-cyan) 100%)}.performance-chart-tooltip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-lg);min-width:180px}.tooltip-period{font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--text-sm);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.tooltip-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:var(--text-xs)}.tooltip-row:last-child{margin-bottom:0}.tooltip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tooltip-label{color:var(--text-muted);flex:1}.tooltip-value{font-family:var(--font-mono);font-weight:var(--font-semibold)}.tooltip-value.positive{color:var(--accent-green)}.tooltip-value.negative{color:var(--accent-red)}.tooltip-relative{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border-color)}@media(max-width:640px){.performance-chart-header{flex-direction:column;align-items:flex-start}.performance-chart-legend{gap:var(--space-4)}}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl)}.grid-column{background:var(--bg-card);border-radius:var(--radius-xl);border:2px solid var(--border-color);overflow:hidden}.grid-column.strongest{border-color:#10b9814d}.grid-column.weakest{border-color:#ef44444d}.column-header{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border-color)}.column-header.green{background:linear-gradient(135deg,#10b98126,#10b9810d)}.column-header.red{background:linear-gradient(135deg,#ef444426,#ef44440d)}.column-icon{font-size:1.75rem}.column-header h3{font-size:1.15rem;font-weight:700;margin:0}.column-header.green h3{color:var(--accent-green)}.column-header.red h3{color:var(--accent-red)}.column-desc{font-size:.85rem;color:var(--text-muted);margin-left:auto}.chart-list{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md);max-height:85vh;overflow-y:auto}.chart-card{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);overflow:hidden;transition:all var(--transition-normal)}.chart-card:hover{border-color:var(--accent-blue);transform:translateY(-2px);box-shadow:var(--shadow-md)}.chart-card.watched{border-color:#ef444466;box-shadow:0 0 15px #ef44441a}.chart-card.expanded{border-color:var(--accent-primary);box-shadow:var(--shadow-glow-primary)}.chart-card-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.chart-card-info{display:flex;align-items:center;gap:.6rem}.chart-rank{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-weight:700;font-size:.75rem;font-family:var(--font-mono)}.chart-rank.top{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.chart-rank.bottom{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.chart-symbol{font-family:var(--font-mono);font-weight:700;font-size:.95rem;color:var(--text-primary);text-decoration:none;padding:.25rem .5rem;background:var(--bg-secondary);border-radius:4px;transition:all var(--transition-fast)}.chart-symbol:hover{background:var(--accent-blue)}.chart-rs{font-family:var(--font-mono);font-weight:600;font-size:.85rem;padding:.2rem .5rem;border-radius:4px}.chart-rs.positive{background:#10b98133;color:var(--accent-green)}.chart-rs.negative{background:#ef444433;color:var(--accent-red)}.chart-card-actions{display:flex;align-items:center;gap:.5rem}.chart-percentile{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);padding:.2rem .4rem;background:var(--bg-secondary);border-radius:4px}.chart-expand-btn,.chart-watchlist-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;transition:transform var(--transition-fast);padding:.2rem;border-radius:var(--radius-sm)}.chart-expand-btn:hover,.chart-watchlist-btn:hover{transform:scale(1.2);background:var(--bg-card-hover)}.chart-expand-btn.active{background:#6366f133}.chart-card-body{height:220px;background:#131722}.chart-card-body iframe{width:100%;height:100%;border:none}.chart-card-expanded{padding:var(--space-4);background:var(--bg-card);border-top:1px solid var(--border-color);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0;padding:0 var(--space-4)}to{opacity:1;max-height:600px;padding:var(--space-4)}}.expanded-charts-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:1400px){.expanded-charts-grid{grid-template-columns:1fr 1.5fr}}.chart-card-footer{padding:.5rem .75rem;background:var(--bg-card);border-top:1px solid var(--border-color)}.chart-metrics{display:flex;gap:1rem;font-family:var(--font-mono);font-size:.75rem}.chart-metrics .positive{color:var(--accent-green)}.chart-metrics .negative{color:var(--accent-red)}@media(max-width:1200px){.chart-grid{grid-template-columns:1fr}.chart-list{max-height:60vh}}@media(max-width:768px){.chart-card-body{height:180px}.chart-card-header{flex-wrap:wrap;gap:.5rem}.chart-card-info{flex-wrap:wrap}}.modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--bg-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.modal{position:relative;z-index:var(--z-modal);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-8));background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);overflow:hidden}.modal-sm{width:100%;max-width:400px}.modal-md{width:100%;max-width:500px}.modal-lg{width:100%;max-width:700px}.modal-xl{width:100%;max-width:900px}.modal-full{width:calc(100vw - var(--space-8));max-width:none;height:calc(100vh - var(--space-8))}.modal-close-btn{position:absolute;top:var(--space-4);right:var(--space-4);z-index:1;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.modal-close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-close-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.modal-header{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-6);padding-right:var(--space-12);border-bottom:1px solid var(--border-color)}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.modal-description{font-size:var(--text-sm);color:var(--text-muted);margin:0}.modal-body{flex:1;padding:var(--space-6);overflow-y:auto}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-color);background:var(--bg-secondary)}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-scale-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(10px)}}.modal.animate-scaleIn{animation:modal-scale-in .2s ease-out forwards}.modal.animate-scaleOut{animation:modal-scale-out .15s ease-in forwards}@media(max-width:640px){.modal-backdrop{padding:var(--space-2);align-items:flex-end}.modal{max-height:calc(100vh - var(--space-4));border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.modal-sm,.modal-md,.modal-lg,.modal-xl{max-width:none}.modal-header{padding:var(--space-4);padding-right:var(--space-10)}.modal-body{padding:var(--space-4)}.modal-footer{padding:var(--space-4);flex-direction:column}.modal-footer>*{width:100%}.modal-close-btn{top:var(--space-3);right:var(--space-3)}}[data-theme=light] .modal{background:var(--bg-card)}[data-theme=light] .modal-footer{background:var(--bg-secondary)}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-1-5)}.input-full{width:100%}.input-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.input-container{display:flex;align-items:stretch}.input-field-wrapper{position:relative;display:flex;align-items:center;flex:1;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.input-focused .input-field-wrapper{border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f133}.input-error .input-field-wrapper{border-color:var(--accent-red)}.input-error.input-focused .input-field-wrapper{box-shadow:0 0 0 3px #ef444433}.input-disabled .input-field-wrapper{background:var(--bg-tertiary);opacity:.6;cursor:not-allowed}.input-field{flex:1;background:transparent;border:none;color:var(--text-primary);outline:none;width:100%}.input-field::placeholder{color:var(--text-muted)}.input-field:disabled{cursor:not-allowed}.input-field[type=search]::-webkit-search-cancel-button,.input-field[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.input-sm .input-field{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.input-md .input-field{padding:var(--space-2-5) var(--space-3);font-size:var(--text-sm)}.input-lg .input-field{padding:var(--space-3) var(--space-4);font-size:var(--text-base)}.input-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.input-icon svg{width:1em;height:1em}.input-icon-left{padding-left:var(--space-3)}.input-icon-right{padding-right:var(--space-3)}.has-left-icon .input-field{padding-left:var(--space-1)}.has-right-icon .input-field{padding-right:var(--space-1)}.input-addon{display:flex;align-items:center;padding:0 var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap}.input-addon-left{border-right:none;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.input-addon-right{border-left:none;border-radius:0 var(--radius-lg) var(--radius-lg) 0}.has-left-addon .input-field-wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.has-right-addon .input-field-wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.input-error-message{font-size:var(--text-xs);color:var(--accent-red)}.input-hint{font-size:var(--text-xs);color:var(--text-muted)}.input-clear-btn{display:flex;align-items:center;justify-content:center;padding:var(--space-1);background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.input-clear-btn:hover{color:var(--text-primary);background:var(--bg-card)}[data-theme=light] .input-field-wrapper{background:var(--bg-card)}[data-theme=light] .input-addon{background:var(--bg-secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.auth-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--accent-danger);font-size:var(--text-sm)}.auth-error svg{flex-shrink:0}.auth-switch{text-align:center;font-size:var(--text-sm);color:var(--text-muted);margin:0}.auth-link{background:none;border:none;padding:0;color:var(--accent-primary);font-weight:var(--font-medium);cursor:pointer;transition:color var(--transition-fast)}.auth-link:hover{color:var(--accent-primary-hover);text-decoration:underline}.auth-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.oauth-buttons{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.oauth-buttons .btn{justify-content:center}.oauth-buttons .btn-icon-left{margin-right:var(--space-2)}.auth-modal-content{display:flex;flex-direction:column;gap:var(--space-5)}.auth-divider{display:flex;align-items:center;gap:var(--space-4);color:var(--text-muted);font-size:var(--text-sm)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.auth-divider span{white-space:nowrap}.card{border-radius:var(--radius-xl);transition:all var(--transition-normal);position:relative;overflow:hidden}.card-default{background:var(--bg-card);border:1px solid var(--border-color)}.card-glass{background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color)}.card-elevated{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.card-outlined{background:transparent;border:1px solid var(--border-color)}.card-padding-none{padding:0}.card-padding-sm{padding:var(--space-3)}.card-padding-md{padding:var(--space-4)}.card-padding-lg{padding:var(--space-6)}.card-hoverable:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-clickable{cursor:pointer}.card-clickable:active{transform:scale(.99)}.card-header{display:flex;flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-4)}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight);margin:0}.card-description{font-size:var(--text-sm);color:var(--text-muted);margin:0}.card-footer{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-color);margin-top:var(--space-4)}.card-gradient:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-purple),var(--accent-cyan))}.card-glow{box-shadow:var(--shadow-glow-primary)}.card-glow:hover{box-shadow:0 0 40px #6366f14d}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-weight:var(--font-semibold);border-radius:var(--radius-md);white-space:nowrap;transition:all var(--transition-fast)}.badge-sm{padding:var(--space-0-5) var(--space-1-5);font-size:var(--text-xs)}.badge-md{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.badge-lg{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.badge-default{background:#64748b33;color:var(--text-secondary)}.badge-default.badge-outline{background:transparent;border:1px solid var(--border-color)}.badge-success{background:#10b98133;color:var(--accent-green)}.badge-success.badge-outline{background:transparent;border:1px solid var(--accent-green)}.badge-warning{background:#f59e0b33;color:var(--accent-gold)}.badge-warning.badge-outline{background:transparent;border:1px solid var(--accent-gold)}.badge-danger{background:#ef444433;color:var(--accent-red)}.badge-danger.badge-outline{background:transparent;border:1px solid var(--accent-red)}.badge-info{background:#3b82f633;color:var(--accent-blue)}.badge-info.badge-outline{background:transparent;border:1px solid var(--accent-blue)}.badge-purple{background:#8b5cf633;color:var(--accent-purple)}.badge-purple.badge-outline{background:transparent;border:1px solid var(--accent-purple)}.badge-dot-indicator{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor;flex-shrink:0}.badge-sm .badge-dot-indicator{width:5px;height:5px}.badge-lg .badge-dot-indicator{width:8px;height:8px}.status-pulse .badge-dot-indicator{animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.count-badge{min-width:18px;height:18px;padding:0 var(--space-1);border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:var(--font-bold)}[data-theme=light] .badge-default{background:#64748b26}[data-theme=light] .badge-success{background:#10b98126}[data-theme=light] .badge-warning{background:#f59e0b26}[data-theme=light] .badge-danger{background:#ef444426}[data-theme=light] .badge-info{background:#3b82f626}[data-theme=light] .badge-purple{background:#8b5cf626}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:500;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.offline-banner-offline{background:linear-gradient(135deg,var(--color-warning) 0%,#d97706 100%);color:#fff;box-shadow:0 2px 8px #f59e0b4d}.offline-banner-online{background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%);color:#fff;box-shadow:0 2px 8px #10b9814d}.offline-banner-content{display:flex;align-items:center;gap:var(--space-3)}.offline-banner-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.offline-banner-text{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.offline-banner-queue,.offline-banner-sync{opacity:.9;font-size:var(--text-xs);padding:var(--space-1) var(--space-2);background:#fff3;border-radius:var(--radius-sm)}.offline-banner-dismiss{display:flex;align-items:center;justify-content:center;padding:var(--space-1);background:#fff3;border:none;border-radius:var(--radius-sm);color:inherit;cursor:pointer;transition:background-color .2s ease}.offline-banner-dismiss:hover{background:#ffffff4d}.offline-banner-dismiss:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}[data-theme=dark] .offline-banner-offline{background:linear-gradient(135deg,#b45309,#92400e)}[data-theme=dark] .offline-banner-online{background:linear-gradient(135deg,#047857,#065f46)}@media(max-width:640px){.offline-banner{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.offline-banner-icon svg{width:16px;height:16px}.offline-banner-text{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}
