*,: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:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,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}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.top-0{top:0}.top-1\/2{top:50%}.z-0{z-index:0}.z-50{z-index:50}.z-\[100\]{z-index:100}.col-span-full{grid-column:1/-1}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.-ml-2{margin-left:-.5rem}.-mt-2{margin-top:-.5rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.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}.me-1{margin-inline-end:.25rem}.me-2{margin-inline-end:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-2\.5{margin-right:.625rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.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}.aspect-\[16\/9\],.aspect-video{aspect-ratio:16/9}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-full{height:100%}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.max-h-80{max-height:20rem}.max-h-\[420px\]{max-height:420px}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-\[120px\]{min-height:120px}.min-h-\[13\.5rem\]{min-height:13.5rem}.min-h-\[180px\]{min-height:180px}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[3\.5rem\]{min-height:3.5rem}.min-h-\[88px\]{min-height:88px}.min-h-\[96px\]{min-height:96px}.min-h-full{min-height:100%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[7\.5rem\]{width:7.5rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[2\.5rem\]{min-width:2.5rem}.min-w-\[260px\]{min-width:260px}.min-w-\[640px\]{min-width:640px}.min-w-full{min-width:100%}.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-\[30rem\]{max-width:30rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.transform{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))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-\[8\.5rem\2c 1fr\]{grid-template-columns:8.5rem 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-2{row-gap:.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-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-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem*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-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*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))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-neutral-border>:not([hidden])~:not([hidden]){border-color:rgba(7,18,41,.2)}.divide-neutral-light>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(241 245 249/var(--tw-divide-opacity,1))}.self-center{align-self:center}.overflow-auto{overflow:auto}.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}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[2\.5rem\]{border-radius:2.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-accent\/25{border-color:rgba(13,94,234,.25)}.border-accent\/30{border-color:rgba(13,94,234,.3)}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-black\/20{border-color:rgba(0,0,0,.2)}.border-neutral-border{border-color:rgba(7,18,41,.2)}.border-neutral-border\/80{border-color:rgba(7,18,41,.8)}.border-neutral-gray\/20{border-color:rgba(7,18,41,.2)}.border-neutral-gray\/25{border-color:rgba(7,18,41,.25)}.border-neutral-gray\/30{border-color:rgba(7,18,41,.3)}.border-neutral-light{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.border-neutral-light\/60{border-color:rgba(241,245,249,.6)}.border-neutral-light\/80{border-color:rgba(241,245,249,.8)}.border-primary\/20{border-color:rgba(13,94,234,.2)}.border-primary\/25{border-color:rgba(13,94,234,.25)}.border-primary\/30{border-color:rgba(13,94,234,.3)}.border-secondary\/20{border-color:rgba(7,18,41,.2)}.border-transparent{border-color:transparent}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/25{border-color:hsla(0,0%,100%,.25)}.bg-accent{--tw-bg-opacity:1;background-color:rgb(13 94 234/var(--tw-bg-opacity,1))}.bg-accent\/10{background-color:rgba(13,94,234,.1)}.bg-accent\/15{background-color:rgba(13,94,234,.15)}.bg-accent\/5{background-color:rgba(13,94,234,.05)}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-neutral-dark{--tw-bg-opacity:1;background-color:rgb(7 18 41/var(--tw-bg-opacity,1))}.bg-neutral-gray\/40{background-color:rgba(7,18,41,.4)}.bg-neutral-light{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-neutral-light\/20{background-color:rgba(241,245,249,.2)}.bg-neutral-light\/30{background-color:rgba(241,245,249,.3)}.bg-neutral-light\/40{background-color:rgba(241,245,249,.4)}.bg-neutral-light\/50{background-color:rgba(241,245,249,.5)}.bg-neutral-light\/60{background-color:rgba(241,245,249,.6)}.bg-neutral-light\/80{background-color:rgba(241,245,249,.8)}.bg-neutral-light\/90{background-color:rgba(241,245,249,.9)}.bg-primary{--tw-bg-opacity:1;background-color:rgb(13 94 234/var(--tw-bg-opacity,1))}.bg-primary-dark{--tw-bg-opacity:1;background-color:rgb(7 18 41/var(--tw-bg-opacity,1))}.bg-primary\/10{background-color:rgba(13,94,234,.1)}.bg-primary\/15{background-color:rgba(13,94,234,.15)}.bg-primary\/5{background-color:rgba(13,94,234,.05)}.bg-primary\/50{background-color:rgba(13,94,234,.5)}.bg-secondary{--tw-bg-opacity:1;background-color:rgb(7 18 41/var(--tw-bg-opacity,1))}.bg-surface{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-surface\/40{background-color:hsla(0,0%,100%,.4)}.bg-surface\/80{background-color:hsla(0,0%,100%,.8)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/15{background-color:hsla(0,0%,100%,.15)}.bg-white\/50{background-color:hsla(0,0%,100%,.5)}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/70{background-color:hsla(0,0%,100%,.7)}.bg-\[radial-gradient\(ellipse_at_top_right\2c _var\(--tw-gradient-stops\)\)\]{background-image:radial-gradient(ellipse at top right,var(--tw-gradient-stops))}.bg-\[radial-gradient\(ellipse_at_top_right\2c rgba\(255\2c 255\2c 255\2c 0\.15\)\2c transparent_50\%\)\]{background-image:radial-gradient(ellipse at top right,hsla(0,0%,100%,.15),transparent 50%)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-neutral-dark{--tw-gradient-from:#071229 var(--tw-gradient-from-position);--tw-gradient-to:rgba(7,18,41,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-primary\/15{--tw-gradient-from:rgba(13,94,234,.15) var(--tw-gradient-from-position);--tw-gradient-to:rgba(13,94,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-neutral-light{--tw-gradient-to:rgba(241,245,249,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f1f5f9 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-primary{--tw-gradient-to:rgba(13,94,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0d5eea var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-primary-dark{--tw-gradient-to:#071229 var(--tw-gradient-to-position)}.to-primary-dark\/10{--tw-gradient-to:rgba(7,18,41,.1) var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.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-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.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-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-8{padding-bottom:2rem}.pl-0\.5{padding-left:.125rem}.pl-10{padding-left:2.5rem}.pl-12{padding-left:3rem}.pl-2\.5{padding-left:.625rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pr-1{padding-right:.25rem}.pr-4{padding-right:1rem}.pt-10{padding-top:2.5rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.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-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.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-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent{--tw-text-opacity:1;color:rgb(13 94 234/var(--tw-text-opacity,1))}.text-accent-dark{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-danger{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-neutral-dark,.text-neutral-gray{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.text-neutral-gray\/50{color:rgba(7,18,41,.5)}.text-neutral-gray\/55{color:rgba(7,18,41,.55)}.text-neutral-gray\/60{color:rgba(7,18,41,.6)}.text-neutral-gray\/70{color:rgba(7,18,41,.7)}.text-neutral-gray\/80{color:rgba(7,18,41,.8)}.text-neutral-gray\/90{color:rgba(7,18,41,.9)}.text-neutral-light\/90{color:rgba(241,245,249,.9)}.text-primary{--tw-text-opacity:1;color:rgb(13 94 234/var(--tw-text-opacity,1))}.text-primary-dark{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.text-primary\/30{color:rgba(13,94,234,.3)}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-secondary{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.text-secondary\/30{color:rgba(7,18,41,.3)}.text-secondary\/35{color:rgba(7,18,41,.35)}.text-secondary\/40{color:rgba(7,18,41,.4)}.text-secondary\/50{color:rgba(7,18,41,.5)}.text-secondary\/60{color:rgba(7,18,41,.6)}.text-secondary\/65{color:rgba(7,18,41,.65)}.text-secondary\/70{color:rgba(7,18,41,.7)}.text-secondary\/75{color:rgba(7,18,41,.75)}.text-secondary\/80{color:rgba(7,18,41,.8)}.text-secondary\/85{color:rgba(7,18,41,.85)}.text-secondary\/90{color:rgba(7,18,41,.9)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-primary{accent-color:#0d5eea}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.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-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-neutral-dark\/10{--tw-shadow-color:rgba(7,18,41,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-primary\/15{--tw-shadow-color:rgba(13,94,234,.15);--tw-shadow:var(--tw-shadow-colored)}.shadow-primary\/20{--tw-shadow-color:rgba(13,94,234,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-primary\/25{--tw-shadow-color:rgba(13,94,234,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-primary\/30{--tw-shadow-color:rgba(13,94,234,.3);--tw-shadow:var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--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(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-2{--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)}.ring-inset{--tw-ring-inset:inset}.ring-neutral-dark\/\[0\.06\]{--tw-ring-color:rgba(7,18,41,.06)}.ring-neutral-light{--tw-ring-opacity:1;--tw-ring-color:rgb(241 245 249/var(--tw-ring-opacity,1))}.ring-primary{--tw-ring-opacity:1;--tw-ring-color:rgb(13 94 234/var(--tw-ring-opacity,1))}.ring-primary\/20{--tw-ring-color:rgba(13,94,234,.2)}.ring-primary\/25{--tw-ring-color:rgba(13,94,234,.25)}.ring-transparent{--tw-ring-color:transparent}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-offset-1{--tw-ring-offset-width:1px}.ring-offset-2{--tw-ring-offset-width:2px}.blur{--tw-blur:blur(8px)}.blur,.invert{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)}.invert{--tw-invert:invert(100%)}.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-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-sm,.backdrop-filter{-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-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.marker\:content-none ::marker{--tw-content:none;content:var(--tw-content)}.marker\:content-none::marker{--tw-content:none;content:var(--tw-content)}.file\:mr-3::file-selector-button{margin-right:.75rem}.file\:mr-4::file-selector-button{margin-right:1rem}.file\:rounded-lg::file-selector-button{border-radius:.5rem}.file\:rounded-xl::file-selector-button{border-radius:.75rem}.file\:border-0::file-selector-button{border-width:0}.file\:bg-primary\/10::file-selector-button{background-color:rgba(13,94,234,.1)}.file\:px-3::file-selector-button{padding-left:.75rem;padding-right:.75rem}.file\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\:py-2::file-selector-button{padding-top:.5rem;padding-bottom:.5rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-bold::file-selector-button{font-weight:700}.file\:font-semibold::file-selector-button{font-weight:600}.file\:text-primary-dark::file-selector-button{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.placeholder\:text-secondary\/40::-moz-placeholder{color:rgba(7,18,41,.4)}.placeholder\:text-secondary\/40::placeholder{color:rgba(7,18,41,.4)}.last\:mb-0:last-child{margin-bottom:0}.last\:border-0:last-child{border-width:0}.last\:border-r-0:last-child{border-right-width:0}.open\:shadow-sm[open]{--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\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{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))}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:rotate-6:hover{--tw-rotate:6deg;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))}.hover\:border-accent\/30:hover{border-color:rgba(13,94,234,.3)}.hover\:border-neutral-light:hover{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.hover\:border-primary:hover{--tw-border-opacity:1;border-color:rgb(13 94 234/var(--tw-border-opacity,1))}.hover\:border-primary\/15:hover{border-color:rgba(13,94,234,.15)}.hover\:border-primary\/20:hover{border-color:rgba(13,94,234,.2)}.hover\:border-primary\/30:hover{border-color:rgba(13,94,234,.3)}.hover\:border-primary\/35:hover{border-color:rgba(13,94,234,.35)}.hover\:bg-accent\/10:hover{background-color:rgba(13,94,234,.1)}.hover\:bg-accent\/5:hover{background-color:rgba(13,94,234,.05)}.hover\:bg-neutral-light:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-neutral-light\/30:hover{background-color:rgba(241,245,249,.3)}.hover\:bg-neutral-light\/40:hover{background-color:rgba(241,245,249,.4)}.hover\:bg-neutral-light\/50:hover{background-color:rgba(241,245,249,.5)}.hover\:bg-neutral-light\/90:hover{background-color:rgba(241,245,249,.9)}.hover\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(7 18 41/var(--tw-bg-opacity,1))}.hover\:bg-primary\/10:hover{background-color:rgba(13,94,234,.1)}.hover\:bg-primary\/15:hover{background-color:rgba(13,94,234,.15)}.hover\:bg-primary\/5:hover{background-color:rgba(13,94,234,.05)}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/20:hover{background-color:hsla(0,0%,100%,.2)}.hover\:bg-white\/25:hover{background-color:hsla(0,0%,100%,.25)}.hover\:text-neutral-dark:hover,.hover\:text-neutral-gray:hover{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.hover\:text-neutral-gray\/90:hover{color:rgba(7,18,41,.9)}.hover\:text-primary:hover{--tw-text-opacity:1;color:rgb(13 94 234/var(--tw-text-opacity,1))}.hover\:text-primary-dark:hover{--tw-text-opacity:1;color:rgb(7 18 41/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}.hover\:shadow-md:hover{--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);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:ring-1:hover{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.hover\:ring-neutral-dark\/10:hover{--tw-ring-color:rgba(7,18,41,.1)}.hover\:ring-primary\/25:hover{--tw-ring-color:rgba(13,94,234,.25)}.hover\:file\:bg-primary\/10::file-selector-button:hover{background-color:rgba(13,94,234,.1)}.hover\:file\:bg-primary\/20::file-selector-button:hover{background-color:rgba(13,94,234,.2)}.focus\:border-primary:focus{--tw-border-opacity:1;border-color:rgb(13 94 234/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-2:focus,.focus\:ring-4:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-4: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(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-inset:focus{--tw-ring-inset:inset}.focus\:ring-accent\/40:focus{--tw-ring-color:rgba(13,94,234,.4)}.focus\:ring-neutral-dark\/30:focus{--tw-ring-color:rgba(7,18,41,.3)}.focus\:ring-primary:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(13 94 234/var(--tw-ring-opacity,1))}.focus\:ring-primary\/10:focus{--tw-ring-color:rgba(13,94,234,.1)}.focus\:ring-primary\/15:focus{--tw-ring-color:rgba(13,94,234,.15)}.focus\:ring-primary\/20:focus{--tw-ring-color:rgba(13,94,234,.2)}.focus\:ring-primary\/30:focus{--tw-ring-color:rgba(13,94,234,.3)}.focus\:ring-primary\/40:focus{--tw-ring-color:rgba(13,94,234,.4)}.group[open] .group-open\:rotate-180{--tw-rotate:180deg}.group:hover .group-hover\:translate-x-1,.group[open] .group-open\:rotate-180{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))}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:scale-\[1\.02\]{--tw-scale-x:1.02;--tw-scale-y:1.02;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))}.group:hover .group-hover\:border-primary\/15{border-color:rgba(13,94,234,.15)}.group:hover .group-hover\:bg-accent{--tw-bg-opacity:1;background-color:rgb(13 94 234/var(--tw-bg-opacity,1))}.group:hover .group-hover\:bg-neutral-dark{--tw-bg-opacity:1;background-color:rgb(7 18 41/var(--tw-bg-opacity,1))}.group:hover .group-hover\:bg-neutral-light{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.group:hover .group-hover\:bg-primary{--tw-bg-opacity:1;background-color:rgb(13 94 234/var(--tw-bg-opacity,1))}.group:hover .group-hover\:bg-primary\/10{background-color:rgba(13,94,234,.1)}.group:hover .group-hover\:text-primary,.group:hover .group-hover\:text-primary-light{--tw-text-opacity:1;color:rgb(13 94 234/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .group-hover\:ring-primary\/25{--tw-ring-color:rgba(13,94,234,.25)}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:mt-4{margin-top:1rem}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:table-cell{display:table-cell}.sm\:h-24{height:6rem}.sm\:w-24{width:6rem}.sm\:w-56{width:14rem}.sm\:w-auto{width:auto}.sm\:max-w-xl{max-width:36rem}.sm\:flex-1{flex:1 1 0%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:items-stretch{align-items:stretch}.sm\:justify-between{justify-content:space-between}.sm\:gap-0{gap:0}.sm\:gap-2{gap:.5rem}.sm\:gap-4{gap:1rem}.sm\:p-1\.5{padding:.375rem}.sm\:p-10{padding:2.5rem}.sm\:p-5{padding:1.25rem}.sm\:p-8{padding:2rem}.sm\:px-12{padding-left:3rem;padding-right:3rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.sm\:py-16{padding-top:4rem;padding-bottom:4rem}.sm\:py-20{padding-top:5rem;padding-bottom:5rem}.sm\:py-24{padding-top:6rem;padding-bottom:6rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sm\:text-center{text-align:center}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:ml-6{margin-left:1.5rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:flex-shrink-0{flex-shrink:0}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-10{gap:2.5rem}.md\: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))}.md\:bg-white\/90{background-color:hsla(0,0%,100%,.9)}.md\:text-left{text-align:left}.md\:backdrop-blur-md{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}}@media (min-width:1024px){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,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\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:gap-12{gap:3rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-28{padding-top:7rem;padding-bottom:7rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}/* Routerpedia — public design tokens (align with Tailwind theme). */
:root {
    /* Brand: #1E2A38 · #2A9D8F · #E0F2F1 · #EE9C46 (+ neutrals below) */
    --brand-ink: #1e2a38;
    --brand-primary: #2a9d8f;
    --brand-primary-deep: #20766c;
    --brand-mint: #e0f2f1;
    --brand-accent: #ee9c46;
    --brand-charcoal: #1e2a38;
    --brand-slate: #6b7280;
    --surface-base: #f3f4f6;
    --surface-panel: #ffffff;

    /* Main site header / nav (shp-*) */
    --shp-header-h: 4.25rem;
    --shp-ink: var(--brand-ink);
    --shp-primary: var(--brand-primary);
    --shp-primary-dark: var(--brand-primary-deep);
    --shp-muted: var(--brand-slate);
    --shp-border: #e5e7eb;
    --shp-nav-bg: rgba(255, 255, 255, 0.92);
    --shp-z-backdrop: 1000;
    --shp-z-drawer: 1010;
    --shp-z-dropdown: 1020;
}


/**
* @license
*
* Font Family: General Sans
* Designed by: Frode Helland
* URL: https://www.fontshare.com/fonts/general-sans
* © 2026 Indian Type Foundry
*
* General Sans Extralight 
* General Sans ExtralightItalic 
* General Sans Light 
* General Sans LightItalic 
* General Sans Regular 
* General Sans Italic 
* General Sans Medium 
* General Sans MediumItalic 
* General Sans Semibold 
* General Sans SemiboldItalic 
* General Sans Bold 
* General Sans BoldItalic 
* General Sans Variable (Variable font)
* General Sans VariableItalic (Variable font)

*
*/
/*
 * Public site uses system fonts only.
 * Loading GeneralSans after first paint (even with font-display:optional + overrides)
 * was still contributing to CLS on the homepage hero and IP section.
 */
body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background: var(--surface-base);
    color: var(--brand-charcoal);
}

.font-display {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.glass-nav {
    background: rgba(255, 255, 255, 0.8);
}

@media (min-width: 768px) {
    .glass-nav {
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
    }
}

/* Shared public layout rhythm */
.section-public {
    padding-top: clamp(3.5rem, 6vw, 6rem);
    padding-bottom: clamp(3.5rem, 6vw, 6rem);
}

.section-tight {
    padding-top: clamp(2.25rem, 4vw, 3.5rem);
    padding-bottom: clamp(2.25rem, 4vw, 3.5rem);
}

.hero-surface {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #e5e7eb;
    background:
        radial-gradient(ellipse 120% 90% at 50% -25%, rgba(42, 157, 143, 0.12), transparent 58%),
        radial-gradient(circle at 12% 20%, rgba(238, 156, 70, 0.08), transparent 40%),
        radial-gradient(circle at 88% 18%, rgba(30, 42, 56, 0.06), transparent 38%),
        radial-gradient(circle at 50% 100%, rgba(42, 157, 143, 0.05), transparent 45%),
        var(--surface-panel);
}

.badge-verified {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    border-radius: 999px;
    border: 1px solid rgba(42, 157, 143, 0.28);
    background: rgba(224, 242, 241, 0.9);
    padding: 0.32rem 0.8rem;
    color: var(--brand-primary-deep);
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.public-kicker {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--brand-primary);
}

.public-title {
    letter-spacing: -0.03em;
    line-height: 1.08;
    color: var(--brand-charcoal);
}

.public-body {
    color: #6b7280;
    line-height: 1.7;
}

.public-card {
    border-radius: 1.25rem;
    border: 1px solid #e5e7eb;
    background: var(--surface-panel);
    box-shadow: 0 14px 28px -22px rgba(35, 31, 32, 0.18);
}

.public-card-muted {
    border-radius: 1.25rem;
    border: 1px solid #e5e7eb;
    background: #f3f4f6;
}

.btn-public-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--brand-primary);
    padding: 0.72rem 1.45rem;
    color: #fff;
    font-size: 0.92rem;
    font-weight: 700;
    transition: background 180ms ease, transform 180ms ease;
}

.btn-public-primary:hover {
    background: var(--brand-primary-deep);
}

.btn-public-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid #e5e7eb;
    background: #fff;
    padding: 0.72rem 1.45rem;
    color: var(--brand-charcoal);
    font-size: 0.92rem;
    font-weight: 700;
    transition: border-color 180ms ease, background 180ms ease;
}

.btn-public-secondary:hover {
    border-color: #d1d5db;
    background: #f3f4f6;
}

.btn-public-primary:focus-visible,
.btn-public-secondary:focus-visible {
    outline: 2px solid var(--brand-primary);
    outline-offset: 2px;
}

.lift-hover {
    transform: translateY(0);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.lift-hover:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 36px -24px rgba(15, 23, 42, 0.45);
}

/* Homepage: property cards & marquee */
.home-property-card {
    border-radius: 1.25rem;
    transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
}

.home-property-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -12px rgba(15, 23, 42, 0.12);
}

.home-property-card:focus-within {
    outline: 2px solid var(--brand-primary);
    outline-offset: 3px;
}

@keyframes home-marquee {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

.home-marquee {
    overflow: hidden;
    mask-image: linear-gradient(to right, transparent, black 8%, black 92%, transparent);
}

.home-marquee-track {
    display: flex;
    width: max-content;
    gap: 3.5rem;
    animation: home-marquee 45s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .home-marquee-track {
        animation: none;
    }
}

.home-cta-pattern {
    background-image: radial-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px);
    background-size: 18px 18px;
}

/* Scroll reveal (landing) - respects reduced motion via JS fallback */
.public-reveal {
    opacity: 0;
    transform: translateY(14px);
    transition:
        opacity 0.65s ease,
        transform 0.65s ease;
}

.public-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .public-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* Properties index: advanced filters <details> (mobile disclosure, desktop always open via JS) */
.properties-filter-advanced > summary {
    list-style: none;
}

.properties-filter-advanced > summary::-webkit-details-marker {
    display: none;
}

.properties-filter-advanced[open] .properties-filter-advanced__chevron {
    transform: rotate(180deg);
}

.properties-filter-advanced__chevron {
    transition: transform 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
    .properties-filter-advanced__chevron {
        transition: none;
    }
}

/* Legacy user marketplace (Bootstrap class names) — map to Routerpedia palette */
.text-emerald {
    color: var(--brand-primary) !important;
}

.text-dark-emerald {
    color: var(--brand-ink) !important;
}

.bg-emerald {
    background-color: var(--brand-primary) !important;
    color: #fff !important;
}

.bg-dark-emerald {
    background-color: var(--brand-ink) !important;
    color: #fff !important;
}

.btn-emerald,
.btn-emerald:focus {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
    color: #fff;
}

.btn-emerald:hover {
    background-color: var(--brand-primary-deep);
    border-color: var(--brand-primary-deep);
    color: #fff;
}

.nav-pills-emerald .nav-link.active,
.nav-pills-emerald .show > .nav-link {
    background-color: var(--brand-primary) !important;
    color: #fff !important;
}

.form-control-emerald:focus {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(42, 157, 143, 0.22);
}

.user-dashboard-wrapper .alert-success {
    background-color: rgba(224, 242, 241, 0.95);
    color: var(--brand-ink);
    border-color: rgba(42, 157, 143, 0.35);
}

.user-dashboard-wrapper .alert-danger {
    background-color: var(--surface-base);
    color: var(--brand-ink);
    border-color: #d1d5db;
}

.bg-accent-subtle {
    background-color: rgba(238, 156, 70, 0.14) !important;
}

.text-accent-routerpedia {
    color: var(--brand-accent) !important;
}

/* -------------------------------------------------------------------------- */
/* Main site header — responsive nav (plain CSS; also used with Tailwind)     */
/* -------------------------------------------------------------------------- */

body.shp-nav--noscroll {
    overflow: hidden;
}

.shp-site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    border-bottom: 1px solid rgba(229, 231, 235, 0.8);
    background: var(--shp-nav-bg);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.shp-site-header__bar {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.75rem;
    max-width: 80rem;
    margin: 0 auto;
    min-height: var(--shp-header-h);
    padding: 0 1rem;
}

@media (min-width: 640px) {
    .shp-site-header__bar {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}

.shp-site-header__brand {
    display: block;
    flex-shrink: 0;
}

.shp-site-header__brand img {
    max-width: 160px;
    height: auto;
    display: block;
    vertical-align: middle;
}

.shp-nav-desktop {
    display: none;
    flex: 1;
    justify-content: center;
    padding: 0 0.5rem;
}

@media (min-width: 768px) {
    .shp-nav-desktop {
        display: flex;
    }
}

.shp-nav-pill {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem;
    border: 1px solid rgba(107, 114, 128, 0.15);
    border-radius: 9999px;
    background: rgba(30, 42, 56, 0.06);
}

.shp-nav-pill a {
    display: inline-block;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--shp-ink);
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s, box-shadow 0.15s;
}

.shp-nav-pill a:hover {
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

.shp-header-actions {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-left: auto;
}

@media (min-width: 640px) {
    .shp-header-actions {
        gap: 0.5rem;
    }
}

.shp-header-actions a {
    text-decoration: none;
}

.shp-link-desktop {
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--shp-ink);
    border: 1px solid transparent;
    transition: background 0.15s;
    white-space: nowrap;
}

.shp-link-desktop:hover {
    background: #f3f4f6;
}

.shp-link-desktop--ghost {
    border-color: #e5e7eb;
    background: #fff;
}

.shp-link-desktop--primary {
    background: var(--shp-primary);
    color: #fff;
    padding-left: 1rem;
    padding-right: 1rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.shp-link-desktop--primary:hover {
    background: var(--shp-primary-dark);
    color: #fff;
}

.shp-bell {
    position: relative;
    display: none;
    padding: 0.625rem;
    border-radius: 9999px;
    color: var(--shp-muted);
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

.shp-bell:hover {
    background: #f3f4f6;
    color: var(--shp-primary);
}

@media (min-width: 640px) {
    .shp-bell--show {
        display: inline-flex;
    }
}

.shp-bell__badge {
    position: absolute;
    right: 0.2rem;
    top: 0.2rem;
    min-width: 1rem;
    height: 1rem;
    padding: 0 0.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: #ee9c46;
    font-size: 10px;
    font-weight: 700;
    color: #fff;
}

.shp-menu-wrap {
    position: relative;
    flex-shrink: 0;
}

/* Desktop already has center navigation; keep hamburger only for mobile. */
@media (min-width: 768px) {
    .shp-menu-wrap {
        display: none;
    }
}

.shp-menu-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 1px solid #e5e7eb;
    border-radius: 9999px;
    background: #fff;
    color: var(--shp-ink);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    cursor: pointer;
    transition: box-shadow 0.15s;
}

.shp-menu-btn:hover {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.shp-menu-btn:focus-visible {
    outline: 2px solid var(--shp-primary);
    outline-offset: 2px;
}

.shp-menu-btn i {
    font-size: 1.25rem;
    line-height: 1;
}

.shp-dropdown {
    position: absolute;
    right: 0;
    top: 100%;
    z-index: var(--shp-z-dropdown);
    margin-top: 0.5rem;
    min-width: 14rem;
    max-height: 80vh;
    overflow-y: auto;
    padding: 0.5rem 0;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.08);
    list-style: none;
    display: none;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity 0.2s, transform 0.2s;
}

.shp-dropdown.is-open {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 767.98px) {
    .shp-dropdown {
        display: none !important;
        visibility: hidden;
    }
}

.shp-dropdown a {
    display: block;
    padding: 0.65rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--shp-ink);
    text-decoration: none;
}

.shp-dropdown a:hover {
    background: #f3f4f6;
}

.shp-m-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: var(--shp-z-backdrop);
    background: rgba(0, 0, 0, 0.4);
    -webkit-tap-highlight-color: transparent;
}

.shp-m-backdrop.is-open:not([hidden]) {
    display: block;
}

/* Drawer/backdrop are siblings of <header> so position:fixed is not broken by header backdrop-filter */
.shp-m-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: var(--shp-z-drawer);
    width: min(88vw, 24rem);
    max-width: 100%;
    height: 100%;
    max-height: 100vh;
    max-height: 100dvh;
    padding-right: env(safe-area-inset-right, 0);
    background: #fff;
    border-left: 1px solid #e5e7eb;
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
    transform: translateX(100%);
    transition: transform 0.28s ease, visibility 0.28s ease;
    will-change: transform;
    display: flex;
    flex-direction: column;
    /* Keep closed drawer out of a11y/focus trees (not just off-screen). */
    visibility: hidden;
    pointer-events: none;
}

.shp-m-drawer.is-open {
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
}

@media (min-width: 768px) {
    .shp-m-backdrop,
    .shp-m-drawer {
        display: none !important;
    }
}

.shp-m-drawer__head {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e5e7eb;
    background: #fff;
}

.shp-m-drawer__head strong {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--shp-ink);
}

.shp-m-drawer__close {
    display: inline-flex;
    padding: 0.5rem;
    border: none;
    border-radius: 9999px;
    background: transparent;
    color: var(--shp-muted);
    cursor: pointer;
}

.shp-m-drawer__close:hover {
    background: #f3f4f6;
}

.shp-m-drawer__body {
    flex: 1;
    overflow-y: auto;
    padding: 0.5rem 0.5rem 1.5rem;
    -webkit-overflow-scrolling: touch;
}

.shp-m-drawer__link {
    display: flex;
    align-items: center;
    padding: 0.75rem 0.75rem;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--shp-ink);
    text-decoration: none;
}

.shp-m-drawer__link:hover {
    background: #f3f4f6;
}

.shp-m-drawer__link--muted {
    font-weight: 500;
    color: var(--shp-muted);
}

.shp-m-drawer__hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 0.75rem 0.5rem;
}

.shp-m-drawer__btn-primary {
    display: flex;
    margin: 0.25rem 0.5rem 0;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    padding: 0.75rem 1rem;
    background: var(--shp-primary);
    color: #fff !important;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
}

.shp-m-drawer__btn-primary:hover {
    background: var(--shp-primary-dark);
}

/* Signed-in user (desktop bar) */
.shp-user-desktop {
    display: none;
    align-items: center;
    gap: 0.5rem;
    max-width: 10.5rem;
    margin-right: 0.125rem;
}

.shp-user-desktop__avatar {
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: rgba(42, 157, 143, 0.14);
    color: var(--shp-primary);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
}

.shp-user-desktop__meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.1rem;
    line-height: 1.2;
}

.shp-user-desktop__name {
    max-width: 100%;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--shp-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.shp-user-desktop__role {
    font-size: 0.625rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--shp-muted);
}

/* ----- User dropdown (Profile / Settings / Logout) ----- */
.shp-user-dd {
    position: relative;
    display: none;
}

@media (min-width: 640px) {
    .shp-user-dd {
        display: block;
    }
}

.shp-user-dd__summary {
    list-style: none;
    cursor: pointer;
}

/* Hide native marker on <summary> */
.shp-user-dd__summary::-webkit-details-marker {
    display: none;
}

.shp-user-dd__summary:focus-visible {
    outline: 2px solid var(--shp-primary);
    outline-offset: 2px;
    border-radius: 9999px;
}

.shp-user-dd__chev {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--shp-muted);
    padding-left: 0.125rem;
}

.shp-user-dd__chev i {
    font-size: 1rem;
    line-height: 1;
}

.shp-user-dd__menu {
    position: absolute;
    right: 0;
    top: calc(100% + 0.5rem);
    z-index: var(--shp-z-dropdown);

    width: 16rem;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.08);
    padding: 0.5rem;

    display: none;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity 0.15s, transform 0.15s;
}

/* details[open] state toggles menu visibility */
.shp-user-dd[open] .shp-user-dd__menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

.shp-user-dd__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;

    width: 100%;
    padding: 0.65rem 0.85rem;
    border-radius: 0.75rem;

    text-decoration: none;
    color: var(--shp-ink);
    font-size: 0.875rem;
    font-weight: 600;

    transition: background 0.15s, color 0.15s;
}

.shp-user-dd__item:hover {
    background: #f3f4f6;
}

.shp-user-dd__item--danger:hover {
    background: rgba(42, 157, 143, 0.12);
}

.shp-user-dd__badge {
    min-width: 1rem;
    height: 1rem;
    padding: 0 0.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 9999px;
    background: #ee9c46;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
}

/* Signed-in user (mobile drawer) */
.shp-m-drawer__user-card {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin: 0 0.5rem 0.75rem;
    padding: 0.75rem 0.75rem;
    border-radius: 0.875rem;
    border: 1px solid rgba(229, 231, 235, 0.95);
    background: rgba(30, 42, 56, 0.04);
}

.shp-m-drawer__user-avatar {
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: rgba(42, 157, 143, 0.14);
    color: var(--shp-primary);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1;
}

.shp-m-drawer__user-text {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.35rem;
}

.shp-m-drawer__user-name {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--shp-ink);
    line-height: 1.25;
    word-break: break-word;
}

.shp-m-drawer__user-role {
    display: inline-block;
    font-size: 0.625rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--shp-primary-dark);
    background: rgba(42, 157, 143, 0.12);
    padding: 0.2rem 0.5rem;
    border-radius: 9999px;
}

.shp-m-drawer__user-email {
    font-size: 0.75rem;
    color: var(--shp-muted);
    word-break: break-all;
    line-height: 1.35;
}

@media (min-width: 640px) {
    .shp-link-desktop {
        display: inline-flex;
    }

    .shp-user-desktop {
        display: flex;
    }
}
/* Public landing — brand tokens */
:root {
    --rp-primary: #0d5eea;
    --rp-secondary: #071229;
    --rp-border: rgba(7, 18, 41, 0.2);
    /* Muted text that still meets WCAG AA (~4.5:1) on white / neutral-light */
    --rp-muted: #3f4a5a;
}

/*
 * Tailwind text-secondary/50 ≈ 3.5:1 on white (fails AA for small text).
 * Remap to a solid muted color used site-wide for meta / labels.
 */
.text-secondary\/50 {
    --tw-text-opacity: 1;
    color: var(--rp-muted) !important;
}

/* white/85 on #0D5EEA fails AA for body text — force solid white on primary panels */
.bg-primary .text-white\/85,
.bg-primary p.text-white\/85 {
    --tw-text-opacity: 1;
    color: #fff !important;
}

/* Comfortable touch targets (≈44×44 CSS px) for dense card/table links */
.landing-card h3 a,
.touch-target {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}

table a.touch-target,
td a.touch-target {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

footer nav a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}

.landing-hero {
    background:
        radial-gradient(ellipse 80% 60% at 50% -10%, rgba(13, 94, 234, 0.12), transparent),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 55%);
}

/* Stable homepage bands — avoid late height changes shifting following sections */
.landing-hero > .mx-auto {
    min-height: 22rem;
}
@media (min-width: 640px) {
    .landing-hero > .mx-auto {
        min-height: 26rem;
    }
}
@media (min-width: 1024px) {
    .landing-hero > .mx-auto {
        min-height: 28rem;
    }
}

#ip-pages .mt-10 {
    min-height: 14rem;
}

#ip-pages .landing-card {
    min-height: 13.5rem;
}

/* Fixed slot so logos cannot expand the card after download (CLS) */
.landing-brand-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 7.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    overflow: hidden;
}

.landing-brand-logo img {
    display: block;
    width: auto;
    height: 2.5rem;
    max-width: 100%;
    object-fit: contain;
}

.landing-search input {
    border: 1px solid var(--rp-border);
}

.landing-search input:focus {
    border-color: rgba(13, 94, 234, 0.5);
    outline: 2px solid rgba(13, 94, 234, 0.12);
    outline-offset: 0;
}

.landing-card {
    border: 1px solid var(--rp-border);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.landing-card:hover {
    border-color: rgba(13, 94, 234, 0.35);
    box-shadow: 0 12px 40px -12px rgba(7, 18, 41, 0.12);
}

@media (hover: hover) and (pointer: fine) {
    .landing-card:hover {
        transform: translateY(-2px);
    }
}

/* Guide / blog / IP article body (CKEditor HTML) — undo Tailwind Preflight resets */
.guide-prose {
    color: rgba(7, 18, 41, 0.85);
    line-height: 1.75;
    font-size: 1.0625rem;
}

.guide-prose > *:first-child {
    margin-top: 0;
}

.guide-prose h1,
.guide-prose h2,
.guide-prose h3,
.guide-prose h4,
.guide-prose h5,
.guide-prose h6 {
    color: var(--rp-secondary);
    font-weight: 700;
    line-height: 1.3;
    margin-top: 1.75em;
    margin-bottom: 0.5em;
}

.guide-prose h1 { font-size: 1.875rem; }
.guide-prose h2 { font-size: 1.5rem; }
.guide-prose h3 { font-size: 1.25rem; }
.guide-prose h4 { font-size: 1.125rem; }

.guide-prose p {
    margin: 0 0 1em;
    line-height: 1.75;
    color: rgba(7, 18, 41, 0.85);
}

.guide-prose ul,
.guide-prose ol {
    margin: 1em 0;
    padding-left: 1.75em;
    list-style-position: outside;
}

.guide-prose ul {
    list-style-type: disc;
}

.guide-prose ol {
    list-style-type: decimal;
}

.guide-prose ul ul {
    list-style-type: circle;
    margin: 0.35em 0;
}

.guide-prose ul ul ul {
    list-style-type: square;
}

.guide-prose ol ol {
    list-style-type: lower-alpha;
    margin: 0.35em 0;
}

.guide-prose ol ol ol {
    list-style-type: lower-roman;
}

.guide-prose li {
    margin-bottom: 0.4em;
    padding-left: 0.25em;
}

.guide-prose li > p {
    margin-bottom: 0.4em;
}

.guide-prose li > ul,
.guide-prose li > ol {
    margin-top: 0.35em;
    margin-bottom: 0.35em;
}

.guide-prose a {
    color: var(--rp-primary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.guide-prose a:hover {
    color: #0a4bc0;
}

.guide-prose strong,
.guide-prose b {
    color: var(--rp-secondary);
    font-weight: 700;
}

.guide-prose em,
.guide-prose i {
    font-style: italic;
}

.guide-prose blockquote {
    margin: 1.25em 0;
    padding: 0.75em 1em 0.75em 1.25em;
    border-left: 4px solid rgba(13, 94, 234, 0.45);
    background: rgba(13, 94, 234, 0.04);
    color: rgba(7, 18, 41, 0.8);
    border-radius: 0 0.5rem 0.5rem 0;
}

.guide-prose blockquote p:last-child {
    margin-bottom: 0;
}

.guide-prose hr {
    border: 0;
    border-top: 1px solid rgba(7, 18, 41, 0.15);
    margin: 2em 0;
}

.guide-prose img,
.guide-prose figure img {
    max-width: 100%;
    height: auto;
    border-radius: 0.75rem;
    margin: 1.5em 0;
}

.guide-prose figure {
    margin: 1.5em 0;
}

.guide-prose figcaption {
    margin-top: 0.5em;
    font-size: 0.875rem;
    color: rgba(7, 18, 41, 0.55);
    text-align: center;
}

.guide-prose pre,
.guide-prose code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.9em;
    background: #f1f5f9;
    border-radius: 0.25rem;
}

.guide-prose code {
    padding: 0.15em 0.35em;
}

.guide-prose pre {
    padding: 1rem;
    overflow-x: auto;
    margin: 1em 0;
}

.guide-prose pre code {
    padding: 0;
    background: transparent;
}

/* Tables (CKEditor figure.table / plain table) */
.guide-prose .table,
.guide-prose figure.table {
    display: block;
    width: 100%;
    overflow-x: auto;
    margin: 1.5em 0;
}

.guide-prose table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 0.95em;
    margin: 1.5em 0;
    border: 1px solid rgba(7, 18, 41, 0.15);
    border-radius: 0.5rem;
    overflow: hidden;
}

.guide-prose figure.table > table {
    margin: 0;
}

.guide-prose th,
.guide-prose td {
    border: 1px solid rgba(7, 18, 41, 0.15);
    padding: 0.65em 0.85em;
    text-align: left;
    vertical-align: top;
    color: rgba(7, 18, 41, 0.85);
}

.guide-prose th {
    background: #f1f5f9;
    font-weight: 700;
    color: var(--rp-secondary);
}

.guide-prose tr:nth-child(even) td {
    background: rgba(241, 245, 249, 0.45);
}

.guide-prose thead th {
    background: #e8eef7;
}

/* Static pages (privacy, terms, about) */
.prose-page h2 {
    color: var(--rp-secondary);
    font-weight: 700;
}

.prose-page h3 {
    color: var(--rp-secondary);
    font-weight: 700;
}

.prose-page p {
    margin-bottom: 0;
}

.prose-page a {
    color: var(--rp-primary);
    text-decoration: underline;
}

.prose-page ul,
.prose-page ol {
    margin: 0.75em 0;
    padding-left: 1.5em;
}

.prose-page ul {
    list-style-type: disc;
}

.prose-page ol {
    list-style-type: decimal;
}

.prose-page li {
    line-height: 1.65;
    margin-bottom: 0.35em;
}

.prose-page strong {
    color: var(--rp-secondary);
    font-weight: 700;
}

/* Icon box reserve (glyphs in icons.min.css) — prevents CLS when icons load async */
[class^="ri-"],[class*=" ri-"]{position:relative;display:inline-block;width:1em;height:1em;line-height:1;vertical-align:-.125em;flex-shrink:0}
[class^="ri-"]:before,[class*=" ri-"]:before{content:"";display:block;width:100%;height:100%}

/* Mobile perf: solid header, no backdrop-filter cost */
@media (max-width:767.98px){
  .backdrop-blur-md,.backdrop-blur{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    background-color:#fff!important;
  }
}
