*,:after,:before{--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:rgba(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:rgba(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: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{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,-apple-system,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,pre,samp{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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{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}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-top-2\.5{top:-.625rem}.bottom-2{bottom:.5rem}.left-0{left:0}.left-1\/2{left:50%}.right-4{right:1rem}.top-0{top:0}.top-4{top:1rem}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.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}.mt-8{margin-top:2rem}.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-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-clay-500{--tw-border-opacity:1;border-color:rgb(217 119 87/var(--tw-border-opacity,1))}.border-stone-100{--tw-border-opacity:1;border-color:rgb(245 245 244/var(--tw-border-opacity,1))}.border-stone-200{--tw-border-opacity:1;border-color:rgb(231 229 228/var(--tw-border-opacity,1))}.border-stone-200\/60{border-color:hsla(20,6%,90%,.6)}.border-stone-300{--tw-border-opacity:1;border-color:rgb(214 211 209/var(--tw-border-opacity,1))}.border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity,1))}.border-zinc-200{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity,1))}.border-zinc-300{--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity,1))}.bg-black\/40{background-color:rgba(0,0,0,.4)}.bg-clay-500{--tw-bg-opacity:1;background-color:rgb(217 119 87/var(--tw-bg-opacity,1))}.bg-sand-50{--tw-bg-opacity:1;background-color:rgb(250 247 242/var(--tw-bg-opacity,1))}.bg-sand-50\/80{background-color:hsla(38,44%,96%,.8)}.bg-stone-100{--tw-bg-opacity:1;background-color:rgb(245 245 244/var(--tw-bg-opacity,1))}.bg-stone-50{--tw-bg-opacity:1;background-color:rgb(250 250 249/var(--tw-bg-opacity,1))}.bg-stone-900{--tw-bg-opacity:1;background-color:rgb(28 25 23/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-violet-500{--tw-bg-opacity:1;background-color:rgb(124 92 255/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/80{background-color:hsla(0,0%,100%,.8)}.bg-zinc-100{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity,1))}.bg-zinc-200{--tw-bg-opacity:1;background-color:rgb(228 228 231/var(--tw-bg-opacity,1))}.bg-zinc-300{--tw-bg-opacity:1;background-color:rgb(212 212 216/var(--tw-bg-opacity,1))}.bg-zinc-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-zinc-900{--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity,1))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-clay-500{--tw-gradient-from:#d97757 var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,87,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-violet-500{--tw-gradient-to:#7c5cff var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.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-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-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-16{padding-bottom:4rem}.pt-2{padding-top:.5rem}.pt-20{padding-top:5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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-\[10px\]{font-size:10px}.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-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[1\.1\]{line-height:1.1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-clay-500{--tw-text-opacity:1;color:rgb(217 119 87/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-stone-200{--tw-text-opacity:1;color:rgb(231 229 228/var(--tw-text-opacity,1))}.text-stone-400{--tw-text-opacity:1;color:rgb(168 162 158/var(--tw-text-opacity,1))}.text-stone-500{--tw-text-opacity:1;color:rgb(120 113 108/var(--tw-text-opacity,1))}.text-stone-600{--tw-text-opacity:1;color:rgb(87 83 78/var(--tw-text-opacity,1))}.text-stone-900{--tw-text-opacity:1;color:rgb(28 25 23/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-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))}.text-zinc-700{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity,1))}.text-zinc-800{--tw-text-opacity:1;color:rgb(39 39 42/var(--tw-text-opacity,1))}.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-zinc-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(161 161 170/var(--tw-placeholder-opacity,1))}.placeholder-zinc-400::placeholder{--tw-placeholder-opacity:1;color:rgb(161 161 170/var(--tw-placeholder-opacity,1))}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.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-xl{--tw-backdrop-blur:blur(24px);-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,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}body{background:#faf7f2}.msg-user{background:#f4f4f5;border-radius:16px;padding:16px;margin-bottom:8px;max-width:80%;margin-left:auto;border:1px solid #e4e4e7}.msg-ai{background:transparent;padding:16px 0;margin-bottom:8px;max-width:100%}.composer-bg{background:#f4f4f5;border:1px solid #e4e4e7}.composer-bg:focus-within{border-color:#a1a1aa;box-shadow:0 0 0 1px #a1a1aa}.sidebar-item{padding:10px 12px;border-radius:8px;cursor:pointer;font-size:14px;color:#52525b;transition:background .1s}.sidebar-item:hover{background:#f4f4f5}.sidebar-item.active{background:#e4e4e7;font-weight:600;color:#18181b}.modal-overlay{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{box-shadow:0 25px 50px -12px rgba(0,0,0,.25);animation:fadeScale .15s ease-out}@keyframes fadeScale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}#log::-webkit-scrollbar{width:6px}#log::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:3px}.typing-dot{width:8px;height:8px;border-radius:50%;background:#a1a1aa;display:inline-block;animation:bounce 1.4s ease-in-out infinite;margin:0 2px}.typing-dot:first-child{animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}}.input-glow{transition:border-color .15s,box-shadow .15s}.input-glow:focus{border-color:#7c7c8a;box-shadow:0 0 0 1px #7c7c8a}.hover\:border-stone-300:hover{--tw-border-opacity:1;border-color:rgb(214 211 209/var(--tw-border-opacity,1))}.hover\:border-zinc-300:hover{--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity,1))}.hover\:bg-stone-100:hover{--tw-bg-opacity:1;background-color:rgb(245 245 244/var(--tw-bg-opacity,1))}.hover\:bg-stone-200:hover{--tw-bg-opacity:1;background-color:rgb(231 229 228/var(--tw-bg-opacity,1))}.hover\:bg-stone-800:hover{--tw-bg-opacity:1;background-color:rgb(41 37 36/var(--tw-bg-opacity,1))}.hover\:bg-zinc-100:hover{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity,1))}.hover\:bg-zinc-200:hover{--tw-bg-opacity:1;background-color:rgb(228 228 231/var(--tw-bg-opacity,1))}.hover\:bg-zinc-700:hover{--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity,1))}.hover\:bg-zinc-800:hover{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-stone-600:hover{--tw-text-opacity:1;color:rgb(87 83 78/var(--tw-text-opacity,1))}.hover\:text-stone-900:hover{--tw-text-opacity:1;color:rgb(28 25 23/var(--tw-text-opacity,1))}.hover\:text-zinc-600:hover{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity,1))}.hover\:text-zinc-700:hover{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity,1))}.hover\:text-zinc-800:hover{--tw-text-opacity:1;color:rgb(39 39 42/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-sm:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.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-stone-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(214 211 209/var(--tw-ring-opacity,1))}.focus\:ring-zinc-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(212 212 216/var(--tw-ring-opacity,1))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}@media (min-width:640px){.sm\:block{display:block}.sm\:flex{display:flex}.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-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1024px){.lg\:ml-64{margin-left:16rem}.lg\:ml-72{margin-left:18rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media (max-width:1023px){.max-lg\:opacity-60{opacity:.6}}
/* Unified navbar + markdown chat rendering (appended so it overrides utilities if needed). */
.nav-link{padding:6px 12px;font-size:.875rem;font-weight:500;color:#57534e;border-radius:8px;transition:background .15s,color .15s;text-decoration:none}
.nav-link:hover{background:#f5f5f4;color:#1c1917}
.nav-link.active{background:#f5f5f4;color:#1c1917;font-weight:600}
.msg-ai .md p{margin:.5rem 0;line-height:1.7}
.msg-ai .md h1,.msg-ai .md h2,.msg-ai .md h3{font-weight:700;margin:1rem 0 .5rem;line-height:1.3}
.msg-ai .md h1{font-size:1.5rem}
.msg-ai .md h2{font-size:1.25rem}
.msg-ai .md h3{font-size:1.1rem}
.msg-ai .md ul,.msg-ai .md ol{margin:.5rem 0;padding-left:1.5rem}
.msg-ai .md ul{list-style:disc}
.msg-ai .md ol{list-style:decimal}
.msg-ai .md li{margin:.25rem 0}
.msg-ai .md a{color:#d97757;text-decoration:underline}
.msg-ai .md blockquote{border-left:3px solid #e7e5e4;padding-left:.75rem;color:#57534e;margin:.5rem 0}
.msg-ai .md hr{border:0;border-top:1px solid #e7e5e4;margin:1rem 0}
.msg-ai .md table{border-collapse:collapse;margin:.5rem 0;font-size:.85rem}
.msg-ai .md th,.msg-ai .md td{border:1px solid #e7e5e4;padding:4px 10px;text-align:left}
.msg-ai .md th{background:#f5f5f4;font-weight:600}
.msg-ai .md code{background:#f5f5f4;padding:2px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}
.msg-ai .md pre{background:#1f1c19;color:#f3ede4;padding:12px;border-radius:8px;overflow-x:auto;margin:.5rem 0;font-size:.85rem;line-height:1.5}
.msg-ai .md pre code{background:transparent;padding:0;color:inherit;font-size:1em}
.msg-ai .md :first-child{margin-top:0}
.msg-ai .md :last-child{margin-bottom:0}

/* ═══ Dark-theme arbitrary color classes (used by the premium redesign — kept inline
 *     here because Tailwind's static scanner only picks up classes already present in
 *     the source files at build time, and we don't want to require a rebuild to ship). ═══ */
.bg-\[\#0a0a0b\]{background-color:#0a0a0b}
.bg-\[\#0a0a0b\]\/80{background-color:rgba(10,10,11,.8)}
.bg-\[\#0c0c0e\]{background-color:#0c0c0e}
.bg-\[\#161618\]{background-color:#161618}
.bg-\[\#1a1418\]{background-color:#1a1418}
.bg-\[\#181220\]{background-color:#181220}
.from-\[\#1a1418\]{--tw-gradient-from:#1a1418 var(--tw-gradient-from-position);--tw-gradient-to:rgba(26,20,24,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-\[\#181220\]{--tw-gradient-to:#181220 var(--tw-gradient-to-position)}
.from-stone-700{--tw-gradient-from:#44403c var(--tw-gradient-from-position);--tw-gradient-to:rgba(68,64,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-stone-900{--tw-gradient-to:#1c1917 var(--tw-gradient-to-position)}
.from-clay-500{--tw-gradient-from:#d97757 var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,87,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-clay-700{--tw-gradient-to:#9a4d33 var(--tw-gradient-to-position)}
.from-violet-500{--tw-gradient-from:#7c5cff var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,92,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-violet-700{--tw-gradient-to:#5b3fd6 var(--tw-gradient-to-position)}
.from-clay-500\/15{--tw-gradient-from:rgba(217,119,87,.15) var(--tw-gradient-from-position)}
.from-violet-500\/15{--tw-gradient-from:rgba(124,92,255,.15) var(--tw-gradient-from-position)}
.from-blue-500\/15{--tw-gradient-from:rgba(59,130,246,.15) var(--tw-gradient-from-position)}
.from-green-500\/15{--tw-gradient-from:rgba(34,197,94,.15) var(--tw-gradient-from-position)}
.from-amber-500\/15{--tw-gradient-from:rgba(245,158,11,.15) var(--tw-gradient-from-position)}
.from-pink-500\/15{--tw-gradient-from:rgba(236,72,153,.15) var(--tw-gradient-from-position)}
.border-white\/5{border-color:rgba(255,255,255,.05)}
.border-white\/10{border-color:rgba(255,255,255,.1)}
.border-white\/15{border-color:rgba(255,255,255,.15)}
.border-clay-500\/30{border-color:rgba(217,119,87,.3)}
.border-clay-500\/40{border-color:rgba(217,119,87,.4)}
.border-clay-500\/60{border-color:rgba(217,119,87,.6)}
.bg-white\/5{background-color:rgba(255,255,255,.05)}
.bg-white\/8{background-color:rgba(255,255,255,.08)}
.hover\:bg-white\/5:hover{background-color:rgba(255,255,255,.05)}
.text-clay-400{--tw-text-opacity:1;color:rgb(226 138 110 / var(--tw-text-opacity,1))}
.text-violet-400{--tw-text-opacity:1;color:rgb(167 139 250 / var(--tw-text-opacity,1))}
.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250 / var(--tw-text-opacity,1))}
.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128 / var(--tw-text-opacity,1))}
.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36 / var(--tw-text-opacity,1))}
.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182 / 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))}
.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity,1))}
.text-green-400\.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.2,1) infinite}
@keyframes pulse{50%{opacity:.5}}
.bg-clay-500\/15{background-color:rgba(217,119,87,.15)}
.bg-violet-500\/15{background-color:rgba(124,92,255,.15)}
.bg-blue-500\/15{background-color:rgba(59,130,246,.15)}
.bg-green-500\/15{background-color:rgba(34,197,94,.15)}
.bg-amber-500\/15{background-color:rgba(245,158,11,.15)}
.bg-pink-500\/15{background-color:rgba(236,72,153,.15)}
.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128 / var(--tw-bg-opacity,1))}

/* ═══ NLC UI — toasts, modals (shared via /ui.js) ═══ */
.nlc-toast-container{position:fixed;right:20px;bottom:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:calc(100vw - 40px)}
.nlc-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;min-width:280px;max-width:380px;padding:12px 14px;background:#fff;border:1px solid #e7e5e4;border-radius:14px;box-shadow:0 12px 32px -10px rgba(28,25,23,.18),0 2px 6px -2px rgba(28,25,23,.08);opacity:0;transform:translateY(12px) scale(.98);transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);font-size:14px;color:#292524;line-height:1.45}
.nlc-toast.nlc-toast-in{opacity:1;transform:translateY(0) scale(1)}
.nlc-toast.nlc-toast-out{opacity:0;transform:translateY(-8px) scale(.98)}
.nlc-toast-icon{width:20px;height:20px;flex-shrink:0;margin-top:1px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:3px}
.nlc-toast-icon svg{width:100%;height:100%}
.nlc-toast-success .nlc-toast-icon{background:#dcfce7;color:#15803d}
.nlc-toast-error .nlc-toast-icon{background:#fee2e2;color:#b91c1c}
.nlc-toast-warning .nlc-toast-icon{background:#fef3c7;color:#b45309}
.nlc-toast-info .nlc-toast-icon{background:#e0e7ff;color:#4338ca}
.nlc-toast-text{flex:1;min-width:0;word-break:break-word}
.nlc-toast-close{flex-shrink:0;width:18px;height:18px;color:#a8a29e;background:none;border:0;padding:0;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}
.nlc-toast-close:hover{color:#44403c;background:#f5f5f4}
.nlc-toast-close svg{width:14px;height:14px}

/* Modal */
.nlc-modal-overlay{position:fixed;inset:0;z-index:9998;background:rgba(28,25,23,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .2s ease-out}
.nlc-modal-overlay.nlc-modal-in{opacity:1}
.nlc-modal-overlay.nlc-modal-out{opacity:0}
.nlc-modal-card{position:relative;width:100%;max-width:420px;background:#fff;border-radius:20px;padding:28px 26px 22px;box-shadow:0 30px 60px -15px rgba(28,25,23,.32),0 8px 20px -8px rgba(28,25,23,.12);transform:translateY(8px) scale(.97);transition:transform .22s cubic-bezier(.16,1,.3,1);text-align:center}
.nlc-modal-overlay.nlc-modal-in .nlc-modal-card{transform:translateY(0) scale(1)}
.nlc-modal-overlay.nlc-modal-out .nlc-modal-card{transform:translateY(-4px) scale(.98)}
.nlc-modal-x{position:absolute;top:14px;right:14px;width:28px;height:28px;border:0;background:none;color:#a8a29e;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}
.nlc-modal-x:hover{color:#44403c;background:#f5f5f4}
.nlc-modal-x svg{width:18px;height:18px}
.nlc-modal-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.nlc-modal-icon svg{width:26px;height:26px}
.nlc-modal-icon-danger{background:#fee2e2;color:#b91c1c}
.nlc-modal-icon-success{background:#dcfce7;color:#15803d}
.nlc-modal-icon-info{background:#e0e7ff;color:#4338ca}
.nlc-modal-title{font-size:18px;font-weight:800;color:#1c1917;margin:0 0 10px;letter-spacing:-.01em}
.nlc-modal-body{margin-bottom:20px}
.nlc-modal-text{font-size:14px;color:#57534e;line-height:1.55;margin:0}
.nlc-modal-input{width:100%;margin-top:12px;padding:11px 14px;border:1px solid #e7e5e4;background:#fafaf9;border-radius:10px;font-size:14px;color:#1c1917;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}
.nlc-modal-input:focus{outline:0;border-color:#a8a29e;box-shadow:0 0 0 3px rgba(217,119,87,.18)}
.nlc-modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.nlc-btn{padding:10px 18px;font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s,transform .05s;font-family:inherit;min-width:96px}
.nlc-btn:active{transform:translateY(1px)}
.nlc-btn-primary{background:#1c1917;color:#fff;border-color:#1c1917}
.nlc-btn-primary:hover{background:#292524}
.nlc-btn-danger{background:#b91c1c;color:#fff;border-color:#b91c1c}
.nlc-btn-danger:hover{background:#991b1b}
.nlc-btn-ghost{background:transparent;color:#57534e;border-color:#e7e5e4}
.nlc-btn-ghost:hover{background:#f5f5f4;color:#1c1917}
body.nlc-modal-open{overflow:hidden}

/* Mobile: stack actions vertically, smaller toasts */
@media (max-width:480px){
  .nlc-toast-container{right:10px;bottom:10px;left:10px;max-width:none}
  .nlc-toast{min-width:0;max-width:none;width:100%}
  .nlc-modal-card{padding:24px 20px 18px}
  .nlc-modal-actions{flex-direction:column-reverse}
  .nlc-btn{width:100%}
}

/* ═══ Responsive + utility classes needed by the redesigned pages ═══ */
/* These are added inline because Tailwind's static scanner only picks up classes
 * already present at build time, and we redesigned without rebuilding. */

/* Max-widths */
.max-w-7xl{max-width:80rem}

/* Text sizes (responsive) */
.text-7xl{font-size:4.5rem;line-height:1}
@media (min-width:640px){
  .sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .sm\:text-6xl{font-size:3.75rem;line-height:1}
  .sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}
  .sm\:flex-row{flex-direction:row}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .sm\:inline{display:inline}
  .sm\:hidden{display:none}
  .sm\:py-24{padding-top:6rem;padding-bottom:6rem}
  .sm\:pt-24{padding-top:6rem}
  .sm\:pb-20{padding-bottom:5rem}
  .sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sm\:gap-6{gap:1.5rem}
  .sm\:py-20{padding-top:5rem;padding-bottom:5rem}
  .sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}
  .sm\:mb-8{margin-bottom:2rem}
  .sm\:mb-16{margin-bottom:4rem}
}
@media (min-width:768px){
  .md\:text-6xl{font-size:3.75rem;line-height:1}
  .md\:text-7xl{font-size:4.5rem;line-height:1}
  .md\:flex{display:flex}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lg\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}
  .lg\:grid-cols-\[200px_1fr\]{grid-template-columns:200px 1fr}
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
  .lg\:text-left{text-align:left}
}

/* Spacing utilities used in the redesign */
.pt-24{padding-top:6rem}
.pb-20{padding-bottom:5rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.mb-10{margin-bottom:2.5rem}
.mb-14{margin-bottom:3.5rem}
.mb-12{margin-bottom:3rem}
.mb-8{margin-bottom:2rem}
.mt-16{margin-top:4rem}
.mt-12{margin-top:3rem}
.gap-4{gap:1rem}
.gap-8{gap:2rem}

/* Text colors used in the redesign */
.text-clay-400{color:rgb(226 138 110)}
.text-zinc-300{color:rgb(212 212 216)}

/* Font weight 900 */
.font-black{font-weight:900}

/* Border radius sizes */
.rounded-3xl{border-radius:1.5rem}

/* Animation: pulse */
@keyframes pulse{50%{opacity:.5}}
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.2,1) infinite}

/* Grid template for 2 cols (mobile default for some sections) */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}

/* Line height utility */
.leading-\[1\.05\]{line-height:1.05}

/* Hover opacity */
.hover\:opacity-90:hover{opacity:.9}

/* Text size for tracking */
.tracking-widest{letter-spacing:.1em}

/* ═══ Missing utility classes (buttons, layout, spacing) ═══ */
.border-transparent{border-color:transparent}
.border-y{border-top-width:1px;border-bottom-width:1px}
.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity,1))}
.h-2{height:.5rem}
.h-1\.5{height:.375rem}
.h-7{height:1.75rem}
.h-3\.5{height:.875rem}
.h-fit{height:fit-content}
.h-20{height:5rem}
.h-48{height:12rem}
.items-end{align-items:flex-end}
.items-start{align-items:flex-start}
.break-all{word-break:break-all}
.group{position:relative}
.group-hover\:opacity-100{opacity:0;transition:opacity .15s}
.group:hover .group-hover\:opacity-100{opacity:1}
.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity,1))}
.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity,1))}
.hover\:bg-zinc-50:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250 / var(--tw-bg-opacity,1))}
.hover\:text-stone-800:hover{--tw-text-opacity:1;color:rgb(41 37 36 / var(--tw-text-opacity,1))}
.hover\:text-zinc-900:hover{--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity,1))}
.left-6{left:1.5rem}
.-top-3{top:-.75rem}
.-top-2\.5{top:-.625rem}
.hover\:bg-zinc-200\/70:hover{background-color:rgba(228,228,231,.7)}
.hover\:text-zinc-800:hover{--tw-text-opacity:1;color:rgb(39 39 42 / var(--tw-text-opacity,1))}
.text-stone-800{--tw-text-opacity:1;color:rgb(41 37 36 / var(--tw-text-opacity,1))}
.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity,1))}
.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128 / var(--tw-text-opacity,1))}
.text-stone-700{--tw-text-opacity:1;color:rgb(68 64 60 / var(--tw-text-opacity,1))}
.bg-stone-50{--tw-bg-opacity:1;background-color:rgb(250 250 249 / var(--tw-bg-opacity,1))}
.hover\:border-zinc-300:hover{--tw-border-opacity:1;border-color:rgb(212 212 216 / var(--tw-border-opacity,1))}
.hover\:shadow-sm:hover{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
.hover\:border-stone-300:hover{--tw-border-opacity:1;border-color:rgb(214 211 209 / var(--tw-border-opacity,1))}
.border-zinc-300{--tw-border-opacity:1;border-color:rgb(212 212 216 / var(--tw-border-opacity,1))}
.bg-zinc-50{--tw-bg-opacity:1;background-color:rgb(250 250 250 / var(--tw-bg-opacity,1))}
.text-zinc-700{--tw-text-opacity:1;color:rgb(63 63 70 / var(--tw-text-opacity,1))}
.text-zinc-800{--tw-text-opacity:1;color:rgb(39 39 42 / var(--tw-text-opacity,1))}
.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity,1))}
.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity,1))}
.border-zinc-200{--tw-border-opacity:1;border-color:rgb(228 228 231 / var(--tw-border-opacity,1))}
.hover\:bg-zinc-100:hover{--tw-bg-opacity:1;background-color:rgb(244 244 245 / var(--tw-bg-opacity,1))}
.hover\:bg-zinc-200:hover{--tw-bg-opacity:1;background-color:rgb(228 228 231 / var(--tw-bg-opacity,1))}
.hover\:bg-stone-100:hover{--tw-bg-opacity:1;background-color:rgb(245 245 244 / var(--tw-bg-opacity,1))}
.hover\:bg-stone-200:hover{--tw-bg-opacity:1;background-color:rgb(231 229 228 / var(--tw-bg-opacity,1))}
.hover\:text-zinc-600:hover{--tw-text-opacity:1;color:rgb(82 82 91 / var(--tw-text-opacity,1))}
.hover\:text-zinc-700:hover{--tw-text-opacity:1;color:rgb(63 63 70 / var(--tw-text-opacity,1))}
.focus\:ring-zinc-300:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity,1))}
.border-b-2{border-bottom-width:2px}
.rounded{border-radius:.25rem}
.text-center{text-align:center}
.text-left{text-align:left}
.w-5{width:1.25rem}
.h-5{height:1.25rem}
.w-4{width:1rem}
.h-4{height:1rem}
.w-full{width:100%}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.justify-end{justify-content:flex-end}
.gap-1{gap:.25rem}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}
.overflow-x-auto{overflow-x:auto}
.overflow-y-auto{overflow-y:auto}
.overflow-hidden{overflow:hidden}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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-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-bold{font-weight:700}
.font-extrabold{font-weight:800}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.uppercase{text-transform:uppercase}
.tracking-wider{letter-spacing:.05em}
.tracking-tight{letter-spacing:-.025em}
.leading-relaxed{line-height:1.625}
.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity,1))}
.text-stone-400{--tw-text-opacity:1;color:rgb(168 162 158 / var(--tw-text-opacity,1))}
.text-stone-500{--tw-text-opacity:1;color:rgb(120 113 108 / var(--tw-text-opacity,1))}
.text-stone-600{--tw-text-opacity:1;color:rgb(87 83 78 / var(--tw-text-opacity,1))}
.text-stone-900{--tw-text-opacity:1;color:rgb(28 25 23 / var(--tw-text-opacity,1))}
.text-clay-500{--tw-text-opacity:1;color:rgb(217 119 87 / var(--tw-text-opacity,1))}
.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity,1))}
.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74 / 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))}
.bg-stone-100{--tw-bg-opacity:1;background-color:rgb(245 245 244 / var(--tw-bg-opacity,1))}
.bg-stone-900{--tw-bg-opacity:1;background-color:rgb(28 25 23 / var(--tw-bg-opacity,1))}
.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity,1))}
.bg-zinc-100{--tw-bg-opacity:1;background-color:rgb(244 244 245 / var(--tw-bg-opacity,1))}
.bg-zinc-200{--tw-bg-opacity:1;background-color:rgb(228 228 231 / var(--tw-bg-opacity,1))}
.bg-zinc-300{--tw-bg-opacity:1;background-color:rgb(212 212 216 / var(--tw-bg-opacity,1))}
.bg-zinc-900{--tw-bg-opacity:1;background-color:rgb(24 24 27 / var(--tw-bg-opacity,1))}
.hover\:bg-stone-800:hover{--tw-bg-opacity:1;background-color:rgb(41 37 36 / var(--tw-bg-opacity,1))}
.hover\:bg-zinc-700:hover{--tw-bg-opacity:1;background-color:rgb(63 63 70 / var(--tw-bg-opacity,1))}
.hover\:bg-zinc-800:hover{--tw-bg-opacity:1;background-color:rgb(39 39 42 / var(--tw-bg-opacity,1))}
.border-stone-200{--tw-border-opacity:1;border-color:rgb(231 229 228 / var(--tw-border-opacity,1))}
.border-stone-300{--tw-border-opacity:1;border-color:rgb(214 211 209 / var(--tw-border-opacity,1))}
.border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245 / var(--tw-border-opacity,1))}
.border-b{border-bottom-width:1px}
.border-t{border-top-width:1px}
.border-r{border-right-width:1px}
.border{border-width:1px}
.border-2{border-width:2px}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.p-1{padding:.25rem}
.p-1\.5{padding:.375rem}
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.p-12{padding:3rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.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-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.mb-1{margin-bottom:.25rem}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.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}
.mt-8{margin-top:2rem}
.mx-auto{margin-left:auto;margin-right:auto}
.w-6{width:1.5rem}
.h-6{height:1.5rem}
.w-8{width:2rem}
.h-8{height:2rem}
.w-10{width:2.5rem}
.h-10{height:2.5rem}
.w-12{width:3rem}
.h-12{height:3rem}
.w-80{width:20rem}
.min-w-0{min-width:0}
.flex-1{flex:1 1 0%}
.shrink-0{flex-shrink:0}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-6xl{max-width:72rem}
.max-w-7xl{max-width:80rem}
.max-w-lg{max-width:32rem}
.max-w-md{max-width:28rem}
.max-w-sm{max-width:24rem}
.hidden{display:none}
.block{display:block}
.inline-block{display:inline-block}
.inline{display:inline}
.grid{display:grid}
.table{display:table}
.text-base{font-size:1rem;line-height:1.5rem}
.opacity-20{opacity:.2}
.opacity-30{opacity:.3}
.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);box-shadow:var(--tw-shadow)}
.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--tw-shadow)}
.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--tw-shadow)}
.transition{transition:all .15s}
.cursor-pointer{cursor:pointer}
.resize-none{resize:none}
.scroll-smooth{scroll-behavior:smooth}
.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.list-inside{list-style-position:inside}
.list-disc{list-style-type:disc}
.list-decimal{list-style-type:decimal}

/* ═══ Missing classes for model cards + nav (fixes overlapping/missing buttons) ═══ */
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.from-stone-700{--tw-gradient-from:#44403c var(--tw-gradient-from-position);--tw-gradient-to:rgba(68,64,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-stone-900{--tw-gradient-to:#1c1917 var(--tw-gradient-to-position)}
.from-clay-500{--tw-gradient-from:#d97757 var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,87,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-clay-700{--tw-gradient-to:#9a4d33 var(--tw-gradient-to-position)}
.from-violet-500{--tw-gradient-from:#7c5cff var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,92,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-violet-700{--tw-gradient-to:#5b3fd6 var(--tw-gradient-to-position)}
.from-\[\#1a1418\]{--tw-gradient-from:#1a1418 var(--tw-gradient-from-position);--tw-gradient-to:rgba(26,20,24,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-\[\#181220\]{--tw-gradient-to:#181220 var(--tw-gradient-to-position)}
.border-clay-500\/40{border-color:rgba(217,119,87,.4)}
.border-clay-500\/30{border-color:rgba(217,119,87,.3)}
.border-clay-500\/60{border-color:rgba(217,119,87,.6)}
.\-top-3{top:-.75rem}
.text-\[10px\]{font-size:10px}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.left-6{left:1.5rem}
.w-12{width:3rem}
.h-12{height:3rem}
.rounded-xl{border-radius:.75rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.w-7{width:1.75rem}
.h-7{height:1.75rem}
.text-base{font-size:1rem;line-height:1.5rem}
.hover\:opacity-90:hover{opacity:.9}
.glow-btn{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 8px 24px -8px rgba(217,119,87,.45)}
.card-hover{transition:transform .2s,box-shadow .2s,border-color .2s}
.card-hover:hover{transform:translateY(-2px);border-color:#3f3f46;box-shadow:0 12px 32px -8px rgba(0,0,0,.4)}
.gradient-text{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.gradient-bg{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%)}
.hero-glow{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(217,119,87,.18),transparent 60%),radial-gradient(ellipse 60% 50% at 80% 30%,rgba(124,92,255,.14),transparent 60%)}
.grid-bg{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.fade-in{animation:fadeIn .8s ease-out}
@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.slide-up{animation:slideUp .6s ease-out}
@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.marquee{display:flex;gap:48px;animation:scroll 30s linear infinite;white-space:nowrap}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee,.fade-in,.slide-up{animation:none}}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.border-white\/5{border-color:rgba(255,255,255,.05)}
.border-white\/10{border-color:rgba(255,255,255,.1)}
.border-white\/15{border-color:rgba(255,255,255,.15)}
.bg-white\/5{background-color:rgba(255,255,255,.05)}
.hover\:bg-white\/5:hover{background-color:rgba(255,255,255,.05)}
.bg-\[\#0a0a0b\]\/80{background-color:rgba(10,10,11,.8)}
.bg-\[\#0c0c0e\]{background-color:#0c0c0e}
.bg-\[\#161618\]{background-color:#161618}
.bg-\[\#1a1418\]{background-color:#1a1418}
.bg-\[\#181220\]{background-color:#181220}
.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))}
.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity,1))}
.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128 / var(--tw-bg-opacity,1))}
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.2,1) infinite}
@keyframes pulse{50%{opacity:.5}}
.text-clay-400{color:rgb(226 138 110)}
.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128 / var(--tw-text-opacity,1))}
.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250 / var(--tw-text-opacity,1))}
.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36 / var(--tw-text-opacity,1))}
.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182 / var(--tw-text-opacity,1))}
.text-violet-400{--tw-text-opacity:1;color:rgb(167 139 250 / var(--tw-text-opacity,1))}
.bg-clay-500\/15{background-color:rgba(217,119,87,.15)}
.bg-violet-500\/15{background-color:rgba(124,92,255,.15)}
.bg-blue-500\/15{background-color:rgba(59,130,246,.15)}
.bg-green-500\/15{background-color:rgba(34,197,94,.15)}
.bg-amber-500\/15{background-color:rgba(245,158,11,.15)}
.bg-pink-500\/15{background-color:rgba(236,72,153,.15)}
.pt-24{padding-top:6rem}
.pb-20{padding-bottom:5rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.mb-14{margin-bottom:3.5rem}
.mb-12{margin-bottom:3rem}
.mb-10{margin-bottom:2.5rem}
.mt-16{margin-top:4rem}
.mt-12{margin-top:3rem}
.mt-10{margin-top:2.5rem}
.gap-8{gap:2rem}
.max-w-7xl{max-width:80rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-7xl{font-size:4.5rem;line-height:1}
.rounded-3xl{border-radius:1.5rem}
.tracking-widest{letter-spacing:.1em}
.font-black{font-weight:900}
.leading-\[1\.05\]{line-height:1.05}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.group{position:relative}
.group-hover\:opacity-100{opacity:0;transition:opacity .15s}
.group:hover .group-hover\:opacity-100{opacity:1}
.break-all{word-break:break-all}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.h-fit{height:fit-content}
.h-2{height:.5rem}
.h-1\.5{height:.375rem}
.h-3\.5{height:.875rem}
.h-20{height:5rem}
.h-48{height:12rem}
.border-y{border-top-width:1px;border-bottom-width:1px}
.border-transparent{border-color:transparent}
.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity,1))}
.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity,1))}
.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity,1))}
.hover\:bg-zinc-50:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250 / var(--tw-bg-opacity,1))}
.hover\:text-stone-800:hover{--tw-text-opacity:1;color:rgb(41 37 36 / var(--tw-text-opacity,1))}
.hover\:text-zinc-900:hover{--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity,1))}
.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity,1))}
.text-stone-700{--tw-text-opacity:1;color:rgb(68 64 60 / var(--tw-text-opacity,1))}
.text-stone-800{--tw-text-opacity:1;color:rgb(41 37 36 / var(--tw-text-opacity,1))}
@media (min-width:640px){
  .sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .sm\:text-6xl{font-size:3.75rem;line-height:1}
  .sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:flex-row{flex-direction:row}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .sm\:inline{display:inline}
  .sm\:hidden{display:none}
  .sm\:py-24{padding-top:6rem;padding-bottom:6rem}
  .sm\:pt-24{padding-top:6rem}
  .sm\:pb-20{padding-bottom:5rem}
  .sm\:gap-6{gap:1.5rem}
  .sm\:mt-16{margin-top:4rem}
  .sm\:text-xl{font-size:1.25rem;line-height:1.75rem}
  .sm\:p-12{padding:3rem}

/* ═══ DARK theme override — applied to all non-index pages via <body class="nlc-dark"> ═══
 * This block overrides the light-theme classes (bg-sand-50, text-stone-900, etc.) with
 * dark equivalents so every page matches the index.html dark aesthetic without rewriting
 * each page's HTML. Pages just add `nlc-dark` to their <body> tag. */
.nlc-dark{background:#0a0a0b !important;color:#f4f4f5 !important;-webkit-font-smoothing:antialiased}
.nlc-dark *{color:inherit}
.nlc-dark nav{background:rgba(10,10,11,.8) !important;border-bottom-color:rgba(255,255,255,.05) !important;backdrop-filter:blur(24px)}
.nlc-dark .nav-link{color:#a1a1aa !important}
.nlc-dark .nav-link:hover{background:rgba(255,255,255,.05) !important;color:#f4f4f5 !important}
.nlc-dark .nav-link.active{background:rgba(255,255,255,.08) !important;color:#f4f4f5 !important}
.nlc-dark .bg-white{background:#161618 !important}
.nlc-dark .bg-sand-50{background:#0a0a0b !important}
.nlc-dark .bg-stone-50{background:#161618 !important}
.nlc-dark .bg-stone-100{background:#1e1e20 !important}
.nlc-dark .border-stone-200{border-color:rgba(255,255,255,.08) !important}
.nlc-dark .border-stone-100{border-color:rgba(255,255,255,.06) !important}
.nlc-dark .border-stone-300{border-color:rgba(255,255,255,.12) !important}
.nlc-dark .text-stone-900{color:#f4f4f5 !important}
.nlc-dark .text-stone-800{color:#e4e4e7 !important}
.nlc-dark .text-stone-700{color:#d4d4d8 !important}
.nlc-dark .text-stone-600{color:#a1a1aa !important}
.nlc-dark .text-stone-500{color:#a1a1aa !important}
.nlc-dark .text-stone-400{color:#71717a !important}
.nlc-dark .hover\:text-stone-600:hover{color:#d4d4d8 !important}
.nlc-dark .hover\:text-stone-900:hover{color:#f4f4f5 !important}
.nlc-dark .hover\:bg-stone-100:hover{background:rgba(255,255,255,.06) !important}
.nlc-dark .hover\:bg-stone-200:hover{background:rgba(255,255,255,.08) !important}
.nlc-dark .hover\:border-stone-300:hover{border-color:rgba(255,255,255,.15) !important}
.nlc-dark footer{border-top-color:rgba(255,255,255,.05) !important}
.nlc-dark footer .text-stone-400{color:#52525b !important}
.nlc-dark footer a:hover{color:#a1a1aa !important}
.nlc-dark pre{background:#161618 !important;color:#f3ede4 !important;border:1px solid rgba(255,255,255,.06)}
.nlc-dark code{background:rgba(255,255,255,.08) !important;color:#e4e4e7 !important}
.nlc-dark .spec-table th{background:#161618 !important;color:#a1a1aa !important}
.nlc-dark .spec-table td{border-bottom-color:rgba(255,255,255,.06) !important}
.nlc-dark .tab-bar{border-bottom-color:rgba(255,255,255,.08) !important}
.nlc-dark .tab-bar button{color:#71717a !important}
.nlc-dark .tab-bar button:hover{color:#f4f4f5 !important}
.nlc-dark .tab-bar button.active{color:#d97757 !important;border-bottom-color:#d97757 !important}
.nlc-dark .tabbar{border-bottom-color:rgba(255,255,255,.08) !important}
.nlc-dark .tabbar button{color:#71717a !important}
.nlc-dark .tabbar button:hover{color:#f4f4f5 !important}
.nlc-dark .tabbar button.active{color:#d97757 !important;border-bottom-color:#d97757 !important}
.nlc-dark .mtbl th{background:#161618 !important;color:#a1a1aa !important}
.nlc-dark .mtbl td{border-bottom-color:rgba(255,255,255,.06) !important}
.nlc-dark .mtbl tr:hover td{background:rgba(255,255,255,.03) !important}
.nlc-dark .pos{color:#4ade80 !important}
.nlc-dark .neg{color:#f87171 !important}
.nlc-dark details{background:#161618 !important;border-color:rgba(255,255,255,.08) !important}
.nlc-dark details summary{color:#f4f4f5 !important}
.nlc-dark details p{color:#a1a1aa !important}
.nlc-dark input{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important}
.nlc-dark input:focus{border-color:rgba(255,255,255,.2) !important}
.nlc-dark textarea{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important}
.nlc-dark select{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important}
.nlc-dark button{color:inherit}
.nlc-dark .bg-stone-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-stone-800:hover{background:#e4e4e7 !important}
.nlc-dark .text-zinc-400{color:#a1a1aa !important}
.nlc-dark .text-zinc-500{color:#71717a !important}
.nlc-dark .text-zinc-600{color:#71717a !important}
.nlc-dark .text-zinc-700{color:#a1a1aa !important}
.nlc-dark .bg-zinc-50{background:#161618 !important}
.nlc-dark .bg-zinc-100{background:#1e1e20 !important}
.nlc-dark .bg-zinc-200{background:#27272a !important}
.nlc-dark .bg-zinc-300{background:#3f3f46 !important}
.nlc-dark .bg-zinc-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .border-zinc-200{border-color:rgba(255,255,255,.08) !important}
.nlc-dark .border-zinc-100{border-color:rgba(255,255,255,.06) !important}
.nlc-dark .border-zinc-300{border-color:rgba(255,255,255,.12) !important}
.nlc-dark .hover\:bg-zinc-100:hover{background:rgba(255,255,255,.06) !important}
.nlc-dark .hover\:bg-zinc-200:hover{background:rgba(255,255,255,.08) !important}
.nlc-dark .hover\:text-zinc-600:hover{color:#d4d4d8 !important}
.nlc-dark .hover\:text-zinc-700:hover{color:#d4d4d8 !important}
.nlc-dark .hover\:text-zinc-800:hover{color:#f4f4f5 !important}
.nlc-dark .hover\:text-zinc-900:hover{color:#f4f4f5 !important}
.nlc-dark .hover\:text-red-500:hover{color:#f87171 !important}
.nlc-dark .hover\:bg-zinc-700:hover{background:#e4e4e7 !important}
.nlc-dark .hover\:bg-zinc-800:hover{background:#f4f4f5 !important}
.nlc-dark .text-clay-500{color:#d97757 !important}
.nlc-dark .text-red-500{color:#f87171 !important}
.nlc-dark .text-green-600{color:#4ade80 !important}
.nlc-dark .text-white{color:#0a0a0b !important}
.nlc-dark .bg-clay-500{background:#d97757 !important}
.nlc-dark .border-clay-500{border-color:#d97757 !important}
.nlc-dark .border-2{border-color:#d97757 !important}
.nlc-dark .bg-black\/40{background:rgba(0,0,0,.6) !important}
.nlc-dark .msg-user{background:#1e1e20 !important;border-color:rgba(255,255,255,.08) !important;color:#f4f4f5 !important}
.nlc-dark .msg-ai{color:#f4f4f5 !important}
.nlc-dark .msg-ai .md p{color:#d4d4d8 !important}
.nlc-dark .msg-ai .md a{color:#d97757 !important}
.nlc-dark .msg-ai .md code{background:rgba(255,255,255,.08) !important}
.nlc-dark .msg-ai .md pre{background:#161618 !important}
.nlc-dark .msg-ai .md th{background:#1e1e20 !important}
.nlc-dark .msg-ai .md td{border-color:rgba(255,255,255,.08) !important}
.nlc-dark .msg-ai .md blockquote{border-left-color:#3f3f46 !important;color:#a1a1aa !important}
.nlc-dark .composer-wrap{background:#161618 !important;border-color:rgba(255,255,255,.1) !important}
.nlc-dark .composer-wrap:focus-within{border-color:rgba(255,255,255,.2) !important;box-shadow:0 0 0 1px rgba(255,255,255,.15) !important}
.nlc-dark .sidebar-item{color:#a1a1aa !important}
.nlc-dark .sidebar-item:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .sidebar-item.active{background:rgba(255,255,255,.08) !important;color:#f4f4f5 !important}
.nlc-dark .modal-overlay{background:rgba(0,0,0,.6) !important}
.nlc-dark .modal-card{background:#161618 !important;border:1px solid rgba(255,255,255,.08) !important}
.nlc-dark .input-glow{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important}
.nlc-dark .input-glow:focus{border-color:rgba(255,255,255,.2) !important;box-shadow:0 0 0 1px rgba(255,255,255,.15) !important}
.nlc-dark .model-item{color:#a1a1aa !important}
.nlc-dark .model-item:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .model-item.active{background:rgba(255,255,255,.08) !important}
.nlc-dark .model-item-name{color:#f4f4f5 !important}
.nlc-dark .model-item-desc{color:#71717a !important}
.nlc-dark .model-item-tag{background:rgba(255,255,255,.06) !important;color:#a1a1aa !important;border-color:rgba(255,255,255,.08) !important}
.nlc-dark #log{background:#0a0a0b !important}
.nlc-dark .text-stone-200{color:#52525b !important}
.nlc-dark .text-stone-300{color:#52525b !important}
.nlc-dark .text-blue-400{color:#60a5fa !important}
.nlc-dark .text-green-400{color:#4ade80 !important}
.nlc-dark .text-amber-400{color:#fbbf24 !important}
.nlc-dark .text-pink-400{color:#f472b6 !important}
.nlc-dark .text-violet-400{color:#a78bfa !important}
.nlc-dark .bg-green-100{background:rgba(74,222,128,.12) !important}
.nlc-dark .bg-green-500\/15{background:rgba(74,222,128,.12) !important}
.nlc-dark .bg-clay-500\/15{background:rgba(217,119,87,.12) !important}
.nlc-dark .bg-violet-500\/15{background:rgba(124,92,255,.12) !important}
.nlc-dark .bg-blue-500\/15{background:rgba(96,165,250,.12) !important}
.nlc-dark .bg-amber-500\/15{background:rgba(251,191,36,.12) !important}
.nlc-dark .bg-pink-500\/15{background:rgba(244,114,182,.12) !important}
.nlc-dark .bg-green-400{background:#4ade80 !important}
.nlc-dark .bg-red-500{color:#f87171 !important}
.nlc-dark .text-red-600{color:#f87171 !important}
.nlc-dark .border-red-200{border-color:rgba(248,113,113,.2) !important}
.nlc-dark .hover\:bg-red-50:hover{background:rgba(248,113,113,.08) !important}
.nlc-dark .bg-stone-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-stone-800:hover{background:#e4e4e7 !important;color:#0a0a0b !important}
.nlc-dark .text-white{color:#0a0a0b !important}
.nlc-dark .bg-zinc-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-zinc-800:hover{background:#e4e4e7 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-zinc-700:hover{background:#d4d4d8 !important;color:#0a0a0b !important}
.nlc-dark .bg-zinc-900 .text-white{color:#0a0a0b !important}
.nlc-dark .bg-stone-900 .text-white{color:#0a0a0b !important}
.nlc-dark .placeholder-zinc-400::placeholder{color:#52525b !important}
.nlc-dark .code-block .lang{color:#52525b !important}
.nlc-dark .text-clay-400{color:#e28a6e !important}
.nlc-dark .mono{color:#a1a1aa !important}
.nlc-dark .text-zinc-300{color:#d4d4d8 !important}
.nlc-dark .text-zinc-800{color:#e4e4e7 !important}
.nlc-dark .text-zinc-900{color:#f4f4f5 !important}
.nlc-dark .border-white\/5{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}
.nlc-dark .border-white\/15{border-color:rgba(255,255,255,.15) !important}
.nlc-dark .bg-white\/5{background:rgba(255,255,255,.05) !important}
.nlc-dark .hover\:bg-white\/5:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .text-zinc-400{color:#a1a1aa !important}
.nlc-dark .hover\:text-white:hover{color:#f4f4f5 !important}
.nlc-dark .font-bold{color:inherit}
.nlc-dark .font-semibold{color:inherit}
.nlc-dark h1,.nlc-dark h2,.nlc-dark h3{color:#f4f4f5 !important}
.nlc-dark h3{color:#f4f4f5 !important}
.nlc-dark p{color:inherit}
.nlc-dark .text-stone-400{color:#71717a !important}
.nlc-dark .text-stone-500{color:#71717a !important}
.nlc-dark .text-stone-600{color:#a1a1aa !important}
.nlc-dark .text-stone-700{color:#d4d4d8 !important}
.nlc-dark .text-stone-800{color:#e4e4e7 !important}
.nlc-dark .text-stone-900{color:#f4f4f5 !important}
.nlc-dark .border-stone-200\/60{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .bg-sand-50\/80{background:rgba(10,10,11,.8) !important}
.nlc-dark .bg-sand-50{background:#0a0a0b !important}
.nlc-dark .bg-white\/80{background:rgba(22,22,24,.8) !important}
.nlc-dark .opacity-15{opacity:.2 !important}
.nlc-dark .opacity-20{opacity:.25 !important}
.nlc-dark .opacity-30{opacity:.35 !important}
.nlc-dark .text-transparent{color:transparent}
.nlc-dark .gradient-text{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.nlc-dark .gradient-bg{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%) !important;color:#fff !important}
.nlc-dark .glow-btn{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 8px 24px -8px rgba(217,119,87,.45) !important}
.nlc-dark .card-hover{transition:transform .2s,box-shadow .2s,border-color .2s}
.nlc-dark .card-hover:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.15) !important;box-shadow:0 12px 32px -8px rgba(0,0,0,.4)}
.nlc-dark .hero-glow{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(217,119,87,.18),transparent 60%),radial-gradient(ellipse 60% 50% at 80% 30%,rgba(124,92,255,.14),transparent 60%)}
.nlc-dark .grid-bg{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.nlc-dark .fade-in{animation:fadeIn .8s ease-out}
.nlc-dark .slide-up{animation:slideUp .6s ease-out}
.nlc-dark .mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.nlc-dark .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.nlc-dark .from-\[\#1a1418\]{--tw-gradient-from:#1a1418 var(--tw-gradient-from-position);--tw-gradient-to:rgba(26,20,24,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-\[\#181220\]{--tw-gradient-to:#181220 var(--tw-gradient-to-position)}
.nlc-dark .from-stone-700{--tw-gradient-from:#44403c var(--tw-gradient-from-position);--tw-gradient-to:rgba(68,64,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-stone-900{--tw-gradient-to:#1c1917 var(--tw-gradient-to-position)}
.nlc-dark .from-clay-500{--tw-gradient-from:#d97757 var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,87,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-clay-700{--tw-gradient-to:#9a4d33 var(--tw-gradient-to-position)}
.nlc-dark .from-violet-500{--tw-gradient-from:#7c5cff var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,92,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-violet-700{--tw-gradient-to:#5b3fd6 var(--tw-gradient-to-position)}
.nlc-dark .border-clay-500\/40{border-color:rgba(217,119,87,.4) !important}
.nlc-dark .border-clay-500\/30{border-color:rgba(217,119,87,.3) !important}
.nlc-dark .border-clay-500\/60{border-color:rgba(217,119,87,.6) !important}
.nlc-dark .bg-\[\#161618\]{background:#161618 !important}
.nlc-dark .bg-\[\#0c0c0e\]{background:#0c0c0e !important}
.nlc-dark .bg-\[\#1a1418\]{background:#1a1418 !important}
.nlc-dark .bg-\[\#181220\]{background:#181220 !important}
.nlc-dark .text-\[10px\]{font-size:10px}
.nlc-dark .py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.nlc-dark .\-top-3{top:-.75rem}
.nlc-dark .left-6{left:1.5rem}
.nlc-dark .z-10{z-index:10}
.nlc-dark .w-12{width:3rem}
.nlc-dark .h-12{height:3rem}
.nlc-dark .rounded-xl{border-radius:.75rem}
.nlc-dark .rounded-3xl{border-radius:1.5rem}
.nlc-dark .p-12{padding:3rem}
.nlc-dark .max-w-7xl{max-width:80rem}
.nlc-dark .text-7xl{font-size:4.5rem;line-height:1}
.nlc-dark .font-black{font-weight:900}
.nlc-dark .leading-\[1\.05\]{line-height:1.05}
.nlc-dark .tracking-widest{letter-spacing:.1em}
.nlc-dark .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.2,1) infinite}
.nlc-dark .marquee{display:flex;gap:48px;animation:scroll 30s linear infinite;white-space:nowrap}
.nlc-dark .hover\:opacity-90:hover{opacity:.9}
.nlc-dark .bg-\[\#0a0a0b\]\/80{background:rgba(10,10,11,.8) !important}
.nlc-dark .text-zinc-600{color:#71717a !important}
.nlc-dark .text-zinc-400{color:#a1a1aa !important}
.nlc-dark .text-zinc-500{color:#71717a !important}
.nlc-dark .text-zinc-300{color:#d4d4d8 !important}
.nlc-dark .text-green-400{color:#4ade80 !important}
.nlc-dark .bg-green-400{background:#4ade80 !important}
.nlc-dark .border-white\/5{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}
.nlc-dark .border-y{border-top-color:rgba(255,255,255,.05) !important;border-bottom-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-b-2{border-bottom-width:2px}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}
.nlc-dark .text-clay-400{color:#e28a6e !important}
.nlc-dark .hover\:text-stone-600:hover{color:#d4d4d8 !important}
.nlc-dark .text-stone-700{color:#d4d4d8 !important}
.nlc-dark .text-stone-800{color:#e4e4e7 !important}
.nlc-dark .text-stone-900{color:#f4f4f5 !important}
.nlc-dark .text-stone-600{color:#a1a1aa !important}
.nlc-dark .text-stone-500{color:#71717a !important}
.nlc-dark .text-stone-400{color:#71717a !important}
.nlc-dark .bg-stone-50{background:#161618 !important}
.nlc-dark .bg-stone-100{background:#1e1e20 !important}
.nlc-dark .bg-white{background:#161618 !important}
.nlc-dark .border-stone-200{border-color:rgba(255,255,255,.08) !important}
.nlc-dark .border-stone-100{border-color:rgba(255,255,255,.06) !important}
.nlc-dark .border-stone-300{border-color:rgba(255,255,255,.12) !important}
.nlc-dark .hover\:bg-stone-100:hover{background:rgba(255,255,255,.06) !important}
.nlc-dark .hover\:bg-stone-200:hover{background:rgba(255,255,255,.08) !important}
.nlc-dark .hover\:border-stone-300:hover{border-color:rgba(255,255,255,.15) !important}
.nlc-dark .hover\:text-stone-900:hover{color:#f4f4f5 !important}
.nlc-dark .text-clay-500{color:#d97757 !important}
.nlc-dark .text-red-500{color:#f87171 !important}
.nlc-dark .text-green-600{color:#4ade80 !important}
.nlc-dark .text-white{color:#0a0a0b !important}
.nlc-dark .bg-clay-500{background:#d97757 !important}
.nlc-dark .border-clay-500{border-color:#d97757 !important}
.nlc-dark .border-2{border-color:#d97757 !important}
.nlc-dark .bg-black\/40{background:rgba(0,0,0,.6) !important}
.nlc-dark .msg-user{background:#1e1e20 !important;border-color:rgba(255,255,255,.08) !important;color:#f4f4f5 !important}
.nlc-dark .msg-ai{color:#f4f4f5 !important}
.nlc-dark .msg-ai .md p{color:#d4d4d8 !important}
.nlc-dark .msg-ai .md a{color:#d97757 !important}
.nlc-dark .msg-ai .md code{background:rgba(255,255,255,.08) !important}
.nlc-dark .msg-ai .md pre{background:#161618 !important}
.nlc-dark .msg-ai .md th{background:#1e1e20 !important}
.nlc-dark .msg-ai .md td{border-color:rgba(255,255,255,.08) !important}
.nlc-dark .msg-ai .md blockquote{border-left-color:#3f3f46 !important;color:#a1a1aa !important}
.nlc-dark .composer-wrap{background:#161618 !important;border-color:rgba(255,255,255,.1) !important}
.nlc-dark .composer-wrap:focus-within{border-color:rgba(255,255,255,.2) !important;box-shadow:0 0 0 1px rgba(255,255,255,.15) !important}
.nlc-dark .sidebar-item{color:#a1a1aa !important}
.nlc-dark .sidebar-item:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .sidebar-item.active{background:rgba(255,255,255,.08) !important;color:#f4f4f5 !important}
.nlc-dark .modal-overlay{background:rgba(0,0,0,.6) !important}
.nlc-dark .modal-card{background:#161618 !important;border:1px solid rgba(255,255,255,.08) !important}
.nlc-dark .input-glow{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important}
.nlc-dark .input-glow:focus{border-color:rgba(255,255,255,.2) !important;box-shadow:0 0 0 1px rgba(255,255,255,.15) !important}
.nlc-dark .model-item{color:#a1a1aa !important}
.nlc-dark .model-item:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .model-item.active{background:rgba(255,255,255,.08) !important}
.nlc-dark .model-item-name{color:#f4f4f5 !important}
.nlc-dark .model-item-desc{color:#71717a !important}
.nlc-dark .model-item-tag{background:rgba(255,255,255,.06) !important;color:#a1a1aa !important;border-color:rgba(255,255,255,.08) !important}
.nlc-dark #log{background:#0a0a0b !important}
.nlc-dark .text-stone-200{color:#52525b !important}
.nlc-dark .text-stone-300{color:#52525b !important}
.nlc-dark .text-blue-400{color:#60a5fa !important}
.nlc-dark .text-green-400{color:#4ade80 !important}
.nlc-dark .text-amber-400{color:#fbbf24 !important}
.nlc-dark .text-pink-400{color:#f472b6 !important}
.nlc-dark .text-violet-400{color:#a78bfa !important}
.nlc-dark .bg-green-100{background:rgba(74,222,128,.12) !important}
.nlc-dark .bg-green-500\/15{background:rgba(74,222,128,.12) !important}
.nlc-dark .bg-clay-500\/15{background:rgba(217,119,87,.12) !important}
.nlc-dark .bg-violet-500\/15{background:rgba(124,92,255,.12) !important}
.nlc-dark .bg-blue-500\/15{background:rgba(96,165,250,.12) !important}
.nlc-dark .bg-amber-500\/15{background:rgba(251,191,36,.12) !important}
.nlc-dark .bg-pink-500\/15{background:rgba(244,114,182,.12) !important}
.nlc-dark .bg-green-400{background:#4ade80 !important}
.nlc-dark .bg-red-500{color:#f87171 !important}
.nlc-dark .text-red-600{color:#f87171 !important}
.nlc-dark .border-red-200{border-color:rgba(248,113,113,.2) !important}
.nlc-dark .hover\:bg-red-50:hover{background:rgba(248,113,113,.08) !important}
.nlc-dark .bg-stone-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-stone-800:hover{background:#e4e4e7 !important;color:#0a0a0b !important}
.nlc-dark .text-white{color:#0a0a0b !important}
.nlc-dark .bg-zinc-900{background:#f4f4f5 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-zinc-800:hover{background:#e4e4e7 !important;color:#0a0a0b !important}
.nlc-dark .hover\:bg-zinc-700:hover{background:#d4d4d8 !important;color:#0a0a0b !important}
.nlc-dark .bg-zinc-900 .text-white{color:#0a0a0b !important}
.nlc-dark .bg-stone-900 .text-white{color:#0a0a0b !important}
.nlc-dark .placeholder-zinc-400::placeholder{color:#52525b !important}
.nlc-dark .code-block .lang{color:#52525b !important}
.nlc-dark .text-clay-400{color:#e28a6e !important}
.nlc-dark .mono{color:#a1a1aa !important}
.nlc-dark .text-zinc-300{color:#d4d4d8 !important}
.nlc-dark .text-zinc-800{color:#e4e4e7 !important}
.nlc-dark .text-zinc-900{color:#f4f4f5 !important}
.nlc-dark .border-white\/5{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}
.nlc-dark .border-white\/15{border-color:rgba(255,255,255,.15) !important}
.nlc-dark .bg-white\/5{background:rgba(255,255,255,.05) !important}
.nlc-dark .hover\:bg-white\/5:hover{background:rgba(255,255,255,.05) !important}
.nlc-dark .text-zinc-400{color:#a1a1aa !important}
.nlc-dark .hover\:text-white:hover{color:#f4f4f5 !important}
.nlc-dark .font-bold{color:inherit}
.nlc-dark .font-semibold{color:inherit}
.nlc-dark h1,.nlc-dark h2,.nlc-dark h3{color:#f4f4f5 !important}
.nlc-dark h3{color:#f4f4f5 !important}
.nlc-dark p{color:inherit}
.nlc-dark .text-stone-400{color:#71717a !important}
.nlc-dark .text-stone-500{color:#71717a !important}
.nlc-dark .text-stone-600{color:#a1a1aa !important}
.nlc-dark .text-stone-700{color:#d4d4d8 !important}
.nlc-dark .text-stone-800{color:#e4e4e7 !important}
.nlc-dark .text-stone-900{color:#f4f4f5 !important}
.nlc-dark .border-stone-200\/60{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .bg-sand-50\/80{background:rgba(10,10,11,.8) !important}
.nlc-dark .bg-sand-50{background:#0a0a0b !important}
.nlc-dark .bg-white\/80{background:rgba(22,22,24,.8) !important}
.nlc-dark .opacity-15{opacity:.2 !important}
.nlc-dark .opacity-20{opacity:.25 !important}
.nlc-dark .opacity-30{opacity:.35 !important}
.nlc-dark .text-transparent{color:transparent}
.nlc-dark .gradient-text{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.nlc-dark .gradient-bg{background:linear-gradient(135deg,#d97757 0%,#7c5cff 100%) !important;color:#fff !important}
.nlc-dark .glow-btn{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 8px 24px -8px rgba(217,119,87,.45) !important}
.nlc-dark .card-hover{transition:transform .2s,box-shadow .2s,border-color .2s}
.nlc-dark .card-hover:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.15) !important;box-shadow:0 12px 32px -8px rgba(0,0,0,.4)}
.nlc-dark .hero-glow{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(217,119,87,.18),transparent 60%),radial-gradient(ellipse 60% 50% at 80% 30%,rgba(124,92,255,.14),transparent 60%)}
.nlc-dark .grid-bg{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.nlc-dark .fade-in{animation:fadeIn .8s ease-out}
.nlc-dark .slide-up{animation:slideUp .6s ease-out}
.nlc-dark .mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.nlc-dark .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.nlc-dark .from-\[\#1a1418\]{--tw-gradient-from:#1a1418 var(--tw-gradient-from-position);--tw-gradient-to:rgba(26,20,24,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-\[\#181220\]{--tw-gradient-to:#181220 var(--tw-gradient-to-position)}
.nlc-dark .from-stone-700{--tw-gradient-from:#44403c var(--tw-gradient-from-position);--tw-gradient-to:rgba(68,64,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-stone-900{--tw-gradient-to:#1c1917 var(--tw-gradient-to-position)}
.nlc-dark .from-clay-500{--tw-gradient-from:#d97757 var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,87,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-clay-700{--tw-gradient-to:#9a4d33 var(--tw-gradient-to-position)}
.nlc-dark .from-violet-500{--tw-gradient-from:#7c5cff var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,92,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.nlc-dark .to-violet-700{--tw-gradient-to:#5b3fd6 var(--tw-gradient-to-position)}
.nlc-dark .border-clay-500\/40{border-color:rgba(217,119,87,.4) !important}
.nlc-dark .border-clay-500\/30{border-color:rgba(217,119,87,.3) !important}
.nlc-dark .border-clay-500\/60{border-color:rgba(217,119,87,.6) !important}
.nlc-dark .bg-\[\#161618\]{background:#161618 !important}
.nlc-dark .bg-\[\#0c0c0e\]{background:#0c0c0e !important}
.nlc-dark .bg-\[\#1a1418\]{background:#1a1418 !important}
.nlc-dark .bg-\[\#181220\]{background:#181220 !important}
.nlc-dark .text-\[10px\]{font-size:10px}
.nlc-dark .py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.nlc-dark .\-top-3{top:-.75rem}
.nlc-dark .left-6{left:1.5rem}
.nlc-dark .z-10{z-index:10}
.nlc-dark .w-12{width:3rem}
.nlc-dark .h-12{height:3rem}
.nlc-dark .rounded-xl{border-radius:.75rem}
.nlc-dark .rounded-3xl{border-radius:1.5rem}
.nlc-dark .p-12{padding:3rem}
.nlc-dark .max-w-7xl{max-width:80rem}
.nlc-dark .text-7xl{font-size:4.5rem;line-height:1}
.nlc-dark .font-black{font-weight:900}
.nlc-dark .leading-\[1\.05\]{line-height:1.05}
.nlc-dark .tracking-widest{letter-spacing:.1em}
.nlc-dark .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.2,1) infinite}
.nlc-dark .marquee{display:flex;gap:48px;animation:scroll 30s linear infinite;white-space:nowrap}
.nlc-dark .hover\:opacity-90:hover{opacity:.9}
.nlc-dark .bg-\[\#0a0a0b\]\/80{background:rgba(10,10,11,.8) !important}
.nlc-dark .text-zinc-600{color:#71717a !important}
.nlc-dark .text-zinc-400{color:#a1a1aa !important}
.nlc-dark .text-zinc-500{color:#71717a !important}
.nlc-dark .text-zinc-300{color:#d4d4d8 !important}
.nlc-dark .text-green-400{color:#4ade80 !important}
.nlc-dark .bg-green-400{background:#4ade80 !important}
.nlc-dark .border-white\/5{border-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}
.nlc-dark .border-y{border-top-color:rgba(255,255,255,.05) !important;border-bottom-color:rgba(255,255,255,.05) !important}
.nlc-dark .border-b-2{border-bottom-width:2px}
.nlc-dark .border-white\/10{border-color:rgba(255,255,255,.1) !important}

/* ═══ Sidebar layout for docs/api pages ═══ */
.nlc-sidebar{position:sticky;top:64px;align-self:flex-start;max-height:calc(100vh - 64px);overflow-y:auto;padding:24px 0;width:240px;flex-shrink:0}
.nlc-sidebar-section{margin-bottom:24px}
.nlc-sidebar-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#52525b;margin-bottom:8px;padding:0 16px}
.nlc-sidebar-link{display:block;padding:6px 16px;font-size:13px;color:#71717a;text-decoration:none;border-radius:8px;transition:background .12s,color .12s;cursor:pointer}
.nlc-sidebar-link:hover{background:rgba(255,255,255,.04);color:#d4d4d8}
.nlc-sidebar-link.active{background:rgba(217,119,87,.1);color:#d97757;font-weight:600}
.nlc-layout{display:flex;max-w-7xl;margin:0 auto;padding:0 16px;gap:0}
.nlc-layout-content{flex:1;min-width:0;padding:32px 0}
@media (max-width:1023px){.nlc-sidebar{display:none}.nlc-layout{display:block}}

/* ═══ Responsive fixes for all pages ═══ */
/* Tables: make scrollable on mobile (don't overflow) */
.nlc-dark table,.nlc-dark .overflow-x-auto{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.nlc-dark pre{max-width:100%;overflow-x:auto}
.nlc-dark code{word-break:break-word}
/* Grid: stack on mobile */
@media (max-width:639px){
  .nlc-dark .grid{gap:.75rem}
  .nlc-dark .sm\:grid-cols-2{grid-template-columns:1fr}
  .nlc-dark .sm\:grid-cols-3{grid-template-columns:1fr}
  .nlc-dark .sm\:grid-cols-4{grid-template-columns:1fr}
  .nlc-dark .sm\:grid-cols-5{grid-template-columns:1fr}
  .nlc-dark .sm\:flex-row{flex-direction:column}
  .nlc-dark .max-w-7xl{max-width:100%}
  .nlc-dark .max-w-5xl{max-width:100%}
  .nlc-dark .max-w-4xl{max-width:100%}
  .nlc-dark .max-w-3xl{max-width:100%}
  .nlc-dark .max-w-2xl{max-width:100%}
  .nlc-dark .px-8{padding-left:1rem;padding-right:1rem}
  .nlc-dark .py-24{padding-top:2.5rem;padding-bottom:2.5rem}
  .nlc-dark .py-20{padding-top:2.5rem;padding-bottom:2.5rem}
  .nlc-dark .py-16{padding-top:2rem;padding-bottom:2rem}
  .nlc-dark .pt-24{padding-top:2.5rem}
  .nlc-dark .pb-20{padding-bottom:2.5rem}
  .nlc-dark .text-4xl{font-size:1.75rem}
  .nlc-dark .text-3xl{font-size:1.5rem}
  .nlc-dark .text-2xl{font-size:1.25rem}
  .nlc-dark .mb-14{margin-bottom:1.5rem}
  .nlc-dark .mb-12{margin-bottom:1.5rem}
  .nlc-dark .mb-10{margin-bottom:1rem}
  .nlc-dark .mt-16{margin-top:1.5rem}
}
/* Chat: responsive sidebar + composer */
@media (max-width:1023px){
  #sidebar{display:none}
  #sidebarMobile{display:flex}
  #log{padding:0 8px}
}

/* ═══ SEO: semantic article defaults ═══ */
article h1{font-size:1.875rem;font-weight:800;margin-bottom:.5rem}
article h2{font-size:1.25rem;font-weight:700;margin:1.5rem 0 .5rem}
article h3{font-size:1.125rem;font-weight:700;margin:1rem 0 .5rem}
article p{margin:.5rem 0;line-height:1.7}

  .sm\:flex{display:flex}
  .sm\:block{display:block}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
  .sm\:text-5xl{font-size:3rem;line-height:1}
}
@media (min-width:768px){
  .md\:text-6xl{font-size:3.75rem;line-height:1}
  .md\:text-7xl{font-size:4.5rem;line-height:1}
  .md\:flex{display:flex}
}
@media (min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
  .lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}
  .lg\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
  .lg\:text-left{text-align:left}
  .lg\:block{display:block}
  .lg\:flex{display:flex}
  .lg\:hidden{display:none}
  .lg\:ml-64{margin-left:16rem}
  .lg\:ml-72{margin-left:18rem}
}

/* ── Popups (NLCUI toasts + modals) on dark pages ──
   These elements are appended to document.body, so the aggressive
   `.nlc-dark *{color:inherit}` rule washes their text out to near-white on the
   white card (invisible text + a glaring white popup on the dark UI). Give them a
   proper dark theme so they match the site and stay readable everywhere. */
.nlc-dark .nlc-toast{background:#161618 !important;border-color:rgba(255,255,255,.1) !important;color:#f4f4f5 !important;box-shadow:0 16px 40px -12px rgba(0,0,0,.6),0 2px 8px -2px rgba(0,0,0,.45) !important}
.nlc-dark .nlc-toast-text{color:#e4e4e7 !important}
.nlc-dark .nlc-toast-close{color:#71717a !important}
.nlc-dark .nlc-toast-close:hover{color:#f4f4f5 !important;background:rgba(255,255,255,.08) !important}
.nlc-dark .nlc-modal-overlay{background:rgba(0,0,0,.62) !important}
.nlc-dark .nlc-modal-card{background:#161618 !important;border:1px solid rgba(255,255,255,.1) !important;box-shadow:0 30px 60px -15px rgba(0,0,0,.7),0 8px 24px -8px rgba(0,0,0,.5) !important}
.nlc-dark .nlc-modal-title{color:#f4f4f5 !important}
.nlc-dark .nlc-modal-text{color:#a1a1aa !important}
.nlc-dark .nlc-modal-x{color:#71717a !important}
.nlc-dark .nlc-modal-x:hover{color:#f4f4f5 !important;background:rgba(255,255,255,.08) !important}
.nlc-dark .nlc-modal-input{background:#0f0f10 !important;border-color:rgba(255,255,255,.12) !important;color:#f4f4f5 !important}
.nlc-dark .nlc-modal-input:focus{border-color:rgba(217,119,87,.6) !important;box-shadow:0 0 0 3px rgba(217,119,87,.18) !important}
.nlc-dark .nlc-modal-icon-danger{background:rgba(248,113,113,.14) !important;color:#f87171 !important}
.nlc-dark .nlc-modal-icon-success{background:rgba(74,222,128,.14) !important;color:#4ade80 !important}
.nlc-dark .nlc-modal-icon-info{background:rgba(124,92,255,.16) !important;color:#a78bfa !important}
.nlc-dark .nlc-btn-ghost{background:transparent !important;color:#d4d4d8 !important;border-color:rgba(255,255,255,.14) !important}
.nlc-dark .nlc-btn-ghost:hover{background:rgba(255,255,255,.06) !important;color:#fff !important}
.nlc-dark .nlc-btn-primary{background:#f4f4f5 !important;color:#0a0a0b !important;border-color:#f4f4f5 !important}
.nlc-dark .nlc-btn-primary:hover{background:#e4e4e7 !important}
.nlc-dark .nlc-btn-danger{background:#dc2626 !important;color:#fff !important;border-color:#dc2626 !important}
.nlc-dark .nlc-btn-danger:hover{background:#b91c1c !important}
/* ─── Missing tailwind utilities (hand-built CSS gap fix) ────────────────────
   Added because the chat composer + sidebar use sizes that weren't in the
   curated output. Without these the SVG icons fall back to their viewBox and
   render at full container size, causing the "giant chevron" bug. */
.w-0{width:0}
.w-2{width:.5rem}
.h-2{height:.5rem}
.w-3{width:.75rem}
.h-3{height:.75rem}
.w-3\.5{width:.875rem}
.w-9{width:2.25rem}
.h-9{height:2.25rem}
.w-14{width:3.5rem}
.h-14{height:3.5rem}
.w-16{width:4rem}
.h-16{height:4rem}
.w-20{width:5rem}

/* ────────────────────────────────────────────────────────────────────────────
   Mobile polish — applied across every page (dashboard, docs, blog, api, etc.)
   The user reported broken colors + bad button sizes on phones. These rules
   bring everything up to Apple/Material touch-target guidance (≥40px height)
   and fix the dark-mode color regressions on cards rendered over light bodies.
   ──────────────────────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
  /* Touch targets: only *primary* CTAs get a tall minimum. Compact secondary
     buttons (Copy, Verify, Manage, ON/OFF) keep their natural height so the
     dashboard doesn't look like a wall of chunky pills. */
  a.gradient-bg, button.gradient-bg, .nlc-btn-primary, .auth-btn-primary {
    min-height: 44px;
  }
  /* Tab bar — readable, scrolls horizontally. */
  #dashTabs { padding-bottom: 2px; scrollbar-width: thin; }
  #dashTabs .dash-tab { padding: 9px 12px !important; font-size: 12.5px; }
  /* The Credits + Models small header cards stack instead of crowding on phones. */
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 { flex-wrap: wrap; }
  /* Tables on phones: smaller font + side gutters via a thin scroll. */
  .overflow-x-auto table { font-size: 12.5px; }
  /* Code blocks shouldn't overflow off-screen on tiny phones. */
  pre, code { word-break: break-word; }
  /* Homepage hero stats: 2x2 instead of 4-in-a-row jam. */
  .hero-stats, [class*="grid-cols-4"]:has(> div > .text-3xl) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  /* Model cards on homepage: 1 col on phone (was forcing too-narrow 2-col). */
  [class*="lg:grid-cols-5"], [class*="lg:grid-cols-4"]:not(.dash-panel .grid) {
    grid-template-columns: minmax(0, 1fr);
  }
  /* Inputs need at least 38px height for thumb tap. */
  input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"], select, textarea:not(#box) {
    min-height: 40px;
  }
  /* Modal/card body padding — tighten so content fits. */
  .modal-card { padding: 1.25rem !important; }
}
/* Tablet — keep the 5-card model row at 3 cols instead of cramming 5. */
@media (min-width: 641px) and (max-width: 1023px) {
  [class*="lg:grid-cols-5"]:not(.dash-panel .grid) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Dark-mode color leak fix: some primary text on dashboard inputs was rendered
   nearly invisible because .nlc-dark forces a colour but the input fills with
   the system color. Pin readable text values. */
.nlc-dark input::placeholder { color: #71717a !important; }
.nlc-dark input, .nlc-dark select, .nlc-dark textarea { color: #f4f4f5 !important; caret-color: #fff; }

/* ────────────────────────────────────────────────────────────────────────────
   Mobile parity v2 — match desktop colors on phones + tighten layout.
   Why this block exists: the previous mobile rules touched buttons and grids,
   but missed the two visible mobile/desktop differences:
     1) Mobile browsers in dark mode were re-tinting colors because the page
        didn't declare a color-scheme. <meta name="color-scheme" content="dark">
        is now on every dark page; this block also pins `html` to the dark bg
        so iOS Safari's rubber-band overscroll matches.
     2) Several layouts (flagship hero card, dashboard header cards, chat
        header) didn't account for safe-area insets or narrow widths.
   ──────────────────────────────────────────────────────────────────────────── */

/* Page-level dark baseline — covers the html element so iOS overscroll
   (rubber-band beyond top/bottom) shows the same #0a0a0b instead of white. */
html { background: #0a0a0b; }
.nlc-dark, body.nlc-dark { background: #0a0a0b !important; }

/* Safe-area aware nav: respect iPhone notch in landscape; add a touch of
   inset bottom padding to mobile drawers so they clear the home indicator. */
nav .max-w-7xl {
  padding-left: max(1rem, env(safe-area-inset-left));
  padding-right: max(1rem, env(safe-area-inset-right));
}
@media (min-width: 640px) {
  nav .max-w-7xl {
    padding-left: max(1.5rem, env(safe-area-inset-left));
    padding-right: max(1.5rem, env(safe-area-inset-right));
  }
}

/* ── Mobile (<= 640px): layout polish for the spots the user flagged ── */
@media (max-width: 640px) {
  /* Body/html backgrounds — ensure no white edges peek through on small screens. */
  body { background: #0a0a0b !important; }

  /* Hero badge (the pill above the H1): allow it to wrap to 2 lines, center it,
     and stop forcing a single tall row on narrow phones. */
  section .inline-flex.items-center.gap-2.px-3.py-1\.5.rounded-full {
    white-space: normal;
    text-align: left;
    line-height: 1.35;
    max-width: 100%;
  }

  /* Flagship spotlight (md:grid-cols-[auto_1fr_auto]) — on phones stack to a
     single column, center the logo, and let the price/button row sit centered. */
  section .grid.md\:grid-cols-\[auto_1fr_auto\] {
    grid-template-columns: 1fr;
    text-align: left;
  }
  section .grid.md\:grid-cols-\[auto_1fr_auto\] > img {
    margin-left: auto;
    margin-right: auto;
  }
  section .grid.md\:grid-cols-\[auto_1fr_auto\] > div:last-child {
    text-align: center;
  }

  /* Dashboard header: Credits + Models cards now sit side-by-side at full width
     instead of stacking; the email line gets to breathe. */
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 > div {
    min-width: 0;
  }

  /* Dashboard stat cards: keep 2-col on phones (it's readable); only collapse
     to 1-col when the screen is *really* narrow (< 380px / iPhone SE). */
  .dash-panel .grid.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  @media (max-width: 379px) {
    .dash-panel .grid.grid-cols-2 { grid-template-columns: minmax(0, 1fr); }
  }

  /* Tab bar: edge-fade hint so users see they can scroll (purely visual). */
  #dashTabs { mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 24px), transparent); -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 24px), transparent); }
  #dashTabs::-webkit-scrollbar { display: none; }

  /* Chat header: safe-area top + slightly taller for thumb reach. */
  #chatApp header { padding-top: env(safe-area-inset-top); height: calc(48px + env(safe-area-inset-top)); }

  /* Composer: keep its safe-area handling, but add side padding for landscape notch. */
  #chatApp main > div[style*="safe-area-inset-bottom"] {
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }

  /* Sidebar/menu: when toggled open via toggleSidebar(), make sure it covers
     the screen darkly. (#sidebar is hidden lg:flex; mobile uses a drawer.) */
  #sidebar.mobile-open {
    display: flex !important;
    position: fixed; inset: 0 auto 0 0;
    width: 84vw; max-width: 320px;
    z-index: 90;
    background: #161618 !important;
    border-right: 1px solid rgba(255,255,255,.08);
  }

  /* Model picker dropdown — never wider than the viewport, with comfy gutters. */
  #modelMenu { max-width: calc(100vw - 16px) !important; }

  /* Pricing/topup grid: 2 cols on phones is fine, but tighten gap so each
     pack pill is fully visible without horizontal scroll. */
  #packs { gap: 6px !important; }
  #packs > * { font-size: 12.5px; }

  /* Section padding: tighten top/bottom of hero + sections so phones don't
     waste a full screen of empty space before the first content. */
  section { padding-top: 2.25rem; padding-bottom: 2.25rem; }
  section.hero-glow { padding-top: 3rem; }

  /* Code blocks in /docs and /api don't overflow horizontally on small phones. */
  pre { font-size: 12px; padding: 12px !important; }

  /* Tabs on /admin and others — keep horizontal scroll w/o ugly scrollbar. */
  .overflow-x-auto::-webkit-scrollbar { height: 4px; }
  .overflow-x-auto::-webkit-scrollbar-thumb { background: rgba(255,255,255,.12); border-radius: 2px; }

  /* Footer columns: stack to 2 cols on phones (was 4-col cram). */
  footer .grid.grid-cols-2.sm\:grid-cols-4 { grid-template-columns: 1fr 1fr; gap: 20px; }
}

/* Tablet (641–1023): the flagship hero card should drop its 3-col grid and
   the price block centers — the same fix as phones, since md: only kicks in
   at 768. */
@media (min-width: 641px) and (max-width: 767px) {
  section .grid.md\:grid-cols-\[auto_1fr_auto\] {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

/* Prevent mobile WebKit from auto-inflating Thai text. */
html, body { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

/* ────────────────────────────────────────────────────────────────────────────
   Login modal (auth modal on /chat) — fix dark-mode color collisions + mobile
   sizing. Before: inputs (bg-zinc-50) and the card (bg-white) both became
   #161618 under .nlc-dark, so inputs vanished into the card. Now the inputs
   use a darker background (#0f0f10) with a visible border, and the modal
   tightens its padding on phones so content isn't cramped.
   ──────────────────────────────────────────────────────────────────────────── */
.nlc-dark .auth-modal-card {
  background: #161618 !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  box-shadow: 0 30px 60px -15px rgba(0,0,0,.7),0 8px 24px -8px rgba(0,0,0,.5) !important;
}
.nlc-dark .auth-modal-card h2,
.nlc-dark .auth-modal-card span { color: #f4f4f5 !important; }
.nlc-dark .auth-modal-card #modalSub,
.nlc-dark .auth-modal-card #modalSwitch,
.nlc-dark .auth-modal-card #modalSwitch a,
.nlc-dark .auth-modal-card label { color: #a1a1aa !important; }
.nlc-dark .auth-input {
  background: #0f0f10 !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #f4f4f5 !important;
}
.nlc-dark .auth-input::placeholder { color: #71717a !important; }
.nlc-dark .auth-input:focus {
  border-color: #d97757 !important;
  box-shadow: 0 0 0 3px rgba(217,119,87,.2) !important;
}
.nlc-dark .auth-btn-primary {
  background: linear-gradient(135deg,#d97757 0%,#7c5cff 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.08),0 8px 24px -8px rgba(217,119,87,.45) !important;
}
.nlc-dark .auth-btn-primary:hover { opacity: .92; }
.nlc-dark #orDivider > div { background: rgba(255,255,255,.1) !important; }
.nlc-dark #orDivider span { color: #71717a !important; }
/* Light-mode fallback (in case the modal is ever shown on a light page): make
   the inputs visible against the white card. */
.auth-modal-card .auth-input { background: #fafafa; }

@media (max-width: 640px) {
  /* Tighter padding + slightly smaller heading so the modal fits on a 360px
     phone without scrolling. */
  .auth-modal-card { padding: 1.25rem !important; }
  .auth-modal-card #modalTitle { font-size: 1.0625rem; }
  .auth-modal-card .auth-input { padding-top: .75rem; padding-bottom: .75rem; font-size: 15px; }
  .auth-modal-card .auth-btn-primary { padding-top: .8125rem; padding-bottom: .8125rem; font-size: 15px; min-height: 46px; }
  /* Google sign-in iframe — center + don't overflow the card. */
  #googleWrap, #googleBtn, #googleBtn > div { max-width: 100% !important; }
  #googleBtn { width: 100% !important; }
}

/* ────────────────────────────────────────────────────────────────────────────
   Footer cleanup — every page footer reads cleanly on mobile.
   The dashboard/docs/api/blog footers used `flex flex-col` which stacked each
   link as its own row on phones (5+ tall rows of single-link clutter). Switch
   to a wrapping inline layout so the links flow naturally, with the copyright
   on its own line above.
   ──────────────────────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
  /* Footer with flex flex-col sm:flex-row — wrap links inline, center copy. */
  footer .max-w-7xl.flex.flex-col,
  footer .max-w-6xl.flex.flex-col {
    align-items: stretch !important;
    text-align: center;
    gap: 12px !important;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  footer .max-w-7xl.flex.flex-col > span,
  footer .max-w-6xl.flex.flex-col > span {
    display: block;
    text-align: center;
  }
  /* The spacer div used on desktop to push links right is useless on mobile. */
  footer .max-w-7xl.flex.flex-col > .flex-1,
  footer .max-w-6xl.flex.flex-col > .flex-1 { display: none; }
  /* Links wrap into a nice centered row instead of vertical column. */
  footer .max-w-7xl.flex.flex-col > a,
  footer .max-w-6xl.flex.flex-col > a {
    display: inline-block;
    padding: 4px 8px;
    margin: 2px;
  }
  /* Wrap the link group so they sit on the same line(s). */
  footer .max-w-7xl.flex.flex-col,
  footer .max-w-6xl.flex.flex-col {
    flex-wrap: wrap;
    justify-content: center;
  }
  /* Index page 4-col footer: 2x2 layout on phones, readable spacing. */
  footer .grid.grid-cols-2.sm\:grid-cols-4 {
    grid-template-columns: 1fr 1fr !important;
    gap: 20px 16px !important;
  }
  /* Tighten the brand description so it doesn't crowd its column. */
  footer .grid.grid-cols-2.sm\:grid-cols-4 > div:first-child p { font-size: 11.5px; }
  /* Tighten footer padding so it doesn't dominate short pages. */
  footer { padding-top: 1.5rem !important; padding-bottom: calc(1.25rem + env(safe-area-inset-bottom)) !important; }
  /* The bottom copyright line in index footer — slightly larger so it's not microscopic. */
  footer > .max-w-7xl.text-center { font-size: 11.5px; padding-top: 1rem; }
}

/* ────────────────────────────────────────────────────────────────────────────
   Welcome screen on /chat (unauthed) — center buttons + ensure they don't
   stretch full-width awkwardly on phones, and add a touch of breathing room.
   ──────────────────────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
  #welcomeScreen .flex.flex-col.sm\:flex-row > button {
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
    min-height: 48px;
  }
  #welcomeScreen h1 { font-size: 1.625rem; line-height: 1.2; }
  #welcomeScreen p { font-size: .9375rem; line-height: 1.55; }
  #welcomeScreen img { width: 4rem; height: 4rem; margin-bottom: 1rem; }
}

/* ════════════════════════════════════════════════════════════════════════════
   FINAL MOBILE PASS — covers dashboard, docs, api, gallery, admin, status,
   privacy, terms, reset, blog, playground. Includes a universal footer rule
   so every page footer reads cleanly regardless of which max-w-* container it
   uses. Also tightens the rows where inputs/selects/buttons stack ugly.
   ════════════════════════════════════════════════════════════════════════════ */

/* ── Universal footer rule (catches max-w-7xl/6xl/5xl/4xl/3xl/md) ── */
@media (max-width: 640px) {
  footer > div[class*="max-w-"].flex.flex-col {
    align-items: stretch !important;
    text-align: center;
    gap: 10px !important;
    padding-left: 1rem;
    padding-right: 1rem;
    flex-wrap: wrap;
    justify-content: center;
  }
  footer > div[class*="max-w-"].flex.flex-col > .flex-1 { display: none; }
  footer > div[class*="max-w-"].flex.flex-col > span {
    display: block;
    text-align: center;
    width: 100%;
    margin-bottom: 2px;
  }
  footer > div[class*="max-w-"].flex.flex-col > a {
    display: inline-block;
    padding: 6px 10px;
    margin: 2px;
    font-size: 12px;
  }
  /* After the copyright line, the links wrap inline as a centered row. */
  footer > div[class*="max-w-"].flex.flex-col {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/* ── Dashboard: form rows that mix input + select + button ── */
@media (max-width: 640px) {
  /* The API-keys "create" row has 3 children (name + scopes + Create). On
     mobile flex-col makes each full-width — keep that but add visible spacing
     and make the select pill-shaped so it doesn't read as "another input". */
  #tab-apikeys .flex.flex-col.sm\:flex-row select {
    background: #0a0a0b !important;
    color: #e4e4e7 !important;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    padding: 10px 12px;
  }
  /* The custom-amount row inside Billing: keep the $ + input on one line,
     then the quote text on its own line, then the Top up button full-width. */
  #tab-billing .flex.flex-col.sm\:flex-row .w-full.sm\:w-auto { width: 100%; }
  #tab-billing #customQuote { width: 100%; text-align: left; padding-top: 2px; }
  #tab-billing #customBtn { width: 100%; margin-top: 6px; padding: 12px; font-size: 14px; }
  /* Top-up packs (#packs) — let each pack be readable on a 360px screen. */
  #packs { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  /* Refer & earn input + Copy button — make Copy compact, input full. */
  #reflink + button { padding: 10px 14px; font-size: 13px; }
  /* Stats cards on dashboard overview: ensure each card has a min-height so
     they line up evenly (API Key shows a long string, Referral shows "—"). */
  .dash-panel .grid.grid-cols-2 > .bg-\[\#161618\] { min-height: 86px; }
}

/* ── Admin page: tabbar wraps neatly + tables remain scrollable ── */
@media (max-width: 640px) {
  .tabbar { flex-wrap: wrap; gap: 4px; }
  .tabbar button {
    padding: 8px 12px !important;
    font-size: 12.5px;
    flex: 0 0 auto;
  }
  #gate { padding-top: 4rem !important; }
  #gate .flex.gap-2 { flex-direction: column; gap: 8px !important; }
  #gate .flex.gap-2 > input,
  #gate .flex.gap-2 > button { width: 100%; }
}

/* ── Docs page: tabbar (#tabs) is horizontal scroll already, but let's hide
     the scrollbar and add edge fade so it feels intentional. ── */
@media (max-width: 640px) {
  #tabs { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
  #tabs::-webkit-scrollbar { display: none; }
  #tabs { scrollbar-width: none; }
  .tab-bar { mask-image: linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent); -webkit-mask-image: linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent); }
  .tab-bar button { padding: 10px 14px !important; font-size: 13px; white-space: nowrap; }
  .spec-table { font-size: 12px; }
  .spec-table th, .spec-table td { padding: 6px 8px; }
  /* Code blocks in docs/api should not blow up the layout. */
  .code-block { overflow-x: auto; }
}

/* ── Status page: metric grid 3-col is OK at 360px+, but iPhone SE (320px)
     barely fits — let it collapse to 1-col. ── */
@media (max-width: 380px) {
  body .max-w-3xl .grid.grid-cols-3 { grid-template-columns: 1fr 1fr !important; gap: 6px !important; }
  body .max-w-3xl .grid.grid-cols-3 .text-xl { font-size: 1rem; }
}
@media (max-width: 640px) {
  /* "Powered by" tech badges on Status — let them wrap as small chips. */
  .tech-badge { font-size: 11.5px; padding: 8px 11px; }
  /* Status banner: keep dot + text on one row, pill goes under on tiny phones. */
  #banner { padding: 14px 16px !important; gap: 12px !important; }
  #banner #bannerTitle { font-size: 15px; }
  #banner #bannerSub { font-size: 12px; }
  #banner #bannerPill { font-size: 10px; padding: 2px 8px; }
}

/* ── Gallery page: the cards already stack via sm:grid-cols-2; tighten card
     padding + Try button is full-width to match the prompt block. ── */
@media (max-width: 640px) {
  .ex-card { padding: 14px !important; gap: 8px !important; }
  .ex-prompt { font-size: 13.5px; line-height: 1.5; }
  .ex-try { align-self: stretch !important; text-align: center; padding: 10px 16px !important; }
}

/* ── Blog page: model cards on mobile (sm:grid-cols-2 → 1 col on phone). The
     existing `lg:grid-cols-4` rule already collapses these. Add card padding
     + ensure the price grid is readable. ── */
@media (max-width: 640px) {
  .blog-card { padding: 18px !important; }
  .blog-card .flex.justify-between { font-size: 12px; }
  .blog-card h3 { font-size: 15px !important; }
  .blog-card .text-sm { font-size: 13px; }
}

/* ── Playground page: aside (controls) + main on lg:grid-cols-[280px_1fr] —
     on mobile becomes a single column. The Send + textarea row needs to fit. ── */
@media (max-width: 640px) {
  /* Playground: aside on mobile should be a card not the full sidebar look. */
  main > .grid.lg\:grid-cols-\[280px_1fr\] { gap: 12px !important; }
  /* Playground send row: shrink button so the textarea has room. */
  main section > div.border-t .flex.gap-2 > button { padding: 10px 14px !important; font-size: 13px; }
}

/* ── Reset password page: card padding tighter + buttons full-width by default. ── */
@media (max-width: 640px) {
  main > .max-w-md .bg-white { padding: 1.5rem !important; }
  main > .max-w-md h1 { font-size: 1.375rem !important; }
}

/* ── Privacy / Terms: prose blocks should have comfortable mobile reading. ── */
@media (max-width: 640px) {
  .prose-sm { font-size: 14px; line-height: 1.65; }
  .prose-sm h3 { font-size: 15px !important; margin-top: 18px !important; }
  .prose-sm ul { padding-left: 18px; }
}

/* ── Dashboard "Your data" buttons: stack neatly + readable label sizing ── */
@media (max-width: 640px) {
  #tab-settings .flex.flex-wrap.gap-2 > button { flex: 1 1 100%; padding: 10px 14px; font-size: 13px; text-align: center; }
}

/* ── Chat header on welcome screen + chat app — extra side gutters on iPhone notch ── */
@media (max-width: 640px) {
  #chatApp header { padding-left: max(.75rem, env(safe-area-inset-left)); padding-right: max(.75rem, env(safe-area-inset-right)); }
}

/* ── Nav buttons on mobile (Start for free, Sign in) should never overflow ── */
@media (max-width: 380px) {
  nav .gradient-bg { padding-left: .75rem !important; padding-right: .75rem !important; font-size: 12px !important; }
}

/* ── Prevent iOS auto-zoom on textarea focus (font < 16px triggers zoom). ── */
@media (max-width: 640px) {
  #box, .auth-input, #modalEmail, #modalPass, #modalMfa,
  input[type="text"], input[type="email"], input[type="password"],
  input[type="number"], input[type="search"], input[type="tel"], textarea {
    font-size: 16px !important;
  }
}

/* ════════════════════════════════════════════════════════════════════════════
   POLISH v3 — refined sizing for dashboard + nav user button on mobile.
   The previous rules made many buttons 40px tall, which read as "chunky" on
   small screens. This block dials secondary buttons back to compact and
   tightens the dashboard cards/padding so the page feels considered.
   ════════════════════════════════════════════════════════════════════════════ */

/* ── Nav "member" button (avatar + credits + chevron) — desktop unchanged.
     On mobile: drop the credits text (no room), shrink avatar, compact padding. ── */
@media (max-width: 640px) {
  #navUserBtn { padding: 3px 9px 3px 3px !important; min-height: 32px !important; gap: 6px !important; }
  #navUserBtn #navAvatar { width: 24px !important; height: 24px !important; font-size: 10.5px !important; }
  #navUserBtn #navCredits { display: none !important; }
  #navUserBtn #navArrow { width: 11px !important; height: 11px !important; }
}

/* ── Sidebar user button in chat (Claude pattern) — compact on mobile ── */
@media (max-width: 640px) {
  #sidebarUserBtn { padding: 6px 8px !important; }
  #sidebarUserBtn .w-6 { width: 22px; height: 22px; }
  #sidebarUserBtn #userLabel { font-size: 12.5px; }
}

/* ── Dashboard: refined sizing on mobile ── */
@media (max-width: 640px) {
  /* Tighter outer padding so cards have more usable width. */
  #panel { padding-left: .75rem !important; padding-right: .75rem !important; padding-top: 1rem !important; }

  /* Header: title smaller, credits/models chips compact side-by-side. */
  #panel > .flex.flex-col.sm\:flex-row {
    margin-bottom: 1rem !important;
    gap: .75rem !important;
  }
  #panel > .flex.flex-col.sm\:flex-row h1 { font-size: 1.375rem !important; }
  #panel > .flex.flex-col.sm\:flex-row #email { font-size: 12px !important; }

  /* Credits + Models header chips: 2-col but compact (was big & blocky). */
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 > div {
    padding: 8px 12px !important;
    min-width: 0;
  }
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 > div > .text-xs {
    font-size: 10px !important;
  }
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 > div > .text-xl {
    font-size: 1.125rem !important;
  }

  /* Stats cards: tighter padding, smaller labels — but still 2-col. */
  .dash-panel .grid.grid-cols-2.lg\:grid-cols-4 { gap: 10px !important; }
  .dash-panel .grid.grid-cols-2.lg\:grid-cols-4 > div {
    padding: 14px !important;
    min-height: 78px !important;
  }
  .dash-panel .grid.grid-cols-2.lg\:grid-cols-4 .text-2xl { font-size: 1.25rem !important; }
  .dash-panel .grid.grid-cols-2.lg\:grid-cols-4 .text-xs { font-size: 10.5px !important; }

  /* Cards (panels) on every tab: tighter padding so content has room. */
  .dash-panel > .bg-\[\#161618\] { padding: 16px !important; margin-bottom: 14px !important; }
  .dash-panel h3.text-sm { font-size: 13px !important; }
  .dash-panel p.text-xs { font-size: 11.5px !important; line-height: 1.45; }

  /* Inputs inside dashboard cards: thinner border, slimmer padding. */
  .dash-panel input { padding: 8px 12px !important; font-size: 14px !important; min-height: 36px !important; }
  .dash-panel select { padding: 8px 12px !important; font-size: 14px !important; min-height: 36px !important; }

  /* Secondary buttons (Copy, Apply, etc.) — compact, NOT chunky. */
  .dash-panel button.bg-white\/5,
  .dash-panel button.bg-stone-100,
  .dash-panel button.bg-zinc-100 {
    padding: 8px 14px !important;
    font-size: 13px !important;
    min-height: 36px !important;
  }
  /* Primary actions (gradient-bg) stay full-touch-sized. */
  .dash-panel button.gradient-bg {
    padding: 10px 16px !important;
    font-size: 13px !important;
    min-height: 40px !important;
  }
  /* Tiny inline actions (Verify, Manage card, Enable MFA) — really compact. */
  .dash-panel .text-xs[onclick],
  .dash-panel button.text-xs {
    min-height: 30px !important;
    padding: 6px 12px !important;
  }
  /* Tab bar slim chips. */
  #dashTabs { gap: 0 !important; }

  /* Top-up packs: tighter cards, larger price for scan-ability. */
  #packs > div { padding: 10px 8px !important; }
  #packs .text-lg { font-size: 1rem !important; }

  /* Quick actions row (Open chat, Read docs, Top up): tighter card. */
  .dash-panel .grid.sm\:grid-cols-3 .dash-action { padding: 14px !important; }
}

/* ── Stats cards on phones can wrap to 1-col on very narrow (< 360px) ── */
@media (max-width: 359px) {
  .dash-panel .grid.grid-cols-2 { grid-template-columns: 1fr !important; }
  #panel > .flex.flex-col.sm\:flex-row .flex.items-center.gap-3 { grid-template-columns: 1fr 1fr !important; }
}

/* ── Auth modal: tone down the button height (was 46) to match the modal scale ── */
@media (max-width: 640px) {
  .auth-modal-card .auth-btn-primary { min-height: 44px !important; }
}

/* ===== NLC AI — white/blue SaaS theme layer v2 (2026-06-29) =====
   Applies ONLY to light pages (body without .nlc-dark). chat/dashboard keep their
   dark theme via .nlc-dark until their dedicated per-page redesign. Source: input.css. */
:root{--nlc-brand:#2563eb;--nlc-brand-2:#4f46e5;--nlc-brand-strong:#1d4ed8}
body:not(.nlc-dark).bg-sand-50,body:not(.nlc-dark) .bg-sand-50{background-color:#f8fafc!important}
body:not(.nlc-dark) .bg-\[\#161618\]{background-color:#ffffff!important}
body:not(.nlc-dark) .bg-\[\#0a0a0b\],body:not(.nlc-dark) .bg-\[\#0c0c0e\]{background-color:#f8fafc!important}
body:not(.nlc-dark) .bg-\[\#1a1418\]{background-color:#eff4ff!important}
body:not(.nlc-dark) .border-white\/5{border-color:#eef2f6!important}
body:not(.nlc-dark) .border-white\/10,body:not(.nlc-dark) .border-white\/15{border-color:#e2e8f0!important}
body:not(.nlc-dark) .text-zinc-300,body:not(.nlc-dark) .text-zinc-400{color:#475569!important}
body:not(.nlc-dark) .text-zinc-500,body:not(.nlc-dark) .text-zinc-600{color:#64748b!important}
body:not(.nlc-dark) .text-clay-300,body:not(.nlc-dark) .text-clay-400,body:not(.nlc-dark) .text-clay-500,body:not(.nlc-dark) .text-clay-600,body:not(.nlc-dark) .text-clay-700{color:var(--nlc-brand)!important}
body:not(.nlc-dark) .hover\:text-clay-300:hover{color:var(--nlc-brand-strong)!important}
body:not(.nlc-dark) .bg-clay-400,body:not(.nlc-dark) .bg-clay-500,body:not(.nlc-dark) .bg-clay-600{background-color:var(--nlc-brand)!important}
body:not(.nlc-dark) .bg-clay-50,body:not(.nlc-dark) .bg-clay-500\/10,body:not(.nlc-dark) .bg-clay-500\/15{background-color:#eff4ff!important}
body:not(.nlc-dark) .border-clay-200{border-color:#bfdbfe!important}
body:not(.nlc-dark) .border-clay-500,body:not(.nlc-dark) .border-clay-500\/30,body:not(.nlc-dark) .border-clay-500\/40,body:not(.nlc-dark) .border-clay-500\/50,body:not(.nlc-dark) .border-clay-500\/60{border-color:#93c5fd!important}
body:not(.nlc-dark) .gradient-text{background:linear-gradient(135deg,#2563eb,#4f46e5)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
body:not(.nlc-dark) .gradient-bg{background:linear-gradient(135deg,#2563eb,#4f46e5)!important}
body:not(.nlc-dark) .text-emerald-300,body:not(.nlc-dark) .text-emerald-400{color:#059669!important}
body:not(.nlc-dark) .text-zinc-100{color:#0f172a!important}
body:not(.nlc-dark) .text-zinc-200{color:#1e293b!important}
body:not(.nlc-dark) .bg-white\/5{background:#f1f5f9!important}
body:not(.nlc-dark) .hover\:bg-white\/10:hover,body:not(.nlc-dark) .hover\:bg-white\/5:hover{background:#e2e8f0!important}
body:not(.nlc-dark) .text-stone-100,body:not(.nlc-dark) .text-stone-200{color:#1e293b!important}
body:not(.nlc-dark) .bg-\[\#0a0a0b\]\/80{background-color:rgba(255,255,255,.85)!important}
body:not(.nlc-dark) .hover\:text-white:hover{color:#0f172a!important}
body:not(.nlc-dark) .nav-link{color:#64748b!important}
body:not(.nlc-dark) .nav-link:hover{background:#f1f5f9!important;color:#0f172a!important}
body:not(.nlc-dark) .nav-link.active{background:#eff4ff!important;color:#2563eb!important}
