@layer theme{@theme default{--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --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-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --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-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --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-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --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-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-mauve-50: oklch(98.5% 0 0); --color-mauve-100: oklch(96% .003 325.6); --color-mauve-200: oklch(92.2% .005 325.62); --color-mauve-300: oklch(86.5% .012 325.68); --color-mauve-400: oklch(71.1% .019 323.02); --color-mauve-500: oklch(54.2% .034 322.5); --color-mauve-600: oklch(43.5% .029 321.78); --color-mauve-700: oklch(36.4% .029 323.89); --color-mauve-800: oklch(26.3% .024 320.12); --color-mauve-900: oklch(21.2% .019 322.12); --color-mauve-950: oklch(14.5% .008 326); --color-olive-50: oklch(98.8% .003 106.5); --color-olive-100: oklch(96.6% .005 106.5); --color-olive-200: oklch(93% .007 106.5); --color-olive-300: oklch(88% .011 106.6); --color-olive-400: oklch(73.7% .021 106.9); --color-olive-500: oklch(58% .031 107.3); --color-olive-600: oklch(46.6% .025 107.3); --color-olive-700: oklch(39.4% .023 107.4); --color-olive-800: oklch(28.6% .016 107.4); --color-olive-900: oklch(22.8% .013 107.4); --color-olive-950: oklch(15.3% .006 107.1); --color-mist-50: oklch(98.7% .002 197.1); --color-mist-100: oklch(96.3% .002 197.1); --color-mist-200: oklch(92.5% .005 214.3); --color-mist-300: oklch(87.2% .007 219.6); --color-mist-400: oklch(72.3% .014 214.4); --color-mist-500: oklch(56% .021 213.5); --color-mist-600: oklch(45% .017 213.2); --color-mist-700: oklch(37.8% .015 216); --color-mist-800: oklch(27.5% .011 216.9); --color-mist-900: oklch(21.8% .008 223.9); --color-mist-950: oklch(14.8% .004 228.8); --color-taupe-50: oklch(98.6% .002 67.8); --color-taupe-100: oklch(96% .002 17.2); --color-taupe-200: oklch(92.2% .005 34.3); --color-taupe-300: oklch(86.8% .007 39.5); --color-taupe-400: oklch(71.4% .014 41.2); --color-taupe-500: oklch(54.7% .021 43.1); --color-taupe-600: oklch(43.8% .017 39.3); --color-taupe-700: oklch(36.7% .016 35.7); --color-taupe-800: oklch(26.8% .011 36.5); --color-taupe-900: oklch(21.4% .009 43.1); --color-taupe-950: oklch(14.7% .004 49.3); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --text-xs: .75rem; --text-xs--line-height: calc(1 / .75); --text-sm: .875rem; --text-sm--line-height: calc(1.25 / .875); --text-base: 1rem; --text-base--line-height: calc(1.5 / 1); --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: calc(2.25 / 1.875); --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px #0000000d; --shadow-xs: 0 1px 2px 0 #0000000d; --shadow-sm: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a; --shadow-md: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a; --shadow-lg: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a; --shadow-xl: 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a; --shadow-2xl: 0 25px 50px -12px #00000040; --inset-shadow-2xs: inset 0 1px #0000000d; --inset-shadow-xs: inset 0 1px 1px #0000000d; --inset-shadow-sm: inset 0 2px 4px #0000000d; --drop-shadow-xs: 0 1px 1px #0000000d; --drop-shadow-sm: 0 1px 2px #00000026; --drop-shadow-md: 0 3px 3px #0000001f; --drop-shadow-lg: 0 4px 4px #00000026; --drop-shadow-xl: 0 9px 7px #0000001a; --drop-shadow-2xl: 0 25px 25px #00000026; --text-shadow-2xs: 0px 1px 0px #00000026; --text-shadow-xs: 0px 1px 1px #0003; --text-shadow-sm: 0px 1px 0px #00000013, 0px 1px 1px #00000013, 0px 2px 2px #00000013; --text-shadow-md: 0px 1px 1px #0000001a, 0px 1px 2px #0000001a, 0px 2px 4px #0000001a; --text-shadow-lg: 0px 1px 2px #0000001a, 0px 3px 2px #0000001a, 0px 4px 8px #0000001a; --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme(--font-sans--font-feature-settings, initial); --default-font-variation-settings: --theme(--font-sans--font-variation-settings, initial); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme(--font-mono--font-feature-settings, initial); --default-mono-font-variation-settings: --theme(--font-mono--font-variation-settings, initial);}@theme default inline reference{--blur: 8px; --shadow: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a; --shadow-inner: inset 0 2px 4px 0 #0000000d; --drop-shadow: 0 1px 2px #0000001a, 0 1px 1px #0000000f; --radius: .25rem; --max-width-prose: 65ch;}}@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:--theme(--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:--theme(--default-font-feature-settings, normal);font-variation-settings:--theme(--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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:--theme(--default-mono-font-feature-settings, normal);font-variation-settings:--theme(--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:color-mix(in oklab, currentcolor 50%, transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{@tailwind utilities;}.page-shell{justify-content:center;grid-template-columns:170px minmax(0,980px) 210px!important;gap:34px!important;max-width:1600px!important}.score{overflow-x:auto}.score pre{min-width:max-content;white-space:pre!important}@media (width<=1080px){.page-shell{grid-template-columns:170px minmax(0,1fr)!important}}@media (width<=760px){.page-shell{display:block!important}}.admin-page{background:#f7f5ef;min-height:100vh}.admin-topbar{border-bottom:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;height:72px;padding:0 38px;display:flex}.admin-user{color:var(--muted);align-items:center;gap:14px;font-size:13px;display:flex}.admin-user a{color:var(--accent);font-weight:700;text-decoration:none}.admin-shell{max-width:1180px;margin:auto;padding:48px 30px 90px}.admin-heading{justify-content:space-between;align-items:flex-end;margin-bottom:30px;display:flex}.admin-heading h1{margin:6px 0;font-family:Georgia,Songti SC,serif;font-size:30px}.admin-heading>div>p:last-child{color:var(--muted);margin:0}.admin-primary{background:var(--green);color:#fff;border-radius:10px;padding:11px 16px;font-size:13px;font-weight:700;text-decoration:none}.admin-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.admin-stats button{border:1px solid var(--line);background:var(--card);text-align:left;color:var(--ink);border-radius:13px;padding:18px}.admin-stats button.active{background:#eef3ef;border-color:#89a99c}.admin-stats b{font:24px Georgia,serif;display:block}.admin-stats span{color:var(--muted);font-size:12px}.admin-toolbar{gap:10px;margin:22px 0 14px;display:flex}.admin-toolbar input{border:1px solid var(--line);background:var(--card);font:inherit;border-radius:10px;flex:1;padding:12px 14px}.admin-toolbar button{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:0 18px}.admin-error{color:#a43c28;background:#fff0eb;border-radius:9px;padding:11px 14px;font-size:13px}.admin-table-wrap{border:1px solid var(--line);background:var(--card);border-radius:14px;overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:900px}.admin-table th{text-align:left;color:#999;border-bottom:1px solid var(--line);padding:13px 15px;font-size:12px}.admin-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:15px;font-size:13px}.admin-table td>a{color:var(--ink);text-decoration:none}.admin-table td b,.admin-table td small{display:block}.admin-table td small{color:var(--muted);margin-top:4px}.admin-status{border-radius:20px;padding:5px 8px;font-size:12px;display:inline-block}.admin-status.published{color:#28633a;background:#e7f2e9}.admin-status.pending{color:#8d641d;background:#fff1d8}.admin-status.archived{color:#666;background:#eee}.admin-actions{gap:6px;display:flex}.admin-actions button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 8px;font-size:12px}.admin-actions button.danger{color:#a43c28}.admin-actions button:disabled{opacity:.5}.admin-empty{color:var(--muted);text-align:center!important;padding:50px!important}@media (width<=700px){.admin-topbar{padding:0 16px}.admin-shell{padding:30px 14px 70px}.admin-heading{align-items:flex-start;gap:18px}.admin-heading h1{font-size:30px}.admin-primary{white-space:nowrap}.admin-stats{grid-template-columns:repeat(2,1fr)}}.practice-bar{align-items:center;gap:14px;margin:8px 2px 20px;display:flex}.practice-bar>button{border:1px solid var(--line);background:var(--card);color:var(--green);border-radius:9px;padding:8px 12px;font-size:12px;font-weight:700}.practice-bar>button.playing{background:var(--green);color:#fff}.practice-bar label{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.practice-bar input{width:76px;accent-color:var(--accent)}.practice-bar label b{color:var(--accent)}.practice-bar>span{color:#789383;margin-left:auto;font-size:12px}.tool-actions button.selected{background:var(--ink);color:#fff}.score.high-contrast{color:#000;background:#fff;border-color:#aaa}.score.high-contrast .chords{color:#c32900}.score.high-contrast .lyrics{color:#000}@media print{.topbar,.side-nav,.right-rail,.toolbox,.practice-bar,.memory-note,.breadcrumbs{display:none!important}.page-shell{padding:0!important;display:block!important}.song{max-width:none}.song-head{margin-bottom:20px}.score{box-shadow:none!important;border:0!important;padding:0!important}.score-row{break-inside:avoid}body{background:#fff}}.recent-strip{border:1px solid var(--line);background:#fffef9a6;border-radius:12px;align-items:center;gap:8px;margin:-24px 0 38px;padding:10px 12px;display:flex;overflow:auto}.recent-strip>span{color:var(--accent);white-space:nowrap;margin-right:4px;font-size:12px;font-weight:800}.recent-strip button{white-space:nowrap;background:#efede6;border:0;border-radius:8px;align-items:center;gap:7px;padding:7px 11px;display:flex}.recent-strip b{font-size:12px}.recent-strip small{color:var(--muted);font-size:12px}.side-nav>a small{float:right;color:#8a877e;text-align:center;background:#ebe7dd;border-radius:10px;min-width:18px;padding:1px 5px}.favorite.saved{color:#fff;background:var(--accent);border-color:var(--accent)}.favorite.saved:hover{background:#d9552a;border-color:#d9552a}.back-link{color:var(--green);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.library{min-height:calc(100vh - 72px)}.library-hero{text-align:center;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f4eee2,#f8f6f0 52%,#e8eee8);padding:76px 36px 62px}.library-hero h1{letter-spacing:-.035em;margin:15px 0 18px;font-family:Georgia,Songti SC,serif;font-size:clamp(32px,4vw,48px);line-height:1.08}.library-hero h1 i{color:var(--accent);font-style:normal}.library-hero>p:not(.eyebrow){color:var(--muted);font-size:15px}.quick-tags{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.quick-tags span{color:#999;font-size:12px}.quick-tags button{color:#777;background:0 0;border:1px solid #ded8ca;border-radius:20px;padding:6px 10px;font-size:12px}.library-body{max-width:1160px;margin:auto;padding:54px 30px 90px}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:22px;display:flex}.section-title span{letter-spacing:.14em;color:var(--accent);font-size:12px;font-weight:800}.section-title h2{margin:5px 0 0;font-family:Georgia,Songti SC,serif;font-size:22px}.section-title>button{color:var(--green);background:0 0;border:0;font-size:13px;font-weight:700}.song-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.song-card{text-align:left;border:1px solid var(--line);background:var(--card);border-radius:15px;align-items:center;gap:14px;min-width:0;padding:14px;transition:all .2s;display:flex;position:relative}.song-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #28261f14}.rank{color:#aaa;font:12px monospace;position:absolute;top:8px;left:9px}.cover{color:#fff;border-radius:10px;flex:none;place-items:center;width:66px;height:74px;font-size:23px;display:grid}.cover-0,.cover-4{background:#d9693f}.cover-1,.cover-5{background:#345e50}.cover-2{background:#8e7254}.cover-3{background:#596675}.card-copy{min-width:0}.card-copy h3{white-space:nowrap;text-overflow:ellipsis;margin:0 0 5px;font-family:Georgia,Songti SC,serif;font-size:16px;overflow:hidden}.card-copy p{color:var(--muted);margin:0 0 9px;font-size:13px}.card-copy small{color:#aaa;font-size:12px}.go{color:#aaa;margin-left:auto}.library-columns{grid-template-columns:1fr;gap:50px;margin-top:58px;display:grid}.genre-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 22px;display:flex}.genre-filter-bar button{border:1px solid var(--line);background:var(--card);color:#555;cursor:pointer;border-radius:20px;padding:6px 14px;font-size:14px}.genre-filter-bar button.active{background:var(--green);color:#fff;border-color:var(--green)}.sort-tabs{gap:6px;margin:0 0 22px;display:flex}.sort-tabs button{border:1px solid var(--line);background:var(--card);color:#555;cursor:pointer;border-radius:8px;padding:5px 14px;font-size:14px}.sort-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.pagination-info{color:var(--muted);font-size:13px}.pagination{justify-content:center;align-items:center;gap:16px;margin:28px 0 8px;display:flex}.pagination button{border:1px solid var(--line);background:var(--card);color:var(--green);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:14px}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:var(--muted);font-size:14px}.song-list{border-top:1px solid var(--line);max-width:860px;margin:0 auto}.song-row{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;align-items:center;gap:14px;padding:8px 10px;display:flex}.song-row:hover{background:#f6f3ec}.row-rank{color:#aaa;flex:none;width:28px;font:12px monospace}.row-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-copy b{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.row-copy small{color:var(--muted);font-size:12px}.song-row em{color:#a07a48;white-space:nowrap;background:#f1eadc;border-radius:5px;margin-left:auto;padding:3px 7px;font-size:12px;font-style:normal}.section-title.compact{margin-bottom:16px}.section-title.compact h2{font-size:24px}.new-list{border-top:1px solid var(--line)}.new-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:13px 5px;display:flex}.new-list i{width:36px;height:36px;color:var(--green);background:#e7ece7;border-radius:9px;place-items:center;font-style:normal;display:grid}.new-list span{flex-direction:column;gap:3px;display:flex}.new-list b{font-size:14px}.new-list small{color:var(--muted);font-size:12px}.new-list em{color:#a07a48;background:#f1eadc;border-radius:5px;margin-left:auto;padding:4px 6px;font-size:12px;font-style:normal}.empty-list{color:var(--muted);padding:20px 4px;font-size:13px}.genre-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.genre-grid button{border:1px solid var(--line);background:var(--card);text-align:left;color:#3f433d;border-radius:11px;height:67px;padding:0 15px;font-family:Georgia,Songti SC,serif}.genre-grid b{float:right;color:var(--accent)}@media (width<=850px){.song-grid{grid-template-columns:1fr 1fr}.library-columns{grid-template-columns:1fr}}@media (width<=560px){.library-hero{padding:52px 18px 42px}.library-hero h1{font-size:32px}.library-body{padding:38px 14px 70px}.song-grid{grid-template-columns:1fr}.genre-grid{grid-template-columns:1fr 1fr}}.search{position:relative}.search-results{background:var(--card);border:1px solid var(--line);z-index:40;border-radius:13px;padding:7px;position:absolute;top:47px;left:0;right:0;box-shadow:0 18px 48px #1e1f1b29}.search-results button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;padding:10px 11px;display:flex}.search-results button:hover{background:#f1eee5}.search-results span{flex-direction:column;gap:3px;display:flex}.search-results b{font-size:14px}.search-results small{color:var(--muted);font-size:12px}.search-results em{color:var(--accent);border:1px solid #efc2af;border-radius:6px;padding:3px 6px;font-size:12px;font-style:normal}.search-results p{color:var(--muted);margin:0;padding:8px 10px;font-size:13px}.search-results .search-all{color:var(--green);border-top:1px solid var(--line);border-radius:0 0 9px 9px;justify-content:center;margin-top:2px;font-size:13px;font-weight:700}.edit-song{border:1px solid var(--line);width:100%;color:var(--green);background:#f8f5ed;border-radius:9px;margin-top:12px;padding:9px;font-weight:700}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1719158c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.editor{background:var(--card);border-radius:20px;width:min(720px,100%);max-height:92vh;padding:30px;overflow:auto;box-shadow:0 30px 90px #0000003d}.editor-head{justify-content:space-between;display:flex}.editor-head h2{margin:12px 0 5px;font-family:Georgia,Songti SC,serif;font-size:22px}.editor-head p{color:var(--muted);margin:0 0 22px;font-size:14px}.editor-head>button{border:1px solid var(--line);background:#fff;border-radius:50%;width:36px;height:36px;font-size:22px}.field-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.editor label{color:#777;flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.editor input,.editor select,.editor textarea{border:1px solid var(--line);font:inherit;color:var(--ink);outline-color:var(--accent);background:#fbfaf6;border-radius:9px;padding:11px 12px}.content-field{margin-top:15px}.editor textarea{resize:vertical;min-height:230px;font-family:SFMono-Regular,Consolas,PingFang SC,monospace;line-height:1.6}.editor-foot{justify-content:space-between;align-items:center;gap:14px;min-height:42px;margin-top:18px;display:flex}.editor-foot span{color:#b64e38;font-size:13px}.editor-foot span.success{color:#337257}.editor-foot button{background:var(--green);color:#fff;border:0;border-radius:10px;padding:12px 20px;font-weight:700}.editor-foot button:disabled{opacity:.6}@media (width<=760px){.field-grid{grid-template-columns:1fr}.editor{padding:22px}.editor-foot{align-items:flex-end}}:root{--ink:#20211d;--muted:#77766d;--paper:#f7f5ef;--card:#fffef9;--line:#e5e0d6;--accent:#e96536;--green:#244e42}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,PingFang SC,Noto Sans SC,system-ui,sans-serif}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffef9f2;align-items:center;gap:42px;height:72px;padding:0 38px;display:flex;position:sticky;top:0}.brand{color:var(--ink);white-space:nowrap;align-items:center;gap:10px;font-family:Georgia,Songti SC,serif;font-size:21px;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:21px;display:grid}.search{border:1px solid var(--line);color:#999;background:#f8f6f1;border-radius:12px;align-items:center;gap:8px;width:min(430px,38vw);height:40px;padding:0 13px;display:flex}.search input{background:0 0;border:0;outline:0;width:100%;font-size:14px}.topbar nav{align-items:center;gap:24px;margin-left:auto;display:flex}.topbar nav a{color:#5e5d56;font-size:14px;text-decoration:none}.submit-btn{background:var(--green);color:#fff;border:0;border-radius:10px;padding:10px 17px;font-weight:650}.request-btn{background:var(--accent);color:#fff;border:1px solid var(--accent)}.request-form{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:22px}.request-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:13px 5px;display:flex}.request-row i{width:36px;height:36px;color:var(--green);background:#e7ece7;border-radius:9px;place-items:center;font-style:normal;display:grid}.request-row span{flex-direction:column;gap:3px;display:flex}.request-row b{font-size:14px}.request-row small{color:var(--muted);font-size:12px}.request-row em{color:#a07a48;background:#f1eadc;border-radius:5px;margin-left:auto;padding:4px 6px;font-size:12px;font-style:normal}.page-shell{grid-template-columns:190px minmax(570px,760px) 220px;gap:50px;max-width:1480px;margin:auto;padding:38px 36px 100px;display:grid}.side-nav{border-right:1px solid var(--line);min-height:calc(100vh - 110px);padding-right:25px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:#9a978e;margin:5px 0 12px;font-size:12px}.eyebrow.second{margin-top:30px}.side-nav>a{color:#77746b;border-radius:9px;margin:2px 0;padding:10px 12px;font-size:14px;text-decoration:none;display:block}.side-nav>a.active{color:var(--green);background:#e9eee8;font-weight:700}.side-note{color:#5f5a50;background:#ede8dc;border-radius:14px;margin-top:52px;padding:18px 16px;font-family:Georgia,Songti SC,serif;font-size:14px;line-height:1.7}.side-note button{color:var(--accent);background:0 0;border:0;padding:12px 0 0;font-weight:700}.breadcrumbs{color:#aaa69b;margin-bottom:24px;font-size:13px}.song-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:26px;display:flex}.pill{color:var(--accent);border:1px solid #efad94;border-radius:20px;padding:5px 9px;font-size:12px;font-weight:700}.song h1{letter-spacing:.02em;margin:13px 0 7px;font-family:Georgia,Songti SC,serif;font-size:30px}.song-head p{color:var(--muted);margin:0;font-size:14px}.favorite{border:1.5px solid var(--accent);height:42px;color:var(--accent);cursor:pointer;background:#fff1ea;border-radius:999px;align-items:center;gap:7px;padding:0 18px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.favorite:hover{background:var(--accent);color:#fff}.favorite .fav-heart{font-size:18px;line-height:1}.toolbox{border:1px solid var(--line);background:var(--card);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 14px;min-height:68px;margin-top:20px;padding:12px 16px;display:flex;box-shadow:0 4px 18px #302b200a}.tool-group{align-items:center;gap:8px;display:flex}.tool-label{color:#8c897f;margin-right:5px;font-size:12px}.tool-group button,.tool-actions button{border:1px solid var(--line);color:#4c4a44;white-space:nowrap;background:#faf8f2;border-radius:8px;min-width:34px;height:34px;padding:0 11px;font-size:15px}.tool-group strong{text-align:center;min-width:39px;color:var(--accent)}.divider{background:var(--line);width:1px;height:34px;margin:0 10px}.tool-actions{flex-wrap:wrap;gap:9px;margin-left:auto;display:flex}.memory-note{text-align:right;color:#789383;margin:7px 4px 28px;font-size:12px}.score{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:40px 42px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,Courier New,monospace;line-height:1.45;box-shadow:0 9px 30px #37312409}.score-row{grid-template-columns:50px 1fr;margin-bottom:22px;display:grid}.score-row>div:last-child{min-width:0}.section-label{color:var(--accent);padding-top:4px;font-family:Inter,PingFang SC,sans-serif;font-size:12px;font-weight:800}.score pre{white-space:pre-wrap;font:inherit;margin:0}.chords{color:#d4562f;letter-spacing:0;font-weight:400}.lyrics{color:#3c3c36;letter-spacing:0}.right-rail{padding-top:44px}.tip-card,.meta-card{border:1px solid var(--line);background:var(--card);border-radius:14px;margin-bottom:16px;padding:20px}.tip-icon{color:var(--accent);font-size:22px}.tip-card h3{margin:8px 0 16px;font-family:Georgia,Songti SC,serif}.tip-card p,.meta-card p{color:var(--muted);font-size:13px;line-height:1.6}.tip-line{background:var(--line);height:1px;margin:16px 0}.contributor{align-items:center;gap:9px;display:flex}.contributor i{width:30px;height:30px;color:var(--green);background:#d9e3dc;border-radius:50%;place-items:center;font-size:13px;font-style:normal;display:grid}.contributor b{font-size:13px}@media (width<=1080px){.page-shell{grid-template-columns:170px minmax(0,1fr)}.right-rail{display:none}}@media (width<=760px){.topbar{gap:14px;padding:0 16px}.topbar nav a{display:none}.search{flex:1;width:auto}.page-shell{padding:24px 14px 70px;display:block}.side-nav{display:none}.song h1{font-size:26px}.toolbox{z-index:5;flex-wrap:wrap;gap:8px;position:sticky;top:78px}.divider{display:none}.tool-actions{border-top:1px solid var(--line);justify-content:flex-end;width:100%;margin:0;padding-top:8px}.score{padding:28px 16px}.score-row{grid-template-columns:38px 1fr}.topbar nav{margin:0}.submit-btn{padding:9px 11px}.brand span:last-child{display:none}}.brand-mark{background:0 0;border-radius:0;flex:none;width:38px;height:38px}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.library-hero.library-tools{padding:28px 36px 24px}@media (width<=560px){.library-hero.library-tools{padding:20px 14px 18px}}body{background:radial-gradient(circle at 15% 0%, #e965360e, transparent 28rem), radial-gradient(circle at 88% 8%, #244e420d, transparent 30rem), var(--paper)}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #e9653633}.topbar{padding-inline:max(24px,50vw - 580px);box-shadow:0 1px #2a271f08,0 8px 30px #2a271f09}.topbar .brand{letter-spacing:.02em}.topbar nav a{padding:8px 0;transition:color .16s;position:relative}.topbar nav a:after{background:var(--accent);content:"";opacity:0;border-radius:2px;height:2px;transition:all .16s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(.45)}.topbar nav a:hover:after{opacity:1;transform:scaleX(1)}.search{transition:border-color .16s,box-shadow .16s,background .16s}.search:focus-within{background:#fffefb;border-color:#244e427a;box-shadow:0 0 0 4px #244e4212,0 16px 40px #28251d14}.submit-btn{transition:transform .16s,box-shadow .16s,background .16s;box-shadow:0 6px 16px #244e4229}.submit-btn:hover{background:#1d4238;transform:translateY(-1px);box-shadow:0 9px 22px #244e4238}.library-hero.library-tools{background:radial-gradient(circle at 12% 20%,#e965361c,#0000 24rem),radial-gradient(circle at 88% 65%,#244e421a,#0000 26rem),#f5f2ea;position:relative;overflow:hidden}.library-hero.library-tools:before{content:"";opacity:.18;pointer-events:none;background-image:radial-gradient(#3d372b1a .65px,#0000 .65px);background-size:8px 8px;position:absolute;inset:0}.library-tools>*{position:relative}.quick-tags button{background:#fffef98c;transition:all .15s}.quick-tags button:hover{color:var(--accent);background:#fffaf4;border-color:#e9653673;transform:translateY(-1px)}.recent-strip{background:0 0;border:0;margin-bottom:34px;padding:0}.recent-strip button{background:#fffef9bd;border:1px solid #6f67561a;transition:all .15s}.recent-strip button:hover{background:var(--card);border-color:#e965363d;transform:translateY(-1px)}.section-title h2{letter-spacing:-.025em}.section-title>button{border-radius:999px;padding:8px 11px;transition:all .15s}.section-title>button:hover{background:#244e4212}.song-card{border-color:#70665226;border-radius:18px;min-height:116px;padding:16px;overflow:hidden;box-shadow:0 3px #4a423305}.song-card:after{content:"";pointer-events:none;border:18px solid #e9653609;border-radius:50%;width:100px;height:100px;position:absolute;bottom:-48px;right:-36px}.song-card:hover{border-color:#e9653647;transform:translateY(-3px);box-shadow:0 15px 36px #302b2017}.cover{border-radius:13px;width:68px;height:78px;font-family:Georgia,Songti SC,serif;font-size:23px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff29,0 7px 15px #22201b1f}.cover:before,.cover:after{content:"";border:1px solid #ffffff38;border-radius:50%;position:absolute}.cover:before{width:55px;height:55px;top:-20px;right:-24px}.cover:after{width:38px;height:38px;bottom:-17px;left:-20px}.cover b{z-index:1;font-weight:500;position:relative}.card-copy h3{letter-spacing:-.01em;font-size:16px}.go{z-index:1;width:28px;height:28px;color:var(--green);background:#244e420e;border-radius:50%;place-items:center;transition:all .15s;display:grid;position:relative}.song-card:hover .go{background:var(--green);color:#fff}.library-columns{gap:58px}.new-list>button{border-radius:10px;transition:background .14s,padding .14s}.genre-grid button{background:linear-gradient(135deg, var(--card), #ecf0eab8);border-color:#70665224;border-radius:14px;font-size:15px;transition:all .16s;position:relative;overflow:hidden}.genre-grid button:hover{border-color:#244e4247;transform:translateY(-2px);box-shadow:0 9px 22px #302b2012}.toolbox,.score,.tip-card,.meta-card{border-color:#70665229}.toolbox{box-shadow:0 10px 30px #302b200e}.score{box-shadow:0 16px 46px #3731240f}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (width<=760px){.topbar{gap:10px;height:66px;padding-inline:14px}.brand-mark{width:36px;height:36px}.topbar .search{border-radius:13px;height:42px}.library-body{padding-top:30px}.song-card{min-height:108px}}@media (width<=560px){.quick-tags{flex-wrap:nowrap;justify-content:flex-start;padding:2px 0;overflow-x:auto}.quick-tags>*{flex:none}.recent-strip{margin:-8px 0 28px}.section-title{align-items:center}.section-title h2{font-size:22px}.library-columns{gap:42px;margin-top:46px}}:root{--forest-950:#12352d;--forest-900:#173f35;--forest-800:#235448;--cream-50:#fffdf8;--cream-100:#faf6ed;--cream-200:#f1e9dc;--orange-500:#ed6a3a;--orange-600:#d9552b;--ui-shadow:0 18px 45px #1f2b2417}.topbar{background:var(--forest-950);border-bottom:0;height:78px;padding:0;box-shadow:0 10px 28px #12352d29}.topbar-inner{align-items:center;gap:38px;width:min(1160px,100% - 48px);height:100%;margin:0 auto;display:flex}.topbar .brand{color:#fff;font-size:22px}.topbar .brand-mark{filter:drop-shadow(0 7px 12px #0000002e);width:42px;height:42px}.topbar .search{color:#ffffffa6;background:#ffffff17;border-color:#ffffff1f;flex:300px;width:min(440px,38vw);min-width:230px;max-width:440px;height:44px}.topbar .search input{color:#fff}.topbar .search input::placeholder{color:#ffffff7a}.topbar .search:focus-within{background:#ffffff24;border-color:#ffffff4d;box-shadow:0 0 0 4px #ffffff0f}.topbar .search-results{color:var(--ink)}.topbar nav{gap:28px}.topbar-nav{flex:none;align-items:center;margin-left:auto;display:flex}.topbar-actions{flex:none;align-items:center;gap:12px;display:flex}.topbar nav a{color:#ffffffb8;white-space:nowrap;font-size:13px}.topbar nav a:hover{color:#fff}.topbar nav a:after{background:var(--orange-500)}.topbar .submit-btn{background:var(--orange-500);white-space:nowrap;border:1px solid #ffffff1f;padding:11px 18px;box-shadow:0 8px 20px #ed6a3a3d}.topbar .submit-btn:hover{background:#f27648}.topbar .account-btn{color:#fff;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff29;border-radius:10px;min-height:40px;padding:0 15px;font-size:14px;font-weight:700}.topbar .account-btn:hover{background:#ffffff29}.library{padding-top:28px}.library-hero.library-tools{background:radial-gradient(circle at 96% 0,#ed6a3a3d,#0000 27rem),linear-gradient(135deg,#204f43,#173e35 60%,#12352d);border:0;border-radius:26px;width:min(1160px,100% - 48px);margin:0 auto;padding:34px 46px 30px;box-shadow:0 22px 55px #12352d2e}.library-hero.library-tools:before{opacity:.12;background-image:radial-gradient(#ffffff6b .6px,#0000 .6px)}.library-tools .quick-tags span{color:#ffffff80}.library-tools .quick-tags button{color:#fffc;background:#ffffff14;border-color:#ffffff26}.library-tools .quick-tags button:hover{color:#fff;background:#ffffff29;border-color:#ffffff61}.library-body{padding-top:46px}.recent-strip>span{background:var(--cream-200);min-height:34px;color:var(--orange-600);border-radius:999px;align-items:center;padding:0 12px;display:inline-flex}.recent-strip button{border-radius:12px;min-height:40px;padding:8px 13px;box-shadow:0 5px 14px #2d281f09}.section-title span{color:var(--orange-600)}.section-title h2{color:var(--forest-950);margin-top:7px;font-size:22px}.song-grid{gap:16px}.song-card{background:#fffdf8eb;border:0;border-radius:20px;min-height:128px;box-shadow:0 9px 28px #302b2013,inset 0 0 0 1px #655a451a}.song-card:hover{box-shadow:0 20px 42px #24382f24,inset 0 0 0 1px #ed6a3a38}.song-card:after{border-width:22px;border-color:#ed6a3a0b;bottom:-56px;right:-48px}.rank{color:#12352d6b;font-weight:700;top:10px;left:12px}.cover{border-radius:16px;width:72px;height:88px;box-shadow:0 11px 22px #1b241f2e}.card-copy h3{color:var(--forest-950);font-size:18px;line-height:1.25}.card-copy p{margin-bottom:11px;font-size:14px;line-height:1.35}.card-copy small{color:#837a6b;background:#f4efe6;border-radius:6px;padding:4px 7px;font-size:13px;line-height:1.2;display:inline-block}.go{background:#edf2ee;width:31px;height:31px}.library-columns{align-items:start}.new-list{background:#fffdf89e;border:1px solid #645a471f;border-radius:16px;overflow:hidden}.new-list>button{border-radius:0;padding:14px 16px}.new-list>button:last-child{border-bottom:0}.new-list>button:hover{background:#fff;padding-inline:20px}.new-list i{color:var(--forest-800);background:#e7eee9;font-family:Georgia,Songti SC,serif}.row-copy b,.new-list b{font-size:16px;line-height:1.3}.row-copy small,.new-list small{font-size:13px;line-height:1.35}.row-rank,.song-row em,.new-list em{font-size:13px}.genre-panel{background:#ebe4d8;border-radius:22px;padding:24px}.genre-grid button{background:var(--cream-50);border:0;height:76px;box-shadow:inset 0 0 0 1px #6055431c}.genre-grid button:nth-child(2n){background:#f7efe7}.song-view .page-shell{padding-top:36px}.song-view .side-nav{background:var(--forest-950);border:0;border-radius:20px;min-height:0;padding:22px 16px;position:sticky;top:112px;box-shadow:0 16px 36px #12352d26}.song-view .side-nav .eyebrow{color:#ffffff6b}.song-view .side-nav>a{color:#ffffffb3}.song-view .side-nav>a:hover,.song-view .side-nav>a.active{color:#fff;background:#ffffff1f}.song-view .side-nav>a small{color:#ffffffb8;background:#ffffff1f}.song-view .side-note{color:#ffffffa8;background:#ffffff14;margin-top:34px}.song-view .side-note button{color:#ff9b74}.song-view .breadcrumbs{margin:2px 0 16px}.song-view .song-head{background:radial-gradient(circle at 90% 0%, #ed6a3a57, transparent 19rem), linear-gradient(135deg, #204f43, var(--forest-950));border:0;border-radius:24px;min-height:180px;padding:34px 36px;position:relative;overflow:hidden;box-shadow:0 18px 42px #12352d29}.song-view .song-head:after{content:"";border:36px solid #ffffff09;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-75px;right:9%}.song-view .song-head>div,.song-view .favorite{z-index:1;position:relative}.song-view .pill{color:#ffae8f;background:#ffffff1a;border-color:#ffffff2e}.song-view .song-head h1{color:#fff;letter-spacing:-.035em;font-size:clamp(32px,4vw,48px)}.song-view .song-head p{color:#ffffffa3}.song-view .favorite{color:#fff;background:#fff8f3;border:2px solid #ffb092;justify-content:center;gap:10px;min-width:164px;height:58px;padding:0 20px;transition:transform .16s,box-shadow .16s,background .16s;box-shadow:0 12px 30px #08221c47}.song-view .favorite:hover{color:#fff;background:var(--orange-500);transform:translateY(-2px);box-shadow:0 16px 34px #ed6a3a52}.song-view .favorite .fav-heart{color:var(--orange-500);font-size:28px}.song-view .favorite:hover .fav-heart,.song-view .favorite.saved .fav-heart{color:#fff}.song-view .favorite-copy{color:var(--orange-500);flex-direction:column;align-items:flex-start;gap:1px;line-height:1.15;display:flex}.song-view .favorite:hover .favorite-copy,.song-view .favorite.saved .favorite-copy{color:#fff}.song-view .favorite-copy strong{font-size:15px}.song-view .favorite-copy small{opacity:.72;font-size:11px;font-weight:600}.song-view .favorite.saved{background:var(--orange-500);color:#fff;border-color:#ff9b74;box-shadow:0 14px 34px #ed6a3a59}.favorite-toast{z-index:80;color:#fff;background:#173f35;border-radius:999px;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:750;animation:.18s ease-out favorite-toast-in;display:flex;position:fixed;top:92px;left:50%;transform:translate(-50%);box-shadow:0 14px 38px #0c2a2247}.favorite-toast span{background:var(--orange-500);border-radius:50%;place-items:center;width:21px;height:21px;display:grid}@keyframes favorite-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}}.song-view .toolbox{box-shadow:var(--ui-shadow), inset 0 0 0 1px #6257441c;border:0;border-radius:18px;margin-top:16px}.song-view .tool-group button,.song-view .tool-actions button{background:#f8f4ec;border-color:#e9e2d5}.song-view .practice-bar{padding:0 4px}.song-view .score{border:0;border-top:5px solid var(--orange-500);background:#fffdf8;border-radius:20px;box-shadow:0 20px 50px #362f2317}.song-view .tip-card,.song-view .meta-card{border:0;border-radius:18px;box-shadow:0 12px 32px #302b2012,inset 0 0 0 1px #6257441a}@media (width<=1180px){.topbar{height:auto;min-height:78px;padding:10px 0}.topbar-inner,.library-hero.library-tools{width:calc(100% - 36px)}.topbar-inner{flex-wrap:wrap;gap:10px 18px;height:auto;min-height:58px}.topbar .brand{order:1}.topbar .search{flex:340px;order:2;min-width:280px}.topbar-actions{order:3;margin-left:auto}.topbar-nav{order:4;gap:16px;width:100%;margin-left:0}.topbar .submit-btn{padding-inline:14px}.topbar .account-btn{padding-inline:13px}}@media (width<=760px){.topbar{min-height:68px;padding:9px 0 8px}.topbar-inner{flex-wrap:wrap;gap:10px;width:calc(100% - 24px)}.topbar .brand-mark{width:38px;height:38px}.topbar .search{flex:0 0 100%;order:3;width:100%;min-width:100%;height:42px}.topbar-actions{order:2;gap:8px;margin-left:auto}.topbar-nav{order:4;gap:18px;width:100%}.topbar nav a{color:#ffffffc7;align-items:center;height:30px;margin-right:14px;font-size:13px;font-weight:650;display:inline-flex}.topbar nav a:after{display:none}.topbar .submit-btn{flex:none;padding:10px 12px}.topbar .account-btn{flex:none;min-height:42px;padding-inline:12px}.topbar .nav-link,.topbar .nav-action{order:initial}.library{padding-top:14px}.library-hero.library-tools{border-radius:19px;width:calc(100% - 20px);padding:20px 14px 17px}.song-view .song-head{border-radius:19px;min-height:155px;padding:26px 22px}.song-view .song-head h1{font-size:30px}.song-view .favorite{min-width:132px;height:50px;padding:0 14px}.song-view .favorite-copy small{display:none}.song-view .toolbox{border-radius:17px;top:74px}}@media (width<=560px){.library-body{padding-top:28px}.section-title h2{font-size:22px}.song-card{min-height:116px}.card-copy h3{font-size:17px}.row-copy b,.new-list b{font-size:16px}.cover{width:68px;height:82px}.genre-panel{border-radius:19px;margin-inline:-2px;padding:18px}}.fullscreen-scorebar{display:none}.score-fullscreen{background:#f3f0e8;height:100vh;overflow:hidden}.score-fullscreen .topbar,.score-fullscreen .side-nav,.score-fullscreen .right-rail,.score-fullscreen .breadcrumbs,.score-fullscreen .song-head,.score-fullscreen .toolbox,.score-fullscreen .practice-bar,.score-fullscreen .score-notice,.score-fullscreen .memory-note{display:none!important}.score-fullscreen .page-shell{width:100%;height:100vh;margin:0;overflow:hidden;max-width:none!important;padding:72px 0 0!important;display:block!important}.score-fullscreen .song{width:100%;max-width:none;height:100%}.score-fullscreen .fullscreen-scorebar{z-index:100;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#12352df7;border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;min-height:72px;padding:10px clamp(16px,3vw,44px);display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 12px 32px #12352d33}.fullscreen-song-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fullscreen-song-name b{text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,Songti SC,serif;font-size:16px;overflow:hidden}.fullscreen-song-name span{color:#ffffff8c;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.fullscreen-control-group{align-items:center;gap:5px;display:flex}.fullscreen-scorebar button{color:#fff;background:#ffffff14;border:1px solid #ffffff24;border-radius:9px;min-width:38px;height:38px;padding:0 11px;font-weight:700}.fullscreen-scorebar button:hover,.fullscreen-scorebar button.scrolling{background:#ffffff29;border-color:#ffffff47}.fullscreen-control-group strong{color:#ff9e77;text-align:center;min-width:40px}.fullscreen-scorebar label{color:#fff9;align-items:center;gap:7px;font-size:12px;display:flex}.fullscreen-scorebar input{width:74px;accent-color:var(--orange-500)}.fullscreen-scorebar .fullscreen-exit{background:var(--orange-500);border-color:#ff9e7775}.score-fullscreen .score{width:100%;height:calc(100vh - 72px);box-shadow:none;column-width:680px;column-fill:auto;overscroll-behavior-x:contain;border:0;border-radius:0;column-gap:clamp(54px,6vw,110px);margin:0;padding:clamp(30px,4vw,76px) clamp(24px,6vw,112px);overflow:auto hidden}.score-fullscreen .score-row{break-inside:avoid-column;grid-template-columns:76px 1fr;margin-bottom:30px}.score-fullscreen .section-label{font-size:12px}@media (width<=760px){.score-fullscreen .page-shell{padding-top:62px!important}.score-fullscreen .fullscreen-scorebar{gap:6px;min-height:62px;padding:8px 10px}.fullscreen-song-name span,.fullscreen-scorebar label,.fullscreen-control-group:nth-of-type(2){display:none}.fullscreen-song-name b{font-size:13px}.fullscreen-scorebar button{min-width:34px;height:36px;padding-inline:8px;font-size:12px}.fullscreen-control-group strong{min-width:30px;font-size:13px}.score-fullscreen .score{column-width:calc(100vw - 36px);column-gap:28px;height:calc(100vh - 62px);padding:28px 18px 80px}.score-fullscreen .score-row{grid-template-columns:44px 1fr}}.chord-diagrams{background:#fffdf8b3;border:1px solid #70665224;border-radius:14px;flex-wrap:wrap;align-items:flex-start;gap:10px 14px;margin:0 0 18px;padding:14px;display:flex}.chord-diagrams-label{letter-spacing:.12em;color:var(--accent);flex:0 0 100%;font-size:12px;font-weight:800}.chord-cell{flex-direction:column;align-items:center;gap:5px;display:flex}.chord-cell-name{color:#3c3c36;font-size:12px;font-weight:700}.chord-cell-empty{border:1px solid var(--line);color:#aaa;background:#faf8f2;border-radius:10px;place-items:center;font-size:16px;display:grid}.pagination{gap:10px}.pagination-pages{justify-content:center;align-items:center;gap:6px;display:flex}.pagination .pagination-page,.pagination .pagination-nav{border-radius:10px;min-width:40px;height:40px;padding:0 12px}.pagination .pagination-page{color:var(--forest-800);padding:0;font-weight:750}.pagination .pagination-page:hover{background:#f1f5f1;border-color:#23544861}.pagination .pagination-page.active{border-color:var(--forest-800);background:var(--forest-800);color:#fff;box-shadow:0 8px 20px #23544833}.pagination-gap{min-width:20px;color:var(--muted);text-align:center}@media (width<=620px){.pagination{gap:5px}.pagination .pagination-page,.pagination .pagination-nav{min-width:36px;height:38px;padding:0 9px}.pagination .pagination-page{padding:0}.pagination-pages{gap:4px}.pagination .pagination-far,.pagination-nav-label{display:none}}
