|
62 | 62 | } |
63 | 63 |
|
64 | 64 | /* ── Section titles ──────────────────────────────────────────────────────── */ |
65 | | -.events-section-title, |
66 | 65 | .projects-section-title { |
67 | 66 | font-size: 1.3rem; |
68 | 67 | font-weight: 700; |
|
77 | 76 | } |
78 | 77 |
|
79 | 78 | .events-grid { |
80 | | - display: grid; |
81 | | - grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); |
82 | | - gap: 1rem; |
| 79 | + display: flex; |
| 80 | + flex-wrap: wrap; |
| 81 | + gap: 0.6rem; |
| 82 | + justify-content: center; |
83 | 83 | } |
84 | 84 |
|
85 | | -/* ── Event card ──────────────────────────────────────────────────────────── */ |
| 85 | +/* ── Event pill button ───────────────────────────────────────────────────── */ |
86 | 86 | .event-card { |
87 | | - display: flex; |
88 | | - align-items: stretch; |
89 | | - border: 1px solid var(--border); |
90 | | - border-radius: 8px; |
| 87 | + display: inline-flex; |
| 88 | + align-items: center; |
| 89 | + gap: 0.5rem; |
| 90 | + padding: 0.5rem 0.9rem; |
| 91 | + border-radius: 999px; |
91 | 92 | text-decoration: none; |
92 | 93 | color: var(--primary); |
93 | | - background: var(--entry); |
94 | | - overflow: hidden; |
| 94 | + border: 1px solid var(--border); |
95 | 95 | transition: |
96 | | - border-color 0.2s, |
97 | | - box-shadow 0.2s, |
98 | | - transform 0.15s; |
99 | | - position: relative; |
| 96 | + border-color 0.15s, |
| 97 | + background 0.15s, |
| 98 | + color 0.15s; |
100 | 99 | } |
101 | 100 |
|
102 | 101 | .event-card:hover { |
103 | 102 | border-color: var(--primary); |
104 | | - box-shadow: 0 3px 16px rgba(0, 0, 0, 0.1); |
105 | | - transform: translateY(-2px); |
| 103 | + background: var(--entry); |
106 | 104 | } |
107 | 105 |
|
108 | | -.dark .event-card:hover { |
109 | | - box-shadow: 0 3px 16px rgba(255, 255, 255, 0.06); |
| 106 | +.event-card:hover .event-card-date { |
| 107 | + color: var(--primary); |
110 | 108 | } |
111 | 109 |
|
112 | | -/* ── Accent strip on the left ────────────────────────────────────────────── */ |
113 | | -.event-card-accent { |
114 | | - flex: 0 0 5px; |
115 | | - align-self: stretch; |
| 110 | +/* Color ring for recurring / upcoming */ |
| 111 | +.event-card::before { |
| 112 | + content: ""; |
| 113 | + flex-shrink: 0; |
| 114 | + width: 8px; |
| 115 | + height: 8px; |
| 116 | + border-radius: 50%; |
| 117 | + align-self: center; |
116 | 118 | } |
117 | 119 |
|
118 | | -.event-card-accent.recurring { |
119 | | - background: linear-gradient(180deg, #3b82f6, #6366f1); |
| 120 | +.event-card.recurring::before { |
| 121 | + background: linear-gradient(135deg, #3b82f6, #6366f1); |
120 | 122 | } |
121 | 123 |
|
122 | | -.event-card-accent.upcoming { |
123 | | - background: linear-gradient(180deg, #10b981, #22d3ee); |
| 124 | +.event-card.upcoming::before { |
| 125 | + background: linear-gradient(135deg, #10b981, #22d3ee); |
124 | 126 | } |
125 | 127 |
|
126 | | -.dark .event-card-accent.recurring { |
127 | | - background: linear-gradient(180deg, #60a5fa, #818cf8); |
| 128 | +.dark .event-card.recurring::before { |
| 129 | + background: linear-gradient(135deg, #60a5fa, #818cf8); |
128 | 130 | } |
129 | 131 |
|
130 | | -.dark .event-card-accent.upcoming { |
131 | | - background: linear-gradient(180deg, #34d399, #67e8f9); |
| 132 | +.dark .event-card.upcoming::before { |
| 133 | + background: linear-gradient(135deg, #34d399, #67e8f9); |
132 | 134 | } |
133 | 135 |
|
134 | | -/* ── Card body ───────────────────────────────────────────────────────────── */ |
135 | | -.event-card-body { |
| 136 | +.event-card-text { |
136 | 137 | display: flex; |
137 | 138 | flex-direction: column; |
138 | | - padding: 1rem 1.25rem; |
139 | | - flex: 1; |
| 139 | + gap: 0.05rem; |
140 | 140 | min-width: 0; |
141 | 141 | } |
142 | 142 |
|
143 | | -.event-card-header { |
144 | | - display: flex; |
145 | | - align-items: center; |
146 | | - gap: 0.6rem; |
147 | | - margin-bottom: 0.35rem; |
148 | | -} |
149 | | - |
150 | | -.event-card-header .event-card-badge { |
151 | | - margin-left: auto; |
152 | | -} |
153 | | - |
154 | 143 | .event-card-title { |
155 | | - font-size: 1.05rem; |
156 | | - font-weight: 700; |
| 144 | + font-size: 0.875rem; |
| 145 | + font-weight: 600; |
157 | 146 | margin: 0; |
158 | | - line-height: 1.3; |
159 | | - flex: 1; |
160 | | - min-width: 0; |
| 147 | + line-height: 1.25; |
| 148 | + white-space: nowrap; |
161 | 149 | } |
162 | 150 |
|
163 | 151 | .event-card-date { |
164 | | - font-size: 0.8rem; |
| 152 | + font-size: 0.75rem; |
165 | 153 | color: var(--secondary); |
166 | | - margin-top: 0.4rem; |
167 | 154 | font-weight: 500; |
168 | | -} |
169 | | - |
170 | | -/* ── Event badges ────────────────────────────────────────────────────────── */ |
171 | | -.event-card-badge { |
172 | | - font-size: 0.65rem; |
173 | | - font-weight: 700; |
174 | | - text-transform: uppercase; |
175 | | - letter-spacing: 0.06em; |
176 | | - padding: 0.15rem 0.5rem; |
177 | | - border-radius: 4px; |
178 | | - white-space: nowrap; |
179 | | -} |
180 | | - |
181 | | -.event-card-badge.recurring { |
182 | | - background: rgba(59, 130, 246, 0.1); |
183 | | - color: #2563eb; |
184 | | - border: 1px solid rgba(59, 130, 246, 0.25); |
185 | | -} |
186 | | - |
187 | | -.dark .event-card-badge.recurring { |
188 | | - background: rgba(96, 165, 250, 0.12); |
189 | | - color: #93c5fd; |
190 | | - border-color: rgba(96, 165, 250, 0.3); |
191 | | -} |
192 | | - |
193 | | -.event-card-badge.upcoming { |
194 | | - background: rgba(16, 185, 129, 0.1); |
195 | | - color: #059669; |
196 | | - border: 1px solid rgba(16, 185, 129, 0.25); |
197 | | -} |
198 | | - |
199 | | -.dark .event-card-badge.upcoming { |
200 | | - background: rgba(52, 211, 153, 0.12); |
201 | | - color: #6ee7b7; |
202 | | - border-color: rgba(52, 211, 153, 0.3); |
| 155 | + line-height: 1.25; |
203 | 156 | } |
204 | 157 |
|
205 | 158 | /* ── View all link ───────────────────────────────────────────────────────── */ |
206 | 159 | .events-view-all { |
207 | | - font-size: 0.9rem; |
| 160 | + font-size: 0.85rem; |
208 | 161 | font-weight: 600; |
209 | 162 | color: var(--secondary); |
210 | 163 | text-decoration: none; |
211 | 164 | transition: |
212 | 165 | color 0.15s, |
213 | 166 | transform 0.15s; |
214 | 167 | display: inline-block; |
215 | | - margin-top: 1rem; |
| 168 | + margin-top: 0.6rem; |
216 | 169 | } |
217 | 170 |
|
218 | 171 | .events-view-all:hover { |
|
0 commit comments