*,: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,ui-sans-serif,system-ui;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:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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}.btn-primary-glow{display:inline-flex;cursor:pointer;align-items:center;gap:.5rem;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(32 112 208 / var(--tw-bg-opacity, 1));padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary-glow:hover{--tw-bg-opacity: 1;background-color:rgb(24 88 184 / var(--tw-bg-opacity, 1))}.btn-primary-glow:focus{outline:2px solid transparent;outline-offset:2px;--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);--tw-ring-opacity: 1;--tw-ring-color: rgb(24 88 184 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px;--tw-ring-offset-color: #0b0b12}.btn-primary-glow: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))}.btn-primary-glow{border:0}.btn-primary-glow:hover{box-shadow:0 0 40px -8px #2070d080}.btn-ghost{display:inline-flex;cursor:pointer;align-items:center;gap:.5rem;border-radius:.5rem;border-width:1px;border-color:#ffffff1a;background-color:#ffffff0d;padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(11 20 36 / var(--tw-text-opacity, 1));--tw-backdrop-blur: blur(8px);-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-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-ghost:hover{border-color:#fff3;background-color:#ffffff1a}.pill-open{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;background-color:#10b9811a;padding:.125rem .625rem;font-size:11px;font-weight:600;--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1));border:1px solid rgba(16,185,129,.25)}.pill-closing{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;background-color:#f59e0b1a;padding:.125rem .625rem;font-size:11px;font-weight:600;--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1));border:1px solid rgba(245,158,11,.25)}.pill-closed{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;background-color:#4755711a;padding:.125rem .625rem;font-size:11px;font-weight:600;--tw-text-opacity: 1;color:rgb(71 85 113 / var(--tw-text-opacity, 1));border:1px solid rgba(100,116,139,.25)}.badge-category{display:inline-flex;align-items:center;border-radius:9999px;background-color:#2070d01a;padding:.125rem .5rem;font-size:11px;font-weight:500;--tw-text-opacity: 1;color:rgb(24 88 184 / var(--tw-text-opacity, 1));border:1px solid rgba(139,92,246,.3)}.input-dark{width:100%;border-radius:.5rem;border-width:1px;border-color:#ffffff1a;background-color:#ffffff08;padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(11 20 36 / var(--tw-text-opacity, 1));--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-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.input-dark::-moz-placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.input-dark::placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.input-dark:focus{--tw-border-opacity: 1;border-color:rgb(24 88 184 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--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);--tw-ring-color: rgb(24 88 184 / .3)}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.left-3{left:.75rem}.left-3\.5{left:.875rem}.right-3{right:.75rem}.top-1\/2{top:50%}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-2{margin-top:.5rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-\[140px\]{min-width:140px}.min-w-\[200px\]{min-width:200px}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-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))}.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))}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.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))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-accent-500\/20{border-color:#3a86e033}.border-brand-400\/20{border-color:#2070d033}.border-brand-400\/30{border-color:#2070d04d}.border-rose-400\/20{border-color:#fb718533}.border-white\/10{border-color:#ffffff1a}.border-white\/\[0\.05\]{border-color:#ffffff0d}.border-white\/\[0\.06\]{border-color:#ffffff0f}.border-white\/\[0\.07\]{border-color:#ffffff12}.bg-accent-500\/10{background-color:#3a86e01a}.bg-brand-500\/10{background-color:#2070d01a}.bg-brand-500\/20{background-color:#2070d033}.bg-brand-900\/20{background-color:#4c1d9533}.bg-rose-400\/\[0\.08\]{background-color:#fb718514}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-white\/\[0\.02\]{background-color:#ffffff05}.bg-white\/\[0\.03\]{background-color:#ffffff08}.bg-white\/\[0\.04\]{background-color:#ffffff0a}.bg-white\/\[0\.07\]{background-color:#ffffff12}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-brand-300{--tw-gradient-from: #1858b8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(24 88 184 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-brand-500{--tw-gradient-to: #2070d0 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-3{padding:.75rem}.p-4{padding:1rem}.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-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.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-12{padding-top:3rem;padding-bottom:3rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-10{padding-left:2.5rem}.pl-9{padding-left:2.25rem}.pr-10{padding-right:2.5rem}.pt-2{padding-top:.5rem}.text-center{text-align:center}.font-display{font-family:Space Grotesk,ui-sans-serif,system-ui}.font-sans{font-family:Inter,ui-sans-serif,system-ui}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[9px\]{font-size:9px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent-400{--tw-text-opacity: 1;color:rgb(56 189 248 / var(--tw-text-opacity, 1))}.text-brand-300{--tw-text-opacity: 1;color:rgb(24 88 184 / var(--tw-text-opacity, 1))}.text-brand-400{--tw-text-opacity: 1;color:rgb(24 88 184 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-rose-300{--tw-text-opacity: 1;color:rgb(253 164 175 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(26 36 54 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(45 58 82 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(71 85 113 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / 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))}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.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}.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)}.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{--tw-backdrop-blur: blur(8px);-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}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.grid-bg{background-image:linear-gradient(to right,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.04) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,black,transparent 75%);mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,black,transparent 75%)}*{box-sizing:border-box}:root{--brand: #2070d0;--brand-2: #3a86e0;--brand-dark: #003070;--bg: #0b0b12;--panel: #14141c;--panel-2: #1f1f2b;--border: rgba(255,255,255,.08);--text: #1a2436;--muted: #475571;--ok: #34d399;--danger: #f87171;--warn: #fbbf24;--shadow: 0 0 0 1px rgba(255,255,255,.04), 0 4px 24px rgba(0,0,0,.5);--fg: #1a2436;--sb-bg: #0b0b12;--sb-text: #475571;--sb-text-active: #0b1424;--sb-hover: rgba(139,92,246,.1);--sb-active: rgba(139,92,246,.18);--sb-border: rgba(255,255,255,.06);--sb-w: 220px}html,body,#root{height:100%;margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:#0b0b12;background-image:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(139,92,246,.22),transparent 60%),radial-gradient(ellipse 60% 40% at 90% 10%,rgba(14,165,233,.15),transparent 60%),radial-gradient(ellipse 70% 50% at 10% 100%,rgba(167,139,250,.1),transparent 60%);background-attachment:fixed}a{color:#2070d0;text-decoration:none}a:hover{color:#1858b8;text-decoration:none}h2,h3{font-family:Space Grotesk,ui-sans-serif,system-ui;letter-spacing:-.02em}.app{display:flex;min-height:100vh}.sidebar{width:var(--sb-w);background:#0b0b12f5;border-right:1px solid var(--sb-border);display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sidebar::-webkit-scrollbar{display:none}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:20px 16px 16px;border-bottom:1px solid var(--sb-border);margin-bottom:8px}.sidebar-brand img{width:30px;height:30px;border-radius:8px}.sidebar-brand h1{font-family:Space Grotesk,ui-sans-serif;font-size:16px;margin:0;font-weight:700;letter-spacing:-.04em;background:linear-gradient(135deg,#1858b8,#2070d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-brand small{font-size:10px;color:#475571b3;letter-spacing:1.2px;text-transform:uppercase;display:block;margin-top:1px}.sidebar nav{flex:1;padding:4px 10px;display:flex;flex-direction:column;gap:1px}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#475571;font-size:13px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s;text-decoration:none;position:relative}.sidebar nav a svg{flex-shrink:0;opacity:.7;transition:opacity .15s,color .15s}.sidebar nav a:hover{background:#2070d01a;color:#1858b8}.sidebar nav a:hover svg{opacity:1}.sidebar nav a.active{background:#2070d026;color:#1858b8;font-weight:600}.sidebar nav a.active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:0 3px 3px 0;background:#2070d0}.sidebar nav a.active svg{opacity:1;color:#2070d0}.sidebar-section{padding:14px 16px 4px;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#47557159}.sidebar-user{margin-top:auto;padding:12px 14px;border-top:1px solid var(--sb-border);display:flex;align-items:center;gap:10px}.sidebar-user-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#2070d0,#3a86e0);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-info strong{font-size:12px;display:block;color:#1a2436;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-info small{color:#475569;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.link-btn{background:none;border:0;color:#475569;cursor:pointer;padding:5px;border-radius:6px;display:flex;align-items:center;transition:color .15s,background .15s}.link-btn:hover{color:#f87171;background:#f871711a}.main{flex:1;padding:24px 28px;overflow-y:auto;min-width:0}.page-header{margin:0 0 20px}.page-header h2{margin:0 0 2px;font-size:20px;font-weight:700}h2{margin-top:0;font-size:20px;font-weight:700;color:#0b1424}h3{font-size:15px;font-weight:600;margin-bottom:12px;color:#2d3a52}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:24px}.kpi{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:18px 20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .2s,transform .2s,box-shadow .2s}.kpi:hover{border-color:#2070d047;transform:translateY(-2px)}.kpi .label{color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.7px;font-weight:600;margin-bottom:8px}.kpi .value{font-family:Space Grotesk,ui-sans-serif;font-size:24px;font-weight:700;color:#0b1424;line-height:1}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:14px 16px;background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.filters input,.filters select{background:#ffffff0a;color:#1a2436;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 11px;font-size:13px;min-width:130px;font-family:inherit;transition:border-color .15s,box-shadow .15s}.filters input::-moz-placeholder{color:#475569e6}.filters input::placeholder{color:#475569e6}.filters input:focus,.filters select:focus{outline:none;border-color:#2070d080;box-shadow:0 0 0 3px #2070d01f}.filters select option{background:#1f1f2b;color:#1a2436}.filters button{background:#2070d0;color:#fff;border:0;padding:8px 16px;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;font-family:inherit;transition:background .15s,transform .05s;display:flex;align-items:center;gap:6px}.filters button:hover{background:#2070d0}.filters button:active{transform:translateY(1px)}.filters button.secondary{background:#ffffff0a;color:#475571;border:1px solid rgba(255,255,255,.08);box-shadow:none}.filters button.secondary:hover{color:#2070d0;border-color:#2070d059;background:#2070d014}table{width:100%;border-collapse:collapse;background:#ffffff04;border:1px solid rgba(255,255,255,.07);border-radius:14px;overflow:hidden}th,td{padding:11px 14px;text-align:left;border-bottom:1px solid rgba(255,255,255,.05)}th{background:#ffffff05;color:#475569;font-weight:600;text-transform:uppercase;letter-spacing:.6px;font-size:11px;white-space:nowrap}td{font-size:13.5px;color:#2d3a52}tr:last-child td{border-bottom:0}tr:hover td{background:#2070d00a}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid transparent}.badge.cat{background:#3a86e01a;color:#38bdf8;border-color:#3a86e02e}.badge.uf{background:#2070d01a;color:#2070d0;border-color:#2070d033}.badge.urg{background:#f871711a;color:#f87171;border-color:#f8717133}.badge.ok{background:#34d3991a;color:#34d399;border-color:#34d39933}.pagination{display:flex;gap:6px;margin-top:16px;align-items:center;color:#475571;font-size:13px}.pagination button{background:#ffffff08;color:#475571;border:1px solid rgba(255,255,255,.08);padding:6px 12px;border-radius:8px;cursor:pointer;font-family:inherit;transition:all .15s}.pagination button:hover:not(:disabled){border-color:#2070d066;color:#2070d0;background:#2070d014}.pagination button:disabled{opacity:.3;cursor:not-allowed}.detalhe{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:20px 24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.detalhe dl{display:grid;grid-template-columns:180px 1fr;gap:8px 16px}.detalhe dt{color:#475571;font-size:12.5px;font-weight:500}.detalhe dd{margin:0;font-size:13.5px;color:#2d3a52}.empty{padding:48px;text-align:center;color:#475569}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background-color:#0b0b12;background-image:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(139,92,246,.25),transparent 60%),radial-gradient(ellipse 60% 40% at 90% 10%,rgba(14,165,233,.18),transparent 60%),radial-gradient(ellipse 70% 50% at 10% 100%,rgba(167,139,250,.12),transparent 60%)}.auth-card{width:100%;max-width:400px;background:#14141cd9;border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:36px 32px;box-shadow:0 0 0 1px #2070d00f,0 32px 80px #000000a6;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:30px}.auth-brand img{width:40px;height:40px;border-radius:12px}.auth-brand h1{margin:0;font-size:20px;font-weight:700;font-family:Space Grotesk,ui-sans-serif;background:linear-gradient(135deg,#1858b8,#2070d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.04em}.auth-brand small{color:#334155;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;display:block}.auth-card h2{margin:0 0 4px;font-size:22px;font-weight:700;font-family:Space Grotesk,ui-sans-serif;letter-spacing:-.03em;color:#0b1424}.auth-card>p{color:#475569;font-size:13.5px;margin:0 0 22px}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form label{font-size:11px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px;display:block}.auth-form input{background:#ffffff0a;color:#0b1424;border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;width:100%;transition:border-color .15s,box-shadow .15s}.auth-form input::-moz-placeholder{color:#334155}.auth-form input::placeholder{color:#334155}.auth-form input:focus{outline:none;border-color:#2070d08c;box-shadow:0 0 0 3px #2070d02e}.auth-form button{background:#2070d0;color:#fff;border:0;padding:13px;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;margin-top:6px;font-family:inherit;transition:background .15s,transform .05s;letter-spacing:-.01em}.auth-form button:hover:not(:disabled){background:#2070d0}.auth-form button:active{transform:translateY(1px)}.auth-form button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.auth-err{background:#f8717114;color:#fca5a5;border:1px solid rgba(248,113,113,.2);padding:10px 12px;border-radius:10px;font-size:13px}.auth-alt{margin-top:18px;text-align:center;color:#334155;font-size:13px}.auth-alt a{color:#2070d0;font-weight:600}.auth-alt a:hover{color:#1858b8}.qual-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.qual-split{display:grid;grid-template-columns:1fr 1fr;gap:0}.qual-fav{border-right:none!important}.qual-card{transition:box-shadow .18s,transform .18s,border-color .18s;cursor:pointer}.qual-card:hover{transform:translateY(-2px);border-color:#2070d047!important}input:not(.auth-form input):not([type=checkbox]):not([type=radio]),select,textarea{background:#ffffff0a;color:#1a2436;border:1px solid rgba(255,255,255,.09);border-radius:8px;font-family:inherit;padding:8px 11px;transition:border-color .15s,box-shadow .15s}input::-moz-placeholder,textarea::-moz-placeholder{color:#334155}input::placeholder,textarea::placeholder{color:#334155}input:focus:not([type=checkbox]):not([type=radio]),select:focus,textarea:focus{outline:none;border-color:#2070d080;box-shadow:0 0 0 3px #2070d01f}select option{background:#1f1f2b;color:#1a2436}button{background:#ffffff0a;color:var(--text);border:1px solid rgba(255,255,255,.08);border-radius:8px;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#ffffff12;border-color:#ffffff24}button:disabled{opacity:.45;cursor:not-allowed}.team-member{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:14px 18px;display:grid;grid-template-columns:38px 1fr auto auto;align-items:center;gap:12px;transition:border-color .2s}.team-member:hover{border-color:#2070d038}.team-member-info{min-width:0}.team-member-info strong{display:block;font-size:14px;font-weight:600;color:#1a2436;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-member-info span{font-size:12px;color:#475571;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.team-avatar{width:38px;height:38px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,#2070d0,#3a86e0);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff}.team-role-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap}.team-actions{display:flex;gap:6px;align-items:center}.team-actions select{font-size:12px;padding:5px 8px;border-radius:6px;border:1px solid rgba(255,255,255,.09);background:#ffffff0a;color:#1a2436;font-family:inherit}.team-actions .btn-remove{font-size:12px;padding:5px 10px;border-radius:6px;cursor:pointer;border:1px solid rgba(248,113,113,.28);background:#f8717114;color:#f87171;font-weight:600;font-family:inherit;white-space:nowrap}.team-invite{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:20px 24px}.team-invite-form{display:grid;grid-template-columns:1fr 1fr 160px auto;gap:10px;align-items:end}.team-invite-field label{display:block;font-size:11px;color:#475571;font-weight:700;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.mob-nav,.mob-drawer,.mob-overlay{display:none}@media (max-width: 820px){.sidebar{display:none}.mob-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#0b0b12f2;border-top:1px solid rgba(255,255,255,.06);z-index:100;padding-bottom:env(safe-area-inset-bottom,0px);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.mob-nav a,.mob-nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 4px;color:#475569;font-size:10px;font-weight:500;text-decoration:none;background:none;border:0;cursor:pointer;font-family:inherit;transition:color .15s}.mob-nav a svg,.mob-nav-btn svg{opacity:.6;transition:opacity .15s}.mob-nav a:hover,.mob-nav-btn:hover{color:#1858b8}.mob-nav a:hover svg,.mob-nav-btn:hover svg{opacity:1}.mob-nav a.active{color:#2070d0}.mob-nav a.active svg{opacity:1;color:#2070d0}.mob-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:110;animation:fadeIn .2s ease}.mob-drawer{display:flex;flex-direction:column;position:fixed;bottom:0;left:0;right:0;background:#14141cf7;border-top:1px solid rgba(255,255,255,.07);border-radius:20px 20px 0 0;z-index:120;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(100%);transition:transform .28s cubic-bezier(.32,.72,0,1);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.mob-drawer.open{transform:translateY(0)}.mob-drawer-header{display:flex;align-items:center;gap:10px;padding:16px 16px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.mob-drawer-nav{display:flex;flex-direction:column;gap:2px;padding:10px 12px}.mob-drawer-nav a{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:10px;color:#475571;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.mob-drawer-nav a:hover{background:#2070d01a;color:#1858b8}.mob-drawer-nav a.active{background:#2070d026;color:#1858b8}.mob-drawer-nav a svg{opacity:.75}.mob-drawer-nav a.active svg{opacity:1;color:#2070d0}.mob-drawer-logout{display:flex;align-items:center;gap:10px;margin:4px 12px 12px;padding:11px 14px;border-radius:10px;background:#f8717112;color:#f87171;border:1px solid rgba(248,113,113,.18);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.mob-drawer-logout:hover{background:#f8717121}.main{padding:16px 16px calc(64px + env(safe-area-inset-bottom,0px))}.kpi .value{font-size:20px}.detalhe dl{grid-template-columns:1fr}.detalhe dt{margin-top:10px;font-weight:600}.auth-card{padding:28px 20px}.qual-grid-2{grid-template-columns:1fr;gap:16px}.qual-split{grid-template-columns:1fr}.qual-fav{border-right:1px solid rgba(52,211,153,.18)!important}.resp-table{display:block;background:transparent;border:none;overflow:visible}.resp-table thead{display:none}.resp-table tbody{display:flex;flex-direction:column;gap:10px}.resp-table tr{display:block;background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:14px 16px}.resp-table tr:hover td{background:transparent}.resp-table td:first-child{display:block;padding:0 0 10px;border:0;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:6px;font-size:13.5px;line-height:1.4}.resp-table td[data-label]{display:flex;align-items:flex-start;gap:10px;padding:5px 0;border:0;font-size:13px;line-height:1.4;border-top:1px solid rgba(255,255,255,.05)}.resp-table td[data-label]:before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#475569;min-width:76px;flex-shrink:0;padding-top:2px}.resp-table td:last-child:not([data-label]){display:flex;flex-wrap:wrap;gap:6px;padding:10px 0 0;margin-top:4px;border-top:1px solid rgba(255,255,255,.05)}.resp-table td:first-child:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.resp-table td:empty{display:none}.team-member{grid-template-columns:38px 1fr;grid-template-rows:auto auto}.team-role-badge{grid-column:2;justify-self:start}.team-actions{grid-column:1 / -1;padding-top:6px;border-top:1px solid rgba(255,255,255,.06)}.team-invite-form{grid-template-columns:1fr}}@media (max-width: 480px){.kpis{grid-template-columns:1fr 1fr}h2{font-size:17px}.filters input,.filters select{flex:1 1 100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@supports (padding: max(0px)){.sidebar{padding-top:max(0px,env(safe-area-inset-top))}}.hover\:border-white\/\[0\.14\]:hover{border-color:#ffffff24}.hover\:text-brand-300:hover{--tw-text-opacity: 1;color:rgb(24 88 184 / var(--tw-text-opacity, 1))}.hover\:text-slate-200:hover{--tw-text-opacity: 1;color:rgb(26 36 54 / var(--tw-text-opacity, 1))}.hover\:text-slate-300:hover{--tw-text-opacity: 1;color:rgb(45 58 82 / var(--tw-text-opacity, 1))}.hover\:text-slate-400:hover{--tw-text-opacity: 1;color:rgb(71 85 113 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.focus\:border-brand-400:focus{--tw-border-opacity: 1;border-color:rgb(24 88 184 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.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-brand-400\/30:focus{--tw-ring-color: rgb(24 88 184 / .3)}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:min-h-0{min-height:0px}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* === doubleX skin override — LIGHT THEME (DS rule) === */
html,body{
  font-family:'Nunito',ui-sans-serif,system-ui,-apple-system,sans-serif !important;
  background:#f7f9fc !important;
  color:#0b1424 !important;
}
.font-display,h1,h2,h3,h4,h5,h6{font-family:'Nunito',sans-serif !important;}
.font-mono,code,kbd,samp,pre{font-family:'JetBrains Mono',ui-monospace,monospace !important;}

/* === Scroll: liberar body/html pra crescer com conteúdo — page scroll natural === */
html, body, #root{
  height:auto !important;
  min-height:100vh !important;
  overflow-y:visible !important;
}
.app{
  min-height:100vh !important;
  height:auto !important;
  overflow:visible !important;
}
/* Sidebar continua sticky no topo durante page scroll */
.sidebar{
  position:sticky !important;
  top:0 !important;
  height:100vh !important;
  overflow-y:auto !important;
  align-self:flex-start !important;
}

/* Re-define theme variables for light surface */
:root{
  --bg:#f7f9fc !important;
  --panel:#ffffff !important;
  --panel-2:#f1f4f9 !important;          /* sunken surface */
  --text:#0b1424 !important;             /* primary text on light */
  --fg:#0b1424 !important;
  --muted:#475571 !important;            /* secondary text */
  --border:#e2e7ef !important;
  --shadow:0 1px 2px rgba(1,55,125,.06),0 1px 1px rgba(1,55,125,.04) !important;
  --sb-bg:#ffffff !important;
  --sb-text:#475571 !important;
  --sb-text-active:#01377d !important;
  --sb-hover:rgba(32,112,208,.08) !important;
  --sb-active:rgba(32,112,208,.12) !important;
  --sb-border:rgba(1,55,125,.08) !important;
  /* Status colors stay (semantic) */
}

/* Common heading + KPI text — make sure they inherit dark text */
h1,h2,h3,h4,h5,h6{ color:#0b1424 !important; }
.kpi .value, .kpi-value, [class*="kpi"] [class*="value"]{ color:#0b1424 !important; }

/* Override Tailwind brand-* utility classes outside auth-screen — too pale on white */
.text-brand-200{ color:#1858b8 !important; }
.text-brand-300{ color:#1858b8 !important; }
.text-brand-400{ color:#2070d0 !important; }
.border-brand-400{ border-color:#2070d0 !important; }
.ring-brand-400{ --tw-ring-color:#2070d0 !important; }
/* Inside auth (dark) restore the lighter shades */
.auth-screen .text-brand-200{ color:#d4e3f8 !important; }
.auth-screen .text-brand-300{ color:#a8c8f4 !important; }
.auth-screen .text-brand-400{ color:#6aa6ee !important; }

/* Strong tags inside content — ensure dark on light */
main strong, .main strong, [class*="content"] strong{ color:#0b1424 !important; }

/* Sidebar nav links — force darker text via inline override */
.sidebar nav a{ color:#475571 !important; }
.sidebar nav a.active{ color:#01377d !important; }
.sidebar nav a:not(.active) [style*="color"]{ color:inherit !important; }

/* "Seu plano" widget area (Free/Enterprise CTA box in sidebar/footer) — improve contrast */
.sidebar [class*="plan"] [style*="color: rgb(255"],
.sidebar [class*="plan"] [style*="color:#fff"],
.sidebar button[style*="background:none"]{
  background:#01377d !important;
  color:#ffffff !important;
  border:1px solid #2070d0 !important;
}

/* === Force dark text on inline white-text values (oportunidades values etc.) === */
/* Aggressive: any element with inline white text not on a colored bg becomes navy.
   Excludes: avatars (bg gradient), known brand bgs, buttons, auth screen, sidebar nav active. */
[style*="color: rgb(255, 255, 255)"]:not([style*="background"]):not(.sidebar-user-avatar):not(.auth-screen *):not(button):not(.bg-brand-500):not(.bg-brand-900),
[style*="color:#fff"]:not([style*="background"]):not(.sidebar-user-avatar):not(.auth-screen *):not(button):not(.bg-brand-500):not(.bg-brand-900),
[style*="color: #fff"]:not([style*="background"]):not(.sidebar-user-avatar):not(.auth-screen *):not(button):not(.bg-brand-500):not(.bg-brand-900){
  color:#0b1424 !important;
}
/* Numeric/value spans frequently use color:#fff — force navy bold */
span[style*="rgb(255, 255, 255)"], span[style*="color:#fff"], span[style*="color: #fff"]{
  color:#01377d !important;
  font-weight:700 !important;
}

/* Status badges that are still too light (UF — sky-400, "Xd restantes" — amber-400) */
span[style*="color: rgb(56, 189, 248)"], span[style*="color:#38bdf8"]{ color:#0369a1 !important; font-weight:600 !important; }
span[style*="color: rgb(251, 191, 36)"], span[style*="color:#fbbf24"]{ color:#92400e !important; font-weight:600 !important; }

/* === Form fields — white surface, navy text (light theme) === */
select, select option, input, textarea, .input-dark{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#0b1424 !important;
  border:1px solid #c2cad8 !important;
  border-radius:10px !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}
select option{ background:#ffffff !important; color:#0b1424 !important; }
input[type="checkbox"], input[type="radio"]{
  width:auto !important; border-radius:4px !important; accent-color:#2070d0;
}
input::placeholder, textarea::placeholder{ color:#95a0b8 !important; }
input:focus, select:focus, textarea:focus, .input-dark:focus{
  outline:none !important;
  border-color:#2070d0 !important;
  box-shadow:0 0 0 3px rgba(32,112,208,.18) !important;
}

/* Restore transparent input style INSIDE login (auth) since bg there is dark */
.auth-screen input, .auth-screen select, .auth-screen textarea, .auth-screen .input-dark{
  background:rgba(255,255,255,0.06) !important;
  border:1px solid rgba(255,255,255,0.12) !important;
  color:#f1f5f9 !important;
  -webkit-backdrop-filter:blur(4px) !important;
  backdrop-filter:blur(4px) !important;
}
.auth-screen input::placeholder, .auth-screen textarea::placeholder{ color:#94a3b8 !important; }
.auth-screen input:focus, .auth-screen select:focus{
  border-color:#6aa6ee !important;
  box-shadow:0 0 0 3px rgba(106,166,238,.25) !important;
}

/* === KPI / scorecards padronizados pelo DS doubleX === */
.kpi:not(.kpis), .scorecard:not(.scorecards), .stat-card, .detalhe{
  background:#ffffff !important;
  border:0 !important;
  border-radius:10px !important;
  padding:24px !important;
  box-shadow:0 2px 6px rgba(1,55,125,.08), 0 1px 2px rgba(1,55,125,.06) !important;
  transition:box-shadow .22s, transform .22s !important;
}
.kpi:hover, .scorecard:hover, .stat-card:hover, .detalhe:hover{
  box-shadow:0 8px 24px rgba(1,55,125,.10), 0 2px 6px rgba(1,55,125,.06) !important;
  transform:translateY(-2px);
}
/* Label + value tipografia DS */
.kpi .label, .scorecard .label, .stat-card .label, .detalhe .label,
[class*="kpi"] [class*="label"]{
  color:#475571 !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.10em !important;
  margin-bottom:8px !important;
}
.kpi .value, .scorecard .value, .stat-card .value, .detalhe .value{
  color:#0b1424 !important;
  font-size:28px !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
  line-height:1.1 !important;
}
/* Container wrappers — transparent, no bg leak */
.kpis, .scorecards, [class*="kpis"]:not(.kpi), [class*="-grid"]:not([style*="display: grid"] > *){
  background:transparent !important;
  box-shadow:none !important;
}
/* Heuristic: direct children of grid auto-fit containers (KPI rows) — card surface
   (não força padding pra não inflar; deixa o valor original) */
[style*="display: grid"][style*="repeat(auto"] > div,
[style*="display:grid"][style*="repeat(auto"] > div{
  background:#ffffff !important;
  border:0 !important;
  border-radius:10px !important;
  box-shadow:0 2px 6px rgba(1,55,125,.08), 0 1px 2px rgba(1,55,125,.06) !important;
}
/* The grid container itself — transparent */
[style*="display: grid"][style*="repeat(auto"],
[style*="display:grid"][style*="repeat(auto"]{
  background:transparent !important;
  box-shadow:none !important;
}

/* === "Ver planos →" / Dashboard plan widget — visible bg === */
.sidebar button:not([class]),
.sidebar > div > button{
  background:#01377d !important;
  color:#ffffff !important;
  border:1px solid #2070d0 !important;
  border-radius:10px !important;
  padding:8px 12px !important;
}

/* Tables — light theme + overflow scroll on parent container */
table{ background:#ffffff !important; border:1px solid #e2e7ef !important; }
th{ background:#f1f4f9 !important; color:#475571 !important; border-bottom:1px solid #e2e7ef !important; }
td{ color:#0b1424 !important; border-bottom:1px solid #e2e7ef !important; }
tr:hover td{ background:#f7f9fc !important; }

/* === Action buttons (Favoritar busca / Criar alerta / Exportar CSV) ===
   Apenas os BOTÕES recebem surface — não o wrapper. */
.main button[style*="background:transparent"], .main button[style*="background: transparent"],
.main a[style*="background:transparent"], .main a[style*="background: transparent"]{
  background:#ffffff !important;
  border:1px solid #c2cad8 !important;
  color:#01377d !important;
  padding:7px 12px !important;
  border-radius:8px !important;
  font-size:13px !important;
  font-weight:600 !important;
  cursor:pointer !important;
  text-decoration:none !important;
  box-shadow:0 1px 2px rgba(1,55,125,.04) !important;
  transition:background .15s, border-color .15s, box-shadow .15s !important;
}
.main button[style*="background:transparent"]:hover, .main a[style*="background:transparent"]:hover{
  background:#ecf2fb !important;
  border-color:#2070d0 !important;
}

/* === Team page (cards .team-member, .team-invite) — light surface === */
.team-member, .team-invite, .team-card,
[class*="team-"]:not(.team-avatar):not(.team-name):not(.team-role):not(.team-section):not(.team-empty){
  background:#ffffff !important;
  border:1px solid #e2e7ef !important;
  border-radius:10px !important;
  box-shadow:0 1px 2px rgba(1,55,125,.04) !important;
  padding:14px 18px !important;
  margin-bottom:8px !important;
}
.team-avatar{ background:linear-gradient(135deg,#2070d0,#3a86e0) !important; color:#fff !important; }
.team-section, .team-section-title{ color:#475571 !important; }

/* === Generic card surfaces — ANY div com border-radius e bg pálido escuro recebe surface clara === */
.main [style*="background:rgba(255,255,255,0.02)"],
.main [style*="background: rgba(255,255,255,0.02)"],
.main [style*="background:rgba(255,255,255,0.04)"],
.main [style*="background: rgba(255,255,255,0.04)"]{
  background:#ffffff !important;
  border:1px solid #e2e7ef !important;
}

/* Tabelas: scroll horizontal quando overflow + estilo limpo */
.main > div:has(> table), .table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-radius:10px;
  border:1px solid #e2e7ef;
  background:#ffffff;
}
.main > div:has(> table) > table, .table-wrap > table{
  border:0 !important;
  border-radius:0 !important;
  margin:0;
}
.main table{
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.main table th{
  background:#f7f9fc !important;
  color:#475571 !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  font-size:11px !important;
  border-bottom:1px solid #e2e7ef !important;
  padding:10px 14px !important;
}
.main table td{
  padding:12px 14px !important;
  border-bottom:1px solid #f1f4f9 !important;
  color:#0b1424 !important;
}
.main table tr:last-child td{ border-bottom:0 !important; }
.main table tr:hover td{ background:#f7f9fc !important; }

/* Espaçamento entre tabelas/sections do dashboard */
.main table{ margin-bottom:32px !important; }
.main h3{ margin-top:40px !important; margin-bottom:14px !important; }
.main h3:first-child{ margin-top:0 !important; }
/* Spacing entre divs animadas (cada section "et" component) */
.main > div > div + div, .main > div > section + section{ margin-top:32px !important; }
/* Spacing antes do "Top 10 Oportunidades" especificamente */
.main h3 + table, .main h3 + div > table{ margin-top:0 !important; }

/* Sidebar — voltar para 220px (original) e remover auto-collapse de tablet */
:root{ --sb-w:220px !important; }
.sidebar{ width:220px !important; }
body.dx-sb-collapsed .sidebar{ width:64px !important; }

/* Sidebar — white surface */
.sidebar{
  background:#ffffff !important;
  border-right:1px solid rgba(1,55,125,.08) !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  box-shadow:1px 0 0 rgba(1,55,125,.04) !important;
}
.sidebar-brand{border-bottom:1px solid rgba(1,55,125,.08) !important;}
.sidebar-brand h1{
  background:linear-gradient(135deg,#01377d,#2070d0) !important;
  -webkit-background-clip:text !important; background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}
.sidebar-brand small{color:#6b7691 !important;}
.sidebar-section{color:#6b7691 !important; font-weight:700 !important;}

.sidebar nav a{color:#475571 !important;}
.sidebar nav a:hover{background:rgba(32,112,208,.08) !important; color:#01377d !important;}
.sidebar nav a.active{background:rgba(32,112,208,.12) !important; color:#01377d !important;}
.sidebar nav a.active:before{background:#2070d0 !important;}
.sidebar nav a.active svg{color:#2070d0 !important;}

.sidebar-user{border-top:1px solid rgba(1,55,125,.08) !important;}
.sidebar-user-info strong{color:#0b1424 !important;}
.sidebar-user-info small{color:#6b7691 !important;}

/* Mobile bottom nav — white */
.mob-nav{
  background:#ffffff !important;
  border-top:1px solid rgba(1,55,125,.08) !important;
}
.mob-drawer{
  background:#ffffff !important;
  border-top:1px solid rgba(1,55,125,.08) !important;
}

/* Branding caps fix */
.sidebar-brand small,.auth-brand small{
  text-transform:none !important;
  letter-spacing:.01em !important;
  font-size:11px !important;
  font-weight:500 !important;
}

/* === Tailwind slate-* utility overrides for light bg ===
   Override pale slate text colors used in app body. Re-establish lighter shades
   inside auth-screen since that area stays dark. */
.text-slate-400{color:#475571 !important;}
.text-slate-500{color:#475571 !important;}
.text-slate-300{color:#2d3a52 !important;}
.text-slate-200{color:#0b1424 !important;}
.text-slate-600{color:#475571 !important;}

/* === LOGIN — lado esquerdo (form) branco, lado direito (painel decorativo) intacto ===
   Diferenciação via :has() — o lado do form contém input/form, o painel decorativo não. */
.min-h-screen.grid > div:has(form),
.min-h-screen.grid > div:has(input[type="email"]),
.min-h-screen.grid > div:has(input[type="password"]){
  background:#ffffff !important;
  color:#101828 !important;
}
/* Headings + texts no form: força navy escuro pra contraste em fundo branco */
.min-h-screen.grid > div:has(form) h1,
.min-h-screen.grid > div:has(form) h2{
  color:#101828 !important;
  background:none !important; -webkit-text-fill-color:initial !important;
}
.min-h-screen.grid > div:has(form) p,
.min-h-screen.grid > div:has(form) .text-slate-300,
.min-h-screen.grid > div:has(form) .text-slate-400,
.min-h-screen.grid > div:has(form) .text-slate-500,
.min-h-screen.grid > div:has(form) .text-white,
.min-h-screen.grid > div:has(form) span,
.min-h-screen.grid > div:has(form) label{
  color:#4a5565 !important;
}
/* Form labels (uppercase tracked) — usar ink-700 mais escuro */
.min-h-screen.grid > div:has(form) label.block,
.min-h-screen.grid > div:has(form) [class*="uppercase"]{
  color:#364153 !important;
}
/* Logo no header do form — ajusta wordmark gradient pra ficar legível em branco */
.min-h-screen.grid > div:has(form) [class*="bg-clip-text"]{
  background:linear-gradient(135deg,#01377d,#2070d0) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}
/* Botão "Entrar" submit - garante navy bg + white text */
.min-h-screen.grid > div:has(form) button[type="submit"]{
  background:#01377d !important; color:#ffffff !important;
}
.min-h-screen.grid > div:has(form) button[type="submit"]:hover{
  background:#01295e !important;
}
/* Link "Voltar ao site" / "Esqueceu a senha?" / "Criar conta" — navy */
.min-h-screen.grid > div:has(form) a{
  color:#01377d !important;
}
.min-h-screen.grid > div:has(form) a:hover{
  color:#01295e !important;
}

/* Inputs — já são brancos pelo .input-dark override. Force ícones em ink escuro */
.relative > .input-dark{ padding-left:42px !important; padding-right:42px !important; }
.relative > span.absolute, .relative > svg.absolute{
  pointer-events:none;
}
.relative > span.absolute > svg, .relative > span.absolute, .input-dark + span > svg{
  color:#475571 !important;
  transition:color .15s !important;
}
.input-dark:focus + span > svg, .input-dark:focus ~ span > svg{
  color:#2070d0 !important;
}
.input-dark:hover + span > svg{ color:#01377d !important; }

/* Ícones de toggle senha (button.absolute dentro do .relative) */
.relative > button.absolute{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  padding:8px !important; cursor:pointer;
  color:#475571 !important;
}
.relative > button.absolute:hover{ color:#2070d0 !important; }

/* Botão social (Google/Microsoft com BREVE) — borda visível */
button[disabled][title="Em breve"], a[disabled]{
  border:1px solid #c2cad8 !important; background:#ffffff !important;
}

/* Toggle button (collapse) — visible on light sidebar */
#dx-sb-toggle{
  background:rgba(1,55,125,.06) !important;
  border:1px solid rgba(1,55,125,.10) !important;
  color:#475571 !important;
}
#dx-sb-toggle:hover{
  background:rgba(32,112,208,.12) !important;
  color:#01377d !important;
}
