a reactive (signals based) hypermedia web framework (wip) stormlightlabs.github.io/volt/
hypermedia frontend signals
1--- 2version: 1.0 3updated: 2025-10-18 4--- 5 6# Volt CSS Semantics 7 8Auto-generated documentation from base.css 9 10## CSS Custom Properties 11 12All design tokens defined in the stylesheet. 13 14### Typography 15 16- `--font-size-base`: `18px` 17- `--font-size-sm`: `0.889rem` 18- `--font-size-lg`: `1.125rem` 19- `--font-size-xl`: `1.266rem` 20- `--font-size-2xl`: `1.424rem` 21- `--font-size-3xl`: `1.802rem` 22- `--font-size-4xl`: `2.027rem` 23- `--font-size-5xl`: `2.566rem` 24- `--font-sans`: `"Inter", sans-serif` 25- `--font-serif`: `"Libre Baskerville", serif` 26- `--font-mono`: `"Google Sans Code", monospace` 27- `--line-height-tight`: `1.25` 28- `--line-height-base`: `1.6` 29- `--line-height-relaxed`: `1.8` 30- `--font-size-base`: `16px` 31- `--font-size-base`: `15px` 32 33### Spacing 34 35- `--space-xs`: `0.25rem` 36- `--space-sm`: `0.5rem` 37- `--space-md`: `1rem` 38- `--space-lg`: `1.5rem` 39- `--space-xl`: `2rem` 40- `--space-2xl`: `3rem` 41- `--space-3xl`: `4rem` 42- `--space-2xl`: `2rem` 43- `--space-3xl`: `3rem` 44 45### Layout 46 47- `--content-width`: `70ch` 48- `--sidenote-width`: `18rem` 49- `--sidenote-gap`: `2rem` 50 51### Colors 52 53- `--color-bg`: `#fefefe` 54- `--color-bg-alt`: `#f5f5f5` 55- `--color-text`: `#1a1a1a` 56- `--color-text-muted`: `#666666` 57- `--color-accent`: `#0066cc` 58- `--color-accent-hover`: `#0052a3` 59- `--color-border`: `#d4d4d4` 60- `--color-code-bg`: `#f8f8f8` 61- `--color-mark`: `#fff3cd` 62- `--color-success`: `#22863a` 63- `--color-warning`: `#bf8700` 64- `--color-error`: `#cb2431` 65- `--color-bg`: `#1a1a1a` 66- `--color-bg-alt`: `#2a2a2a` 67- `--color-text`: `#e6e6e6` 68- `--color-text-muted`: `#a0a0a0` 69- `--color-accent`: `#4da6ff` 70- `--color-accent-hover`: `#66b3ff` 71- `--color-border`: `#404040` 72- `--color-code-bg`: `#2a2a2a` 73- `--color-mark`: `#4a4a00` 74- `--color-success`: `#34d058` 75- `--color-warning`: `#ffdf5d` 76- `--color-error`: `#f97583` 77 78### Effects 79 80- `--shadow-sm`: `0 1px 2px rgba(0, 0, 0, 0.05)` 81- `--shadow-md`: `0 4px 6px rgba(0, 0, 0, 0.07)` 82- `--shadow-lg`: `0 10px 15px rgba(0, 0, 0, 0.1)` 83- `--radius-sm`: `3px` 84- `--radius-md`: `6px` 85- `--radius-lg`: `8px` 86- `--transition-fast`: `150ms ease-in-out` 87- `--transition-base`: `250ms ease-in-out` 88- `--shadow-sm`: `0 1px 2px rgba(0, 0, 0, 0.3)` 89- `--shadow-md`: `0 4px 6px rgba(0, 0, 0, 0.4)` 90- `--shadow-lg`: `0 10px 15px rgba(0, 0, 0, 0.5)` 91 92## Element Coverage 93 94HTML elements with defined styling in the stylesheet. 95 96**Coverage**: 58/60 elements 97 98### Styled Elements 99 100**Document Structure**: html, body 101**Typography**: h1, h2, h3, h4, h5, h6, p, a, em, strong, mark, small, sub, sup, hr 102**Lists**: ul, ol, li, dl, dt, dd 103**Semantic**: blockquote, cite, article, section, aside, header, footer, nav, details, summary 104**Forms**: form, fieldset, legend, label, input, select, textarea, button 105**Tables**: table, thead, th, td 106**Media**: img, figure, figcaption, video, audio, canvas, svg, iframe 107**Code**: code, pre, kbd, samp, var 108 109### Unstyled Elements 110 111tbody, tr 112 113## Documentation Comments 114 115Inline documentation extracted from CSS comments. 116 117### `:root` 118 119Root-level CSS variables define the design system. Light theme is default, dark theme overrides via media query. 120 121### `@media (prefers-color-scheme: dark)` 122 123Dark Theme Overrides Automatically applied when user prefers dark color scheme 124 125### `*, *::before, *::after` 126 127CSS reset 128 129### `html` 130 131Document root configuration Sets base font size for rem calculations 132 133### `body` 134 135Body element - Primary container Sets default typography and colors for the entire document 136 137### `h1, h2, h3, h4, h5, h6` 138 139Headings hierarchy Uses modular scale for harmonious sizing Tighter line-height for larger text improves readability 140 141### `h1` 142 143Individual heading sizes h1-h3 use slightly larger weights for emphasis 144 145### `p` 146 147Paragraph spacing Generous spacing between paragraphs aids scanning 148 149### `h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p` 150 151First paragraph after headings - No top margin Inspired by tufte.css 152 153### `a` 154 155Links Uses accent color with underline for clarity 156 157### `em` 158 159Emphasis and strong elements 160 161### `mark` 162 163Marked/highlighted text 164 165### `sub, sup` 166 167Subscript and superscript Prevents them from affecting line height 168 169### `small` 170 171Small text Also used for Tufte-style sidenotes (see sidenotes section) 172 173### `ul, ol` 174 175List spacing and indentation Nested lists inherit spacing 176 177### `li` 178 179List items 180 181### `li > ul, li > ol` 182 183Nested lists - Reduced spacing 184 185### `dl` 186 187Description lists - For key-value pairs 188 189### `p:has(small)` 190 191Parent paragraph must be positioned for absolute children 192 193### `p small` 194 195Pull small elements into the right margin Creates classic Tufte-style sidenote layout 196 197### `@media (max-width: 767px)` 198 199Mobile sidenotes - Inline with subtle styling 200 201### `blockquote` 202 203Blockquote styling Left border for visual distinction, italic for emphasis 204 205### `cite` 206 207Citation element 208 209### `code` 210 211Inline code Monospace font with subtle background 212 213### `kbd` 214 215Keyboard input Styled like keys on a keyboard 216 217### `samp` 218 219Sample output 220 221### `var` 222 223Variable 224 225### `pre` 226 227Preformatted code blocks Horizontal scrolling for overflow, no word wrap 228 229### `hr` 230 231Section dividers Centered decorative element 232 233### `table` 234 235Table container for horizontal scrolling on small screens 236 237### `thead` 238 239Table header styling Bold text with bottom border 240 241### `td` 242 243Table cells 244 245### `tbody tr:nth-child(even)` 246 247Zebra striping for easier row scanning 248 249### `tbody tr:hover` 250 251Hover state for interactive tables 252 253### `form` 254 255Form container spacing 256 257### `fieldset` 258 259Fieldset grouping 260 261### `label` 262 263Labels Block display for better touch targets 264 265### `textarea` 266 267Textarea specific 268 269### `input[type="checkbox"],` 270 271Checkboxes and radio buttons 272 273### `input[type="file"]` 274 275File input 276 277### `input[type="range"]` 278 279Range input 280 281### `progress, meter` 282 283Progress and meter 284 285### `input[type="reset"]` 286 287Reset button - Subdued styling 288 289### `img` 290 291Images Responsive by default, maintains aspect ratio 292 293### `figure` 294 295Figures with captions Common in academic and technical writing 296 297### `video, audio` 298 299Video and audio 300 301### `article, section` 302 303Article and Section Spacing between major content blocks 304 305### `aside` 306 307Aside Complementary content, styled distinctly 308 309### `header` 310 311Header and Footer 312 313### `details` 314 315Details and Summary Disclosure widget for expandable content 316 317### `.sr-only` 318 319Screen reader only Hides content visually but keeps it accessible to assistive technology 320 321### `@media print` 322 323Print-specific optimizations 324 325### `@media (max-width: 768px)` 326 327Tablet and below - Reduce spacing 328 329### `@media (max-width: 480px)` 330 331Mobile - Further reduced spacing and sizing