PluginProbe
PowerPress Podcasting plugin by Blubrry / 11.17.2
PowerPress Podcasting plugin by Blubrry v11.17.2
11.17.9 11.17.8 11.17.7 11.17.6 11.17.4 11.17.3 11.17.2 11.17.1 11.17 11.16.11 11.16.10 11.16.9 11.16.8 11.16.7 11.16.6 11.16.5 11.16.4 11.16.3 11.16.2 11.16.1 11.9.13 11.9.14 11.9.15 11.9.16 11.9.17 All 383 releases
powerpress / css / components / program-card.css

program-card.css in PowerPress Podcasting plugin by Blubrry 11.17.2, at css/components/program-card.css

442 lines 8.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ================================
2 PP-PROGRAM-CARD Component
3 ================================
4
5 program/show info card for program summary metabox
6
7 requires: css/variables.css
8
9 TABLE OF CONTENTS
10 -----------------
11 1. CONTAINER
12 2. HEADER
13 3. BODY
14 4. CONTENT
15 5. FOOTER
16 6. EPISODE COUNT
17 7. ACTIONS
18 8. NEW EPISODE BUTTON
19
20 BEM Block: .pp-program-card
21 Elements: __header, __body, __content, __footer, __actions, __episode-count
22
23 ================================ */
24
25
26 /* =================
27 1. CONTAINER
28 ================= */
29
30 .pp-settings-program-summary {
31 margin-bottom: 2em;
32 font-size: 15px;
33 }
34
35 .pp-program-row {
36 margin-top: 1em;
37 }
38
39 .pp-program-card__actions {
40 display: flex;
41 align-items: center;
42 justify-content: center;
43 }
44
45 /* wrapper container */
46 .pp-program-summary {
47 font-size: 15px;
48 }
49
50 /* show info card */
51 .pp-program-card {
52 background: var(--pp-color-white);
53 border: 1px solid var(--pp-color-gray-300);
54 border-radius: 12px;
55 padding: 1em;
56 height: 100%;
57 font-size: 15px;
58 display: flex;
59 flex-direction: column;
60 }
61
62
63 /* ==============
64 2. HEADER
65 ============== */
66
67 .pp-program-card__header {
68 display: flex;
69 justify-content: space-between;
70 align-items: center;
71 gap: 1em;
72 margin-bottom: 0.5em;
73 padding-bottom: 0.5em;
74 border-bottom: 1px solid var(--pp-color-gray-200);
75 }
76
77 .pp-program-card__header .pp-heading {
78 margin: 0;
79 font-size: 1.1em;
80 flex: 1;
81 min-width: 0;
82 overflow: hidden;
83 text-overflow: ellipsis;
84 white-space: nowrap;
85 }
86
87 .pp-episode-count {
88 font-weight: bold;
89 font-size: 1.1em;
90 color: var(--pp-color-primary);
91 }
92
93 @media (max-width: 1200px) {
94 .pp-program-card__header .pp-heading {
95 font-size: 1.05em;
96 }
97 }
98
99 @media (max-width: 960px) {
100 .pp-program-card__header .pp-heading {
101 font-size: 1em;
102 }
103 }
104
105 @media (max-width: 768px) {
106 .pp-program-card__header .pp-heading {
107 font-size: 1em;
108 }
109 }
110
111 @media (max-width: 480px) {
112 .pp-program-card {
113 padding: 0.75em;
114 }
115 .pp-program-card__header {
116 flex-direction: column;
117 align-items: center;
118 text-align: center;
119 gap: 0.5em;
120 }
121 .pp-program-card__header .pp-heading {
122 font-size: 1.1em;
123 white-space: normal;
124 text-overflow: clip;
125 overflow: visible;
126 }
127 }
128
129
130 /* ============
131 3. BODY
132 ============ */
133
134 .pp-program-card__body {
135 display: flex;
136 gap: 1em;
137 align-items: stretch;
138 flex: 1;
139 }
140
141 .pp-program-card__body #welcome-preview-image {
142 width: 150px;
143 height: 150px;
144 max-width: 360px;
145 max-height: 360px;
146 object-fit: cover;
147 border-radius: 4px;
148 flex-shrink: 0;
149 align-self: flex-start;
150 }
151
152 @media (max-width: 480px) {
153 .pp-program-card__body {
154 flex-direction: column;
155 align-items: center;
156 text-align: center;
157 }
158 .pp-program-card__body #welcome-preview-image {
159 margin: 0 auto 1em auto;
160 }
161 }
162
163
164 /* ===============
165 4. CONTENT
166 =============== */
167
168 .pp-program-card__content {
169 flex: 1;
170 display: flex;
171 flex-direction: column;
172 min-width: 0;
173 text-align: left;
174 }
175
176 .pp-program-card__label {
177 font-weight: 600;
178 color: var(--pp-color-gray-800);
179 }
180
181 .pp-program-card__author {
182 margin: 0 0 0.75em 0;
183 color: var(--pp-color-gray-700);
184 font-size: 0.9em;
185 }
186
187 .pp-program-card__main {
188 flex: 1;
189 overflow: hidden;
190 margin-bottom: 0.75em;
191 }
192
193 .pp-program-card__description {
194 overflow: hidden;
195 text-overflow: ellipsis;
196 display: -webkit-box;
197 -webkit-line-clamp: 2;
198 -webkit-box-orient: vertical;
199 line-height: 1.4;
200 margin: 0;
201 color: var(--pp-color-gray-700);
202 font-size: 0.9em;
203 }
204
205 @media (max-width: 1200px) {
206 .pp-program-card__author,
207 .pp-program-card__description,
208 .pp-program-card__category {
209 font-size: 0.9em;
210 }
211 }
212
213 @media (max-width: 960px) {
214 .pp-program-card__author,
215 .pp-program-card__description,
216 .pp-program-card__category {
217 font-size: 0.88em;
218 }
219 }
220
221 @media (max-width: 768px) {
222 .pp-program-card__author,
223 .pp-program-card__description,
224 .pp-program-card__category,
225 .pp-program-card__dates {
226 font-size: 0.88em;
227 }
228 }
229
230 @media (max-width: 480px) {
231 .pp-program-card__content {
232 text-align: center;
233 }
234 }
235
236
237 /* ==============
238 5. FOOTER
239 ============== */
240
241 .pp-program-card__footer {
242 margin-top: auto;
243 padding-top: 0.5em;
244 border-top: 1px solid var(--pp-color-gray-200);
245 }
246
247 .pp-program-card__footer p {
248 margin-top: 0.25ch;
249 }
250
251 .pp-program-card__category {
252 margin: 0 0 0.5em 0;
253 font-size: 0.9em;
254 color: var(--pp-color-gray-700);
255 }
256
257 .pp-program-card__dates {
258 font-size: 0.85em;
259 color: var(--pp-color-gray-700);
260 }
261
262 .pp-program-card__dates span {
263 display: inline;
264 }
265
266 .pp-program-card__date-separator {
267 margin: 0 0.75em;
268 color: var(--pp-color-gray-400);
269 }
270
271 .pp-program-card__last-update,
272 .pp-program-card__created-date {
273 white-space: nowrap;
274 }
275
276 @media (max-width: 1200px) {
277 .pp-program-card__dates {
278 font-size: 0.85em;
279 }
280 }
281
282 @media (max-width: 960px) {
283 .pp-program-card__dates {
284 font-size: 0.82em;
285 }
286 .pp-program-card__date-separator {
287 display: none;
288 }
289 .pp-program-card__dates span {
290 display: block;
291 }
292 }
293
294 @media (max-width: 480px) {
295 .pp-program-card__footer {
296 padding-top: 0.5em;
297 }
298 .pp-program-card__dates {
299 display: block;
300 font-size: 0.8em;
301 }
302 .pp-program-card__dates span {
303 display: block;
304 margin: 0.25em 0;
305 }
306 .pp-program-card__date-separator {
307 display: none;
308 }
309 }
310
311
312 /* ====================
313 6. EPISODE COUNT
314 ==================== */
315
316 .pp-program-card__episode-count {
317 flex-shrink: 0;
318 text-align: center;
319 padding: 0.75em 1em;
320 background: var(--pp-color-primary-light);
321 border-radius: 4px;
322 display: flex;
323 flex-direction: column;
324 align-items: center;
325 gap: 0.25em;
326 }
327
328 .pp-program-card__episode-count .pp-program-card__label {
329 font-size: 0.8em;
330 color: var(--pp-color-gray-600);
331 }
332
333 .pp-program-card__episode-count .pp-episode-count {
334 font-size: 1.5em;
335 font-weight: bold;
336 color: var(--pp-color-primary);
337 }
338
339 .pp-settings-podcast-status {
340 margin-top: 2ch;
341 }
342
343 @media (max-width: 480px) {
344 .pp-program-card__episode-count {
345 display: inline-flex;
346 flex-direction: row;
347 padding: 0.25em 0.75em;
348 background: var(--pp-color-primary-light);
349 border-radius: 20px;
350 gap: 0.3em;
351 }
352 .pp-program-card__episode-count .pp-program-card__label {
353 font-size: 0.85em;
354 color: var(--pp-color-gray-600);
355 }
356 .pp-program-card__episode-count .pp-episode-count {
357 font-size: 0.85em;
358 font-weight: bold;
359 color: var(--pp-color-primary);
360 }
361 }
362
363 /* settings page override */
364 #powerpress_settings .pp-program-card__episode-count {
365 width: 16%;
366 margin-left: 3em;
367 }
368
369 @media (max-width: 480px) {
370 #powerpress_settings .pp-program-card__episode-count {
371 width: auto;
372 margin-left: 0;
373 }
374 }
375
376
377 /* ===============
378 7. ACTIONS
379 =============== */
380
381 .pp-program-card__actions .pp_button-container {
382 background-color: var(--pp-color-primary);
383 color: var(--pp-color-white);
384 padding: 1em 2em;
385 border-radius: 4px;
386 font-weight: 600;
387 text-align: center;
388 white-space: nowrap;
389 }
390
391 .pp-program-card__actions a {
392 text-decoration: none;
393 }
394
395
396 /* =========================
397 8. NEW EPISODE BUTTON
398 ========================= */
399
400 .pp-program-card__new-post-btn {
401 display: inline-flex;
402 align-items: center;
403 gap: 4px;
404 padding: 0 12px;
405 height: 32px;
406 min-height: 32px;
407 background: var(--pp-color-primary);
408 color: var(--pp-color-white);
409 border: 1px solid var(--pp-color-primary);
410 border-radius: 4px;
411 text-decoration: none;
412 font-size: 13px;
413 font-weight: 500;
414 white-space: nowrap;
415 cursor: pointer;
416 transition: background 0.15s;
417 box-sizing: border-box;
418 }
419
420 .pp-program-card__new-post-btn:hover {
421 background: var(--pp-color-primary-hover);
422 border-color: var(--pp-color-primary-hover);
423 color: var(--pp-color-white);
424 }
425
426 .pp-program-card__new-post-btn .dashicons {
427 font-size: 18px;
428 width: 18px;
429 height: 18px;
430 line-height: 18px;
431 }
432
433 @media (max-width: 600px) {
434 .pp-program-card__new-post-btn .pp-program-card__new-post-text {
435 display: none;
436 }
437 .pp-program-card__new-post-btn {
438 padding: 6px 8px;
439 }
440 }
441
442