{"version":3,"sources":["../src/core/styles.css"],"sourcesContent":[".fx-btn {\n  --fx-btn-fg: #0f0f12;\n  --fx-btn-bg: #f4f4f5;\n  --fx-btn-accent: #3b82f6;\n  --fx-btn-radius: 10px;\n\n  position: relative;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 0.5rem;\n  padding: 0.7rem 1.25rem;\n  border: 1px solid transparent;\n  border-radius: var(--fx-btn-radius);\n  background: var(--fx-btn-bg);\n  color: var(--fx-btn-fg);\n  font: inherit;\n  font-size: 0.9375rem;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: 0.01em;\n  text-decoration: none;\n  cursor: pointer;\n  user-select: none;\n  -webkit-tap-highlight-color: transparent;\n  isolation: isolate;\n  overflow: hidden;\n  transition:\n    transform 160ms ease,\n    box-shadow 200ms ease,\n    background-color 200ms ease,\n    border-color 200ms ease,\n    color 200ms ease;\n}\n\n.fx-btn:focus-visible {\n  outline: 2px solid var(--fx-btn-accent);\n  outline-offset: 3px;\n}\n\n.fx-btn:disabled {\n  opacity: 0.5;\n  cursor: not-allowed;\n  pointer-events: none;\n}\n\n.fx-btn:active:not(:disabled) {\n  transform: translateY(1px) scale(0.98);\n}\n\n/* —— solid —— */\n.fx-btn--solid {\n  --fx-btn-fg: #fafafa;\n  --fx-btn-bg: #18181b;\n  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08) inset;\n}\n\n.fx-btn--solid:hover:not(:disabled) {\n  background: #27272a;\n}\n\n/* —— outline —— */\n.fx-btn--outline {\n  --fx-btn-fg: #18181b;\n  --fx-btn-bg: transparent;\n  border-color: #d4d4d8;\n  background: transparent;\n}\n\n.fx-btn--outline:hover:not(:disabled) {\n  border-color: #18181b;\n  background: #18181b;\n  color: #fafafa;\n}\n\n/* —— soft —— */\n.fx-btn--soft {\n  --fx-btn-fg: #1d4ed8;\n  --fx-btn-bg: #dbeafe;\n}\n\n.fx-btn--soft:hover:not(:disabled) {\n  background: #bfdbfe;\n  transform: translateY(-1px);\n}\n\n.fx-btn--soft:active:not(:disabled) {\n  transform: translateY(0) scale(0.98);\n}\n\n/* —— glow —— */\n.fx-btn--glow {\n  --fx-btn-fg: #f8fafc;\n  --fx-btn-bg: #2563eb;\n  box-shadow:\n    0 0 0 0 rgba(37, 99, 235, 0.45),\n    0 8px 24px rgba(37, 99, 235, 0.28);\n  animation: fx-btn-glow-pulse 2.4s ease-in-out infinite;\n}\n\n.fx-btn--glow:hover:not(:disabled) {\n  background: #1d4ed8;\n  box-shadow:\n    0 0 0 6px rgba(37, 99, 235, 0.18),\n    0 10px 28px rgba(37, 99, 235, 0.4);\n  animation: none;\n}\n\n@keyframes fx-btn-glow-pulse {\n  0%,\n  100% {\n    box-shadow:\n      0 0 0 0 rgba(37, 99, 235, 0.4),\n      0 8px 24px rgba(37, 99, 235, 0.28);\n  }\n  50% {\n    box-shadow:\n      0 0 0 8px rgba(37, 99, 235, 0),\n      0 10px 28px rgba(37, 99, 235, 0.35);\n  }\n}\n\n/* —— neon —— */\n.fx-btn--neon {\n  --fx-btn-fg: #67e8f9;\n  --fx-btn-bg: #0b1220;\n  border-color: #22d3ee;\n  box-shadow:\n    0 0 0 1px rgba(34, 211, 238, 0.25),\n    0 0 18px rgba(34, 211, 238, 0.35),\n    inset 0 0 12px rgba(34, 211, 238, 0.08);\n  text-shadow: 0 0 10px rgba(103, 232, 249, 0.55);\n}\n\n.fx-btn--neon:hover:not(:disabled) {\n  color: #ecfeff;\n  border-color: #67e8f9;\n  box-shadow:\n    0 0 0 1px rgba(103, 232, 249, 0.45),\n    0 0 28px rgba(34, 211, 238, 0.55),\n    inset 0 0 16px rgba(34, 211, 238, 0.14);\n}\n\n/* —— shimmer —— */\n.fx-btn--shimmer {\n  --fx-btn-fg: #fafafa;\n  --fx-btn-bg: #111827;\n}\n\n.fx-btn--shimmer::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  z-index: -1;\n  background: linear-gradient(\n    110deg,\n    transparent 30%,\n    rgba(255, 255, 255, 0.28) 48%,\n    transparent 66%\n  );\n  transform: translateX(-120%);\n  transition: transform 0.55s ease;\n}\n\n.fx-btn--shimmer:hover:not(:disabled)::before {\n  transform: translateX(120%);\n}\n\n.fx-btn--shimmer:hover:not(:disabled) {\n  background: #1f2937;\n}\n\n/* —— chroma（炫彩流光 + hover 高斯光晕） —— */\n.fx-btn--chroma {\n  --fx-btn-fg: #fff;\n  --fx-btn-radius: 999px;\n  z-index: 0;\n  overflow: visible;\n  isolation: auto;\n  border: none;\n  background: linear-gradient(\n    to right,\n    #03a9f4,\n    #f441a5,\n    #ffeb3b,\n    #03a9f4\n  );\n  background-size: 400%;\n  letter-spacing: 0.08em;\n  animation: fx-btn-chroma-shift 8s ease infinite;\n}\n\n.fx-btn--chroma::before {\n  content: '';\n  position: absolute;\n  inset: -4px;\n  z-index: -1;\n  border-radius: inherit;\n  background: linear-gradient(\n    to right,\n    #03a9f4,\n    #f441a5,\n    #ffeb3b,\n    #03a9f4\n  );\n  background-size: 400%;\n  filter: blur(0);\n  opacity: 0;\n  pointer-events: none;\n  transition:\n    opacity 0.4s ease,\n    filter 0.4s ease;\n  animation: fx-btn-chroma-shift 8s ease infinite;\n}\n\n.fx-btn--chroma:hover:not(:disabled)::before {\n  opacity: 1;\n  filter: blur(8px);\n}\n\n.fx-btn--chroma:active:not(:disabled) {\n  transform: translateY(1px) scale(0.98);\n}\n\n@keyframes fx-btn-chroma-shift {\n  0% {\n    background-position: 0%;\n  }\n\n  100% {\n    background-position: 400%;\n  }\n}\n\n/* —— liquid（底部液体升起） —— */\n.fx-btn--liquid {\n  --fx-btn-fg: #0891b2;\n  --fx-btn-bg: transparent;\n  z-index: 0;\n  border-color: #0891b2;\n  background: transparent;\n  overflow: hidden;\n}\n\n.fx-btn--liquid::before {\n  content: '';\n  position: absolute;\n  left: -30%;\n  bottom: 0;\n  z-index: -1;\n  width: 160%;\n  height: 220%;\n  border-radius: 42% 48% 0 0 / 28% 32% 0 0;\n  background: linear-gradient(180deg, #22d3ee, #0891b2);\n  transform: translateY(82%);\n  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.fx-btn--liquid:hover:not(:disabled) {\n  color: #fff;\n}\n\n.fx-btn--liquid:hover:not(:disabled)::before {\n  transform: translateY(12%);\n  animation: fx-btn-liquid-wave 2.4s ease-in-out infinite 0.55s;\n}\n\n@keyframes fx-btn-liquid-wave {\n  0%,\n  100% {\n    border-radius: 42% 48% 0 0 / 28% 32% 0 0;\n  }\n\n  50% {\n    border-radius: 48% 42% 0 0 / 34% 26% 0 0;\n  }\n}\n\n/* —— wipe（左向右擦除填充） —— */\n.fx-btn--wipe {\n  --fx-btn-fg: #f4f4f5;\n  --fx-btn-bg: transparent;\n  z-index: 0;\n  border-color: rgba(244, 244, 245, 0.7);\n  background: transparent;\n  overflow: hidden;\n}\n\n.fx-btn--wipe::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  z-index: -1;\n  background: #f4f4f5;\n  transform: translateX(-105%) skewX(-12deg);\n  transform-origin: left center;\n  transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);\n}\n\n.fx-btn--wipe:hover:not(:disabled) {\n  color: #18181b;\n  border-color: #f4f4f5;\n}\n\n.fx-btn--wipe:hover:not(:disabled)::before {\n  transform: translateX(0) skewX(0deg);\n}\n\n/* —— glass（毛玻璃） —— */\n.fx-btn--glass {\n  --fx-btn-fg: #f8fafc;\n  --fx-btn-bg: rgba(255, 255, 255, 0.1);\n  border-color: rgba(255, 255, 255, 0.28);\n  background: rgba(255, 255, 255, 0.1);\n  box-shadow:\n    inset 0 1px 0 rgba(255, 255, 255, 0.22),\n    0 8px 24px rgba(0, 0, 0, 0.18);\n  backdrop-filter: blur(14px);\n  -webkit-backdrop-filter: blur(14px);\n}\n\n.fx-btn--glass:hover:not(:disabled) {\n  background: rgba(255, 255, 255, 0.18);\n  border-color: rgba(255, 255, 255, 0.4);\n  transform: translateY(-1px);\n}\n\n.fx-btn--glass:active:not(:disabled) {\n  transform: translateY(0) scale(0.98);\n}\n"],"mappings":"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","names":[]}