/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
 @layer properties{
    @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){
        *,:before,:after,::backdrop{
            --tw-translate-x:0;
            --tw-translate-y:0;
            --tw-translate-z:0;
            --tw-rotate-x:initial;
            --tw-rotate-y:initial;
            --tw-rotate-z:initial;
            --tw-skew-x:initial;
            --tw-skew-y:initial;
            --tw-space-y-reverse:0;
            --tw-space-x-reverse:0;
            --tw-border-style:solid;
            --tw-leading:initial;
            --tw-font-weight:initial;
            --tw-tracking:initial;
            --tw-ordinal:initial;
            --tw-slashed-zero:initial;
            --tw-numeric-figure:initial;
            --tw-numeric-spacing:initial;
            --tw-numeric-fraction:initial;
            --tw-shadow:0 0 #0000;
            --tw-shadow-color:initial;
            --tw-shadow-alpha:100%;
            --tw-inset-shadow:0 0 #0000;
            --tw-inset-shadow-color:initial;
            --tw-inset-shadow-alpha:100%;
            --tw-ring-color:initial;
            --tw-ring-shadow:0 0 #0000;
            --tw-inset-ring-color:initial;
            --tw-inset-ring-shadow:0 0 #0000;
            --tw-ring-inset:initial;
            --tw-ring-offset-width:0px;
            --tw-ring-offset-color:#fff;
            --tw-ring-offset-shadow:0 0 #0000;
            --tw-outline-style:solid;
            --tw-blur:initial;
            --tw-brightness:initial;
            --tw-contrast:initial;
            --tw-grayscale:initial;
            --tw-hue-rotate:initial;
            --tw-invert:initial;
            --tw-opacity:initial;
            --tw-saturate:initial;
            --tw-sepia:initial;
            --tw-drop-shadow:initial;
            --tw-drop-shadow-color:initial;
            --tw-drop-shadow-alpha:100%;
            --tw-drop-shadow-size:initial;
            --tw-duration:initial;
            --tw-ease:initial;
            --tw-content:"";
            --tw-animation-delay:0s;
            --tw-animation-direction:normal;
            --tw-animation-duration:initial;
            --tw-animation-fill-mode:none;
            --tw-animation-iteration-count:1;
            --tw-enter-blur:0;
            --tw-enter-opacity:1;
            --tw-enter-rotate:0;
            --tw-enter-scale:1;
            --tw-enter-translate-x:0;
            --tw-enter-translate-y:0;
            --tw-exit-blur:0;
            --tw-exit-opacity:1;
            --tw-exit-rotate:0;
            --tw-exit-scale:1;
            --tw-exit-translate-x:0;
            --tw-exit-translate-y:0
        }
    }
}
@layer theme{
    :root,:host{
        --font-sans:"DM Sans", sans-serif;
        --font-serif:"DM Serif Display", serif;
        --font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --color-black:#000;
        --spacing:.25rem;
        --container-sm:24rem;
        --container-md:28rem;
        --container-lg:32rem;
        --text-xs:.75rem;
        --text-xs--line-height:calc(1 / .75);
        --text-sm:.875rem;
        --text-sm--line-height:calc(1.25 / .875);
        --text-base:1rem;
        --text-base--line-height:calc(1.5 / 1);
        --text-lg:1.125rem;
        --text-lg--line-height:calc(1.75 / 1.125);
        --text-xl:1.25rem;
        --text-xl--line-height:calc(1.75 / 1.25);
        --text-7xl:4.5rem;
        --text-7xl--line-height:1;
        --font-weight-normal:400;
        --font-weight-medium:500;
        --font-weight-semibold:600;
        --font-weight-bold:700;
        --tracking-tight:-.025em;
        --tracking-widest:.1em;
        --leading-relaxed:1.625;
        --ease-in-out:cubic-bezier(.4, 0, .2, 1);
        --animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
        --aspect-video:16 / 9;
        --default-transition-duration:.15s;
        --default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);
        --default-font-family:"DM Sans", sans-serif;
        --default-mono-font-family:var(--font-mono);
        --color-border:var(--border)
    }
}
@layer base{
    *,:after,:before,::backdrop{
        box-sizing:border-box;
        border:0 solid;
        margin:0;
        padding:0
    }
    ::file-selector-button{
        box-sizing:border-box;
        border:0 solid;
        margin:0;
        padding:0
    }
    html,:host{
        -webkit-text-size-adjust:100%;
        tab-size:4;
        line-height:1.5;
        font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
        font-feature-settings:var(--default-font-feature-settings,normal);
        font-variation-settings:var(--default-font-variation-settings,normal);
        -webkit-tap-highlight-color:transparent
    }
    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;
        -webkit-text-decoration:inherit;
        -webkit-text-decoration:inherit;
        -webkit-text-decoration:inherit;
        -webkit-text-decoration:inherit;
        -webkit-text-decoration:inherit;
        text-decoration:inherit
    }
    b,strong{
        font-weight:bolder
    }
    code,kbd,samp,pre{
        font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
        font-feature-settings:var(--default-mono-font-feature-settings,normal);
        font-variation-settings:var(--default-mono-font-variation-settings,normal);
        font-size:1em
    }
    small{
        font-size:80%
    }
    sub,sup{
        vertical-align:baseline;
        font-size:75%;
        line-height:0;
        position:relative
    }
    sub{
        bottom:-.25em
    }
    sup{
        top:-.5em
    }
    table{
        text-indent:0;
        border-color:inherit;
        border-collapse:collapse
    }
    :-moz-focusring:where(:not(iframe)){
        outline:auto
    }
    progress{
        vertical-align:baseline
    }
    summary{
        display:list-item
    }
    ol,ul,menu{
        list-style:none
    }
    img,svg,video,canvas,audio,iframe,embed,object{
        vertical-align:middle;
        display:block
    }
    img,video{
        max-width:100%;
        height:auto
    }
    button,input,select,optgroup,textarea{
        font:inherit;
        font-feature-settings:inherit;
        font-variation-settings:inherit;
        letter-spacing:inherit;
        color:inherit;
        opacity:1;
        background-color:#0000;
        border-radius:0
    }
    ::file-selector-button{
        font:inherit;
        font-feature-settings:inherit;
        font-variation-settings:inherit;
        letter-spacing:inherit;
        color:inherit;
        opacity:1;
        background-color:#0000;
        border-radius:0
    }
    :where(select:is([multiple],[size])) optgroup{
        font-weight:bolder
    }
    :where(select:is([multiple],[size])) optgroup option{
        padding-inline-start:20px
    }
    ::file-selector-button{
        margin-inline-end:4px
    }
    ::placeholder{
        opacity:1
    }
    @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){
        ::placeholder{
            color:currentColor
        }
        @supports (color:color-mix(in lab, red, red)){
            ::placeholder{
                color:color-mix(in oklab, currentcolor 50%, transparent)
            }
        }
    }
    textarea{
        resize:vertical
    }
    ::-webkit-search-decoration{
        -webkit-appearance:none
    }
    ::-webkit-date-and-time-value{
        min-height:1lh;
        text-align:inherit
    }
    ::-webkit-datetime-edit{
        display:inline-flex
    }
    ::-webkit-datetime-edit-fields-wrapper{
        padding:0
    }
    ::-webkit-datetime-edit{
        padding-block:0
    }
    ::-webkit-datetime-edit-year-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-month-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-day-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-hour-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-minute-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-second-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-millisecond-field{
        padding-block:0
    }
    ::-webkit-datetime-edit-meridiem-field{
        padding-block:0
    }
    ::-webkit-calendar-picker-indicator{
        line-height:1
    }
    :-moz-ui-invalid{
        box-shadow:none
    }
    button,input:where([type=button],[type=reset],[type=submit]){
        appearance:button
    }
    ::file-selector-button{
        appearance:button
    }
    ::-webkit-inner-spin-button{
        height:auto
    }
    ::-webkit-outer-spin-button{
        height:auto
    }
    [hidden]:where(:not([hidden=until-found])){
        display:none!important
    }
}
@layer components;
@layer utilities{
    .pointer-events-none{
        pointer-events:none
    }
    .invisible{
        visibility:hidden
    }
    .sr-only{
        clip-path:inset(50%);
        white-space:nowrap;
        border-width:0;
        width:1px;
        height:1px;
        margin:-1px;
        padding:0;
        position:absolute;
        overflow:hidden
    }
    .absolute{
        position:absolute
    }
    .fixed{
        position:fixed
    }
    .relative{
        position:relative
    }
    .inset-0{
        inset:0
    }
    .inset-x-0{
        inset-inline:0
    }
    .inset-y-0{
        inset-block:0
    }
    .-top-12{
        top:calc(var(--spacing) * -12)
    }
    .top-0{
        top:0
    }
    .top-1\.5{
        top:calc(var(--spacing) * 1.5)
    }
    .top-1\/2{
        top:50%
    }
    .top-3\.5{
        top:calc(var(--spacing) * 3.5)
    }
    .top-4{
        top:calc(var(--spacing) * 4)
    }
    .top-\[1px\]{
        top:1px
    }
    .top-\[50\%\]{
        top:50%
    }
    .top-\[60\%\]{
        top:60%
    }
    .top-full{
        top:100%
    }
    .-right-12{
        right:calc(var(--spacing) * -12)
    }
    .right-0{
        right:0
    }
    .right-1{
        right:var(--spacing)
    }
    .right-2{
        right:calc(var(--spacing) * 2)
    }
    .right-3{
        right:calc(var(--spacing) * 3)
    }
    .right-4{
        right:calc(var(--spacing) * 4)
    }
    .-bottom-12{
        bottom:calc(var(--spacing) * -12)
    }
    .bottom-0{
        bottom:0
    }
    .-left-12{
        left:calc(var(--spacing) * -12)
    }
    .left-0{
        left:0
    }
    .left-1\/2{
        left:50%
    }
    .left-2{
        left:calc(var(--spacing) * 2)
    }
    .left-\[50\%\]{
        left:50%
    }
    .z-10{
        z-index:10
    }
    .z-20{
        z-index:20
    }
    .z-50{
        z-index:50
    }
    .z-\[1\]{
        z-index:1
    }
    .-mx-1{
        margin-inline:calc(var(--spacing) * -1)
    }
    .mx-2{
        margin-inline:calc(var(--spacing) * 2)
    }
    .mx-3\.5{
        margin-inline:calc(var(--spacing) * 3.5)
    }
    .mx-auto{
        margin-inline:auto
    }
    .my-0\.5{
        margin-block:calc(var(--spacing) * .5)
    }
    .my-1{
        margin-block:var(--spacing)
    }
    .-mt-4{
        margin-top:calc(var(--spacing) * -4)
    }
    .mt-1\.5{
        margin-top:calc(var(--spacing) * 1.5)
    }
    .mt-2{
        margin-top:calc(var(--spacing) * 2)
    }
    .mt-4{
        margin-top:calc(var(--spacing) * 4)
    }
    .mt-6{
        margin-top:calc(var(--spacing) * 6)
    }
    .mt-24{
        margin-top:calc(var(--spacing) * 24)
    }
    .mt-auto{
        margin-top:auto
    }
    .mr-2{
        margin-right:calc(var(--spacing) * 2)
    }
    .mb-1{
        margin-bottom:var(--spacing)
    }
    .-ml-4{
        margin-left:calc(var(--spacing) * -4)
    }
    .ml-1{
        margin-left:var(--spacing)
    }
    .ml-auto{
        margin-left:auto
    }
    .block{
        display:block
    }
    .flex{
        display:flex
    }
    .grid{
        display:grid
    }
    .hidden{
        display:none
    }
    .inline-flex{
        display:inline-flex
    }
    .table{
        display:table
    }
    .aspect-square{
        aspect-ratio:1
    }
    .aspect-video{
        aspect-ratio:var(--aspect-video)
    }
    .size-\(--cell-size\){
        width:var(--cell-size);
        height:var(--cell-size)
    }
    .size-4{
        width:calc(var(--spacing) * 4);
        height:calc(var(--spacing) * 4)
    }
    .h-\(--cell-size\){
        height:var(--cell-size)
    }
    .h-1\.5{
        height:calc(var(--spacing) * 1.5)
    }
    .h-2{
        height:calc(var(--spacing) * 2)
    }
    .h-2\.5{
        height:calc(var(--spacing) * 2.5)
    }
    .h-3{
        height:calc(var(--spacing) * 3)
    }
    .h-3\.5{
        height:calc(var(--spacing) * 3.5)
    }
    .h-4{
        height:calc(var(--spacing) * 4)
    }
    .h-5{
        height:calc(var(--spacing) * 5)
    }
    .h-7{
        height:calc(var(--spacing) * 7)
    }
    .h-8{
        height:calc(var(--spacing) * 8)
    }
    .h-9{
        height:calc(var(--spacing) * 9)
    }
    .h-10{
        height:calc(var(--spacing) * 10)
    }
    .h-12{
        height:calc(var(--spacing) * 12)
    }
    .h-\[1px\]{
        height:1px
    }
    .h-\[var\(--radix-navigation-menu-viewport-height\)\]{
        height:var(--radix-navigation-menu-viewport-height)
    }
    .h-\[var\(--radix-select-trigger-height\)\]{
        height:var(--radix-select-trigger-height)
    }
    .h-auto{
        height:auto
    }
    .h-full{
        height:100%
    }
    .h-px{
        height:1px
    }
    .h-svh{
        height:100svh
    }
    .max-h-\(--radix-context-menu-content-available-height\){
        max-height:var(--radix-context-menu-content-available-height)
    }
    .max-h-\(--radix-select-content-available-height\){
        max-height:var(--radix-select-content-available-height)
    }
    .max-h-\[300px\]{
        max-height:300px
    }
    .max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{
        max-height:var(--radix-dropdown-menu-content-available-height)
    }
    .min-h-0{
        min-height:0
    }
    .min-h-\[60px\]{
        min-height:60px
    }
    .min-h-screen{
        min-height:100vh
    }
    .min-h-svh{
        min-height:100svh
    }
    .w-\(--cell-size\){
        width:var(--cell-size)
    }
    .w-\(--sidebar-width\){
        width:var(--sidebar-width)
    }
    .w-0{
        width:0
    }
    .w-1{
        width:var(--spacing)
    }
    .w-2{
        width:calc(var(--spacing) * 2)
    }
    .w-2\.5{
        width:calc(var(--spacing) * 2.5)
    }
    .w-3{
        width:calc(var(--spacing) * 3)
    }
    .w-3\.5{
        width:calc(var(--spacing) * 3.5)
    }
    .w-3\/4{
        width:75%
    }
    .w-4{
        width:calc(var(--spacing) * 4)
    }
    .w-5{
        width:calc(var(--spacing) * 5)
    }
    .w-7{
        width:calc(var(--spacing) * 7)
    }
    .w-8{
        width:calc(var(--spacing) * 8)
    }
    .w-9{
        width:calc(var(--spacing) * 9)
    }
    .w-10{
        width:calc(var(--spacing) * 10)
    }
    .w-64{
        width:calc(var(--spacing) * 64)
    }
    .w-72{
        width:calc(var(--spacing) * 72)
    }
    .w-\[1px\]{
        width:1px
    }
    .w-\[100px\]{
        width:100px
    }
    .w-auto{
        width:auto
    }
    .w-fit{
        width:fit-content
    }
    .w-full{
        width:100%
    }
    .w-max{
        width:max-content
    }
    .w-px{
        width:1px
    }
    .max-w-\(--skeleton-width\){
        max-width:var(--skeleton-width)
    }
    .max-w-lg{
        max-width:var(--container-lg)
    }
    .max-w-max{
        max-width:max-content
    }
    .max-w-md{
        max-width:var(--container-md)
    }
    .min-w-\(--cell-size\){
        min-width:var(--cell-size)
    }
    .min-w-0{
        min-width:0
    }
    .min-w-5{
        min-width:calc(var(--spacing) * 5)
    }
    .min-w-8{
        min-width:calc(var(--spacing) * 8)
    }
    .min-w-9{
        min-width:calc(var(--spacing) * 9)
    }
    .min-w-10{
        min-width:calc(var(--spacing) * 10)
    }
    .min-w-\[8rem\]{
        min-width:8rem
    }
    .min-w-\[12rem\]{
        min-width:12rem
    }
    .min-w-\[var\(--radix-select-trigger-width\)\]{
        min-width:var(--radix-select-trigger-width)
    }
    .flex-1{
        flex:1
    }
    .shrink-0{
        flex-shrink:0
    }
    .grow{
        flex-grow:1
    }
    .grow-0{
        flex-grow:0
    }
    .basis-full{
        flex-basis:100%
    }
    .caption-bottom{
        caption-side:bottom
    }
    .border-collapse{
        border-collapse:collapse
    }
    .origin-\(--radix-context-menu-content-transform-origin\){
        transform-origin:var(--radix-context-menu-content-transform-origin)
    }
    .origin-\(--radix-dropdown-menu-content-transform-origin\){
        transform-origin:var(--radix-dropdown-menu-content-transform-origin)
    }
    .origin-\(--radix-hover-card-content-transform-origin\){
        transform-origin:var(--radix-hover-card-content-transform-origin)
    }
    .origin-\(--radix-menubar-content-transform-origin\){
        transform-origin:var(--radix-menubar-content-transform-origin)
    }
    .origin-\(--radix-popover-content-transform-origin\){
        transform-origin:var(--radix-popover-content-transform-origin)
    }
    .origin-\(--radix-select-content-transform-origin\){
        transform-origin:var(--radix-select-content-transform-origin)
    }
    .origin-\(--radix-tooltip-content-transform-origin\){
        transform-origin:var(--radix-tooltip-content-transform-origin)
    }
    .-translate-x-1\/2{
        --tw-translate-x:calc(calc(1 / 2 * 100%) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .-translate-x-px{
        --tw-translate-x:-1px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .translate-x-\[-50\%\]{
        --tw-translate-x:-50%;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .translate-x-px{
        --tw-translate-x:1px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .-translate-y-1\/2{
        --tw-translate-y:calc(calc(1 / 2 * 100%) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .translate-y-\[-50\%\]{
        --tw-translate-y:-50%;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .rotate-45{
        rotate:45deg
    }
    .rotate-90{
        rotate:90deg
    }
    .transform{
        transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)
    }
    .animate-caret-blink{
        animation:1.25s ease-out infinite caret-blink
    }
    .animate-in{
        animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .animate-pulse{
        animation:var(--animate-pulse)
    }
    .cursor-default{
        cursor:default
    }
    .cursor-pointer{
        cursor:pointer
    }
    .touch-none{
        touch-action:none
    }
    .list-none{
        list-style-type:none
    }
    .flex-col{
        flex-direction:column
    }
    .flex-col-reverse{
        flex-direction:column-reverse
    }
    .flex-row{
        flex-direction:row
    }
    .flex-wrap{
        flex-wrap:wrap
    }
    .place-content-center{
        place-content:center
    }
    .items-center{
        align-items:center
    }
    .items-end{
        align-items:flex-end
    }
    .items-start{
        align-items:flex-start
    }
    .items-stretch{
        align-items:stretch
    }
    .justify-between{
        justify-content:space-between
    }
    .justify-center{
        justify-content:center
    }
    .gap-1{
        gap:var(--spacing)
    }
    .gap-1\.5{
        gap:calc(var(--spacing) * 1.5)
    }
    .gap-2{
        gap:calc(var(--spacing) * 2)
    }
    .gap-4{
        gap:calc(var(--spacing) * 4)
    }
    :where(.space-y-1\.5>:not(:last-child)){
        --tw-space-y-reverse:0;
        margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
        margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))
    }
    :where(.space-y-2>:not(:last-child)){
        --tw-space-y-reverse:0;
        margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
        margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))
    }
    :where(.space-x-1>:not(:last-child)){
        --tw-space-x-reverse:0;
        margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));
        margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))
    }
    .overflow-auto{
        overflow:auto
    }
    .overflow-hidden{
        overflow:hidden
    }
    .overflow-x-hidden{
        overflow-x:hidden
    }
    .overflow-y-auto{
        overflow-y:auto
    }
    .rounded-\[2px\]{
        border-radius:2px
    }
    .rounded-\[inherit\]{
        border-radius:inherit
    }
    .rounded-full{
        border-radius:2147483647px
    }
    .rounded-lg{
        border-radius:var(--radius)
    }
    .rounded-md{
        border-radius:calc(var(--radius) - 2px)
    }
    .rounded-none{
        border-radius:0
    }
    .rounded-sm{
        border-radius:calc(var(--radius) - 4px)
    }
    .rounded-xl{
        border-radius:calc(var(--radius) + 4px)
    }
    .rounded-t-\[10px\]{
        border-top-left-radius:10px;
        border-top-right-radius:10px
    }
    .rounded-l-md{
        border-top-left-radius:calc(var(--radius) - 2px);
        border-bottom-left-radius:calc(var(--radius) - 2px)
    }
    .rounded-tl-sm{
        border-top-left-radius:calc(var(--radius) - 4px)
    }
    .rounded-r-md{
        border-top-right-radius:calc(var(--radius) - 2px);
        border-bottom-right-radius:calc(var(--radius) - 2px)
    }
    .border{
        border-style:var(--tw-border-style);
        border-width:1px
    }
    .border-2{
        border-style:var(--tw-border-style);
        border-width:2px
    }
    .border-\[1\.5px\]{
        border-style:var(--tw-border-style);
        border-width:1.5px
    }
    .border-y{
        border-block-style:var(--tw-border-style);
        border-block-width:1px
    }
    .border-t{
        border-top-style:var(--tw-border-style);
        border-top-width:1px
    }
    .border-r{
        border-right-style:var(--tw-border-style);
        border-right-width:1px
    }
    .border-b{
        border-bottom-style:var(--tw-border-style);
        border-bottom-width:1px
    }
    .border-l{
        border-left-style:var(--tw-border-style);
        border-left-width:1px
    }
    .border-dashed{
        --tw-border-style:dashed;
        border-style:dashed
    }
    .border-\(--color-border\){
        border-color:var(--color-border)
    }
    .border-border\/50{
        border-color:var(--border)
    }
    @supports (color:color-mix(in lab, red, red)){
        .border-border\/50{
            border-color:color-mix(in oklab, var(--border) 50%, transparent)
        }
    }
    .border-input{
        border-color:var(--input)
    }
    .border-primary,.border-primary\/50{
        border-color:var(--primary)
    }
    @supports (color:color-mix(in lab, red, red)){
        .border-primary\/50{
            border-color:color-mix(in oklab, var(--primary) 50%, transparent)
        }
    }
    .border-transparent{
        border-color:#0000
    }
    .border-t-transparent{
        border-top-color:#0000
    }
    .border-l-transparent{
        border-left-color:#0000
    }
    .bg-\(--color-bg\){
        background-color:var(--color-bg)
    }
    .bg-accent{
        background-color:var(--accent)
    }
    .bg-background{
        background-color:var(--background)
    }
    .bg-black\/80{
        background-color:#000c
    }
    @supports (color:color-mix(in lab, red, red)){
        .bg-black\/80{
            background-color:color-mix(in oklab, var(--color-black) 80%, transparent)
        }
    }
    .bg-border{
        background-color:var(--border)
    }
    .bg-card{
        background-color:var(--card)
    }
    .bg-foreground{
        background-color:var(--foreground)
    }
    .bg-muted,.bg-muted\/50{
        background-color:var(--muted)
    }
    @supports (color:color-mix(in lab, red, red)){
        .bg-muted\/50{
            background-color:color-mix(in oklab, var(--muted) 50%, transparent)
        }
    }
    .bg-primary,.bg-primary\/10{
        background-color:var(--primary)
    }
    @supports (color:color-mix(in lab, red, red)){
        .bg-primary\/10{
            background-color:color-mix(in oklab, var(--primary) 10%, transparent)
        }
    }
    .bg-primary\/20{
        background-color:var(--primary)
    }
    @supports (color:color-mix(in lab, red, red)){
        .bg-primary\/20{
            background-color:color-mix(in oklab, var(--primary) 20%, transparent)
        }
    }
    .bg-secondary{
        background-color:var(--secondary)
    }
    .bg-transparent{
        background-color:#0000
    }
    .fill-current{
        fill:currentColor
    }
    .fill-primary{
        fill:var(--primary)
    }
    .p-0{
        padding:0
    }
    .p-1{
        padding:var(--spacing)
    }
    .p-2{
        padding:calc(var(--spacing) * 2)
    }
    .p-3{
        padding:calc(var(--spacing) * 3)
    }
    .p-4{
        padding:calc(var(--spacing) * 4)
    }
    .p-6{
        padding:calc(var(--spacing) * 6)
    }
    .p-\[1px\]{
        padding:1px
    }
    .px-\(--cell-size\){
        padding-inline:var(--cell-size)
    }
    .px-1{
        padding-inline:var(--spacing)
    }
    .px-1\.5{
        padding-inline:calc(var(--spacing) * 1.5)
    }
    .px-2{
        padding-inline:calc(var(--spacing) * 2)
    }
    .px-2\.5{
        padding-inline:calc(var(--spacing) * 2.5)
    }
    .px-3{
        padding-inline:calc(var(--spacing) * 3)
    }
    .px-4{
        padding-inline:calc(var(--spacing) * 4)
    }
    .px-8{
        padding-inline:calc(var(--spacing) * 8)
    }
    .py-0\.5{
        padding-block:calc(var(--spacing) * .5)
    }
    .py-1{
        padding-block:var(--spacing)
    }
    .py-1\.5{
        padding-block:calc(var(--spacing) * 1.5)
    }
    .py-2{
        padding-block:calc(var(--spacing) * 2)
    }
    .py-3{
        padding-block:calc(var(--spacing) * 3)
    }
    .py-4{
        padding-block:calc(var(--spacing) * 4)
    }
    .py-6{
        padding-block:calc(var(--spacing) * 6)
    }
    .pt-0{
        padding-top:0
    }
    .pt-3{
        padding-top:calc(var(--spacing) * 3)
    }
    .pt-4{
        padding-top:calc(var(--spacing) * 4)
    }
    .pr-1{
        padding-right:var(--spacing)
    }
    .pr-2{
        padding-right:calc(var(--spacing) * 2)
    }
    .pr-2\.5{
        padding-right:calc(var(--spacing) * 2.5)
    }
    .pr-8{
        padding-right:calc(var(--spacing) * 8)
    }
    .pb-3{
        padding-bottom:calc(var(--spacing) * 3)
    }
    .pb-4{
        padding-bottom:calc(var(--spacing) * 4)
    }
    .pl-2{
        padding-left:calc(var(--spacing) * 2)
    }
    .pl-2\.5{
        padding-left:calc(var(--spacing) * 2.5)
    }
    .pl-4{
        padding-left:calc(var(--spacing) * 4)
    }
    .pl-8{
        padding-left:calc(var(--spacing) * 8)
    }
    .text-center{
        text-align:center
    }
    .text-left{
        text-align:left
    }
    .align-middle{
        vertical-align:middle
    }
    .font-mono{
        font-family:var(--font-mono)
    }
    .text-7xl{
        font-size:var(--text-7xl);
        line-height:var(--tw-leading,var(--text-7xl--line-height))
    }
    .text-base{
        font-size:var(--text-base);
        line-height:var(--tw-leading,var(--text-base--line-height))
    }
    .text-lg{
        font-size:var(--text-lg);
        line-height:var(--tw-leading,var(--text-lg--line-height))
    }
    .text-sm{
        font-size:var(--text-sm);
        line-height:var(--tw-leading,var(--text-sm--line-height))
    }
    .text-xl{
        font-size:var(--text-xl);
        line-height:var(--tw-leading,var(--text-xl--line-height))
    }
    .text-xs{
        font-size:var(--text-xs);
        line-height:var(--tw-leading,var(--text-xs--line-height))
    }
    .text-\[0\.8rem\]{
        font-size:.8rem
    }
    .leading-none{
        --tw-leading:1;
        line-height:1
    }
    .font-bold{
        --tw-font-weight:var(--font-weight-bold);
        font-weight:var(--font-weight-bold)
    }
    .font-medium{
        --tw-font-weight:var(--font-weight-medium);
        font-weight:var(--font-weight-medium)
    }
    .font-normal{
        --tw-font-weight:var(--font-weight-normal);
        font-weight:var(--font-weight-normal)
    }
    .font-semibold{
        --tw-font-weight:var(--font-weight-semibold);
        font-weight:var(--font-weight-semibold)
    }
    .tracking-tight{
        --tw-tracking:var(--tracking-tight);
        letter-spacing:var(--tracking-tight)
    }
    .tracking-widest{
        --tw-tracking:var(--tracking-widest);
        letter-spacing:var(--tracking-widest)
    }
    .break-words{
        overflow-wrap:break-word
    }
    .whitespace-nowrap{
        white-space:nowrap
    }
    .text-accent-foreground{
        color:var(--accent-foreground)
    }
    .text-card-foreground{
        color:var(--card-foreground)
    }
    .text-current{
        color:currentColor
    }
    .text-foreground{
        color:var(--foreground)
    }
    .text-muted-foreground{
        color:var(--muted-foreground)
    }
    .text-primary{
        color:var(--primary)
    }
    .text-primary-foreground{
        color:var(--primary-foreground)
    }
    .text-secondary-foreground{
        color:var(--secondary-foreground)
    }
    .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,)
    }
    .underline-offset-4{
        text-underline-offset:4px
    }
    .opacity-0{
        opacity:0
    }
    .opacity-50{
        opacity:.5
    }
    .opacity-60{
        opacity:.6
    }
    .opacity-70{
        opacity:.7
    }
    .shadow{
        --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{
        --tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-lg{
        --tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-md{
        --tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-none{
        --tw-shadow:0 0 #0000;
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-sm{
        --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-xl{
        --tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .shadow-xs{
        --tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .ring-0{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .ring-1{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .ring-ring{
        --tw-ring-color:var(--ring)
    }
    .ring-offset-background{
        --tw-ring-offset-color:var(--background)
    }
    .outline{
        outline-style:var(--tw-outline-style);
        outline-width:1px
    }
    .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,)
    }
    .transition{
        transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-\[left\,right\,width\]{
        transition-property:left,right,width;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-\[margin\,opacity\]{
        transition-property:margin,opacity;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-\[width\,height\,padding\]{
        transition-property:width,height,padding;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-\[width\]{
        transition-property:width;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-all{
        transition-property:all;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-colors{
        transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-opacity{
        transition-property:opacity;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .transition-transform{
        transition-property:transform,translate,scale,rotate;
        transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));
        transition-duration:var(--tw-duration,var(--default-transition-duration))
    }
    .duration-200{
        --tw-duration:.2s;
        transition-duration:.2s
    }
    .duration-300{
        --tw-duration:.3s;
        transition-duration:.3s
    }
    .duration-1000{
        --tw-duration:1s;
        transition-duration:1s
    }
    .ease-in-out{
        --tw-ease:var(--ease-in-out);
        transition-timing-function:var(--ease-in-out)
    }
    .ease-linear{
        --tw-ease:linear;
        transition-timing-function:linear
    }
    .fade-in-0{
        --tw-enter-opacity:0
    }
    .outline-none{
        --tw-outline-style:none;
        outline-style:none
    }
    .select-none{
        -webkit-user-select:none;
        user-select:none
    }
    .zoom-in-95{
        --tw-enter-scale:.95
    }
    .\[--cell-size\:2rem\]{
        --cell-size:2rem
    }
    .group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){
        opacity:1
    }
    @media (hover:hover){
        .group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){
            opacity:1
        }
    }
    .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){
        padding-right:calc(var(--spacing) * 8)
    }
    .group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){
        margin-top:calc(var(--spacing) * -8)
    }
    .group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){
        display:none
    }
    .group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible=icon] *){
        width:calc(var(--spacing) * 8)!important;
        height:calc(var(--spacing) * 8)!important
    }
    .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){
        width:var(--sidebar-width-icon)
    }
    .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible=icon] *){
        width:calc(var(--sidebar-width-icon) + 1rem)
    }
    .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){
        width:calc(var(--sidebar-width-icon) + 1rem + 2px)
    }
    .group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){
        overflow:hidden
    }
    .group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible=icon] *){
        padding:0!important
    }
    .group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible=icon] *){
        padding:calc(var(--spacing) * 2)!important
    }
    .group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){
        opacity:0
    }
    .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){
        right:calc(var(--sidebar-width) * -1)
    }
    .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){
        left:calc(var(--sidebar-width) * -1)
    }
    .group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){
        width:0
    }
    .group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){
        --tw-translate-x:0px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){
        position:relative
    }
    .group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){
        z-index:10
    }
    .group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){
        border-color:var(--ring)
    }
    .group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){
        --tw-ring-color:var(--ring)
    }
    @supports (color:color-mix(in lab, red, red)){
        .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){
            --tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)
        }
    }
    .group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){
        right:calc(var(--spacing) * -4)
    }
    .group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){
        border-right-style:var(--tw-border-style);
        border-right-width:1px
    }
    .group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){
        left:0
    }
    .group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){
        rotate:180deg
    }
    .group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){
        border-left-style:var(--tw-border-style);
        border-left-width:1px
    }
    .group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){
        rotate:180deg
    }
    .group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){
        border-radius:var(--radius)
    }
    .group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){
        border-style:var(--tw-border-style);
        border-width:1px
    }
    .group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant=floating] *){
        --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .group-\[\.toast\]\:bg-muted:is(:where(.group).toast *){
        background-color:var(--muted)
    }
    .group-\[\.toast\]\:bg-primary:is(:where(.group).toast *){
        background-color:var(--primary)
    }
    .group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *){
        color:var(--muted-foreground)
    }
    .group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *){
        color:var(--primary-foreground)
    }
    .group-\[\.toaster\]\:border-border:is(:where(.group).toaster *){
        border-color:var(--border)
    }
    .group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *){
        background-color:var(--background)
    }
    .group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *){
        color:var(--foreground)
    }
    .group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *){
        --tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){
        cursor:not-allowed
    }
    .peer-disabled\:opacity-70:is(:where(.peer):disabled~*){
        opacity:.7
    }
    .peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){
        top:calc(var(--spacing) * 1.5)
    }
    .peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){
        top:calc(var(--spacing) * 2.5)
    }
    .peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){
        top:var(--spacing)
    }
    .file\:border-0::file-selector-button{
        border-style:var(--tw-border-style);
        border-width:0
    }
    .file\:bg-transparent::file-selector-button{
        background-color:#0000
    }
    .file\:text-sm::file-selector-button{
        font-size:var(--text-sm);
        line-height:var(--tw-leading,var(--text-sm--line-height))
    }
    .file\:font-medium::file-selector-button{
        --tw-font-weight:var(--font-weight-medium);
        font-weight:var(--font-weight-medium)
    }
    .file\:text-foreground::file-selector-button{
        color:var(--foreground)
    }
    .placeholder\:text-muted-foreground::placeholder{
        color:var(--muted-foreground)
    }
    .after\:absolute:after{
        content:var(--tw-content);
        position:absolute
    }
    .after\:-inset-2:after{
        content:var(--tw-content);
        inset:calc(var(--spacing) * -2)
    }
    .after\:inset-y-0:after{
        content:var(--tw-content);
        inset-block:0
    }
    .after\:left-1\/2:after{
        content:var(--tw-content);
        left:50%
    }
    .after\:w-1:after{
        content:var(--tw-content);
        width:var(--spacing)
    }
    .after\:w-\[2px\]:after{
        content:var(--tw-content);
        width:2px
    }
    .after\:-translate-x-1\/2:after{
        content:var(--tw-content);
        --tw-translate-x:calc(calc(1 / 2 * 100%) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{
        content:var(--tw-content);
        left:100%
    }
    .first\:rounded-l-md:first-child{
        border-top-left-radius:calc(var(--radius) - 2px);
        border-bottom-left-radius:calc(var(--radius) - 2px)
    }
    .first\:border-l:first-child{
        border-left-style:var(--tw-border-style);
        border-left-width:1px
    }
    .last\:rounded-r-md:last-child{
        border-top-right-radius:calc(var(--radius) - 2px);
        border-bottom-right-radius:calc(var(--radius) - 2px)
    }
    @media (hover:hover){
        .hover\:bg-accent:hover{
            background-color:var(--accent)
        }
        .hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{
            background-color:var(--muted)
        }
        @supports (color:color-mix(in lab, red, red)){
            .hover\:bg-muted\/50:hover{
                background-color:color-mix(in oklab, var(--muted) 50%, transparent)
            }
        }
        .hover\:bg-primary\/80:hover{
            background-color:var(--primary)
        }
        @supports (color:color-mix(in lab, red, red)){
            .hover\:bg-primary\/80:hover{
                background-color:color-mix(in oklab, var(--primary) 80%, transparent)
            }
        }
        .hover\:bg-primary\/90:hover{
            background-color:var(--primary)
        }
        @supports (color:color-mix(in lab, red, red)){
            .hover\:bg-primary\/90:hover{
                background-color:color-mix(in oklab, var(--primary) 90%, transparent)
            }
        }
        .hover\:bg-secondary\/80:hover{
            background-color:var(--secondary)
        }
        @supports (color:color-mix(in lab, red, red)){
            .hover\:bg-secondary\/80:hover{
                background-color:color-mix(in oklab, var(--secondary) 80%, transparent)
            }
        }
        .hover\:text-accent-foreground:hover{
            color:var(--accent-foreground)
        }
        .hover\:text-foreground:hover{
            color:var(--foreground)
        }
        .hover\:text-muted-foreground:hover{
            color:var(--muted-foreground)
        }
        .hover\:underline:hover{
            text-decoration-line:underline
        }
        .hover\:opacity-100:hover{
            opacity:1
        }
        .hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{
            --tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));
            box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }
    }
    .focus\:bg-accent:focus{
        background-color:var(--accent)
    }
    .focus\:text-accent-foreground:focus{
        color:var(--accent-foreground)
    }
    .focus\:ring-1:focus{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .focus\:ring-2:focus{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .focus\:ring-ring:focus{
        --tw-ring-color:var(--ring)
    }
    .focus\:ring-offset-2:focus{
        --tw-ring-offset-width:2px;
        --tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
    }
    .focus\:outline-none:focus{
        --tw-outline-style:none;
        outline-style:none
    }
    .focus-visible\:ring-1:focus-visible{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .focus-visible\:ring-2:focus-visible{
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .focus-visible\:ring-ring:focus-visible{
        --tw-ring-color:var(--ring)
    }
    .focus-visible\:ring-offset-1:focus-visible{
        --tw-ring-offset-width:1px;
        --tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
    }
    .focus-visible\:ring-offset-2:focus-visible{
        --tw-ring-offset-width:2px;
        --tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
    }
    .focus-visible\:ring-offset-background:focus-visible{
        --tw-ring-offset-color:var(--background)
    }
    .focus-visible\:outline-none:focus-visible{
        --tw-outline-style:none;
        outline-style:none
    }
    .disabled\:pointer-events-none:disabled{
        pointer-events:none
    }
    .disabled\:cursor-not-allowed:disabled{
        cursor:not-allowed
    }
    .disabled\:opacity-50:disabled{
        opacity:.5
    }
    .has-focus\:border-ring:has(:focus){
        border-color:var(--ring)
    }
    .has-focus\:ring-\[3px\]:has(:focus){
        --tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .has-focus\:ring-ring\/50:has(:focus){
        --tw-ring-color:var(--ring)
    }
    @supports (color:color-mix(in lab, red, red)){
        .has-focus\:ring-ring\/50:has(:focus){
            --tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)
        }
    }
    .has-\[\:disabled\]\:opacity-50:has(:disabled){
        opacity:.5
    }
    .aria-disabled\:pointer-events-none[aria-disabled=true]{
        pointer-events:none
    }
    .aria-disabled\:opacity-50[aria-disabled=true]{
        opacity:.5
    }
    .aria-selected\:text-muted-foreground[aria-selected=true]{
        color:var(--muted-foreground)
    }
    .data-\[active\=true\]\:font-medium[data-active=true]{
        --tw-font-weight:var(--font-weight-medium);
        font-weight:var(--font-weight-medium)
    }
    .data-\[disabled\]\:pointer-events-none[data-disabled]{
        pointer-events:none
    }
    .data-\[disabled\]\:opacity-50[data-disabled]{
        opacity:.5
    }
    .data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{
        pointer-events:none
    }
    .data-\[disabled\=true\]\:opacity-50[data-disabled=true]{
        opacity:.5
    }
    .data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{
        --tw-enter-translate-x:calc(52*var(--spacing))
    }
    .data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{
        --tw-enter-translate-x:calc(52*var(--spacing)*-1)
    }
    .data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{
        --tw-exit-translate-x:calc(52*var(--spacing))
    }
    .data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{
        --tw-exit-translate-x:calc(52*var(--spacing)*-1)
    }
    .data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{
        animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{
        --tw-enter-opacity:0
    }
    .data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{
        animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{
        --tw-exit-opacity:0
    }
    .data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{
        height:1px
    }
    .data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{
        width:100%
    }
    .data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{
        flex-direction:column
    }
    .data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{
        content:var(--tw-content);
        left:0
    }
    .data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{
        content:var(--tw-content);
        height:var(--spacing)
    }
    .data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{
        content:var(--tw-content);
        width:100%
    }
    .data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{
        content:var(--tw-content);
        --tw-translate-x:0px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{
        content:var(--tw-content);
        --tw-translate-y:calc(calc(1 / 2 * 100%) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[placeholder\]\:text-muted-foreground[data-placeholder]{
        color:var(--muted-foreground)
    }
    .data-\[range-end\=true\]\:rounded-md[data-range-end=true]{
        border-radius:calc(var(--radius) - 2px)
    }
    .data-\[range-end\=true\]\:bg-primary[data-range-end=true]{
        background-color:var(--primary)
    }
    .data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{
        color:var(--primary-foreground)
    }
    .data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{
        border-radius:0
    }
    .data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{
        background-color:var(--accent)
    }
    .data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{
        color:var(--accent-foreground)
    }
    .data-\[range-start\=true\]\:rounded-md[data-range-start=true]{
        border-radius:calc(var(--radius) - 2px)
    }
    .data-\[range-start\=true\]\:bg-primary[data-range-start=true]{
        background-color:var(--primary)
    }
    .data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{
        color:var(--primary-foreground)
    }
    .data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{
        background-color:var(--primary)
    }
    .data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{
        color:var(--primary-foreground)
    }
    .data-\[selected\=true\]\:rounded-none[data-selected=true]{
        border-radius:0
    }
    .data-\[selected\=true\]\:bg-accent[data-selected=true]{
        background-color:var(--accent)
    }
    .data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{
        color:var(--accent-foreground)
    }
    .data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{
        --tw-translate-y:var(--spacing);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{
        --tw-enter-translate-y:calc(2*var(--spacing)*-1)
    }
    .data-\[side\=left\]\:-translate-x-1[data-side=left]{
        --tw-translate-x:calc(var(--spacing) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{
        --tw-enter-translate-x:calc(2*var(--spacing))
    }
    .data-\[side\=right\]\:translate-x-1[data-side=right]{
        --tw-translate-x:var(--spacing);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{
        --tw-enter-translate-x:calc(2*var(--spacing)*-1)
    }
    .data-\[side\=top\]\:-translate-y-1[data-side=top]{
        --tw-translate-y:calc(var(--spacing) * -1);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{
        --tw-enter-translate-y:calc(2*var(--spacing))
    }
    .data-\[state\=active\]\:bg-background[data-state=active]{
        background-color:var(--background)
    }
    .data-\[state\=active\]\:text-foreground[data-state=active]{
        color:var(--foreground)
    }
    .data-\[state\=active\]\:shadow[data-state=active]{
        --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
        box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .data-\[state\=checked\]\:translate-x-4[data-state=checked]{
        --tw-translate-x:calc(var(--spacing) * 4);
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[state\=checked\]\:bg-primary[data-state=checked]{
        background-color:var(--primary)
    }
    .data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{
        color:var(--primary-foreground)
    }
    .data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{
        animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=closed\]\:animate-out[data-state=closed]{
        animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=closed\]\:duration-300[data-state=closed]{
        --tw-duration:.3s;
        transition-duration:.3s
    }
    .data-\[state\=closed\]\:fade-out-0[data-state=closed]{
        --tw-exit-opacity:0
    }
    .data-\[state\=closed\]\:zoom-out-95[data-state=closed]{
        --tw-exit-scale:.95
    }
    .data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{
        --tw-exit-translate-y:100%
    }
    .data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{
        --tw-exit-translate-x:-100%
    }
    .data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{
        --tw-exit-translate-x:100%
    }
    .data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{
        --tw-exit-translate-y:-100%
    }
    .data-\[state\=hidden\]\:animate-out[data-state=hidden]{
        animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=hidden\]\:fade-out[data-state=hidden]{
        --tw-exit-opacity:0
    }
    .data-\[state\=on\]\:bg-accent[data-state=on]{
        background-color:var(--accent)
    }
    .data-\[state\=on\]\:text-accent-foreground[data-state=on]{
        color:var(--accent-foreground)
    }
    .data-\[state\=open\]\:animate-accordion-down[data-state=open]{
        animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=open\]\:animate-in[data-state=open]{
        animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{
        background-color:var(--accent)
    }
    @supports (color:color-mix(in lab, red, red)){
        .data-\[state\=open\]\:bg-accent\/50[data-state=open]{
            background-color:color-mix(in oklab, var(--accent) 50%, transparent)
        }
    }
    .data-\[state\=open\]\:bg-secondary[data-state=open]{
        background-color:var(--secondary)
    }
    .data-\[state\=open\]\:text-accent-foreground[data-state=open]{
        color:var(--accent-foreground)
    }
    .data-\[state\=open\]\:text-muted-foreground[data-state=open]{
        color:var(--muted-foreground)
    }
    .data-\[state\=open\]\:opacity-100[data-state=open]{
        opacity:1
    }
    .data-\[state\=open\]\:duration-500[data-state=open]{
        --tw-duration:.5s;
        transition-duration:.5s
    }
    .data-\[state\=open\]\:fade-in-0[data-state=open]{
        --tw-enter-opacity:0
    }
    .data-\[state\=open\]\:zoom-in-90[data-state=open]{
        --tw-enter-scale:.9
    }
    .data-\[state\=open\]\:zoom-in-95[data-state=open]{
        --tw-enter-scale:.95
    }
    .data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{
        --tw-enter-translate-y:100%
    }
    .data-\[state\=open\]\:slide-in-from-left[data-state=open]{
        --tw-enter-translate-x:-100%
    }
    .data-\[state\=open\]\:slide-in-from-right[data-state=open]{
        --tw-enter-translate-x:100%
    }
    .data-\[state\=open\]\:slide-in-from-top[data-state=open]{
        --tw-enter-translate-y:-100%
    }
    @media (hover:hover){
        .data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{
            background-color:var(--accent)
        }
    }
    .data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{
        background-color:var(--accent)
    }
    .data-\[state\=selected\]\:bg-muted[data-state=selected]{
        background-color:var(--muted)
    }
    .data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{
        --tw-translate-x:0px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{
        background-color:var(--input)
    }
    .data-\[state\=visible\]\:animate-in[data-state=visible]{
        animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)
    }
    .data-\[state\=visible\]\:fade-in[data-state=visible]{
        --tw-enter-opacity:0
    }
    @media (width>=40rem){
        .sm\:mt-0{
            margin-top:0
        }
        .sm\:flex{
            display:flex
        }
        .sm\:max-w-sm{
            max-width:var(--container-sm)
        }
        .sm\:flex-row{
            flex-direction:row
        }
        .sm\:justify-end{
            justify-content:flex-end
        }
        .sm\:gap-2\.5{
            gap:calc(var(--spacing) * 2.5)
        }
        :where(.sm\:space-x-2>:not(:last-child)){
            --tw-space-x-reverse:0;
            margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
            margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))
        }
        .sm\:rounded-lg{
            border-radius:var(--radius)
        }
        .sm\:text-left{
            text-align:left
        }
    }
    @media (width>=48rem){
        .md\:absolute{
            position:absolute
        }
        .md\:block{
            display:block
        }
        .md\:flex{
            display:flex
        }
        .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{
            width:var(--radix-navigation-menu-viewport-width)
        }
        .md\:w-auto{
            width:auto
        }
        .md\:flex-row{
            flex-direction:row
        }
        .md\:text-sm{
            font-size:var(--text-sm);
            line-height:var(--tw-leading,var(--text-sm--line-height))
        }
        .md\:opacity-0{
            opacity:0
        }
        .md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){
            margin:calc(var(--spacing) * 2)
        }
        .md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){
            margin-left:0
        }
        .md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){
            border-radius:calc(var(--radius) + 4px)
        }
        .md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant=inset]~*){
            --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);
            box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }
        .md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state=collapsed]~*):is(:where(.peer)[data-variant=inset]~*){
            margin-left:calc(var(--spacing) * 2)
        }
    }
    .after\:md\:hidden:after{
        content:var(--tw-content)
    }
    @media (width>=48rem){
        .after\:md\:hidden:after{
            display:none
        }
    }
    .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{
        fill:var(--muted-foreground)
    }
    .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{
        stroke:var(--border)
    }
    @supports (color:color-mix(in lab, red, red)){
        .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{
            stroke:color-mix(in oklab, var(--border) 50%, transparent)
        }
    }
    .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{
        stroke:var(--border)
    }
    .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{
        stroke:#0000
    }
    .\[\&_\.recharts-layer\]\:outline-none .recharts-layer{
        --tw-outline-style:none;
        outline-style:none
    }
    .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{
        stroke:var(--border)
    }
    .\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{
        fill:var(--muted)
    }
    .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{
        stroke:var(--border)
    }
    .\[\&_\.recharts-sector\]\:outline-none .recharts-sector{
        --tw-outline-style:none;
        outline-style:none
    }
    .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{
        stroke:#0000
    }
    .\[\&_\.recharts-surface\]\:outline-none .recharts-surface{
        --tw-outline-style:none;
        outline-style:none
    }
    .\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{
        padding-inline:calc(var(--spacing) * 2)
    }
    .\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{
        padding-block:calc(var(--spacing) * 1.5)
    }
    .\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{
        font-size:var(--text-xs);
        line-height:var(--tw-leading,var(--text-xs--line-height))
    }
    .\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{
        --tw-font-weight:var(--font-weight-medium);
        font-weight:var(--font-weight-medium)
    }
    .\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{
        color:var(--muted-foreground)
    }
    .\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{
        padding-inline:calc(var(--spacing) * 2)
    }
    .\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{
        padding-top:0
    }
    .\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{
        height:calc(var(--spacing) * 5)
    }
    .\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{
        width:calc(var(--spacing) * 5)
    }
    .\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{
        height:calc(var(--spacing) * 12)
    }
    .\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{
        padding-inline:calc(var(--spacing) * 2)
    }
    .\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{
        padding-block:calc(var(--spacing) * 3)
    }
    .\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{
        height:calc(var(--spacing) * 5)
    }
    .\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{
        width:calc(var(--spacing) * 5)
    }
    .\[\&_p\]\:leading-relaxed p{
        --tw-leading:var(--leading-relaxed);
        line-height:var(--leading-relaxed)
    }
    .\[\&_svg\]\:pointer-events-none svg{
        pointer-events:none
    }
    .\[\&_svg\]\:size-4 svg{
        width:calc(var(--spacing) * 4);
        height:calc(var(--spacing) * 4)
    }
    .\[\&_svg\]\:shrink-0 svg{
        flex-shrink:0
    }
    .\[\&_tr\]\:border-b tr{
        border-bottom-style:var(--tw-border-style);
        border-bottom-width:1px
    }
    .\[\&_tr\:last-child\]\:border-0 tr:last-child{
        border-style:var(--tw-border-style);
        border-width:0
    }
    .\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{
        border-top-left-radius:calc(var(--radius) - 2px);
        border-bottom-left-radius:calc(var(--radius) - 2px)
    }
    .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){
        padding-right:0
    }
    :is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){
        rotate:180deg
    }
    .\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{
        border-top-right-radius:calc(var(--radius) - 2px);
        border-bottom-right-radius:calc(var(--radius) - 2px)
    }
    .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{
        --tw-translate-y:2px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .\[\&\>button\]\:hidden>button{
        display:none
    }
    .\[\&\>span\]\:line-clamp-1>span{
        -webkit-line-clamp:1;
        -webkit-box-orient:vertical;
        display:-webkit-box;
        overflow:hidden
    }
    .\[\&\>span\]\:text-xs>span{
        font-size:var(--text-xs);
        line-height:var(--tw-leading,var(--text-xs--line-height))
    }
    .\[\&\>span\]\:opacity-70>span{
        opacity:.7
    }
    .\[\&\>span\:last-child\]\:truncate>span:last-child{
        text-overflow:ellipsis;
        white-space:nowrap;
        overflow:hidden
    }
    .\[\&\>svg\]\:absolute>svg{
        position:absolute
    }
    .\[\&\>svg\]\:top-4>svg{
        top:calc(var(--spacing) * 4)
    }
    .\[\&\>svg\]\:left-4>svg{
        left:calc(var(--spacing) * 4)
    }
    .\[\&\>svg\]\:size-3\.5>svg{
        width:calc(var(--spacing) * 3.5);
        height:calc(var(--spacing) * 3.5)
    }
    .\[\&\>svg\]\:size-4>svg{
        width:calc(var(--spacing) * 4);
        height:calc(var(--spacing) * 4)
    }
    .\[\&\>svg\]\:h-2\.5>svg{
        height:calc(var(--spacing) * 2.5)
    }
    .\[\&\>svg\]\:h-3>svg{
        height:calc(var(--spacing) * 3)
    }
    .\[\&\>svg\]\:h-3\.5>svg{
        height:calc(var(--spacing) * 3.5)
    }
    .\[\&\>svg\]\:w-2\.5>svg{
        width:calc(var(--spacing) * 2.5)
    }
    .\[\&\>svg\]\:w-3>svg{
        width:calc(var(--spacing) * 3)
    }
    .\[\&\>svg\]\:w-3\.5>svg{
        width:calc(var(--spacing) * 3.5)
    }
    .\[\&\>svg\]\:shrink-0>svg{
        flex-shrink:0
    }
    .\[\&\>svg\]\:text-foreground>svg{
        color:var(--foreground)
    }
    .\[\&\>svg\]\:text-muted-foreground>svg{
        color:var(--muted-foreground)
    }
    .\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{
        --tw-translate-y:-3px;
        translate:var(--tw-translate-x) var(--tw-translate-y)
    }
    .\[\&\>svg\~\*\]\:pl-7>svg~*{
        padding-left:calc(var(--spacing) * 7)
    }
    .\[\&\>tr\]\:last\:border-b-0>tr:last-child{
        border-bottom-style:var(--tw-border-style);
        border-bottom-width:0
    }
    .\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{
        rotate:90deg
    }
    .\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{
        rotate:180deg
    }
    [data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{
        cursor:w-resize
    }
    [data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{
        right:calc(var(--spacing) * -2)
    }
    [data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize,[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{
        cursor:e-resize
    }
    [data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{
        left:calc(var(--spacing) * -2)
    }
    [data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{
        cursor:w-resize
    }
    [data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{
        background-color:#0000
    }
}
@property --tw-animation-delay{
    syntax:"*";
    inherits:false;
    initial-value:0s
}
@property --tw-animation-direction{
    syntax:"*";
    inherits:false;
    initial-value:normal
}
@property --tw-animation-duration{
    syntax:"*";
    inherits:false
}
@property --tw-animation-fill-mode{
    syntax:"*";
    inherits:false;
    initial-value:none
}
@property --tw-animation-iteration-count{
    syntax:"*";
    inherits:false;
    initial-value:1
}
@property --tw-enter-blur{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-enter-opacity{
    syntax:"*";
    inherits:false;
    initial-value:1
}
@property --tw-enter-rotate{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-enter-scale{
    syntax:"*";
    inherits:false;
    initial-value:1
}
@property --tw-enter-translate-x{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-enter-translate-y{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-exit-blur{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-exit-opacity{
    syntax:"*";
    inherits:false;
    initial-value:1
}
@property --tw-exit-rotate{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-exit-scale{
    syntax:"*";
    inherits:false;
    initial-value:1
}
@property --tw-exit-translate-x{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-exit-translate-y{
    syntax:"*";
    inherits:false;
    initial-value:0
}
:root{
    --radius:.5rem;
    /* --background:oklch(97.5% .012 86);
    --foreground:oklch(24.5% .045 136);
    --card:oklch(99.5% .006 86);
    --card-foreground:oklch(24.5% .045 136);
    --primary:oklch(42% .11 138);
    --primary-foreground:oklch(99% .008 95);
    --secondary:oklch(91% .055 112);
    --secondary-foreground:oklch(28% .06 136);
    --muted:oklch(94.5% .025 104);
    --muted-foreground:oklch(49% .032 110);
    --accent:oklch(71% .13 100);
    --accent-foreground:oklch(23% .05 136);
    --border:oklch(87% .034 105);
    --input:oklch(87% .034 105);
    --ring:oklch(52% .1 137);
    --forest:oklch(28% .08 139);
    --forest-deep:oklch(21% .065 139);
    --cream:oklch(96% .025 88);
    --sage:oklch(90% .045 128);
    --gold:oklch(69% .12 94);
    --shadow-soft:0 18px 50px var(--forest); */

    /* Fundos e Textos Base */
    --background: #f5f5f5;         /* Cinza Claro */
    --foreground: #400e24;         /* Vinho Escuro */
    
    /* Cards e Superfícies */
    --card: #fff5f1;               /* Off-White Quente */
    --card-foreground: #400e24;    /* Vinho Escuro */
    
    /* Cores Principais (Botões e Destaques) */
    --primary: #721a40;            /* Púrpura / Carmim */
    --primary-foreground: #fff5f1; /* Off-White Quente (Texto no botão principal) */
    
    /* Elementos Secundários e Interativos */
    --secondary: #fff5f1;          /* Off-White Quente */
    --secondary-foreground: #721a40; /* Púrpura / Carmim */
    
    /* Elementos Silenciados (Muted/Accent) */
    --muted: #fff5f1;              /* Off-White Quente */
    --muted-foreground: #721a40;   /* Púrpura / Carmim (Mantém legibilidade sem ser o mais escuro) */
    --accent: #fff5f1;             /* Off-White Quente (Hover states) */
    --accent-foreground: #721a40;  /* Púrpura / Carmim */
    
    /* Bordas e Inputs */
    /* Nota: Usando a cor clara, a borda será bem sutil. 
       Se precisar de mais contraste, você pode adicionar transparência à cor escura, ex: #721a4033 */
    --border: #fff5f1;             
    --input: #fff5f1;              
    --ring: #721a40;               /* Púrpura / Carmim (Foco em inputs) */
    
    /* Nomes Temáticos (Substituídos pela sua paleta) */
    --forest: #721a40;             /* Púrpura / Carmim */
    --forest-deep: #400e24;        /* Vinho Escuro */
    --cream: #fff5f1;              /* Off-White Quente */
    --sage: #f5f5f5;               /* Cinza Claro */
    --gold: #721a40;               /* Púrpura / Carmim */
    
    /* Sombras */
    /* Usando o Vinho Escuro com opacidade (~15%) para uma sombra colorida e elegante */
    --shadow-soft: 0 18px 50px #400e2426;
}
@supports (color:color-mix(in lab, red, red)){
    :root{
        --shadow-soft:0 18px 50px color-mix(in oklab, var(--forest) 10%, transparent)
    }
}
*{
    box-sizing:border-box;
    border-color:var(--border)
}
html{
    scroll-behavior:smooth
}
body{
    background:var(--background);
    color:var(--foreground);
    font-family:var(--font-sans);
    margin:0;
    line-height:1.6
}
a{
    color:inherit;
    text-decoration:none
}
img{
    max-width:100%;
    display:block
}
h1,h2,h3,p{
    margin-top:0
}
h1,h2{
    font-family:var(--font-serif);
    letter-spacing:0;
    font-weight:400;
    line-height:.98
}
h1 em,h2 em{
    color:var(--primary);
    font-weight:400
}
.page-shell{
    width:min(1120px,100% - 40px);
    margin-inline:auto
}
.section{
    padding:110px 0;
    position:relative;
    overflow:hidden
}
.hero{
    height:92vh;
    min-height:760px;
    max-height:880px;
    /* padding-top:90px; */
    position:relative;
    overflow:hidden
}
.hero-image{
    object-fit:cover;
    object-position:center;
    /* width:100%; */
    height:100%;
    position:absolute;
    /* inset:0 */
    right:0
}
.hero-wash{
    background:linear-gradient(90deg, var(--cream) 0%, var(--cream) 40%, transparent 67%);
    position:absolute;
    inset:0
}
@supports (color:color-mix(in lab, red, red)){
    .hero-wash{
        background:linear-gradient(90deg, color-mix(in oklab, var(--cream) 96%, transparent) 0%, color-mix(in oklab, var(--cream) 86%, transparent) 40%, transparent 67%)
    }
}
.site-header{
    z-index:50;
    transition:background .3s,box-shadow .3s;
    position:fixed;
    top:0;
    left:0;
    right:0
}
.site-header.scrolled{
    background:var(--cream)
}
@supports (color:color-mix(in lab, red, red)){
    .site-header.scrolled{
        background:color-mix(in oklab, var(--cream) 94%, transparent)
    }
}
.site-header.scrolled{
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 10px 30px var(--forest)
}
@supports (color:color-mix(in lab, red, red)){
    .site-header.scrolled{
        box-shadow:0 10px 30px color-mix(in oklab, var(--forest) 10%, transparent)
    }
}
.nav{
    z-index:2;
    border-bottom:1px solid var(--primary);
    justify-content:space-between;
    align-items:center;
    gap:28px;
    height:90px;
    display:flex;
    position:relative
}
@supports (color:color-mix(in lab, red, red)){
    .nav{
        border-bottom:1px solid color-mix(in oklab, var(--primary) 15%, transparent)
    }
}
.brand{
    align-items:center;
    gap:10px;
    font-size:15px;
    line-height:.9;
    display:inline-flex
}
.brand strong{
    color:var(--primary);
    font-size:19px;
    font-weight:400
}
.brand-mark{
    background:var(--primary);
    width:38px;
    height:38px;
    color:var(--primary-foreground);
    border-radius:50%;
    place-items:center;
    display:grid
}
.nav-links{
    align-items:center;
    gap:30px;
    font-size:14px;
    font-weight:600;
    display:flex
}
.nav-links a{
    transition:color .2s
}
.nav-links a:hover{
    color:var(--primary)
}
.hero-content{
    align-items:center;
    height:100%;
    display:flex;
    position:relative
}
.hero-copy{
    width:min(580px,55%);
    padding-bottom:18px
}
.hero h1{
    margin:22px 0 24px;
    font-size:clamp(52px,5.2vw,76px)
}
.hero-copy>p{
    max-width:560px;
    color:var(--muted-foreground);
    font-size:17px
}
.eyebrow{
    color:var(--primary);
    text-transform:uppercase;
    letter-spacing:.12em;
    align-items:center;
    gap:8px;
    font-size:12px;
    font-weight:700;
    display:inline-flex
}
.button{
    border:1px solid #0000;
    border-radius:5px;
    justify-content:center;
    align-items:center;
    gap:9px;
    min-height:46px;
    padding:0 20px;
    font-size:14px;
    font-weight:700;
    transition:transform .2s,background .2s,box-shadow .2s;
    display:inline-flex
}
.button:hover{
    transform:translateY(-2px)
}
.button-primary{
    color:var(--primary-foreground);
    background:var(--primary);
    box-shadow:0 9px 24px var(--primary)
}
@supports (color:color-mix(in lab, red, red)){
    .button-primary{
        box-shadow:0 9px 24px color-mix(in oklab, var(--primary) 25%, transparent)
    }
}
.button-primary:hover{
    background:var(--forest)
}
.button-outline{
    border-color:var(--primary)
}
@supports (color:color-mix(in lab, red, red)){
    .button-outline{
        border-color:color-mix(in oklab, var(--primary) 34%, transparent)
    }
}
.button-outline{
    color:var(--primary);
    background:var(--card)
}
@supports (color:color-mix(in lab, red, red)){
    .button-outline{
        background:color-mix(in oklab, var(--card) 72%, transparent)
    }
}
.button-outline:hover{
    background:var(--card)
}
.actions,.center-actions{
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;
    display:flex
}
.center-actions{
    justify-content:center
}
.hero-stats{
    gap:0;
    margin-top:54px;
    display:flex
}
.hero-stats div{
    border-left:1px solid var(--border);
    padding:0 28px;
    display:grid
}
.hero-stats div:first-child{
    border:0;
    padding-left:0
}
.hero-stats strong{
    font-family:var(--font-serif);
    color:var(--primary);
    font-size:28px;
    line-height:1
}
.hero-stats span{
    color:var(--muted-foreground);
    text-transform:uppercase;
    margin-top:7px;
    font-size:10px
}
.section-heading{
    text-align:center;
    max-width:720px;
    margin:0 auto 48px
}
.section-heading h2,.split-intro h2,.feature-copy h2,.profile-grid h2{
    margin:15px 0 18px;
    font-size:clamp(38px,4vw,57px)
}
.section-heading p,.split-intro>div>p,.feature-copy>p,.profile-grid>div>p{
    color:var(--muted-foreground);
    max-width:650px;
    margin-inline:auto
}
.botanical:before,.botanical:after{
    content:"";
    opacity:.12;
    background:radial-gradient(ellipse at center, var(--primary) 0 3%, transparent 4%), radial-gradient(ellipse at 30% 70%, var(--primary) 0 2%, transparent 3%);
    width:270px;
    height:270px;
    position:absolute;
    transform:rotate(28deg)
}
.botanical:before{
    bottom:40px;
    left:-100px
}
.botanical:after{
    top:60px;
    right:-100px
}
.pain-grid{
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    max-width:900px;
    margin:auto;
    display:grid
}
.info-card{
    border:1px solid var(--border);
    border-radius:var(--radius);
    background:var(--card);
    gap:15px;
    min-height:135px;
    padding:23px;
    display:flex
}
@supports (color:color-mix(in lab, red, red)){
    .info-card{
        background:color-mix(in oklab, var(--card) 90%, transparent)
    }
}
.info-card{
    box-shadow:var(--shadow-soft)
}
.icon-box{
    background:var(--sage);
    width:38px;
    height:38px;
    color:var(--primary);
    border-radius:5px;
    flex:none;
    place-items:center;
    display:grid
}
.info-card h3,.benefit-card h3,.step h3{
    margin:2px 0 7px;
    font-size:15px
}
.info-card p,.benefit-card p,.step p{
    color:var(--muted-foreground);
    margin:0;
    font-size:12px;
    line-height:1.55
}
.soft-section{
    background:var(--cream)
}
@supports (color:color-mix(in lab, red, red)){
    .soft-section{
        background:color-mix(in oklab, var(--cream) 80%, var(--secondary))
    }
}
.split-intro{
    grid-template-columns:.9fr 1.1fr;
    align-items:center;
    gap:80px;
    display:grid
}
.split-intro h2,.feature-copy h2,.profile-grid h2{
    text-align:left
}
.check-list{
    gap:15px;
    margin:28px 0 0;
    padding:0;
    font-size:14px;
    list-style:none;
    display:grid
}
.check-list li{
    align-items:center;
    gap:10px;
    display:flex
}
.check-list svg{
    color:var(--primary)
}
.benefit-grid{
    grid-template-columns:repeat(2,1fr);
    gap:14px;
    display:grid
}
.benefit-card{
    background:var(--card);
    border-radius:var(--radius);
    border:1px solid var(--border);
    min-height:190px;
    box-shadow:var(--shadow-soft);
    padding:28px
}
.benefit-card>span{
    color:var(--gold);
    font-family:var(--font-serif);
    font-size:18px
}
.benefit-card h3{
    margin-top:32px
}
.feature-section{
    background:var(--cream)
}
.image-feature{
    grid-template-columns:1.1fr .9fr;
    align-items:center;
    gap:76px;
    display:grid
}
.feature-image-wrap{
    aspect-ratio:1/1.05;
    border-radius:90px 8px;
    overflow:hidden
}
.feature-image-wrap img{
    object-fit:cover;
    width:100%;
    height:100%
}
.mini-grid{
    grid-template-columns:1fr 1fr;
    gap:22px;
    margin-top:32px;
    display:grid
}
.mini-grid div{
    grid-template-columns:28px 1fr;
    column-gap:8px;
    display:grid
}
.mini-grid svg{
    color:var(--primary);
    grid-row:span 2
}
.mini-grid strong{
    font-size:14px
}
.mini-grid span{
    color:var(--muted-foreground);
    font-size:11px
}
.video-frame{
    aspect-ratio:16/8.2;
    border-radius:var(--radius);
    width:min(760px,100%);
    box-shadow:var(--shadow-soft);
    margin:0 auto 35px;
    position:relative;
    overflow:hidden
}
.video-frame img{
    object-fit:cover;
    width:100%;
    height:100%;
    object-position:center 25%;
}
.play{
    background:var(--card);
    width:58px;
    height:58px;
    color:var(--primary);
    box-shadow:var(--shadow-soft);
    border-radius:50%;
    place-items:center;
    display:grid;
    position:absolute;
    inset:50% auto auto 50%;
    translate:-50% -50%
}
.play svg{
    margin-left:3px
}
.steps-grid{
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    display:grid
}
.step{
    text-align:center;
    border-top:1px solid var(--border);
    padding:25px 18px
}
.step>span{
    background:var(--primary);
    width:35px;
    height:35px;
    color:var(--primary-foreground);
    border-radius:50%;
    place-items:center;
    margin:-43px auto 16px;
    font-size:11px;
    display:grid
}
.profile-section{
    background:var(--sage)
}
.profile-grid{
    grid-template-columns:.75fr 1.25fr;
    align-items:center;
    gap:75px;
    display:grid
}
.portrait-wrap{
    border-radius:90px 8px;
    height:580px;
    overflow:hidden
}
.portrait-wrap img{
    object-fit:cover;
    width:100%;
    height:100%
}
.credentials{
    grid-template-columns:1fr 1fr;
    gap:12px 30px;
    margin:30px 0;
    display:grid
}
.credentials div{
    border-bottom:1px solid var(--primary);
    align-items:flex-start;
    gap:12px;
    padding:14px 0;
    display:flex
}
@supports (color:color-mix(in lab, red, red)){
    .credentials div{
        border-bottom:1px solid color-mix(in oklab, var(--primary) 14%, transparent)
    }
}
.credentials svg{
    color:var(--primary);
    flex:none
}
.credentials span{
    color:var(--muted-foreground);
    font-size:11px
}
.credentials strong{
    color:var(--foreground);
    font-size:14px;
    display:block
}
.testimonials{
    background:var(--cream)
}
.testimonial-grid{
    grid-template-columns:1.3fr .9fr;
    gap:15px;
    max-width:900px;
    margin:auto;
    display:grid
}
.quote-card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    box-shadow:var(--shadow-soft);
    padding:23px
}
.quote-card.featured{
    flex-direction:column;
    justify-content:center;
    padding:38px;
    display:flex
}
.quote-card blockquote{
    font-family:var(--font-serif);
    margin:22px 0 35px;
    font-size:26px;
    line-height:1.35
}
.quote-card p{
    color:var(--muted-foreground);
    margin:12px 0 0;
    font-size:12px
}
.stars{
    color:var(--gold);
    letter-spacing:.16em;
    font-size:14px
}
.person{
    color:var(--muted-foreground);
    align-items:center;
    gap:12px;
    font-size:11px;
    display:flex
}
.person img{
    object-fit:cover;
    border-radius:50%;
    width:42px;
    height:42px
}
.person strong{
    color:var(--foreground);
    font-size:12px;
    display:block
}
.small-quotes{
    gap:10px;
    display:grid
}
.proof-row{
    border-top:1px solid var(--border);
    justify-content:space-around;
    max-width:720px;
    margin:40px auto 0;
    padding-top:28px;
    display:flex
}
.proof-row div{
    text-align:center;
    display:grid
}
.proof-row strong{
    font-family:var(--font-serif);
    color:var(--primary);
    font-size:27px
}
.proof-row span{
    text-transform:uppercase;
    color:var(--muted-foreground);
    font-size:10px
}
.faq-grid{
    grid-template-columns:1.4fr .6fr;
    align-items:center;
    gap:70px;
    display:grid
}
.faq-grid .section-heading{
    text-align:left;
    margin-left:0
}
.faq-list details{
    border-bottom:1px solid var(--border);
    padding:20px 0
}
.faq-list summary{
    cursor:pointer;
    justify-content:space-between;
    align-items:center;
    font-size:14px;
    font-weight:700;
    list-style:none;
    display:flex
}
.faq-list summary::-webkit-details-marker{
    display:none
}
.faq-list details[open] summary svg{
    rotate:180deg
}
.faq-list details p{
    color:var(--muted-foreground);
    margin:13px 0 0;
    padding-right:30px;
    font-size:14px
}
.faq-list svg{
    transition:rotate .2s
}
.contact-card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    box-shadow:var(--shadow-soft);
    padding:38px
}
.contact-card h3{
    font-family:var(--font-serif);
    margin:22px 0 12px;
    font-size:28px
}
.contact-card p{
    color:var(--muted-foreground);
    font-size:14px
}
.contact-card ul{
    gap:12px;
    margin:25px 0;
    padding:0;
    font-size:12px;
    list-style:none;
    display:grid
}
.contact-card li{
    align-items:center;
    gap:8px;
    display:flex
}
.contact-card li svg{
    color:var(--primary)
}
.final-cta{
    text-align:center;
    color:var(--primary-foreground);
    background:var(--forest-deep);
    padding:95px 0 55px;
    position:relative;
    overflow:hidden
}
.final-cta:before{
    content:"";
    opacity:.11;
    background-image:radial-gradient(circle at 15% 20%, var(--secondary) 0 2px, transparent 3px), radial-gradient(circle at 85% 70%, var(--secondary) 0 2px, transparent 3px);
    background-size:80px 80px;
    position:absolute;
    inset:0
}
.cta-inner{
    position:relative
}
.final-cta h2{
    max-width:680px;
    margin:17px auto;
    font-size:clamp(42px,4.2vw,62px)
}
.final-cta h2 em{
    color:var(--secondary)
}
.final-cta p{
    max-width:600px;
    color:var(--primary-foreground);
    margin:auto
}
@supports (color:color-mix(in lab, red, red)){
    .final-cta p{
        color:color-mix(in oklab, var(--primary-foreground) 70%, transparent)
    }
}
.final-cta .actions{
    justify-content:center
}
.final-cta .button-primary{
    background:var(--primary-foreground);
    color:var(--forest-deep)
}
.final-cta .button-outline{
    border-color:var(--primary-foreground)
}
@supports (color:color-mix(in lab, red, red)){
    .final-cta .button-outline{
        border-color:color-mix(in oklab, var(--primary-foreground) 40%, transparent)
    }
}
.final-cta .button-outline{
    color:var(--primary-foreground);
    background:0 0
}
.eyebrow.light{
    color:var(--secondary)
}
.trust-row{
    border-top:1px solid var(--primary-foreground);
    justify-content:center;
    gap:35px;
    margin-top:55px;
    padding-top:28px;
    display:flex
}
@supports (color:color-mix(in lab, red, red)){
    .trust-row{
        border-top:1px solid color-mix(in oklab, var(--primary-foreground) 15%, transparent)
    }
}
.trust-row{
    font-size:11px
}
.trust-row span{
    align-items:center;
    gap:7px;
    display:flex
}
@media (prefers-reduced-motion:no-preference){
    .info-card,.benefit-card,.quote-card{
        transition:transform .25s,box-shadow .25s
    }
    .info-card:hover,.benefit-card:hover,.quote-card:hover{
        box-shadow:0 22px 55px var(--forest);
        transform:translateY(-4px)
    }
    @supports (color:color-mix(in lab, red, red)){
        .info-card:hover,.benefit-card:hover,.quote-card:hover{
            box-shadow:0 22px 55px color-mix(in oklab, var(--forest) 15%, transparent)
        }
    }
}
@media (width<=900px){
    .nav-links{
        display:none
    }
    .hero{
        height:86vh;
        min-height:720px
    }
    .hero-copy{
        width:65%
    }
    .pain-grid{
        grid-template-columns:1fr 1fr
    }
    .split-intro,.image-feature,.profile-grid,.faq-grid{
        grid-template-columns:1fr;
        gap:48px
    }
    .image-feature,.profile-grid{
        max-width:700px
    }
    .feature-image-wrap{
        aspect-ratio:4/3
    }
    .portrait-wrap{
        height:600px
    }
    .steps-grid{
        grid-template-columns:1fr 1fr;
        gap:45px 12px
    }
    .testimonial-grid{
        grid-template-columns:1fr
    }
    .contact-card{
        max-width:480px
    }
}
@media (width<=640px){
    .page-shell{
        width:min(100% - 28px,1120px)
    }
    .section{
        padding:78px 0
    }
    .nav{
        height:72px
    }
    .nav>.button{
        display:none
    }
    .hero{
        height:100svh;
        min-height:760px;
        /* padding-top:72px */
    }
    .hero-image{
        object-position:55% center
    }
    .hero-wash{
        background:linear-gradient(90deg, var(--cream) 0%, var(--cream) 63%, var(--cream))
    }
    @supports (color:color-mix(in lab, red, red)){
        .hero-wash{
            background:linear-gradient(90deg, color-mix(in oklab, var(--cream) 98%, transparent) 0%, color-mix(in oklab, var(--cream) 85%, transparent) 63%, color-mix(in oklab, var(--cream) 16%, transparent))
        }
    }
    .hero-content{
        align-items:flex-end;
        padding-bottom:42px
    }
    .hero-copy{
        width:100%
    }
    .hero h1{
        max-width:92%;
        font-size:45px
    }
    .hero-copy>p{
        max-width:90%;
        font-size:14px
    }
    .hero-stats{
        margin-top:34px
    }
    .hero-stats div{
        padding:0 14px
    }
    .hero-stats strong{
        font-size:22px
    }
    .hero-stats span{
        font-size:8px
    }
    .pain-grid,.benefit-grid,.mini-grid,.steps-grid,.credentials{
        grid-template-columns:1fr
    }
    .split-intro{
        gap:42px
    }
    .benefit-card{
        min-height:150px
    }
    .benefit-card h3{
        margin-top:20px
    }
    .image-feature{
        gap:42px
    }
    .image-feature>:first-child{
        order:2
    }
    .feature-image-wrap{
        aspect-ratio:1;
        border-radius:55px 6px
    }
    .video-frame{
        aspect-ratio:4/3
    }
    .steps-grid{
        gap:43px
    }
    .portrait-wrap{
        border-radius:55px 6px;
        height:480px
    }
    .testimonial-grid{
        gap:12px
    }
    .quote-card blockquote{
        font-size:22px
    }
    .proof-row{
        gap:12px
    }
    .proof-row strong{
        font-size:22px
    }
    .proof-row span{
        font-size:8px
    }
    .faq-grid{
        gap:40px
    }
    .contact-card{
        padding:28px
    }
    .trust-row{
        flex-direction:column;
        align-items:center;
        gap:18px
    }
    .final-cta{
        padding-top:78px
    }
    .final-cta .actions{
        margin-inline:auto;
        flex-direction:column;
        align-items:stretch;
        max-width:300px;
        margin-top:28px
    }
}
@property --tw-translate-x{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-translate-y{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-translate-z{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-rotate-x{
    syntax:"*";
    inherits:false
}
@property --tw-rotate-y{
    syntax:"*";
    inherits:false
}
@property --tw-rotate-z{
    syntax:"*";
    inherits:false
}
@property --tw-skew-x{
    syntax:"*";
    inherits:false
}
@property --tw-skew-y{
    syntax:"*";
    inherits:false
}
@property --tw-space-y-reverse{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-space-x-reverse{
    syntax:"*";
    inherits:false;
    initial-value:0
}
@property --tw-border-style{
    syntax:"*";
    inherits:false;
    initial-value:solid
}
@property --tw-leading{
    syntax:"*";
    inherits:false
}
@property --tw-font-weight{
    syntax:"*";
    inherits:false
}
@property --tw-tracking{
    syntax:"*";
    inherits:false
}
@property --tw-ordinal{
    syntax:"*";
    inherits:false
}
@property --tw-slashed-zero{
    syntax:"*";
    inherits:false
}
@property --tw-numeric-figure{
    syntax:"*";
    inherits:false
}
@property --tw-numeric-spacing{
    syntax:"*";
    inherits:false
}
@property --tw-numeric-fraction{
    syntax:"*";
    inherits:false
}
@property --tw-shadow{
    syntax:"*";
    inherits:false;
    initial-value:0 0 #0000
}
@property --tw-shadow-color{
    syntax:"*";
    inherits:false
}
@property --tw-shadow-alpha{
    syntax:"<percentage>";
    inherits:false;
    initial-value:100%
}
@property --tw-inset-shadow{
    syntax:"*";
    inherits:false;
    initial-value:0 0 #0000
}
@property --tw-inset-shadow-color{
    syntax:"*";
    inherits:false
}
@property --tw-inset-shadow-alpha{
    syntax:"<percentage>";
    inherits:false;
    initial-value:100%
}
@property --tw-ring-color{
    syntax:"*";
    inherits:false
}
@property --tw-ring-shadow{
    syntax:"*";
    inherits:false;
    initial-value:0 0 #0000
}
@property --tw-inset-ring-color{
    syntax:"*";
    inherits:false
}
@property --tw-inset-ring-shadow{
    syntax:"*";
    inherits:false;
    initial-value:0 0 #0000
}
@property --tw-ring-inset{
    syntax:"*";
    inherits:false
}
@property --tw-ring-offset-width{
    syntax:"<length>";
    inherits:false;
    initial-value:0
}
@property --tw-ring-offset-color{
    syntax:"*";
    inherits:false;
    initial-value:#fff
}
@property --tw-ring-offset-shadow{
    syntax:"*";
    inherits:false;
    initial-value:0 0 #0000
}
@property --tw-outline-style{
    syntax:"*";
    inherits:false;
    initial-value:solid
}
@property --tw-blur{
    syntax:"*";
    inherits:false
}
@property --tw-brightness{
    syntax:"*";
    inherits:false
}
@property --tw-contrast{
    syntax:"*";
    inherits:false
}
@property --tw-grayscale{
    syntax:"*";
    inherits:false
}
@property --tw-hue-rotate{
    syntax:"*";
    inherits:false
}
@property --tw-invert{
    syntax:"*";
    inherits:false
}
@property --tw-opacity{
    syntax:"*";
    inherits:false
}
@property --tw-saturate{
    syntax:"*";
    inherits:false
}
@property --tw-sepia{
    syntax:"*";
    inherits:false
}
@property --tw-drop-shadow{
    syntax:"*";
    inherits:false
}
@property --tw-drop-shadow-color{
    syntax:"*";
    inherits:false
}
@property --tw-drop-shadow-alpha{
    syntax:"<percentage>";
    inherits:false;
    initial-value:100%
}
@property --tw-drop-shadow-size{
    syntax:"*";
    inherits:false
}
@property --tw-duration{
    syntax:"*";
    inherits:false
}
@property --tw-ease{
    syntax:"*";
    inherits:false
}
@property --tw-content{
    syntax:"*";
    inherits:false;
    initial-value:""
}
@keyframes pulse{
    50%{
        opacity:.5
    }
}
@keyframes enter{
    0%{
        opacity:var(--tw-enter-opacity,1);
        transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));
        filter:blur(var(--tw-enter-blur,0))
    }
}
@keyframes exit{
    to{
        opacity:var(--tw-exit-opacity,1);
        transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));
        filter:blur(var(--tw-exit-blur,0))
    }
}
@keyframes accordion-down{
    0%{
        height:0
    }
    to{
        height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))
    }
}
@keyframes accordion-up{
    0%{
        height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))
    }
    to{
        height:0
    }
}
@keyframes caret-blink{
    0%,70%,to{
        opacity:1
    }
    20%,50%{
        opacity:0
    }
}
