@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em}*,:before,:after{--tw-border-opacity: .1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.price,.metric-value,[data-financial]{font-variant-numeric:tabular-nums}.\!price{font-variant-numeric:tabular-nums!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-4{right:1rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[50vh\]{height:50vh}.h-\[80vh\]{height:80vh}.h-full{height:100%}.w-10{width:2.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l-2{border-left-width:2px}.border-\[\#22c55e\]{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-\[\#22c55e\]\/30{border-color:#22c55e4d}.border-\[\#22c55e\]\/50{border-color:#22c55e80}.border-border{border-color:hsl(var(--border))}.border-destructive{border-color:hsl(var(--destructive))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-green-900\/30{border-color:#14532d4d}.border-green-900\/40{border-color:#14532d66}.border-green-900\/50{border-color:#14532d80}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-red-900{--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.border-red-900\/30{border-color:#7f1d1d4d}.border-red-900\/40{border-color:#7f1d1d66}.border-red-900\/50{border-color:#7f1d1d80}.border-white\/10{border-color:#ffffff1a}.border-white\/5{border-color:#ffffff0d}.border-yellow-900\/40{border-color:#713f1266}.border-yellow-900\/50{border-color:#713f1280}.border-zinc-700{--tw-border-opacity: 1;border-color:rgb(63 63 70 / var(--tw-border-opacity, 1))}.bg-\[\#22c55e\]{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-\[\#22c55e\]\/10{background-color:#22c55e1a}.bg-\[\#22c55e\]\/20{background-color:#22c55e33}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-black\/80{background-color:#000c}.bg-card{background-color:hsl(var(--card))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/10{background-color:#14532d1a}.bg-green-900\/20{background-color:#14532d33}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/20{background-color:hsl(var(--primary) / .2)}.bg-red-500\/90{background-color:#ef4444e6}.bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.bg-red-900\/10{background-color:#7f1d1d1a}.bg-red-900\/20{background-color:#7f1d1d33}.bg-red-900\/50{background-color:#7f1d1d80}.bg-transparent{background-color:transparent}.bg-white\/5{background-color:#ffffff0d}.bg-yellow-900{--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/10{background-color:#713f121a}.bg-yellow-900\/20{background-color:#713f1233}.bg-zinc-800{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1))}.bg-zinc-900{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1))}.bg-zinc-900\/40{background-color:#18181b66}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-stage-light{background-image:radial-gradient(circle at 50% 0%,rgba(34,197,94,.05),transparent 40%)}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-white\/60{--tw-gradient-to: rgb(255 255 255 / .6) var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-3{padding-bottom:.75rem}.pl-12{padding-left:3rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,Menlo,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-\[\#09090b\]{--tw-text-opacity: 1;color:rgb(9 9 11 / var(--tw-text-opacity, 1))}.text-\[\#22c55e\]{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-destructive{color:hsl(var(--destructive))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-zinc-300{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.text-zinc-600{--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.opacity-70{opacity:.7}.shadow-\[0_0_15px_rgba\(239\,68\,68\,0\.3\)\]{--tw-shadow: 0 0 15px rgba(239,68,68,.3);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_20px_rgba\(34\,197\,94\,0\.4\)\]{--tw-shadow: 0 0 20px rgba(34,197,94,.4);--tw-shadow-colored: 0 0 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-200{animation-duration:.2s}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #09090b;--bg-card: rgba(24, 24, 27, .8);--bg-card-solid: #18181b;--border-color: #27272a;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-muted: #71717a;--accent: #22c55e;--accent-light: #4ade80;--action: #38bdf8;--action-light: #7dd3fc;--positive: #22c55e;--negative: #ef4444;--neutral: #71717a;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--font-mono: "SF Mono", SFMono-Regular, ui-monospace, Menlo, Consolas, monospace;--background: 240 6% 4%;--foreground: 0 0% 98%;--card: 240 6% 10%;--card-foreground: 0 0% 98%;--popover: 240 6% 10%;--popover-foreground: 0 0% 98%;--primary: 142 71% 45%;--primary-foreground: 0 0% 0%;--secondary: 240 4% 16%;--secondary-foreground: 0 0% 98%;--muted: 240 4% 16%;--muted-foreground: 240 5% 65%;--shadcn-accent: 142 71% 45%;--accent-foreground: 0 0% 0%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 98%;--border: 240 4% 16%;--input: 240 4% 16%;--ring: 142 71% 45%;--radius: .75rem}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#09090bcc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.logo{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none}.nav-links{display:flex;gap:2rem}.nav-links a{color:var(--text-muted);text-decoration:none;font-weight:500;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}.main-content{max-width:1400px;margin:0 auto;padding:2rem}.home-page{text-align:center;padding-top:8rem}.home-page h1{font-size:3rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#fff,#a1a1aa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-page p{color:var(--text-secondary);font-size:1.125rem;margin-bottom:3rem}.search-bar{display:flex;gap:.75rem;justify-content:center;max-width:500px;margin:0 auto}.search-input{flex:1;padding:1rem 1.5rem;font-size:1rem;font-family:inherit;background:var(--bg-card-solid);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.search-input::-moz-placeholder{color:var(--text-muted)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1a}.search-button{padding:1rem 2rem;font-size:1rem;font-family:inherit;font-weight:600;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);color:#000;border:none;border-radius:var(--radius-md);cursor:pointer;transition:transform .2s,box-shadow .2s}.search-button:hover{transform:translateY(-1px);box-shadow:0 4px 20px #22c55e4d}.loading{text-align:center;padding:4rem;color:var(--text-secondary)}.loading:after{content:"";display:inline-block;width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;margin-left:.5rem;animation:spin .8s linear infinite}.error{text-align:center;padding:4rem;color:var(--negative)}.stock-hero{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stock-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:1.5rem;align-items:start}.hero-main{display:flex;flex-direction:column;gap:1.25rem}.hero-score{align-self:stretch}.stock-hero-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.stock-identity h1{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:var(--text-primary, #fafafa);display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.ticker-badge{font-size:.875rem;font-weight:600;padding:.25rem .75rem;background:linear-gradient(135deg,#22c55e26,#22c55e0d);border:1px solid rgba(34,197,94,.2);border-radius:20px;color:#4ade80;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.stock-meta{display:flex;align-items:center;gap:1rem;color:var(--text-secondary);font-size:.875rem}.stock-meta .sector{padding:.25rem .75rem;background:var(--bg-card-solid);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.stock-meta .clickable-tag{cursor:pointer;transition:border-color .15s,background .15s}.stock-meta .clickable-tag:hover{border-color:#22c55e;background:#22c55e1a}.stock-meta .industry{padding:.25rem .75rem;background:#ffffff0a;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08);color:var(--text-muted, #9ca3af)}.header-actions{display:flex;gap:.5rem;flex-shrink:0}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.hero-stat{display:flex;flex-direction:column;gap:.25rem;padding:.75rem .9rem;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);font-size:.8rem;color:var(--text-muted, #9ca3af)}.hero-stat strong{color:var(--text-primary, #fafafa);font-size:.95rem}.hero-quick-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:.9rem}.quick-stat{display:flex;flex-direction:column;gap:.25rem;padding:.7rem .85rem;border-radius:12px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);font-size:.78rem;color:var(--text-muted, #9ca3af)}.quick-stat strong{color:var(--text-primary, #fafafa);font-size:.9rem;font-variant-numeric:tabular-nums}.snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}.snapshot-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:1.25rem}.snapshot-title{font-size:.9rem;font-weight:600;color:var(--text-primary, #fafafa);margin-bottom:.75rem}.snapshot-items{display:grid;gap:.6rem}.snapshot-item{display:grid;grid-template-columns:140px minmax(0,1fr);gap:.75rem;font-size:.82rem;color:var(--text-muted, #9ca3af);align-items:baseline}.snapshot-item strong{color:var(--text-primary, #fafafa);font-weight:600;justify-self:start}.snapshot-grid-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.snapshot-metric{display:flex;flex-direction:column;gap:.3rem;padding:.65rem .85rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px}.snapshot-metric-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #9ca3af);white-space:nowrap}.snapshot-metric-value{font-size:.95rem;color:var(--text-primary, #fafafa);font-weight:600;font-variant-numeric:tabular-nums}.snapshot-metric-value.positive{color:#4ade80}.snapshot-metric-value.negative{color:#f87171}.snapshot-factors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;font-size:.8rem}.snapshot-subtitle{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;color:var(--text-muted, #9ca3af);margin-bottom:.35rem}.snapshot-line{color:var(--text-secondary, #d4d4d8);margin-bottom:.35rem;line-height:1.3}.snapshot-line.positive{color:#4ade80}.snapshot-line.negative{color:#f97316}.fundamentals-section{display:flex;flex-direction:column;gap:1.5rem}.fundamentals-group{display:flex;flex-direction:column;gap:.75rem}.fundamentals-group-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #9ca3af);padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.price-section{display:flex;flex-direction:column;gap:.25rem}.price-section .current-price{font-size:2.5rem;font-weight:700;color:var(--text-primary, #fafafa);font-family:var(--font-mono, "SF Mono", Consolas, monospace);line-height:1.1}.price-section .price-change{font-size:1.125rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.price-section .price-change.positive{color:#22c55e}.price-section .price-change.negative{color:#ef4444}.price-section .market-cap{font-size:.875rem;color:var(--text-muted, #71717a);margin-top:.5rem}.hero-divider{width:1px;height:80px;background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%)}.score-section{min-width:0}.score-section .omnistock-score-card{background:transparent;border:none;padding:0}@media(max-width:1024px){.stock-hero-grid{grid-template-columns:1fr}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-grid{grid-template-columns:1fr}}@media(max-width:768px){.price-section .current-price{font-size:2rem}.stock-identity h1{font-size:1.25rem}.header-actions{width:100%;justify-content:flex-start}}.stock-header{margin-bottom:2rem}.stock-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;transition:border-color .2s}.card:hover{border-color:#3f3f46}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-title{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}@media(max-width:1024px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.metrics-grid{grid-template-columns:1fr}}.metric-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem}.metric-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.metric-value{font-size:1.75rem;font-weight:700;font-variant-numeric:tabular-nums}.metric-change{font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.positive{color:var(--positive)}.negative{color:var(--negative)}.neutral{color:var(--neutral)}.trend-indicator{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.trend-indicator.improving{background:#22c55e1a;color:var(--positive)}.trend-indicator.declining{background:#ef44441a;color:var(--negative)}.trend-indicator.stable{background:#71717a1a;color:var(--neutral)}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}@media(max-width:900px){.charts-grid{grid-template-columns:1fr}}.technical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media(max-width:768px){.technical-grid{grid-template-columns:1fr}}@media(max-width:900px){.hero-quick-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.price-vs-ma{font-size:.875rem;padding:.25rem .5rem;border-radius:var(--radius-sm)}.price-vs-ma.above{background:#22c55e1a;color:var(--positive)}.price-vs-ma.below{background:#ef44441a;color:var(--negative)}.save-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-family:inherit;font-weight:600;background:transparent;color:var(--action);border:1px solid var(--action);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.save-button:hover{background:#38bdf81f}.save-button.saved{background:var(--action);color:#000}.header-actions{display:flex;gap:.75rem;align-items:center}.compare-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-family:inherit;font-weight:500;background:transparent;color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.compare-button:hover{border-color:var(--action);color:var(--action);background:#38bdf81f}.stock-sticky-actions{position:sticky;top:76px;z-index:45;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .9rem;margin:1rem 0 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#09090bd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.analysis-loading{margin:1.25rem 0 1.5rem;padding:1rem 1.1rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:var(--text-muted, #9ca3af);font-size:.9rem}.sticky-left{display:flex;align-items:center;gap:.75rem;font-size:.85rem}.sticky-ticker{font-weight:700;color:var(--text-primary, #fafafa)}.sticky-price{font-weight:600;color:var(--text-primary, #fafafa)}.sticky-change{font-variant-numeric:tabular-nums;font-weight:600}.sticky-change.positive{color:var(--positive)}.sticky-change.negative{color:var(--negative)}.sticky-actions{display:flex;align-items:center;gap:.5rem}.data-refresh-indicator{font-size:.7rem;color:var(--text-muted, #9ca3af);background:#ffffff0f;padding:.2rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.08)}@media(max-width:768px){.stock-sticky-actions{flex-direction:column;align-items:flex-start}.snapshot-grid-metrics{grid-template-columns:repeat(3,1fr)}}.section-header{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.description-container{margin-bottom:2rem}.description{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:.5rem;padding:1rem;background:var(--bg-card-solid);border-radius:var(--radius-md);border-left:3px solid var(--accent)}.read-more-btn{background:none;border:none;color:var(--accent);font-size:.85rem;cursor:pointer;padding:.25rem 0;transition:color .2s ease}.read-more-btn:hover{color:var(--primary);text-decoration:underline}.history-list{display:flex;flex-direction:column;gap:.5rem}.history-item{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:border-color .2s,background .2s}.history-item:hover{border-color:var(--accent);background:#22c55e0d}.history-ticker{font-size:1.125rem;font-weight:700;color:var(--accent);min-width:80px}.history-name{flex:1;color:var(--text-primary)}.history-time{font-size:.875rem;color:var(--text-muted)}.saved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media(max-width:1024px){.saved-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.saved-grid{grid-template-columns:1fr}}.saved-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s,transform .2s}.saved-card:hover{border-color:var(--accent);transform:translateY(-2px)}.saved-card-link{display:block;padding:1.5rem;text-decoration:none;color:inherit}.saved-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.saved-ticker{font-size:1.5rem;font-weight:700;color:var(--accent)}.delete-button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .2s}.delete-button:hover{background:#ef44441a;border-color:var(--negative);color:var(--negative)}.saved-name{font-size:1rem;color:var(--text-primary);margin-bottom:.75rem}.saved-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.saved-sector{font-size:.75rem;padding:.25rem .5rem;background:var(--bg-card-solid);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary)}.saved-date{font-size:.75rem;color:var(--text-muted)}.saved-price{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.saved-price-label{font-size:.75rem;font-weight:400;color:var(--text-muted)}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state p{margin-bottom:1rem}.metrics-with-earnings{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start;margin-bottom:2rem}.metrics-section{flex:1}.earnings-section{min-width:280px}@media(max-width:1024px){.metrics-with-earnings{grid-template-columns:1fr}.earnings-section{min-width:auto}}.home-dashboard{padding-top:1rem}.signals-dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:1200px){.signals-dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.signals-dashboard-grid{grid-template-columns:1fr}}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:.7rem;color:var(--text-muted);cursor:help;position:relative;margin-left:.25rem;vertical-align:middle}.info-icon:hover{color:var(--text-secondary)}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:.5rem .75rem;background:var(--bg-card-solid);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem;font-weight:400;color:var(--text-secondary);white-space:normal;max-width:250px;width:-moz-max-content;width:max-content;text-align:left;line-height:1.4;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;box-shadow:0 4px 12px #0000004d}[data-tooltip]:after{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border-color);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1001}[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible}:root{--accent-hover: #16a34a}.signals-error,.signals-empty{padding:3rem 2rem;text-align:center;background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg);color:var(--text-muted)}.signals-error p,.signals-empty p{margin:0;font-size:.9rem}.personalized-picks{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.picks-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.picks-header>div{display:flex;align-items:center;gap:.5rem}.picks-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.picks-sector-tag{font-size:.7rem;padding:2px 8px;background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3);border-radius:999px}.picks-view-all{font-size:.8rem;color:var(--text-muted);text-decoration:none}.picks-view-all:hover{color:#22c55e}.picks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.pick-card{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;transition:border-color .15s,background .15s}.pick-card:hover{border-color:#22c55e66;background:#22c55e08}.pick-card.skeleton{height:80px;animation:pulse 1.5s infinite}.pick-card-top{display:flex;align-items:center;justify-content:space-between}.pick-ticker{font-weight:700;font-size:.9rem;color:var(--text-primary)}.pick-company{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick-card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.pick-price{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.pick-mcap{font-size:.7rem;color:var(--text-muted)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-zinc-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.placeholder\:text-zinc-500::placeholder{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[\#22c55e\]\/50:hover{border-color:#22c55e80}.hover\:border-gray-700:hover{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.hover\:border-primary:hover{border-color:hsl(var(--primary))}.hover\:border-white\/10:hover{border-color:#ffffff1a}.hover\:border-white\/20:hover{border-color:#fff3}.hover\:border-zinc-500:hover{--tw-border-opacity: 1;border-color:rgb(113 113 122 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#16a34a\]:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#22c55e\]\/20:hover{background-color:#22c55e33}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/70:hover{background-color:#7f1d1db3}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:bg-zinc-700:hover{--tw-bg-opacity: 1;background-color:rgb(63 63 70 / var(--tw-bg-opacity, 1))}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.hover\:text-gray-400:hover{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.hover\:text-green-400:hover{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.hover\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:text-zinc-200:hover{--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_30px_rgba\(34\,197\,94\,0\.6\)\]:hover{--tw-shadow: 0 0 30px rgba(34,197,94,.6);--tw-shadow-colored: 0 0 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-\[\#22c55e\]\/50:focus{border-color:#22c55e80}.focus\:shadow-none:focus{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[\#22c55e\]\/50:focus{--tw-ring-color: rgb(34 197 94 / .5)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-\[0\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--shadcn-accent))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}@media(min-width:640px){.sm\:max-w-\[425px\]{max-width:425px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media(min-width:768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-5xl{font-size:3rem;line-height:1}}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.navbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:var(--bg-secondary, #0f1015);border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:100;gap:1rem}.navbar .logo{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--text-primary, #fff);text-decoration:none;white-space:nowrap;transition:opacity .2s}.navbar .logo:hover{opacity:.9}.navbar .logo-icon{width:28px;height:28px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 4px rgba(34,197,94,.3))}.nav-search{flex:1;max-width:420px;margin:0 1rem}.search-container{display:flex;align-items:center;gap:.625rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.5rem 1rem;transition:all .2s ease}.search-container:hover{background:#ffffff12;border-color:#ffffff1f}.search-container.focused{background:#ffffff14;border-color:var(--positive, #22c55e);box-shadow:0 0 0 2px #22c55e26}.search-icon{width:16px;height:16px;color:var(--text-muted, #6b7280);flex-shrink:0}.search-container.focused .search-icon{color:var(--positive, #22c55e)}.search-container input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary, #fff);font-size:.875rem;min-width:0}.search-container input::-moz-placeholder{color:var(--text-muted, #6b7280)}.search-container input::placeholder{color:var(--text-muted, #6b7280)}.nav-links{display:flex;align-items:center;gap:.25rem}.nav-links a{color:var(--text-secondary, #9ca3af);text-decoration:none;font-size:.875rem;font-weight:500;padding:.5rem .875rem;border-radius:6px;transition:all .15s ease;white-space:nowrap}.nav-links a:hover{color:var(--text-primary, #fff);background:#ffffff0d}.nav-links a.active{color:var(--text-primary, #fff);background:#ffffff14}.nav-user{margin-left:.5rem}.user-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.user-avatar:hover{background:#ffffff1f}.user-avatar svg{width:18px;height:18px;color:var(--text-secondary, #9ca3af)}.hamburger-btn{display:none;background:transparent;border:none;color:var(--text-primary, #fff);cursor:pointer;padding:.5rem;border-radius:6px;transition:background .15s}.hamburger-btn:hover{background:#ffffff14}@media(max-width:900px){.navbar{flex-wrap:wrap;padding:.75rem 1rem}.nav-search{order:3;flex-basis:100%;max-width:100%;margin:.75rem 0 0}.nav-links{gap:0}.nav-links a{padding:.5rem .625rem;font-size:.8125rem}}@media(max-width:768px){.hamburger-btn{display:flex;align-items:center;justify-content:center}.nav-links{display:none}.navbar{flex-wrap:nowrap;gap:.5rem}.nav-search{order:0;flex:1;margin:0}.navbar .logo{font-size:1.1rem}.nav-user{margin-left:auto}}.mobile-menu-overlay{position:fixed;inset:0;background:#000000b3;z-index:200;animation:fadeIn .2s ease-out}.mobile-menu{position:absolute;top:60px;left:0;right:0;background:var(--bg-secondary, #0f1015);border-bottom:1px solid rgba(255,255,255,.1);padding:1rem;display:flex;flex-direction:column;gap:.5rem;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-menu a{color:var(--text-primary, #fff);text-decoration:none;font-size:1rem;font-weight:500;padding:.875rem 1rem;border-radius:8px;transition:background .15s}.mobile-menu a:hover{background:#ffffff14}.mobile-signin-btn{background:var(--positive, #22c55e);color:#000;border:none;padding:.875rem 1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:.5rem;transition:background .15s}.mobile-signin-btn:hover{background:#16a34a}.nav-search{flex:1;max-width:420px;margin:0 1rem;position:relative}.search-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--positive, #22c55e);border-radius:50%;animation:spin .6s linear infinite}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg-secondary, #18181b);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 40px #00000080;max-height:400px;overflow-y:auto;z-index:1000}.search-suggestion{padding:.75rem 1rem;background:#22c55e1a;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-secondary, #a1a1aa);font-size:.8125rem;cursor:pointer;transition:background .15s}.search-suggestion:hover{background:#22c55e26}.search-suggestion strong{color:#22c55e;font-weight:600}.search-section{padding:.5rem 0}.search-section:not(:last-child){border-bottom:1px solid rgba(255,255,255,.05)}.search-section-header{display:flex;align-items:center;gap:.5rem;padding:.375rem 1rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #71717a)}.search-item{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;cursor:pointer;transition:background .1s}.search-item:hover,.search-item.selected{background:#ffffff0d}.search-item-main{display:flex;align-items:center;gap:.75rem;min-width:0}.search-ticker{font-weight:600;color:#22c55e;font-size:.875rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.search-name{color:var(--text-primary, #fff);font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-sector-name{color:var(--text-primary, #fff);font-size:.875rem}.search-item-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0;color:var(--text-muted, #71717a)}.search-sector{font-size:.75rem;color:var(--text-muted, #71717a)}.search-exchange{font-size:.65rem;color:var(--primary, #22c55e);background:#22c55e1a;padding:1px 6px;border-radius:3px;font-weight:500}.search-type{font-size:.65rem;color:#f59e0b;background:#f59e0b1a;padding:1px 6px;border-radius:3px;font-weight:500}.search-count{font-size:.75rem;color:var(--text-muted, #71717a)}.search-no-results{padding:1.5rem 1rem;text-align:center;color:var(--text-muted, #71717a);font-size:.875rem}.market-ticker{display:flex;align-items:center;padding:.5rem 0;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.05);overflow:hidden;position:relative}.ticker-loading{color:var(--text-muted, #6b7280);font-size:.8125rem;padding:.25rem 1.5rem}.ticker-status{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;padding:.25rem .625rem;border-radius:4px;white-space:nowrap;flex-shrink:0;margin-left:1rem;margin-right:1rem;z-index:2;background:#000c}.ticker-status .status-dot{width:6px;height:6px;border-radius:50%;animation:pulse 2s infinite}.ticker-status.status-open{background:#22c55e26;color:#22c55e}.ticker-status.status-open .status-dot{background:#22c55e}.ticker-status.status-pre_market,.ticker-status.status-after_hours{background:#fbbf2426;color:#fbbf24}.ticker-status.status-pre_market .status-dot,.ticker-status.status-after_hours .status-dot{background:#fbbf24}.ticker-status.status-closed{background:#9ca3af26;color:#9ca3af}.ticker-status.status-closed .status-dot{background:#9ca3af;animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ticker-scroll-container{display:flex;flex:1;overflow:hidden}.ticker-items{display:flex;gap:2.5rem;animation:scroll 30s linear infinite;padding-right:2.5rem}.ticker-scroll-container:hover .ticker-items{animation-play-state:paused}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-item{display:flex;align-items:center;gap:.75rem;white-space:nowrap;transition:background .3s ease;padding:.25rem .5rem;border-radius:4px;text-decoration:none;cursor:pointer}.ticker-item:hover{background:#ffffff0d}.ticker-flag{font-size:1rem;line-height:1}.ticker-name{color:var(--text-secondary, #9ca3af);font-size:.8125rem;font-weight:500}.ticker-price{color:var(--text-primary, #fff);font-size:.875rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace);transition:color .3s ease}.ticker-change{font-size:.8125rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.ticker-change.positive{color:var(--positive, #22c55e)}.ticker-change.negative{color:var(--negative, #ef4444)}.ticker-sparkline{width:60px;height:20px;opacity:.8}@keyframes pulse-positive{0%{background:transparent}25%{background:#22c55e40}to{background:transparent}}@keyframes pulse-negative{0%{background:transparent}25%{background:#ef444440}to{background:transparent}}.ticker-item.pulse-up{animation:pulse-positive 1s ease-out}.ticker-item.pulse-down{animation:pulse-negative 1s ease-out}@media(max-width:768px){.market-ticker{padding:.5rem 0}.ticker-status{margin-left:.5rem;margin-right:.5rem}.ticker-items{gap:1.5rem}.ticker-name,.ticker-price,.ticker-change{font-size:.75rem}.ticker-sparkline{display:none}}.market-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.dashboard-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1rem 1.25rem;display:flex;flex-direction:column}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem;gap:.5rem}.card-header h3{font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);margin:0;text-transform:uppercase;letter-spacing:.05em}.card-content{flex:1}.market-tabs{display:flex;gap:.25rem;margin-bottom:.75rem}.status-badge{font-size:.6875rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.status-badge.status-open{background:#22c55e1a;color:#22c55e}.status-badge.status-pre_market,.status-badge.status-after_hours{background:#fbbf241a;color:#fbbf24}.status-badge.status-closed,.status-badge.status-unknown{background:#ffffff0d;color:var(--text-muted, #6b7280)}.skeleton-rows{display:flex;flex-direction:column;gap:.625rem}.skeleton-row{height:24px;background:#ffffff0d;border-radius:4px;animation:shimmer 1.5s infinite}.index-list{display:flex;flex-direction:column;gap:.25rem}.index-row-link{text-decoration:none;border-radius:6px;transition:background .15s ease}.index-row-link:hover{background:#ffffff08}.index-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:.5rem;padding:.5rem}.index-name-wrapper{display:flex;align-items:center;gap:.5rem;min-width:0}.index-name{font-size:.875rem;color:var(--text-secondary, #9ca3af);font-weight:500;white-space:nowrap}.market-status-tag{font-size:.5625rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.market-status-tag.open{background:#22c55e26;color:#22c55e}.market-status-tag.closed{background:#ffffff0f;color:var(--text-muted, #6b7280)}.index-price{font-size:.8125rem;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:500;min-width:70px;text-align:right}.index-sparkline{width:50px;height:16px;opacity:.85}.index-change{font-size:.875rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace);text-align:right;min-width:60px}.index-change.positive{color:var(--positive, #22c55e)}.index-change.negative{color:var(--negative, #ef4444)}.movers-tabs{display:flex;gap:.25rem;background:#ffffff0d;padding:.25rem;border-radius:6px}.tab-btn{padding:.25rem .625rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;background:transparent;border:none;border-radius:4px;color:var(--text-muted, #6b7280);cursor:pointer;transition:all .15s ease}.tab-btn:hover{color:var(--text-secondary, #a1a1aa);background:#ffffff0d}.tab-btn.active{background:#22c55e33;color:#22c55e}.movers-list{display:flex;flex-direction:column;gap:.375rem}.mover-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.5rem .625rem;margin:0 -.625rem;border-radius:6px;text-decoration:none;transition:all .15s ease}.mover-row:hover{background:#ffffff08}.mover-symbol{font-size:.875rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.mover-price{font-size:.8125rem;color:var(--text-secondary, #a1a1aa);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.mover-change{font-size:.8125rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace);text-align:right;min-width:55px}.mover-change.positive{color:#22c55e}.mover-change.negative{color:#ef4444}.mover-info{display:flex;flex-direction:column;gap:.25rem;min-width:0;position:relative}.mover-symbol-line{display:flex;align-items:center;gap:.4rem;min-width:0}.mover-catalyst-indicator{width:.9rem;height:.9rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;line-height:1;flex-shrink:0;border:1px solid transparent}.mover-catalyst-indicator.evidence{color:#22c55e;background:#22c55e1f;border-color:#22c55e47}.mover-catalyst-indicator.fallback{color:#94a3b8;background:#94a3b81a;border-color:#94a3b842}.mover-hover-card{position:absolute;left:0;top:calc(100% + .35rem);z-index:30;width:min(340px,calc(100vw - 3rem));display:flex;flex-direction:column;gap:.35rem;padding:.65rem .75rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(150deg,#070b14f7,#0d1422f2);box-shadow:0 10px 24px #00000073;opacity:0;transform:translateY(-2px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.mover-row:hover .mover-hover-card,.mover-row:focus-visible .mover-hover-card,.mover-row:focus-within .mover-hover-card{opacity:1;transform:translateY(0)}.catalyst-pill{font-size:.55rem;font-weight:600;padding:.13rem .35rem;border-radius:4px;white-space:nowrap;letter-spacing:.04em;text-transform:uppercase}.catalyst-pill.evidence{background:#22c55e29;color:#22c55e}.catalyst-pill.fallback{background:#94a3b82e;color:#94a3b8}.mover-hover-text{font-size:.72rem;color:#d1d5db;line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.mover-hover-meta{font-size:.62rem;color:#9ca3af}.watchlist-summary{display:flex;flex-direction:column;gap:.75rem}.summary-stat{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.summary-stat:last-child{border-bottom:none}.view-watchlist-link{margin-top:.5rem;font-size:.8125rem;color:#22c55e;text-decoration:none;font-weight:500;transition:all .15s ease}.view-watchlist-link:hover{opacity:.8}.empty-message,.empty-watchlist{color:var(--text-muted, #6b7280);font-size:.8125rem;text-align:center;padding:1rem 0}.empty-watchlist p{margin:0 0 .75rem}.add-stocks-link{font-size:.8125rem;color:#22c55e;text-decoration:none;font-weight:500;transition:all .15s ease}.add-stocks-link:hover{opacity:.8}@media(max-width:1024px){.market-dashboard{grid-template-columns:1fr 1fr}.dashboard-card:last-child{grid-column:span 2}}@media(max-width:640px){.market-dashboard{grid-template-columns:1fr}.dashboard-card:last-child{grid-column:span 1}}.sector-preview{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1rem 1.25rem}.sector-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.sector-preview-title{font-size:.8rem;font-weight:600;color:var(--text-secondary, #a1a1aa);text-transform:uppercase;letter-spacing:.04em}.sector-preview-link{font-size:.75rem;color:var(--accent-primary, #22c55e);text-decoration:none;font-weight:500;transition:opacity .15s}.sector-preview-link:hover{opacity:.8;text-decoration:underline}.sector-preview-body{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sector-group{display:flex;flex-direction:column;gap:.25rem}.sector-group-label{display:flex;align-items:center;gap:.375rem;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #6b7280);margin-bottom:.25rem;padding-bottom:.375rem;border-bottom:1px solid rgba(255,255,255,.04)}.sector-leaders .sector-group-label{color:#22c55eb3}.sector-leaders .sector-group-label svg{color:#22c55e}.sector-laggards .sector-group-label{color:#ef4444b3}.sector-laggards .sector-group-label svg{color:#ef4444}.sector-row{display:flex;align-items:center;justify-content:space-between;padding:.4rem .5rem;border-radius:6px;text-decoration:none;transition:background .15s}.sector-row:hover{background:#ffffff0d}.sector-name{font-size:.8125rem;color:var(--text-primary, #fff);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sector-change{font-size:.8125rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace);white-space:nowrap;margin-left:.5rem}.sector-change.positive{color:#22c55e}.sector-change.negative{color:#ef4444}.sector-row.skeleton{pointer-events:none;padding:.5rem}.sector-name-skeleton{width:70px;height:12px;background:#ffffff0f;border-radius:4px;animation:sp-shimmer 1.5s infinite}.sector-change-skeleton{width:40px;height:12px;background:#ffffff0f;border-radius:4px;animation:sp-shimmer 1.5s infinite}@keyframes sp-shimmer{0%{opacity:.5}50%{opacity:.8}to{opacity:.5}}@media(max-width:640px){.sector-preview-body{grid-template-columns:1fr;gap:.75rem}}.tour-overlay{position:fixed;inset:0;background:#000000bf;z-index:9998;transition:background .3s ease;pointer-events:none}.tour-overlay.with-spotlight{background:#000000d9}.tour-spotlight{position:absolute;z-index:9999;border-radius:12px;box-shadow:0 0 0 4px #22c55e80,0 0 0 9999px #000c,0 0 40px #22c55e4d;animation:spotlight-pulse 2s ease-in-out infinite;pointer-events:none}@keyframes spotlight-pulse{0%,to{box-shadow:0 0 0 4px #22c55e80,0 0 0 9999px #000c,0 0 40px #22c55e4d}50%{box-shadow:0 0 0 6px #22c55eb3,0 0 0 9999px #000c,0 0 60px #22c55e80}}.tour-tooltip{position:absolute;z-index:10000;width:320px;background:linear-gradient(145deg,#1e1e24,#16161a);border:1px solid rgba(34,197,94,.3);border-radius:16px;box-shadow:0 20px 50px #00000080,0 0 0 1px #ffffff0d inset;overflow:hidden;animation:tooltip-appear .3s ease}.tour-tooltip.is-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:380px}.tour-tooltip.celebration{border-color:#fbbf2466;background:linear-gradient(145deg,#1e1e24,#1a1814)}@keyframes tooltip-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tour-tooltip.is-modal{animation:modal-appear .3s ease}@keyframes modal-appear{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tour-progress{height:3px;background:#ffffff1a}.tour-progress-bar{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);transition:width .3s ease}.celebration .tour-progress-bar{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.tour-close{position:absolute;top:12px;right:12px;background:transparent;border:none;color:var(--text-muted, #6b7280);cursor:pointer;padding:4px;border-radius:6px;transition:all .15s ease;z-index:1}.tour-close:hover{background:#ffffff1a;color:var(--text-primary, #fff)}.tour-content{padding:1.5rem;text-align:center}.tour-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;background:#22c55e26;border-radius:16px;color:#22c55e;margin-bottom:1rem}.celebration .tour-icon{background:#fbbf2426;color:#fbbf24;animation:celebration-bounce .6s ease infinite}@keyframes celebration-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.tour-title{font-size:1.1rem;font-weight:700;color:var(--text-primary, #fff);margin:0 0 .5rem;letter-spacing:-.3px}.tour-text{font-size:.875rem;color:var(--text-secondary, #a1a1aa);line-height:1.6;margin:0}.tour-challenge-hint{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;font-size:.75rem;color:#fbbf24}.pulse-dot{width:8px;height:8px;background:#fbbf24;border-radius:50%;animation:pulse-glow 1.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 #fbbf2480}50%{opacity:.7;box-shadow:0 0 0 6px #fbbf2400}}.tour-challenge-success{margin-top:1rem;font-size:.875rem;color:#22c55e;font-weight:600;animation:success-pop .3s ease}@keyframes success-pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.tour-signup-prompt{margin-top:1rem}.tour-signup-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:.9rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.tour-signup-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:0 8px 20px #22c55e40}.tour-nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#0003;border-top:1px solid rgba(255,255,255,.05)}.tour-step-count{font-size:.75rem;color:var(--text-muted, #6b7280);font-weight:500}.tour-buttons{display:flex;gap:.5rem}.tour-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none}.tour-btn-primary{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.tour-btn-primary:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px)}.celebration .tour-btn-primary{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1a1a1a}.tour-btn-secondary{background:#ffffff14;color:var(--text-secondary, #a1a1aa);border:1px solid rgba(255,255,255,.1)}.tour-btn-secondary:hover{background:#ffffff1f;color:var(--text-primary, #fff)}.tour-skip-link{display:block;width:100%;padding:.75rem;text-align:center;background:transparent;border:none;border-top:1px solid rgba(255,255,255,.05);color:var(--text-muted, #6b7280);font-size:.7rem;cursor:pointer;transition:color .15s ease}.tour-skip-link:hover{color:var(--text-secondary, #a1a1aa)}.guided-tour-active [data-tour=briefing-action],.guided-tour-active [data-tour=sector-card],.guided-tour-active [data-tour=watchlist-btn],.guided-tour-active .results-table tbody tr{position:relative;animation:tour-target-pulse 1.5s ease-in-out infinite}@keyframes tour-target-pulse{0%,to{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 0 4px #22c55e4d}}@media(max-width:480px){.tour-tooltip{width:calc(100vw - 32px);left:16px!important;right:16px}.tour-tooltip.is-modal{width:calc(100vw - 32px);left:50%;transform:translate(-50%,-50%)}}.event-calendar{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;margin-top:1.5rem}.event-calendar.loading{opacity:.7}.calendar-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background .15s}.calendar-header:hover{background:#ffffff05}.calendar-title{display:flex;align-items:center;gap:.625rem;font-weight:600;font-size:.9375rem;color:var(--text-primary, #fff)}.calendar-title svg{color:var(--accent-primary, #22c55e)}.event-count-badge{background:#22c55e26;color:#22c55e;font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:10px;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.expand-toggle{display:flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;color:var(--text-muted, #6b7280);cursor:pointer;border-radius:4px;transition:all .15s}.expand-toggle:hover{background:#ffffff0d;color:var(--text-primary, #fff)}.calendar-content{border-top:1px solid rgba(255,255,255,.06);padding:0}.calendar-loading{padding:1.5rem;text-align:center;color:var(--text-muted, #6b7280);font-size:.875rem}.no-events{text-align:center;padding:1.5rem 1rem;color:var(--text-muted, #6b7280);font-size:.875rem}.calendar-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.06);padding:0 1rem}.tab-btn{display:flex;align-items:center;gap:.375rem;padding:.75rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted, #6b7280);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;margin-bottom:-1px}.tab-btn:hover{color:var(--text-primary, #fff)}.tab-btn.active{color:var(--accent-primary, #22c55e);border-bottom-color:var(--accent-primary, #22c55e)}.tab-btn svg{opacity:.7}.tab-btn.active svg{opacity:1}.tab-count{background:#ffffff14;font-size:.6875rem;font-weight:600;padding:.0625rem .375rem;border-radius:8px;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.tab-btn.active .tab-count{background:#22c55e33;color:#22c55e}.earnings-tab,.economic-tab{padding:1rem 1.25rem}.earnings-legend{display:flex;align-items:center;gap:1rem;padding:.5rem .75rem;margin-bottom:.75rem;background:#ffffff08;border-radius:6px;font-size:.75rem}.legend-item{display:flex;align-items:center;gap:.375rem}.legend-icon{font-size:.75rem}.legend-label{color:var(--text-muted, #6b7280)}.econ-legend{gap:.75rem}.legend-impact{display:inline-block;width:14px;height:12px;border-radius:2px;position:relative}.legend-impact.impact-high-ff,.legend-impact.impact-medium-ff,.legend-impact.impact-low-ff{display:inline-block}.earnings-day{margin-bottom:1.25rem}.earnings-day:last-child{margin-bottom:0}.day-title{font-size:.6875rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.625rem}.earnings-grid{display:flex;flex-wrap:wrap;gap:.5rem}.earnings-chip{display:flex;align-items:center;justify-content:center;min-width:48px;padding:.5rem .75rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);border-radius:8px;cursor:pointer;transition:all .15s}.earnings-chip:hover{background:#3b82f633;border-color:#3b82f666;transform:translateY(-1px)}.earnings-chip.watchlist{background:#22c55e1f;border-color:#22c55e40}.earnings-chip.watchlist:hover{background:#22c55e33;border-color:#22c55e66}.chip-ticker{font-size:.75rem;font-weight:600;color:#60a5fa;font-family:var(--font-mono, "SF Mono", Consolas, monospace);letter-spacing:.02em}.earnings-chip.watchlist .chip-ticker{color:#22c55e}.chip-timing{font-size:.625rem;margin-left:.25rem;opacity:.8}.event-group{margin-bottom:1rem}.event-group:last-child{margin-bottom:0}.group-title{font-size:.6875rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.events-list{display:flex;flex-direction:column;gap:.375rem}.event-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:#ffffff05;border-radius:8px;border-left:3px solid transparent;transition:all .15s}.event-item:hover{background:#ffffff0a}.event-item.impact-high{border-left-color:#ef4444}.event-item.impact-medium{border-left-color:#f59e0b}.event-item.impact-low{border-left-color:#22c55e}.event-item.earnings{border-left-color:#3b82f6}.event-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0}.event-icon svg{color:#3b82f6}.impact-dot{font-size:.75rem}.event-details{flex:1;min-width:0}.event-name{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #fff)}.event-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticker-btn{background:transparent;border:none;padding:0;font-size:.875rem;font-weight:600;color:#3b82f6;cursor:pointer;font-family:var(--font-mono, "SF Mono", Consolas, monospace);transition:color .15s}.ticker-btn:hover{color:#60a5fa;text-decoration:underline}.event-label{font-size:.6875rem;font-weight:500;color:var(--text-muted, #6b7280);background:#3b82f61a;padding:.125rem .375rem;border-radius:4px}.event-meta{display:flex;align-items:center;gap:.5rem;margin-top:.125rem;font-size:.75rem;color:var(--text-muted, #6b7280)}.event-flag{font-size:.875rem}.event-time,.event-date{font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.event-data{display:flex;flex-direction:column;gap:.125rem;align-items:flex-end;flex-shrink:0}.data-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem}.data-label{color:var(--text-muted, #6b7280);text-transform:uppercase;font-size:.625rem;font-weight:600}.data-value{color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}@media(max-width:768px){.calendar-header{padding:.875rem 1rem}.calendar-tabs{padding:0 .75rem}.tab-btn{padding:.625rem .75rem;font-size:.75rem}.earnings-tab,.economic-tab{padding:.875rem 1rem}.earnings-chip{padding:.375rem .5rem;min-width:40px}.chip-ticker{font-size:.6875rem}.event-data{display:none}.event-name span{max-width:180px}}@media(max-width:480px){.event-item{padding:.5rem .625rem}.event-icon{width:20px;height:20px}.event-name{font-size:.8125rem}.earnings-grid{gap:.375rem}.earnings-chip{min-width:36px;padding:.25rem .375rem}}.econ-table-header{display:grid;grid-template-columns:80px 60px 30px 1fr 70px 70px;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border-radius:6px 6px 0 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.6875rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.04em}.econ-row{display:grid;grid-template-columns:80px 60px 30px 1fr 70px 70px;gap:.5rem;padding:.625rem .75rem;align-items:center;border-bottom:1px solid rgba(255,255,255,.04);transition:background .15s;cursor:pointer}.econ-row:hover{background:#ffffff0d}.econ-row:last-child{border-bottom:none}.econ-row.impact-high{border-left:3px solid #ef4444;margin-left:-3px;padding-left:calc(.75rem + 3px)}.econ-row.impact-medium{border-left:3px solid #f59e0b;margin-left:-3px;padding-left:calc(.75rem + 3px)}.econ-row.impact-low{border-left:3px solid #22c55e;margin-left:-3px;padding-left:calc(.75rem + 3px)}.col-time{font-size:.75rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace);color:var(--text-muted, #9ca3af);display:flex;flex-direction:column;gap:.125rem}.col-time .row-date{font-size:.625rem;color:var(--text-muted, #6b7280)}.col-currency{display:flex;align-items:center;gap:.25rem}.currency-flag{font-size:.875rem}.currency-code{font-size:.6875rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.col-impact{display:flex;align-items:center;justify-content:center}.impact-indicator{width:16px;height:14px;border-radius:2px;position:relative;display:inline-block}.impact-high-ff{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 1px 2px #dc26264d}.impact-high-ff:before{content:"";position:absolute;top:0;left:2px;right:2px;height:4px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:2px 2px 0 0}.impact-medium-ff{background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:0 1px 2px #ea580c4d}.impact-medium-ff:before{content:"";position:absolute;top:0;left:2px;right:2px;height:4px;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:2px 2px 0 0}.impact-low-ff{background:linear-gradient(135deg,#ca8a04,#a16207);box-shadow:0 1px 2px #ca8a044d}.impact-low-ff:before{content:"";position:absolute;top:0;left:2px;right:2px;height:4px;background:linear-gradient(135deg,#eab308,#ca8a04);border-radius:2px 2px 0 0}.col-event{font-size:.8125rem;color:var(--text-primary, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-forecast,.col-previous{font-size:.75rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace);color:var(--text-secondary, #d1d5db);text-align:right}.col-actual{font-size:.75rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:600;text-align:right;padding-left:.5rem}.col-actual.positive{color:#22c55e}.col-actual.negative{color:#ef4444}@media(max-width:640px){.econ-table-header{grid-template-columns:55px 50px 24px 1fr 55px 55px;font-size:.625rem;padding:.375rem .5rem}.econ-row{grid-template-columns:55px 50px 24px 1fr 55px 55px;padding:.5rem}.col-time{font-size:.6875rem}.currency-code{display:none}.col-event{font-size:.75rem}.col-forecast,.col-previous{font-size:.6875rem}}@media(max-width:480px){.econ-table-header{grid-template-columns:45px 28px 20px 1fr;gap:.25rem}.econ-table-header .col-forecast,.econ-table-header .col-previous{display:none}.econ-row{grid-template-columns:45px 28px 20px 1fr;gap:.25rem}.econ-row .col-forecast,.econ-row .col-previous,.econ-row .col-actual,.col-time .row-date{display:none}.impact-indicator{width:12px;height:10px}}.econ-high-impact-note{font-size:.7rem;color:var(--text-muted, #6b7280);margin-bottom:.75rem;display:flex;align-items:center;gap:.375rem}.econ-high-impact-note:before{content:"";display:inline-block;width:10px;height:8px;background:linear-gradient(135deg,#dc2626,#b91c1c);border-radius:2px}.week-group{margin-bottom:.75rem}.week-group:last-child{margin-bottom:0}.week-group-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.625rem .75rem;background:#ffffff08;border:none;border-radius:8px;cursor:pointer;transition:background .15s;text-align:left}.week-group-header:hover{background:#ffffff0f}.week-chevron{display:flex;align-items:center;color:var(--text-muted, #6b7280);transition:transform .2s}.week-chevron.open{transform:rotate(90deg)}.week-label{font-size:.8125rem;font-weight:600;color:var(--text-primary, #fff);flex:1}.week-event-count{font-size:.6875rem;font-weight:600;color:var(--text-muted, #6b7280);background:#ffffff0f;padding:.125rem .4rem;border-radius:8px;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.week-events{margin-top:.375rem;border-radius:0 0 8px 8px}.show-more-weeks-btn{display:block;width:100%;padding:.625rem;margin-top:.5rem;background:transparent;border:1px dashed rgba(255,255,255,.1);border-radius:8px;color:var(--text-muted, #6b7280);font-size:.8rem;cursor:pointer;transition:all .15s;text-align:center}.show-more-weeks-btn:hover{background:#ffffff08;border-color:#ffffff26;color:var(--text-primary, #fff)}.home-briefing{max-width:1000px;margin:0 auto;padding:1.5rem 2rem}.briefing-hero{margin-bottom:1.5rem}.hero-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.date-time{display:flex;flex-direction:column;gap:.15rem}.date-line{font-size:.85rem;color:var(--text-secondary, #a1a1aa);font-weight:500}.time-line{font-size:.75rem;color:var(--text-muted, #6b7280)}.market-status{display:flex;align-items:center;gap:.75rem}.status-indicator{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.35rem .75rem;border-radius:6px}.status-indicator.open{background:#22c55e1a;color:#22c55e}.status-indicator.closed{background:#ffffff0d;color:var(--text-muted, #6b7280)}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}.status-indicator.closed .status-dot{animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.active-sessions{display:flex;gap:.25rem}.session-badge{font-size:1rem;cursor:help}.briefing-hero h1{font-size:1.75rem;font-weight:700;color:var(--text-primary, #fff);margin:.25rem 0 .5rem;letter-spacing:-.5px}.personalized-badge{display:inline-flex;align-items:center;font-size:.65rem;font-weight:600;color:#22c55e;background:#22c55e1f;border:1px solid rgba(34,197,94,.2);padding:.2rem .5rem;border-radius:10px;margin-left:.75rem;vertical-align:middle;letter-spacing:.02em;text-transform:none}.briefing-actions{display:flex;align-items:center;gap:.75rem}.cache-badge{font-size:.72rem;color:var(--text-secondary, #a1a1aa);background:#ffffff0d;padding:.35rem .65rem;border-radius:6px;display:flex;align-items:center;gap:.25rem}.cache-badge.stale{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.cache-badge.fallback{background:#38bdf81f;color:#7dd3fc;border:1px solid rgba(56,189,248,.25)}.stale-indicator{font-size:.65rem;opacity:.8}.refresh-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary, #a1a1aa);padding:.35rem .75rem;border-radius:6px;cursor:pointer;font-size:.75rem;transition:all .15s ease}.refresh-btn:hover{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.mood-card{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:12px;margin-bottom:1.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);transition:all .15s ease}.mood-card.mood-bullish{border-color:#22c55e4d;background:#22c55e0d}.mood-card.mood-cautious{border-color:#fbbf244d;background:#fbbf240d}.mood-card.mood-bearish{border-color:#ef44444d;background:#ef44440d}.mood-icon{font-size:2rem}.mood-content{flex:1}.mood-headline{font-size:1.1rem;font-weight:600;color:var(--text-primary, #fff);margin-bottom:.25rem}.mood-label{font-weight:700}.mood-bullish .mood-label{color:#22c55e}.mood-cautious .mood-label{color:#fbbf24}.mood-bearish .mood-label{color:#ef4444}.mood-neutral .mood-label{color:var(--text-muted, #6b7280)}.mood-reasoning{margin:0;color:var(--text-secondary, #a1a1aa);font-size:.9rem;line-height:1.6}.market-snapshot-strip{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.625rem 1rem;margin-bottom:1.25rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px}.snapshot-item{display:inline-flex;align-items:center;gap:.5rem}.snapshot-name{font-size:.8rem;font-weight:500;color:var(--text-secondary, #a1a1aa)}.snapshot-change{font-size:.8rem;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.snapshot-positive .snapshot-change{color:#22c55e}.snapshot-negative .snapshot-change{color:#ef4444}.snapshot-divider{color:#ffffff1a;font-size:.75rem}.events-section{margin-bottom:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.section-header h2{font-size:1.1rem;color:var(--text-primary, #fff);margin:0;font-weight:600}.event-meta{display:flex;align-items:center;gap:.5rem}.event-count{font-size:.7rem;color:var(--text-muted, #6b7280);background:#ffffff0d;padding:.2rem .5rem;border-radius:4px}.events-toggle{font-size:.7rem;color:var(--text-primary, #fff);background:#ffffff14;padding:.2rem .55rem;border-radius:6px;border:1px solid rgba(255,255,255,.08);cursor:pointer}.events-toggle:hover{background:#ffffff1f}.events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.event-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:1rem 1.125rem;transition:all .15s ease}.event-card:hover{background:#ffffff0a}.event-card.positive{border-left:3px solid #22c55e;background:#22c55e0a}.event-card.negative{border-left:3px solid #ef4444;background:#ef44440a}.event-card.neutral{border-left:3px solid var(--text-muted, #6b7280)}.event-card.high-impact{border-left-width:4px}.event-card.positive.high-impact{background:#22c55e12}.event-card.negative.high-impact{background:#ef444412}.event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.event-header-left{display:flex;align-items:center;gap:.4rem}.sentiment-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:4px}.sentiment-label.positive{background:#22c55e26;color:#4ade80}.sentiment-label.negative{background:#ef444426;color:#f87171}.sentiment-label.neutral{background:#ffffff14;color:var(--text-secondary, #a1a1aa)}.event-topic{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #a1a1aa);font-weight:600}.impact-badge{display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;background:#ffffff0f;color:var(--text-secondary, #a1a1aa);border-radius:999px;padding:.1rem .45rem;text-transform:uppercase;letter-spacing:.04em}.event-headline{font-size:.9rem;color:var(--text-primary, #fff);margin:0 0 .4rem;line-height:1.35;font-weight:500}.event-headline.bold{font-weight:700}.event-implication{font-size:.8rem;color:var(--text-secondary, #a1a1aa);margin:0 0 .5rem;line-height:1.4}.event-tags{display:flex;flex-wrap:wrap;gap:.35rem}.sector-tag,.ticker-tag{font-size:.65rem;padding:.15rem .4rem;border-radius:4px}.sector-tag{background:#ffffff0d;color:var(--text-secondary, #a1a1aa)}.ticker-tag{background:#22c55e1a;color:#22c55e;font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.watchlist-section{margin-bottom:1.5rem}.watchlist-section h2{font-size:1rem;color:var(--text-primary, #fff);margin:0;font-weight:600}.watchlist-has-alerts{background:#22c55e08;border:1px solid rgba(34,197,94,.1);border-radius:10px;padding:1rem}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.75rem}.alert-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.75rem;transition:all .15s ease}.alert-card:hover{background:#ffffff08}.alert-card.high-priority{border-left:3px solid #ef4444}.alert-card.medium-priority{border-left:3px solid #fbbf24}.alert-card.low-priority{border-left:3px solid var(--text-muted, #6b7280)}.alert-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.alert-ticker{font-weight:700;color:#22c55e;font-size:.9rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.alert-type{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #6b7280);background:#ffffff0d;padding:.15rem .35rem;border-radius:4px}.alert-summary{font-size:.8rem;color:var(--text-secondary, #a1a1aa);margin:0;line-height:1.4}.briefing-footer{display:flex;justify-content:center;align-items:center;gap:.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.briefing-footer span{font-size:.7rem;color:var(--text-muted, #6b7280)}.briefing-footer .separator{color:#ffffff1a}.loading-subtitle{font-size:.85rem;color:var(--text-muted, #6b7280);margin:0;animation:fadeInOut 2s ease-in-out infinite}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}.loading-skeleton{display:flex;flex-direction:column;gap:1.5rem}.shimmer{background:linear-gradient(90deg,#ffffff08,#ffffff14,#ffffff08 80%);background-size:200% 100%;animation:shimmerSweep 1.8s ease-in-out infinite;border-radius:6px}@keyframes shimmerSweep{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-mood-card{display:flex;align-items:flex-start;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:#ffffff05}.skeleton-mood-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0}.skeleton-mood-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.skeleton-line{height:12px}.skeleton-line-short{width:35%}.skeleton-line-medium{width:70%}.skeleton-line-full{width:100%}.skeleton-section{display:flex;flex-direction:column;gap:.75rem}.skeleton-section-title{height:16px;width:160px}.skeleton-dates-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.skeleton-dates-col{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:10px;border:1px solid rgba(255,255,255,.06);background:#ffffff05}.skeleton-chips{display:flex;flex-wrap:wrap;gap:.375rem}.skeleton-chip{width:60px;height:28px;border-radius:6px}.skeleton-events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.skeleton-event-card{height:110px;border-radius:10px;border:1px solid rgba(255,255,255,.04)}@media(max-width:768px){.skeleton-dates-grid,.skeleton-events-grid{grid-template-columns:1fr}}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:1.25rem;text-align:center}.error-message p{color:#ef4444;margin:0 0 .75rem;font-size:.9rem}.error-message button{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:.4rem 1rem;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .15s ease}.error-message button:hover{background:#ef444433}.no-data{color:var(--text-muted, #6b7280);font-style:italic;text-align:center;padding:1.5rem;font-size:.85rem}@media(max-width:768px){.home-briefing{padding:1rem}.hero-top{flex-direction:column;gap:.75rem}.market-status{align-self:flex-start}.events-grid,.alerts-grid,.skeleton-grid{grid-template-columns:1fr}}.filings-section{margin-bottom:1.5rem}.filing-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.875rem;transition:all .15s ease}.filing-card:hover{background:#ffffff08}.filing-card.severity-critical{border-left:3px solid #ef4444;background:#ef44440d}.filing-card.severity-warning{border-left:3px solid #fbbf24;background:#fbbf240d}.filing-card.severity-info{border-left:3px solid var(--text-muted, #6b7280)}.filing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.filing-ticker{font-weight:700;color:#22c55e;font-size:.95rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.severity-badge{font-size:.9rem}.filing-item-type{font-size:.7rem;color:var(--text-muted, #6b7280);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.05em}.filing-summary{font-size:.85rem;color:var(--text-primary, #fff);margin:0 0 .5rem;line-height:1.4}.filing-action{font-size:.75rem;color:var(--text-secondary, #a1a1aa)}.empty-state .generate-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;background:#ffffff05;border:1px dashed rgba(255,255,255,.1);border-radius:12px;margin-top:1rem}.generate-icon{font-size:3rem;margin-bottom:1rem}.generate-prompt h3{font-size:1.25rem;color:var(--text-primary, #fff);margin:0 0 .5rem;font-weight:600}.generate-prompt p{color:var(--text-secondary, #a1a1aa);font-size:.9rem;margin:0 0 1.5rem;line-height:1.6}.token-note{font-size:.75rem;color:var(--text-muted, #6b7280);display:block;margin-top:.5rem}.generate-btn{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3);padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .15s ease}.generate-btn:hover{background:#22c55e40;border-color:#22c55e80}.generate-btn:active{background:#22c55e4d}.key-dates-section{margin-bottom:1.5rem}.key-dates-section .section-header{margin-bottom:.75rem}.key-dates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.key-dates-column{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:1rem}.key-dates-day-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #6b7280);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.key-dates-group{margin-bottom:.75rem}.key-dates-group:last-child{margin-bottom:0}.key-dates-group-label{display:block;font-size:.65rem;font-weight:500;color:var(--text-secondary, #a1a1aa);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.03em}.key-dates-items{display:flex;flex-wrap:wrap;gap:.375rem}.key-dates-items.economic{flex-direction:column;gap:.5rem}.key-date-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .625rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);border-radius:6px;cursor:pointer;transition:all .15s}.key-date-chip:hover{background:#3b82f633;border-color:#3b82f666;transform:translateY(-1px)}.key-date-chip .chip-ticker{font-size:.75rem;font-weight:600;color:#60a5fa;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.key-date-chip .chip-timing{font-size:.625rem;opacity:.9}.more-count{font-size:.7rem;color:var(--text-muted, #6b7280);padding:.25rem .5rem}.more-count-btn{font-size:.7rem;color:#60a5fa;padding:.375rem .625rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:6px;cursor:pointer;transition:all .15s ease;font-weight:500}.more-count-btn:hover{background:#3b82f626;border-color:#3b82f659;color:#93c5fd}.key-date-economic{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#ef444414;border:1px solid rgba(239,68,68,.15);border-radius:6px}.key-date-economic .economic-flag{font-size:.875rem}.key-date-economic .economic-name{flex:1;font-size:.75rem;color:var(--text-primary, #fff);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.key-date-economic .economic-time{font-size:.65rem;color:var(--text-muted, #6b7280);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}@media(max-width:600px){.key-dates-grid{grid-template-columns:1fr}}.refresh-error-banner{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding:.75rem 1rem;background:#fbbf241a;border:1px solid rgba(251,191,36,.25);border-radius:8px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.refresh-error-banner .error-icon{font-size:1.1rem;flex-shrink:0}.refresh-error-banner .error-text{flex:1;font-size:.8rem;color:#fbbf24;line-height:1.4}.refresh-error-banner .retry-btn{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3);padding:.35rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.refresh-error-banner .retry-btn:hover{background:#fbbf2440;border-color:#fbbf2480}.home-briefing.auth-gate{min-height:400px}.home-briefing.auth-gate .hero-subtitle{font-size:.9rem;color:var(--text-muted, #6b7280);margin-top:.25rem}.auth-gate-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#22c55e0d,#22c55e05);border:1px solid rgba(34,197,94,.15);border-radius:16px;margin-top:1.5rem}.auth-gate-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:#22c55e1a;border-radius:50%;color:#22c55e;margin-bottom:1.5rem}.auth-gate-content h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #fff);margin:0 0 .5rem}.auth-gate-content>p{font-size:.95rem;color:var(--text-secondary, #a1a1aa);margin:0 0 1.5rem}.auth-gate-features{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:.75rem}.auth-gate-features li{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-primary, #fff)}.auth-gate-features li svg{color:#22c55e}.auth-gate-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.auth-gate-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:0 10px 30px #22c55e4d}@media(max-width:600px){.auth-gate-content{padding:2rem 1.25rem}.auth-gate-content h2{font-size:1.25rem}}.preview-age-badge{display:inline-block;font-size:.72rem;color:var(--text-secondary, #a1a1aa);background:#ffffff0d;padding:.35rem .65rem;border-radius:6px;margin-top:.25rem}.home-briefing.demo-mode{position:relative}.demo-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#8b5cf626,#3b82f626);border:1px solid rgba(139,92,246,.3);border-radius:12px;margin-bottom:1.5rem;flex-wrap:wrap}.demo-banner svg{color:#8b5cf6}.demo-banner span{font-size:.9rem;color:var(--text-secondary, #a1a1aa)}.demo-signup-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;font-size:.85rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.demo-signup-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.demo-cta{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem 2rem;background:linear-gradient(135deg,#22c55e1a,#16a34a0d);border:1px solid rgba(34,197,94,.2);border-radius:16px;margin-top:2rem}.demo-cta-content h3{font-size:1.1rem;font-weight:600;color:var(--text-primary, #fff);margin:0 0 .25rem}.demo-cta-content p{font-size:.85rem;color:var(--text-secondary, #a1a1aa);margin:0}@media(max-width:600px){.demo-banner{gap:.5rem;padding:.625rem 1rem}.demo-banner span{font-size:.8rem;text-align:center}.demo-cta{flex-direction:column;text-align:center;padding:1.25rem 1rem}.demo-cta .auth-gate-btn{width:100%;justify-content:center}}.dashboard-section{margin-bottom:1.5rem}.section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.06);gap:1rem}.section-titles{flex:1}.section-title{font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);margin:0;text-transform:uppercase;letter-spacing:.05em}.section-subtitle{font-size:.75rem;color:var(--text-muted, #6b7280);margin:.25rem 0 0}.section-action{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:500;color:#22c55e;text-decoration:none;white-space:nowrap;transition:all .15s ease}.section-action:hover{opacity:.8}.action-arrow{transition:transform .15s ease}.section-action:hover .action-arrow{transform:translate(2px)}@media(max-width:640px){.section-header-row{flex-direction:column;align-items:flex-start}.section-action{margin-top:.5rem}}.recents-chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .875rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-primary, #fff);font-size:.8125rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer}.chip:hover{background:#22c55e1f;border-color:#22c55e4d;color:var(--positive, #22c55e);transform:translateY(-1px)}.chip:active{transform:translateY(0)}.chip.skeleton{width:60px;height:32px;background:#ffffff0d;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{opacity:.5}50%{opacity:.8}to{opacity:.5}}.recents-empty{text-align:center;padding:1.5rem 1rem;color:var(--text-muted, #6b7280)}.recents-empty p{margin:0;font-size:.875rem}.recents-empty .empty-hint{margin-top:.5rem;font-size:.8125rem;opacity:.8}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:300px;padding:2rem}.error-boundary-content{text-align:center;max-width:400px}.error-boundary-icon{font-size:3rem;margin-bottom:1rem}.error-boundary-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.error-boundary-message{color:var(--text-muted);margin-bottom:1.5rem;line-height:1.5}.error-boundary-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.error-boundary-button{padding:.625rem 1.25rem;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-decoration:none;border:none}.error-boundary-button.primary{background:var(--accent, #22c55e);color:var(--bg-primary, #000)}.error-boundary-button.primary:hover{opacity:.9;transform:translateY(-1px)}.error-boundary-button.secondary{background:transparent;color:var(--text-muted);border:1px solid rgba(255,255,255,.1)}.error-boundary-button.secondary:hover{background:#ffffff0d;color:var(--text-primary)}.error-boundary-details{margin-top:1.5rem;text-align:left;background:#ffffff08;border-radius:.5rem;padding:1rem}.error-boundary-details summary{cursor:pointer;font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem}.error-boundary-details pre{font-size:.7rem;color:var(--negative, #ef4444);white-space:pre-wrap;word-break:break-all;margin:0;max-height:200px;overflow-y:auto}.widget-error{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.75rem;color:var(--text-muted);font-size:.875rem}.widget-error-icon{font-size:1.25rem}.widget-error-text{color:var(--text-muted)}.home-dashboard{padding:1.5rem;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.home-dashboard>*+*{padding-top:.25rem}.home-dashboard>.home-briefing-wrapper{border-top:1px solid rgba(255,255,255,.04);padding-top:1rem}.home-bottom-grid{display:grid;grid-template-columns:1fr 2fr;gap:1rem;margin-top:.5rem}@media(max-width:1024px){.home-bottom-grid{grid-template-columns:1fr}}@media(max-width:640px){.home-dashboard{padding:1rem;gap:1rem}}.tooltip-wrapper{position:relative;display:inline-flex;align-items:center;cursor:help}.tooltip-content{position:absolute;z-index:1000;padding:.5rem .75rem;font-size:.75rem;font-weight:400;line-height:1.4;color:#e4e4e7;background:#18181bf2;border:1px solid rgba(255,255,255,.1);border-radius:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000004d;white-space:normal;width:-moz-max-content;width:max-content;max-width:280px;pointer-events:none;animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tooltip-top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-left{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.tooltip-right{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:.625rem;font-weight:600;color:#71717a;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50%;margin-left:.375rem;cursor:help;transition:all .15s}.info-icon:hover{color:#a1a1aa;background:#ffffff1a;border-color:#fff3}.price-chart-container{background:#ffffff05;border-radius:12px;padding:1rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.price-chart-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #9ca3af);margin-bottom:.75rem}.price-chart{width:100%;min-height:250px}.price-chart-empty{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-muted, #9ca3af);font-size:.875rem}.skeleton-page{animation:fadeIn .3s ease}.skeleton-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;overflow:hidden}.skeleton-line{background:linear-gradient(90deg,var(--bg-card-solid) 0%,#2a2a2e 50%,var(--bg-card-solid) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:4px;height:1rem;margin-bottom:.5rem}.skeleton-line.short{width:30%}.skeleton-line.medium{width:60%}.skeleton-line.long{width:90%}.error-container{text-align:center;padding:4rem 2rem;max-width:500px;margin:0 auto}.error-icon{font-size:4rem;margin-bottom:1.5rem}.error-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.error-message{color:var(--text-secondary);line-height:1.6;margin-bottom:2rem}.error-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.error-button{padding:.75rem 1.5rem;font-size:1rem;font-family:inherit;font-weight:600;border-radius:var(--radius-md);cursor:pointer;text-decoration:none;transition:all .2s}.error-button.primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);color:#000;border:none}.error-button.primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #22c55e4d}.error-button.secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.error-button.secondary:hover{border-color:var(--text-muted)}.error-suggestions{padding-top:1.5rem;border-top:1px solid var(--border-color)}.error-suggestions p{color:var(--text-muted);font-size:.875rem;margin-bottom:1rem}.suggestion-chips{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.chip{padding:.5rem 1rem;background:var(--bg-card-solid);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--accent);text-decoration:none;font-weight:600;font-size:.875rem;transition:all .2s}.chip:hover{background:#22c55e1a;border-color:var(--accent)}.earnings-card{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border:1px solid var(--accent);border-radius:var(--radius-lg);padding:1.5rem}.earnings-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.earnings-icon{font-size:1.25rem}.earnings-title{font-size:.875rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.05em}.earnings-date{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.earnings-estimates{display:flex;flex-direction:column;gap:.5rem}.estimate-row{display:flex;justify-content:space-between;align-items:center}.estimate-label{font-size:.875rem;color:var(--text-muted)}.estimate-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.estimate-range{font-size:.75rem;color:var(--text-muted);font-weight:400;margin-left:.5rem}.news-section{margin-top:2rem}.news-list{display:flex;flex-direction:column;gap:.5rem}.news-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:border-color .2s,background .2s}.news-item:hover{border-color:var(--accent);background:#22c55e0d}.news-content{flex:1;min-width:0}.news-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem;line-height:1.4}.news-summary{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.4}.news-meta{display:flex;gap:1rem;font-size:.75rem;color:var(--text-muted)}.news-publisher{font-weight:500}.news-arrow{color:var(--text-muted);font-size:1.25rem;margin-left:1rem;transition:transform .2s,color .2s}.news-item:hover .news-arrow{transform:translate(4px);color:var(--accent)}.balance-sheet-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.balance-sheet-title{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.balance-sheet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:640px){.balance-sheet-grid{grid-template-columns:1fr}}.balance-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.balance-item:last-child{border-bottom:none}.balance-label{font-size:.875rem;color:var(--text-muted)}.balance-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.balance-value.positive{color:var(--positive)}.balance-value.negative{color:var(--negative)}.smart-signals{margin-bottom:0}.signals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:1.5rem}@media(max-width:1024px){.signals-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.signals-grid{grid-template-columns:1fr}}.signal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;transition:all .2s ease}.signal-card:hover{border-color:#3f3f46;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.signal-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.signal-icon{font-size:1.25rem}.signal-title{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.info-icon{font-size:.75rem;color:var(--text-muted);cursor:help;position:relative;opacity:.5;transition:opacity .2s}.info-icon:hover{opacity:1}.info-icon:hover:after{content:attr(data-tooltip);position:absolute;bottom:120%;left:50%;transform:translate(-50%);background:#18181b;color:var(--text-secondary);padding:.5rem .75rem;border-radius:6px;font-size:.7rem;font-weight:400;text-transform:none;letter-spacing:normal;white-space:normal;width:200px;border:1px solid #27272a;box-shadow:0 4px 12px #0000004d;z-index:10;line-height:1.4}.signal-score{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.5rem;font-variant-numeric:tabular-nums}.signal-status{font-size:.875rem;font-weight:600;margin-bottom:.75rem}.signal-details{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.signal-card.passing{border-color:var(--positive);background:linear-gradient(135deg,rgba(34,197,94,.1) 0%,transparent 100%)}.signal-card.passing .signal-score,.signal-card.passing .signal-status{color:var(--positive)}.signal-card.failing{border-color:var(--negative);background:linear-gradient(135deg,rgba(239,68,68,.1) 0%,transparent 100%)}.signal-card.failing .signal-score,.signal-card.failing .signal-status{color:var(--negative)}.signal-card.roic-excellent{border-color:var(--positive)}.signal-card.roic-excellent .signal-score,.signal-card.roic-excellent .roic-rating{color:var(--positive)}.signal-card.roic-good{border-color:#22c55e80}.signal-card.roic-good .signal-score{color:#86efac}.signal-card.roic-fair{border-color:#f59e0b}.signal-card.roic-fair .signal-score,.signal-card.roic-fair .roic-rating{color:#fbbf24}.signal-card.roic-poor{border-color:var(--negative)}.signal-card.roic-poor .signal-score,.signal-card.roic-poor .roic-rating{color:var(--negative)}.insider-bars{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.bar-container{display:grid;grid-template-columns:50px 1fr 60px;align-items:center;gap:.75rem}.bar-label{font-size:.75rem;color:var(--text-muted)}.bar-track{height:8px;background:var(--bg-card-solid);border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.bar-fill.buying{background:linear-gradient(90deg,var(--positive) 0%,#86efac 100%)}.bar-fill.selling{background:linear-gradient(90deg,var(--negative) 0%,#fca5a5 100%)}.bar-value{font-size:.75rem;color:var(--text-secondary);text-align:right}.signal-card.insider-high-conviction{border-color:var(--positive)}.signal-card.insider-high-conviction .signal-status{color:var(--positive)}.signal-card.insider-selling-pressure{border-color:var(--negative)}.signal-card.insider-selling-pressure .signal-status{color:var(--negative)}.signal-card.insider-neutral .signal-status{color:var(--text-muted)}.fair-value-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;transition:all .2s ease}.fair-value-card:hover{border-color:#3f3f46;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.fair-value-card .signal-header{justify-content:flex-start}.valuation-badge{margin-left:auto;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.valuation-badge.undervalued{background:#22c55e33;color:var(--positive)}.valuation-badge.overvalued{background:#ef444433;color:var(--negative)}.valuation-badge.fair{background:#71717a33;color:var(--text-secondary)}.fair-value-comparison{display:flex;align-items:center;justify-content:center;gap:2rem;margin:1.5rem 0}.price-column{text-align:center}.price-label{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem}.price-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.price-arrow{font-size:1.5rem;color:var(--text-muted)}.upside-column{text-align:center;padding:.75rem 1rem;background:var(--bg-card-solid);border-radius:var(--radius-md)}.upside-value{font-size:1.25rem;font-weight:700}.upside-value.positive{color:var(--positive)}.upside-value.negative{color:var(--negative)}.upside-label{font-size:.75rem;color:var(--text-muted)}.fair-value-basis{text-align:center;font-size:.75rem;color:var(--text-muted)}.fair-value-card.undervalued{border-color:var(--positive)}.fair-value-card.overvalued{border-color:var(--negative)}.fair-value-card.unavailable{border-color:var(--border-color)}.valuation-badge.unavailable{background:#71717a33;color:var(--text-muted)}.fair-value-unavailable{display:flex;align-items:center;justify-content:center;gap:2rem;margin:1.5rem 0;padding:1rem}.unavailable-message{display:flex;flex-direction:column;align-items:center;gap:.25rem;text-align:center;color:var(--text-secondary);font-size:.9rem}.unavailable-icon{font-size:1.25rem;margin-bottom:.25rem}.unavailable-reason{font-size:.75rem;color:var(--text-muted)}.earnings-filings{margin-bottom:0}.ef-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.ef-tab{background:none;border:none;padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.ef-tab:hover{color:var(--text-secondary)}.ef-tab.active{color:var(--text-primary);border-bottom-color:var(--positive)}.ef-tab-content{min-height:100px}.earnings-intel{margin-bottom:0}.earnings-empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center}.earnings-empty-state .empty-icon{font-size:2rem}.earnings-empty-state p{color:var(--text-secondary);margin:0;font-size:.9rem}.earnings-empty-state .empty-hint{color:var(--text-muted);font-size:.8rem}.earnings-summary-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:1rem}.earnings-summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.earnings-sentiment-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.earnings-sentiment-badge.bullish{background:#22c55e26;color:var(--positive)}.earnings-sentiment-badge.bearish{background:#ef444426;color:var(--negative)}.earnings-sentiment-badge.neutral{background:#eab30826;color:#eab308}.earnings-sources{font-size:.7rem;color:var(--text-muted)}.earnings-summary-text{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0}.earnings-metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.earnings-metric-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.earnings-metric-label{font-size:.7rem;color:var(--text-muted);text-transform:capitalize}.earnings-metric-value{font-size:.95rem;color:var(--text-primary)}.earnings-drivers-section{margin-bottom:1rem}.drivers-title{font-size:.85rem;font-weight:600;margin:0 0 .5rem}.drivers-title.bullish{color:var(--positive)}.drivers-title.bearish{color:var(--negative)}.drivers-list{list-style:none;padding:0;margin:0}.drivers-list li{padding:.5rem .75rem;font-size:.85rem;color:var(--text-secondary);border-left:3px solid;margin-bottom:.375rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#ffffff05}.drivers-list.bullish li{border-left-color:var(--positive)}.drivers-list.bearish li{border-left-color:var(--negative)}.earnings-guidance{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:1rem}.earnings-guidance h4{font-size:.85rem;color:var(--text-secondary);margin:0 0 .5rem}.earnings-guidance p{font-size:.85rem;color:var(--text-muted);margin:0;line-height:1.5}.earnings-takeaways{margin-bottom:.5rem}.earnings-takeaways h4{font-size:.85rem;color:var(--text-secondary);margin:0 0 .5rem}.earnings-takeaways ul{list-style:disc;padding-left:1.25rem;margin:0}.earnings-takeaways li{font-size:.85rem;color:var(--text-muted);margin-bottom:.25rem;line-height:1.5}.filing-insights{margin-bottom:0}.filings-empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center}.filings-empty-state .empty-icon{font-size:2rem}.filings-empty-state p{color:var(--text-secondary);margin:0;font-size:.9rem}.filings-empty-state .empty-hint{color:var(--text-muted);font-size:.8rem}.filing-insights .section-header{display:flex;justify-content:space-between;align-items:center}.filing-insights-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.filings-refresh-group{display:flex;align-items:center;gap:.5rem}.filings-refresh-status{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.filings-refresh-status.ok{color:#22c55e}.filings-refresh-status.error{color:var(--negative)}.form-type-filters{display:flex;gap:.25rem}.form-filter-btn{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;color:var(--text-muted);padding:.25rem .625rem;cursor:pointer;transition:all .2s}.form-filter-btn:hover{color:var(--text-secondary);border-color:var(--text-muted)}.form-filter-btn.active{color:var(--text-primary);background:var(--bg-card-solid);border-color:var(--text-secondary)}.form-filter-btn.active.filter-8k{border-color:#eab308;color:#eab308}.form-filter-btn.active.filter-10k{border-color:#3b82f6;color:#3b82f6}.form-filter-btn.active.filter-10q{border-color:#a855f7;color:#a855f7}.refresh-btn{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-muted);padding:.25rem .75rem;cursor:pointer;opacity:.8;transition:opacity .2s,border-color .2s;min-width:94px}.refresh-btn:hover:not(:disabled){opacity:1;border-color:var(--text-secondary)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.loading-state,.error-state{padding:2rem;text-align:center;color:var(--text-muted)}.error-state{color:var(--negative)}.filings-preview{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.filings-count{color:var(--text-secondary);margin-bottom:1rem}.filings-list-preview{list-style:none;padding:0;margin:0 0 1.5rem}.filings-list-preview li{display:flex;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.filings-list-preview .filing-date{color:var(--text-muted);font-size:.875rem;min-width:100px}.filings-list-preview .filing-desc{color:var(--text-primary)}.generate-cta{background:linear-gradient(135deg,rgba(34,197,94,.08) 0%,transparent 100%);border:1px dashed rgba(34,197,94,.3);border-radius:var(--radius-md);padding:1.5rem;text-align:center}.generate-cta h3{color:var(--text-primary);margin:0 0 .5rem}.generate-cta p{color:var(--text-muted);margin:0 0 1rem;font-size:.875rem}.generate-btn{background:var(--positive);color:#000;border:none;padding:.75rem 2rem;font-size:1rem;font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:background .2s}.generate-btn:hover:not(:disabled){background:#16a34a}.generate-btn:disabled{opacity:.7;cursor:not-allowed}.analyzing-status{margin-top:1rem;font-size:.875rem;color:var(--text-muted)}.analyzing-status p{margin:.25rem 0}.time-warning{color:var(--text-secondary);font-style:italic}.company-context-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem 1.5rem;margin-bottom:1rem}.company-context-card h3{margin:0 0 .75rem;font-size:.9rem;color:var(--text-secondary)}.context-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.context-item{font-size:.8rem;color:var(--text-muted)}.context-item strong{color:var(--text-secondary)}.filing-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:1rem;overflow:hidden}.filing-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;cursor:pointer;transition:background .2s}.filing-header:hover{background:var(--bg-card-solid)}.filing-meta{display:flex;align-items:center;gap:1rem}.form-type{background:var(--bg-card-solid);padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;color:var(--text-secondary)}.form-type-badge{padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;letter-spacing:.03em;white-space:nowrap}.form-type-badge.form-8k{background:#eab30826;color:#eab308}.form-type-badge.form-10k{background:#3b82f626;color:#3b82f6}.form-type-badge.form-10q{background:#a855f726;color:#a855f7}.filing-meta .filing-date{color:var(--text-muted);font-size:.875rem}.filing-meta .filing-desc{color:var(--text-primary)}.sentiment-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.sentiment-badge.bullish{background:#22c55e33;color:var(--positive)}.sentiment-badge.bearish{background:#ef444433;color:var(--negative)}.sentiment-badge.neutral{background:#eab30833;color:#eab308}.signal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:.35rem}.signal-dot.bullish{background:var(--positive)}.signal-dot.bearish{background:var(--negative)}.signal-dot.neutral{background:#eab308}.filing-body{padding:1.5rem;border-top:1px solid var(--border-color)}.insight-summary{font-size:1rem;font-style:italic;color:var(--text-secondary);margin-bottom:1.5rem;padding:1rem;background:var(--bg-card-solid);border-radius:var(--radius-md)}.insights-section h4,.quotes-section h4,.watch-section h4{font-size:.9rem;color:var(--text-secondary);margin:1rem 0 .5rem}.insights-list{list-style:none;padding:0;margin:0}.insights-list li{display:flex;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.insights-list li:last-child{border-bottom:none}.insight-content{flex:1}.insight-text{color:var(--text-primary);font-weight:500}.insight-why{color:var(--text-muted);font-size:.85rem;margin-top:.25rem}.quotes-section blockquote{background:var(--bg-card-solid);border-left:3px solid var(--positive);padding:1rem;margin:.5rem 0;border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;color:var(--text-primary)}.quotes-section blockquote footer{font-style:normal;color:var(--text-muted);font-size:.85rem;margin-top:.5rem}.watch-section ul{list-style:disc;padding-left:1.5rem;color:var(--text-secondary)}.watch-section li{margin:.25rem 0}.view-filing-link{display:inline-block;margin-top:1rem;color:var(--positive);text-decoration:none;font-size:.875rem}.view-filing-link:hover{text-decoration:underline}.filing-card.collapsed .filing-body{display:none}.relevance-filter{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;margin-bottom:1rem;background:#ffffff05;border-radius:var(--radius-md);border:1px solid var(--border-color)}.toggle-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--text-secondary)}.toggle-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--positive);cursor:pointer}.filter-info{font-size:.75rem;color:var(--text-muted)}.relevance-badge{padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600}.relevance-badge.relevance-high{background:#ef444426;color:#ef4444}.relevance-badge.relevance-medium{background:#eab30826;color:#eab308}.relevance-badge.relevance-low{background:#64748b26;color:#64748b}.quality-badge{padding:.125rem .5rem;border-radius:999px;font-size:.68rem;font-weight:600;white-space:nowrap;border:1px solid transparent}.quality-badge.quality-full-text{background:#22c55e1f;color:#4ade80;border-color:#22c55e47}.quality-badge.quality-metadata-only{background:#eab3081f;color:#facc15;border-color:#eab30847}.quality-badge.quality-low-confidence{background:#ef44441f;color:#f87171;border-color:#ef444447}.metrics-section h4{font-size:.9rem;color:var(--text-secondary);margin:1rem 0 .5rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem}.metric-item{background:var(--bg-card-solid);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.625rem .75rem;display:flex;flex-direction:column;gap:.15rem}.metric-name{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.metric-value{font-size:.9rem;font-weight:600;color:var(--text-primary)}.metric-context{font-size:.75rem;color:var(--text-muted);line-height:1.3}@media(max-width:768px){.context-grid{grid-template-columns:1fr}.filing-meta{flex-wrap:wrap;gap:.5rem}.earnings-metrics-grid{grid-template-columns:repeat(2,1fr)}.earnings-summary-header{flex-direction:column;align-items:flex-start;gap:.5rem}.filing-insights-actions{flex-wrap:wrap;gap:.5rem}.metrics-grid{grid-template-columns:repeat(2,1fr)}}.analyst-ratings{margin-bottom:0}.analyst-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.analyst-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;transition:all .2s ease}.analyst-card:hover{border-color:#3f3f46;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.card-title{font-size:.9rem;color:var(--text-secondary);font-weight:600;margin-bottom:1rem}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.card-title-row .card-title{margin-bottom:0}.card-asof{font-size:.72rem;color:var(--text-muted);white-space:nowrap}.loading-state,.error-state,.empty-state{padding:2rem;text-align:center;color:var(--text-muted)}.not-available{padding:1.5rem;text-align:center;color:var(--text-muted);font-style:italic;background:var(--bg-card-solid);border-radius:var(--radius-md)}.consensus-bar{display:flex;height:36px;border-radius:8px;overflow:hidden;margin-bottom:.75rem}.bar-segment{display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;min-width:0;transition:all .2s}.bar-segment.strong-buy{background:#16a34a}.bar-segment.buy{background:#4ade80;color:#000}.bar-segment.hold{background:#eab308;color:#000}.bar-segment.sell{background:#f97316}.bar-segment.strong-sell{background:#dc2626}.bar-legend{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.legend-item{font-size:.7rem;padding:.15rem .5rem;border-radius:var(--radius-sm)}.legend-item.strong-buy{background:#16a34a33;color:#22c55e}.legend-item.buy{background:#4ade8033;color:#4ade80}.legend-item.hold{background:#eab30833;color:#eab308}.legend-item.sell{background:#f9731633;color:#f97316}.legend-item.strong-sell{background:#dc262633;color:#ef4444}.period-info{font-size:.75rem;color:var(--text-muted)}.price-target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.target-item{text-align:center;padding:.5rem;background:#ffffff05;border-radius:var(--radius-md)}.target-label{display:block;font-size:.7rem;color:var(--text-muted);margin-bottom:.25rem;text-transform:uppercase}.target-value{font-size:1.25rem;font-weight:700}.target-value.low{color:var(--negative)}.target-value.mean{color:var(--text-primary)}.target-value.high{color:var(--positive)}.upside-indicator{text-align:center;padding:.5rem;border-radius:var(--radius-md);font-weight:600;margin-bottom:.5rem}.upside-indicator.positive{background:#22c55e26;color:var(--positive)}.upside-indicator.negative{background:#ef444426;color:var(--negative)}.current-price-note{text-align:center;font-size:.8rem;color:var(--text-muted)}.trend-card{margin-top:1rem}.trend-table{overflow-x:auto}.trend-table table{width:100%;border-collapse:collapse;font-size:.85rem}.trend-table th,.trend-table td{padding:.5rem .75rem;text-align:center;border-bottom:1px solid var(--border-color)}.trend-table th{color:var(--text-muted);font-weight:500;font-size:.75rem}.trend-table th:first-child,.trend-table td:first-child{text-align:left}.trend-table td.strong-buy{color:#22c55e}.trend-table td.buy{color:#4ade80}.trend-table td.hold{color:#eab308}.trend-table td.sell{color:#f97316}.trend-table td.strong-sell{color:#ef4444}.upgrades-card{margin-top:1rem}.upgrades-list{display:flex;flex-direction:column;gap:.5rem}.upgrade-item{display:grid;grid-template-columns:100px 1fr 150px 100px;gap:.75rem;padding:.75rem;background:var(--bg-card-solid);border-radius:var(--radius-md);font-size:.85rem;align-items:center}.upgrade-date{color:var(--text-muted)}.upgrade-firm{color:var(--text-primary);font-weight:500}.upgrade-grades{color:var(--text-secondary);text-align:center}.upgrade-action{text-align:right;font-weight:600;text-transform:capitalize}.upgrade-action.upgrade{color:var(--positive)}.upgrade-action.downgrade{color:var(--negative)}.upgrade-action.maintain,.upgrade-action.reiterated{color:var(--text-muted)}@media(max-width:768px){.analyst-grid{grid-template-columns:1fr}.upgrade-item{grid-template-columns:80px 1fr 80px}.upgrade-action{display:none}}.financials-chart{margin-bottom:0}.financials-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.financials-header .section-header{margin:0}.financials-asof{font-size:.72rem;color:var(--text-muted)}.time-range-toggle{display:flex;gap:.25rem;background:#ffffff08;border-radius:.5rem;padding:.25rem}.range-btn{padding:.375rem .75rem;border:none;background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s}.range-btn:hover{color:var(--text-primary);background:#ffffff0d}.range-btn.active{background:var(--positive);color:#000}.metric-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.metric-tab{padding:.5rem 1rem;border:none;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:.5rem .5rem 0 0;transition:all .2s;position:relative}.metric-tab:hover{color:var(--text-primary);background:#ffffff08}.metric-tab.active{color:var(--text-primary);background:#ffffff0d}.metric-tab.active:after{content:"";position:absolute;bottom:-.5rem;left:0;right:0;height:2px;background:var(--positive)}.chart-container,.financials-skeleton{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem}.skeleton-chart{height:220px;background:linear-gradient(90deg,#ffffff08,#ffffff0f,#ffffff08);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.financials-empty{padding:3rem;text-align:center;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.financials-tooltip{background:#18181b;border:1px solid #27272a;border-radius:8px;padding:.75rem;font-size:.875rem}.tooltip-label{color:#a1a1aa;margin-bottom:.5rem;font-weight:500}.tooltip-row{display:flex;justify-content:space-between;gap:1rem;margin-top:.25rem}.tooltip-name{color:inherit}.tooltip-value{font-weight:600}.financials-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-top:1rem}.summary-item{display:flex;flex-direction:column;gap:.35rem;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.summary-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.25rem}.summary-value.trend-up{color:var(--positive)}.summary-value.trend-down{color:var(--negative)}.trend-indicator{font-size:.75rem}@media(max-width:768px){.financials-header{flex-direction:column;align-items:flex-start;gap:.75rem}.metric-tabs{overflow-x:auto;flex-wrap:nowrap}.financials-summary{grid-template-columns:repeat(2,1fr);gap:.5rem}}.modal-backdrop{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-card, #13141b);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:var(--radius-lg, 12px);box-shadow:0 25px 50px -12px #000000b3;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1));background:#ffffff05}.modal-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary, #fff)}.close-btn{padding:.5rem;background:transparent;border:none;color:var(--text-muted, #9ca3af);font-size:1.2rem;line-height:1;cursor:pointer;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.close-btn:hover{background:#ffffff1a;color:#fff}.modal-body{padding:1.5rem}.modal-loading{padding:3rem;display:flex;justify-content:center;align-items:center;color:var(--text-muted);font-size:.9rem}.price-info{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:var(--radius-md, 8px);margin-bottom:1.5rem}.price-info .price-label{color:var(--text-secondary, #d1d5db);font-size:.9rem;font-weight:500}.price-info .price-value{font-size:1.25rem;font-weight:700;color:var(--positive, #22c55e);font-family:var(--font-mono, monospace)}.list-selection,.new-list-form,.notes-section{margin-bottom:1.5rem}.list-selection label,.new-list-form label,.notes-section label{display:block;margin-bottom:.5rem;color:var(--text-secondary, #9ca3af);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.list-selection select,.new-list-form input,.notes-section textarea{width:100%;background:var(--bg-input, rgba(0, 0, 0, .3));border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:var(--radius-md, 8px);color:var(--text-primary, #fff);font-size:.95rem;transition:all .2s;font-family:inherit}.list-selection select{padding:.75rem 2.5rem .75rem 1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239ca3af'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem}.new-list-form input{padding:.75rem 1rem}.notes-section textarea{padding:.75rem 1rem;resize:vertical;min-height:100px;line-height:1.5}.list-selection select:focus,.new-list-form input:focus,.notes-section textarea:focus{outline:none;border-color:var(--positive, #22c55e);box-shadow:0 0 0 1px var(--positive, #22c55e);background:var(--bg-input-focus, rgba(0, 0, 0, .5))}.list-selection select:hover,.new-list-form input:hover,.notes-section textarea:hover{border-color:#ffffff4d}.new-list-link,.back-link{display:inline-flex;align-items:center;margin-top:.5rem;padding:0;background:transparent;border:none;color:var(--positive, #22c55e);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.new-list-link:hover,.back-link:hover{text-decoration:underline;filter:brightness(1.1)}.modal-footer{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.25rem 1.5rem;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1));background:#ffffff05}.cancel-btn,.save-btn{display:flex;justify-content:center;align-items:center;padding:.75rem;border-radius:var(--radius-md, 8px);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;width:100%}.cancel-btn{background:transparent;border:1px solid var(--border-color, rgba(255, 255, 255, .1));color:var(--text-secondary, #d1d5db)}.cancel-btn:hover{background:#ffffff0d;border-color:#fff3;color:#fff}.save-btn{background:var(--positive, #22c55e);border:1px solid transparent;color:#000}.save-btn:hover:not(:disabled){background:#16a34a;transform:translateY(-1px);box-shadow:0 4px 12px #22c55e40}.save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:480px){.modal-content{max-height:100vh;border-radius:0;height:100%;display:flex;flex-direction:column}.modal-body{flex:1;overflow-y:auto}.modal-footer{padding-bottom:max(1.25rem,env(safe-area-inset-bottom));background:var(--bg-card)}}.collapsible-section{margin-bottom:1.5rem;border-radius:12px;background:var(--card-bg);border:1px solid var(--border-color);overflow:hidden;transition:all .2s ease}.collapsible-section:hover{border-color:var(--border-hover)}.collapsible-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:transparent;border:none;cursor:pointer;color:var(--text-primary);transition:background .2s ease}.collapsible-header:hover{background:#ffffff05}.collapsible-header:active{background:#ffffff0a}.collapsible-title{display:flex;align-items:center;gap:.75rem}.collapsible-icon{font-size:1.25rem;display:flex;align-items:center}.collapsible-title h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.collapsible-action{margin-left:auto;margin-right:8px}.chevron{color:var(--text-muted);transition:transform .3s ease,color .2s ease;flex-shrink:0}.chevron.rotated{transform:rotate(180deg)}.collapsible-header:hover .chevron{color:var(--text-primary)}.collapsible-content{overflow:hidden;transition:max-height .3s ease,opacity .3s ease}.collapsible-content.expanded{max-height:10000px;opacity:1}.collapsible-content.collapsed{max-height:0;opacity:0}.collapsible-inner{padding:0 1.25rem 1.25rem}@media(max-width:768px){.collapsible-section{margin-bottom:1rem}.collapsible-header{padding:.875rem 1rem}.collapsible-title h2{font-size:1rem}.collapsible-inner{padding:0 1rem 1rem}}.chat-bubble{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;z-index:1000;box-shadow:0 4px 20px #22c55e66}.chat-bubble:hover{transform:scale(1.05)}.chat-overlay{position:fixed;inset:0;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1001}.chat-panel{position:fixed;top:0;right:0;width:420px;max-width:100vw;height:100vh;background:linear-gradient(180deg,#09090bf7,#09090bfc);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-left:1px solid rgba(255,255,255,.08);z-index:1002;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:-8px 0 32px #0000004d}.chat-panel.open{transform:translate(0)}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff05}.chat-header-title{display:flex;align-items:center;gap:8px;font-weight:600;color:#fafafa}.chat-ticker-badge{font-size:12px;padding:2px 8px;background:#22c55e33;color:#22c55e;border-radius:4px;font-weight:500}.chat-header-actions{display:flex;align-items:center;gap:4px}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.chat-welcome{text-align:center;padding:32px 20px;display:flex;flex-direction:column;align-items:center}.chat-welcome h3{font-size:17px;font-weight:600;margin-bottom:6px;color:#fafafa;letter-spacing:-.01em}.chat-welcome p{font-size:13px;color:#71717a;margin-bottom:20px;line-height:1.5;max-width:320px}.chat-message{display:flex;gap:12px;max-width:95%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#ffffff1a;color:#a1a1aa}.chat-message.user .message-avatar{background:#22c55e33;color:#22c55e}.chat-message.assistant .message-avatar{background:#8b5cf633;color:#a78bfa}.message-content{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.6}.chat-message.user .message-content{white-space:pre-wrap}.chat-message.assistant .message-content{white-space:normal}.chat-message.user .message-content{background:linear-gradient(135deg,#22c55e,#16a34a);color:#09090b;border-bottom-right-radius:4px;box-shadow:0 2px 8px #22c55e33}.chat-message.assistant .message-content{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:#e4e4e7;border-bottom-left-radius:4px}.citation{background:#22c55e26;color:#4ade80;padding:1px 6px;border-radius:4px;font-weight:500;cursor:help;transition:background .2s}.citation:hover{background:#22c55e40}.streaming-cursor{animation:blink 1s infinite;color:#22c55e}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.suggested-prompts h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#71717a;margin-bottom:12px}.prompts-grid{display:flex;flex-direction:column;gap:8px}.suggested-prompts.compact .prompts-grid{flex-direction:row;flex-wrap:wrap}.prompt-button{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:10px;color:#a1a1aa;font-size:13px;text-align:left;cursor:pointer;transition:all .15s ease}.prompt-button:hover:not(:disabled){background:#22c55e14;border-color:#22c55e33;color:#d4d4d8;transform:translateY(-1px)}.prompt-button:disabled{opacity:.5;cursor:not-allowed}.suggested-prompts.compact .prompt-button{padding:8px 12px;font-size:12px}.follow-up-prompts{padding-top:12px;border-top:1px solid rgba(255,255,255,.04);margin-top:4px}.chat-input-area{display:flex;gap:10px;padding:12px 16px 16px;border-top:1px solid rgba(255,255,255,.06);background:#0003}.chat-input-area textarea{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px 14px;color:#fafafa;font-size:14px;resize:none;min-height:42px;max-height:120px;font-family:inherit;transition:border-color .2s}.chat-input-area textarea:focus{outline:none;border-color:#22c55e66;background:#ffffff0f}.chat-input-area textarea::-moz-placeholder{color:#71717a}.chat-input-area textarea::placeholder{color:#71717a}.chat-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:12px 16px;color:#f87171;font-size:13px}.chat-history-panel{position:absolute;inset:0;background:#09090bfe;z-index:10;display:flex;flex-direction:column;overflow:hidden}.chat-history-scroll{flex:1;min-height:0;overflow-y:auto;padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}.chat-history-header{display:flex;align-items:center;gap:8px;padding:16px 12px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:600;color:#fafafa}.chat-history-section{margin-bottom:0}.chat-history-current{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:10px;margin-bottom:2px}.chat-history-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#71717a;padding:6px 4px 4px}.chat-history-group{margin-bottom:4px}.chat-history-group-header{display:flex;align-items:center;gap:8px;padding:6px 8px}.chat-history-item.sub{padding-left:24px;font-size:13px}.chat-history-title{font-size:13px;color:#e4e4e7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.chat-history-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.chat-history-item:hover .chat-history-actions{opacity:1}.chat-history-action{background:none;border:none;color:#71717a;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:all .15s}.chat-history-action:hover{color:#e4e4e7;background:#ffffff14}.chat-history-action.danger:hover{color:#ef4444;background:#ef44441a}.chat-rename-form{display:flex;align-items:center;gap:4px;width:100%}.chat-rename-input{flex:1;background:#ffffff14;border:1px solid rgba(34,197,94,.4);border-radius:6px;padding:4px 8px;color:#fafafa;font-size:13px;outline:none}.chat-prev-conversations{display:flex;flex-direction:column;gap:6px;margin:12px 0;padding:12px;background:#ffffff08;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.prev-conv-label{font-size:11px;color:#71717a;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.prev-conv-btn{display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#e4e4e7;font-size:13px;cursor:pointer;transition:all .15s;text-align:left}.prev-conv-btn:hover{background:#ffffff0d;border-color:#22c55e4d}.prev-conv-btn span:first-of-type{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prev-conv-date{font-size:11px;color:#71717a;flex-shrink:0}.chat-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#71717a;text-align:center}.chat-history-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:9px 12px;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;color:#fafafa;margin-bottom:4px}.chat-history-item:hover{background:#ffffff0d;border-color:#ffffff1a}.chat-history-item.active{background:#22c55e1a;border-color:#22c55e4d}.chat-history-item-main{display:flex;flex-direction:column;gap:2px}.chat-history-scroll{scrollbar-width:thin;scrollbar-color:rgba(113,113,122,.85) transparent}.chat-history-scroll::-webkit-scrollbar{width:8px}.chat-history-scroll::-webkit-scrollbar-track{background:transparent}.chat-history-scroll::-webkit-scrollbar-thumb{background:#71717ab8;border-radius:999px}.chat-history-scroll::-webkit-scrollbar-thumb:hover{background:#a1a1aad9}.chat-messages{scrollbar-width:thin;scrollbar-color:rgba(113,113,122,.8) transparent}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#71717ab8;border-radius:999px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#a1a1aad9}.chat-history-ticker{font-weight:600;font-size:14px;color:#22c55e}.chat-history-company{font-size:12px;color:#a1a1aa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.chat-history-date{font-size:11px;color:#71717a;white-space:nowrap}.chat-message.assistant .message-content h3{font-size:14px;font-weight:600;color:#fafafa;margin:16px 0 8px}.chat-message.assistant .message-content h3:first-child{margin-top:0}.chat-message.assistant .message-content p{margin:0 0 8px}.chat-message.assistant .message-content p:last-child{margin-bottom:0}.chat-message.assistant .message-content p:has(>a.ticker-link:only-child){display:inline;margin:0}.chat-message.assistant .message-content p+p{margin-top:0}.chat-message.assistant .message-content ul,.chat-message.assistant .message-content ol{margin:8px 0;padding-left:20px}.chat-message.assistant .message-content li{margin-bottom:4px}.chat-message.assistant .message-content li::marker{color:#71717a}.chat-message.assistant .message-content blockquote{border-left:3px solid #22c55e;margin:12px 0;padding:8px 12px;background:#22c55e14;border-radius:0 8px 8px 0;color:#d4d4d8;font-style:normal}.chat-message.assistant .message-content strong{color:#fafafa;font-weight:600}.chat-message.assistant .message-content code{background:#ffffff1a;padding:1px 5px;border-radius:4px;font-size:13px;font-family:SF Mono,Fira Code,monospace}.chat-message.assistant .message-content pre{background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;margin:8px 0;overflow-x:auto}.chat-message.assistant .message-content pre code{background:none;padding:0}.chat-message.assistant .message-content .ticker-link{color:#22c55e;text-decoration:none;font-weight:500;transition:color .2s}.chat-message.assistant .message-content .ticker-link:hover{color:#4ade80;text-decoration:underline}.chat-message.assistant .message-content .compare-link{display:inline-flex;align-items:center;gap:6px;color:#a78bfa;text-decoration:none;font-weight:500;background:#8b5cf61a;padding:4px 12px;border-radius:6px;border:1px solid rgba(139,92,246,.2);transition:all .2s}.chat-message.assistant .message-content .compare-link:hover{background:#8b5cf633;border-color:#8b5cf666;color:#c4b5fd}.chat-message.assistant .message-content a:not(.ticker-link):not(.compare-link){color:#60a5fa;text-decoration:underline;text-decoration-color:#60a5fa4d}.chat-message.assistant .message-content a:not(.ticker-link):not(.compare-link):hover{text-decoration-color:#60a5fab3}.welcome-stock-card{display:flex;align-items:center;justify-content:center;gap:16px;padding:14px 18px;margin:12px 0 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;width:100%;max-width:320px}.welcome-stock-price{display:flex;flex-direction:column;align-items:flex-start}.welcome-price-value{font-size:20px;font-weight:700;color:#fafafa;font-family:SF Mono,Consolas,monospace}.welcome-price-change{font-size:13px;font-weight:500}.welcome-price-change.positive{color:#22c55e}.welcome-price-change.negative{color:#ef4444}.welcome-sparkline{flex-shrink:0}.welcome-score-badge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:8px}.welcome-score-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#71717a}.welcome-score-value{font-size:22px;font-weight:700;color:#22c55e;line-height:1}.welcome-score-grade{font-size:11px;font-weight:600;color:#4ade80}.ask-ai-button{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;color:#22c55e;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:6px;cursor:pointer;transition:all .2s;white-space:nowrap}.ask-ai-button:hover{background:#22c55e33;border-color:#22c55e66}.chat-auth-gate{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1003;background:#09090bf7;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;max-width:360px;width:90vw;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.chat-auth-gate-icon{width:56px;height:56px;border-radius:50%;background:#22c55e26;color:#22c55e;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.chat-auth-gate h3{font-size:18px;font-weight:600;color:#fafafa;margin-bottom:8px}.chat-auth-gate p{font-size:14px;color:#a1a1aa;line-height:1.5;margin-bottom:20px}.chat-auth-gate-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:#22c55e;color:#09090b;font-weight:600;font-size:14px;border:none;border-radius:10px;cursor:pointer;transition:background .2s}.chat-auth-gate-btn:hover{background:#16a34a}.chat-auth-gate-dismiss{display:block;margin:12px auto 0;background:none;border:none;color:#71717a;font-size:13px;cursor:pointer;transition:color .2s}.chat-auth-gate-dismiss:hover{color:#a1a1aa}@media(max-width:480px){.chat-panel{width:100vw}.chat-bubble{bottom:16px;right:16px;width:48px;height:48px}}.omnistock-score-card{background:linear-gradient(135deg,#1e1e23e6,#141419f2);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.25rem;position:relative;overflow:hidden}.omnistock-score-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--primary, #22c55e),transparent);opacity:.7}.omnistock-score-card.loading,.omnistock-score-card.error{display:flex;align-items:center;justify-content:center;gap:.75rem;min-height:200px;color:var(--text-muted, #6b7280);font-size:.875rem}.omnistock-score-card.error{color:var(--negative, #ef4444)}.score-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.score-verdict{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.verdict-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.35rem .6rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;width:-moz-fit-content;width:fit-content;background:#ffffff0a}.verdict-desc{font-size:.75rem;color:var(--text-muted, #9ca3af);line-height:1.4}.score-title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.9rem;color:var(--text-primary, #fff)}.sparkle-icon{color:var(--primary, #22c55e)}.score-grade{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.score-gauge{display:flex;flex-direction:column;align-items:center;margin-bottom:1rem}.gauge-svg{width:140px;height:80px}.score-value{font-size:2.5rem;font-weight:800;line-height:1;margin-top:-.5rem;font-variant-numeric:tabular-nums}.score-label{font-size:.8rem;color:var(--text-muted, #9ca3af);margin-top:.25rem;text-transform:uppercase;letter-spacing:.05em}.why-now{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.75rem;margin-bottom:1rem}.why-now-title{text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;color:#fff9;font-weight:700;margin-bottom:.4rem}.why-now-summary{font-size:.78rem;color:var(--text-secondary, #a1a1aa);line-height:1.4;margin:0 0 .6rem}.why-now-lists{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.why-now-column{display:flex;flex-direction:column;gap:.35rem}.why-now-item{display:flex;align-items:flex-start;gap:.35rem;font-size:.7rem;color:var(--text-muted, #9ca3af);line-height:1.3}.why-now-column.strengths svg{color:#22c55e;margin-top:1px;flex-shrink:0}.why-now-column.concerns svg{color:#f97316;margin-top:1px;flex-shrink:0}.score-components{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.score-components-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff73;margin-bottom:.2rem}.component-bar{display:flex;flex-direction:column;gap:.25rem}.component-label{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted, #9ca3af)}.component-weight{margin-left:.35rem;font-size:.7rem;color:#ffffff73}.component-value{font-weight:600;color:var(--text-primary, #fff);font-variant-numeric:tabular-nums}.component-grade{margin-left:.35rem;font-size:.7rem;color:#ffffff8c}.score-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08);margin-bottom:.75rem}.data-quality{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;border-radius:999px;background:#ffffff0f;color:var(--text-muted, #9ca3af)}.data-quality.complete{color:#22c55e}.data-quality.partial{color:#eab308}.data-quality.limited{color:#f97316}.sector-percentile{font-size:.7rem;color:#ffffff8c}.component-track{height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.component-fill{height:100%;border-radius:2px;transition:width .5s ease-out}.score-factors{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.factors-column{display:flex;flex-direction:column;gap:.375rem}.factor-item{display:flex;align-items:flex-start;gap:.375rem;font-size:.7rem;color:var(--text-muted, #9ca3af);line-height:1.3}.strengths .factor-item svg{color:#22c55e;flex-shrink:0;margin-top:1px}.concerns .factor-item svg{color:#f97316;flex-shrink:0;margin-top:1px}@media(max-width:640px){.omnistock-score-card{padding:1rem}.score-value{font-size:2rem}.score-factors,.why-now-lists{grid-template-columns:1fr}}.market-detail-page{max-width:800px;margin:0 auto;padding:2rem 1.5rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-secondary, #a1a1aa);font-size:.875rem;cursor:pointer;padding:.5rem 0;margin-bottom:1.5rem;transition:color .2s ease}.back-button:hover{color:var(--text-primary, #fafafa)}.market-detail-header{margin-bottom:1.5rem}.market-type-badge{display:inline-block;background:linear-gradient(135deg,#22c55e26,#22c55e0d);border:1px solid rgba(34,197,94,.2);border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;color:#4ade80;margin-bottom:.75rem}.market-detail-header h1{font-size:2rem;font-weight:700;color:var(--text-primary, #fafafa);margin:0 0 .25rem}.market-symbol{color:var(--text-muted, #71717a);font-size:.875rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.price-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.price-main{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.current-price{font-size:2.5rem;font-weight:700;color:var(--text-primary, #fafafa)}.price-change{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600}.price-change.positive{color:#22c55e}.price-change.negative{color:#ef4444}.last-updated{margin-top:1rem;font-size:.75rem;color:var(--text-muted, #71717a)}.chart-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.chart-card h3,.chart-header h3{font-size:1rem;font-weight:600;color:var(--text-primary, #fafafa);margin:0}.period-toggle{display:flex;gap:.25rem;background:#ffffff0d;padding:.25rem;border-radius:8px}.period-btn{padding:.375rem .75rem;font-size:.75rem;font-weight:500;background:transparent;border:none;border-radius:6px;color:var(--text-muted, #6b7280);cursor:pointer;transition:all .15s ease}.period-btn:hover{color:var(--text-secondary, #a1a1aa);background:#ffffff0d}.period-btn.active{background:#22c55e;color:#000}.chart-container{width:100%;height:300px}.info-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.info-card h3{font-size:1rem;font-weight:600;color:var(--text-primary, #fafafa);margin:0 0 .75rem}.info-card p{color:var(--text-secondary, #a1a1aa);font-size:.9rem;line-height:1.7;margin:0}.stats-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:1.5rem}.stats-card h3{font-size:1rem;font-weight:600;color:var(--text-primary, #fafafa);margin:0 0 1rem}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted, #71717a);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.125rem;font-weight:600;color:var(--text-primary, #fafafa);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.market-detail-loading,.market-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;gap:1rem}.market-detail-loading p,.market-detail-error p{color:var(--text-secondary, #a1a1aa)}.market-detail-error button{background:var(--primary, #22c55e);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;transition:background .2s ease}.market-detail-error button:hover{background:var(--primary-hover, #16a34a)}@media(max-width:768px){.market-detail-page{padding:1.5rem 1rem}.market-detail-header h1{font-size:1.5rem}.current-price{font-size:2rem}.chart-container{height:200px}.chart-header{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr}}.earnings-indicator{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;border-radius:4px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);cursor:default}.earnings-icon{color:#f59e0b}.earnings-label{font-size:.625rem;font-weight:600;color:#f59e0b;text-transform:uppercase;letter-spacing:.02em}.earnings-indicator:hover{background:#f59e0b40;border-color:#f59e0b80}.watchlist-page{max-width:1000px;margin:0 auto;padding:1.5rem}.watchlist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.create-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#22c55e;color:#000;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s ease}.create-btn:hover{background:#16a34a;transform:translateY(-1px)}.watchlist-stats{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.5rem}.watchlist-briefing{margin-bottom:1.5rem;padding:.875rem 1rem;border-radius:10px;background:#22c55e0d;border:1px solid rgba(34,197,94,.22);min-height:156px}.watchlist-briefing-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.watchlist-briefing-title{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#22c55e;font-weight:700}.watchlist-briefing-summary{font-size:.8rem;color:var(--text-secondary, #a1a1aa)}.watchlist-briefing-loading-text{color:#a1a1aacc}.watchlist-briefing-grid{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}.watchlist-briefing-grid-loading{min-height:104px}.watchlist-briefing-item{text-decoration:none;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff05;padding:.6rem .7rem}.watchlist-briefing-item:hover{background:#ffffff0a;border-color:#22c55e4d}.watchlist-briefing-item-skeleton{pointer-events:none}.briefing-item-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.briefing-symbol{color:var(--text-primary, #fff);font-size:.83rem;font-weight:600}.briefing-change{font-size:.78rem;font-weight:700}.briefing-change.positive{color:#22c55e}.briefing-change.negative{color:#ef4444}.briefing-catalyst{color:var(--text-secondary, #a1a1aa);font-size:.76rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.briefing-skeleton-line{display:block;height:10px;border-radius:999px;background:#ffffff14;margin-bottom:.36rem}.briefing-skeleton-line.short{width:38%}.briefing-skeleton-line.tiny{width:22%}.briefing-skeleton-line.full{width:94%}.briefing-skeleton-line.medium{width:68%}.create-form-container{margin-bottom:1.5rem}.create-form{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-weight:600;color:var(--text-primary, #fff)}.close-btn{display:flex;align-items:center;justify-content:center;padding:.375rem;background:transparent;border:none;color:var(--text-muted, #6b7280);cursor:pointer;border-radius:4px;transition:all .15s}.close-btn:hover{background:#ffffff0d;color:var(--text-primary, #fff)}.create-form input[type=text]{width:100%;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary, #fff);font-size:.9375rem;margin-bottom:1rem;transition:border-color .15s}.create-form input[type=text]:focus{outline:none;border-color:#22c55e80}.color-picker{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem}.color-label{font-size:.8125rem;color:var(--text-muted, #6b7280)}.color-dot{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s}.color-dot:hover{transform:scale(1.1)}.color-dot.selected{border-color:#fff;box-shadow:0 0 0 2px #ffffff1a}.form-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-secondary{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-secondary, #9ca3af);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:#ffffff14;color:var(--text-primary, #fff)}.btn-primary{padding:.5rem 1rem;background:#22c55e;border:none;border-radius:6px;color:#000;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-primary:hover:not(:disabled){background:#16a34a}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.empty-state{padding:3rem 2rem;text-align:center;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px}.empty-state p{color:var(--text-primary, #fff);font-size:1rem;margin:0}.empty-hint{color:var(--text-muted, #6b7280)!important;font-size:.875rem!important;margin-top:.5rem!important}.watchlists-container{display:flex;flex-direction:column;gap:1rem}.watchlist-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;transition:border-color .15s}.watchlist-card.expanded{border-color:#ffffff1a}.card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background .15s}.card-header:hover{background:#ffffff05}.card-info{display:flex;align-items:center;gap:.75rem}.card-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.card-name{font-weight:600;font-size:1rem;color:var(--text-primary, #fff)}.rename-input{padding:.375rem .625rem;background:#ffffff0d;border:1px solid rgba(34,197,94,.5);border-radius:4px;color:var(--text-primary, #fff);font-size:1rem;font-weight:600}.rename-input:focus{outline:none}.card-count{font-size:.8125rem;color:var(--text-muted, #6b7280)}.card-actions{display:flex;align-items:center;gap:.5rem}.action-btn{display:flex;align-items:center;justify-content:center;padding:.375rem;background:transparent;border:none;color:var(--text-muted, #6b7280);cursor:pointer;border-radius:4px;transition:all .15s}.action-btn:hover{background:#ffffff0d;color:var(--text-primary, #fff)}.action-btn.danger:hover{background:#ef44441a;color:#ef4444}.expand-icon{color:var(--text-muted, #6b7280);display:flex;align-items:center;margin-left:.5rem}.card-content{border-top:1px solid rgba(255,255,255,.06)}.empty-list{padding:2rem;text-align:center}.empty-list p{color:var(--text-muted, #6b7280);margin:0}.stocks-table thead{background:#ffffff05}.stocks-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.stocks-table th.col-price,.stocks-table th.col-date{text-align:right}.stocks-table th.col-actions{width:80px}.stock-row{transition:background .15s}.stock-row:hover{background:#ffffff05}.stocks-table td{padding:.875rem 1rem;font-size:.875rem;border-bottom:1px solid rgba(255,255,255,.04)}.col-ticker{width:120px}.ticker-link{display:flex;align-items:center;gap:.5rem;text-decoration:none}.ticker-link:hover .ticker-symbol{color:#22c55e}.company-link{color:var(--text-secondary, #9ca3af);text-decoration:none;transition:color .15s}.company-link:hover{color:var(--text-primary, #fff)}.col-price{text-align:right;font-family:var(--font-mono, "SF Mono", Consolas, monospace);color:var(--text-primary, #fff)}.col-date{text-align:right;color:var(--text-muted, #6b7280);font-size:.8125rem}.col-actions{text-align:right}.col-actions .action-btn{opacity:0;transition:opacity .15s,background .15s,color .15s}.stock-row:hover .col-actions .action-btn{opacity:1}.notes-row td{padding:0 1rem 1rem;border-bottom:1px solid rgba(255,255,255,.04)}.notes-display{padding:.75rem 1rem;background:#ffffff05;border-radius:6px;cursor:pointer;transition:background .15s}.notes-display:hover{background:#ffffff0a}.notes-text{font-size:.8125rem;color:var(--text-secondary, #9ca3af);line-height:1.5}.notes-edit textarea{width:100%;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary, #fff);font-size:.875rem;font-family:inherit;min-height:80px;resize:vertical;transition:border-color .15s}.notes-edit textarea:focus{outline:none;border-color:#22c55e80}.notes-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.portfolio-summary{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.25rem;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.06)}.summary-item{display:flex;flex-direction:column;align-items:center;gap:.2rem}.summary-label{font-size:.65rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:.9rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.summary-value.positive{color:#22c55e}.summary-value.negative{color:#ef4444}.sort-controls{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text-muted, #6b7280)}.sort-btn{padding:.3rem .6rem;background:none;border:1px solid rgba(255,255,255,.06);border-radius:5px;color:var(--text-muted, #6b7280);font-size:.7rem;cursor:pointer;transition:all .15s}.sort-btn:hover{border-color:#ffffff26;color:var(--text-primary, #fff)}.sort-btn.active{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.col-sparkline{width:70px;text-align:center}.col-change{text-align:right;font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:500;white-space:nowrap}.col-score{text-align:center;font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:600;width:60px}.col-score.score-good{color:#22c55e}.col-score.score-bad{color:#ef4444}.enriched-loading{display:flex;flex-direction:column;align-items:center;padding:2rem;gap:.75rem}.enriched-loading p{color:var(--text-muted, #6b7280);font-size:.85rem}.watchlist-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.watchlist-loading p{color:var(--text-muted, #6b7280)}@media(max-width:768px){.watchlist-page{padding:1rem}.watchlist-header{flex-direction:column;gap:1rem;align-items:flex-start}.watchlist-stats{gap:1.5rem}.stat-divider{display:none}.breadcrumb{font-size:1rem}.stocks-table{font-size:.8125rem}.stocks-table th,.stocks-table td{padding:.625rem .75rem}.col-date,.stocks-table th.col-date{display:none}}@media(max-width:480px){.card-header{padding:.875rem 1rem}.card-count{display:none}.stat-value{font-size:1rem}}.history-page{max-width:900px;margin:0 auto;padding:1.5rem}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.history-stats{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.5rem}.stat-value{font-size:1.25rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.history-empty{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:4rem 2rem;text-align:center}.history-empty h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #fff)}.history-empty p{color:var(--text-muted, #6b7280);margin-bottom:1.5rem}.search-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#22c55e;color:#000;border:none;border-radius:8px;font-weight:600;font-size:.875rem;text-decoration:none;transition:all .15s ease}.search-btn:hover{background:#16a34a;transform:translateY(-1px)}.history-content{display:flex;flex-direction:column;gap:1.5rem}.history-group{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden}.group-header{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.06)}.group-date{font-weight:600;color:var(--text-primary, #fff);font-size:.9375rem}.group-count{font-size:.75rem;color:var(--text-muted, #6b7280)}.history-table-container{overflow-x:auto}.history-table{width:100%;border-collapse:collapse}.history-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.history-table th.col-time,.history-table th.col-action{text-align:right}.history-row{transition:background .15s}.history-row:hover{background:#ffffff05}.history-table td{padding:.875rem 1rem;font-size:.875rem;border-bottom:1px solid rgba(255,255,255,.04)}.history-row:last-child td{border-bottom:none}.ticker-symbol{font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.history-inline-link{color:inherit;text-decoration:none}.history-inline-link:hover{text-decoration:underline;text-decoration-color:#22c55e80}.col-company{color:var(--text-secondary, #9ca3af)}.col-time{text-align:right;color:var(--text-muted, #6b7280);font-size:.8125rem;width:80px}.col-action{text-align:right;width:100px}.view-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-secondary, #9ca3af);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .15s}.view-btn:hover{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.clear-all-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;color:#ef4444;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s}.clear-all-btn:hover{background:#ef444433;border-color:#ef444466}.most-viewed-section{margin-bottom:1.5rem}.most-viewed-section h3{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem}.most-viewed-cards{display:flex;gap:.5rem;flex-wrap:wrap}.most-viewed-card{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;text-decoration:none;transition:all .15s}.most-viewed-card:hover{background:#ffffff0a;border-color:#22c55e4d}.mv-ticker{font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-size:.85rem}.mv-company{color:var(--text-muted, #6b7280);font-size:.75rem;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mv-count{font-size:.65rem;color:#22c55e;font-weight:500;background:#22c55e1a;padding:.15rem .4rem;border-radius:4px}.history-controls{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;flex:1;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:var(--text-muted, #6b7280)}.search-input-wrapper:focus-within{border-color:#22c55e66}.search-input-wrapper input{flex:1;background:none;border:none;color:var(--text-primary, #fff);font-size:.85rem;outline:none}.search-input-wrapper input::-moz-placeholder{color:var(--text-muted, #6b7280)}.search-input-wrapper input::placeholder{color:var(--text-muted, #6b7280)}.clear-search{display:flex;align-items:center;background:none;border:none;color:var(--text-muted, #6b7280);cursor:pointer;padding:.15rem;border-radius:3px}.clear-search:hover{color:#fff}.date-filter{display:flex;gap:.25rem}.date-btn{padding:.4rem .6rem;background:none;border:1px solid rgba(255,255,255,.06);border-radius:5px;color:var(--text-muted, #6b7280);font-size:.7rem;cursor:pointer;transition:all .15s;white-space:nowrap}.date-btn:hover{border-color:#ffffff26;color:var(--text-primary, #fff)}.date-btn.active{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.delete-entry-btn{display:inline-flex;align-items:center;justify-content:center;padding:.3rem;background:none;border:none;color:var(--text-muted, #6b7280);cursor:pointer;border-radius:4px;opacity:0;transition:all .15s;margin-left:.25rem}.history-row:hover .delete-entry-btn{opacity:1}.delete-entry-btn:hover{color:#ef4444;background:#ef44441a}.history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.history-loading p{color:var(--text-muted, #6b7280)}@media(max-width:768px){.history-page{padding:1rem}.breadcrumb{font-size:1rem}.history-stats{gap:1.5rem}.stat-divider{display:none}.history-table th,.history-table td{padding:.625rem .75rem}.col-time,.history-table th.col-time{display:none}}@media(max-width:480px){.stat-value{font-size:1rem}.view-btn span{display:none}.view-btn{padding:.5rem}}.sector-dashboard{max-width:1200px;margin:0 auto;padding:1.5rem}.sector-compare-panel{background:var(--bg-card, rgba(24, 24, 27, .8));border:1px solid var(--border-color, rgba(39, 39, 42, .8));border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #00000059,0 12px 28px #00000059}.compare-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.compare-title{display:flex;flex-direction:column;gap:.25rem;font-weight:700;color:var(--text-primary, #fff)}.compare-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}.meta-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:600;color:#e2e8f0;background:#94a3b81f;border:1px solid rgba(148,163,184,.25);padding:.15rem .55rem;border-radius:999px;letter-spacing:.02em}.compare-subtitle{font-size:.75rem;color:var(--text-secondary, #a1a1aa);text-transform:uppercase;letter-spacing:.06em}.compare-loading,.compare-error{display:flex;align-items:center;gap:.5rem;color:var(--text-muted, #9ca3af);font-size:.85rem;padding:.5rem 0}.compare-empty{color:var(--text-muted, #9ca3af);font-size:.85rem;padding:.5rem .25rem}.leadership-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-bottom:.85rem}.leadership-item{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.45rem .6rem;display:flex;flex-direction:column;gap:.2rem}.leadership-label{font-size:.63rem;color:var(--text-secondary, #a1a1aa);text-transform:uppercase;letter-spacing:.05em}.leadership-value{font-size:.8rem;color:#f8fafc;font-weight:600}.leadership-delta{font-size:.68rem;font-weight:600}.leadership-delta.positive{color:#22c55e}.leadership-delta.negative{color:#ef4444}.compare-grid{display:grid;grid-template-columns:1.1fr 1.4fr;gap:1rem;margin-bottom:.75rem}.compare-section-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#fff9;margin-bottom:.75rem}.compare-ranked,.compare-heatmap{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:.8rem;box-shadow:inset 0 0 0 1px #ffffff05}.ranked-list{display:flex;flex-direction:column;gap:.35rem}.ranked-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .7rem;background:#ffffff09;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:var(--text-primary, #fff);cursor:pointer;transition:all .15s ease}.ranked-item:hover,.ranked-item.active{border-color:#22c55e59;background:#22c55e14;transform:translateY(-1px)}.ranked-name{font-size:.78rem;font-weight:600}.ranked-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;font-size:.75rem;font-variant-numeric:tabular-nums}.ranked-change.positive,.ranked-delta.positive{color:#22c55e}.ranked-change.negative,.ranked-delta.negative{color:#ef4444}.ranked-change{font-size:.76rem;font-weight:600}.ranked-delta{color:var(--text-secondary, #a1a1aa)}.heatmap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.heatmap-tile{display:flex;flex-direction:column;gap:.25rem;padding:.55rem .7rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);color:var(--text-primary, #fff);cursor:pointer;transition:all .15s ease}.heatmap-tile.active{outline:1px solid rgba(56,189,248,.7);box-shadow:0 0 0 1px #38bdf833}.heatmap-name{font-size:.7rem;font-weight:600;color:#f8fafc}.heatmap-value{font-size:.78rem;font-variant-numeric:tabular-nums}.heatmap-value.positive{color:#22c55e}.heatmap-value.negative{color:#ef4444}.heatmap-sub{font-size:.68rem;color:var(--text-secondary, #a1a1aa);display:inline-flex;align-items:center;gap:.35rem;width:-moz-fit-content;width:fit-content}.inline-help{display:inline-flex;align-items:center;justify-content:center;width:.8rem;height:.8rem;border-radius:999px;font-size:.58rem;font-weight:700;color:#cbd5e1;border:1px solid rgba(148,163,184,.4);background:#94a3b81f;cursor:help}.inline-help-wrap{position:relative;display:inline-flex;align-items:center}.inline-help-wrap:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:220px;max-width:min(220px,70vw);padding:.45rem .55rem;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:#0c1016f2;color:#e2e8f0;font-size:.65rem;line-height:1.35;text-align:left;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s ease;z-index:35;box-shadow:0 10px 24px #00000059}.inline-help-wrap:before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(12,16,22,.95);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s ease;z-index:35}.inline-help-wrap:hover:after,.inline-help-wrap:hover:before,.inline-help-wrap:focus-within:after,.inline-help-wrap:focus-within:before{opacity:1;visibility:visible}.compare-chart{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:1rem;box-shadow:inset 0 0 0 1px #ffffff05}.compare-chart-controls{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.chart-mode{display:flex;gap:.4rem;background:#ffffff0a;padding:.25rem;border-radius:10px;width:-moz-fit-content;width:fit-content}.chart-btn{font-size:.7rem;font-weight:600;color:var(--text-secondary, #a1a1aa);padding:.35rem .75rem;border-radius:8px;border:none;background:transparent;cursor:pointer;transition:all .2s ease}.chart-btn.active{background:#22c55e29;color:#e2e8f0}.chart-btn:hover{color:#f8fafc}.chart-legend{display:flex;flex-wrap:wrap;gap:.5rem .8rem}.legend-item{display:inline-flex;align-items:center;gap:.4rem;font-size:.7rem;color:#e2e8f0;background:transparent;border:none;cursor:pointer;padding:0;transition:opacity .2s ease,color .2s ease}.legend-item.muted{opacity:.35}.legend-dot{width:8px;height:8px;border-radius:999px;box-shadow:0 0 6px #ffffff40}.legend-label{text-transform:capitalize}.compare-tooltip{background:#0a0c10b3;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:.75rem .9rem;color:#f8fafc;min-width:170px;box-shadow:0 8px 22px #00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .08s ease-out}.tooltip-date{font-size:.7rem;color:#e2e8f0;margin-bottom:.5rem;font-weight:600}.tooltip-rows{display:flex;flex-direction:column;gap:.25rem}.tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.7rem;font-variant-numeric:tabular-nums}.tooltip-row.spy .tooltip-label{font-weight:700}.tooltip-label{flex:1;text-transform:capitalize}.tooltip-value{color:#e2e8f0;display:inline-flex;align-items:center;gap:.4rem;text-align:right}.tooltip-delta{color:#94a3b8;font-size:.65rem}.tooltip-divider{height:1px;background:#ffffff14;margin:.4rem 0}.compare-chart .recharts-line-curve:hover{filter:drop-shadow(0 0 4px currentColor);stroke-width:3px}.constituents-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.constituents-header h3{font-size:.95rem;color:var(--text-primary, #fff);margin:0}.constituents-header p{margin:.2rem 0 0;font-size:.75rem;color:var(--text-secondary, #a1a1aa)}.constituents-meta{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.constituents-meta span{font-size:.7rem;color:#e2e8f0;background:#94a3b81f;border:1px solid rgba(148,163,184,.25);padding:.2rem .5rem;border-radius:999px}.leaders-row{margin-bottom:1rem}.leaders-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#fff9;margin-bottom:.55rem}.leaders-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.leader-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.55rem .6rem;display:flex;flex-direction:column;gap:.2rem;color:#f8fafc;cursor:pointer;text-align:left;transition:all .15s ease}.leader-card:hover{border-color:#22c55e59;background:#22c55e14}.leader-ticker{font-size:.78rem;font-weight:700}.leader-name{font-size:.66rem;color:#a1a1aa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leader-return{font-size:.75rem;font-weight:700}.leader-return.positive{color:#22c55e}.leader-return.negative{color:#ef4444}.leaders-empty{font-size:.75rem;color:#9ca3af;padding:.5rem .35rem}@media(max-width:900px){.leadership-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.compare-grid{grid-template-columns:1fr}.heatmap-grid,.leaders-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.leadership-strip{grid-template-columns:1fr}.heatmap-grid,.leaders-list{grid-template-columns:repeat(2,minmax(0,1fr))}.constituents-header{flex-direction:column;align-items:flex-start}}.sector-header{margin-bottom:1.5rem}.sector-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.08)}.sector-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;background:transparent;border:none;border-radius:6px;color:var(--text-muted, #9ca3af);cursor:pointer;transition:all .15s ease;white-space:nowrap}.sector-tab:hover{background:#ffffff0d;color:var(--text-secondary, #d1d5db)}.sector-tab.active{background:#22c55e1a;color:#22c55e}.benchmark-chart-container{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.benchmark-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.benchmark-info{display:flex;flex-direction:column;gap:.25rem}.benchmark-ticker{font-size:1.25rem;font-weight:700;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.benchmark-label{font-size:.75rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em}.benchmark-stats{display:flex;align-items:center;gap:.75rem}.benchmark-price{font-size:1.5rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.benchmark-change{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.benchmark-change.positive{color:#22c55e;background:#22c55e1a}.benchmark-change.negative{color:#ef4444;background:#ef44441a}.period-toggles{display:flex;gap:.25rem;background:#ffffff0d;padding:.25rem;border-radius:6px}.period-btn{font-size:.75rem;font-weight:500;color:var(--text-muted, #6b7280);padding:.25rem .625rem;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.period-btn:hover:not(:disabled){color:var(--text-secondary, #d1d5db);background:#ffffff0d}.period-btn.active{color:#fff;background:#22c55e33}.period-btn:disabled{opacity:.5;cursor:not-allowed}.benchmark-chart{margin-top:.5rem;transition:opacity .2s ease}.benchmark-chart.loading{opacity:.5}.sector-stats{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1rem 1.5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.5rem}.stat-value{font-size:.9375rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.stat-value.positive{color:#22c55e}.stat-value.negative{color:#ef4444}.stocks-table-container{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden}.stocks-table{width:100%;border-collapse:collapse}.stocks-table thead{background:#ffffff08}.stocks-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.stocks-table th.col-price,.stocks-table th.col-change{text-align:right}.stocks-table th.col-chart{text-align:center;width:100px}.stocks-table tbody tr{border-bottom:1px solid rgba(255,255,255,.04);transition:background .15s ease}.stocks-table tbody tr:hover{background:#ffffff08;cursor:pointer}.stocks-table tbody tr:last-child{border-bottom:none}.stocks-table td{padding:.875rem 1rem;font-size:.875rem}.col-ticker{width:100px}.ticker-symbol{font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace);text-decoration:none}.col-name{min-width:200px}.company-name{color:var(--text-secondary, #9ca3af);text-decoration:none}.ticker-symbol:hover,.company-name:hover{text-decoration:underline;text-decoration-color:#22c55e73}.col-price{text-align:right;font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:500;color:var(--text-primary, #fff)}.col-change{text-align:right;font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-weight:600;width:100px}.col-change.positive{color:#22c55e}.col-change.negative{color:#ef4444}.col-chart{width:100px;text-align:center}.sector-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--text-muted, #6b7280);gap:1rem}.sector-loading .animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sector-error{padding:2rem;text-align:center;color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:10px}@media(max-width:1024px){.sector-stats{flex-wrap:wrap;gap:1rem}.stat-divider{display:none}.stat-item{flex:1;min-width:100px}}@media(max-width:768px){.sector-dashboard{padding:1rem}.sector-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:1rem;margin:0 -1rem 1.5rem;padding-left:1rem;padding-right:1rem}.benchmark-header{flex-direction:column;gap:.75rem}.benchmark-stats{flex-wrap:wrap}.benchmark-price{font-size:1.25rem}.stocks-table-container{overflow-x:auto}.stocks-table{min-width:600px}.breadcrumb{font-size:1rem}}@media(max-width:480px){.sector-tab{padding:.4rem .75rem;font-size:.75rem}.stat-item{min-width:80px}.stat-label{font-size:.65rem}.stat-value{font-size:.8125rem}}.compare-table-wrapper{background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.06);overflow-x:auto}.compare-errors{padding:1rem;background:#ff4d4d0d;border-bottom:1px solid rgba(255,255,255,.05)}.compare-error-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;color:var(--negative, #ff4d4d)}.compare-error-item button{background:none;border:1px solid var(--negative, #ff4d4d);color:var(--negative, #ff4d4d);padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem}.compare-table{width:100%;min-width:900px}.compare-row{display:grid;grid-template-columns:160px repeat(auto-fill,minmax(130px,1fr));border-bottom:1px solid rgba(255,255,255,.04)}.compare-row:last-child{border-bottom:none}.compare-section-header{grid-column:1 / -1;padding:.6rem 1rem;background:#ffffff05;color:#5a6270;font-weight:600;font-size:.65rem;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,.04)}.compare-label-cell{padding:.75rem 1rem;font-weight:500;color:#8b9199;background:#0d1117f2;display:flex;align-items:center;font-size:.8rem;position:sticky;left:0;z-index:2;border-right:1px solid rgba(255,255,255,.03)}.compare-data-cell{padding:.75rem;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.9rem;font-weight:600;color:#fff;font-variant-numeric:tabular-nums}.compare-data-cell.empty{background:#ffffff03}.header-row .compare-data-cell{padding:1.25rem .75rem 1rem;flex-direction:column;position:relative;background:#ffffff05}.stock-card{gap:.25rem}.stock-ticker-link{font-size:1.15rem;font-weight:700;color:var(--primary, #00dc82);text-decoration:none;transition:color .2s}.stock-ticker-link:hover{color:#4ade80}.stock-name{font-size:.72rem;color:#6b7280;font-weight:400;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-sector-tag{font-size:.6rem;color:#5a6270;background:#ffffff0a;padding:.1rem .4rem;border-radius:4px;text-transform:uppercase;letter-spacing:.03em;margin-top:.15rem}.stock-mcap-tag{font-size:.65rem;color:#71717a;font-weight:500;margin-top:.2rem;font-variant-numeric:tabular-nums}.stock-price-row{display:flex;align-items:center;gap:.5rem;margin-top:.35rem}.stock-price{font-size:1.05rem;font-weight:600;color:#fff}.stock-sparkline{opacity:.9}.remove-stock-btn{position:absolute;top:.4rem;right:.4rem;background:none;border:none;color:#4a5568;cursor:pointer;padding:.25rem;opacity:0;transition:all .2s;border-radius:4px}.stock-card:hover .remove-stock-btn{opacity:1}.remove-stock-btn:hover{color:var(--negative, #ff4d4d);background:#ff4d4d1a}.add-stock-cell{background:#ffffff03}.add-inline-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:none;border:2px dashed rgba(255,255,255,.08);border-radius:10px;padding:.75rem;cursor:pointer;color:#5a6270;transition:all .2s;width:100%;font-size:.75rem}.add-inline-btn:hover{border-color:var(--primary, #00dc82);color:var(--primary, #00dc82)}.add-icon{font-size:1.25rem;line-height:1}.positive{color:var(--positive, #00dc82)!important}.negative{color:var(--negative, #ff4d4d)!important}.neutral{color:#6b7280}.trend-value{display:flex;align-items:center;gap:.35rem}.trend-icon{flex-shrink:0}.trend-number{font-variant-numeric:tabular-nums}.ma-status{display:flex;align-items:center;justify-content:center}.upside-value{font-size:1.05rem;font-weight:700}.fair-value-cell{display:flex;align-items:center;gap:.5rem}.status-dot{width:8px;height:8px;border-radius:50%}.dot-positive{background:var(--positive, #00dc82);box-shadow:0 0 6px var(--positive, #00dc82)}.dot-negative{background:var(--negative, #ff4d4d);box-shadow:0 0 6px var(--negative, #ff4d4d)}.dot-neutral{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.badge{padding:.25rem .6rem;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:capitalize;display:inline-flex;align-items:center;gap:.25rem}.badge-excellent{background:#00dc8226;color:#00dc82;border:1px solid rgba(0,220,130,.25)}.badge-good{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.25)}.badge-fair{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.25)}.badge-poor{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.badge-pass{background:#00dc8226;color:#00dc82;border:1px solid rgba(0,220,130,.25)}.badge-fail{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.badge-conviction{background:#00dc8226;color:#00dc82;border:1px solid rgba(0,220,130,.25)}.badge-selling{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.badge-neutral-signal{background:#6b728026;color:#9ca3af;border:1px solid rgba(107,114,128,.25)}.range-bar-container{width:100%;display:flex;flex-direction:column;gap:.4rem;padding:0 .25rem}.range-bar{width:100%;height:4px;background:#ffffff14;border-radius:2px;position:relative}.range-bar-fill{height:100%;background:linear-gradient(90deg,#ef444499,#f59e0b99,#00dc8299);border-radius:2px}.range-bar-pip{position:absolute;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}.range-bar-pip:before{content:"";width:8px;height:8px;background:var(--pip-color, #fff);transform:rotate(45deg);box-shadow:0 0 4px #0006}.pip-label{position:absolute;top:-18px;font-size:.65rem;font-weight:600;color:#fff;white-space:nowrap;background:#0009;padding:.1rem .3rem;border-radius:3px}.range-labels{display:flex;justify-content:space-between;font-size:.6rem;color:#5a6270}.range-low,.range-high{font-variant-numeric:tabular-nums}.omni-score-cell{font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.omni-score-cell.positive{color:var(--positive, #22c55e)}.omni-score-cell.negative{color:var(--negative, #ef4444)}.best-in-row{background:#22c55e14}.worst-in-row{background:#ef444414}@media(max-width:1024px){.compare-table{min-width:700px}.compare-row{grid-template-columns:140px repeat(auto-fill,minmax(110px,1fr))}.compare-data-cell{font-size:.82rem;padding:.6rem .5rem}.badge{font-size:.65rem;padding:.2rem .4rem}}@media(max-width:640px){.compare-label-cell{font-size:.72rem;padding:.6rem .75rem}.stock-ticker-link{font-size:1rem}.stock-price{font-size:.9rem}}.compare-page{max-width:1400px;margin:0 auto;padding:1.5rem}.compare-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:1.25rem}.breadcrumb-item{color:var(--text-muted, #6b7280)}.breadcrumb-separator{color:var(--text-muted, #6b7280);font-size:.875rem}.breadcrumb-current{color:var(--text-primary, #fff);font-weight:600}.add-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#22c55e;color:#000;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s ease}.add-btn:hover{background:#16a34a;transform:translateY(-1px)}.add-btn.large{padding:.875rem 1.5rem;font-size:1rem}.compare-stats{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.5rem}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.125rem;font-weight:600;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.stat-value.ticker-list{font-size:.875rem;letter-spacing:.025em}.stat-divider{width:1px;height:32px;background:#ffffff1a}.compare-empty{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:3rem 2rem;text-align:center}.empty-main{margin-bottom:2.5rem}.empty-icon{display:flex;justify-content:center;margin-bottom:1.5rem;color:var(--text-muted, #6b7280)}.compare-empty h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:600;color:var(--text-primary, #fff)}.empty-description{color:var(--text-secondary, #9ca3af);margin-bottom:1.5rem;font-size:.9375rem;max-width:400px;margin-left:auto;margin-right:auto}.quick-comparisons{border-top:1px solid rgba(255,255,255,.06);padding-top:2rem}.quick-comparisons h3{font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1.25rem}.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;max-width:800px;margin:0 auto}.quick-card{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;cursor:pointer;transition:all .15s ease;text-align:left}.quick-card:hover{background:#ffffff0a;border-color:#ffffff1a;transform:translateY(-1px)}.quick-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff08;border-radius:8px;flex-shrink:0}.quick-info{display:flex;flex-direction:column;gap:.125rem}.quick-name{font-weight:600;color:var(--text-primary, #fff);font-size:.875rem}.quick-tickers{font-size:.75rem;color:var(--text-muted, #6b7280);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.compare-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1.25rem}.insight-card{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;transition:all .15s ease}.insight-card:hover{background:#ffffff0a;border-color:#ffffff1a}.insight-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff08;border-radius:8px;flex-shrink:0}.insight-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.insight-label{font-size:.7rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.insight-main{display:flex;align-items:center;gap:.5rem}.insight-ticker{font-weight:700;font-size:.95rem;color:var(--text-primary, #fff);font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.insight-value{font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums}.compare-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:#22c55e;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.compare-loading p{color:var(--text-muted, #6b7280)}.compare-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:1rem 1.25rem;border-radius:10px;margin-bottom:1.5rem;color:#ef4444}.compare-error p{margin:0}.header-actions{display:flex;align-items:center;gap:.5rem}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .75rem;background:#ffffff0d;color:#9ca3af;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-size:.8rem;cursor:pointer;transition:all .15s}.action-btn:hover{background:#ffffff14;color:#fff;border-color:#ffffff26}.save-comparison-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:1rem}.save-comparison-bar input{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.5rem .75rem;color:#fff;font-size:.875rem;outline:none}.save-comparison-bar input:focus{border-color:#22c55e}.save-comparison-bar .add-btn{padding:.5rem 1rem;font-size:.8rem}.save-comparison-bar .add-btn:disabled{opacity:.5;cursor:not-allowed}.saved-comparisons-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.saved-comparisons-section h3{font-size:.75rem;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.saved-comparisons-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.saved-comp-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:#22c55e14;border:1px solid rgba(34,197,94,.2);border-radius:20px;color:#22c55e;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s}.saved-comp-chip:hover{background:#22c55e26;border-color:#22c55e4d}.saved-comp-tickers{color:#6b7280;font-size:.7rem;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.saved-comp-delete{color:#6b7280;padding:.15rem;border-radius:50%;display:flex;align-items:center;transition:all .15s}.saved-comp-delete:hover{color:#ef4444;background:#ef444426}@media(max-width:768px){.compare-page{padding:1rem}.compare-header{flex-direction:column;gap:1rem;align-items:flex-start}.breadcrumb{font-size:1rem}.compare-stats{flex-wrap:wrap;gap:1rem}.stat-divider{display:none}.quick-grid{grid-template-columns:1fr}.compare-empty{padding:2rem 1rem}}@media(max-width:480px){.stat-value.ticker-list{font-size:.75rem}}.screener-page{max-width:1400px;margin:0 auto;padding:2rem;width:100%;box-sizing:border-box}.screener-header{text-align:center;margin-bottom:2rem}.screener-title{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.5rem}.screener-title h1{font-size:2rem;font-weight:700;color:var(--text-primary, #fafafa);margin:0}.screener-subtitle{color:var(--text-secondary, #a1a1aa);font-size:1rem;margin:0}.search-card{background:linear-gradient(135deg,#22c55e0d,#ffffff05);border:1px solid rgba(34,197,94,.15);border-radius:16px;padding:1.5rem;margin-bottom:2rem}.search-card-header{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#22c55e26,#22c55e0d);border:1px solid rgba(34,197,94,.2);border-radius:20px;padding:.375rem .875rem;margin-bottom:1rem;font-size:.8125rem;font-weight:500;color:#4ade80}.screener-hero-strip{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;margin-bottom:1rem;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.hero-metric{display:flex;flex-direction:column;gap:.25rem}.hero-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff8c}.hero-value{font-size:1rem;font-weight:600;color:#e5fbe9}.hero-divider{width:1px;height:24px;background:#ffffff14}.search-icon-sparkle{color:#22c55e;animation:sparkle-pulse 2s ease-in-out infinite}@keyframes sparkle-pulse{0%,to{opacity:1}50%{opacity:.6}}.screener-search-form{margin-bottom:1rem}.search-input-wrapper{display:flex;align-items:center;gap:.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.5rem .75rem .5rem 1rem;transition:all .15s ease}.search-input-wrapper:focus-within{border-color:#22c55e4d;background:#ffffff08}.search-icon{width:20px;height:20px;color:var(--text-muted, #71717a);flex-shrink:0}.search-input-wrapper input{flex:1;background:transparent;border:none;color:var(--text-primary, #fafafa);font-size:1rem;padding:.75rem 0;outline:none}.search-input-wrapper input::-moz-placeholder{color:var(--text-muted, #71717a)}.search-input-wrapper input::placeholder{color:var(--text-muted, #71717a)}.quick-filters{margin-bottom:1.5rem}.filter-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.quick-filters .filter-chip{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:.4rem .85rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary, #a1a1aa);cursor:pointer;transition:all .15s ease}.quick-filters .filter-chip:hover:not(:disabled){background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.quick-filters .filter-chip:disabled{opacity:.5;cursor:not-allowed}.quick-filters .filter-chip.all{background:#22c55e26;border-color:#22c55e4d;color:#22c55e}.quick-filters .filter-chip.region{border-color:#60a5fa40}.quick-filters .filter-chip.region:hover:not(:disabled){background:#60a5fa1a;border-color:#60a5fa66;color:#60a5fa}.quick-filters .filter-chip.sector{border-color:#fbbf2440}.quick-filters .filter-chip.sector:hover:not(:disabled){background:#fbbf241a;border-color:#fbbf2466;color:#fbbf24}.quick-filters .filter-chip.strategy{border-color:#a855f740}.quick-filters .filter-chip.strategy:hover:not(:disabled){background:#a855f71a;border-color:#a855f766;color:#a855f7}.quick-filters .filter-chip.size{border-color:#f472b640}.quick-filters .filter-chip.size:hover:not(:disabled){background:#f472b61a;border-color:#f472b666;color:#f472b6}.quick-filters .filter-chip.combo{background:#ffffff05;border-style:dashed;border-color:#ffffff26}.quick-filters .filter-chip.combo:hover:not(:disabled){background:#22c55e14;border-color:#22c55e40;border-style:solid;color:#22c55e}.cache-status-banner{display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#fbbf2426,#fbbf240d);border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.5rem}.cache-status-banner.refreshing{background:linear-gradient(135deg,#22c55e26,#22c55e0d);border-color:#22c55e4d}.cache-status-banner.healthy{background:linear-gradient(135deg,#22c55e1a,#3b82f60f);border-color:#22c55e38}.cache-status-icon{color:#fbbf24;flex-shrink:0}.cache-status-banner.refreshing .cache-status-icon{color:#22c55e}.cache-status-content{display:flex;flex-direction:column;flex:1;gap:.25rem}.cache-status-title{font-weight:600;font-size:.9rem;color:#fbbf24}.cache-status-banner.refreshing .cache-status-title,.cache-status-banner.healthy .cache-status-title{color:#22c55e}.cache-status-hint{font-size:.8rem;color:var(--text-secondary, #a1a1aa)}.cache-refresh-btn{flex-shrink:0;gap:.5rem}.cache-warning-row,.cache-bucket-row,.cache-region-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.cache-warning-pill{display:inline-flex;align-items:center;background:#ef44441f;border:1px solid rgba(239,68,68,.25);color:#fca5a5;font-size:.72rem;padding:.2rem .5rem;border-radius:999px}.cache-bucket-pill{display:inline-flex;align-items:center;background:#fbbf241f;border:1px solid rgba(251,191,36,.25);color:#fbbf24;font-size:.72rem;padding:.2rem .5rem;border-radius:999px}.cache-region-pill{display:inline-flex;align-items:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary, #a1a1aa);font-size:.72rem;padding:.2rem .5rem;border-radius:999px}.cache-warning{display:flex;align-items:center;gap:.75rem;background:#fbbf241a;border:1px solid rgba(251,191,36,.2);border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;color:#fbbf24;font-size:.875rem}.cache-warning-content{display:flex;flex-direction:column;flex:1;gap:.25rem}.cache-warning-hint{font-size:.75rem;opacity:.8}.screener-error{display:flex;align-items:flex-start;gap:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:1rem;margin-bottom:1.5rem;color:#f87171}.error-suggestion{margin-top:.5rem;font-size:.875rem;opacity:.8}.screener-results{margin-top:1.5rem;width:100%;max-width:100%}.results-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stats-left{display:flex;align-items:center;gap:1rem}.stat-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.stat-label{color:var(--text-muted, #71717a)}.stat-value{font-weight:600;color:var(--text-primary, #fafafa)}.stat-value.highlight{color:#22c55e}.stat-divider{width:1px;height:16px;background:#ffffff1a}.stats-actions{display:flex;gap:.5rem}.export-btn{display:flex;align-items:center;gap:.375rem}.results-count{font-size:.875rem;color:var(--text-secondary, #a1a1aa)}.filters-applied{display:flex;flex-wrap:wrap;gap:.5rem}.filter-chip{background:#22c55e1a;color:#4ade80;padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:500}.no-results-suggestion{text-align:center;padding:2rem;color:var(--text-secondary, #a1a1aa);font-size:.875rem}.results-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08);margin:0 auto}.results-table{width:100%;min-width:0;border-collapse:collapse;font-size:.83rem;table-layout:fixed}.results-table th{text-align:left;padding:.75rem .65rem;background:#ffffff08;color:var(--text-muted, #6b7280);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.06)}.results-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .15s,background .15s}.results-table th.sortable:hover{color:var(--text-primary, #fafafa);background:#ffffff0d}.sort-icon{display:inline-block;vertical-align:middle;margin-left:.25rem;color:#22c55e}.results-table td{padding:.75rem .65rem;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-primary, #fafafa);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-table tbody tr{cursor:pointer;transition:background .15s}.results-table tbody tr:hover{background:#ffffff08}.results-table tbody tr:last-child td{border-bottom:none}.ticker-cell{font-weight:600;color:#22c55e!important}.company-cell{max-width:160px}.company-cell-text{display:inline-block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.results-table th:nth-child(1),.results-table td:nth-child(1){width:36px}.results-table th:nth-child(2),.results-table td:nth-child(2){width:76px}.results-table th:nth-child(3),.results-table td:nth-child(3){width:82px}.results-table th:nth-child(4),.results-table td:nth-child(4){width:70px}.results-table th:nth-child(5),.results-table td:nth-child(5){width:140px}.results-table th:nth-child(6),.results-table td:nth-child(6){width:100px}.results-table th:nth-child(7),.results-table td:nth-child(7){width:90px}.results-table th:nth-child(8),.results-table td:nth-child(8){width:80px}.country-cell{display:flex;align-items:center;gap:.35rem;overflow:hidden}.country-flag{font-size:1rem;flex-shrink:0}.country-name{color:var(--text-secondary, #a1a1aa);font-size:.75rem;overflow:hidden;text-overflow:ellipsis}.results-table .local-currency{display:none}.local-currency{color:var(--text-muted, #71717a);font-size:.75rem;font-weight:400}.screener-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.screener-empty h3{font-size:1.25rem;font-weight:600;color:var(--text-primary, #fafafa);margin:1rem 0 .5rem}.screener-empty p{color:var(--text-secondary, #a1a1aa);max-width:400px;line-height:1.6}.screener-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.screener-loading p{color:var(--text-secondary, #a1a1aa)}.quality-cell{font-weight:600;font-family:var(--font-mono, "SF Mono", Consolas, monospace)}.quality-cell.positive{color:var(--positive, #22c55e)}.quality-cell.negative{color:var(--negative, #ef4444)}@media(max-width:768px){.screener-page{padding:1.5rem 1rem}.screener-title h1{font-size:1.5rem}.results-table{font-size:.8125rem}.results-table th,.results-table td{padding:.625rem .75rem}}.pagination-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:1rem 1.5rem;margin-top:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;gap:1.5rem}.pagination-info{font-size:.8rem;color:var(--text-secondary, #a1a1aa);white-space:nowrap}.pagination-buttons{display:flex;align-items:center;gap:.5rem}.pagination-btn{padding:.4rem .6rem!important;min-width:36px;display:flex;align-items:center;justify-content:center}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-page-info{font-size:.85rem;color:var(--text-primary, #fafafa);font-weight:500;padding:0 .75rem;white-space:nowrap}.pagination-size{display:flex;align-items:center;gap:.5rem}.pagination-size label{font-size:.8rem;color:var(--text-secondary, #a1a1aa);white-space:nowrap}.pagination-size select{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-primary, #fafafa);font-size:.85rem;padding:.4rem .75rem;cursor:pointer;transition:all .15s ease}.pagination-size select:hover{border-color:#fff3}.pagination-size select:focus{outline:none;border-color:var(--primary, #22c55e)}.pagination-size select:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.pagination-controls{flex-direction:column;gap:.75rem}.pagination-info{order:2;text-align:center}.pagination-buttons{order:1}.pagination-size{order:3}}.save-query-btn{background:transparent;border:none;color:var(--text-muted, #71717a);cursor:pointer;padding:.5rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;flex-shrink:0}.save-query-btn:hover:not(:disabled){color:#fbbf24;background:#fbbf241a}.save-query-btn:disabled{opacity:.3;cursor:not-allowed}.saved-queries-section{margin-bottom:1rem}.saved-queries-toggle{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-secondary, #a1a1aa);cursor:pointer;font-size:.8125rem;font-weight:500;padding:.375rem 0;transition:color .15s}.saved-queries-toggle:hover{color:var(--text-primary, #fafafa)}.saved-queries-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding:.5rem 0}.saved-query-item{display:inline-flex;align-items:center;gap:.375rem;background:#fbbf2414;border:1px solid rgba(251,191,36,.2);border-radius:20px;padding:.35rem .75rem;font-size:.8125rem;color:#fbbf24;cursor:pointer;transition:all .15s ease}.saved-query-item:hover{background:#fbbf2426;border-color:#fbbf2459}.saved-query-delete{background:transparent;border:none;color:#fbbf2480;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;transition:color .15s,background .15s}.saved-query-delete:hover{color:#ef4444;background:#ef444426}.checkbox-cell-header,.checkbox-cell{width:40px;text-align:center;padding:.5rem!important}.checkbox-cell input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#22c55e}.sparkline-header{width:80px;text-align:center}.sparkline-cell{padding:.4rem .35rem!important;width:80px;text-align:center}.results-table tbody tr.selected-row{background:#22c55e0f}.results-table tbody tr.selected-row:hover{background:#22c55e1a}.results-table tbody tr.focused-row{background:#22c55e14;outline:1px solid rgba(34,197,94,.25);outline-offset:-1px}.ticker-inline-link,.company-inline-link{color:inherit;text-decoration:none;display:inline-block;max-width:100%}.ticker-inline-link:hover,.company-inline-link:hover{text-decoration:underline;text-decoration-color:#22c55e80}.ticker-inline-link:focus,.company-inline-link:focus{outline:none}.ticker-inline-link:focus-visible,.company-inline-link:focus-visible{outline:none}.compare-selected-bar{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1rem;background:#111827f2;border:1px solid rgba(34,197,94,.3);border-radius:12px;padding:.75rem 1.25rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #0006;z-index:50;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.compare-selected-bar span{font-size:.875rem;color:var(--text-secondary, #a1a1aa);white-space:nowrap}.compare-clear-btn{background:transparent;border:none;color:var(--text-muted, #71717a);cursor:pointer;font-size:.8125rem;padding:.25rem .5rem;border-radius:4px;transition:color .15s,background .15s}.compare-clear-btn:hover{color:#ef4444;background:#ef44441a}.distribution-bar-container{margin:.75rem 0 1rem;padding:.75rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px}.distribution-controls{display:flex;gap:.25rem;margin-bottom:.5rem}.distribution-toggle{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-muted, #71717a);cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .625rem;border-radius:6px;transition:all .15s ease}.distribution-toggle:hover{color:var(--text-secondary, #a1a1aa);border-color:#fff3}.distribution-toggle.active{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.distribution-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;gap:1px;margin-bottom:.5rem}.distribution-segment{height:100%;min-width:3px;transition:opacity .15s}.distribution-segment:hover{opacity:.8}.distribution-legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.legend-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;color:var(--text-secondary, #a1a1aa);white-space:nowrap}.legend-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}
