/* * PLAYME Dark Theme — Default CSS for Marp presentations * * This file is referenced by PLAYME.md via inline style block. * Edit this to customise colours, fonts, spacing, etc. * Then regenerate: marp PLAYME.md -o PLAYME.html --allow-local-files */ /* ── Colour palette ── */ :root { --color-bg: #0b0d17; --color-bg-card: #151827; --color-accent: #6c63ff; --color-accent2: #00d4aa; --color-text: #e8eaf6; --color-muted: #8892b0; } /* ── Base slide ── */ section { background: linear-gradient(135deg, #0b0d17 0%, #151827 50%, #1a1040 100%); color: var(--color-text); font-family: 'Inter', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif; font-size: 28px; letter-spacing: -0.01em; padding: 60px 80px; } /* ── Page number styling ── */ section::after { background: linear-gradient(90deg, var(--color-accent), var(--color-accent2)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-weight: 600; font-size: 18px; } /* ── Headings ── */ h1 { background: linear-gradient(135deg, #ffffff 0%, #c7d2fe 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-weight: 800; font-size: 2.8em; line-height: 1.1; margin-bottom: 0.3em; } h2 { background: linear-gradient(90deg, var(--color-accent), var(--color-accent2)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-weight: 700; font-size: 2em; margin-bottom: 0.6em; text-transform: uppercase; letter-spacing: 0.05em; } h3 { color: var(--color-muted); font-weight: 300; font-size: 1.3em; margin-top: 0; } /* ── Lists — styled as card rows ── */ ul { list-style: none; padding: 0; margin: 0; } li { padding: 14px 24px; margin: 10px 0; background: rgba(108, 99, 255, 0.08); border-left: 3px solid var(--color-accent); border-radius: 0 12px 12px 0; font-size: 0.95em; color: var(--color-text); } li strong { color: var(--color-accent2); } /* ── Emphasis ── */ em { color: var(--color-muted); font-style: normal; } /* ── Blockquotes — callout style ── */ blockquote { border-left: 4px solid var(--color-accent2); background: rgba(0, 212, 170, 0.06); padding: 16px 24px; border-radius: 0 12px 12px 0; margin: 20px 0; color: var(--color-text); } /* ── Code blocks ── */ pre { background: rgba(0, 0, 0, 0.4); border: 1px solid rgba(108, 99, 255, 0.2); border-radius: 12px; padding: 20px; } code { color: var(--color-accent2); font-size: 0.85em; } /* ── Tables ── */ table { border-collapse: collapse; width: 100%; margin: 16px 0; } th { background: rgba(108, 99, 255, 0.15); color: var(--color-accent2); font-weight: 600; text-transform: uppercase; font-size: 0.8em; letter-spacing: 0.05em; padding: 12px 16px; text-align: left; } td { padding: 10px 16px; border-bottom: 1px solid rgba(108, 99, 255, 0.1); color: var(--color-text); } /* ── Images — fit within slides ── */ img { max-height: 70%; border-radius: 12px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4); } /* ══════════════════════════════════ SPECIAL SLIDE CLASSES Use with ══════════════════════════════════ */ /* ── Title slide ── */ section.title-slide { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(ellipse at 30% 50%, #1a1060 0%, #0b0d17 60%), linear-gradient(135deg, #0b0d17, #151827); } section.title-slide::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle at 70% 30%, rgba(108, 99, 255, 0.15) 0%, transparent 50%), radial-gradient(circle at 30% 70%, rgba(0, 212, 170, 0.1) 0%, transparent 50%); z-index: 0; } section.title-slide h1 { font-size: 3.5em; z-index: 1; } section.title-slide h3 { font-size: 1.4em; z-index: 1; } section.title-slide p { color: var(--color-muted); font-size: 0.9em; z-index: 1; } /* ── End / closing slide ── */ section.end-slide { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(ellipse at 50% 50%, #1a1060 0%, #0b0d17 70%); } section.end-slide h1 { font-size: 3em; background: linear-gradient(90deg, var(--color-accent), var(--color-accent2)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } section.end-slide p { color: var(--color-muted); font-size: 1.1em; } /* ── Section divider slide ── */ section.divider { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: linear-gradient(135deg, #0b0d17 0%, #1a1060 100%); } section.divider h2 { font-size: 2.5em; } /* ── Image showcase slide ── */ section.showcase { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; } section.showcase img { max-height: 60%; margin: 20px 0; }