@m1kapp/kit 0.0.10 → 0.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,12 +1,12 @@
1
1
  "use client";
2
- var we=`/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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;--tw-ease:initial}}}@layer theme{:root,:host{--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-100:oklch(93.6% .032 17.717);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-400:oklch(75% .183 55.934);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-950:oklch(26.6% .079 36.259);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-950:oklch(28.6% .066 53.813);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-950:oklch(26.6% .065 152.934);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-950:oklch(28.2% .091 267.935);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-950:oklch(29.1% .149 302.717);--color-zinc-50:oklch(98.5% 0 0);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--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)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{touch-action:pan-x pan-y}body{min-height:100dvh}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=reset]),select,textarea{font-size:max(16px,1em)}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-24{bottom:calc(var(--spacing) * 24)}.left-1{left:calc(var(--spacing) * 1)}.left-1\\/2{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\\[1\\]{z-index:1}.z-\\[200\\]{z-index:200}.z-\\[9998\\]{z-index:9998}.z-\\[9999\\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0{margin-top:calc(var(--spacing) * 0)}.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)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-px{margin-left:1px}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-1{height:calc(var(--spacing) * 1)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-\\[1em\\]{height:1em}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.min-h-7{min-height:calc(var(--spacing) * 7)}.w-0{width:calc(var(--spacing) * 0)}.w-0\\.5{width:calc(var(--spacing) * .5)}.w-1{width:calc(var(--spacing) * 1)}.w-1\\/2{width:50%}.w-1\\/3{width:33.3333%}.w-2{width:calc(var(--spacing) * 2)}.w-2\\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\\/5{width:80%}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-20{width:calc(var(--spacing) * 20)}.w-full{width:100%}.max-w-101{max-width:calc(var(--spacing) * 101)}.max-w-101\\.5{max-width:calc(var(--spacing) * 101.5)}.max-w-\\[390px\\]{max-width:390px}.max-w-\\[430px\\]{max-width:430px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-3{--tw-translate-y:calc(var(--spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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}.justify-items-center{justify-items:center}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}: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(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-zinc-100>:not(:last-child)){border-color:var(--color-zinc-100)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.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)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-b-2xl{border-bottom-right-radius:var(--radius-2xl);border-bottom-left-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.border-r-4{border-right-style:var(--tw-border-style);border-right-width:4px}.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-red-500{border-color:var(--color-red-500)}.border-white{border-color:var(--color-white)}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-400{border-color:var(--color-zinc-400)}.border-t-zinc-900{border-top-color:var(--color-zinc-900)}.border-r-transparent{border-right-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-black{background-color:var(--color-black)}.bg-black\\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\\/40{background-color:color-mix(in oklab, var(--color-black) 40%, 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-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-600{background-color:var(--color-green-600)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-zinc-50{background-color:var(--color-zinc-50)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-200{background-color:var(--color-zinc-200)}.bg-zinc-900{background-color:var(--color-zinc-900)}.fill-zinc-300{fill:var(--color-zinc-300)}.fill-zinc-400{fill:var(--color-zinc-400)}.object-cover{object-fit:cover}.p-1{padding:calc(var(--spacing) * 1)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.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)}.py-0{padding-block:calc(var(--spacing) * 0)}.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-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--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-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-orange-700{color:var(--color-orange-700)}.text-purple-700{color:var(--color-purple-700)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-white{color:var(--color-white)}.text-yellow-700{color:var(--color-yellow-700)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-700{color:var(--color-zinc-700)}.text-zinc-800{color:var(--color-zinc-800)}.text-zinc-900{color:var(--color-zinc-900)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.opacity-0{opacity:0}.opacity-15{opacity:.15}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--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)}.ring-black{--tw-ring-color:var(--color-black)}.ring-black\\/10{--tw-ring-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.ring-black\\/10{--tw-ring-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.ring-white{--tw-ring-color:var(--color-white)}.ring-white\\/10{--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.ring-white\\/10{--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.ring-zinc-200{--tw-ring-color:var(--color-zinc-200)}.ring-zinc-900{--tw-ring-color:var(--color-zinc-900)}.ring-offset-2{--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)}.ring-offset-white{--tw-ring-offset-color:var(--color-white)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\\:text-zinc-500:is(:where(.group):hover *){color:var(--color-zinc-500)}}.placeholder\\:text-zinc-400::placeholder{color:var(--color-zinc-400)}@media (hover:hover){.hover\\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-zinc-300:hover{border-color:var(--color-zinc-300)}.hover\\:bg-red-100:hover{background-color:var(--color-red-100)}.hover\\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\\:bg-zinc-200:hover{background-color:var(--color-zinc-200)}.hover\\:bg-zinc-700:hover{background-color:var(--color-zinc-700)}.hover\\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\\:text-zinc-600:hover{color:var(--color-zinc-600)}.hover\\:text-zinc-700:hover{color:var(--color-zinc-700)}.hover\\:text-zinc-900:hover{color:var(--color-zinc-900)}.hover\\:underline:hover{text-decoration-line:underline}}.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)}.active\\:scale-90:active{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:scale-\\[0\\.99\\]:active{scale:.99}.disabled\\:opacity-40:disabled{opacity:.4}.disabled\\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\\:block{display:block}.sm\\:items-center{align-items:center}.sm\\:rounded-2xl{border-radius:var(--radius-2xl)}.sm\\:rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.sm\\:p-3{padding:calc(var(--spacing) * 3)}}:where(.dark\\:divide-zinc-800:where(.dark,.dark *)>:not(:last-child)){border-color:var(--color-zinc-800)}.dark\\:border-zinc-500:where(.dark,.dark *){border-color:var(--color-zinc-500)}.dark\\:border-zinc-800:where(.dark,.dark *){border-color:var(--color-zinc-800)}.dark\\:border-zinc-900:where(.dark,.dark *){border-color:var(--color-zinc-900)}.dark\\:border-t-zinc-100:where(.dark,.dark *){border-top-color:var(--color-zinc-100)}.dark\\:bg-blue-950:where(.dark,.dark *){background-color:var(--color-blue-950)}.dark\\:bg-green-950:where(.dark,.dark *){background-color:var(--color-green-950)}.dark\\:bg-orange-950:where(.dark,.dark *){background-color:var(--color-orange-950)}.dark\\:bg-purple-950:where(.dark,.dark *){background-color:var(--color-purple-950)}.dark\\:bg-red-950:where(.dark,.dark *){background-color:var(--color-red-950)}.dark\\:bg-white:where(.dark,.dark *){background-color:var(--color-white)}.dark\\:bg-yellow-950:where(.dark,.dark *){background-color:var(--color-yellow-950)}.dark\\:bg-zinc-100:where(.dark,.dark *){background-color:var(--color-zinc-100)}.dark\\:bg-zinc-700:where(.dark,.dark *){background-color:var(--color-zinc-700)}.dark\\:bg-zinc-800:where(.dark,.dark *){background-color:var(--color-zinc-800)}.dark\\:bg-zinc-900:where(.dark,.dark *){background-color:var(--color-zinc-900)}.dark\\:bg-zinc-950:where(.dark,.dark *){background-color:var(--color-zinc-950)}.dark\\:bg-zinc-950\\/90:where(.dark,.dark *){background-color:#09090be6}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-zinc-950\\/90:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-zinc-950) 90%, transparent)}}.dark\\:text-blue-400:where(.dark,.dark *){color:var(--color-blue-400)}.dark\\:text-green-400:where(.dark,.dark *){color:var(--color-green-400)}.dark\\:text-green-500:where(.dark,.dark *){color:var(--color-green-500)}.dark\\:text-orange-400:where(.dark,.dark *){color:var(--color-orange-400)}.dark\\:text-purple-400:where(.dark,.dark *){color:var(--color-purple-400)}.dark\\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\\:text-yellow-400:where(.dark,.dark *){color:var(--color-yellow-400)}.dark\\:text-zinc-100:where(.dark,.dark *){color:var(--color-zinc-100)}.dark\\:text-zinc-200:where(.dark,.dark *){color:var(--color-zinc-200)}.dark\\:text-zinc-300:where(.dark,.dark *){color:var(--color-zinc-300)}.dark\\:text-zinc-400:where(.dark,.dark *){color:var(--color-zinc-400)}.dark\\:text-zinc-500:where(.dark,.dark *){color:var(--color-zinc-500)}.dark\\:text-zinc-600:where(.dark,.dark *){color:var(--color-zinc-600)}.dark\\:text-zinc-700:where(.dark,.dark *){color:var(--color-zinc-700)}.dark\\:text-zinc-900:where(.dark,.dark *){color:var(--color-zinc-900)}.dark\\:ring-white:where(.dark,.dark *){--tw-ring-color:var(--color-white)}.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.dark\\:ring-zinc-700:where(.dark,.dark *){--tw-ring-color:var(--color-zinc-700)}.dark\\:ring-zinc-800:where(.dark,.dark *){--tw-ring-color:var(--color-zinc-800)}.dark\\:ring-offset-zinc-900:where(.dark,.dark *){--tw-ring-offset-color:var(--color-zinc-900)}@media (hover:hover){.dark\\:hover\\:bg-red-900:where(.dark,.dark *):hover{background-color:var(--color-red-900)}.dark\\:hover\\:bg-zinc-200:where(.dark,.dark *):hover{background-color:var(--color-zinc-200)}.dark\\:hover\\:bg-zinc-700:where(.dark,.dark *):hover{background-color:var(--color-zinc-700)}.dark\\:hover\\:bg-zinc-800:where(.dark,.dark *):hover{background-color:var(--color-zinc-800)}.dark\\:hover\\:text-white:where(.dark,.dark *):hover{color:var(--color-white)}.dark\\:hover\\:text-zinc-200:where(.dark,.dark *):hover{color:var(--color-zinc-200)}}}@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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}`;var te=!1;function Xe(){if(te||typeof document>"u")return;if(document.querySelector("[data-m1kapp-ui]")){te=!0;return}te=!0;let e=document.createElement("style");e.setAttribute("data-m1kapp-ui",""),e.textContent=we,document.head.appendChild(e)}Xe();import{jsx as ve}from"react/jsx-runtime";var Qe={dark:"bg-zinc-900 text-white hover:bg-zinc-700 dark:bg-white dark:text-zinc-900 dark:hover:bg-zinc-200",light:"bg-zinc-100 text-zinc-600 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},et={rounded:"rounded-xl",pill:"rounded-full"};function tt({children:e,variant:t="dark",shape:r="rounded",full:a=!1,className:o="",...n}){let i=["inline-flex items-center justify-center px-5 py-2.5 text-sm font-bold transition-colors",Qe[t],et[r],a?"w-full":"",o].filter(Boolean).join(" ");if(n.href!==void 0){let{href:l,target:p,rel:d}=n;return ve("a",{href:l,target:p,rel:d,className:i,children:e})}let{onClick:s,disabled:c}=n;return ve("button",{onClick:s,disabled:c,className:i,children:e})}import{jsx as re}from"react/jsx-runtime";function rt({children:e,className:t="",maxWidth:r=430,maxHeight:a=932,style:o}){return re("div",{className:`w-full h-full flex flex-col bg-white dark:bg-zinc-950 shadow-2xl ring-1 ring-black/10 dark:ring-zinc-700 sm:rounded-2xl overflow-hidden ${t}`,style:{maxWidth:r,maxHeight:a,...o},children:e})}function ot({children:e,className:t=""}){return re("header",{className:`sticky top-0 z-20 h-14 px-4 flex items-center justify-between border-b border-zinc-100 dark:border-zinc-800 bg-white/90 dark:bg-zinc-950/90 backdrop-blur-md sm:rounded-t-2xl ${t}`,children:e})}function at({children:e,className:t=""}){return re("div",{className:`flex-1 overflow-y-auto scrollbar-hide ${t}`,children:e})}import{jsx as xe,jsxs as st}from"react/jsx-runtime";function nt({children:e,className:t=""}){return xe("nav",{className:`sticky bottom-0 z-20 border-t border-zinc-200 dark:border-zinc-800 flex bg-white/90 dark:bg-zinc-950/90 backdrop-blur-md rounded-b-2xl ${t}`,style:{paddingBottom:"env(safe-area-inset-bottom)"},children:e})}function it({active:e,onClick:t,icon:r,label:a,activeColor:o}){return st("button",{onClick:t,className:`flex-1 flex flex-col items-center gap-0.5 py-2.5 transition-colors ${e?"":"text-zinc-300 dark:text-zinc-600"}`,style:e?{color:o}:void 0,children:[r,xe("span",{className:"text-[10px] font-medium",children:a})]})}import{jsx as ke}from"react/jsx-runtime";function ct({children:e,className:t=""}){return ke("section",{className:`px-4 ${t}`,children:e})}function lt({children:e}){return ke("h2",{className:"text-[11px] font-semibold text-zinc-400 dark:text-zinc-500 uppercase mb-3",children:e})}import{jsx as pt}from"react/jsx-runtime";function dt({className:e=""}){return pt("div",{className:`mx-4 my-6 h-px bg-zinc-200 dark:bg-zinc-800 ${e}`})}import{jsx as ye,jsxs as gt}from"react/jsx-runtime";function ut({label:e,value:t,className:r=""}){return gt("div",{className:`flex-1 rounded-xl bg-zinc-100 dark:bg-zinc-900 px-3 py-3 text-center ${r}`,children:[ye("p",{className:"text-[10px] text-zinc-500 dark:text-zinc-400 font-medium mb-0.5",children:e}),ye("p",{className:"text-lg font-bold tabular-nums text-zinc-900 dark:text-white",children:t.toLocaleString()})]})}import{jsx as V,jsxs as ze}from"react/jsx-runtime";function ft({message:e,icon:t}){return ze("div",{className:"flex flex-col items-center justify-center py-12 gap-2",children:[t||ze("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-zinc-200 dark:text-zinc-700",children:[V("circle",{cx:"12",cy:"12",r:"10"}),V("path",{d:"M8 15h8"}),V("circle",{cx:"9",cy:"9",r:"1",fill:"currentColor",stroke:"none"}),V("circle",{cx:"15",cy:"9",r:"1",fill:"currentColor",stroke:"none"})]}),V("p",{className:"text-sm text-zinc-400 dark:text-zinc-500",children:e})]})}import{useId as mt}from"react";import{jsx as R,jsxs as oe}from"react/jsx-runtime";var ht=`
2
+ var j=`/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
3
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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;--tw-ease:initial}}}@layer theme{:root,:host{--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-100:oklch(93.6% .032 17.717);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-400:oklch(75% .183 55.934);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-950:oklch(26.6% .079 36.259);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-950:oklch(28.6% .066 53.813);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-950:oklch(26.6% .065 152.934);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-950:oklch(28.2% .091 267.935);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-950:oklch(29.1% .149 302.717);--color-zinc-50:oklch(98.5% 0 0);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--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)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{touch-action:pan-x pan-y}body{min-height:100dvh}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=reset]),select,textarea{font-size:max(16px,1em)}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-24{bottom:calc(var(--spacing) * 24)}.left-1{left:calc(var(--spacing) * 1)}.left-1\\/2{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\\[1\\]{z-index:1}.z-\\[200\\]{z-index:200}.z-\\[9998\\]{z-index:9998}.z-\\[9999\\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0{margin-top:calc(var(--spacing) * 0)}.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)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-px{margin-left:1px}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-1{height:calc(var(--spacing) * 1)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-\\[1em\\]{height:1em}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.min-h-7{min-height:calc(var(--spacing) * 7)}.w-0{width:calc(var(--spacing) * 0)}.w-0\\.5{width:calc(var(--spacing) * .5)}.w-1{width:calc(var(--spacing) * 1)}.w-1\\/2{width:50%}.w-1\\/3{width:33.3333%}.w-2{width:calc(var(--spacing) * 2)}.w-2\\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\\/5{width:80%}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-20{width:calc(var(--spacing) * 20)}.w-full{width:100%}.max-w-101{max-width:calc(var(--spacing) * 101)}.max-w-101\\.5{max-width:calc(var(--spacing) * 101.5)}.max-w-\\[390px\\]{max-width:390px}.max-w-\\[430px\\]{max-width:430px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-3{--tw-translate-y:calc(var(--spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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}.justify-items-center{justify-items:center}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}: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(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-zinc-100>:not(:last-child)){border-color:var(--color-zinc-100)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.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)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-b-2xl{border-bottom-right-radius:var(--radius-2xl);border-bottom-left-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.border-r-4{border-right-style:var(--tw-border-style);border-right-width:4px}.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-red-500{border-color:var(--color-red-500)}.border-white{border-color:var(--color-white)}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-400{border-color:var(--color-zinc-400)}.border-t-zinc-900{border-top-color:var(--color-zinc-900)}.border-r-transparent{border-right-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-black{background-color:var(--color-black)}.bg-black\\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\\/40{background-color:color-mix(in oklab, var(--color-black) 40%, 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-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-600{background-color:var(--color-green-600)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-zinc-50{background-color:var(--color-zinc-50)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-200{background-color:var(--color-zinc-200)}.bg-zinc-900{background-color:var(--color-zinc-900)}.fill-zinc-300{fill:var(--color-zinc-300)}.fill-zinc-400{fill:var(--color-zinc-400)}.object-cover{object-fit:cover}.p-1{padding:calc(var(--spacing) * 1)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.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)}.py-0{padding-block:calc(var(--spacing) * 0)}.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-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--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-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-orange-700{color:var(--color-orange-700)}.text-purple-700{color:var(--color-purple-700)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-white{color:var(--color-white)}.text-yellow-700{color:var(--color-yellow-700)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-700{color:var(--color-zinc-700)}.text-zinc-800{color:var(--color-zinc-800)}.text-zinc-900{color:var(--color-zinc-900)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.opacity-0{opacity:0}.opacity-15{opacity:.15}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--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)}.ring-black{--tw-ring-color:var(--color-black)}.ring-black\\/10{--tw-ring-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.ring-black\\/10{--tw-ring-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.ring-white{--tw-ring-color:var(--color-white)}.ring-white\\/10{--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.ring-white\\/10{--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.ring-zinc-200{--tw-ring-color:var(--color-zinc-200)}.ring-zinc-900{--tw-ring-color:var(--color-zinc-900)}.ring-offset-2{--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)}.ring-offset-white{--tw-ring-offset-color:var(--color-white)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\\:text-zinc-500:is(:where(.group):hover *){color:var(--color-zinc-500)}}.placeholder\\:text-zinc-400::placeholder{color:var(--color-zinc-400)}@media (hover:hover){.hover\\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-zinc-300:hover{border-color:var(--color-zinc-300)}.hover\\:bg-red-100:hover{background-color:var(--color-red-100)}.hover\\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\\:bg-zinc-200:hover{background-color:var(--color-zinc-200)}.hover\\:bg-zinc-700:hover{background-color:var(--color-zinc-700)}.hover\\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\\:text-zinc-600:hover{color:var(--color-zinc-600)}.hover\\:text-zinc-700:hover{color:var(--color-zinc-700)}.hover\\:text-zinc-900:hover{color:var(--color-zinc-900)}.hover\\:underline:hover{text-decoration-line:underline}}.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)}.active\\:scale-90:active{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:scale-\\[0\\.99\\]:active{scale:.99}.disabled\\:opacity-40:disabled{opacity:.4}.disabled\\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\\:block{display:block}.sm\\:items-center{align-items:center}.sm\\:rounded-2xl{border-radius:var(--radius-2xl)}.sm\\:rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.sm\\:p-3{padding:calc(var(--spacing) * 3)}}:where(.dark\\:divide-zinc-800:where(.dark,.dark *)>:not(:last-child)){border-color:var(--color-zinc-800)}.dark\\:border-zinc-500:where(.dark,.dark *){border-color:var(--color-zinc-500)}.dark\\:border-zinc-800:where(.dark,.dark *){border-color:var(--color-zinc-800)}.dark\\:border-zinc-900:where(.dark,.dark *){border-color:var(--color-zinc-900)}.dark\\:border-t-zinc-100:where(.dark,.dark *){border-top-color:var(--color-zinc-100)}.dark\\:bg-blue-950:where(.dark,.dark *){background-color:var(--color-blue-950)}.dark\\:bg-green-950:where(.dark,.dark *){background-color:var(--color-green-950)}.dark\\:bg-orange-950:where(.dark,.dark *){background-color:var(--color-orange-950)}.dark\\:bg-purple-950:where(.dark,.dark *){background-color:var(--color-purple-950)}.dark\\:bg-red-950:where(.dark,.dark *){background-color:var(--color-red-950)}.dark\\:bg-white:where(.dark,.dark *){background-color:var(--color-white)}.dark\\:bg-yellow-950:where(.dark,.dark *){background-color:var(--color-yellow-950)}.dark\\:bg-zinc-100:where(.dark,.dark *){background-color:var(--color-zinc-100)}.dark\\:bg-zinc-700:where(.dark,.dark *){background-color:var(--color-zinc-700)}.dark\\:bg-zinc-800:where(.dark,.dark *){background-color:var(--color-zinc-800)}.dark\\:bg-zinc-900:where(.dark,.dark *){background-color:var(--color-zinc-900)}.dark\\:bg-zinc-950:where(.dark,.dark *){background-color:var(--color-zinc-950)}.dark\\:bg-zinc-950\\/90:where(.dark,.dark *){background-color:#09090be6}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-zinc-950\\/90:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-zinc-950) 90%, transparent)}}.dark\\:text-blue-400:where(.dark,.dark *){color:var(--color-blue-400)}.dark\\:text-green-400:where(.dark,.dark *){color:var(--color-green-400)}.dark\\:text-green-500:where(.dark,.dark *){color:var(--color-green-500)}.dark\\:text-orange-400:where(.dark,.dark *){color:var(--color-orange-400)}.dark\\:text-purple-400:where(.dark,.dark *){color:var(--color-purple-400)}.dark\\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\\:text-yellow-400:where(.dark,.dark *){color:var(--color-yellow-400)}.dark\\:text-zinc-100:where(.dark,.dark *){color:var(--color-zinc-100)}.dark\\:text-zinc-200:where(.dark,.dark *){color:var(--color-zinc-200)}.dark\\:text-zinc-300:where(.dark,.dark *){color:var(--color-zinc-300)}.dark\\:text-zinc-400:where(.dark,.dark *){color:var(--color-zinc-400)}.dark\\:text-zinc-500:where(.dark,.dark *){color:var(--color-zinc-500)}.dark\\:text-zinc-600:where(.dark,.dark *){color:var(--color-zinc-600)}.dark\\:text-zinc-700:where(.dark,.dark *){color:var(--color-zinc-700)}.dark\\:text-zinc-900:where(.dark,.dark *){color:var(--color-zinc-900)}.dark\\:ring-white:where(.dark,.dark *){--tw-ring-color:var(--color-white)}.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.dark\\:ring-zinc-700:where(.dark,.dark *){--tw-ring-color:var(--color-zinc-700)}.dark\\:ring-zinc-800:where(.dark,.dark *){--tw-ring-color:var(--color-zinc-800)}.dark\\:ring-offset-zinc-900:where(.dark,.dark *){--tw-ring-offset-color:var(--color-zinc-900)}@media (hover:hover){.dark\\:hover\\:bg-red-900:where(.dark,.dark *):hover{background-color:var(--color-red-900)}.dark\\:hover\\:bg-zinc-200:where(.dark,.dark *):hover{background-color:var(--color-zinc-200)}.dark\\:hover\\:bg-zinc-700:where(.dark,.dark *):hover{background-color:var(--color-zinc-700)}.dark\\:hover\\:bg-zinc-800:where(.dark,.dark *):hover{background-color:var(--color-zinc-800)}.dark\\:hover\\:text-white:where(.dark,.dark *):hover{color:var(--color-white)}.dark\\:hover\\:text-zinc-200:where(.dark,.dark *):hover{color:var(--color-zinc-200)}}}@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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}`;var re=!1;function Xe(){if(re||typeof document>"u")return;if(document.querySelector("[data-m1kapp-ui], style[data-href='m1kapp-kit']")){re=!0;return}re=!0;let e=document.createElement("style");e.setAttribute("data-m1kapp-ui",""),e.textContent=j,document.head.appendChild(e)}Xe();import{jsx as ve}from"react/jsx-runtime";var Qe={dark:"bg-zinc-900 text-white hover:bg-zinc-700 dark:bg-white dark:text-zinc-900 dark:hover:bg-zinc-200",light:"bg-zinc-100 text-zinc-600 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},et={rounded:"rounded-xl",pill:"rounded-full"};function tt({children:e,variant:t="dark",shape:r="rounded",full:a=!1,className:o="",...n}){let i=["inline-flex items-center justify-center px-5 py-2.5 text-sm font-bold transition-colors",Qe[t],et[r],a?"w-full":"",o].filter(Boolean).join(" ");if(n.href!==void 0){let{href:l,target:p,rel:d}=n;return ve("a",{href:l,target:p,rel:d,className:i,children:e})}let{onClick:s,disabled:c}=n;return ve("button",{onClick:s,disabled:c,className:i,children:e})}import{jsx as oe,jsxs as nt}from"react/jsx-runtime";function rt({children:e,className:t="",maxWidth:r=430,maxHeight:a=932,style:o}){return nt("div",{className:`w-full h-full flex flex-col bg-white dark:bg-zinc-950 shadow-2xl ring-1 ring-black/10 dark:ring-zinc-700 sm:rounded-2xl overflow-hidden ${t}`,style:{maxWidth:r,maxHeight:a,...o},children:[oe("style",{href:"m1kapp-kit",precedence:"default",children:j}),e]})}function ot({children:e,className:t=""}){return oe("header",{className:`sticky top-0 z-20 h-14 px-4 flex items-center justify-between border-b border-zinc-100 dark:border-zinc-800 bg-white/90 dark:bg-zinc-950/90 backdrop-blur-md sm:rounded-t-2xl ${t}`,children:e})}function at({children:e,className:t=""}){return oe("div",{className:`flex-1 overflow-y-auto scrollbar-hide ${t}`,children:e})}import{jsx as xe,jsxs as ct}from"react/jsx-runtime";function it({children:e,className:t=""}){return xe("nav",{className:`sticky bottom-0 z-20 border-t border-zinc-200 dark:border-zinc-800 flex bg-white/90 dark:bg-zinc-950/90 backdrop-blur-md rounded-b-2xl ${t}`,style:{paddingBottom:"env(safe-area-inset-bottom)"},children:e})}function st({active:e,onClick:t,icon:r,label:a,activeColor:o}){return ct("button",{onClick:t,className:`flex-1 flex flex-col items-center gap-0.5 py-2.5 transition-colors ${e?"":"text-zinc-300 dark:text-zinc-600"}`,style:e?{color:o}:void 0,children:[r,xe("span",{className:"text-[10px] font-medium",children:a})]})}import{jsx as ke}from"react/jsx-runtime";function lt({children:e,className:t=""}){return ke("section",{className:`px-4 ${t}`,children:e})}function dt({children:e}){return ke("h2",{className:"text-[11px] font-semibold text-zinc-400 dark:text-zinc-500 uppercase mb-3",children:e})}import{jsx as ut}from"react/jsx-runtime";function pt({className:e=""}){return ut("div",{className:`mx-4 my-6 h-px bg-zinc-200 dark:bg-zinc-800 ${e}`})}import{jsx as ye,jsxs as mt}from"react/jsx-runtime";function gt({label:e,value:t,className:r=""}){return mt("div",{className:`flex-1 rounded-xl bg-zinc-100 dark:bg-zinc-900 px-3 py-3 text-center ${r}`,children:[ye("p",{className:"text-[10px] text-zinc-500 dark:text-zinc-400 font-medium mb-0.5",children:e}),ye("p",{className:"text-lg font-bold tabular-nums text-zinc-900 dark:text-white",children:t.toLocaleString()})]})}import{jsx as _,jsxs as ze}from"react/jsx-runtime";function ft({message:e,icon:t}){return ze("div",{className:"flex flex-col items-center justify-center py-12 gap-2",children:[t||ze("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-zinc-200 dark:text-zinc-700",children:[_("circle",{cx:"12",cy:"12",r:"10"}),_("path",{d:"M8 15h8"}),_("circle",{cx:"9",cy:"9",r:"1",fill:"currentColor",stroke:"none"}),_("circle",{cx:"15",cy:"9",r:"1",fill:"currentColor",stroke:"none"})]}),_("p",{className:"text-sm text-zinc-400 dark:text-zinc-500",children:e})]})}import{useId as ht}from"react";import{jsx as R,jsxs as ae}from"react/jsx-runtime";var bt=`
4
4
  html { height: 100dvh; }
5
5
  .wm-link { transition: opacity 0.15s; }
6
6
  .wm-link:hover { opacity: 0.35; }
7
- `,Se=!1;function bt(){if(Se||typeof document>"u")return;let e=document.createElement("style");e.textContent=ht,document.head.appendChild(e),Se=!0}function wt(e){try{let t=new URL(e);return t.searchParams.set("utm_source","m1kapp"),t.toString()}catch{return e}}function vt({children:e,color:t="#0f172a",text:r="m1k",maxWidth:a=430,sponsor:o,speed:n=40}){bt();let s=`wm-${mt().replace(/:/g,"")}`,c=o?wt(o.url):void 0,l=180,p=100,d=Math.max(14,Math.min(28,Math.floor(160/r.length))),g=o?Math.max(14,Math.min(28,Math.floor(160/o.name.length))):d,v={textAnchor:"middle",dominantBaseline:"central",style:{fill:"rgba(255,255,255,0.12)",fontWeight:900,userSelect:"none"}};return oe("div",{className:"h-dvh w-full relative overflow-hidden",style:{backgroundColor:t,transition:"background-color 0.5s ease"},children:[oe("svg",{className:"absolute inset-0 hidden sm:block",width:"100%",height:"100%","aria-hidden":"true",style:{transform:"rotate(-12deg) scale(2)",transformOrigin:"center center",overflow:"visible",pointerEvents:"none"},children:[R("defs",{children:oe("pattern",{id:s,x:"0",y:"0",width:l*2,height:p*2,patternUnits:"userSpaceOnUse",children:[n>0&&R("animateTransform",{attributeName:"patternTransform",type:"translate",from:"0 0",to:`${l} ${p}`,dur:`${n}s`,repeatCount:"indefinite"}),R("text",{x:l*.5,y:p*.5,fontSize:d,...v,children:r}),o?R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"wm-link",style:{pointerEvents:"auto"},children:R("text",{x:l*1.5,y:p*.5,fontSize:g,...v,children:o.name})}):R("text",{x:l*1.5,y:p*.5,fontSize:d,...v,children:r}),o?R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"wm-link",style:{pointerEvents:"auto"},children:R("text",{x:l*.5,y:p*1.5,fontSize:g,...v,children:o.name})}):R("text",{x:l*.5,y:p*1.5,fontSize:d,...v,children:r}),R("text",{x:l*1.5,y:p*1.5,fontSize:d,...v,children:r})]})}),R("rect",{width:"200%",height:"200%",x:"-50%",y:"-50%",fill:`url(#${s})`,style:{pointerEvents:"none"}})]}),o&&R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"absolute inset-0 z-[1] hidden sm:block","aria-label":o.name}),R("div",{className:"relative z-10 h-full flex items-center justify-center mx-auto sm:p-3",style:{maxWidth:a},children:e})]})}var ae={blue:"#3b82f6",purple:"#8b5cf6",green:"#10b981",orange:"#f97316",pink:"#ec4899",red:"#ef4444",yellow:"#eab308",cyan:"#06b6d4",slate:"#0f172a",zinc:"#27272a"};import{useCallback as xt,useEffect as kt,useSyncExternalStore as yt}from"react";import{createPortal as zt}from"react-dom";import{Fragment as Te,jsx as w,jsxs as O}from"react/jsx-runtime";var St="(function(){try{var c=document.cookie.split('; ').find(function(r){return r.startsWith('theme=')});var t=c?c.split('=')[1]:null;if(t==='dark'){document.documentElement.classList.add('dark')}else{document.documentElement.classList.remove('dark')}}catch(e){}})()";function Tt(e){try{document.cookie=`theme=${e?"dark":"light"};path=/;max-age=31536000;SameSite=Lax`}catch{}}var Nt=()=>document.documentElement.classList.contains("dark"),Pt=()=>!1;function Et(e){let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()}function Ne(e){let t=yt(Et,Nt,Pt),r=e!==void 0?e:t,a=xt(()=>{let o=!r;document.documentElement.classList.toggle("dark",o),Tt(o)},[r]);return[r,a]}function Ct({color:e,dark:t,onClick:r,className:a=""}){let[o]=Ne(t),n=o?"#000":"#fff",i=o?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.12)",s=o?"#fff":"#000";return w("button",{onClick:r,className:`w-7 h-7 rounded-full transition-all active:scale-90 hover:scale-110 overflow-hidden cursor-pointer ${a}`,style:{boxShadow:e?`0 2px 10px ${e}55`:void 0},title:"Theme",children:w("svg",{width:"100%",height:"100%",viewBox:"0 0 100 100",children:e?O(Te,{children:[w("path",{d:"M0 0 L100 0 L0 100 Z",fill:n}),w("path",{d:"M100 0 L100 100 L0 100 Z",fill:e}),w("circle",{cx:"50",cy:"50",r:"49",fill:"none",stroke:i,strokeWidth:"2"})]}):O(Te,{children:[w("circle",{cx:"50",cy:"50",r:"50",fill:n}),w("circle",{cx:"50",cy:"50",r:"49",fill:"none",stroke:i,strokeWidth:"2"}),o?O("g",{fill:s,children:[w("circle",{cx:"50",cy:"50",r:"14"}),[0,45,90,135,180,225,270,315].map(c=>{let l=c*Math.PI/180,p=50+Math.cos(l)*22,d=50+Math.sin(l)*22,g=50+Math.cos(l)*30,h=50+Math.sin(l)*30;return w("line",{x1:p,y1:d,x2:g,y2:h,stroke:s,strokeWidth:"6",strokeLinecap:"round"},c)})]}):w("path",{d:"M55 22 A28 28 0 1 0 55 78 A18 18 0 1 1 55 22 Z",fill:s})]})})})}function Rt({open:e,onClose:t,current:r,onSelect:a,dark:o,onDarkToggle:n,palette:i=ae}){let[s,c]=Ne(o);function l(){n?n():c()}if(kt(()=>{if(!e)return;let d=g=>{g.key==="Escape"&&t()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[e,t]),!e||typeof document>"u")return null;let p=Object.entries(i);return zt(O("div",{className:"fixed inset-0 z-[9999] flex items-end justify-center",onClick:t,children:[w("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-sm"}),O("div",{className:"relative z-10 w-full max-w-[430px] mb-3 mx-3 rounded-2xl bg-white dark:bg-zinc-900 shadow-2xl overflow-hidden",onClick:d=>d.stopPropagation(),children:[O("div",{className:"px-4 pt-4 pb-3",children:[w("p",{className:"text-sm font-bold text-zinc-900 dark:text-white mb-3",children:"\uD14C\uB9C8"}),w("div",{className:"flex gap-2 mb-4",children:[{label:"\uB77C\uC774\uD2B8",isDark:!1},{label:"\uB2E4\uD06C",isDark:!0}].map(d=>{let g=s===d.isDark;return O("button",{onClick:()=>{g||l()},className:`flex-1 flex items-center justify-center gap-2 py-2.5 rounded-2xl transition-all ${g?"bg-zinc-900 dark:bg-white ring-2 ring-zinc-900 dark:ring-white ring-offset-2 ring-offset-white dark:ring-offset-zinc-900":"bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:[d.isDark?w("svg",{width:"15",height:"15",viewBox:"-1 -1 26 26",fill:g?"#18181b":"#71717a",children:w("path",{d:"M21 12.79A9 9 0 1 1 11.21 3a7 7 0 0 0 9.79 9.79z"})}):O("svg",{width:"15",height:"15",viewBox:"-1 -1 26 26",fill:g?"white":"#71717a",children:[w("circle",{cx:"12",cy:"12",r:"5"}),w("path",{d:"M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42",stroke:g?"white":"#71717a",strokeWidth:"2",strokeLinecap:"round"})]}),w("span",{className:`text-sm font-semibold ${g?"text-white dark:text-zinc-900":"text-zinc-400 dark:text-zinc-500"}`,children:d.label})]},d.label)})})]}),w("div",{className:"px-4 pb-3 grid grid-cols-5 gap-3 justify-items-center",children:p.map(([,d])=>w("button",{onClick:()=>{a(d),t()},className:"relative w-11 h-11 rounded-full transition-all hover:scale-110",style:{backgroundColor:d,boxShadow:r===d?`0 0 0 2px #fff, 0 0 0 4px ${d}`:"0 0 0 1.5px rgba(255,255,255,0.5), 0 2px 8px rgba(255,255,255,0.2)"},children:r===d&&w("div",{className:"absolute inset-0 flex items-center justify-center",children:w("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round",children:w("polyline",{points:"20 6 9 17 4 12"})})})},d))}),w("div",{className:"px-4 py-3 border-t border-zinc-100 dark:border-zinc-800",children:w("button",{onClick:t,className:"w-full py-2.5 rounded-xl bg-zinc-100 dark:bg-zinc-800 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"Close"})})]})]}),document.body)}var Mt={tossface:"https://cdn.jsdelivr.net/gh/toss/tossface/dist/tossface.css",pretendard:"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css",inter:"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&display=swap"},Bt={default:'"Pretendard Variable", "Pretendard", system-ui, -apple-system, sans-serif, "Tossface"',pretendard:'"Pretendard Variable", "Pretendard", system-ui, sans-serif',inter:'"Inter", system-ui, sans-serif'};import{useState as J,useEffect as Pe}from"react";import{Fragment as At,jsx as ne,jsxs as Ee}from"react/jsx-runtime";function It({words:e,color:t="currentColor",speed:r=80,deleteSpeed:a=30,pauseMs:o=2200,gapMs:n=400,cursorColor:i,className:s=""}){let[c,l]=J(0),[p,d]=J(0),[g,h]=J(!1),[v,T]=J(!0),k=e[c]||"",P=i||t,N=g?p>0:p<k.length;Pe(()=>{if(N){T(!0);return}let m=setInterval(()=>T(b=>!b),530);return()=>clearInterval(m)},[N]),Pe(()=>{if(!g&&p<k.length){let m=Math.random()*r,b=k[p-1]===" "?r*.4:0,y=setTimeout(()=>d(L=>L+1),r*.75+m+b);return()=>clearTimeout(y)}if(!g&&p===k.length){let m=setTimeout(()=>h(!0),o);return()=>clearTimeout(m)}if(g&&p>0){let m=setTimeout(()=>d(b=>b-1),a+Math.random()*a*.6);return()=>clearTimeout(m)}if(g&&p===0){let m=setTimeout(()=>{h(!1),l(b=>(b+1)%e.length)},n);return()=>clearTimeout(m)}},[p,g,k,r,a,o,n,e.length]);let M=k.slice(0,p),C=M[M.length-1],E=M.slice(0,-1);return Ee("span",{className:s,style:{color:t},children:[p>0&&Ee(At,{children:[E,ne("span",{className:"inline-block",style:{animation:g?void 0:"m1k-char-pop 0.1s ease-out"},children:C},`${c}-${p}`)]}),ne("span",{className:"inline-block w-0.5 h-[1em] ml-px align-middle rounded-full",style:{backgroundColor:P,opacity:v?1:0,transition:"opacity 0.1s"}}),ne("style",{children:`
7
+ `,Se=!1;function wt(){if(Se||typeof document>"u")return;let e=document.createElement("style");e.textContent=bt,document.head.appendChild(e),Se=!0}function vt(e){try{let t=new URL(e);return t.searchParams.set("utm_source","m1kapp"),t.toString()}catch{return e}}function xt({children:e,color:t="#0f172a",text:r="m1k",maxWidth:a=430,sponsor:o,speed:n=40}){wt();let s=`wm-${ht().replace(/:/g,"")}`,c=o?vt(o.url):void 0,l=180,p=100,d=Math.max(14,Math.min(28,Math.floor(160/r.length))),g=o?Math.max(14,Math.min(28,Math.floor(160/o.name.length))):d,v={textAnchor:"middle",dominantBaseline:"central",style:{fill:"rgba(255,255,255,0.12)",fontWeight:900,userSelect:"none"}};return ae("div",{className:"h-dvh w-full relative overflow-hidden",style:{backgroundColor:t,transition:"background-color 0.5s ease"},children:[ae("svg",{className:"absolute inset-0 hidden sm:block",width:"100%",height:"100%","aria-hidden":"true",style:{transform:"rotate(-12deg) scale(2)",transformOrigin:"center center",overflow:"visible",pointerEvents:"none"},children:[R("defs",{children:ae("pattern",{id:s,x:"0",y:"0",width:l*2,height:p*2,patternUnits:"userSpaceOnUse",children:[n>0&&R("animateTransform",{attributeName:"patternTransform",type:"translate",from:"0 0",to:`${l} ${p}`,dur:`${n}s`,repeatCount:"indefinite"}),R("text",{x:l*.5,y:p*.5,fontSize:d,...v,children:r}),o?R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"wm-link",style:{pointerEvents:"auto"},children:R("text",{x:l*1.5,y:p*.5,fontSize:g,...v,children:o.name})}):R("text",{x:l*1.5,y:p*.5,fontSize:d,...v,children:r}),o?R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"wm-link",style:{pointerEvents:"auto"},children:R("text",{x:l*.5,y:p*1.5,fontSize:g,...v,children:o.name})}):R("text",{x:l*.5,y:p*1.5,fontSize:d,...v,children:r}),R("text",{x:l*1.5,y:p*1.5,fontSize:d,...v,children:r})]})}),R("rect",{width:"200%",height:"200%",x:"-50%",y:"-50%",fill:`url(#${s})`,style:{pointerEvents:"none"}})]}),o&&R("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"absolute inset-0 z-[1] hidden sm:block","aria-label":o.name}),R("div",{className:"relative z-10 h-full flex items-center justify-center mx-auto sm:p-3",style:{maxWidth:a},children:e})]})}var ne={blue:"#3b82f6",purple:"#8b5cf6",green:"#10b981",orange:"#f97316",pink:"#ec4899",red:"#ef4444",yellow:"#eab308",cyan:"#06b6d4",slate:"#0f172a",zinc:"#27272a"};import{useCallback as kt,useEffect as yt,useSyncExternalStore as zt}from"react";import{createPortal as St}from"react-dom";import{Fragment as Te,jsx as w,jsxs as O}from"react/jsx-runtime";var Tt="(function(){try{var c=document.cookie.split('; ').find(function(r){return r.startsWith('theme=')});var t=c?c.split('=')[1]:null;if(t==='dark'){document.documentElement.classList.add('dark')}else{document.documentElement.classList.remove('dark')}}catch(e){}})()";function Nt(e){try{document.cookie=`theme=${e?"dark":"light"};path=/;max-age=31536000;SameSite=Lax`}catch{}}var Pt=()=>document.documentElement.classList.contains("dark"),Et=()=>!1;function Ct(e){let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()}function Ne(e){let t=zt(Ct,Pt,Et),r=e!==void 0?e:t,a=kt(()=>{let o=!r;document.documentElement.classList.toggle("dark",o),Nt(o)},[r]);return[r,a]}function Rt({color:e,dark:t,onClick:r,className:a=""}){let[o]=Ne(t),n=o?"#000":"#fff",i=o?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.12)",s=o?"#fff":"#000";return w("button",{onClick:r,className:`w-7 h-7 rounded-full transition-all active:scale-90 hover:scale-110 overflow-hidden cursor-pointer ${a}`,style:{boxShadow:e?`0 2px 10px ${e}55`:void 0},title:"Theme",children:w("svg",{width:"100%",height:"100%",viewBox:"0 0 100 100",children:e?O(Te,{children:[w("path",{d:"M0 0 L100 0 L0 100 Z",fill:n}),w("path",{d:"M100 0 L100 100 L0 100 Z",fill:e}),w("circle",{cx:"50",cy:"50",r:"49",fill:"none",stroke:i,strokeWidth:"2"})]}):O(Te,{children:[w("circle",{cx:"50",cy:"50",r:"50",fill:n}),w("circle",{cx:"50",cy:"50",r:"49",fill:"none",stroke:i,strokeWidth:"2"}),o?O("g",{fill:s,children:[w("circle",{cx:"50",cy:"50",r:"14"}),[0,45,90,135,180,225,270,315].map(c=>{let l=c*Math.PI/180,p=50+Math.cos(l)*22,d=50+Math.sin(l)*22,g=50+Math.cos(l)*30,h=50+Math.sin(l)*30;return w("line",{x1:p,y1:d,x2:g,y2:h,stroke:s,strokeWidth:"6",strokeLinecap:"round"},c)})]}):w("path",{d:"M55 22 A28 28 0 1 0 55 78 A18 18 0 1 1 55 22 Z",fill:s})]})})})}function Mt({open:e,onClose:t,current:r,onSelect:a,dark:o,onDarkToggle:n,palette:i=ne}){let[s,c]=Ne(o);function l(){n?n():c()}if(yt(()=>{if(!e)return;let d=g=>{g.key==="Escape"&&t()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[e,t]),!e||typeof document>"u")return null;let p=Object.entries(i);return St(O("div",{className:"fixed inset-0 z-[9999] flex items-end justify-center",onClick:t,children:[w("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-sm"}),O("div",{className:"relative z-10 w-full max-w-[430px] mb-3 mx-3 rounded-2xl bg-white dark:bg-zinc-900 shadow-2xl overflow-hidden",onClick:d=>d.stopPropagation(),children:[O("div",{className:"px-4 pt-4 pb-3",children:[w("p",{className:"text-sm font-bold text-zinc-900 dark:text-white mb-3",children:"\uD14C\uB9C8"}),w("div",{className:"flex gap-2 mb-4",children:[{label:"\uB77C\uC774\uD2B8",isDark:!1},{label:"\uB2E4\uD06C",isDark:!0}].map(d=>{let g=s===d.isDark;return O("button",{onClick:()=>{g||l()},className:`flex-1 flex items-center justify-center gap-2 py-2.5 rounded-2xl transition-all ${g?"bg-zinc-900 dark:bg-white ring-2 ring-zinc-900 dark:ring-white ring-offset-2 ring-offset-white dark:ring-offset-zinc-900":"bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:[d.isDark?w("svg",{width:"15",height:"15",viewBox:"-1 -1 26 26",fill:g?"#18181b":"#71717a",children:w("path",{d:"M21 12.79A9 9 0 1 1 11.21 3a7 7 0 0 0 9.79 9.79z"})}):O("svg",{width:"15",height:"15",viewBox:"-1 -1 26 26",fill:g?"white":"#71717a",children:[w("circle",{cx:"12",cy:"12",r:"5"}),w("path",{d:"M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42",stroke:g?"white":"#71717a",strokeWidth:"2",strokeLinecap:"round"})]}),w("span",{className:`text-sm font-semibold ${g?"text-white dark:text-zinc-900":"text-zinc-400 dark:text-zinc-500"}`,children:d.label})]},d.label)})})]}),w("div",{className:"px-4 pb-3 grid grid-cols-5 gap-3 justify-items-center",children:p.map(([,d])=>w("button",{onClick:()=>{a(d),t()},className:"relative w-11 h-11 rounded-full transition-all hover:scale-110",style:{backgroundColor:d,boxShadow:r===d?`0 0 0 2px #fff, 0 0 0 4px ${d}`:"0 0 0 1.5px rgba(255,255,255,0.5), 0 2px 8px rgba(255,255,255,0.2)"},children:r===d&&w("div",{className:"absolute inset-0 flex items-center justify-center",children:w("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round",children:w("polyline",{points:"20 6 9 17 4 12"})})})},d))}),w("div",{className:"px-4 py-3 border-t border-zinc-100 dark:border-zinc-800",children:w("button",{onClick:t,className:"w-full py-2.5 rounded-xl bg-zinc-100 dark:bg-zinc-800 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"Close"})})]})]}),document.body)}var It={tossface:"https://cdn.jsdelivr.net/gh/toss/tossface/dist/tossface.css",pretendard:"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css",inter:"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&display=swap"},Bt={default:'"Pretendard Variable", "Pretendard", system-ui, -apple-system, sans-serif, "Tossface"',pretendard:'"Pretendard Variable", "Pretendard", system-ui, sans-serif',inter:'"Inter", system-ui, sans-serif'};import{useState as Z,useEffect as Pe}from"react";import{Fragment as $t,jsx as ie,jsxs as Ee}from"react/jsx-runtime";function At({words:e,color:t="currentColor",speed:r=80,deleteSpeed:a=30,pauseMs:o=2200,gapMs:n=400,cursorColor:i,className:s=""}){let[c,l]=Z(0),[p,d]=Z(0),[g,h]=Z(!1),[v,T]=Z(!0),k=e[c]||"",P=i||t,N=g?p>0:p<k.length;Pe(()=>{if(N){T(!0);return}let f=setInterval(()=>T(b=>!b),530);return()=>clearInterval(f)},[N]),Pe(()=>{if(!g&&p<k.length){let f=Math.random()*r,b=k[p-1]===" "?r*.4:0,y=setTimeout(()=>d(L=>L+1),r*.75+f+b);return()=>clearTimeout(y)}if(!g&&p===k.length){let f=setTimeout(()=>h(!0),o);return()=>clearTimeout(f)}if(g&&p>0){let f=setTimeout(()=>d(b=>b-1),a+Math.random()*a*.6);return()=>clearTimeout(f)}if(g&&p===0){let f=setTimeout(()=>{h(!1),l(b=>(b+1)%e.length)},n);return()=>clearTimeout(f)}},[p,g,k,r,a,o,n,e.length]);let M=k.slice(0,p),C=M[M.length-1],E=M.slice(0,-1);return Ee("span",{className:s,style:{color:t},children:[p>0&&Ee($t,{children:[E,ie("span",{className:"inline-block",style:{animation:g?void 0:"m1k-char-pop 0.1s ease-out"},children:C},`${c}-${p}`)]}),ie("span",{className:"inline-block w-0.5 h-[1em] ml-px align-middle rounded-full",style:{backgroundColor:P,opacity:v?1:0,transition:"opacity 0.1s"}}),ie("style",{children:`
8
8
  @keyframes m1k-char-pop {
9
9
  0% { opacity: 0; transform: translateY(4px); }
10
10
  100% { opacity: 1; transform: translateY(0); }
11
11
  }
12
- `})]})}import{useEffect as $t,useState as Lt}from"react";import{createPortal as Ot}from"react-dom";import{jsx as I,jsxs as Re}from"react/jsx-runtime";var Ce=[{label:"\uC790\uC8FC \uC4F0\uB294",emojis:["\u{1F3E0}","\u{1F50D}","\u{1F464}","\u2B50","\u2764\uFE0F","\u{1F525}","\u2705","\u{1F4CC}","\u{1F3AF}","\u{1F4A1}","\u{1F680}","\u{1F4AC}","\u{1F44D}","\u{1F64C}","\u{1F4AA}","\u{1F389}","\u{1F4E2}","\u{1F511}","\u26A1","\u{1F31F}","\u{1F380}","\u{1F9E1}","\u{1FAF6}","\u{1F947}"]},{label:"\uAC10\uC815",emojis:["\u{1F600}","\u{1F604}","\u{1F606}","\u{1F60E}","\u{1F979}","\u{1F60D}","\u{1F929}","\u{1F605}","\u{1F602}","\u{1F972}","\u{1F62D}","\u{1F624}","\u{1F914}","\u{1F607}","\u{1FAF6}","\u{1F917}","\u{1F634}","\u{1F92F}","\u{1F973}","\u{1F62C}","\u{1FAE0}","\u{1F92B}","\u{1F636}","\u{1FAE1}"]},{label:"\uB3D9\uBB3C",emojis:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F438}","\u{1F435}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F986}","\u{1F989}","\u{1F98B}","\u{1F422}","\u{1F42C}","\u{1F433}"]},{label:"\uC0AC\uBB3C",emojis:["\u{1F4F1}","\u{1F4BB}","\u2328\uFE0F","\u{1F5A5}\uFE0F","\u{1F4F7}","\u{1F3B5}","\u{1F3AE}","\u{1F4DA}","\u{1F4B0}","\u{1F381}","\u{1F514}","\u{1F4CA}","\u{1F5D3}\uFE0F","\u26A1","\u{1F527}","\u{1F48A}","\u{1F9EA}","\u{1F52D}","\u{1F399}\uFE0F","\u{1F58B}\uFE0F","\u{1F4E6}","\u{1F6CD}\uFE0F","\u{1F4B3}","\u{1F510}"]},{label:"\uC790\uC5F0",emojis:["\u{1F308}","\u{1F338}","\u{1F33F}","\u{1F340}","\u{1F319}","\u2600\uFE0F","\u2B50","\u{1F30A}","\u{1F34E}","\u{1F33A}","\u2744\uFE0F","\u{1F334}","\u{1F335}","\u{1F344}","\u{1F33B}","\u{1F30D}","\u26C5","\u{1F32A}\uFE0F","\u{1F305}","\u{1F341}","\u{1F33E}","\u{1FAB8}","\u{1FAE7}","\u2604\uFE0F"]},{label:"\uD65C\uB3D9",emojis:["\u{1F3C3}","\u{1F9D8}","\u{1F3A8}","\u{1F373}","\u2708\uFE0F","\u{1F3D5}\uFE0F","\u{1F3A4}","\u{1F3CB}\uFE0F","\u{1F938}","\u{1F9E9}","\u{1F3AD}","\u{1F6D2}","\u{1F6B4}","\u{1F3CA}","\u26F7\uFE0F","\u{1F3B8}","\u{1F3B9}","\u{1F4F8}","\u{1F9D7}","\u{1F93F}","\u{1F3B2}","\u{1F3C6}","\u{1F3AF}","\u{1FA84}"]}];function Ft({emoji:e,onClick:t,className:r=""}){return I("button",{onClick:t,className:`w-9 h-9 rounded-full flex items-center justify-center text-lg bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-all hover:scale-110 active:scale-90 ${r}`,title:"Pick emoji",children:e})}function Dt({open:e,onClose:t,current:r,onSelect:a}){let[o,n]=Lt(0);if($t(()=>{if(!e)return;let s=c=>{c.key==="Escape"&&t()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[e,t]),!e)return null;let{emojis:i}=Ce[o];return Ot(Re("div",{className:"fixed inset-0 z-50 flex items-end justify-center",onClick:t,children:[I("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-sm"}),Re("div",{className:"relative z-10 w-full max-w-101.5 mb-3 mx-3 rounded-2xl bg-white dark:bg-zinc-900 shadow-2xl overflow-hidden",onClick:s=>s.stopPropagation(),children:[I("div",{className:"px-4 pt-4 pb-3",children:I("p",{className:"text-sm font-bold text-zinc-900 dark:text-white",children:"\uC774\uBAA8\uC9C0"})}),I("div",{className:"flex gap-1 px-4 pb-3 overflow-x-auto scrollbar-hide",children:Ce.map((s,c)=>I("button",{onClick:()=>n(c),className:`shrink-0 px-3 py-1.5 rounded-full text-xs font-semibold transition-colors ${o===c?"bg-zinc-900 dark:bg-white text-white dark:text-zinc-900":"bg-zinc-100 dark:bg-zinc-800 text-zinc-500 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:s.label},s.label))}),I("div",{className:"px-4 pb-3 grid grid-cols-6 gap-2",children:i.map(s=>I("button",{onClick:()=>{a(s),t()},className:`h-11 rounded-xl flex items-center justify-center text-2xl transition-all hover:scale-110 active:scale-90 ${r===s?"bg-zinc-900 dark:bg-white":"bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:s},s))}),I("div",{className:"px-4 py-3 border-t border-zinc-100 dark:border-zinc-800",children:I("button",{onClick:t,className:"w-full py-2.5 rounded-xl bg-zinc-100 dark:bg-zinc-800 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"\uB2EB\uAE30"})})]})]}),document.body)}import{useState as jt}from"react";import{createPortal as Wt}from"react-dom";import{Fragment as Vt,jsx as ie,jsxs as _t}from"react/jsx-runtime";function Ut({label:e,children:t,placement:r="top"}){let[a,o]=jt(null),n=l=>{o(l.currentTarget.getBoundingClientRect())},i=()=>o(null),s=a?r==="top"?a.top+window.scrollY-36:a.bottom+window.scrollY+8:0,c=a?a.left+window.scrollX+a.width/2:0;return _t(Vt,{children:[ie("span",{className:"inline-flex",onMouseEnter:n,onMouseLeave:i,onFocus:n,onBlur:i,children:t}),a&&Wt(ie("div",{className:"fixed z-[9999] pointer-events-none",style:{top:s,left:c,transform:"translateX(-50%)"},children:ie("div",{className:"px-3 py-1.5 rounded-xl bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-xs font-semibold whitespace-nowrap shadow-lg animate-in fade-in zoom-in-95 duration-100",children:e})}),document.body)]})}import{useState as Me,useMemo as Be,useRef as Ht}from"react";import{jsx as S,jsxs as D}from"react/jsx-runtime";function qt(e){let[,t,r]=e.split("-");return`${parseInt(t)}\uC6D4 ${parseInt(r)}\uC77C`}function Ie(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}var _=13,Gt=3,j=_+Gt,Yt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Kt=["","Mon","","Wed","","Fri",""];function Jt(e){let t=e.replace("#","");return[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)]}function Ae(e,t,r,a){if(e===0)return r?"rgb(39, 39, 42)":"rgb(244, 244, 245)";let o=e/t,[n,i,s]=Jt(a);if(r){let p=[.25,.4,.6,.9],d=o>.75?p[3]:o>.5?p[2]:o>.25?p[1]:p[0];return`rgba(${n}, ${i}, ${s}, ${d})`}let c=[.8,.6,.4,.15],l=o>.75?c[3]:o>.5?c[2]:o>.25?c[1]:c[0];return`rgb(${Math.round(n+(255-n)*l)}, ${Math.round(i+(255-i)*l)}, ${Math.round(s+(255-s)*l)})`}function Zt({data:e,accent:t,isDark:r=!1,unit:a=""}){let[o,n]=Me(null),i=Ht(null),s=Be(()=>{let u=new Set,x=new Date().getFullYear();u.add(x);for(let B of e)u.add(new Date(B.date).getFullYear());return Array.from(u).sort((B,U)=>U-B)},[e]),[c,l]=Me(new Date().getFullYear()),p=Be(()=>new Map(e.map(u=>[u.date,u.count])),[e]),d=e.length>0?e[0].date:null,g=d?new Date(d).toLocaleDateString("ko-KR",{year:"numeric",month:"long",day:"numeric"}):null,h=new Date,v=Ie(h),T=new Date(c,0,1),k=new Date(c,11,31),P=new Date(T);P.setDate(P.getDate()-P.getDay());let N=[],M=Math.ceil((k.getTime()-P.getTime())/(1e3*60*60*24))+1;for(let u=0;u<M;u++){let x=new Date(P);if(x.setDate(x.getDate()+u),x>k)break;let B=Ie(x),U=Math.floor(u/7),Y=u%7,K=x<T,ee=x>h;N.push({date:B,count:p.get(B)||0,col:U,row:Y,isOutOfRange:K,isFuture:ee})}let C=Math.max(...N.map(u=>u.count),1),E=N.length>0?Math.max(...N.map(u=>u.col))+1:1,m=[],b=-1;for(let u of N){if(u.row!==0||u.isOutOfRange)continue;let x=new Date(u.date).getMonth();x!==b&&(m.push({label:Yt[x],col:u.col}),b=x)}let y=36,L=22,Je=y+E*j,Ze=L+7*j;return D("div",{ref:i,className:"relative space-y-4",children:[D("div",{className:"flex items-center justify-between flex-wrap gap-2",children:[S("div",{className:"flex items-center gap-1.5",children:s.map(u=>S("button",{onClick:()=>l(u),className:`px-3 py-1 rounded-lg text-xs font-medium transition-colors ${c===u?"bg-zinc-900 dark:bg-white text-white dark:text-zinc-900":"bg-zinc-100 dark:bg-zinc-800 text-zinc-400 dark:text-zinc-500 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:u},u))}),g&&D("p",{className:"text-[11px] text-zinc-400 dark:text-zinc-500",children:["\uCCAB \uAE30\uB85D ",S("span",{className:"font-medium text-zinc-600 dark:text-zinc-400",children:g})]})]}),S("div",{className:"overflow-x-auto",children:D("svg",{width:Je,height:Ze,className:"block mx-auto",onMouseLeave:()=>n(null),children:[m.map((u,x)=>S("text",{x:y+u.col*j,y:13,className:"fill-zinc-400",fontFamily:"system-ui, sans-serif",fontSize:10,children:u.label},`${u.label}-${x}`)),Kt.map((u,x)=>u?S("text",{x:0,y:L+x*j+_-2,className:"fill-zinc-300",fontFamily:"system-ui, sans-serif",fontSize:9,children:u},x):null),N.map(u=>{let x=u.date===v,B=u.date===d,U=u.isOutOfRange?"transparent":u.isFuture?r?"rgb(24, 24, 27)":"rgb(250, 250, 250)":B?t:Ae(u.count,C,r,t),Y=y+u.col*j,K=L+u.row*j;return S("rect",{x:Y,y:K,width:_,height:_,rx:3,fill:U,stroke:B?t:"none",strokeWidth:B?1.5:0,style:{cursor:u.isOutOfRange?"default":"pointer"},onMouseEnter:ee=>{if(u.isOutOfRange)return;let he=ee.currentTarget.ownerSVGElement.getBoundingClientRect(),be=i.current.getBoundingClientRect();n({x:Y+he.left-be.left+_/2,y:K+he.top-be.top,date:u.date,count:u.count,isFirst:B,isToday:x,isFuture:u.isFuture})}},u.date)})]})}),o&&D("div",{className:"pointer-events-none absolute z-30 -translate-x-1/2 -translate-y-full",style:{left:o.x,top:o.y-6},children:[D("div",{className:"bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-[11px] rounded-lg px-2.5 py-1.5 shadow-lg whitespace-nowrap",children:[S("span",{className:"font-medium",children:qt(o.date)}),!o.isFuture&&S("span",{className:"ml-1.5 tabular-nums",children:o.count>0?`${o.count.toLocaleString()}${a}`:"\uAE30\uB85D \uC5C6\uC74C"}),o.isFirst&&S("span",{className:"ml-1.5 text-[10px] opacity-70",children:"\u{1F331} \uCCAB \uAE30\uB85D"}),o.isToday&&!o.isFirst&&S("span",{className:"ml-1.5 text-[10px] opacity-70",children:"\uC624\uB298"})]}),S("div",{className:"mx-auto w-0 h-0 border-l-4 border-r-4 border-t-4 border-l-transparent border-r-transparent border-t-zinc-900 dark:border-t-zinc-100"})]}),D("div",{className:"flex items-center justify-end gap-1.5 text-[10px] text-zinc-400 dark:text-zinc-500",children:[S("span",{children:"Less"}),[0,.15,.35,.6,.85].map((u,x)=>S("div",{className:"w-3 h-3 rounded-xs",style:{backgroundColor:u===0?r?"rgb(39, 39, 42)":"rgb(244, 244, 245)":Ae(Math.ceil(u*10),10,r,t)}},x)),S("span",{children:"More"}),S("div",{className:"ml-2 w-3 h-3 rounded-xs",style:{backgroundColor:t,opacity:.6}}),S("span",{children:"1st"})]})]})}import{useState as Xt}from"react";import{jsx as $e}from"react/jsx-runtime";var Qt={xs:{box:"w-6 h-6",text:"text-[9px]",px:24},sm:{box:"w-8 h-8",text:"text-[11px]",px:32},md:{box:"w-10 h-10",text:"text-sm",px:40},lg:{box:"w-14 h-14",text:"text-lg",px:56},xl:{box:"w-20 h-20",text:"text-2xl",px:80}};function er({src:e,fallback:t,size:r="md",shape:a="circle",color:o="#3f3f46",className:n=""}){let{box:i,text:s}=Qt[r],c=a==="circle"?"rounded-full":"rounded-xl",[l,p]=Xt(!1);if(e&&!l)return $e("img",{src:e,alt:t,onError:()=>p(!0),className:`${i} ${c} object-cover flex-shrink-0 ${n}`});let d=t.trim().slice(0,2).toUpperCase();return $e("div",{className:`${i} ${c} flex items-center justify-center flex-shrink-0 font-bold select-none ${s} ${n}`,style:{backgroundColor:o,color:"#ffffff"},"aria-label":t,children:d})}import{jsx as ar}from"react/jsx-runtime";var tr={default:"bg-zinc-100 dark:bg-zinc-800 text-zinc-600 dark:text-zinc-400",green:"bg-green-100 dark:bg-green-950 text-green-700 dark:text-green-400",red:"bg-red-100 dark:bg-red-950 text-red-700 dark:text-red-400",yellow:"bg-yellow-100 dark:bg-yellow-950 text-yellow-700 dark:text-yellow-400",blue:"bg-blue-100 dark:bg-blue-950 text-blue-700 dark:text-blue-400",purple:"bg-purple-100 dark:bg-purple-950 text-purple-700 dark:text-purple-400",orange:"bg-orange-100 dark:bg-orange-950 text-orange-700 dark:text-orange-400"},rr={sm:"text-[10px] px-1.5 py-0.5",md:"text-xs px-2 py-0.5"};function or({children:e,variant:t="default",size:r="md",className:a=""}){return ar("span",{className:`inline-flex items-center font-semibold rounded-full leading-none ${tr[t]} ${rr[r]} ${a}`,children:e})}import{useCallback as nr,useState as ir}from"react";import{Fragment as Le,jsx as A,jsxs as se}from"react/jsx-runtime";function Oe(e){let[t,r]=ir(!1),a=typeof navigator<"u"&&typeof navigator.share=="function";return{share:nr(async n=>{let i={...e,...n},s=i.url??(typeof window<"u"?window.location.href:"");if(a)try{await navigator.share({title:i.title,text:i.text,url:s});return}catch(c){if(c.name==="AbortError")return}try{await navigator.clipboard.writeText(s),r(!0),setTimeout(()=>r(!1),2e3)}catch{}},[a]),copied:t,canNativeShare:a}}function sr({url:e,title:t,text:r,label:a="\uACF5\uC720",copiedLabel:o="\uB9C1\uD06C \uBCF5\uC0AC\uB428",className:n=""}){let{share:i,copied:s}=Oe({url:e,title:t,text:r});return A("button",{onClick:()=>i(),className:`flex items-center gap-1.5 px-3 py-1.5 rounded-xl text-sm font-semibold bg-zinc-100 dark:bg-zinc-800 text-zinc-700 dark:text-zinc-300 hover:bg-zinc-200 dark:hover:bg-zinc-700 active:scale-95 transition-all ${n}`,children:s?se(Le,{children:[A(lr,{}),o]}):se(Le,{children:[A(cr,{}),a]})})}function cr(){return se("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[A("circle",{cx:"18",cy:"5",r:"3"}),A("circle",{cx:"6",cy:"12",r:"3"}),A("circle",{cx:"18",cy:"19",r:"3"}),A("line",{x1:"8.59",y1:"13.51",x2:"15.42",y2:"17.49"}),A("line",{x1:"15.41",y1:"6.51",x2:"8.59",y2:"10.49"})]})}function lr(){return A("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:A("polyline",{points:"20 6 9 17 4 12"})})}import{createContext as dr,useContext as pr,useState as Fe,useCallback as ur,useEffect as gr}from"react";import{jsx as ce,jsxs as wr}from"react/jsx-runtime";var De=dr(null);function fr({children:e}){let[t,r]=Fe([]),a=ur((o,n)=>{let i=Math.random().toString(36).slice(2,9),s=n?.duration??2500;r(c=>[...c,{id:i,message:o,variant:n?.variant??"default",duration:s}]),setTimeout(()=>{r(c=>c.filter(l=>l.id!==i))},s)},[]);return wr(De.Provider,{value:a,children:[e,ce("div",{"aria-live":"polite","aria-atomic":"false",className:"fixed bottom-24 inset-x-0 z-[9999] flex flex-col items-center gap-2 px-4 pointer-events-none",children:t.map(o=>ce(hr,{item:o},o.id))})]})}var mr={default:"bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900",success:"bg-green-600 text-white",error:"bg-red-600 text-white",info:"bg-blue-600 text-white"};function hr({item:e}){let[t,r]=Fe(!1);return gr(()=>{let a=requestAnimationFrame(()=>r(!0));return()=>cancelAnimationFrame(a)},[]),ce("div",{role:"status",className:`pointer-events-auto w-full max-w-[390px] px-4 py-3 rounded-2xl text-sm font-semibold shadow-xl text-center transition-all duration-300 ${mr[e.variant]} ${t?"opacity-100 translate-y-0":"opacity-0 translate-y-3"}`,children:e.message})}function br(){let e=pr(De);if(!e)throw new Error("useToast must be used inside <ToastProvider>");return e}import{useState as vr,useCallback as je}from"react";function xr(e,t){let[r,a]=vr(()=>{if(typeof window>"u")return t;try{let i=window.localStorage.getItem(e);return i!==null?JSON.parse(i):t}catch{return t}}),o=je(i=>{a(s=>{let c=typeof i=="function"?i(s):i;try{window.localStorage.setItem(e,JSON.stringify(c))}catch{}return c})},[e]),n=je(()=>{try{window.localStorage.removeItem(e)}catch{}a(t)},[e]);return[r,o,n]}import{useState as kr,useEffect as yr}from"react";function zr(e,t){let[r,a]=kr(e);return yr(()=>{let o=setTimeout(()=>a(e),t);return()=>clearTimeout(o)},[e,t]),r}import{useState as le,useCallback as We,useRef as Ue}from"react";function Sr(e,t={}){let[r,a]=le(!1),[o,n]=le(null),[i,s]=le(void 0),c=Ue(e),l=Ue(t);c.current=e,l.current=t;let p=We(async g=>{a(!0),n(null);try{let h=await c.current(g);s(h),l.current.onSuccess?.(h)}catch(h){let v=h instanceof Error?h:new Error(String(h));n(v),l.current.onError?.(v)}finally{a(!1)}},[]),d=We(()=>{n(null),s(void 0)},[]);return{submit:p,loading:r,error:o,data:i,reset:d}}import{useState as Tr,useCallback as Nr,useRef as Pr}from"react";function Er(e={}){let{threshold:t=0,rootMargin:r="0px",once:a=!1}=e,[o,n]=Tr(!1),i=Pr(null);return{ref:Nr(c=>{i.current?.disconnect(),i.current=null,c&&(i.current=new IntersectionObserver(([l])=>{n(l.isIntersecting),l.isIntersecting&&a&&i.current?.disconnect()},{threshold:t,rootMargin:r}),i.current.observe(c))},[t,r,a]),inView:o}}import{jsx as Mr}from"react/jsx-runtime";var Cr={sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl",full:"rounded-full"};function Rr({className:e="",rounded:t="md"}){return Mr("div",{className:`animate-pulse bg-zinc-200 dark:bg-zinc-800 ${Cr[t]} ${e}`,"aria-hidden":"true"})}import{useEffect as de,useRef as Br,useState as Ve}from"react";import{createPortal as Ir}from"react-dom";import{jsx as H,jsxs as pe}from"react/jsx-runtime";var Ar={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg"};function $r({open:e,onClose:t,title:r,size:a="sm",children:o,persistent:n=!1,className:i=""}){let[s,c]=Ve(!1),[l,p]=Ve(!1),d=Br(null);return de(()=>{if(e)c(!0),requestAnimationFrame(()=>requestAnimationFrame(()=>p(!0)));else{p(!1);let g=setTimeout(()=>c(!1),200);return()=>clearTimeout(g)}},[e]),de(()=>{if(!e||n)return;let g=h=>{h.key==="Escape"&&t()};return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[e,t,n]),de(()=>{if(e){let g=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=g}}},[e]),!s||typeof document>"u"?null:Ir(pe("div",{role:"dialog","aria-modal":"true","aria-labelledby":r?"dialog-title":void 0,className:"fixed inset-0 z-[200] flex items-end sm:items-center justify-center p-4",children:[H("div",{className:`absolute inset-0 bg-black/50 transition-opacity duration-200 ${l?"opacity-100":"opacity-0"}`,onClick:n?void 0:t}),pe("div",{ref:d,className:`relative w-full ${Ar[a]} bg-white dark:bg-zinc-900 rounded-3xl shadow-2xl p-6 transition-all duration-200 ${l?"opacity-100 translate-y-0 scale-100":"opacity-0 translate-y-4 scale-95"} ${i}`,children:[!n&&H("button",{onClick:t,className:"absolute top-4 right-4 p-1.5 rounded-full text-zinc-400 hover:text-zinc-700 dark:hover:text-zinc-200 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors","aria-label":"\uB2EB\uAE30",children:pe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[H("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),H("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})}),r&&H("h2",{id:"dialog-title",className:"text-lg font-bold text-zinc-900 dark:text-white mb-4 pr-6",children:r}),o]})]}),document.body)}import{useState as _e,useEffect as Lr}from"react";function ue(){let[e,t]=_e(null),[r,a]=_e(!1);Lr(()=>{if(window.matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0){a(!0);return}let s=l=>{l.preventDefault(),t(l)},c=()=>a(!0);return window.addEventListener("beforeinstallprompt",s),window.addEventListener("appinstalled",c),()=>{window.removeEventListener("beforeinstallprompt",s),window.removeEventListener("appinstalled",c)}},[]);let o=r?"installed":e?"android-ready":Or()?"ios-safari":"unsupported";async function n(){if(!e)return;await e.prompt();let{outcome:i}=await e.userChoice;i==="accepted"&&a(!0),t(null)}return{state:o,install:n}}function Or(){if(typeof navigator>"u")return!1;let e=navigator.userAgent;return/iphone|ipad|ipod/i.test(e)&&!/CriOS|FxiOS|OPiOS|EdgiOS/i.test(e)}import{useState as Fr}from"react";import{Fragment as q,jsx as f,jsxs as z}from"react/jsx-runtime";function Dr({appName:e="\uC571",iconSrc:t,label:r="\uC571\uC73C\uB85C \uC124\uCE58",installedLabel:a,className:o}){let{state:n,install:i}=ue(),[s,c]=Fr(!1);if(n==="installed")return a?z("div",{className:`flex items-center gap-2 text-sm text-zinc-400 ${o??""}`,children:[f(Wr,{}),f("span",{children:a})]}):null;if(n==="unsupported")return null;function l(){n==="android-ready"?i():n==="ios-safari"&&c(!0)}return z(q,{children:[z("button",{onClick:l,className:`flex items-center gap-2 px-4 py-2.5 rounded-xl bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-sm font-semibold transition-all active:scale-95 ${o??""}`,children:[f(qe,{}),f("span",{children:r}),n==="ios-safari"&&f(jr,{})]}),n==="ios-safari"&&f(He,{open:s,onClose:()=>c(!1),appName:e,iconSrc:t})]})}function He({open:e,onClose:t,appName:r,iconSrc:a}){return e?z(q,{children:[f("div",{className:"fixed inset-0 z-[9998] bg-black/40 backdrop-blur-sm",onClick:t}),z("div",{className:"fixed bottom-0 left-1/2 -translate-x-1/2 z-[9999] w-full max-w-[430px] rounded-t-2xl bg-white dark:bg-zinc-900 shadow-2xl",children:[f("div",{className:"flex justify-center pt-3 pb-1",children:f("div",{className:"w-9 h-1 rounded-full bg-zinc-200 dark:bg-zinc-700"})}),z("div",{className:"px-5 pb-8 pt-3",children:[z("div",{className:"flex items-center gap-3 mb-5",children:[a?f("img",{src:a,alt:r,className:"w-12 h-12 rounded-xl shadow"}):f("div",{className:"w-12 h-12 rounded-xl bg-zinc-100 dark:bg-zinc-800 flex items-center justify-center",children:f(qe,{size:22,className:"text-zinc-400"})}),z("div",{children:[z("p",{className:"font-bold text-zinc-900 dark:text-white text-base",children:[r," \uC124\uCE58\uD558\uAE30"]}),f("p",{className:"text-xs text-zinc-400 mt-0.5",children:"\uD648 \uD654\uBA74\uC5D0 \uCD94\uAC00\uD558\uBA74 \uC571\uCC98\uB7FC \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694"})]})]}),f("div",{className:"space-y-3",children:[{icon:f(Ur,{}),text:z(q,{children:["\uD558\uB2E8 \uD234\uBC14\uC758 ",f("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uACF5\uC720"})," \uBC84\uD2BC\uC744 \uD0ED\uD558\uC138\uC694"]})},{icon:f(Vr,{}),text:z(q,{children:["\uC2A4\uD06C\uB864\uD574\uC11C"," ",f("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uD648 \uD654\uBA74\uC5D0 \uCD94\uAC00"}),"\uB97C \uD0ED\uD558\uC138\uC694"]})},{icon:f(_r,{}),text:z(q,{children:["\uC6B0\uCE21 \uC0C1\uB2E8 ",f("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uCD94\uAC00"}),"\uB97C \uD0ED\uD558\uBA74 \uC644\uB8CC!"]})}].map((n,i)=>z("div",{className:"flex items-start gap-3",children:[f("div",{className:"w-8 h-8 rounded-xl bg-zinc-100 dark:bg-zinc-800 flex items-center justify-center flex-shrink-0 text-zinc-500 dark:text-zinc-400",children:n.icon}),f("div",{className:"flex-1 pt-1",children:z("p",{className:"text-sm text-zinc-600 dark:text-zinc-300 leading-relaxed",children:[f("span",{className:"inline-flex items-center justify-center w-4 h-4 rounded-full bg-zinc-200 dark:bg-zinc-700 text-[9px] font-bold text-zinc-500 dark:text-zinc-400 mr-1.5 flex-shrink-0",children:i+1}),n.text]})})]},i))}),z("div",{className:"mt-5 flex items-center gap-2 px-3 py-2.5 rounded-xl bg-zinc-50 dark:bg-zinc-800",children:[f(Hr,{}),f("p",{className:"text-xs text-zinc-400",children:"Safari \uBE0C\uB77C\uC6B0\uC800\uC5D0\uC11C\uB9CC \uD648 \uD654\uBA74 \uCD94\uAC00\uAC00 \uAC00\uB2A5\uD574\uC694"})]}),f("button",{onClick:t,className:"mt-3 w-full py-3 rounded-xl text-sm font-semibold text-zinc-500 dark:text-zinc-400 bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"\uB2EB\uAE30"})]})]})]}):null}function qe({size:e=16,className:t=""}){return z("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:t,children:[f("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),f("polyline",{points:"7 10 12 15 17 10"}),f("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]})}function jr(){return f("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:"opacity-70",children:f("polyline",{points:"9 18 15 12 9 6"})})}function Wr(){return f("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:f("polyline",{points:"20 6 9 17 4 12"})})}function Ur(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[f("path",{d:"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"}),f("polyline",{points:"16 6 12 2 8 6"}),f("line",{x1:"12",y1:"2",x2:"12",y2:"15"})]})}function Vr(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[f("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),f("line",{x1:"12",y1:"8",x2:"12",y2:"16"}),f("line",{x1:"8",y1:"12",x2:"16",y2:"12"})]})}function _r(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[f("polyline",{points:"9 11 12 14 22 4"}),f("path",{d:"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"})]})}function Hr(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-zinc-400 flex-shrink-0",children:[f("circle",{cx:"12",cy:"12",r:"10"}),f("polygon",{points:"16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"})]})}var tn={width:"device-width",initialScale:1,maximumScale:1,userScalable:!1,viewportFit:"cover"};function Ge(e,t={}){let{size:r=192,bg:a="#000000",color:o="#ffffff",radius:n=.25,fontSize:i=.375}=t,s=Math.round(r*n),c=Math.round(r*i),l=a.replace("#","%23"),p=o.replace("#","%23");return`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 ${r} ${r}'><rect width='${r}' height='${r}' rx='${s}' fill='${l}'/><text x='50%25' y='50%25' dominant-baseline='central' text-anchor='middle' font-family='system-ui,sans-serif' font-size='${c}' font-weight='900' fill='${p}'>${e}</text></svg>`}function rn(e){let{name:t,shortName:r=t,description:a,startUrl:o="/",backgroundColor:n="#ffffff",themeColor:i="#000000",icon:s}=e,c=s?[{src:Ge(s.text,{size:192,bg:s.bg??i,color:s.color,radius:s.radius}),sizes:"192x192",type:"image/svg+xml"},{src:Ge(s.text,{size:512,bg:s.bg??i,color:s.color,radius:s.radius}),sizes:"512x512",type:"image/svg+xml"}]:[];return{name:t,short_name:r,...a&&{description:a},start_url:o,display:"standalone",orientation:"portrait",background_color:n,theme_color:i,icons:c}}var F=class extends Error{constructor(r,a,o,n,i){super(`${r} ${a}${n?` [${i??"GET"} ${n}]`:""}`);this.status=r;this.statusText=a;this.body=o;this.url=n;this.method=i;this.name="ApiError"}};async function G(e){return(e.headers.get("content-type")??"").includes("application/json")?e.json():e.text()}function qr(e,t={}){let r=e.replace(/\/$/,"");async function a(o,n,i,s={}){let c=n.startsWith("http")?n:`${r}/${n.replace(/^\//,"")}`,l={...t.headers,...s.headers};i!==void 0&&s.contentType!==null&&(l["Content-Type"]=s.contentType??"application/json");let p={method:o,headers:l,signal:s.signal};i!==void 0&&(p.body=i instanceof FormData?i:JSON.stringify(i));let d=new Request(c,p);t.onRequest&&(d=t.onRequest(d)??d);let g=await fetch(d);if(!g.ok){let h=await G(g).catch(()=>null),v=new F(g.status,g.statusText,h,c,o);throw t.onError?.(v),v}if(!(g.status===204||g.headers.get("content-length")==="0"))return G(g)}return{get:(o,n)=>a("GET",o,void 0,n),post:(o,n,i)=>a("POST",o,n,i),put:(o,n,i)=>a("PUT",o,n,i),patch:(o,n,i)=>a("PATCH",o,n,i),delete:(o,n)=>a("DELETE",o,void 0,n)}}import{useState as ge,useEffect as Ye,useCallback as Ke,useRef as Z}from"react";var Gr=500,$=new Map,fe=new Map;function Yr(e){e?$.delete(e):$.clear()}function Kr(e,t){$.size>=Gr&&$.delete($.keys().next().value),$.set(e,t)}async function Jr(e){let t=await fetch(e);if(!t.ok){let r=await G(t).catch(()=>null);throw new F(t.status,t.statusText,r,e,"GET")}return G(t)}async function Zr(e,t,r){let a;for(let o=0;o<=t;o++)try{return await e()}catch(n){if(a=n,n instanceof F)throw n;o<t&&await new Promise(i=>setTimeout(i,r*2**o))}throw a}function Xr(e,t={}){let{enabled:r=!0,staleTime:a=0,retry:o=2,retryDelay:n=1e3,revalidateOnFocus:i=!0,fetcher:s=Jr,onSuccess:c,onError:l}=t,[p,d]=ge(()=>{if(!e||a===0)return;let m=$.get(e);if(m&&Date.now()-m.ts<a)return m.data}),[g,h]=ge(()=>{if(!e||!r)return"idle";if(a>0){let m=$.get(e);if(m&&Date.now()-m.ts<a)return"success"}return"loading"}),[v,T]=ge(void 0),k=Z(!0),P=Z(s),N=Z(c),M=Z(l);P.current=s,N.current=c,M.current=l;let C=Ke(async(m=!1)=>{if(!e||!r){h(b=>b==="idle"?b:"idle");return}if(!m&&a>0){let b=$.get(e);if(b&&Date.now()-b.ts<a){d(b.data),h("success");return}}h("loading"),T(void 0);try{let b=fe.get(e);b||(b=Zr(()=>P.current(e),o,n),fe.set(e,b),b.finally(()=>fe.delete(e)));let y=await b;if(!k.current)return;Kr(e,{data:y,ts:Date.now()}),d(y),h("success"),N.current?.(y)}catch(b){if(!k.current)return;let y=b;T(y),h("error"),M.current?.(y)}},[e,r,a,o,n]),E=Ke(()=>C(!0),[C]);return Ye(()=>(k.current=!0,C(),()=>{k.current=!1}),[C]),Ye(()=>{if(!i)return;let m=()=>{document.visibilityState==="visible"&&C()};return document.addEventListener("visibilitychange",m),window.addEventListener("focus",m),()=>{document.removeEventListener("visibilitychange",m),window.removeEventListener("focus",m)}},[C,i]),{data:p,loading:g==="loading",error:v,status:g,refetch:E}}import{useState as X,useEffect as Q,useRef as W,useCallback as me}from"react";function Qr(e,t={}){let{interval:r=5e3,enabled:a=!0,pauseOnHidden:o=!0,onSuccess:n,onError:i}=t,[s,c]=X(void 0),[l,p]=X(!1),[d,g]=X(void 0),[h,v]=X(a),T=W(!0),k=W(null),P=W(r),N=W(e),M=W(n),C=W(i);P.current=r,N.current=e,M.current=n,C.current=i,Q(()=>(T.current=!0,()=>{T.current=!1}),[]);let E=me(async()=>{if(T.current){p(!0);try{let y=await N.current();if(!T.current)return;c(y),g(void 0),M.current?.(y)}catch(y){if(!T.current)return;let L=y;g(L),C.current?.(L)}finally{T.current&&p(!1)}}},[]),m=me(()=>{k.current&&(clearInterval(k.current),k.current=null)},[]),b=me(()=>{m(),k.current=setInterval(E,P.current)},[E,m]);return Q(()=>{if(!h){m();return}return E(),b(),m},[h,E,b,m]),Q(()=>{if(h)return m(),k.current=setInterval(E,P.current),m},[r]),Q(()=>{if(!o)return;let y=()=>{h&&(document.visibilityState==="hidden"?m():(E(),b()))};return document.addEventListener("visibilitychange",y),()=>document.removeEventListener("visibilitychange",y)},[h,o,E,b,m]),{data:s,loading:l,error:d,isRunning:h,stop:()=>v(!1),start:()=>v(!0),refetch:E}}import{clsx as eo}from"clsx";import{twMerge as to}from"tailwind-merge";function kn(e){let t=new Date(e),r=Date.now()-t.getTime(),a=Math.floor(r/1e3);return a<60?"\uBC29\uAE08 \uC804":a<3600?`${Math.floor(a/60)}\uBD84 \uC804`:a<86400?`${Math.floor(a/3600)}\uC2DC\uAC04 \uC804`:a<86400*2?"\uC5B4\uC81C":a<86400*7?`${Math.floor(a/86400)}\uC77C \uC804`:a<86400*30?`${Math.floor(a/(86400*7))}\uC8FC \uC804`:t.toLocaleDateString("ko-KR",{year:"numeric",month:"long",day:"numeric"})}function yn(e){let t=Math.abs(e),r=e<0?"-":"";return t>=1e8?`${r}${(t/1e8).toFixed(1).replace(/\.0$/,"")}\uC5B5`:t>=1e4?`${r}${(t/1e4).toFixed(1).replace(/\.0$/,"")}\uB9CC`:t>=1e3?`${r}${(t/1e3).toFixed(1).replace(/\.0$/,"")}\uCC9C`:e.toLocaleString("ko-KR")}function zn(e,t="KRW",r="ko-KR"){return new Intl.NumberFormat(r,{style:"currency",currency:t,maximumFractionDigits:t==="KRW"?0:2}).format(e)}function Nn(...e){return to(eo(e))}export{F as ApiError,rt as AppShell,at as AppShellContent,ot as AppShellHeader,er as Avatar,or as Badge,tt as Button,$r as Dialog,dt as Divider,Ft as EmojiButton,Dt as EmojiPicker,ft as EmptyState,Zt as GrassMap,He as IOSInstallSheet,Dr as PWAInstallButton,ct as Section,lt as SectionHeader,sr as ShareButton,Rr as Skeleton,ut as StatChip,St as THEME_SCRIPT,it as Tab,nt as TabBar,Ct as ThemeButton,Rt as ThemeDialog,fr as ToastProvider,Ut as Tooltip,It as Typewriter,vt as Watermark,Yr as clearFetchCache,Nn as cn,ae as colors,qr as createApiClient,rn as createManifest,Bt as fontFamily,Mt as fonts,yn as formatNumber,zn as formatPrice,tn as mobileViewport,kn as relativeTime,Ge as svgIcon,zr as useDebounce,Xr as useFetch,Sr as useFormSubmit,Er as useInView,xr as useLocalStorage,ue as usePWAInstall,Qr as usePolling,Oe as useShare,br as useToast};
12
+ `})]})}import{useEffect as Lt,useState as Ot}from"react";import{createPortal as Dt}from"react-dom";import{jsx as B,jsxs as Re}from"react/jsx-runtime";var Ce=[{label:"\uC790\uC8FC \uC4F0\uB294",emojis:["\u{1F3E0}","\u{1F50D}","\u{1F464}","\u2B50","\u2764\uFE0F","\u{1F525}","\u2705","\u{1F4CC}","\u{1F3AF}","\u{1F4A1}","\u{1F680}","\u{1F4AC}","\u{1F44D}","\u{1F64C}","\u{1F4AA}","\u{1F389}","\u{1F4E2}","\u{1F511}","\u26A1","\u{1F31F}","\u{1F380}","\u{1F9E1}","\u{1FAF6}","\u{1F947}"]},{label:"\uAC10\uC815",emojis:["\u{1F600}","\u{1F604}","\u{1F606}","\u{1F60E}","\u{1F979}","\u{1F60D}","\u{1F929}","\u{1F605}","\u{1F602}","\u{1F972}","\u{1F62D}","\u{1F624}","\u{1F914}","\u{1F607}","\u{1FAF6}","\u{1F917}","\u{1F634}","\u{1F92F}","\u{1F973}","\u{1F62C}","\u{1FAE0}","\u{1F92B}","\u{1F636}","\u{1FAE1}"]},{label:"\uB3D9\uBB3C",emojis:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F438}","\u{1F435}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F986}","\u{1F989}","\u{1F98B}","\u{1F422}","\u{1F42C}","\u{1F433}"]},{label:"\uC0AC\uBB3C",emojis:["\u{1F4F1}","\u{1F4BB}","\u2328\uFE0F","\u{1F5A5}\uFE0F","\u{1F4F7}","\u{1F3B5}","\u{1F3AE}","\u{1F4DA}","\u{1F4B0}","\u{1F381}","\u{1F514}","\u{1F4CA}","\u{1F5D3}\uFE0F","\u26A1","\u{1F527}","\u{1F48A}","\u{1F9EA}","\u{1F52D}","\u{1F399}\uFE0F","\u{1F58B}\uFE0F","\u{1F4E6}","\u{1F6CD}\uFE0F","\u{1F4B3}","\u{1F510}"]},{label:"\uC790\uC5F0",emojis:["\u{1F308}","\u{1F338}","\u{1F33F}","\u{1F340}","\u{1F319}","\u2600\uFE0F","\u2B50","\u{1F30A}","\u{1F34E}","\u{1F33A}","\u2744\uFE0F","\u{1F334}","\u{1F335}","\u{1F344}","\u{1F33B}","\u{1F30D}","\u26C5","\u{1F32A}\uFE0F","\u{1F305}","\u{1F341}","\u{1F33E}","\u{1FAB8}","\u{1FAE7}","\u2604\uFE0F"]},{label:"\uD65C\uB3D9",emojis:["\u{1F3C3}","\u{1F9D8}","\u{1F3A8}","\u{1F373}","\u2708\uFE0F","\u{1F3D5}\uFE0F","\u{1F3A4}","\u{1F3CB}\uFE0F","\u{1F938}","\u{1F9E9}","\u{1F3AD}","\u{1F6D2}","\u{1F6B4}","\u{1F3CA}","\u26F7\uFE0F","\u{1F3B8}","\u{1F3B9}","\u{1F4F8}","\u{1F9D7}","\u{1F93F}","\u{1F3B2}","\u{1F3C6}","\u{1F3AF}","\u{1FA84}"]}];function Ft({emoji:e,onClick:t,className:r=""}){return B("button",{onClick:t,className:`w-9 h-9 rounded-full flex items-center justify-center text-lg bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-all hover:scale-110 active:scale-90 ${r}`,title:"Pick emoji",children:e})}function jt({open:e,onClose:t,current:r,onSelect:a}){let[o,n]=Ot(0);if(Lt(()=>{if(!e)return;let s=c=>{c.key==="Escape"&&t()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[e,t]),!e)return null;let{emojis:i}=Ce[o];return Dt(Re("div",{className:"fixed inset-0 z-50 flex items-end justify-center",onClick:t,children:[B("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-sm"}),Re("div",{className:"relative z-10 w-full max-w-101.5 mb-3 mx-3 rounded-2xl bg-white dark:bg-zinc-900 shadow-2xl overflow-hidden",onClick:s=>s.stopPropagation(),children:[B("div",{className:"px-4 pt-4 pb-3",children:B("p",{className:"text-sm font-bold text-zinc-900 dark:text-white",children:"\uC774\uBAA8\uC9C0"})}),B("div",{className:"flex gap-1 px-4 pb-3 overflow-x-auto scrollbar-hide",children:Ce.map((s,c)=>B("button",{onClick:()=>n(c),className:`shrink-0 px-3 py-1.5 rounded-full text-xs font-semibold transition-colors ${o===c?"bg-zinc-900 dark:bg-white text-white dark:text-zinc-900":"bg-zinc-100 dark:bg-zinc-800 text-zinc-500 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:s.label},s.label))}),B("div",{className:"px-4 pb-3 grid grid-cols-6 gap-2",children:i.map(s=>B("button",{onClick:()=>{a(s),t()},className:`h-11 rounded-xl flex items-center justify-center text-2xl transition-all hover:scale-110 active:scale-90 ${r===s?"bg-zinc-900 dark:bg-white":"bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:s},s))}),B("div",{className:"px-4 py-3 border-t border-zinc-100 dark:border-zinc-800",children:B("button",{onClick:t,className:"w-full py-2.5 rounded-xl bg-zinc-100 dark:bg-zinc-800 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"\uB2EB\uAE30"})})]})]}),document.body)}import{useState as Wt}from"react";import{createPortal as Ut}from"react-dom";import{Fragment as _t,jsx as se,jsxs as Ht}from"react/jsx-runtime";function Vt({label:e,children:t,placement:r="top"}){let[a,o]=Wt(null),n=l=>{o(l.currentTarget.getBoundingClientRect())},i=()=>o(null),s=a?r==="top"?a.top+window.scrollY-36:a.bottom+window.scrollY+8:0,c=a?a.left+window.scrollX+a.width/2:0;return Ht(_t,{children:[se("span",{className:"inline-flex",onMouseEnter:n,onMouseLeave:i,onFocus:n,onBlur:i,children:t}),a&&Ut(se("div",{className:"fixed z-[9999] pointer-events-none",style:{top:s,left:c,transform:"translateX(-50%)"},children:se("div",{className:"px-3 py-1.5 rounded-xl bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-xs font-semibold whitespace-nowrap shadow-lg animate-in fade-in zoom-in-95 duration-100",children:e})}),document.body)]})}import{useState as Me,useMemo as Ie,useRef as qt}from"react";import{jsx as S,jsxs as F}from"react/jsx-runtime";function Gt(e){let[,t,r]=e.split("-");return`${parseInt(t)}\uC6D4 ${parseInt(r)}\uC77C`}function Be(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}var H=13,Yt=3,W=H+Yt,Kt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Jt=["","Mon","","Wed","","Fri",""];function Zt(e){let t=e.replace("#","");return[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)]}function Ae(e,t,r,a){if(e===0)return r?"rgb(39, 39, 42)":"rgb(244, 244, 245)";let o=e/t,[n,i,s]=Zt(a);if(r){let p=[.25,.4,.6,.9],d=o>.75?p[3]:o>.5?p[2]:o>.25?p[1]:p[0];return`rgba(${n}, ${i}, ${s}, ${d})`}let c=[.8,.6,.4,.15],l=o>.75?c[3]:o>.5?c[2]:o>.25?c[1]:c[0];return`rgb(${Math.round(n+(255-n)*l)}, ${Math.round(i+(255-i)*l)}, ${Math.round(s+(255-s)*l)})`}function Xt({data:e,accent:t,isDark:r=!1,unit:a=""}){let[o,n]=Me(null),i=qt(null),s=Ie(()=>{let u=new Set,x=new Date().getFullYear();u.add(x);for(let I of e)u.add(new Date(I.date).getFullYear());return Array.from(u).sort((I,V)=>V-I)},[e]),[c,l]=Me(new Date().getFullYear()),p=Ie(()=>new Map(e.map(u=>[u.date,u.count])),[e]),d=e.length>0?e[0].date:null,g=d?new Date(d).toLocaleDateString("ko-KR",{year:"numeric",month:"long",day:"numeric"}):null,h=new Date,v=Be(h),T=new Date(c,0,1),k=new Date(c,11,31),P=new Date(T);P.setDate(P.getDate()-P.getDay());let N=[],M=Math.ceil((k.getTime()-P.getTime())/(1e3*60*60*24))+1;for(let u=0;u<M;u++){let x=new Date(P);if(x.setDate(x.getDate()+u),x>k)break;let I=Be(x),V=Math.floor(u/7),K=u%7,J=x<T,te=x>h;N.push({date:I,count:p.get(I)||0,col:V,row:K,isOutOfRange:J,isFuture:te})}let C=Math.max(...N.map(u=>u.count),1),E=N.length>0?Math.max(...N.map(u=>u.col))+1:1,f=[],b=-1;for(let u of N){if(u.row!==0||u.isOutOfRange)continue;let x=new Date(u.date).getMonth();x!==b&&(f.push({label:Kt[x],col:u.col}),b=x)}let y=36,L=22,Je=y+E*W,Ze=L+7*W;return F("div",{ref:i,className:"relative space-y-4",children:[F("div",{className:"flex items-center justify-between flex-wrap gap-2",children:[S("div",{className:"flex items-center gap-1.5",children:s.map(u=>S("button",{onClick:()=>l(u),className:`px-3 py-1 rounded-lg text-xs font-medium transition-colors ${c===u?"bg-zinc-900 dark:bg-white text-white dark:text-zinc-900":"bg-zinc-100 dark:bg-zinc-800 text-zinc-400 dark:text-zinc-500 hover:bg-zinc-200 dark:hover:bg-zinc-700"}`,children:u},u))}),g&&F("p",{className:"text-[11px] text-zinc-400 dark:text-zinc-500",children:["\uCCAB \uAE30\uB85D ",S("span",{className:"font-medium text-zinc-600 dark:text-zinc-400",children:g})]})]}),S("div",{className:"overflow-x-auto",children:F("svg",{width:Je,height:Ze,className:"block mx-auto",onMouseLeave:()=>n(null),children:[f.map((u,x)=>S("text",{x:y+u.col*W,y:13,className:"fill-zinc-400",fontFamily:"system-ui, sans-serif",fontSize:10,children:u.label},`${u.label}-${x}`)),Jt.map((u,x)=>u?S("text",{x:0,y:L+x*W+H-2,className:"fill-zinc-300",fontFamily:"system-ui, sans-serif",fontSize:9,children:u},x):null),N.map(u=>{let x=u.date===v,I=u.date===d,V=u.isOutOfRange?"transparent":u.isFuture?r?"rgb(24, 24, 27)":"rgb(250, 250, 250)":I?t:Ae(u.count,C,r,t),K=y+u.col*W,J=L+u.row*W;return S("rect",{x:K,y:J,width:H,height:H,rx:3,fill:V,stroke:I?t:"none",strokeWidth:I?1.5:0,style:{cursor:u.isOutOfRange?"default":"pointer"},onMouseEnter:te=>{if(u.isOutOfRange)return;let be=te.currentTarget.ownerSVGElement.getBoundingClientRect(),we=i.current.getBoundingClientRect();n({x:K+be.left-we.left+H/2,y:J+be.top-we.top,date:u.date,count:u.count,isFirst:I,isToday:x,isFuture:u.isFuture})}},u.date)})]})}),o&&F("div",{className:"pointer-events-none absolute z-30 -translate-x-1/2 -translate-y-full",style:{left:o.x,top:o.y-6},children:[F("div",{className:"bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-[11px] rounded-lg px-2.5 py-1.5 shadow-lg whitespace-nowrap",children:[S("span",{className:"font-medium",children:Gt(o.date)}),!o.isFuture&&S("span",{className:"ml-1.5 tabular-nums",children:o.count>0?`${o.count.toLocaleString()}${a}`:"\uAE30\uB85D \uC5C6\uC74C"}),o.isFirst&&S("span",{className:"ml-1.5 text-[10px] opacity-70",children:"\u{1F331} \uCCAB \uAE30\uB85D"}),o.isToday&&!o.isFirst&&S("span",{className:"ml-1.5 text-[10px] opacity-70",children:"\uC624\uB298"})]}),S("div",{className:"mx-auto w-0 h-0 border-l-4 border-r-4 border-t-4 border-l-transparent border-r-transparent border-t-zinc-900 dark:border-t-zinc-100"})]}),F("div",{className:"flex items-center justify-end gap-1.5 text-[10px] text-zinc-400 dark:text-zinc-500",children:[S("span",{children:"Less"}),[0,.15,.35,.6,.85].map((u,x)=>S("div",{className:"w-3 h-3 rounded-xs",style:{backgroundColor:u===0?r?"rgb(39, 39, 42)":"rgb(244, 244, 245)":Ae(Math.ceil(u*10),10,r,t)}},x)),S("span",{children:"More"}),S("div",{className:"ml-2 w-3 h-3 rounded-xs",style:{backgroundColor:t,opacity:.6}}),S("span",{children:"1st"})]})]})}import{useState as Qt}from"react";import{jsx as $e}from"react/jsx-runtime";var er={xs:{box:"w-6 h-6",text:"text-[9px]",px:24},sm:{box:"w-8 h-8",text:"text-[11px]",px:32},md:{box:"w-10 h-10",text:"text-sm",px:40},lg:{box:"w-14 h-14",text:"text-lg",px:56},xl:{box:"w-20 h-20",text:"text-2xl",px:80}};function tr({src:e,fallback:t,size:r="md",shape:a="circle",color:o="#3f3f46",className:n=""}){let{box:i,text:s}=er[r],c=a==="circle"?"rounded-full":"rounded-xl",[l,p]=Qt(!1);if(e&&!l)return $e("img",{src:e,alt:t,onError:()=>p(!0),className:`${i} ${c} object-cover flex-shrink-0 ${n}`});let d=t.trim().slice(0,2).toUpperCase();return $e("div",{className:`${i} ${c} flex items-center justify-center flex-shrink-0 font-bold select-none ${s} ${n}`,style:{backgroundColor:o,color:"#ffffff"},"aria-label":t,children:d})}import{jsx as nr}from"react/jsx-runtime";var rr={default:"bg-zinc-100 dark:bg-zinc-800 text-zinc-600 dark:text-zinc-400",green:"bg-green-100 dark:bg-green-950 text-green-700 dark:text-green-400",red:"bg-red-100 dark:bg-red-950 text-red-700 dark:text-red-400",yellow:"bg-yellow-100 dark:bg-yellow-950 text-yellow-700 dark:text-yellow-400",blue:"bg-blue-100 dark:bg-blue-950 text-blue-700 dark:text-blue-400",purple:"bg-purple-100 dark:bg-purple-950 text-purple-700 dark:text-purple-400",orange:"bg-orange-100 dark:bg-orange-950 text-orange-700 dark:text-orange-400"},or={sm:"text-[10px] px-1.5 py-0.5",md:"text-xs px-2 py-0.5"};function ar({children:e,variant:t="default",size:r="md",className:a=""}){return nr("span",{className:`inline-flex items-center font-semibold rounded-full leading-none ${rr[t]} ${or[r]} ${a}`,children:e})}import{useCallback as ir,useState as sr}from"react";import{Fragment as Le,jsx as A,jsxs as ce}from"react/jsx-runtime";function Oe(e){let[t,r]=sr(!1),a=typeof navigator<"u"&&typeof navigator.share=="function";return{share:ir(async n=>{let i={...e,...n},s=i.url??(typeof window<"u"?window.location.href:"");if(a)try{await navigator.share({title:i.title,text:i.text,url:s});return}catch(c){if(c.name==="AbortError")return}try{await navigator.clipboard.writeText(s),r(!0),setTimeout(()=>r(!1),2e3)}catch{}},[a]),copied:t,canNativeShare:a}}function cr({url:e,title:t,text:r,label:a="\uACF5\uC720",copiedLabel:o="\uB9C1\uD06C \uBCF5\uC0AC\uB428",className:n=""}){let{share:i,copied:s}=Oe({url:e,title:t,text:r});return A("button",{onClick:()=>i(),className:`flex items-center gap-1.5 px-3 py-1.5 rounded-xl text-sm font-semibold bg-zinc-100 dark:bg-zinc-800 text-zinc-700 dark:text-zinc-300 hover:bg-zinc-200 dark:hover:bg-zinc-700 active:scale-95 transition-all ${n}`,children:s?ce(Le,{children:[A(dr,{}),o]}):ce(Le,{children:[A(lr,{}),a]})})}function lr(){return ce("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[A("circle",{cx:"18",cy:"5",r:"3"}),A("circle",{cx:"6",cy:"12",r:"3"}),A("circle",{cx:"18",cy:"19",r:"3"}),A("line",{x1:"8.59",y1:"13.51",x2:"15.42",y2:"17.49"}),A("line",{x1:"15.41",y1:"6.51",x2:"8.59",y2:"10.49"})]})}function dr(){return A("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:A("polyline",{points:"20 6 9 17 4 12"})})}import{createContext as pr,useContext as ur,useState as De,useCallback as gr,useEffect as mr}from"react";import{jsx as le,jsxs as vr}from"react/jsx-runtime";var Fe=pr(null);function fr({children:e}){let[t,r]=De([]),a=gr((o,n)=>{let i=Math.random().toString(36).slice(2,9),s=n?.duration??2500;r(c=>[...c,{id:i,message:o,variant:n?.variant??"default",duration:s}]),setTimeout(()=>{r(c=>c.filter(l=>l.id!==i))},s)},[]);return vr(Fe.Provider,{value:a,children:[e,le("div",{"aria-live":"polite","aria-atomic":"false",className:"fixed bottom-24 inset-x-0 z-[9999] flex flex-col items-center gap-2 px-4 pointer-events-none",children:t.map(o=>le(br,{item:o},o.id))})]})}var hr={default:"bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900",success:"bg-green-600 text-white",error:"bg-red-600 text-white",info:"bg-blue-600 text-white"};function br({item:e}){let[t,r]=De(!1);return mr(()=>{let a=requestAnimationFrame(()=>r(!0));return()=>cancelAnimationFrame(a)},[]),le("div",{role:"status",className:`pointer-events-auto w-full max-w-[390px] px-4 py-3 rounded-2xl text-sm font-semibold shadow-xl text-center transition-all duration-300 ${hr[e.variant]} ${t?"opacity-100 translate-y-0":"opacity-0 translate-y-3"}`,children:e.message})}function wr(){let e=ur(Fe);if(!e)throw new Error("useToast must be used inside <ToastProvider>");return e}import{useState as xr,useCallback as je}from"react";function kr(e,t){let[r,a]=xr(()=>{if(typeof window>"u")return t;try{let i=window.localStorage.getItem(e);return i!==null?JSON.parse(i):t}catch{return t}}),o=je(i=>{a(s=>{let c=typeof i=="function"?i(s):i;try{window.localStorage.setItem(e,JSON.stringify(c))}catch{}return c})},[e]),n=je(()=>{try{window.localStorage.removeItem(e)}catch{}a(t)},[e]);return[r,o,n]}import{useState as yr,useEffect as zr}from"react";function Sr(e,t){let[r,a]=yr(e);return zr(()=>{let o=setTimeout(()=>a(e),t);return()=>clearTimeout(o)},[e,t]),r}import{useState as de,useCallback as We,useRef as Ue}from"react";function Tr(e,t={}){let[r,a]=de(!1),[o,n]=de(null),[i,s]=de(void 0),c=Ue(e),l=Ue(t);c.current=e,l.current=t;let p=We(async g=>{a(!0),n(null);try{let h=await c.current(g);s(h),l.current.onSuccess?.(h)}catch(h){let v=h instanceof Error?h:new Error(String(h));n(v),l.current.onError?.(v)}finally{a(!1)}},[]),d=We(()=>{n(null),s(void 0)},[]);return{submit:p,loading:r,error:o,data:i,reset:d}}import{useState as Nr,useCallback as Pr,useRef as Er}from"react";function Cr(e={}){let{threshold:t=0,rootMargin:r="0px",once:a=!1}=e,[o,n]=Nr(!1),i=Er(null);return{ref:Pr(c=>{i.current?.disconnect(),i.current=null,c&&(i.current=new IntersectionObserver(([l])=>{n(l.isIntersecting),l.isIntersecting&&a&&i.current?.disconnect()},{threshold:t,rootMargin:r}),i.current.observe(c))},[t,r,a]),inView:o}}import{jsx as Ir}from"react/jsx-runtime";var Rr={sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl",full:"rounded-full"};function Mr({className:e="",rounded:t="md"}){return Ir("div",{className:`animate-pulse bg-zinc-200 dark:bg-zinc-800 ${Rr[t]} ${e}`,"aria-hidden":"true"})}import{useEffect as pe,useRef as Br,useState as Ve}from"react";import{createPortal as Ar}from"react-dom";import{jsx as q,jsxs as ue}from"react/jsx-runtime";var $r={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg"};function Lr({open:e,onClose:t,title:r,size:a="sm",children:o,persistent:n=!1,className:i=""}){let[s,c]=Ve(!1),[l,p]=Ve(!1),d=Br(null);return pe(()=>{if(e)c(!0),requestAnimationFrame(()=>requestAnimationFrame(()=>p(!0)));else{p(!1);let g=setTimeout(()=>c(!1),200);return()=>clearTimeout(g)}},[e]),pe(()=>{if(!e||n)return;let g=h=>{h.key==="Escape"&&t()};return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[e,t,n]),pe(()=>{if(e){let g=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=g}}},[e]),!s||typeof document>"u"?null:Ar(ue("div",{role:"dialog","aria-modal":"true","aria-labelledby":r?"dialog-title":void 0,className:"fixed inset-0 z-[200] flex items-end sm:items-center justify-center p-4",children:[q("div",{className:`absolute inset-0 bg-black/50 transition-opacity duration-200 ${l?"opacity-100":"opacity-0"}`,onClick:n?void 0:t}),ue("div",{ref:d,className:`relative w-full ${$r[a]} bg-white dark:bg-zinc-900 rounded-3xl shadow-2xl p-6 transition-all duration-200 ${l?"opacity-100 translate-y-0 scale-100":"opacity-0 translate-y-4 scale-95"} ${i}`,children:[!n&&q("button",{onClick:t,className:"absolute top-4 right-4 p-1.5 rounded-full text-zinc-400 hover:text-zinc-700 dark:hover:text-zinc-200 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors","aria-label":"\uB2EB\uAE30",children:ue("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[q("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),q("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})}),r&&q("h2",{id:"dialog-title",className:"text-lg font-bold text-zinc-900 dark:text-white mb-4 pr-6",children:r}),o]})]}),document.body)}import Gr from"react";import{useState as _e,useEffect as Or}from"react";function ge(){let[e,t]=_e(null),[r,a]=_e(!1);Or(()=>{if(window.matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0){a(!0);return}let s=l=>{l.preventDefault(),t(l)},c=()=>a(!0);return window.addEventListener("beforeinstallprompt",s),window.addEventListener("appinstalled",c),()=>{window.removeEventListener("beforeinstallprompt",s),window.removeEventListener("appinstalled",c)}},[]);let o=r?"installed":e?"android-ready":Dr()?"ios-safari":"unsupported";async function n(){if(!e)return;await e.prompt();let{outcome:i}=await e.userChoice;i==="accepted"&&a(!0),t(null)}return{state:o,install:n}}function Dr(){if(typeof navigator>"u")return!1;let e=navigator.userAgent;return/iphone|ipad|ipod/i.test(e)&&!/CriOS|FxiOS|OPiOS|EdgiOS/i.test(e)}import{useState as Fr}from"react";import{Fragment as G,jsx as m,jsxs as z}from"react/jsx-runtime";function jr({appName:e="\uC571",iconSrc:t,label:r="\uC571\uC73C\uB85C \uC124\uCE58",installedLabel:a,className:o}){let{state:n,install:i}=ge(),[s,c]=Fr(!1);if(n==="installed")return a?z("div",{className:`flex items-center gap-2 text-sm text-zinc-400 ${o??""}`,children:[m(Ur,{}),m("span",{children:a})]}):null;if(n==="unsupported")return null;function l(){n==="android-ready"?i():n==="ios-safari"&&c(!0)}return z(G,{children:[z("button",{onClick:l,className:`flex items-center gap-2 px-4 py-2.5 rounded-xl bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-sm font-semibold transition-all active:scale-95 ${o??""}`,children:[m(qe,{}),m("span",{children:r}),n==="ios-safari"&&m(Wr,{})]}),n==="ios-safari"&&m(He,{open:s,onClose:()=>c(!1),appName:e,iconSrc:t})]})}function He({open:e,onClose:t,appName:r,iconSrc:a}){return e?z(G,{children:[m("div",{className:"fixed inset-0 z-[9998] bg-black/40 backdrop-blur-sm",onClick:t}),z("div",{className:"fixed bottom-0 left-1/2 -translate-x-1/2 z-[9999] w-full max-w-[430px] rounded-t-2xl bg-white dark:bg-zinc-900 shadow-2xl",children:[m("div",{className:"flex justify-center pt-3 pb-1",children:m("div",{className:"w-9 h-1 rounded-full bg-zinc-200 dark:bg-zinc-700"})}),z("div",{className:"px-5 pb-8 pt-3",children:[z("div",{className:"flex items-center gap-3 mb-5",children:[a?m("img",{src:a,alt:r,className:"w-12 h-12 rounded-xl shadow"}):m("div",{className:"w-12 h-12 rounded-xl bg-zinc-100 dark:bg-zinc-800 flex items-center justify-center",children:m(qe,{size:22,className:"text-zinc-400"})}),z("div",{children:[z("p",{className:"font-bold text-zinc-900 dark:text-white text-base",children:[r," \uC124\uCE58\uD558\uAE30"]}),m("p",{className:"text-xs text-zinc-400 mt-0.5",children:"\uD648 \uD654\uBA74\uC5D0 \uCD94\uAC00\uD558\uBA74 \uC571\uCC98\uB7FC \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694"})]})]}),m("div",{className:"space-y-3",children:[{icon:m(Vr,{}),text:z(G,{children:["\uD558\uB2E8 \uD234\uBC14\uC758 ",m("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uACF5\uC720"})," \uBC84\uD2BC\uC744 \uD0ED\uD558\uC138\uC694"]})},{icon:m(_r,{}),text:z(G,{children:["\uC2A4\uD06C\uB864\uD574\uC11C"," ",m("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uD648 \uD654\uBA74\uC5D0 \uCD94\uAC00"}),"\uB97C \uD0ED\uD558\uC138\uC694"]})},{icon:m(Hr,{}),text:z(G,{children:["\uC6B0\uCE21 \uC0C1\uB2E8 ",m("strong",{className:"text-zinc-900 dark:text-zinc-100",children:"\uCD94\uAC00"}),"\uB97C \uD0ED\uD558\uBA74 \uC644\uB8CC!"]})}].map((n,i)=>z("div",{className:"flex items-start gap-3",children:[m("div",{className:"w-8 h-8 rounded-xl bg-zinc-100 dark:bg-zinc-800 flex items-center justify-center flex-shrink-0 text-zinc-500 dark:text-zinc-400",children:n.icon}),m("div",{className:"flex-1 pt-1",children:z("p",{className:"text-sm text-zinc-600 dark:text-zinc-300 leading-relaxed",children:[m("span",{className:"inline-flex items-center justify-center w-4 h-4 rounded-full bg-zinc-200 dark:bg-zinc-700 text-[9px] font-bold text-zinc-500 dark:text-zinc-400 mr-1.5 flex-shrink-0",children:i+1}),n.text]})})]},i))}),z("div",{className:"mt-5 flex items-center gap-2 px-3 py-2.5 rounded-xl bg-zinc-50 dark:bg-zinc-800",children:[m(qr,{}),m("p",{className:"text-xs text-zinc-400",children:"Safari \uBE0C\uB77C\uC6B0\uC800\uC5D0\uC11C\uB9CC \uD648 \uD654\uBA74 \uCD94\uAC00\uAC00 \uAC00\uB2A5\uD574\uC694"})]}),m("button",{onClick:t,className:"mt-3 w-full py-3 rounded-xl text-sm font-semibold text-zinc-500 dark:text-zinc-400 bg-zinc-100 dark:bg-zinc-800 hover:bg-zinc-200 dark:hover:bg-zinc-700 transition-colors",children:"\uB2EB\uAE30"})]})]})]}):null}function qe({size:e=16,className:t=""}){return z("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:t,children:[m("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),m("polyline",{points:"7 10 12 15 17 10"}),m("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]})}function Wr(){return m("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:"opacity-70",children:m("polyline",{points:"9 18 15 12 9 6"})})}function Ur(){return m("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:m("polyline",{points:"20 6 9 17 4 12"})})}function Vr(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[m("path",{d:"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"}),m("polyline",{points:"16 6 12 2 8 6"}),m("line",{x1:"12",y1:"2",x2:"12",y2:"15"})]})}function _r(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[m("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),m("line",{x1:"12",y1:"8",x2:"12",y2:"16"}),m("line",{x1:"8",y1:"12",x2:"16",y2:"12"})]})}function Hr(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[m("polyline",{points:"9 11 12 14 22 4"}),m("path",{d:"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"})]})}function qr(){return z("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-zinc-400 flex-shrink-0",children:[m("circle",{cx:"12",cy:"12",r:"10"}),m("polygon",{points:"16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"})]})}function sn(){return Gr.createElement("style",{"data-m1kapp-ui":"",dangerouslySetInnerHTML:{__html:j}})}var cn={width:"device-width",initialScale:1,maximumScale:1,userScalable:!1,viewportFit:"cover"};function Ge(e,t={}){let{size:r=192,bg:a="#000000",color:o="#ffffff",radius:n=.25,fontSize:i=.375}=t,s=Math.round(r*n),c=Math.round(r*i),l=a.replace("#","%23"),p=o.replace("#","%23");return`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 ${r} ${r}'><rect width='${r}' height='${r}' rx='${s}' fill='${l}'/><text x='50%25' y='50%25' dominant-baseline='central' text-anchor='middle' font-family='system-ui,sans-serif' font-size='${c}' font-weight='900' fill='${p}'>${e}</text></svg>`}function ln(e){let{name:t,shortName:r=t,description:a,startUrl:o="/",backgroundColor:n="#ffffff",themeColor:i="#000000",icon:s}=e,c=s?[{src:Ge(s.text,{size:192,bg:s.bg??i,color:s.color,radius:s.radius}),sizes:"192x192",type:"image/svg+xml"},{src:Ge(s.text,{size:512,bg:s.bg??i,color:s.color,radius:s.radius}),sizes:"512x512",type:"image/svg+xml"}]:[],l={name:t,short_name:r,...a&&{description:a},start_url:o,display:"standalone",orientation:"portrait",background_color:n,theme_color:i,icons:c};return()=>l}var D=class extends Error{constructor(r,a,o,n,i){super(`${r} ${a}${n?` [${i??"GET"} ${n}]`:""}`);this.status=r;this.statusText=a;this.body=o;this.url=n;this.method=i;this.name="ApiError"}};async function Y(e){return(e.headers.get("content-type")??"").includes("application/json")?e.json():e.text()}function Yr(e,t={}){let r=e.replace(/\/$/,"");async function a(o,n,i,s={}){let c=n.startsWith("http")?n:`${r}/${n.replace(/^\//,"")}`,l={...t.headers,...s.headers};i!==void 0&&s.contentType!==null&&(l["Content-Type"]=s.contentType??"application/json");let p={method:o,headers:l,signal:s.signal};i!==void 0&&(p.body=i instanceof FormData?i:JSON.stringify(i));let d=new Request(c,p);t.onRequest&&(d=t.onRequest(d)??d);let g=await fetch(d);if(!g.ok){let h=await Y(g).catch(()=>null),v=new D(g.status,g.statusText,h,c,o);throw t.onError?.(v),v}if(!(g.status===204||g.headers.get("content-length")==="0"))return Y(g)}return{get:(o,n)=>a("GET",o,void 0,n),post:(o,n,i)=>a("POST",o,n,i),put:(o,n,i)=>a("PUT",o,n,i),patch:(o,n,i)=>a("PATCH",o,n,i),delete:(o,n)=>a("DELETE",o,void 0,n)}}import{useState as me,useEffect as Ye,useCallback as Ke,useRef as X}from"react";var Kr=500,$=new Map,fe=new Map;function Jr(e){e?$.delete(e):$.clear()}function Zr(e,t){$.size>=Kr&&$.delete($.keys().next().value),$.set(e,t)}async function Xr(e){let t=await fetch(e);if(!t.ok){let r=await Y(t).catch(()=>null);throw new D(t.status,t.statusText,r,e,"GET")}return Y(t)}async function Qr(e,t,r){let a;for(let o=0;o<=t;o++)try{return await e()}catch(n){if(a=n,n instanceof D)throw n;o<t&&await new Promise(i=>setTimeout(i,r*2**o))}throw a}function eo(e,t={}){let{enabled:r=!0,staleTime:a=0,retry:o=2,retryDelay:n=1e3,revalidateOnFocus:i=!0,fetcher:s=Xr,onSuccess:c,onError:l}=t,[p,d]=me(()=>{if(!e||a===0)return;let f=$.get(e);if(f&&Date.now()-f.ts<a)return f.data}),[g,h]=me(()=>{if(!e||!r)return"idle";if(a>0){let f=$.get(e);if(f&&Date.now()-f.ts<a)return"success"}return"loading"}),[v,T]=me(void 0),k=X(!0),P=X(s),N=X(c),M=X(l);P.current=s,N.current=c,M.current=l;let C=Ke(async(f=!1)=>{if(!e||!r){h(b=>b==="idle"?b:"idle");return}if(!f&&a>0){let b=$.get(e);if(b&&Date.now()-b.ts<a){d(b.data),h("success");return}}h("loading"),T(void 0);try{let b=fe.get(e);b||(b=Qr(()=>P.current(e),o,n),fe.set(e,b),b.finally(()=>fe.delete(e)));let y=await b;if(!k.current)return;Zr(e,{data:y,ts:Date.now()}),d(y),h("success"),N.current?.(y)}catch(b){if(!k.current)return;let y=b;T(y),h("error"),M.current?.(y)}},[e,r,a,o,n]),E=Ke(()=>C(!0),[C]);return Ye(()=>(k.current=!0,C(),()=>{k.current=!1}),[C]),Ye(()=>{if(!i)return;let f=()=>{document.visibilityState==="visible"&&C()};return document.addEventListener("visibilitychange",f),window.addEventListener("focus",f),()=>{document.removeEventListener("visibilitychange",f),window.removeEventListener("focus",f)}},[C,i]),{data:p,loading:g==="loading",error:v,status:g,refetch:E}}import{useState as Q,useEffect as ee,useRef as U,useCallback as he}from"react";function to(e,t={}){let{interval:r=5e3,enabled:a=!0,pauseOnHidden:o=!0,onSuccess:n,onError:i}=t,[s,c]=Q(void 0),[l,p]=Q(!1),[d,g]=Q(void 0),[h,v]=Q(a),T=U(!0),k=U(null),P=U(r),N=U(e),M=U(n),C=U(i);P.current=r,N.current=e,M.current=n,C.current=i,ee(()=>(T.current=!0,()=>{T.current=!1}),[]);let E=he(async()=>{if(T.current){p(!0);try{let y=await N.current();if(!T.current)return;c(y),g(void 0),M.current?.(y)}catch(y){if(!T.current)return;let L=y;g(L),C.current?.(L)}finally{T.current&&p(!1)}}},[]),f=he(()=>{k.current&&(clearInterval(k.current),k.current=null)},[]),b=he(()=>{f(),k.current=setInterval(E,P.current)},[E,f]);return ee(()=>{if(!h){f();return}return E(),b(),f},[h,E,b,f]),ee(()=>{if(h)return f(),k.current=setInterval(E,P.current),f},[r]),ee(()=>{if(!o)return;let y=()=>{h&&(document.visibilityState==="hidden"?f():(E(),b()))};return document.addEventListener("visibilitychange",y),()=>document.removeEventListener("visibilitychange",y)},[h,o,E,b,f]),{data:s,loading:l,error:d,isRunning:h,stop:()=>v(!1),start:()=>v(!0),refetch:E}}import{clsx as ro}from"clsx";import{twMerge as oo}from"tailwind-merge";function Pn(e){let t=new Date(e),r=Date.now()-t.getTime(),a=Math.floor(r/1e3);return a<60?"\uBC29\uAE08 \uC804":a<3600?`${Math.floor(a/60)}\uBD84 \uC804`:a<86400?`${Math.floor(a/3600)}\uC2DC\uAC04 \uC804`:a<86400*2?"\uC5B4\uC81C":a<86400*7?`${Math.floor(a/86400)}\uC77C \uC804`:a<86400*30?`${Math.floor(a/(86400*7))}\uC8FC \uC804`:t.toLocaleDateString("ko-KR",{year:"numeric",month:"long",day:"numeric"})}function En(e){let t=Math.abs(e),r=e<0?"-":"";return t>=1e8?`${r}${(t/1e8).toFixed(1).replace(/\.0$/,"")}\uC5B5`:t>=1e4?`${r}${(t/1e4).toFixed(1).replace(/\.0$/,"")}\uB9CC`:t>=1e3?`${r}${(t/1e3).toFixed(1).replace(/\.0$/,"")}\uCC9C`:e.toLocaleString("ko-KR")}function Cn(e,t="KRW",r="ko-KR"){return new Intl.NumberFormat(r,{style:"currency",currency:t,maximumFractionDigits:t==="KRW"?0:2}).format(e)}function In(...e){return oo(ro(e))}export{D as ApiError,rt as AppShell,at as AppShellContent,ot as AppShellHeader,tr as Avatar,ar as Badge,tt as Button,Lr as Dialog,pt as Divider,Ft as EmojiButton,jt as EmojiPicker,ft as EmptyState,Xt as GrassMap,He as IOSInstallSheet,sn as KitStyles,jr as PWAInstallButton,lt as Section,dt as SectionHeader,cr as ShareButton,Mr as Skeleton,gt as StatChip,Tt as THEME_SCRIPT,st as Tab,it as TabBar,Rt as ThemeButton,Mt as ThemeDialog,fr as ToastProvider,Vt as Tooltip,At as Typewriter,xt as Watermark,Jr as clearFetchCache,In as cn,ne as colors,Yr as createApiClient,ln as createManifest,Bt as fontFamily,It as fonts,En as formatNumber,Cn as formatPrice,cn as mobileViewport,Pn as relativeTime,Ge as svgIcon,Sr as useDebounce,eo as useFetch,Tr as useFormSubmit,Cr as useInView,kr as useLocalStorage,ge as usePWAInstall,to as usePolling,Oe as useShare,wr as useToast};
package/dist/pwa.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { MetadataRoute, Viewport } from 'next';
2
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
4
 
@@ -44,6 +45,24 @@ interface IOSInstallSheetProps {
44
45
  */
45
46
  declare function IOSInstallSheet({ open, onClose, appName, iconSrc }: IOSInstallSheetProps): react_jsx_runtime.JSX.Element | null;
46
47
 
48
+ /**
49
+ * Drop into <head> in your root layout to pre-load kit styles and
50
+ * prevent the JS injection from re-running (eliminates FOUC).
51
+ *
52
+ * Usage:
53
+ * // app/layout.tsx
54
+ * import { KitStyles } from "@m1kapp/kit/pwa";
55
+ * <head>
56
+ * <KitStyles />
57
+ * </head>
58
+ */
59
+ declare function KitStyles(): React.DetailedReactHTMLElement<{
60
+ "data-m1kapp-ui": string;
61
+ dangerouslySetInnerHTML: {
62
+ __html: string;
63
+ };
64
+ }, HTMLElement>;
65
+
47
66
  /**
48
67
  * Standard mobile viewport config for Next.js.
49
68
  * - Disables pinch zoom via maximumScale (Android, older iOS)
@@ -70,12 +89,12 @@ declare function svgIcon(text: string, options?: {
70
89
  fontSize?: number;
71
90
  }): string;
72
91
  /**
73
- * Generates a Next.js web app manifest (app/manifest.ts).
92
+ * Generates a Next.js web app manifest function (app/manifest.ts).
74
93
  * Icons are auto-generated as inline SVGs — no image files needed.
75
94
  *
76
95
  * Usage:
77
96
  * // app/manifest.ts
78
- * import { createManifest } from "@m1kapp/kit";
97
+ * import { createManifest } from "@m1kapp/kit/pwa";
79
98
  * export default createManifest({
80
99
  * name: "m1k",
81
100
  * shortName: "m1k",
@@ -97,6 +116,6 @@ declare function createManifest(options: {
97
116
  color?: string;
98
117
  radius?: number;
99
118
  };
100
- }): MetadataRoute.Manifest;
119
+ }): () => MetadataRoute.Manifest;
101
120
 
102
- export { IOSInstallSheet, PWAInstallButton, type PWAInstallState, type UsePWAInstallReturn, createManifest, mobileViewport, svgIcon, usePWAInstall };
121
+ export { IOSInstallSheet, KitStyles, PWAInstallButton, type PWAInstallState, type UsePWAInstallReturn, createManifest, mobileViewport, svgIcon, usePWAInstall };
package/dist/pwa.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { MetadataRoute, Viewport } from 'next';
2
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
4
 
@@ -44,6 +45,24 @@ interface IOSInstallSheetProps {
44
45
  */
45
46
  declare function IOSInstallSheet({ open, onClose, appName, iconSrc }: IOSInstallSheetProps): react_jsx_runtime.JSX.Element | null;
46
47
 
48
+ /**
49
+ * Drop into <head> in your root layout to pre-load kit styles and
50
+ * prevent the JS injection from re-running (eliminates FOUC).
51
+ *
52
+ * Usage:
53
+ * // app/layout.tsx
54
+ * import { KitStyles } from "@m1kapp/kit/pwa";
55
+ * <head>
56
+ * <KitStyles />
57
+ * </head>
58
+ */
59
+ declare function KitStyles(): React.DetailedReactHTMLElement<{
60
+ "data-m1kapp-ui": string;
61
+ dangerouslySetInnerHTML: {
62
+ __html: string;
63
+ };
64
+ }, HTMLElement>;
65
+
47
66
  /**
48
67
  * Standard mobile viewport config for Next.js.
49
68
  * - Disables pinch zoom via maximumScale (Android, older iOS)
@@ -70,12 +89,12 @@ declare function svgIcon(text: string, options?: {
70
89
  fontSize?: number;
71
90
  }): string;
72
91
  /**
73
- * Generates a Next.js web app manifest (app/manifest.ts).
92
+ * Generates a Next.js web app manifest function (app/manifest.ts).
74
93
  * Icons are auto-generated as inline SVGs — no image files needed.
75
94
  *
76
95
  * Usage:
77
96
  * // app/manifest.ts
78
- * import { createManifest } from "@m1kapp/kit";
97
+ * import { createManifest } from "@m1kapp/kit/pwa";
79
98
  * export default createManifest({
80
99
  * name: "m1k",
81
100
  * shortName: "m1k",
@@ -97,6 +116,6 @@ declare function createManifest(options: {
97
116
  color?: string;
98
117
  radius?: number;
99
118
  };
100
- }): MetadataRoute.Manifest;
119
+ }): () => MetadataRoute.Manifest;
101
120
 
102
- export { IOSInstallSheet, PWAInstallButton, type PWAInstallState, type UsePWAInstallReturn, createManifest, mobileViewport, svgIcon, usePWAInstall };
121
+ export { IOSInstallSheet, KitStyles, PWAInstallButton, type PWAInstallState, type UsePWAInstallReturn, createManifest, mobileViewport, svgIcon, usePWAInstall };