/* TinyTorch Academic Styles */ /* Academic Typography - Optimized for Educational Content */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap'); /* Typography CSS Custom Properties */ :root { --font-family-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif; --font-family-mono: 'JetBrains Mono', 'SF Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace; /* Font sizes */ --text-xs: 0.75rem; --text-sm: 0.875rem; --text-base: 1rem; --text-lg: 1.125rem; --text-xl: 1.25rem; --text-2xl: 1.5rem; --text-3xl: 1.875rem; --text-4xl: 2.25rem; /* Colors */ --color-text-primary: #1a202c; --color-text-secondary: #2d3748; --color-text-muted: #4a5568; --color-text-light: #718096; } /* Logo styling */ .navbar-brand img { width: auto; } /* Clean, academic styling */ .bd-main { background-color: white; } .bd-content { background-color: white; font-family: var(--font-family-sans); } /* Academic headings - Clean, readable hierarchy */ h1, h2, h3, h4, h5, h6 { font-family: var(--font-family-sans); color: var(--color-text-primary); font-weight: 600; margin-top: 1.5em; margin-bottom: 0.5em; line-height: 1.3; letter-spacing: -0.025em; } h1 { border-bottom: 2px solid #3498db; padding-bottom: 0.6rem; font-size: 2.5rem; font-weight: 700; margin-top: 0; } h2 { border-bottom: 1px solid #e2e8f0; padding-bottom: 0.4rem; font-size: 2rem; font-weight: 600; } h3 { font-size: 1.5rem; font-weight: 600; } h4 { font-size: 1.25rem; font-weight: 500; } h5, h6 { font-size: 1.1rem; font-weight: 500; } /* Professional code blocks */ .highlight { border-radius: 8px; margin: 1.5em 0; border: 1px solid #e2e8f0; font-family: var(--font-family-mono); font-size: 0.9em; line-height: 1.6; background-color: #f8fafc; } code { font-family: var(--font-family-mono); font-size: 0.9em; background-color: #f1f5f9; padding: 0.15em 0.4em; border-radius: 4px; border: 1px solid #e2e8f0; } pre code { background-color: transparent; padding: 0; border: none; border-radius: 0; } /* Academic sidebar styling */ .bd-sidebar { background-color: #f8f9fb; border-right: 1px solid #e1e4e8; } .bd-toc .nav > li > a { font-size: 0.95rem; color: var(--color-text-muted); padding: 0.4rem 1rem; font-family: var(--font-family-sans); font-weight: 400; line-height: 1.5; } .bd-toc .nav > li > a:hover { color: #0366d6; background-color: #f1f8ff; font-weight: 500; } /* Professional header styling */ .bd-header { background-color: #ffffff; border-bottom: 2px solid #e1e4e8; box-shadow: 0 1px 3px rgba(0,0,0,0.1); } /* Clean footer styling */ .bd-footer { background-color: #f6f8fa; border-top: 1px solid #d1d9e0; margin-top: 3rem; padding: 2rem 0; color: #586069; } /* Enhanced content readability */ .bd-article { font-size: 17px; line-height: 1.6; color: var(--color-text-secondary); max-width: 800px; font-weight: 400; } .bd-article p { margin-bottom: 1em; } .bd-article li { margin-bottom: 0.3em; line-height: 1.6; } .bd-article blockquote { border-left: 4px solid #e2e8f0; margin: 1.2em 0; padding: 0.8em 1.2em; background-color: #f8fafc; font-style: italic; color: #4a5568; } /* Professional TinyTorch branding */ .navbar-brand { font-weight: 700; color: var(--color-text-primary) !important; font-family: var(--font-family-sans); font-size: 1.5rem; letter-spacing: -0.025em; } /* Academic admonitions */ .admonition { border-radius: 6px; margin: 1.5em 0; padding: 1rem 1.2rem; border-left: 4px solid #3498db; box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .admonition-title { font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary); font-family: var(--font-family-sans); font-size: 1.1em; } .admonition.note { background-color: #f8f9ff; border-left-color: #3498db; } .admonition.tip { background-color: #f0fff4; border-left-color: #28a745; } .admonition.warning { background-color: #fffbf0; border-left-color: #ffc107; } .admonition.important { background-color: #fff5f5; border-left-color: #dc3545; } /* Professional buttons and links */ a { color: #0366d6; text-decoration: none; } a:hover { color: #0256cc; text-decoration: underline; } /* Academic table styling */ table { border-collapse: collapse; margin: 1.5em 0; width: 100%; } th, td { border: 1px solid #d1d9e0; padding: 0.75rem; text-align: left; } th { background-color: #f6f8fa; font-weight: 600; color: var(--color-text-primary); font-family: var(--font-family-sans); } td { font-family: var(--font-family-sans); color: var(--color-text-secondary); } /* Professional grid cards */ .grid-item-card { border: 1px solid #d1d9e0; border-radius: 6px; padding: 1.5rem; margin: 1rem 0; box-shadow: 0 1px 3px rgba(0,0,0,0.1); transition: box-shadow 0.2s ease; } .grid-item-card:hover { box-shadow: 0 4px 8px rgba(0,0,0,0.15); } /* Academic navigation */ .prev-next-area { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid #e1e4e8; } /* Professional badges */ .badges { margin: 1rem 0; font-size: 0.9rem; color: #586069; } /* Enhanced accessibility and focus states */ *:focus { outline: 2px solid #3498db; outline-offset: 2px; } /* Better text selection */ ::selection { background-color: #3498db; color: white; } ::-moz-selection { background-color: #3498db; color: white; } /* Typography fine-tuning for better readability */ .bd-article { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; } /* Improved link hover states */ .bd-article a { transition: color 0.2s ease; font-weight: 500; } .bd-article a:hover { color: #2563eb; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; } /* Better spacing for lists in articles */ .bd-article ul, .bd-article ol { padding-left: 1.5rem; margin: 1em 0; } .bd-article ul li, .bd-article ol li { margin-bottom: 0.4em; } /* Improved strong/bold text */ .bd-article strong, .bd-article b { font-weight: 600; color: var(--color-text-primary); }