|
|
|
@ -1,15 +1,14 @@
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* BMAD Method Documentation - Custom Styles for Starlight
|
|
|
|
* BMAD Method Documentation - Custom Styles for Starlight
|
|
|
|
* Dark theme matching bmadcode.com Ghost blog
|
|
|
|
* Electric Blue theme optimized for dark mode
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Design tokens from Ghost theme:
|
|
|
|
* CSS Variable Mapping:
|
|
|
|
* Background: #0a0a0a | Surface: #1a1a1a | Border: #262626
|
|
|
|
* Docusaurus → Starlight
|
|
|
|
* Accent: #3b82f6 | Gold: #d4a853 | Text: #fafafa/#a1a1a1/#666666
|
|
|
|
* --ifm-color-primary → --sl-color-accent
|
|
|
|
|
|
|
|
* --ifm-background-color → --sl-color-bg
|
|
|
|
|
|
|
|
* --ifm-font-color-base → --sl-color-text
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
/* Google Fonts - match Ghost blog typography */
|
|
|
|
|
|
|
|
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* ============================================
|
|
|
|
/* ============================================
|
|
|
|
COLOR PALETTE - Light Mode
|
|
|
|
COLOR PALETTE - Light Mode
|
|
|
|
============================================ */
|
|
|
|
============================================ */
|
|
|
|
@ -20,10 +19,10 @@
|
|
|
|
/* Full-width content - override Starlight's default 45rem/67.5rem */
|
|
|
|
/* Full-width content - override Starlight's default 45rem/67.5rem */
|
|
|
|
--sl-content-width: 65rem;
|
|
|
|
--sl-content-width: 65rem;
|
|
|
|
|
|
|
|
|
|
|
|
/* Primary accent colors - blue to match Ghost blog */
|
|
|
|
/* Primary accent colors - purple to match Docusaurus */
|
|
|
|
--sl-color-accent-low: #dbeafe;
|
|
|
|
--sl-color-accent-low: #e0e0ff;
|
|
|
|
--sl-color-accent: #2563eb;
|
|
|
|
--sl-color-accent: #5E5ED0;
|
|
|
|
--sl-color-accent-high: #1d4ed8;
|
|
|
|
--sl-color-accent-high: #3333CC;
|
|
|
|
|
|
|
|
|
|
|
|
/* Text colors */
|
|
|
|
/* Text colors */
|
|
|
|
--sl-color-white: #1e293b;
|
|
|
|
--sl-color-white: #1e293b;
|
|
|
|
@ -36,14 +35,13 @@
|
|
|
|
--sl-color-black: #f8fafc;
|
|
|
|
--sl-color-black: #f8fafc;
|
|
|
|
|
|
|
|
|
|
|
|
/* Font settings */
|
|
|
|
/* Font settings */
|
|
|
|
--sl-font: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',
|
|
|
|
--sl-font: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',
|
|
|
|
Arial, sans-serif;
|
|
|
|
Arial, sans-serif;
|
|
|
|
--sl-font-mono: 'JetBrains Mono', 'Fira Code', ui-monospace, monospace;
|
|
|
|
|
|
|
|
--sl-text-base: 1rem;
|
|
|
|
--sl-text-base: 1rem;
|
|
|
|
--sl-line-height: 1.7;
|
|
|
|
--sl-line-height: 1.7;
|
|
|
|
|
|
|
|
|
|
|
|
/* Code highlighting */
|
|
|
|
/* Code highlighting */
|
|
|
|
--sl-color-bg-inline-code: rgba(59, 130, 246, 0.08);
|
|
|
|
--sl-color-bg-inline-code: rgba(94, 94, 208, 0.1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* ============================================
|
|
|
|
/* ============================================
|
|
|
|
@ -53,49 +51,35 @@
|
|
|
|
/* Full-width content - override Starlight's default */
|
|
|
|
/* Full-width content - override Starlight's default */
|
|
|
|
--sl-content-width: 65rem;
|
|
|
|
--sl-content-width: 65rem;
|
|
|
|
|
|
|
|
|
|
|
|
/* Primary accent colors - blue to match Ghost blog */
|
|
|
|
/* Primary accent colors - purple to match Docusaurus */
|
|
|
|
--sl-color-accent-low: rgba(59, 130, 246, 0.12);
|
|
|
|
--sl-color-accent-low: #2a2a5a;
|
|
|
|
--sl-color-accent: #3b82f6;
|
|
|
|
--sl-color-accent: #8C8CFF;
|
|
|
|
--sl-color-accent-high: #60a5fa;
|
|
|
|
--sl-color-accent-high: #B9B9FF;
|
|
|
|
|
|
|
|
|
|
|
|
/* Background colors - match Ghost blog */
|
|
|
|
/* Background colors */
|
|
|
|
--sl-color-bg: #0a0a0a;
|
|
|
|
--sl-color-bg: #1b1b1d;
|
|
|
|
--sl-color-bg-nav: #0a0a0a;
|
|
|
|
--sl-color-bg-nav: #1b1b1d;
|
|
|
|
--sl-color-bg-sidebar: #0a0a0a;
|
|
|
|
--sl-color-bg-sidebar: #1b1b1d;
|
|
|
|
--sl-color-hairline-light: rgba(255, 255, 255, 0.06);
|
|
|
|
--sl-color-hairline-light: rgba(140, 140, 255, 0.1);
|
|
|
|
--sl-color-hairline: #262626;
|
|
|
|
--sl-color-hairline: rgba(140, 140, 255, 0.15);
|
|
|
|
|
|
|
|
|
|
|
|
/* Text colors - match Ghost blog */
|
|
|
|
/* Text colors */
|
|
|
|
--sl-color-white: #fafafa;
|
|
|
|
--sl-color-white: #f8fafc;
|
|
|
|
--sl-color-gray-1: #e2e8f0;
|
|
|
|
--sl-color-gray-1: #e2e8f0;
|
|
|
|
--sl-color-gray-2: #a1a1a1;
|
|
|
|
--sl-color-gray-2: #cbd5e1;
|
|
|
|
--sl-color-gray-3: #94a3b8;
|
|
|
|
--sl-color-gray-3: #94a3b8;
|
|
|
|
--sl-color-gray-4: #666666;
|
|
|
|
--sl-color-gray-4: #64748b;
|
|
|
|
--sl-color-gray-5: #475569;
|
|
|
|
--sl-color-gray-5: #475569;
|
|
|
|
--sl-color-gray-6: #262626;
|
|
|
|
--sl-color-gray-6: #334155;
|
|
|
|
--sl-color-black: #0a0a0a;
|
|
|
|
--sl-color-black: #1b1b1d;
|
|
|
|
|
|
|
|
|
|
|
|
/* Code highlighting */
|
|
|
|
/* Code highlighting */
|
|
|
|
--sl-color-bg-inline-code: rgba(59, 130, 246, 0.15);
|
|
|
|
--sl-color-bg-inline-code: rgba(140, 140, 255, 0.15);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* ============================================
|
|
|
|
/* ============================================
|
|
|
|
TYPOGRAPHY
|
|
|
|
TYPOGRAPHY
|
|
|
|
============================================ */
|
|
|
|
============================================ */
|
|
|
|
|
|
|
|
|
|
|
|
/* Space Grotesk for all headings - match Ghost blog */
|
|
|
|
|
|
|
|
.sl-markdown-content h1,
|
|
|
|
|
|
|
|
.sl-markdown-content h2,
|
|
|
|
|
|
|
|
.sl-markdown-content h3,
|
|
|
|
|
|
|
|
.sl-markdown-content h4,
|
|
|
|
|
|
|
|
.sl-markdown-content h5,
|
|
|
|
|
|
|
|
.sl-markdown-content h6,
|
|
|
|
|
|
|
|
.site-title,
|
|
|
|
|
|
|
|
starlight-toc h2 {
|
|
|
|
|
|
|
|
font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif;
|
|
|
|
|
|
|
|
letter-spacing: -0.02em;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.sl-markdown-content h1 {
|
|
|
|
.sl-markdown-content h1 {
|
|
|
|
margin-bottom: 1.5rem;
|
|
|
|
margin-bottom: 1.5rem;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -154,14 +138,14 @@ starlight-toc h2 {
|
|
|
|
|
|
|
|
|
|
|
|
/* Active state - thin left accent bar */
|
|
|
|
/* Active state - thin left accent bar */
|
|
|
|
.sidebar-content a[aria-current='page'] {
|
|
|
|
.sidebar-content a[aria-current='page'] {
|
|
|
|
background-color: rgba(59, 130, 246, 0.08);
|
|
|
|
background-color: rgba(94, 94, 208, 0.08);
|
|
|
|
color: var(--sl-color-accent);
|
|
|
|
color: var(--sl-color-accent);
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
font-weight: 600;
|
|
|
|
font-weight: 600;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .sidebar-content a[aria-current='page'] {
|
|
|
|
:root[data-theme='dark'] .sidebar-content a[aria-current='page'] {
|
|
|
|
background-color: rgba(59, 130, 246, 0.1);
|
|
|
|
background-color: rgba(140, 140, 255, 0.1);
|
|
|
|
color: var(--sl-color-accent-high);
|
|
|
|
color: var(--sl-color-accent-high);
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -248,8 +232,7 @@ header.header .header.sl-flex {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] header.header {
|
|
|
|
:root[data-theme='dark'] header.header {
|
|
|
|
box-shadow: none;
|
|
|
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
|
|
|
|
border-bottom: 1px solid #262626;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.site-title {
|
|
|
|
.site-title {
|
|
|
|
@ -298,20 +281,20 @@ header.header .header.sl-flex {
|
|
|
|
.card:hover {
|
|
|
|
.card:hover {
|
|
|
|
transform: translateY(-3px);
|
|
|
|
transform: translateY(-3px);
|
|
|
|
border-color: var(--sl-color-accent);
|
|
|
|
border-color: var(--sl-color-accent);
|
|
|
|
box-shadow: 0 8px 24px rgba(59, 130, 246, 0.15);
|
|
|
|
box-shadow: 0 8px 24px rgba(94, 94, 208, 0.15);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .card {
|
|
|
|
:root[data-theme='dark'] .card {
|
|
|
|
background: #1a1a1a;
|
|
|
|
background: linear-gradient(145deg, rgba(30, 41, 59, 0.6), rgba(15, 23, 42, 0.8));
|
|
|
|
border-color: #262626;
|
|
|
|
border-color: rgba(140, 140, 255, 0.2);
|
|
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
|
|
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .card:hover {
|
|
|
|
:root[data-theme='dark'] .card:hover {
|
|
|
|
border-color: #3b82f6;
|
|
|
|
border-color: rgba(140, 140, 255, 0.5);
|
|
|
|
box-shadow:
|
|
|
|
box-shadow:
|
|
|
|
0 8px 32px rgba(59, 130, 246, 0.15),
|
|
|
|
0 8px 32px rgba(140, 140, 255, 0.2),
|
|
|
|
0 0 0 1px rgba(59, 130, 246, 0.1);
|
|
|
|
0 0 0 1px rgba(140, 140, 255, 0.1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* Starlight card grid */
|
|
|
|
/* Starlight card grid */
|
|
|
|
@ -330,11 +313,11 @@ header.header .header.sl-flex {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .sl-link-card {
|
|
|
|
:root[data-theme='dark'] .sl-link-card {
|
|
|
|
border-color: #262626;
|
|
|
|
border-color: rgba(140, 140, 255, 0.2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .sl-link-card:hover {
|
|
|
|
:root[data-theme='dark'] .sl-link-card:hover {
|
|
|
|
border-color: #3b82f6;
|
|
|
|
border-color: rgba(140, 140, 255, 0.5);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* ============================================
|
|
|
|
/* ============================================
|
|
|
|
@ -389,21 +372,21 @@ table {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] table {
|
|
|
|
:root[data-theme='dark'] table {
|
|
|
|
border-color: #262626;
|
|
|
|
border-color: rgba(140, 140, 255, 0.1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] table th {
|
|
|
|
:root[data-theme='dark'] table th {
|
|
|
|
background-color: rgba(59, 130, 246, 0.05);
|
|
|
|
background-color: rgba(140, 140, 255, 0.05);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] table tr:nth-child(2n) {
|
|
|
|
:root[data-theme='dark'] table tr:nth-child(2n) {
|
|
|
|
background-color: rgba(255, 255, 255, 0.02);
|
|
|
|
background-color: rgba(140, 140, 255, 0.02);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* Blockquotes */
|
|
|
|
/* Blockquotes */
|
|
|
|
blockquote {
|
|
|
|
blockquote {
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
border-left-color: var(--sl-color-accent);
|
|
|
|
background-color: rgba(59, 130, 246, 0.05);
|
|
|
|
background-color: rgba(94, 94, 208, 0.05);
|
|
|
|
border-radius: 0 8px 8px 0;
|
|
|
|
border-radius: 0 8px 8px 0;
|
|
|
|
padding: 1rem 1.25rem;
|
|
|
|
padding: 1rem 1.25rem;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -440,19 +423,19 @@ blockquote {
|
|
|
|
|
|
|
|
|
|
|
|
/* Note aside */
|
|
|
|
/* Note aside */
|
|
|
|
.starlight-aside--note {
|
|
|
|
.starlight-aside--note {
|
|
|
|
background-color: rgba(59, 130, 246, 0.08);
|
|
|
|
background-color: rgba(94, 94, 208, 0.08);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.starlight-aside--note .starlight-aside__title {
|
|
|
|
.starlight-aside--note .starlight-aside__title {
|
|
|
|
color: #2563eb;
|
|
|
|
color: #5C5CCC;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .starlight-aside--note {
|
|
|
|
:root[data-theme='dark'] .starlight-aside--note {
|
|
|
|
background-color: rgba(59, 130, 246, 0.12);
|
|
|
|
background-color: rgba(140, 140, 255, 0.12);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
:root[data-theme='dark'] .starlight-aside--note .starlight-aside__title {
|
|
|
|
:root[data-theme='dark'] .starlight-aside--note .starlight-aside__title {
|
|
|
|
color: #3b82f6;
|
|
|
|
color: #8C8CFF;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* Caution aside */
|
|
|
|
/* Caution aside */
|
|
|
|
@ -529,7 +512,7 @@ blockquote {
|
|
|
|
ROADMAP STYLES
|
|
|
|
ROADMAP STYLES
|
|
|
|
============================================ */
|
|
|
|
============================================ */
|
|
|
|
.roadmap-container {
|
|
|
|
.roadmap-container {
|
|
|
|
--color-planned: #3b82f6;
|
|
|
|
--color-planned: #6366f1;
|
|
|
|
--color-in-progress: #10b981;
|
|
|
|
--color-in-progress: #10b981;
|
|
|
|
--color-exploring: #f59e0b;
|
|
|
|
--color-exploring: #f59e0b;
|
|
|
|
--color-bg-card: rgba(255, 255, 255, 0.03);
|
|
|
|
--color-bg-card: rgba(255, 255, 255, 0.03);
|
|
|
|
@ -680,8 +663,8 @@ blockquote {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.roadmap-badge.planned {
|
|
|
|
.roadmap-badge.planned {
|
|
|
|
background: rgba(59, 130, 246, 0.15);
|
|
|
|
background: rgba(99, 102, 241, 0.15);
|
|
|
|
color: #3b82f6;
|
|
|
|
color: #6366f1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.roadmap-badge.exploring {
|
|
|
|
.roadmap-badge.exploring {
|
|
|
|
@ -752,7 +735,7 @@ blockquote {
|
|
|
|
.roadmap-future-card {
|
|
|
|
.roadmap-future-card {
|
|
|
|
padding: 1.5rem;
|
|
|
|
padding: 1.5rem;
|
|
|
|
border-radius: 12px;
|
|
|
|
border-radius: 12px;
|
|
|
|
background: linear-gradient(135deg, rgba(59, 130, 246, 0.08), rgba(212, 168, 83, 0.05));
|
|
|
|
background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(245, 158, 11, 0.05));
|
|
|
|
border: 1px solid var(--color-border);
|
|
|
|
border: 1px solid var(--color-border);
|
|
|
|
transition: transform 0.2s ease;
|
|
|
|
transition: transform 0.2s ease;
|
|
|
|
display: flex;
|
|
|
|
display: flex;
|
|
|
|
|