- 在桌面和移动版动物游戏组件中添加长按取消下注功能 - 新增 LongPressProgress 组件显示长按进度动画 - 重构游戏控制组件,移除增加/减少投注数量按钮 - 更新投注逻辑,优化单笔投注金额计算方式 - 修复移动端触摸目标选择器样式问题 - 添加右键菜单禁用和键盘删除操作支持 - 更新多语言文件中的游戏说明和取消投注标签 - 优化自动托管运行器中的投注分组逻辑
818 lines
21 KiB
CSS
818 lines
21 KiB
CSS
@import "./font.css";
|
|
@import "tailwindcss";
|
|
@import "tw-animate-css";
|
|
@import "shadcn/tailwind.css";
|
|
@import "@fontsource-variable/geist";
|
|
@import "@fontsource-variable/oxanium";
|
|
|
|
@custom-variant dark (&:is(.dark *));
|
|
|
|
@theme {
|
|
--font-sans:
|
|
"Inter", "SF Pro Display", "Segoe UI", "Helvetica Neue", sans-serif;
|
|
--font-mono:
|
|
"JetBrains Mono", "SFMono-Regular", "SF Mono", Consolas, monospace;
|
|
--font-countdown: "Countdown", "Inter", "SF Pro Display", sans-serif;
|
|
--font-jackpot-amount:
|
|
"Oxanium Variable", "Countdown", "SF Pro Display", sans-serif;
|
|
--color-game-bg: #07111f;
|
|
--color-game-surface: #0d1b2d;
|
|
--color-game-surface-strong: #12253d;
|
|
--color-game-accent: #31d0ff;
|
|
--color-game-accent-soft: #7ce8ff;
|
|
--color-game-gold: #f5c86b;
|
|
--color-game-gold-strong: #ffd66e;
|
|
--color-game-danger: #ff5e7a;
|
|
--color-game-success: #4fdc9b;
|
|
--shadow-game-panel:
|
|
0 20px 60px rgba(2, 6, 23, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.06);
|
|
}
|
|
|
|
:root {
|
|
--design-unit: calc(100vw / 1920);
|
|
--background: oklch(1 0 0);
|
|
--foreground: oklch(0.145 0 0);
|
|
--card: oklch(1 0 0);
|
|
--card-foreground: oklch(0.145 0 0);
|
|
--popover: oklch(1 0 0);
|
|
--popover-foreground: oklch(0.145 0 0);
|
|
--primary: oklch(0.205 0 0);
|
|
--primary-foreground: oklch(0.985 0 0);
|
|
--secondary: oklch(0.97 0 0);
|
|
--secondary-foreground: oklch(0.205 0 0);
|
|
--muted: oklch(0.97 0 0);
|
|
--muted-foreground: oklch(0.556 0 0);
|
|
--accent: oklch(0.97 0 0);
|
|
--accent-foreground: oklch(0.205 0 0);
|
|
--destructive: oklch(0.577 0.245 27.325);
|
|
--border: oklch(0.922 0 0);
|
|
--input: oklch(0.922 0 0);
|
|
--ring: oklch(0.708 0 0);
|
|
--chart-1: oklch(0.87 0 0);
|
|
--chart-2: oklch(0.556 0 0);
|
|
--chart-3: oklch(0.439 0 0);
|
|
--chart-4: oklch(0.371 0 0);
|
|
--chart-5: oklch(0.269 0 0);
|
|
--radius: 0.625rem;
|
|
--sidebar: oklch(0.985 0 0);
|
|
--sidebar-foreground: oklch(0.145 0 0);
|
|
--sidebar-primary: oklch(0.205 0 0);
|
|
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
--sidebar-accent: oklch(0.97 0 0);
|
|
--sidebar-accent-foreground: oklch(0.205 0 0);
|
|
--sidebar-border: oklch(0.922 0 0);
|
|
--sidebar-ring: oklch(0.708 0 0);
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
:root {
|
|
--design-unit: calc(100vw / 375);
|
|
}
|
|
}
|
|
|
|
@utility w-design-* {
|
|
width: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility h-design-* {
|
|
height: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility min-w-design-* {
|
|
min-width: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility text-design-* {
|
|
font-size: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility gap-design-* {
|
|
gap: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility pt-design-* {
|
|
padding-top: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility px-design-* {
|
|
padding-left: calc(var(--design-unit) * --value(integer));
|
|
padding-right: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility p-design-* {
|
|
padding: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility mt-design-* {
|
|
margin-top: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility mb-design-* {
|
|
margin-bottom: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility ml-design-* {
|
|
margin-left: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility mr-design-* {
|
|
margin-right: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility mx-design-* {
|
|
margin-left: calc(var(--design-unit) * --value(integer));
|
|
margin-right: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility py-design-* {
|
|
padding-top: calc(var(--design-unit) * --value(integer));
|
|
padding-bottom: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility pl-design-* {
|
|
padding-left: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility pb-design-* {
|
|
padding-bottom: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility pr-design-* {
|
|
padding-right: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility my-design-* {
|
|
margin-top: calc(var(--design-unit) * --value(integer));
|
|
margin-bottom: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility left-design-* {
|
|
left: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility top-design-* {
|
|
top: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@utility right-design-* {
|
|
right: calc(var(--design-unit) * --value(integer));
|
|
}
|
|
|
|
@layer base {
|
|
html {
|
|
@apply h-full w-full text-design-16 font-sans;
|
|
}
|
|
|
|
body {
|
|
@apply m-0 h-full w-full bg-background text-foreground;
|
|
}
|
|
|
|
#root {
|
|
@apply h-full w-full;
|
|
}
|
|
|
|
* {
|
|
-ms-overflow-style: none;
|
|
scrollbar-width: none;
|
|
@apply border-border outline-ring/50;
|
|
}
|
|
|
|
*::-webkit-scrollbar {
|
|
width: 0;
|
|
height: 0;
|
|
display: none;
|
|
}
|
|
|
|
body {
|
|
background:
|
|
radial-gradient(circle at top, rgba(49, 208, 255, 0.12), transparent 28%),
|
|
radial-gradient(
|
|
circle at bottom right,
|
|
rgba(245, 200, 107, 0.1),
|
|
transparent 24%
|
|
),
|
|
linear-gradient(180deg, #07111f 0%, #040812 100%);
|
|
color: #f8fafc;
|
|
}
|
|
}
|
|
|
|
@layer utilities {
|
|
.mobile-animal-touch-target,
|
|
.mobile-animal-touch-target * {
|
|
-webkit-touch-callout: none;
|
|
-webkit-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.mobile-animal-touch-target img {
|
|
-webkit-user-drag: none;
|
|
}
|
|
|
|
.auth-password-input::-ms-clear,
|
|
.auth-password-input::-ms-reveal {
|
|
display: none;
|
|
}
|
|
|
|
.auth-password-input::-webkit-caps-lock-indicator,
|
|
.auth-password-input::-webkit-contacts-auto-fill-button,
|
|
.auth-password-input::-webkit-credentials-auto-fill-button {
|
|
display: none;
|
|
pointer-events: none;
|
|
visibility: hidden;
|
|
}
|
|
|
|
.common-neon-inset {
|
|
border: 1px solid rgba(128, 223, 231, 0.65);
|
|
border-radius: 5px;
|
|
padding: calc(var(--design-unit) * 8) calc(var(--design-unit) * 10);
|
|
box-shadow: inset 0 0 8px rgba(128, 223, 231, 0.65);
|
|
color: #d5fbff;
|
|
}
|
|
|
|
.common-neon-inset-glow {
|
|
border: 1px solid rgba(128, 223, 231, 0.65);
|
|
border-radius: 5px;
|
|
padding: calc(var(--design-unit) * 8) calc(var(--design-unit) * 10);
|
|
background:
|
|
linear-gradient(180deg, rgba(18, 44, 58, 0.92), rgba(8, 22, 34, 0.9)),
|
|
radial-gradient(circle at top, rgba(128, 223, 231, 0.16), transparent 62%);
|
|
box-shadow:
|
|
inset 0 0 calc(var(--design-unit) * 8) rgba(128, 223, 231, 0.72),
|
|
inset 0 0 calc(var(--design-unit) * 18) rgba(128, 223, 231, 0.18),
|
|
0 0 calc(var(--design-unit) * 6) rgba(128, 223, 231, 0.35),
|
|
0 0 calc(var(--design-unit) * 18) rgba(128, 223, 231, 0.24);
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.common-neon-inset-glow::before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 1px;
|
|
border-radius: 4px;
|
|
border-top: 1px solid rgba(214, 249, 252, 0.8);
|
|
opacity: 0.85;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.game-setting-input-shell {
|
|
border: 1px solid rgba(123, 235, 245, 0.38);
|
|
border-radius: calc(var(--design-unit) * 8);
|
|
background: rgba(17, 52, 67, 0.72);
|
|
transition:
|
|
border-color 180ms ease,
|
|
box-shadow 180ms ease,
|
|
background-color 180ms ease;
|
|
}
|
|
|
|
.game-setting-input-shell:focus-within {
|
|
border-color: rgba(136, 245, 255, 0.68);
|
|
box-shadow:
|
|
0 0 0 calc(var(--design-unit) * 1.2) rgba(108, 247, 255, 0.08),
|
|
inset 0 0 calc(var(--design-unit) * 5) rgba(110, 255, 255, 0.06);
|
|
background: rgba(19, 58, 74, 0.82);
|
|
}
|
|
|
|
.game-setting-input {
|
|
border: none;
|
|
background: transparent;
|
|
padding: 0;
|
|
color: #8ad6dd;
|
|
box-shadow: none;
|
|
outline: none;
|
|
caret-color: #d9ffff;
|
|
}
|
|
|
|
.game-setting-input::placeholder {
|
|
color: rgba(138, 214, 221, 0.58);
|
|
}
|
|
|
|
.boot-grid {
|
|
background-image:
|
|
linear-gradient(rgba(112, 255, 247, 0.12) 1px, transparent 1px),
|
|
linear-gradient(90deg, rgba(112, 255, 247, 0.12) 1px, transparent 1px);
|
|
background-size:
|
|
calc(var(--design-unit) * 64) calc(var(--design-unit) * 64),
|
|
calc(var(--design-unit) * 64) calc(var(--design-unit) * 64);
|
|
mask-image: radial-gradient(circle at center, black 0%, transparent 72%);
|
|
}
|
|
|
|
.boot-scanline {
|
|
background: linear-gradient(
|
|
180deg,
|
|
transparent 0%,
|
|
rgba(117, 255, 250, 0.08) 50%,
|
|
transparent 100%
|
|
);
|
|
animation: boot-scanline 2.6s ease-in-out infinite;
|
|
}
|
|
|
|
.boot-particle {
|
|
animation: boot-particle-float 3.6s ease-in-out infinite;
|
|
}
|
|
|
|
.boot-ring {
|
|
animation: boot-ring-spin 4.8s cubic-bezier(0.45, 0, 0.2, 1) infinite;
|
|
box-shadow:
|
|
0 0 calc(var(--design-unit) * 24) rgba(113, 255, 247, 0.24),
|
|
inset 0 0 calc(var(--design-unit) * 18) rgba(113, 255, 247, 0.12);
|
|
}
|
|
|
|
.boot-ring::before,
|
|
.boot-ring::after {
|
|
content: "";
|
|
position: absolute;
|
|
left: 50%;
|
|
height: calc(var(--design-unit) * 10);
|
|
width: calc(var(--design-unit) * 10);
|
|
border-radius: 9999px;
|
|
background: #77fff8;
|
|
box-shadow: 0 0 calc(var(--design-unit) * 18) rgba(119, 255, 248, 0.85);
|
|
transform: translateX(-50%);
|
|
}
|
|
|
|
.boot-ring::before {
|
|
top: calc(var(--design-unit) * -5);
|
|
}
|
|
|
|
.boot-ring::after {
|
|
bottom: calc(var(--design-unit) * -5);
|
|
}
|
|
|
|
.boot-ring-delay {
|
|
animation-direction: reverse;
|
|
animation-duration: 6.4s;
|
|
}
|
|
|
|
@keyframes boot-particle-float {
|
|
0%,
|
|
100% {
|
|
opacity: 0.18;
|
|
transform: translate3d(0, 0, 0) scale(0.72);
|
|
}
|
|
|
|
45% {
|
|
opacity: 0.95;
|
|
transform: translate3d(
|
|
calc(var(--design-unit) * 26),
|
|
calc(var(--design-unit) * -38),
|
|
0
|
|
)
|
|
scale(1.24);
|
|
}
|
|
}
|
|
|
|
@keyframes boot-ring-spin {
|
|
0% {
|
|
transform: rotate(0deg) scale(0.96);
|
|
}
|
|
|
|
50% {
|
|
transform: rotate(185deg) scale(1.04);
|
|
}
|
|
|
|
100% {
|
|
transform: rotate(360deg) scale(0.96);
|
|
}
|
|
}
|
|
|
|
@keyframes boot-scanline {
|
|
0% {
|
|
transform: translateY(-100%);
|
|
}
|
|
|
|
100% {
|
|
transform: translateY(100%);
|
|
}
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.boot-particle,
|
|
.boot-ring,
|
|
.boot-scanline {
|
|
animation: none;
|
|
}
|
|
}
|
|
|
|
.data-loading-core::before,
|
|
.data-loading-core::after {
|
|
content: "";
|
|
position: absolute;
|
|
border-radius: 9999px;
|
|
background: #77fff8;
|
|
box-shadow: 0 0 calc(var(--design-unit) * 12) rgba(119, 255, 248, 0.8);
|
|
}
|
|
|
|
.data-loading-core::before {
|
|
top: 6%;
|
|
height: calc(var(--design-unit) * 5);
|
|
width: calc(var(--design-unit) * 5);
|
|
}
|
|
|
|
.data-loading-core::after {
|
|
bottom: 10%;
|
|
height: calc(var(--design-unit) * 4);
|
|
width: calc(var(--design-unit) * 4);
|
|
background: #fee889;
|
|
box-shadow: 0 0 calc(var(--design-unit) * 12) rgba(254, 232, 137, 0.72);
|
|
}
|
|
|
|
.data-loading-orbit {
|
|
animation: data-loading-orbit 1.25s cubic-bezier(0.45, 0, 0.2, 1) infinite;
|
|
border-top-color: rgba(113, 255, 247, 0.96);
|
|
border-right-color: rgba(113, 255, 247, 0.08);
|
|
}
|
|
|
|
.data-loading-orbit-delay {
|
|
animation-duration: 1.7s;
|
|
animation-direction: reverse;
|
|
border-top-color: rgba(255, 232, 137, 0.86);
|
|
border-left-color: rgba(255, 232, 137, 0.08);
|
|
}
|
|
|
|
@keyframes data-loading-orbit {
|
|
0% {
|
|
transform: rotate(0deg) scale(0.98);
|
|
}
|
|
|
|
50% {
|
|
transform: rotate(185deg) scale(1.04);
|
|
}
|
|
|
|
100% {
|
|
transform: rotate(360deg) scale(0.98);
|
|
}
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.data-loading-orbit {
|
|
animation: none;
|
|
}
|
|
}
|
|
|
|
.game-setting-input:focus,
|
|
.game-setting-input:focus-visible {
|
|
border: none;
|
|
box-shadow: none;
|
|
outline: none;
|
|
}
|
|
|
|
.game-panel {
|
|
border: 1px solid rgba(124, 232, 255, 0.12);
|
|
background: linear-gradient(
|
|
180deg,
|
|
rgba(18, 37, 61, 0.88),
|
|
rgba(7, 17, 31, 0.78)
|
|
);
|
|
box-shadow: var(--shadow-game-panel);
|
|
backdrop-filter: blur(18px);
|
|
}
|
|
|
|
.game-chip-glow {
|
|
box-shadow:
|
|
0 0 0 1px rgba(49, 208, 255, 0.16),
|
|
0 16px 36px rgba(49, 208, 255, 0.16);
|
|
}
|
|
|
|
.game-gold-glow {
|
|
box-shadow:
|
|
0 0 0 1px rgba(245, 200, 107, 0.2),
|
|
0 18px 40px rgba(245, 200, 107, 0.14);
|
|
}
|
|
|
|
.desktop-game-history-glow {
|
|
filter: drop-shadow(
|
|
0 0 calc(var(--design-unit) * 4) rgba(49, 208, 255, 0.65)
|
|
)
|
|
drop-shadow(0 0 calc(var(--design-unit) * 14) rgba(49, 208, 255, 0.28));
|
|
}
|
|
|
|
.modal-close-glow {
|
|
filter: drop-shadow(
|
|
0 0 calc(var(--design-unit) * 4) rgba(110, 255, 255, 0.95)
|
|
)
|
|
drop-shadow(0 0 calc(var(--design-unit) * 12) rgba(48, 214, 255, 0.78))
|
|
drop-shadow(0 0 calc(var(--design-unit) * 24) rgba(18, 162, 255, 0.5));
|
|
}
|
|
|
|
.modal-title-glow {
|
|
text-shadow:
|
|
0 0 calc(var(--design-unit) * 2) rgba(224, 255, 255, 0.95),
|
|
0 0 calc(var(--design-unit) * 6) rgba(108, 247, 255, 0.82),
|
|
0 0 calc(var(--design-unit) * 14) rgba(48, 214, 255, 0.58);
|
|
}
|
|
|
|
.modal-title-gold-glow {
|
|
text-shadow:
|
|
0 0 calc(var(--design-unit) * 2) rgba(255, 248, 235, 0.9),
|
|
0 0 calc(var(--design-unit) * 8) rgba(254, 238, 176, 0.64),
|
|
0 0 calc(var(--design-unit) * 16) rgba(254, 238, 176, 0.38);
|
|
}
|
|
|
|
.desktop-control-chip {
|
|
margin-left: calc(var(--design-unit) * -4);
|
|
margin-right: calc(var(--design-unit) * -18);
|
|
}
|
|
|
|
.desktop-control-total {
|
|
margin-left: calc(var(--design-unit) * -26);
|
|
margin-right: calc(var(--design-unit) * -26);
|
|
}
|
|
|
|
.desktop-control-actions {
|
|
margin-left: calc(var(--design-unit) * -16);
|
|
margin-right: 0;
|
|
}
|
|
|
|
.desktop-control-confirm {
|
|
margin-left: calc(var(--design-unit) * -10);
|
|
}
|
|
|
|
.history-scroll-hidden {
|
|
-ms-overflow-style: none;
|
|
scrollbar-width: none;
|
|
}
|
|
|
|
.history-scroll-hidden::-webkit-scrollbar {
|
|
width: 0;
|
|
height: 0;
|
|
display: none;
|
|
}
|
|
|
|
@property --gold-angle {
|
|
syntax: "<angle>";
|
|
inherits: false;
|
|
initial-value: 0deg;
|
|
}
|
|
|
|
@keyframes rotating-gold-border {
|
|
to {
|
|
--gold-angle: 360deg;
|
|
}
|
|
}
|
|
|
|
@keyframes gold-border-pulse {
|
|
0%,
|
|
100% {
|
|
opacity: 0.34;
|
|
transform: scale(0.992);
|
|
}
|
|
|
|
50% {
|
|
opacity: 0.54;
|
|
transform: scale(1.008);
|
|
}
|
|
}
|
|
|
|
.gold-reveal-shell {
|
|
--gold-angle: 0deg;
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 2.6);
|
|
border-radius: calc(var(--design-unit) * 16);
|
|
overflow: hidden;
|
|
clip-path: inset(0 round calc(var(--design-unit) * 16));
|
|
pointer-events: none;
|
|
}
|
|
|
|
.gold-reveal-shell::before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0;
|
|
border-radius: calc(var(--design-unit) * 16);
|
|
padding: calc(var(--design-unit) * 5.6);
|
|
background: conic-gradient(
|
|
from var(--gold-angle),
|
|
#534217 10%,
|
|
#534217 20%,
|
|
#ffe226 45%,
|
|
#534217 60%,
|
|
#534217 85%,
|
|
#ffe226 95%,
|
|
#534217 100%
|
|
);
|
|
-webkit-mask:
|
|
linear-gradient(#fff 0 0) content-box,
|
|
linear-gradient(#fff 0 0);
|
|
-webkit-mask-composite: xor;
|
|
mask-composite: exclude;
|
|
animation: rotating-gold-border 8s linear infinite;
|
|
}
|
|
|
|
.gold-reveal-shell::after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 1);
|
|
border-radius: calc(var(--design-unit) * 15);
|
|
padding: calc(var(--design-unit) * 4);
|
|
background: conic-gradient(
|
|
from calc(var(--gold-angle) + 180deg),
|
|
rgba(255, 247, 210, 0) 0%,
|
|
rgba(255, 247, 210, 0) 66%,
|
|
rgba(255, 252, 232, 0.14) 71%,
|
|
rgba(255, 254, 244, 0.98) 75%,
|
|
rgba(255, 230, 130, 0.96) 79%,
|
|
rgba(255, 247, 210, 0.18) 84%,
|
|
rgba(255, 247, 210, 0) 90%,
|
|
rgba(255, 247, 210, 0) 100%
|
|
);
|
|
-webkit-mask:
|
|
linear-gradient(#fff 0 0) content-box,
|
|
linear-gradient(#fff 0 0);
|
|
-webkit-mask-composite: xor;
|
|
mask-composite: exclude;
|
|
animation: rotating-gold-border 2.1s linear infinite;
|
|
}
|
|
|
|
.gold-reveal-static-border {
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 2.8);
|
|
border-radius: calc(var(--design-unit) * 16);
|
|
border: calc(var(--design-unit) * 7.4) solid rgba(181, 138, 40, 0.98);
|
|
box-shadow:
|
|
inset 0 0 calc(var(--design-unit) * 14) rgba(255, 241, 181, 0.38),
|
|
0 0 calc(var(--design-unit) * 18) rgba(255, 210, 102, 0.32);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.gold-reveal-glow {
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 1.4);
|
|
border-radius: calc(var(--design-unit) * 18);
|
|
background: radial-gradient(
|
|
circle at center,
|
|
rgba(255, 226, 92, 0.18) 0%,
|
|
rgba(219, 161, 42, 0.14) 42%,
|
|
rgba(127, 86, 13, 0.08) 62%,
|
|
transparent 82%
|
|
);
|
|
filter: blur(calc(var(--design-unit) * 2.8));
|
|
opacity: 0.36;
|
|
pointer-events: none;
|
|
animation: gold-border-pulse 1.9s ease-in-out infinite;
|
|
}
|
|
|
|
.mobile-gold-reveal-shell {
|
|
--gold-angle: 0deg;
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 2.2);
|
|
border-radius: calc(var(--design-unit) * 7);
|
|
overflow: hidden;
|
|
clip-path: inset(0 round calc(var(--design-unit) * 7));
|
|
pointer-events: none;
|
|
}
|
|
|
|
.mobile-gold-reveal-shell::before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0;
|
|
border-radius: calc(var(--design-unit) * 7);
|
|
padding: calc(var(--design-unit) * 2.5);
|
|
background: conic-gradient(
|
|
from var(--gold-angle),
|
|
#534217 10%,
|
|
#534217 20%,
|
|
#ffe226 45%,
|
|
#534217 60%,
|
|
#534217 85%,
|
|
#ffe226 95%,
|
|
#534217 100%
|
|
);
|
|
-webkit-mask:
|
|
linear-gradient(#fff 0 0) content-box,
|
|
linear-gradient(#fff 0 0);
|
|
-webkit-mask-composite: xor;
|
|
mask-composite: exclude;
|
|
animation: rotating-gold-border 8s linear infinite;
|
|
}
|
|
|
|
.mobile-gold-reveal-shell::after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 0.5);
|
|
border-radius: calc(var(--design-unit) * 6.5);
|
|
padding: calc(var(--design-unit) * 1.7);
|
|
background: conic-gradient(
|
|
from calc(var(--gold-angle) + 180deg),
|
|
rgba(255, 247, 210, 0) 0%,
|
|
rgba(255, 247, 210, 0) 66%,
|
|
rgba(255, 247, 210, 0.14) 71%,
|
|
rgba(255, 254, 244, 0.98) 75%,
|
|
rgba(255, 230, 130, 0.96) 79%,
|
|
rgba(255, 247, 210, 0.18) 84%,
|
|
rgba(255, 247, 210, 0) 90%,
|
|
rgba(255, 247, 210, 0) 100%
|
|
);
|
|
-webkit-mask:
|
|
linear-gradient(#fff 0 0) content-box,
|
|
linear-gradient(#fff 0 0);
|
|
-webkit-mask-composite: xor;
|
|
mask-composite: exclude;
|
|
animation: rotating-gold-border 2.1s linear infinite;
|
|
}
|
|
|
|
.mobile-gold-reveal-static-border {
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 2.7);
|
|
border-radius: calc(var(--design-unit) * 7);
|
|
border: calc(var(--design-unit) * 2.8) solid rgba(181, 138, 40, 0.98);
|
|
box-shadow:
|
|
inset 0 0 calc(var(--design-unit) * 7) rgba(255, 241, 181, 0.38),
|
|
0 0 calc(var(--design-unit) * 9) rgba(255, 210, 102, 0.32);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.mobile-gold-reveal-glow {
|
|
position: absolute;
|
|
inset: calc(var(--design-unit) * 1.4);
|
|
border-radius: calc(var(--design-unit) * 8);
|
|
background: radial-gradient(
|
|
circle at center,
|
|
rgba(255, 226, 92, 0.2) 0%,
|
|
rgba(219, 161, 42, 0.16) 42%,
|
|
rgba(127, 86, 13, 0.08) 62%,
|
|
transparent 82%
|
|
);
|
|
filter: blur(calc(var(--design-unit) * 1.4));
|
|
opacity: 0.42;
|
|
pointer-events: none;
|
|
animation: gold-border-pulse 1.9s ease-in-out infinite;
|
|
}
|
|
}
|
|
|
|
@theme inline {
|
|
--font-heading: var(--font-sans);
|
|
--font-sans: "Geist Variable", sans-serif;
|
|
--color-sidebar-ring: var(--sidebar-ring);
|
|
--color-sidebar-border: var(--sidebar-border);
|
|
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
--color-sidebar-accent: var(--sidebar-accent);
|
|
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
--color-sidebar-primary: var(--sidebar-primary);
|
|
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
--color-sidebar: var(--sidebar);
|
|
--color-chart-5: var(--chart-5);
|
|
--color-chart-4: var(--chart-4);
|
|
--color-chart-3: var(--chart-3);
|
|
--color-chart-2: var(--chart-2);
|
|
--color-chart-1: var(--chart-1);
|
|
--color-ring: var(--ring);
|
|
--color-input: var(--input);
|
|
--color-border: var(--border);
|
|
--color-destructive: var(--destructive);
|
|
--color-accent-foreground: var(--accent-foreground);
|
|
--color-accent: var(--accent);
|
|
--color-muted-foreground: var(--muted-foreground);
|
|
--color-muted: var(--muted);
|
|
--color-secondary-foreground: var(--secondary-foreground);
|
|
--color-secondary: var(--secondary);
|
|
--color-primary-foreground: var(--primary-foreground);
|
|
--color-primary: var(--primary);
|
|
--color-popover-foreground: var(--popover-foreground);
|
|
--color-popover: var(--popover);
|
|
--color-card-foreground: var(--card-foreground);
|
|
--color-card: var(--card);
|
|
--color-foreground: var(--foreground);
|
|
--color-background: var(--background);
|
|
--radius-sm: calc(var(--radius) * 0.6);
|
|
--radius-md: calc(var(--radius) * 0.8);
|
|
--radius-lg: var(--radius);
|
|
--radius-xl: calc(var(--radius) * 1.4);
|
|
--radius-2xl: calc(var(--radius) * 1.8);
|
|
--radius-3xl: calc(var(--radius) * 2.2);
|
|
--radius-4xl: calc(var(--radius) * 2.6);
|
|
}
|
|
|
|
.dark {
|
|
--background: oklch(0.145 0 0);
|
|
--foreground: oklch(0.985 0 0);
|
|
--card: oklch(0.205 0 0);
|
|
--card-foreground: oklch(0.985 0 0);
|
|
--popover: oklch(0.205 0 0);
|
|
--popover-foreground: oklch(0.985 0 0);
|
|
--primary: oklch(0.922 0 0);
|
|
--primary-foreground: oklch(0.205 0 0);
|
|
--secondary: oklch(0.269 0 0);
|
|
--secondary-foreground: oklch(0.985 0 0);
|
|
--muted: oklch(0.269 0 0);
|
|
--muted-foreground: oklch(0.708 0 0);
|
|
--accent: oklch(0.269 0 0);
|
|
--accent-foreground: oklch(0.985 0 0);
|
|
--destructive: oklch(0.704 0.191 22.216);
|
|
--border: oklch(1 0 0 / 10%);
|
|
--input: oklch(1 0 0 / 15%);
|
|
--ring: oklch(0.556 0 0);
|
|
--chart-1: oklch(0.87 0 0);
|
|
--chart-2: oklch(0.556 0 0);
|
|
--chart-3: oklch(0.439 0 0);
|
|
--chart-4: oklch(0.371 0 0);
|
|
--chart-5: oklch(0.269 0 0);
|
|
--sidebar: oklch(0.205 0 0);
|
|
--sidebar-foreground: oklch(0.985 0 0);
|
|
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
--sidebar-accent: oklch(0.269 0 0);
|
|
--sidebar-accent-foreground: oklch(0.985 0 0);
|
|
--sidebar-border: oklch(1 0 0 / 10%);
|
|
--sidebar-ring: oklch(0.556 0 0);
|
|
}
|