- add generated dark-gold WebP assets for PC/mobile backgrounds, cards, dialogs, tabs, mailbox, VS and bet buttons - apply the new assets across player home, match detail, outright cards, modals, wallet/profile/detail screens and bet slip controls - simplify confirm dialogs and reuse bet button resources for normal/pressed states - hide mobile announcement center, tighten mobile bet list layout, and remove extra dark page backgrounds/scrollbar styling - cache and deduplicate outright market loading to speed up repeated tab/detail navigation - document player image-generation constraints in AGENTS.md
236 lines
5.5 KiB
CSS
236 lines
5.5 KiB
CSS
/* ═══════════════════════════════════════════════════════════
|
|
Desktop Global layout structure
|
|
Style: Modern Dark + Gold Accent — layered depth + glassmorphism
|
|
═══════════════════════════════════════════════════════════ */
|
|
|
|
.desktop-shell {
|
|
position: fixed;
|
|
inset: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
background-color: #0d0b08;
|
|
background-image:
|
|
radial-gradient(ellipse 90% 68% at 50% 0%, rgba(246, 210, 108, 0.14), transparent 58%),
|
|
linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.58)),
|
|
url('../../assets/images/generated/pc-global-bg-v1.webp');
|
|
background-size: cover;
|
|
background-position: center;
|
|
background-attachment: fixed;
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Subtle ambient overlay for depth */
|
|
.desktop-shell::after {
|
|
content: '';
|
|
position: fixed;
|
|
inset: 0;
|
|
background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(255, 221, 128, 0.08) 0%, transparent 60%);
|
|
pointer-events: none;
|
|
z-index: 0;
|
|
}
|
|
|
|
.desktop-header-wrap {
|
|
flex-shrink: 0;
|
|
height: var(--desktop-header-h);
|
|
background: #12100c url('../../assets/images/generated/pc-top-nav-bg-v1.webp') center / 100% 100% no-repeat;
|
|
border-bottom: 0;
|
|
z-index: var(--z-header);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 0 20px;
|
|
transition: background var(--duration-normal) var(--ease-smooth);
|
|
}
|
|
|
|
.desktop-marquee-wrap {
|
|
flex-shrink: 0;
|
|
z-index: var(--z-sticky);
|
|
border-bottom: 1px solid var(--border);
|
|
background: rgba(26, 24, 19, 0.78);
|
|
backdrop-filter: var(--blur-sm);
|
|
-webkit-backdrop-filter: var(--blur-sm);
|
|
}
|
|
|
|
.desktop-shell.betslip-hidden {
|
|
--desktop-right-betslip-w: 0px;
|
|
}
|
|
|
|
.desktop-shell.betslip-collapsed {
|
|
--desktop-right-betslip-w: var(--desktop-right-betslip-collapsed-w);
|
|
}
|
|
|
|
.desktop-body {
|
|
flex: 1;
|
|
display: flex;
|
|
min-height: 0;
|
|
overflow: hidden;
|
|
position: relative;
|
|
z-index: var(--z-base);
|
|
}
|
|
|
|
.desktop-main-container {
|
|
flex: 1;
|
|
display: flex;
|
|
min-height: 0;
|
|
min-width: 0;
|
|
overflow: hidden;
|
|
position: relative;
|
|
}
|
|
|
|
/* ── Betting Layout: Sports bar + Left Sidebar + Center View + Right Betslip ── */
|
|
.desktop-layout-betting-wrap {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 100%;
|
|
height: 100%;
|
|
min-height: 0;
|
|
}
|
|
|
|
.desktop-betting-sports-row {
|
|
flex-shrink: 0;
|
|
width: 100%;
|
|
padding: 0 16px;
|
|
border-bottom: 1px solid var(--border);
|
|
background: rgba(26, 24, 19, 0.76);
|
|
backdrop-filter: var(--blur-sm);
|
|
-webkit-backdrop-filter: var(--blur-sm);
|
|
}
|
|
|
|
.desktop-layout-betting {
|
|
display: grid;
|
|
grid-template-columns: var(--desktop-left-sidebar-w) 1fr;
|
|
flex: 1;
|
|
width: 100%;
|
|
min-height: 0;
|
|
}
|
|
|
|
.desktop-betting-left {
|
|
border-right: 1px solid var(--border);
|
|
background: rgba(26, 24, 19, 0.56);
|
|
backdrop-filter: var(--blur-sm);
|
|
-webkit-backdrop-filter: var(--blur-sm);
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.desktop-betting-center {
|
|
overflow-y: auto;
|
|
padding: var(--space-4);
|
|
min-width: 0;
|
|
}
|
|
|
|
.desktop-betting-center.is-betting-detail {
|
|
padding: 0;
|
|
}
|
|
|
|
/* ── Account Layout: full-width records center ── */
|
|
.desktop-layout-account {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 100%;
|
|
height: 100%;
|
|
min-height: 0;
|
|
}
|
|
|
|
.desktop-account-center {
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex: 1;
|
|
min-width: 0;
|
|
min-height: 0;
|
|
overflow: hidden;
|
|
padding: var(--space-7) var(--space-10) var(--space-10);
|
|
}
|
|
|
|
.desktop-account-center > .desktop-records-page {
|
|
flex: 1;
|
|
min-height: 0;
|
|
}
|
|
|
|
.desktop-account-center > .desktop-records-page.profile-page,
|
|
.desktop-account-center > .desktop-records-page.edit-page {
|
|
overflow-y: auto;
|
|
height: auto;
|
|
max-height: 100%;
|
|
}
|
|
|
|
.desktop-account-center > .desktop-account-page {
|
|
flex: 1;
|
|
min-height: 0;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.desktop-layout-hub-outer {
|
|
display: flex;
|
|
flex: 1;
|
|
width: 100%;
|
|
min-height: 0;
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* ── Marketing / Home Layout: Single Column centered ── */
|
|
.desktop-layout-marketing {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow-y: auto;
|
|
align-items: center;
|
|
padding: var(--space-5);
|
|
-ms-overflow-style: none; /* IE and Edge */
|
|
scrollbar-width: none; /* Firefox */
|
|
}
|
|
|
|
.desktop-layout-marketing::-webkit-scrollbar {
|
|
display: none; /* Chrome, Safari, Opera */
|
|
}
|
|
|
|
.desktop-marketing-content {
|
|
width: 100%;
|
|
max-width: 1400px;
|
|
}
|
|
|
|
/* ── Hub Layout: Left Sidebar (List) + Right Outlet (Detail) ── */
|
|
.desktop-layout-hub {
|
|
display: grid;
|
|
grid-template-columns: 320px 1fr;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
.desktop-hub-left {
|
|
border-right: 1px solid var(--border);
|
|
background: var(--desktop-sidebar-panel-bg);
|
|
backdrop-filter: var(--blur-sm);
|
|
-webkit-backdrop-filter: var(--blur-sm);
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.desktop-hub-right {
|
|
overflow-y: auto;
|
|
padding: var(--space-5);
|
|
background: rgba(18, 16, 12, 0.18);
|
|
}
|
|
|
|
/* ── Auth Layout: Centered container ── */
|
|
.desktop-layout-auth {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow-y: auto;
|
|
padding: var(--space-10);
|
|
}
|
|
|
|
.desktop-auth-card {
|
|
width: 100%;
|
|
max-width: 440px;
|
|
padding: 30px;
|
|
background: rgba(20, 20, 20, 0.95);
|
|
border: 1px solid var(--border-gold-soft);
|
|
border-radius: var(--radius-lg);
|
|
box-shadow: var(--shadow-lg), var(--glow-gold);
|
|
}
|