Repository navigation
Expand file tree
/
Copy pathstyles.css
More file actions
193 lines (182 loc) · 12.5 KB
/
Copy pathstyles.css
File metadata and controls
193 lines (182 loc) · 12.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
:root {
--bg: #f1f5fb;
--surface: rgba(255,255,255,.94);
--surface-2: #edf2f9;
--surface-3: #e5ebf5;
--text: #10172a;
--muted: #6d778c;
--line: #d5deeb;
--primary: #6547f5;
--primary-2: #8a61ff;
--accent: #ff8a65;
--success: #0aa678;
--danger: #e84d63;
--live: #ff334f;
--shadow: 0 22px 60px rgba(36,45,72,.12);
--radius: 24px;
}
body.dark {
--bg: #090e1e;
--surface: rgba(17,24,47,.95);
--surface-2: #18213c;
--surface-3: #212c4c;
--text: #f8fafc;
--muted: #9aa5bb;
--line: #2c3857;
--primary: #8d73ff;
--primary-2: #a98aff;
--accent: #ff9b7c;
--success: #38d6a3;
--danger: #ff7182;
--shadow: 0 25px 70px rgba(0,0,0,.3);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
margin: 0;
min-height: 100vh;
font-family: "Manrope", system-ui, sans-serif;
color: var(--text);
background:
radial-gradient(circle at top left, rgba(101,71,245,.18), transparent 29%),
radial-gradient(circle at 88% 12%, rgba(255,138,101,.11), transparent 22%),
var(--bg);
}
button, select { font: inherit; }
button { color: inherit; cursor: pointer; }
.page-shell { width: min(1240px, calc(100% - 28px)); margin: auto; padding: 20px 0 36px; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:5px 2px 22px; }
.brand { display:flex; align-items:center; gap:12px; color:inherit; text-decoration:none; }
.brand-mark { width:48px; height:48px; display:grid; place-items:center; border-radius:16px; color:white; background:linear-gradient(135deg,var(--primary),var(--primary-2)); box-shadow:var(--shadow); }
.brand strong { display:block; font-size:18px; }
.brand small { display:block; margin-top:2px; color:var(--muted); }
.header-actions { display:flex; align-items:center; gap:9px; }
.icon-button { width:42px; height:42px; border:1px solid var(--line); border-radius:14px; background:var(--surface); font-size:20px; }
.sync-pill { display:flex; align-items:center; gap:8px; min-height:42px; padding:0 13px; border:1px solid var(--line); border-radius:14px; color:var(--muted); background:var(--surface); font-size:12px; font-weight:700; }
.sync-dot { width:8px; height:8px; border-radius:50%; background:var(--muted); }
.sync-pill.live .sync-dot { background:var(--live); box-shadow:0 0 0 5px rgba(255,51,79,.13); animation:pulse 1.3s infinite; }
.sync-pill.good .sync-dot { background:var(--success); }
.sync-pill.error .sync-dot { background:var(--danger); }
@keyframes pulse { 50% { opacity:.4; } }
.hero { display:grid; grid-template-columns:1.4fr .75fr; align-items:end; gap:28px; padding:34px; border:1px solid var(--line); border-radius:32px; background:linear-gradient(135deg,rgba(101,71,245,.13),rgba(255,138,101,.08)),var(--surface); box-shadow:var(--shadow); }
.eyebrow { display:inline-block; margin-bottom:8px; color:var(--primary); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.hero h1 { max-width:760px; margin:0; font-size:clamp(35px,6vw,64px); line-height:.99; letter-spacing:-.055em; }
.hero p { max-width:650px; margin:19px 0 0; color:var(--muted); line-height:1.7; }
.hero-card { min-height:175px; display:flex; flex-direction:column; justify-content:flex-end; padding:24px; border-radius:24px; color:white; background:linear-gradient(145deg,#111827,#312e81); box-shadow:var(--shadow); }
.hero-card span,.hero-card small { opacity:.72; }
.hero-card strong { margin:8px 0; font-size:23px; }
.hero-score { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; }
.live-badge { display:inline-flex; align-items:center; gap:7px; width:max-content; padding:6px 9px; border-radius:999px; color:white; background:var(--live); font-size:11px; font-weight:800; text-transform:uppercase; }
.live-badge::before { content:""; width:6px; height:6px; border-radius:50%; background:white; animation:pulse 1s infinite; }
.tabs { position:sticky; top:10px; z-index:20; width:max-content; max-width:100%; display:flex; gap:6px; margin:24px auto; padding:6px; overflow-x:auto; border:1px solid var(--line); border-radius:18px; background:color-mix(in srgb,var(--surface) 92%,transparent); backdrop-filter:blur(18px); box-shadow:0 10px 30px rgba(15,23,42,.08); }
.tab { border:0; border-radius:13px; padding:11px 18px; color:var(--muted); background:transparent; font-weight:700; white-space:nowrap; }
.tab.is-active { color:white; background:linear-gradient(135deg,var(--primary),var(--primary-2)); }
.view { display:none; }
.view.is-active { display:block; animation:fade .22s ease; }
@keyframes fade { from{opacity:0;transform:translateY(5px)} to{opacity:1;transform:none} }
.dashboard-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:22px; }
.panel { padding:24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:var(--shadow); }
.panel.span-2 { grid-column:1/-1; }
.panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:20px; }
.panel-heading h2 { margin:0; font-size:25px; letter-spacing:-.035em; }
.panel-heading p { margin:8px 0 0; color:var(--muted); }
.muted { color:var(--muted); font-size:12px; }
.spotlight { min-height:320px; color:white; border:0; background:radial-gradient(circle at 80% 10%,rgba(255,255,255,.17),transparent 28%),linear-gradient(135deg,#4f35d1,#11182f); }
.spotlight .eyebrow,.spotlight .muted { color:rgba(255,255,255,.7); }
.loading-card { min-height:260px; display:grid; place-items:center; color:rgba(255,255,255,.7); }
.feature-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.feature-head h2 { margin:0; font-size:30px; }
.feature-teams { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:14px; min-height:155px; }
.feature-team { display:flex; align-items:center; gap:12px; font-size:24px; font-weight:800; }
.feature-team:last-child { justify-content:flex-end; text-align:right; }
.flag-img { width:30px; height:20px; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px rgba(0,0,0,.08); vertical-align:middle; }
.feature-team .flag-img { width:42px; height:28px; }
.score-centre { text-align:center; }
.big-score { display:block; font-size:34px; font-weight:800; }
.match-clock { color:rgba(255,255,255,.7); font-size:12px; font-weight:700; }
.meta-row { display:flex; justify-content:space-between; gap:12px; padding-top:15px; border-top:1px solid rgba(255,255,255,.16); color:rgba(255,255,255,.72); font-size:12px; }
.stats-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.stat-card { padding:18px; border-radius:17px; background:var(--surface-2); }
.stat-card strong { display:block; font-size:31px; }
.stat-card span { color:var(--muted); font-size:12px; }
.fixture-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.fixture-card { padding:16px; border:1px solid var(--line); border-radius:18px; background:var(--surface-2); }
.fixture-card small { display:flex; justify-content:space-between; gap:8px; margin-bottom:12px; color:var(--muted); }
.fixture-team { display:flex; align-items:center; justify-content:space-between; gap:9px; padding:7px 0; font-weight:700; }
.team-label { display:flex; align-items:center; gap:8px; min-width:0; }
.team-label span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.text-button { border:0; color:var(--primary); background:transparent; font-weight:800; }
.bracket-panel { overflow:hidden; }
.bracket-heading { align-items:center; }
.segmented { display:flex; flex-wrap:wrap; gap:4px; padding:4px; border-radius:13px; background:var(--surface-2); }
.segmented button { border:0; border-radius:9px; padding:7px 10px; color:var(--muted); background:transparent; font-size:12px; font-weight:800; }
.segmented button.is-active { color:white; background:var(--primary); }
.bracket-wrap { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(230px,1fr); gap:16px; align-items:start; overflow-x:auto; padding:8px 2px 12px; }
.round-column { min-width:230px; }
.round-title { position:sticky; top:0; z-index:2; margin-bottom:12px; padding:8px 0; color:var(--muted); background:var(--surface); font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.round-stack { display:grid; gap:10px; }
.bracket-match { padding:12px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); }
.bracket-match.live { border-color:var(--live); box-shadow:0 0 0 3px rgba(255,51,79,.08); }
.bracket-match .winner { color:var(--primary); }
.match-note { margin-top:8px; color:var(--muted); font-size:10px; }
.matches-heading { align-items:center; }
.match-controls { display:flex; flex-wrap:wrap; gap:9px; }
.select-wrap select,.toggle-button { min-height:42px; border:1px solid var(--line); border-radius:13px; padding:9px 12px; color:var(--text); background:var(--surface-2); }
.toggle-button[aria-pressed="true"] { color:white; border-color:var(--primary); background:var(--primary); }
.match-list { display:grid; gap:12px; }
.date-heading { margin:18px 2px 3px; color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.match-row { display:grid; grid-template-columns:125px minmax(0,1fr) auto; align-items:center; gap:16px; padding:15px; border:1px solid var(--line); border-radius:17px; background:var(--surface-2); }
.match-row.live { border-color:var(--live); box-shadow:0 0 0 3px rgba(255,51,79,.08); }
.match-date { color:var(--muted); font-size:11px; font-weight:700; }
.match-versus { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:10px; font-weight:800; }
.match-versus .away { justify-content:flex-end; text-align:right; }
.score-box { min-width:54px; text-align:center; font-size:18px; }
.match-location { max-width:180px; color:var(--muted); font-size:11px; text-align:right; }
.empty-state { padding:35px; color:var(--muted); text-align:center; }
.group-tabs { display:flex; gap:6px; margin-bottom:18px; padding-bottom:4px; overflow-x:auto; }
.group-tab { min-width:44px; border:1px solid var(--line); border-radius:12px; padding:9px 12px; color:var(--muted); background:var(--surface-2); font-weight:800; }
.group-tab.is-active { color:white; border-color:var(--primary); background:var(--primary); }
.groups-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.group-card { overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--surface-2); }
.group-title { padding:16px; font-weight:800; }
.standings { width:100%; border-collapse:collapse; }
.standings th,.standings td { padding:11px 12px; border-top:1px solid var(--line); text-align:right; font-size:12px; }
.standings th:first-child,.standings td:first-child { text-align:left; }
.standings th { color:var(--muted); font-size:9px; letter-spacing:.07em; }
.standings .team-cell { display:flex; align-items:center; gap:8px; font-weight:700; }
.qualified td:first-child { color:var(--success); }
.group-card.hidden-group { display:none; }
footer { display:flex; justify-content:space-between; gap:15px; padding:24px 4px 0; color:var(--muted); font-size:11px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:900px) {
.hero { grid-template-columns:1fr; }
.dashboard-grid { grid-template-columns:1fr; }
.panel.span-2 { grid-column:auto; }
.fixture-grid { grid-template-columns:repeat(2,1fr); }
.groups-grid { grid-template-columns:1fr; }
}
@media (max-width:620px) {
.page-shell { width:min(100% - 18px,1240px); padding-top:10px; }
.brand small,.sync-pill { display:none; }
.hero { padding:23px 19px; border-radius:24px; }
.hero h1 { font-size:38px; }
.hero p { font-size:14px; }
.tabs { width:100%; justify-content:space-between; }
.tab { flex:1; padding:10px 7px; font-size:12px; }
.panel { padding:18px; }
.panel-heading { flex-direction:column; }
.fixture-grid { grid-template-columns:1fr; }
.feature-head h2 { font-size:26px; }
.feature-teams { min-height:165px; gap:7px; }
.feature-team { flex-direction:column; font-size:18px; text-align:center; }
.feature-team:last-child { flex-direction:column-reverse; text-align:center; }
.big-score { font-size:27px; }
.match-row { grid-template-columns:1fr; gap:8px; }
.match-location { max-width:none; text-align:left; }
.match-versus { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); }
.matches-heading { align-items:flex-start; }
.match-controls { width:100%; }
.match-controls > * { flex:1; }
.select-wrap select { width:100%; }
footer { flex-direction:column; }
}