/*! tailwindcss v4.2.1 | 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)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-600:oklch(57.7% .245 27.325);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--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-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--color-border)}html{scroll-behavior:smooth}body{background-color:var(--color-background);color:var(--color-foreground);background-image:radial-gradient(circle at 11% 5%,oklch(81% .09 79/.15),transparent 24rem),radial-gradient(circle at 91% 16%,oklch(71% .05 145/.13),transparent 28rem),linear-gradient(180deg,oklch(98.5% .014 84),var(--background));font-family:var(--font-body);font-feature-settings:"rlig" 1,"calt" 1}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading)}::selection{color:var(--foreground);background:oklch(78% .12 76/.42)}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-\[50\%\]{top:50%}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.left-2{left:calc(var(--spacing) * 2)}.left-4{left:calc(var(--spacing) * 4)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-\[16\/10\]{aspect-ratio:16/10}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.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-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-64{height:calc(var(--spacing) * 64)}.h-80{height:calc(var(--spacing) * 80)}.h-96{height:calc(var(--spacing) * 96)}.h-\[1px\]{height:1px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(100vh-7\.5rem\)\]{max-height:calc(100vh - 7.5rem)}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-14{min-height:calc(var(--spacing) * 14)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-\[5\.1rem\]{min-height:5.1rem}.min-h-\[15rem\]{min-height:15rem}.min-h-\[16rem\]{min-height:16rem}.min-h-\[31rem\]{min-height:31rem}.min-h-\[34rem\]{min-height:34rem}.min-h-\[35rem\]{min-height:35rem}.min-h-\[80px\]{min-height:80px}.min-h-\[calc\(100vh-4\.75rem\)\]{min-height:calc(100vh - 4.75rem)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.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-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-48{width:calc(var(--spacing) * 48)}.w-64{width:calc(var(--spacing) * 64)}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[15rem\]{max-width:15rem}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[8rem\]{min-width:8rem}.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}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0)}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}: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-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[0\.7rem\]{border-radius:.7rem}.rounded-\[0\.8rem\]{border-radius:.8rem}.rounded-\[0\.9rem\]{border-radius:.9rem}.rounded-\[1\.1rem\]{border-radius:1.1rem}.rounded-\[1\.2rem\]{border-radius:1.2rem}.rounded-\[1\.3rem\]{border-radius:1.3rem}.rounded-\[1\.5rem\]{border-radius:1.5rem}.rounded-\[1\.6rem\]{border-radius:1.6rem}.rounded-\[1\.7rem_1\.7rem_0\.8rem_1\.7rem\]{border-radius:1.7rem 1.7rem .8rem}.rounded-\[1\.25rem\]{border-radius:1.25rem}.rounded-\[1\.35rem\]{border-radius:1.35rem}.rounded-\[1\.45rem\]{border-radius:1.45rem}.rounded-\[1rem\]{border-radius:1rem}.rounded-\[1rem_1rem_0\.55rem_1rem\]{border-radius:1rem 1rem .55rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.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-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:var(--color-border)}.border-destructive,.border-destructive\/30{border-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--color-destructive) 30%,transparent)}}.border-input{border-color:var(--color-input)}.border-primary{border-color:var(--color-primary)}.border-primary-foreground\/20{border-color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.border-primary-foreground\/20{border-color:color-mix(in oklab,var(--color-primary-foreground) 20%,transparent)}}.border-primary-foreground\/35{border-color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.border-primary-foreground\/35{border-color:color-mix(in oklab,var(--color-primary-foreground) 35%,transparent)}}.border-primary\/30{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary) 30%,transparent)}}.border-transparent{border-color:#0000}.bg-background,.bg-background\/65{background-color:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/65{background-color:color-mix(in oklab,var(--color-background) 65%,transparent)}}.bg-background\/80{background-color:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,var(--color-background) 80%,transparent)}}.bg-background\/82{background-color:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/82{background-color:color-mix(in oklab,var(--color-background) 82%,transparent)}}.bg-background\/95{background-color:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--color-background) 95%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.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(--color-border)}.bg-card,.bg-card\/90{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.bg-card\/90{background-color:color-mix(in oklab,var(--color-card) 90%,transparent)}}.bg-card\/95{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.bg-card\/95{background-color:color-mix(in oklab,var(--color-card) 95%,transparent)}}.bg-destructive,.bg-destructive\/10{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--color-destructive) 10%,transparent)}}.bg-foreground\/85{background-color:var(--color-foreground)}@supports (color:color-mix(in lab,red,red)){.bg-foreground\/85{background-color:color-mix(in oklab,var(--color-foreground) 85%,transparent)}}.bg-muted,.bg-muted\/50{background-color:var(--color-muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.bg-muted\/55{background-color:var(--color-muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/55{background-color:color-mix(in oklab,var(--color-muted) 55%,transparent)}}.bg-muted\/70{background-color:var(--color-muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/70{background-color:color-mix(in oklab,var(--color-muted) 70%,transparent)}}.bg-popover{background-color:var(--color-popover)}.bg-primary{background-color:var(--color-primary)}.bg-primary-foreground\/10{background-color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.bg-primary-foreground\/10{background-color:color-mix(in oklab,var(--color-primary-foreground) 10%,transparent)}}.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary) 10%,transparent)}}.bg-secondary,.bg-secondary\/65{background-color:var(--color-secondary)}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/65{background-color:color-mix(in oklab,var(--color-secondary) 65%,transparent)}}.bg-transparent{background-color:#0000}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.bg-gradient-to-r,.bg-gradient-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab}.from-background{--tw-gradient-from:var(--color-background);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-background\/95{--tw-gradient-from:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.from-background\/95{--tw-gradient-from:color-mix(in oklab,var(--color-background) 95%,transparent)}}.from-background\/95{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-card{--tw-gradient-from:var(--color-card);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-background\/58{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.via-background\/58{--tw-gradient-via:color-mix(in oklab,var(--color-background) 58%,transparent)}}.via-background\/58{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-background\/88{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.via-background\/88{--tw-gradient-via:color-mix(in oklab,var(--color-background) 88%,transparent)}}.via-background\/88{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-background\/90{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.via-background\/90{--tw-gradient-via:color-mix(in oklab,var(--color-background) 90%,transparent)}}.via-background\/90{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-background\/92{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.via-background\/92{--tw-gradient-via:color-mix(in oklab,var(--color-background) 92%,transparent)}}.via-background\/92{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-card\/30{--tw-gradient-via:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.via-card\/30{--tw-gradient-via:color-mix(in oklab,var(--color-card) 30%,transparent)}}.via-card\/30{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-background\/15{--tw-gradient-to:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.to-background\/15{--tw-gradient-to:color-mix(in oklab,var(--color-background) 15%,transparent)}}.to-background\/15{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-background\/18{--tw-gradient-to:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.to-background\/18{--tw-gradient-to:color-mix(in oklab,var(--color-background) 18%,transparent)}}.to-background\/18{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-background\/20{--tw-gradient-to:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.to-background\/20{--tw-gradient-to:color-mix(in oklab,var(--color-background) 20%,transparent)}}.to-background\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-\[62\%_center\]{object-position:62% center}.object-\[66\%_center\]{object-position:66% center}.object-center{object-position:center}.p-1{padding:calc(var(--spacing) * 1)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.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-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.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-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-9{padding-block:calc(var(--spacing) * 9)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-16{padding-top:calc(var(--spacing) * 16)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.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}.font-\[family-name\:var\(--font-heading\)\]{font-family:var(--font-heading)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--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\.52rem\]{font-size:.52rem}.text-\[0\.62rem\]{font-size:.62rem}.text-\[10px\]{font-size:10px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\[0\.95\]{--tw-leading:.95;line-height:.95}.leading-\[0\.96\]{--tw-leading:.96;line-height:.96}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.17em\]{--tw-tracking:.17em;letter-spacing:.17em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--color-accent)}.text-card-foreground{color:var(--color-card-foreground)}.text-destructive{color:var(--color-destructive)}.text-destructive-foreground{color:var(--color-destructive-foreground)}.text-foreground,.text-foreground\/50{color:var(--color-foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/50{color:color-mix(in oklab,var(--color-foreground) 50%,transparent)}}.text-muted-foreground,.text-muted-foreground\/80{color:var(--color-muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/80{color:color-mix(in oklab,var(--color-muted-foreground) 80%,transparent)}}.text-popover-foreground{color:var(--color-popover-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground,.text-primary-foreground\/70{color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.text-primary-foreground\/70{color:color-mix(in oklab,var(--color-primary-foreground) 70%,transparent)}}.text-primary-foreground\/80{color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.text-primary-foreground\/80{color:color-mix(in oklab,var(--color-primary-foreground) 80%,transparent)}}.text-primary-foreground\/90{color:var(--color-primary-foreground)}@supports (color:color-mix(in lab,red,red)){.text-primary-foreground\/90{color:color-mix(in oklab,var(--color-primary-foreground) 90%,transparent)}}.text-secondary-foreground{color:var(--color-secondary-foreground)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-primary{accent-color:var(--color-primary)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-md{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)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow-sm,.shadow-xl{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)}.ring\!{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-shadow{transition-property:box-shadow;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-500{--tw-duration:.5s;transition-duration:.5s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:scale-\[1\.02\]:is(:where(.group):hover *){scale:1.02}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:var(--color-muted)}@supports (color:color-mix(in lab,red,red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:color-mix(in oklab,var(--color-muted) 40%,transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group).destructive *){color:var(--color-red-300)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.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(--color-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-\[1\.03\]:hover{scale:1.03}.hover\:bg-accent:hover{background-color:var(--color-accent)}.hover\:bg-destructive\/90:hover{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-destructive) 90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--color-primary) 90%,transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:var(--color-secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-secondary) 80%,transparent)}}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-accent-foreground:hover{color:var(--color-accent-foreground)}.hover\:text-foreground:hover{color:var(--color-foreground)}.hover\:text-primary:hover,.hover\:text-primary\/80:hover{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--color-primary) 80%,transparent)}}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.hover\:shadow-md:hover,.hover\:shadow-sm:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:color-mix(in oklab,var(--color-destructive) 30%,transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group).destructive *):hover{background-color:var(--color-destructive)}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group).destructive *):hover{color:var(--color-destructive-foreground)}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group).destructive *):hover{color:var(--color-red-50)}}.focus\:bg-accent:focus{background-color:var(--color-accent)}.focus\:text-accent-foreground:focus{color:var(--color-accent-foreground)}.focus\:opacity-100:focus{opacity:1}.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(--color-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}.group-\[\.destructive\]\:focus\:ring-destructive:is(:where(.group).destructive *):focus{--tw-ring-color:var(--color-destructive)}.group-\[\.destructive\]\:focus\:ring-red-400:is(:where(.group).destructive *):focus{--tw-ring-color:var(--color-red-400)}.group-\[\.destructive\]\:focus\:ring-offset-red-600:is(:where(.group).destructive *):focus{--tw-ring-offset-color:var(--color-red-600)}.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(--color-ring)}.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\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.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\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.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-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--color-background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--color-foreground)}.data-\[state\=active\]\:shadow-sm[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\=open\]\:bg-accent[data-state=open]{background-color:var(--color-accent)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--color-muted-foreground)}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}@media (min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:calc(var(--spacing) * 0)}.sm\:bottom-0{bottom:calc(var(--spacing) * 0)}.sm\:bottom-5{bottom:calc(var(--spacing) * 5)}.sm\:left-6{left:calc(var(--spacing) * 6)}.sm\:aspect-\[16\/10\]{aspect-ratio:16/10}.sm\:min-h-56{min-height:calc(var(--spacing) * 56)}.sm\:min-h-\[19rem\]{min-height:19rem}.sm\:min-h-\[20rem\]{min-height:20rem}.sm\:min-h-\[36rem\]{min-height:36rem}.sm\:min-h-\[38rem\]{min-height:38rem}.sm\:max-w-xs{max-width:var(--container-xs)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:justify-center{justify-content:center}.sm\:justify-end{justify-content:flex-end}.sm\:gap-6{gap:calc(var(--spacing) * 6)}: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-lg)}.sm\:bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.sm\:from-background\/96{--tw-gradient-from:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.sm\:from-background\/96{--tw-gradient-from:color-mix(in oklab,var(--color-background) 96%,transparent)}}.sm\:from-background\/96{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.sm\:via-background\/55{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.sm\:via-background\/55{--tw-gradient-via:color-mix(in oklab,var(--color-background) 55%,transparent)}}.sm\:via-background\/55{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.sm\:via-background\/72{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.sm\:via-background\/72{--tw-gradient-via:color-mix(in oklab,var(--color-background) 72%,transparent)}}.sm\:via-background\/72{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.sm\:via-background\/75{--tw-gradient-via:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.sm\:via-background\/75{--tw-gradient-via:color-mix(in oklab,var(--color-background) 75%,transparent)}}.sm\:via-background\/75{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.sm\:to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:p-9{padding:calc(var(--spacing) * 9)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:px-9{padding-inline:calc(var(--spacing) * 9)}.sm\:py-9{padding-block:calc(var(--spacing) * 9)}.sm\:py-10{padding-block:calc(var(--spacing) * 10)}.sm\:py-12{padding-block:calc(var(--spacing) * 12)}.sm\:py-14{padding-block:calc(var(--spacing) * 14)}.sm\:py-16{padding-block:calc(var(--spacing) * 16)}.sm\:py-18{padding-block:calc(var(--spacing) * 18)}.sm\:py-20{padding-block:calc(var(--spacing) * 20)}.sm\:py-24{padding-block:calc(var(--spacing) * 24)}.sm\:pt-9{padding-top:calc(var(--spacing) * 9)}.sm\:pt-12{padding-top:calc(var(--spacing) * 12)}.sm\:pb-20{padding-bottom:calc(var(--spacing) * 20)}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-\[0\.65rem\]{font-size:.65rem}}@media (min-width:48rem){.md\:block{display:block}.md\:hidden{display:none}.md\:max-w-\[420px\]{max-width:420px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.md\:grid-cols-\[1\.1fr_0\.9fr\]{grid-template-columns:1.1fr .9fr}.md\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}.md\:grid-cols-\[1\.25fr_0\.75fr\]{grid-template-columns:1.25fr .75fr}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:gap-10{gap:calc(var(--spacing) * 10)}.md\:bg-background\/44{background-color:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.md\:bg-background\/44{background-color:color-mix(in oklab,var(--color-background) 44%,transparent)}}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:pt-8{padding-top:calc(var(--spacing) * 8)}}@media (min-width:64rem){.lg\:hidden{display:none}.lg\:min-h-\[44rem\]{min-height:44rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[0\.7fr_1\.3fr\]{grid-template-columns:.7fr 1.3fr}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[0\.78fr_1\.22fr\]{grid-template-columns:.78fr 1.22fr}.lg\:grid-cols-\[0\.82fr_1\.18fr\]{grid-template-columns:.82fr 1.18fr}.lg\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}.lg\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-12{gap:calc(var(--spacing) * 12)}.lg\:gap-14{gap:calc(var(--spacing) * 14)}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:p-10{padding:calc(var(--spacing) * 10)}.lg\:p-11{padding:calc(var(--spacing) * 11)}.lg\:p-12{padding:calc(var(--spacing) * 12)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:py-4{padding-block:calc(var(--spacing) * 4)}.lg\:py-16{padding-block:calc(var(--spacing) * 16)}.lg\:py-20{padding-block:calc(var(--spacing) * 20)}.lg\:py-24{padding-block:calc(var(--spacing) * 24)}.lg\:py-28{padding-block:calc(var(--spacing) * 28)}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.lg\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (min-width:80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&_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}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}:root{--radius:1.1rem;--background:oklch(95.6% .022 87);--foreground:oklch(25% .035 67);--card:oklch(98% .012 86);--card-foreground:oklch(25% .035 67);--popover:oklch(98% .012 86);--popover-foreground:oklch(25% .035 67);--primary:oklch(28% .053 145);--primary-foreground:oklch(98% .012 86);--secondary:oklch(84% .092 119);--secondary-foreground:oklch(25% .045 139);--muted:oklch(91% .035 95);--muted-foreground:oklch(43% .03 69);--accent:oklch(82% .135 79);--accent-foreground:oklch(25% .035 67);--destructive:oklch(54% .18 28);--destructive-foreground:oklch(98% .014 84);--border:oklch(80% .045 84);--input:oklch(86% .032 86);--ring:oklch(59% .1 79);--font-heading:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--font-body:"Trebuchet MS","Segoe UI",sans-serif;--shadow-sm:0 3px 10px oklch(25% .035 67/.08);--shadow-md:0 14px 32px oklch(25% .035 67/.13);--shadow-lg:0 24px 54px oklch(25% .035 67/.18)}.dark{--background:oklch(23% .038 137);--foreground:oklch(96.8% .018 85);--card:oklch(28% .04 135);--card-foreground:oklch(96.8% .018 85);--popover:oklch(28% .04 135);--popover-foreground:oklch(96.8% .018 85);--primary:oklch(79% .11 78);--primary-foreground:oklch(26% .04 70);--secondary:oklch(46% .07 131);--secondary-foreground:oklch(97% .014 84);--muted:oklch(32% .035 133);--muted-foreground:oklch(86% .029 86);--accent:oklch(77% .13 76);--accent-foreground:oklch(27% .04 70);--border:oklch(43% .055 129);--input:oklch(38% .045 132);--ring:oklch(79% .11 78);--destructive:oklch(65% .18 29);--destructive-foreground:oklch(23% .038 137)}.storybook-hero{background:radial-gradient(circle at 72% 35%,oklch(81% .13 77/.5),#0000 16rem),radial-gradient(circle at 8% 85%,oklch(70% .075 139/.28),#0000 20rem),linear-gradient(125deg,oklch(98.5% .014 84),oklch(93% .035 96))}.hero-story-panel{border:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.hero-story-panel{border:1px solid color-mix(in oklch,var(--border),transparent 15%)}}.hero-story-panel{background:var(--card);border-radius:1.85rem 1.85rem 1.85rem .75rem}@supports (color:color-mix(in lab,red,red)){.hero-story-panel{background:color-mix(in oklch,var(--card),transparent 6%)}}.hero-story-panel{box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.eyebrow-pill{border:1px solid var(--border);background:var(--secondary);letter-spacing:.14em;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.7rem;display:inline-flex}.eyebrow-pill,.section-kicker{color:var(--primary);text-transform:uppercase;font-weight:800}.section-kicker{letter-spacing:.16em;font-size:.75rem}.adventure-button,.explore-button,.final-door-button{border-radius:.9rem;justify-content:center;align-items:center;gap:.5rem;min-height:3rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:800;transition:transform .18s,background-color .18s,color .18s;display:inline-flex}.adventure-button{border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-md)}.explore-button{border:1px solid var(--border);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}.adventure-button:hover,.explore-button:hover{transform:translateY(-2px)}.adventure-button:hover{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.adventure-button:hover{background:color-mix(in oklch,var(--primary),black 10%)}}.explore-button:hover{background:var(--secondary)}.friend-frame{border:1px solid var(--border);background:var(--muted);box-shadow:var(--shadow-md);border-radius:1.8rem 1.8rem .8rem}.friend-badge{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);box-shadow:var(--shadow-sm);border-radius:999px;padding:.6rem .9rem;font-size:.85rem;font-weight:700}.friend-badge span{color:var(--primary)}.passport-band{background:linear-gradient(115deg,var(--secondary),var(--card))}@supports (color:color-mix(in lab,red,red)){.passport-band{background:linear-gradient(115deg,color-mix(in oklch,var(--secondary),var(--card) 62%),var(--card))}}.passport-step{border:1px solid var(--border);background:var(--card);min-height:13rem;box-shadow:var(--shadow-sm);border-radius:1.4rem;padding:1.5rem;position:relative;overflow:hidden}.passport-number{color:var(--accent);position:absolute;top:.6rem;right:1rem}@supports (color:color-mix(in lab,red,red)){.passport-number{color:color-mix(in oklch,var(--accent),var(--card) 55%)}}.passport-number{font-family:var(--font-heading);font-size:3.8rem;font-weight:800;line-height:1}.passport-icon{background:var(--primary);width:2.8rem;height:2.8rem;color:var(--accent);border-radius:.85rem;place-items:center;display:grid;position:relative}.passport-step h3{margin-top:1.4rem;font-size:1.45rem;font-weight:800;position:relative}.passport-step p{max-width:18rem;color:var(--muted-foreground);margin-top:.55rem;font-size:.875rem;line-height:1.5;position:relative}.room-map-section{background:radial-gradient(circle at 93% 8%,var(--accent),transparent 20rem),var(--muted)}@supports (color:color-mix(in lab,red,red)){.room-map-section{background:radial-gradient(circle at 93% 8%,color-mix(in oklch,var(--accent),transparent 80%),transparent 20rem),var(--muted)}}.map-link{color:var(--primary);align-items:center;gap:.25rem;font-size:.875rem;font-weight:800;display:inline-flex}.map-link:hover{color:var(--foreground)}.room-card{background:var(--card);border-radius:1.5rem;transition:box-shadow .18s,transform .18s;overflow:hidden}.room-card:hover{transform:translateY(-3px)}.room-card-library{border-top:.35rem solid oklch(57% .075 65)}.room-card-kitchen{border-top:.35rem solid var(--accent)}.room-card-studio{border-top:.35rem solid oklch(75% .09 338)}.room-card-games{border-top:.35rem solid oklch(75% .08 225)}.room-card-garden{border-top:.35rem solid var(--secondary)}.room-card-observatory{border-top:.35rem solid oklch(72% .08 292)}.room-door-label{color:var(--primary);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.35rem;font-size:.68rem;font-weight:800;display:inline-flex}.printable-frame{border:.6rem solid var(--card);box-shadow:var(--shadow-lg);border-radius:1.9rem 1.9rem .85rem}.final-door-section{background:var(--primary)}.final-door-section:after{background:linear-gradient(120deg,var(--primary),transparent);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.final-door-section:after{background:linear-gradient(120deg,color-mix(in oklch,var(--primary),transparent 30%),transparent)}}.final-door-section:after{content:""}.final-door-button{border:1px solid var(--primary-foreground);margin-top:2rem;position:relative}@supports (color:color-mix(in lab,red,red)){.final-door-button{border:1px solid color-mix(in oklch,var(--primary-foreground),transparent 70%)}}.final-door-button{background:var(--primary-foreground)}@supports (color:color-mix(in lab,red,red)){.final-door-button{background:color-mix(in oklch,var(--primary-foreground),transparent 88%)}}.final-door-button{color:var(--primary-foreground);box-shadow:var(--shadow-md)}.final-door-button:hover{background:var(--primary-foreground)}@supports (color:color-mix(in lab,red,red)){.final-door-button:hover{background:color-mix(in oklch,var(--primary-foreground),transparent 80%)}}.storybook-hero:after,.storybook-hero:before{content:"";pointer-events:none;opacity:.55;position:absolute}.storybook-hero:before{background:radial-gradient(at 0 0,oklch(55% .08 132/.25),#0000 70%);width:22rem;height:16rem;inset:0 auto auto 0}.storybook-hero:after{border:3rem solid oklch(66% .08 135/.11);border-radius:50%;width:26rem;height:25rem;bottom:-8rem;right:-5rem}.doghouse-mark{border:1px solid var(--border);background:oklch(67% .085 77);border-radius:.72rem;justify-content:center;align-items:flex-end;width:2.8rem;height:2.8rem;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 4px oklch(96% .018 85/.45)}.doghouse-roof{background:oklch(56% .075 75);border-top:.24rem solid oklch(35% .062 143);border-left:.24rem solid oklch(35% .062 143);width:2.1rem;height:1.35rem;position:absolute;top:.25rem;transform:rotate(45deg)}.doghouse-door{z-index:1;color:oklch(83% .13 78);background:oklch(43% .07 61);border:2px solid oklch(36% .05 67);border-bottom:0;border-radius:.75rem .75rem 0 0;flex-direction:column;justify-content:center;align-items:center;gap:.05rem;width:1.35rem;height:1.65rem;display:flex;position:relative}.doghouse-door span{color:oklch(97% .015 85);font-family:var(--font-heading);font-size:.27rem;font-weight:800;line-height:1}.doghouse-scene{aspect-ratio:1.1;border:1px solid var(--border);box-shadow:var(--shadow-lg);background:linear-gradient(oklch(72% .055 205),oklch(87% .05 112) 46%,oklch(60% .08 137));border-radius:2rem 2rem 1rem 1rem;position:relative;overflow:hidden}.doghouse-scene:before{content:"";background:radial-gradient(at 50% 38%,#0000 0 24%,oklch(35% .06 139/.28) 70%);position:absolute;inset:0}.scene-meadow{background:radial-gradient(circle at 18% 18%,oklch(84% .11 93) 0 .35rem,#0000 .45rem),radial-gradient(circle at 72% 12%,oklch(74% .08 299) 0 .32rem,#0000 .42rem),radial-gradient(circle at 44% 30%,oklch(92% .08 110) 0 .28rem,#0000 .38rem),linear-gradient(oklch(69% .11 139),oklch(43% .07 139));border-radius:50% 50% 0 0;height:43%;position:absolute;bottom:-19%;left:-9%;right:-9%}.scene-doghouse{z-index:2;background:repeating-linear-gradient(90deg,oklch(53% .07 66) 0 8%,oklch(61% .078 73) 8% 17%);border:.55rem solid oklch(37% .048 62);border-top:0;border-radius:.4rem;width:44%;height:46%;position:absolute;bottom:20%;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 .18rem oklch(74% .08 82/.6),0 1rem 1.6rem oklch(27% .04 70/.26)}.scene-roof{background:repeating-linear-gradient(135deg,oklch(49% .075 137) 0 .55rem,oklch(41% .065 137) .55rem 1.05rem);border-top:1rem solid oklch(35% .065 140);border-left:1rem solid oklch(35% .065 140);border-radius:.45rem;width:134%;height:55%;position:absolute;top:-26%;left:-17%;transform:rotate(45deg)}.scene-door{z-index:2;color:oklch(88% .13 82);background:radial-gradient(circle at 50% 48%,oklch(86% .15 79),oklch(60% .12 68) 46%,oklch(36% .052 61) 76%);border:.23rem solid oklch(36% .048 62);border-bottom:0;border-radius:2.7rem 2.7rem 0 0;place-items:center;width:34%;height:62%;display:grid;position:absolute;bottom:0;right:22%;box-shadow:0 0 1.9rem oklch(84% .15 76/.75)}.scene-sign{color:oklch(26% .04 70);font-family:var(--font-heading);background:oklch(86% .09 83);border-radius:.2rem;padding:.15rem .35rem;font-size:clamp(.56rem,1.5vw,.9rem);font-weight:700;top:18%;left:50%;transform:translate(-50%)}.scene-lantern,.scene-sign{z-index:3;position:absolute}.scene-lantern{background:oklch(85% .14 77);border:.19rem solid oklch(38% .05 64);border-radius:.28rem;width:1.4rem;height:2rem;top:42%;right:12%;box-shadow:0 0 1.6rem oklch(85% .14 77/.9)}.scene-lantern:before{content:"";border:.15rem solid oklch(38% .05 64);border-bottom:0;border-radius:1rem 1rem 0 0;width:.7rem;height:.65rem;position:absolute;top:-.55rem;left:50%;transform:translate(-50%)}.scene-stars{z-index:2;color:oklch(88% .15 78);filter:drop-shadow(0 0 .45rem oklch(88% .15 78));gap:1.3rem;display:flex;position:absolute;top:12%;left:16%}.scene-stars svg:first-child{width:1.3rem;height:1.3rem}.scene-stars svg:nth-child(2){width:.75rem;height:.75rem;margin-top:1.7rem}.scene-stars svg:nth-child(3){width:1rem;height:1rem;margin-top:-.6rem}.room-card{border:1px solid var(--border);min-height:17rem;box-shadow:var(--shadow-sm);border-radius:1.2rem;flex-direction:column;justify-content:space-between;padding:1.7rem;display:flex}.room-card:hover{box-shadow:var(--shadow-md)}.room-icon{border:1px solid var(--border);width:2.7rem;height:2.7rem;color:var(--primary);background:var(--card);border-radius:.75rem;place-items:center;display:grid}.friend-card{border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.15rem;padding:1.35rem}.character-portrait{border:1px solid var(--border);background:linear-gradient(oklch(87% .06 112),oklch(74% .08 137));border-radius:1.2rem 1.2rem 48% 48%;height:10rem;position:relative;overflow:hidden}.character-face{z-index:2;border:.22rem solid oklch(33% .04 65/.28);border-radius:47% 47% 45% 45%;width:6.8rem;height:6.5rem;position:absolute;top:2rem;left:50%;transform:translate(-50%)}.character-ear{z-index:1;border:.2rem solid oklch(33% .04 65/.28);width:2.5rem;height:5.3rem;position:absolute;top:2.25rem}.character-ear.left{left:calc(50% - 4rem)}.character-ear.right{right:calc(50% - 4rem)}.character-eye{background:oklch(24% .035 60);border-radius:50%;width:.68rem;height:.76rem;position:absolute;top:2.35rem;box-shadow:inset .14rem .12rem oklch(94% .01 80)}.character-eye.left{left:1.45rem}.character-eye.right{right:1.45rem}.character-nose{background:oklch(27% .035 57);border-radius:40% 40% 55% 55%;width:.75rem;height:.48rem;top:3.65rem}.character-nose,.character-smile{position:absolute;left:50%;transform:translate(-50%)}.character-smile{border-bottom:.12rem solid oklch(32% .04 62);border-radius:50%;width:1.18rem;height:.62rem;top:4.2rem}.riley-character .character-face{background:oklch(88% .052 83)}.riley-character .character-ear{background:oklch(80% .045 77);border-radius:45% 45% 55% 55%}.sabino-character .character-face{background:oklch(70% .11 68)}.sabino-character .character-ear{background:oklch(45% .045 63);border-radius:85% 15% 80%;height:4.4rem;top:.75rem}.sabino-character .character-ear.right{transform:scaleX(-1)}.sabino-character:after{content:"";z-index:1;background:oklch(43% .045 245);border-radius:50% 50% 0 0;width:66%;height:3.8rem;position:absolute;bottom:0;left:17%}.buddy-character .character-face{background:oklch(62% .1 56)}.buddy-character .character-ear{background:oklch(35% .055 53);border-radius:48% 48% 60% 60%}.buddy-seam{z-index:3;background:oklch(37% .045 53/.65);width:.12rem;height:2.4rem;position:absolute;top:2rem;left:50%}.buddy-heart{z-index:4;color:oklch(55% .18 28);font-size:1.35rem;position:absolute;bottom:1.2rem;right:21%}.buddy-collar{z-index:3;background:oklch(55% .18 28);border-radius:999px;width:36%;height:.42rem;position:absolute;bottom:1.65rem;left:32%}.footer-glow{background:radial-gradient(oklch(81% .13 76/.23),#0000 65%);border-radius:50%;width:28rem;height:20rem;position:absolute;top:-10rem;right:10%}.buddy-tag{z-index:4;background:oklch(82% .13 77);border-radius:44% 44% 52% 52%;width:.62rem;height:.4rem;position:absolute;bottom:1.25rem;left:calc(50% - .31rem);box-shadow:inset 0 0 0 .09rem oklch(53% .07 58)}.signup-page-shell,.storybook-page-shell{background:radial-gradient(circle at 7% 8%,oklch(87% .075 113/.5),transparent 18rem),radial-gradient(circle at 94% 10%,oklch(86% .075 79/.42),transparent 19rem),linear-gradient(180deg,oklch(97.5% .018 90),var(--background))}.storybook-content-shell{background:radial-gradient(circle at 7% 8%,oklch(87% .075 113/.38),transparent 18rem),radial-gradient(circle at 94% 10%,oklch(86% .075 79/.28),transparent 19rem),linear-gradient(180deg,oklch(97.5% .018 90),var(--background));min-height:calc(100vh - 4.75rem)}.storybook-page-heading{color:var(--foreground);font-family:var(--font-heading);letter-spacing:-.035em;font-size:clamp(2rem,4vw,3.15rem);font-weight:700;line-height:1.05}.storybook-page-intro{max-width:42rem;color:var(--muted-foreground);margin-top:.8rem;font-size:1rem;line-height:1.7}.storybook-loading-shell{background:var(--background);min-height:calc(100vh - 4.75rem)}.storybook-form-card{background:radial-gradient(circle at 93% 6%,oklch(84% .12 79/.19),transparent 14rem),var(--card);box-shadow:var(--shadow-md);border-radius:2rem 2rem 2rem .85rem}.storybook-empty-state{border:1px dashed var(--border)}@supports (color:color-mix(in lab,red,red)){.storybook-empty-state{border:1px dashed color-mix(in oklch,var(--border),var(--primary) 20%)}}.storybook-empty-state{background:radial-gradient(circle at 13% 10%,oklch(88% .075 110/.4),transparent 10rem),var(--card);box-shadow:var(--shadow-sm);border-radius:1.7rem 1.7rem .75rem}.member-card{border-radius:1.35rem 1.35rem .7rem;transition:box-shadow .18s,transform .18s}.member-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.settings-card{border-radius:1.45rem 1.45rem .7rem}.tier-badge-free{border-color:var(--border);background:var(--muted);color:var(--muted-foreground)}.tier-badge-pro{border-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.tier-badge-pro{border-color:color-mix(in oklch,var(--secondary),var(--border) 35%)}}.tier-badge-pro{background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.tier-badge-pro{background:color-mix(in oklch,var(--secondary),var(--card) 48%)}}.tier-badge-pro{color:var(--primary)}.tier-badge-vip{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.tier-badge-vip{border-color:color-mix(in oklch,var(--accent),var(--border) 48%)}}.tier-badge-vip{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.tier-badge-vip{background:color-mix(in oklch,var(--accent),var(--card) 72%)}}.tier-badge-vip{color:var(--foreground)}.storybook-paper{background:radial-gradient(circle at 12% 4%,oklch(94% .05 89/.7),transparent 12rem),radial-gradient(circle at 89% 95%,oklch(89% .065 109/.55),transparent 16rem),var(--card)}.library-sparkles,.pricing-butterflies{color:var(--accent);opacity:.78;pointer-events:none;gap:1rem;display:flex;position:absolute;inset:1rem 2rem auto auto}.library-sparkles svg:first-child,.pricing-butterflies svg:nth-child(3){width:1.45rem;height:1.45rem}.library-sparkles svg:nth-child(2),.pricing-butterflies svg:first-child{width:.78rem;height:.78rem;margin-top:2.2rem}.library-sparkles svg:nth-child(3),.pricing-butterflies svg:nth-child(2){width:1rem;height:1rem;margin-top:-.7rem}.library-preview-card{border:1px solid var(--border);min-height:17rem;box-shadow:var(--shadow-sm);border-radius:1.5rem;flex-direction:column;padding:1.6rem;display:flex;position:relative;overflow:hidden}.library-preview-card:after{content:"";border:1.2rem solid oklch(94% .04 90/.65);border-radius:50%;width:8rem;height:8rem;position:absolute;bottom:-2rem;right:-1.5rem}.library-preview-card:hover{box-shadow:var(--shadow-md)}.library-preview-icon{border:1px solid var(--border);width:3rem;height:3rem;color:var(--primary);background:var(--card);box-shadow:var(--shadow-sm);border-radius:.95rem;place-items:center;display:grid}.library-preview{background:linear-gradient(145deg,oklch(91% .055 104),oklch(97% .018 87))}.game-preview{background:linear-gradient(145deg,oklch(92% .05 227),oklch(97% .018 87))}.printable-preview{background:linear-gradient(145deg,oklch(93% .055 339),oklch(97% .018 87))}.meadow-note{background:radial-gradient(circle at 7% 85%,oklch(74% .08 139/.22),transparent 10rem),var(--card)}.premium-preview{background:radial-gradient(circle at 85% 10%,oklch(85% .13 76/.32),#0000 10rem),linear-gradient(145deg,oklch(94% .04 95),oklch(91% .052 113))}.free-preview{background:linear-gradient(145deg,oklch(93% .048 226),var(--card))}.parent-promise{background:linear-gradient(145deg,oklch(94% .042 339),var(--card))}.signup-welcome{background:linear-gradient(145deg,oklch(91% .06 110),oklch(96% .026 93))}@media (max-width:639px){.signup-page-shell,.storybook-page-shell{background-image:linear-gradient(180deg,oklch(97.5% .018 90),var(--background))}.library-sparkles,.pricing-butterflies{right:1.1rem}.library-preview-card{min-height:14.5rem}.storybook-content-shell{background-image:linear-gradient(180deg,oklch(97.5% .018 90),var(--background))}}.coming-soon-card{min-height:100%}.coming-soon-placeholder{background:radial-gradient(circle at 21% 17%,oklch(95% .065 105/.9),#0000 18%),radial-gradient(circle at 82% 77%,oklch(92% .055 341/.8),#0000 22%),linear-gradient(145deg,oklch(96% .025 89),oklch(91% .045 111))}.coming-soon-placeholder-mark{color:var(--primary);opacity:.78;align-items:center;gap:.25rem;display:flex}.printables-welcome .eyebrow-pill{background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.printables-welcome .eyebrow-pill{background:color-mix(in oklch,var(--secondary),var(--card) 36%)}}.printable-feature{background:radial-gradient(circle at 93% 9%,oklch(84% .12 79/.2),transparent 16rem),var(--card);border-radius:2rem 2rem 2rem .9rem;position:relative}.printable-feature:after{content:"";pointer-events:none;border:1.4rem solid oklch(86% .07 112/.22);border-radius:50%;width:14rem;height:14rem;position:absolute;bottom:-5rem;right:-3.5rem}.printable-feature>*{z-index:1;position:relative}.printable-preview-panel{background:radial-gradient(circle at 10% 88%,oklch(89% .065 111/.38),transparent 17rem),var(--card);border-radius:1.75rem 1.75rem .8rem}.printable-filter-panel{background:linear-gradient(120deg,var(--secondary),var(--card));border-radius:1.35rem 1.35rem .7rem}@supports (color:color-mix(in lab,red,red)){.printable-filter-panel{background:linear-gradient(120deg,color-mix(in oklch,var(--secondary),var(--card) 72%),var(--card))}}.printable-filter-panel{box-shadow:var(--shadow-sm)}@media (max-width:639px){.printable-feature{border-radius:1.55rem 1.55rem 1.55rem .7rem}.printable-preview-panel{border-radius:1.45rem 1.45rem .65rem}}.magical-entrance{z-index:100;isolation:isolate;background:var(--primary);min-height:100dvh;color:var(--primary-foreground);place-items:center;animation:magical-entrance-arrive .36s ease-out both;display:grid;position:fixed;inset:0;overflow:hidden}.magical-entrance--opening{pointer-events:none;animation:magical-entrance-leave .56s cubic-bezier(.67,0,.33,1) both}.magical-entrance__veil,.magical-entrance__video{width:100%;height:100%;position:absolute;inset:0}.magical-entrance__video{z-index:-3;object-fit:cover;object-position:center;background:var(--primary)}.magical-entrance__veil{z-index:-2;background:linear-gradient(180deg,var(--primary),transparent 45%,var(--foreground)),linear-gradient(90deg,var(--foreground),transparent 38%,var(--foreground))}@supports (color:color-mix(in lab,red,red)){.magical-entrance__veil{background:linear-gradient(180deg,color-mix(in oklch,var(--primary),transparent 30%),transparent 45%,color-mix(in oklch,var(--foreground),transparent 14%)),linear-gradient(90deg,color-mix(in oklch,var(--foreground),transparent 32%),transparent 38%,color-mix(in oklch,var(--foreground),transparent 48%))}}.magical-entrance__content{width:min(100% - 2rem,36rem);padding:1.5rem 1rem max(1.5rem,env(safe-area-inset-bottom));text-align:center;text-shadow:0 2px 12px var(--foreground)}@supports (color:color-mix(in lab,red,red)){.magical-entrance__content{text-shadow:0 2px 12px color-mix(in oklch,var(--foreground),transparent 28%)}}.magical-entrance__eyebrow{color:var(--accent);margin:0}@supports (color:color-mix(in lab,red,red)){.magical-entrance__eyebrow{color:color-mix(in oklch,var(--accent),var(--primary-foreground) 35%)}}.magical-entrance__eyebrow{letter-spacing:.17em;text-transform:uppercase;font-size:.72rem;font-weight:800}.magical-entrance__title{max-width:14ch;color:var(--primary-foreground);font-family:var(--font-heading);letter-spacing:-.04em;margin:.7rem auto 0;font-size:clamp(2.2rem,8vw,4.9rem);font-weight:700;line-height:.94}.magical-entrance__description{max-width:30rem;color:var(--primary-foreground);margin:1rem auto 0}@supports (color:color-mix(in lab,red,red)){.magical-entrance__description{color:color-mix(in oklch,var(--primary-foreground),var(--muted) 15%)}}.magical-entrance__description{font-size:clamp(1rem,3.6vw,1.2rem);font-weight:700;line-height:1.45}.magical-entrance__action,.magical-entrance__skip{cursor:pointer;font-family:inherit;font-weight:800}.magical-entrance__action{border:1px solid var(--accent);justify-content:center;align-items:center;gap:.6rem;min-width:min(100%,17rem);min-height:3.5rem;margin-top:1.35rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.magical-entrance__action{border:1px solid color-mix(in oklch,var(--accent),var(--primary-foreground) 24%)}}.magical-entrance__action{background:var(--accent);box-shadow:0 .8rem 2rem var(--foreground);border-radius:1.15rem 1.15rem .78rem}@supports (color:color-mix(in lab,red,red)){.magical-entrance__action{box-shadow:0 .8rem 2rem color-mix(in oklch,var(--foreground),transparent 58%)}}.magical-entrance__action{color:var(--accent-foreground);font-size:1.05rem;transition:transform .18s,box-shadow .18s,background-color .18s}.magical-entrance__action:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.magical-entrance__action:hover{background:color-mix(in oklch,var(--accent),var(--card) 15%)}}.magical-entrance__action:hover{box-shadow:0 1rem 2.4rem var(--foreground)}@supports (color:color-mix(in lab,red,red)){.magical-entrance__action:hover{box-shadow:0 1rem 2.4rem color-mix(in oklch,var(--foreground),transparent 48%)}}.magical-entrance__action:hover{transform:translateY(-2px)}.magical-entrance__action:active{transform:translateY(1px)scale(.98)}.magical-entrance__skip{border:0;border-bottom:1px solid var(--primary-foreground);justify-content:center;align-items:center;gap:.3rem;min-height:2.75rem;margin:.7rem auto 0;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.magical-entrance__skip{border-bottom:1px solid color-mix(in oklch,var(--primary-foreground),transparent 30%)}}.magical-entrance__skip{color:var(--primary-foreground);text-underline-offset:.22rem;background:0 0;font-size:.93rem;text-decoration:none}.magical-entrance__skip:hover{color:var(--accent)}.magical-entrance__action:focus-visible,.magical-entrance__skip:focus-visible{outline:3px solid var(--primary-foreground);outline-offset:4px}.magical-entrance__sparkles{z-index:-1;pointer-events:none;position:absolute;inset:0}.magical-entrance__sparkles svg{color:var(--accent);filter:drop-shadow(0 .25rem .5rem var(--foreground));position:absolute}@supports (color:color-mix(in lab,red,red)){.magical-entrance__sparkles svg{filter:drop-shadow(0 .25rem .5rem color-mix(in oklch,var(--foreground),transparent 55%))}}.magical-entrance__sparkles svg:first-child{width:clamp(1.25rem,4vw,2.3rem);height:auto;animation:magical-sparkle 2.1s ease-in-out infinite;top:16%;left:11%}.magical-entrance__sparkles svg:nth-child(2){width:clamp(.9rem,3vw,1.6rem);height:auto;animation:magical-sparkle 2.6s ease-in-out .5s infinite;top:27%;right:12%}.magical-entrance__sparkles svg:nth-child(3){width:clamp(.75rem,2.5vw,1.25rem);height:auto;animation:magical-sparkle 2.3s ease-in-out .9s infinite;bottom:25%;right:24%}.magical-entrance--knocked .magical-entrance__action{animation:magical-door-invitation .52s ease-out}@keyframes magical-entrance-arrive{0%{opacity:0}to{opacity:1}}@keyframes magical-entrance-leave{to{opacity:0;transform:scale(1.06)}}@keyframes magical-sparkle{0%,to{opacity:.55;transform:scale(.84)rotate(-8deg)}50%{opacity:1;transform:scale(1.14)rotate(8deg)}}@keyframes magical-door-invitation{0%,to{transform:translate(0)}28%{transform:translate(-3px)}56%{transform:translate(3px)}78%{transform:translate(-2px)}}@media (max-height:42rem) and (orientation:landscape){.magical-entrance__content{padding-top:.75rem}.magical-entrance__title{font-size:clamp(2rem,8vh,3.5rem)}.magical-entrance__description{margin-top:.55rem}.magical-entrance__action{margin-top:.8rem}}@media (prefers-reduced-motion:reduce){.magical-entrance,.magical-entrance--knocked .magical-entrance__action,.magical-entrance--opening,.magical-entrance__sparkles svg{animation:none}}.explore-page{background:var(--background);min-width:0;overflow-x:clip}.doghouse-hall{border-bottom:1px solid var(--border);background:radial-gradient(at 8% 5%,oklch(88% .075 110/.72),#0000 32rem),radial-gradient(at 91% 22%,oklch(85% .075 216/.54),#0000 27rem),linear-gradient(150deg,oklch(97% .018 89),oklch(92% .04 99));min-width:0;position:relative;overflow:hidden}.doghouse-hall:before{content:"";border:2.4rem solid oklch(72% .08 141/.16);border-radius:50%;width:28rem;height:28rem;position:absolute;bottom:-11rem;right:-10rem}.doghouse-hall__glow{filter:blur(3px);opacity:.52;pointer-events:none;border-radius:50%;width:13rem;height:13rem;position:absolute}.doghouse-hall__glow--one{background:radial-gradient(circle,oklch(88% .12 80/.74),#0000 68%);top:8%;left:45%}.doghouse-hall__glow--two{background:radial-gradient(circle,oklch(82% .095 206/.48),#0000 68%);bottom:11%;right:10%}.explore-kicker{border:1px solid var(--primary);align-items:center;gap:.45rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.explore-kicker{border:1px solid color-mix(in oklch,var(--primary),transparent 72%)}}.explore-kicker{background:var(--card);color:var(--primary);letter-spacing:.12em;text-transform:uppercase;box-shadow:var(--shadow-sm);border-radius:999px;padding:.52rem .8rem;font-size:.74rem;font-weight:900}.parent-note{border:1px solid var(--primary);gap:1rem;min-height:12rem;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.parent-note{border:1px solid color-mix(in oklch,var(--primary),transparent 76%)}}.parent-note{background:var(--card);border-radius:2rem 2rem .8rem}@supports (color:color-mix(in lab,red,red)){.parent-note{background:color-mix(in oklch,var(--card),transparent 9%)}}.parent-note{box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);padding:1.35rem}.parent-note:after{border:1rem solid var(--secondary);width:8rem;height:8rem;position:absolute;bottom:-2.25rem;right:-2.25rem}@supports (color:color-mix(in lab,red,red)){.parent-note:after{border:1rem solid color-mix(in oklch,var(--secondary),transparent 28%)}}.parent-note:after{content:"";border-radius:50%}.parent-note>*{z-index:1;position:relative}.parent-note__icon{size:2.75rem;background:var(--accent);color:var(--accent-foreground);box-shadow:var(--shadow-sm);border-radius:1rem 1rem 1rem .3rem;flex:none;justify-content:center;align-items:center;display:inline-flex}.parent-note__eyebrow{color:var(--primary);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:900}.parent-note h2{font-family:var(--font-heading);color:var(--foreground);margin:.3rem 0 0;font-size:1.45rem;font-weight:800;line-height:1.1}.parent-note p:last-child{max-width:30rem;color:var(--muted-foreground);margin:.55rem 0 0;font-size:.9rem;line-height:1.5}.portal-map-section{background:linear-gradient(180deg,var(--background),var(--secondary));min-width:0}@supports (color:color-mix(in lab,red,red)){.portal-map-section{background:linear-gradient(180deg,var(--background),color-mix(in oklch,var(--secondary),var(--background) 75%))}}.portal-map{grid-template-columns:minmax(0,1fr);gap:1rem;min-width:0;display:grid}.portal-door{border:1px solid var(--primary);flex-direction:column;min-width:0;min-height:17rem;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.portal-door{border:1px solid color-mix(in oklch,var(--primary),transparent 78%)}}.portal-door{background:var(--card);box-shadow:var(--shadow-sm);color:var(--foreground);border-radius:1.65rem 1.65rem .78rem;text-decoration:none}a.portal-door{cursor:pointer;transition:transform .18s,box-shadow .18s}a.portal-door:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}a.portal-door:focus-visible{outline:3px solid var(--ring);outline-offset:4px}.portal-door__scene{background:var(--portal-sky);isolation:isolate;min-height:7.9rem;display:block;position:relative;overflow:hidden}.portal-door__scene:after,.portal-door__scene:before{content:"";pointer-events:none;position:absolute}.portal-door__scene:before{background:radial-gradient(circle at 17% 22%,var(--portal-sparkle),transparent 17%),radial-gradient(circle at 76% 28%,var(--portal-light),transparent 23%),linear-gradient(180deg,var(--portal-light),transparent 75%);inset:0}@supports (color:color-mix(in lab,red,red)){.portal-door__scene:before{background:radial-gradient(circle at 17% 22%,var(--portal-sparkle),transparent 17%),radial-gradient(circle at 76% 28%,color-mix(in oklch,var(--portal-light),transparent 22%),transparent 23%),linear-gradient(180deg,color-mix(in oklch,var(--portal-light),transparent 67%),transparent 75%)}}.portal-door__scene:before{opacity:.86}.portal-door__scene:after{border:1.2rem solid var(--portal-light);width:90%;height:94%;bottom:-51%;right:-17%}@supports (color:color-mix(in lab,red,red)){.portal-door__scene:after{border:1.2rem solid color-mix(in oklch,var(--portal-light),transparent 30%)}}.portal-door__scene:after{opacity:.64;border-radius:48% 52% 0 0}.portal-door__halo{z-index:1;background:radial-gradient(circle,var(--portal-light),transparent 66%);border-radius:50%;width:5.7rem;height:5.7rem;position:absolute;top:18%;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.portal-door__halo{background:radial-gradient(circle,color-mix(in oklch,var(--portal-light),var(--card) 50%),transparent 66%)}}.portal-door__halo{filter:blur(1px)}.portal-door__stars{z-index:2;background-image:radial-gradient(circle,var(--portal-sparkle) 0 1.2px,transparent 1.6px),radial-gradient(circle,var(--portal-sparkle) 0 1px,transparent 1.3px),radial-gradient(circle,var(--portal-sparkle) 0 1.4px,transparent 1.7px);opacity:.82;background-position:17% 25%,80% 17%,69% 62%;background-size:4.4rem 4rem,6rem 5rem,5rem 5.6rem;position:absolute;inset:0}.portal-door__arch{z-index:3;background:repeating-linear-gradient(96deg,var(--portal-wood) 0 14%,var(--portal-wood) 14% 22%,var(--portal-wood) 22% 42%);border:.5rem solid var(--portal-wood-dark);border-bottom:0;border-radius:3rem 3rem 0 0;width:5.45rem;height:6.35rem;position:absolute;bottom:-.35rem;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.portal-door__arch{background:repeating-linear-gradient(96deg,var(--portal-wood) 0 14%,color-mix(in oklch,var(--portal-wood),var(--portal-wood-dark) 30%) 14% 22%,var(--portal-wood) 22% 42%)}}.portal-door__arch{box-shadow:inset 0 0 0 .18rem var(--portal-light),0 .4rem .8rem var(--foreground)}@supports (color:color-mix(in lab,red,red)){.portal-door__arch{box-shadow:inset 0 0 0 .18rem color-mix(in oklch,var(--portal-light),transparent 38%),0 .4rem .8rem color-mix(in oklch,var(--foreground),transparent 76%)}}.portal-door__knob{border:1px solid var(--foreground);width:.45rem;height:.45rem;position:absolute;top:54%;right:.48rem}@supports (color:color-mix(in lab,red,red)){.portal-door__knob{border:1px solid color-mix(in oklch,var(--foreground),transparent 40%)}}.portal-door__knob{background:var(--accent);border-radius:50%}.portal-door__copy{grid-template-columns:auto minmax(0,1fr);gap:.65rem .6rem;padding:.8rem .82rem .9rem;display:grid}.portal-door__icon{size:2.35rem;border:1px solid var(--portal-wood-dark);justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.portal-door__icon{border:1px solid color-mix(in oklch,var(--portal-wood-dark),transparent 68%)}}.portal-door__icon{background:var(--portal-light);border-radius:.8rem .8rem .3rem}@supports (color:color-mix(in lab,red,red)){.portal-door__icon{background:color-mix(in oklch,var(--portal-light),var(--card) 40%)}}.portal-door__icon{color:var(--portal-wood-dark)}.portal-door__text{min-width:0}.portal-door__title{font-family:var(--font-heading);color:var(--foreground);font-size:1.22rem;font-weight:900;line-height:1;display:block}.portal-door__description{color:var(--muted-foreground);margin-top:.36rem;font-size:.78rem;line-height:1.35;display:block}.portal-door__status{border:1px solid var(--border);grid-column:1/-1;align-items:center;gap:.32rem;width:fit-content;min-height:1.65rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.portal-door__status{border:1px solid color-mix(in oklch,var(--border),transparent 15%)}}.portal-door__status{background:var(--muted);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.portal-door__status{background:color-mix(in oklch,var(--muted),var(--card) 54%)}}.portal-door__status{color:var(--muted-foreground);letter-spacing:.025em;padding:.25rem .55rem;font-size:.68rem;font-weight:900}.portal-door__status--open{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.portal-door__status--open{border-color:color-mix(in oklch,var(--primary),transparent 50%)}}.portal-door__status--open{background:var(--primary);color:var(--primary-foreground)}.portal-door--plushy{--portal-sky:oklch(89% .07 48);--portal-light:oklch(96% .12 69);--portal-sparkle:oklch(65% .08 36);--portal-wood:oklch(57% .075 54);--portal-wood-dark:oklch(34% .055 54)}.portal-door--space{--portal-sky:oklch(42% .09 273);--portal-light:oklch(82% .075 223);--portal-sparkle:oklch(97% .09 102);--portal-wood:oklch(53% .07 264);--portal-wood-dark:oklch(28% .07 274)}.portal-door--dinosaur{--portal-sky:oklch(80% .1 93);--portal-light:oklch(90% .11 125);--portal-sparkle:oklch(54% .1 137);--portal-wood:oklch(54% .08 77);--portal-wood-dark:oklch(31% .055 74)}.portal-door--sea{--portal-sky:oklch(67% .105 218);--portal-light:oklch(86% .1 204);--portal-sparkle:oklch(98% .03 204);--portal-wood:oklch(48% .075 205);--portal-wood-dark:oklch(28% .055 211)}.portal-door--time{--portal-sky:oklch(77% .08 135);--portal-light:oklch(93% .105 91);--portal-sparkle:oklch(64% .09 77);--portal-wood:oklch(53% .07 137);--portal-wood-dark:oklch(29% .055 133)}.portal-door--wildflower{--portal-sky:oklch(87% .075 338);--portal-light:oklch(95% .1 90);--portal-sparkle:oklch(62% .09 327);--portal-wood:oklch(57% .075 27);--portal-wood-dark:oklch(33% .06 25)}.portal-door--library{--portal-sky:oklch(73% .07 75);--portal-light:oklch(92% .105 93);--portal-sparkle:oklch(96% .14 84);--portal-wood:oklch(46% .065 53);--portal-wood-dark:oklch(27% .045 51)}.portal-door--kitchen{--portal-sky:oklch(89% .085 87);--portal-light:oklch(98% .065 94);--portal-sparkle:oklch(67% .1 38);--portal-wood:oklch(60% .075 70);--portal-wood-dark:oklch(35% .055 67)}.portal-door--studio{--portal-sky:oklch(82% .11 339);--portal-light:oklch(91% .13 72);--portal-sparkle:oklch(54% .105 254);--portal-wood:oklch(49% .08 329);--portal-wood-dark:oklch(29% .06 325)}.portal-door--music{--portal-sky:oklch(78% .1 295);--portal-light:oklch(92% .11 331);--portal-sparkle:oklch(98% .11 83);--portal-wood:oklch(47% .08 289);--portal-wood-dark:oklch(27% .065 285)}.portal-door--game{--portal-sky:oklch(76% .1 165);--portal-light:oklch(91% .1 83);--portal-sparkle:oklch(98% .095 99);--portal-wood:oklch(41% .065 151);--portal-wood-dark:oklch(25% .05 148)}.portal-door--attic{--portal-sky:oklch(61% .065 59);--portal-light:oklch(85% .1 81);--portal-sparkle:oklch(96% .13 84);--portal-wood:oklch(37% .055 49);--portal-wood-dark:oklch(23% .04 47)}.portal-door--observatory{--portal-sky:oklch(61% .08 239);--portal-light:oklch(85% .08 198);--portal-sparkle:oklch(98% .095 91);--portal-wood:oklch(44% .065 227);--portal-wood-dark:oklch(25% .05 226)}.portal-door--garden{--portal-sky:oklch(76% .105 144);--portal-light:oklch(92% .11 91);--portal-sparkle:oklch(95% .075 331);--portal-wood:oklch(45% .07 137);--portal-wood-dark:oklch(27% .055 134)}.portal-door--butterfly{--portal-sky:oklch(83% .09 180);--portal-light:oklch(95% .095 91);--portal-sparkle:oklch(63% .105 330);--portal-wood:oklch(50% .07 150);--portal-wood-dark:oklch(30% .055 146)}.portal-door--tree{--portal-sky:oklch(72% .08 117);--portal-light:oklch(93% .09 86);--portal-sparkle:oklch(96% .12 83);--portal-wood:oklch(42% .06 83);--portal-wood-dark:oklch(26% .045 80)}.passport-section{background:var(--card);min-width:0}@supports (color:color-mix(in lab,red,red)){.passport-section{background:color-mix(in oklch,var(--card),var(--secondary) 16%)}}.passport-stamp-sheet{border:.7rem solid var(--accent);min-height:12.8rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.passport-stamp-sheet{border:.7rem solid color-mix(in oklch,var(--accent),var(--card) 54%)}}.passport-stamp-sheet{background:repeating-linear-gradient(0deg,transparent 0 1.7rem,var(--primary) 1.7rem 1.76rem),linear-gradient(135deg,oklch(97% .03 89),oklch(92% .045 88));border-radius:1.1rem 2.1rem}@supports (color:color-mix(in lab,red,red)){.passport-stamp-sheet{background:repeating-linear-gradient(0deg,transparent 0 1.7rem,color-mix(in oklch,var(--primary),transparent 87%) 1.7rem 1.76rem),linear-gradient(135deg,oklch(97% .03 89),oklch(92% .045 88))}}.passport-stamp-sheet{box-shadow:var(--shadow-md);transform:rotate(-1.4deg)}.passport-stamp-sheet__mark{size:3.2rem;border:.25rem dashed var(--primary);color:var(--primary);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:1.25rem;left:1.25rem;transform:rotate(-13deg)}.passport-stamp-sheet__title{color:var(--foreground);font-family:var(--font-heading);font-size:clamp(1.55rem,5vw,2.2rem);font-weight:900;line-height:.86;position:absolute;top:1.3rem;left:5.15rem}.passport-stamp-sheet__paw{color:var(--primary);position:absolute;bottom:1.25rem;right:1.4rem}@supports (color:color-mix(in lab,red,red)){.passport-stamp-sheet__paw{color:color-mix(in oklch,var(--primary),transparent 22%)}}.passport-stamp-sheet__paw{transform:rotate(13deg)}.passport-stamp-sheet__ring{border:.22rem dashed var(--accent);width:5.6rem;height:5.6rem;position:absolute}@supports (color:color-mix(in lab,red,red)){.passport-stamp-sheet__ring{border:.22rem dashed color-mix(in oklch,var(--accent),transparent 14%)}}.passport-stamp-sheet__ring{opacity:.85;border-radius:50%}.passport-stamp-sheet__ring--one{top:-1.2rem;right:-1rem}.passport-stamp-sheet__ring--two{bottom:-3.9rem;left:39%}.passport-note{background:var(--primary);max-width:100%;color:var(--primary-foreground);box-shadow:var(--shadow-sm);border-radius:.9rem .9rem .3rem;align-items:center;gap:.55rem;padding:.8rem .95rem;font-size:.88rem;font-weight:800;display:inline-flex}@media (max-width:639px){.explore-page>section>.mx-auto{padding-right:max(1rem,env(safe-area-inset-right));padding-left:max(1rem,env(safe-area-inset-left))}.doghouse-hall{padding-top:env(safe-area-inset-top)}.parent-note{min-height:0;padding:1.15rem}.portal-door{min-height:0}.portal-door__scene{min-height:10.5rem}.portal-door__copy{padding:1rem}.portal-door__title{font-size:1.35rem}.portal-door__description{font-size:.88rem;line-height:1.45}.portal-door__status{min-height:2.25rem;padding:.4rem .7rem;font-size:.75rem}.passport-note{align-items:flex-start;line-height:1.35}}@media (min-width:640px){.portal-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.portal-door{min-height:18rem}.portal-door__scene{min-height:8.9rem}.portal-door__copy{padding:.95rem}}@media (min-width:768px){.portal-map{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.portal-map{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.portal-door{min-height:19.4rem}}@media (prefers-reduced-motion:reduce){a.portal-door,a.portal-door:hover{transition:none;transform:none}}.story-back-link{min-height:2.75rem;color:var(--primary);border-radius:.8rem;align-items:center;gap:.5rem;padding:.65rem .8rem;font-size:.9rem;font-weight:800;display:inline-flex}.story-back-link:hover{background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.story-back-link:hover{background:color-mix(in oklch,var(--secondary),transparent 48%)}}.story-back-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.story-meta-chip{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:.35rem .7rem}.feed-hero,.game-room-hero,.story-reader-card{border-radius:1.8rem 1.8rem .8rem}.game-play-card{scroll-margin-top:6.5rem}.game-question{background:var(--muted)}@supports (color:color-mix(in lab,red,red)){.game-question{background:color-mix(in oklch,var(--muted),var(--card) 58%)}}@media (max-width:639px){.storybook-content-shell{min-height:calc(100vh - 5.1rem)}.storybook-page-heading{font-size:clamp(2rem,10vw,2.75rem)}.feed-hero,.game-room-hero,.story-reader-card{border-radius:1.35rem 1.35rem .65rem}.adventure-button,.explore-button{justify-content:center;min-height:3rem}}@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-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-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}