diff options
| author | Tolmachev Igor <me@igorek.dev> | 2026-01-07 02:56:17 +0900 |
|---|---|---|
| committer | Tolmachev Igor <me@igorek.dev> | 2026-01-07 02:56:17 +0900 |
| commit | 62af97acf1aa92eda881c754ae0cc6876d3a5ede (patch) | |
| tree | 72cc680fd6c6d5da7db06da026c48d335916e23a /responsive/cgit.css | |
| parent | bf87e843e959344a060854c2bee60b787011b7e7 (diff) | |
| download | cgit_material_docker-62af97acf1aa92eda881c754ae0cc6876d3a5ede.tar.gz cgit_material_docker-62af97acf1aa92eda881c754ae0cc6876d3a5ede.zip | |
Improve docker image structure
Diffstat (limited to 'responsive/cgit.css')
| -rw-r--r-- | responsive/cgit.css | 925 |
1 files changed, 0 insertions, 925 deletions
diff --git a/responsive/cgit.css b/responsive/cgit.css deleted file mode 100644 index 4690478..0000000 --- a/responsive/cgit.css +++ /dev/null | |||
| @@ -1,925 +0,0 @@ | |||
| 1 | /* 1. Color scheme */ | ||
| 2 | |||
| 3 | @media (prefers-color-scheme: dark) { | ||
| 4 | :root { | ||
| 5 | --color-primary: rgb(255 181 160); | ||
| 6 | --color-surface-tint: rgb(255 181 160); | ||
| 7 | --color-on-primary: rgb(86 31 15); | ||
| 8 | --color-primary-container: rgb(114 53 35); | ||
| 9 | --color-on-primary-container: rgb(255 219 209); | ||
| 10 | --color-secondary: rgb(231 189 178); | ||
| 11 | --color-on-secondary: rgb(68 42 34); | ||
| 12 | --color-secondary-container: rgb(93 64 55); | ||
| 13 | --color-on-secondary-container: rgb(255 219 209); | ||
| 14 | --color-tertiary: rgb(216 197 141); | ||
| 15 | --color-on-tertiary: rgb(59 47 5); | ||
| 16 | --color-tertiary-container: rgb(83 70 25); | ||
| 17 | --color-on-tertiary-container: rgb(245 225 167); | ||
| 18 | --color-error: rgb(255 180 171); | ||
| 19 | --color-on-error: rgb(105 0 5); | ||
| 20 | --color-error-container: rgb(147 0 10); | ||
| 21 | --color-on-error-container: rgb(255 218 214); | ||
| 22 | --color-background: rgb(26 17 15); | ||
| 23 | --color-on-background: rgb(241 223 218); | ||
| 24 | --color-surface: rgb(26 17 15); | ||
| 25 | --color-on-surface: rgb(241 223 218); | ||
| 26 | --color-surface-variant: rgb(83 67 63); | ||
| 27 | --color-on-surface-variant: rgb(216 194 188); | ||
| 28 | --color-outline: rgb(160 140 135); | ||
| 29 | --color-outline-variant: rgb(83 67 63); | ||
| 30 | --color-shadow: rgb(0 0 0); | ||
| 31 | --color-scrim: rgb(0 0 0); | ||
| 32 | --color-inverse-surface: rgb(241 223 218); | ||
| 33 | --color-inverse-on-surface: rgb(57 46 43); | ||
| 34 | --color-inverse-primary: rgb(143 76 56); | ||
| 35 | --color-primary-fixed: rgb(255 219 209); | ||
| 36 | --color-on-primary-fixed: rgb(58 11 1); | ||
| 37 | --color-primary-fixed-dim: rgb(255 181 160); | ||
| 38 | --color-on-primary-fixed-variant: rgb(114 53 35); | ||
| 39 | --color-secondary-fixed: rgb(255 219 209); | ||
| 40 | --color-on-secondary-fixed: rgb(44 21 15); | ||
| 41 | --color-secondary-fixed-dim: rgb(231 189 178); | ||
| 42 | --color-on-secondary-fixed-variant: rgb(93 64 55); | ||
| 43 | --color-tertiary-fixed: rgb(245 225 167); | ||
| 44 | --color-on-tertiary-fixed: rgb(35 27 0); | ||
| 45 | --color-tertiary-fixed-dim: rgb(216 197 141); | ||
| 46 | --color-on-tertiary-fixed-variant: rgb(83 70 25); | ||
| 47 | --color-surface-dim: rgb(26 17 15); | ||
| 48 | --color-surface-bright: rgb(66 55 52); | ||
| 49 | --color-surface-container-lowest: rgb(20 12 10); | ||
| 50 | --color-surface-container-low: rgb(35 25 23); | ||
| 51 | --color-surface-container: rgb(39 29 27); | ||
| 52 | --color-surface-container-high: rgb(50 40 37); | ||
| 53 | --color-surface-container-highest: rgb(61 50 47); | ||
| 54 | |||
| 55 | color-scheme: dark; | ||
| 56 | } | ||
| 57 | } | ||
| 58 | |||
| 59 | @media (prefers-color-scheme: light) { | ||
| 60 | :root { | ||
| 61 | --color-primary: rgb(143 76 56); | ||
| 62 | --color-surface-tint: rgb(143 76 56); | ||
| 63 | --color-on-primary: rgb(255 255 255); | ||
| 64 | --color-primary-container: rgb(255 219 209); | ||
| 65 | --color-on-primary-container: rgb(114 53 35); | ||
| 66 | --color-secondary: rgb(119 87 78); | ||
| 67 | --color-on-secondary: rgb(255 255 255); | ||
| 68 | --color-secondary-container: rgb(255 219 209); | ||
| 69 | --color-on-secondary-container: rgb(93 64 55); | ||
| 70 | --color-tertiary: rgb(108 93 47); | ||
| 71 | --color-on-tertiary: rgb(255 255 255); | ||
| 72 | --color-tertiary-container: rgb(245 225 167); | ||
| 73 | --color-on-tertiary-container: rgb(83 70 25); | ||
| 74 | --color-error: rgb(186 26 26); | ||
| 75 | --color-on-error: rgb(255 255 255); | ||
| 76 | --color-error-container: rgb(255 218 214); | ||
| 77 | --color-on-error-container: rgb(147 0 10); | ||
| 78 | --color-background: rgb(255 248 246); | ||
| 79 | --color-on-background: rgb(35 25 23); | ||
| 80 | --color-surface: rgb(255 248 246); | ||
| 81 | --color-on-surface: rgb(35 25 23); | ||
| 82 | --color-surface-variant: rgb(245 222 216); | ||
| 83 | --color-on-surface-variant: rgb(83 67 63); | ||
| 84 | --color-outline: rgb(133 115 110); | ||
| 85 | --color-outline-variant: rgb(216 194 188); | ||
| 86 | --color-shadow: rgb(0 0 0); | ||
| 87 | --color-scrim: rgb(0 0 0); | ||
| 88 | --color-inverse-surface: rgb(57 46 43); | ||
| 89 | --color-inverse-on-surface: rgb(255 237 232); | ||
| 90 | --color-inverse-primary: rgb(255 181 160); | ||
| 91 | --color-primary-fixed: rgb(255 219 209); | ||
| 92 | --color-on-primary-fixed: rgb(58 11 1); | ||
| 93 | --color-primary-fixed-dim: rgb(255 181 160); | ||
| 94 | --color-on-primary-fixed-variant: rgb(114 53 35); | ||
| 95 | --color-secondary-fixed: rgb(255 219 209); | ||
| 96 | --color-on-secondary-fixed: rgb(44 21 15); | ||
| 97 | --color-secondary-fixed-dim: rgb(231 189 178); | ||
| 98 | --color-on-secondary-fixed-variant: rgb(93 64 55); | ||
| 99 | --color-tertiary-fixed: rgb(245 225 167); | ||
| 100 | --color-on-tertiary-fixed: rgb(35 27 0); | ||
| 101 | --color-tertiary-fixed-dim: rgb(216 197 141); | ||
| 102 | --color-on-tertiary-fixed-variant: rgb(83 70 25); | ||
| 103 | --color-surface-dim: rgb(232 214 210); | ||
| 104 | --color-surface-bright: rgb(255 248 246); | ||
| 105 | --color-surface-container-lowest: rgb(255 255 255); | ||
| 106 | --color-surface-container-low: rgb(255 241 237); | ||
| 107 | --color-surface-container: rgb(252 234 229); | ||
| 108 | --color-surface-container-high: rgb(247 228 224); | ||
| 109 | --color-surface-container-highest: rgb(241 223 218); | ||
| 110 | |||
| 111 | color-scheme: light; | ||
| 112 | } | ||
| 113 | } | ||
| 114 | |||
| 115 | :root { | ||
| 116 | /* Custom logic for diffs */ | ||
| 117 | --diff-add-bg: var(--color-tertiary-container); | ||
| 118 | --diff-add-fg: var(--color-on-tertiary-container); | ||
| 119 | --diff-del-bg: var(--color-error-container); | ||
| 120 | --diff-del-fg: var(--color-on-error-container); | ||
| 121 | } | ||
| 122 | |||
| 123 | /* 2. Global Reset & Body */ | ||
| 124 | * { | ||
| 125 | box-sizing: border-box; | ||
| 126 | } | ||
| 127 | |||
| 128 | body { | ||
| 129 | font-family: sans-serif; | ||
| 130 | font-size: 14px; | ||
| 131 | line-height: 1.5; | ||
| 132 | color: var(--color-on-background); | ||
| 133 | background: var(--color-background); | ||
| 134 | margin: 0; | ||
| 135 | padding: 0; | ||
| 136 | |||
| 137 | -webkit-text-size-adjust: 100%; | ||
| 138 | -moz-text-size-adjust: 100%; | ||
| 139 | text-size-adjust: 100%; | ||
| 140 | } | ||
| 141 | |||
| 142 | div#cgit { | ||
| 143 | padding: 0; | ||
| 144 | margin: 0 auto; | ||
| 145 | max-width: 1200px; | ||
| 146 | background: var(--color-background); | ||
| 147 | min-height: 100vh; | ||
| 148 | display: flex; | ||
| 149 | flex-direction: column; | ||
| 150 | } | ||
| 151 | |||
| 152 | a { | ||
| 153 | color: var(--color-primary); | ||
| 154 | text-decoration: none; | ||
| 155 | transition: opacity 0.2s; | ||
| 156 | } | ||
| 157 | |||
| 158 | a:hover { | ||
| 159 | text-decoration: underline; | ||
| 160 | opacity: 0.8; | ||
| 161 | } | ||
| 162 | |||
| 163 | /* 3. Header Area */ | ||
| 164 | div#cgit table#header { | ||
| 165 | width: 100%; | ||
| 166 | margin-bottom: 0; | ||
| 167 | background-color: var(--color-surface-container); | ||
| 168 | color: var(--color-on-surface); | ||
| 169 | padding: 1rem; | ||
| 170 | /* Transform table to flex for responsiveness */ | ||
| 171 | display: flex; | ||
| 172 | flex-wrap: wrap; | ||
| 173 | align-items: center; | ||
| 174 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 175 | } | ||
| 176 | |||
| 177 | /* Fix for table structure within header */ | ||
| 178 | div#cgit table#header tbody, | ||
| 179 | div#cgit table#header tr { | ||
| 180 | display: contents; | ||
| 181 | } | ||
| 182 | |||
| 183 | div#cgit table#header td.logo { | ||
| 184 | display: block; | ||
| 185 | padding-right: 1rem; | ||
| 186 | } | ||
| 187 | |||
| 188 | div#cgit table#header td.main { | ||
| 189 | font-size: 1.5rem; | ||
| 190 | font-weight: bold; | ||
| 191 | color: var(--color-on-surface); | ||
| 192 | display: block; | ||
| 193 | flex-grow: 1; | ||
| 194 | } | ||
| 195 | |||
| 196 | div#cgit table#header td.main a { | ||
| 197 | color: var(--color-on-surface); | ||
| 198 | } | ||
| 199 | |||
| 200 | div#cgit table#header td.form { | ||
| 201 | display: block; | ||
| 202 | text-align: right; | ||
| 203 | margin-top: 0.5rem; | ||
| 204 | } | ||
| 205 | |||
| 206 | div#cgit table#header td.sub { | ||
| 207 | display: block; | ||
| 208 | width: 100%; | ||
| 209 | padding-top: 0.25rem; | ||
| 210 | color: var(--color-outline); | ||
| 211 | font-size: 0.9rem; | ||
| 212 | border-top: none; /* Removing legacy border */ | ||
| 213 | } | ||
| 214 | |||
| 215 | /* Input Elements */ | ||
| 216 | select, | ||
| 217 | input, | ||
| 218 | textarea { | ||
| 219 | background-color: var(--color-surface-container-high); | ||
| 220 | color: var(--color-on-surface); | ||
| 221 | border: 1px solid var(--color-outline); | ||
| 222 | border-radius: 4px; | ||
| 223 | padding: 4px 8px; | ||
| 224 | font-family: inherit; | ||
| 225 | } | ||
| 226 | |||
| 227 | input[type="submit"] { | ||
| 228 | background-color: var(--color-primary); | ||
| 229 | color: var(--color-on-primary); | ||
| 230 | border: none; | ||
| 231 | cursor: pointer; | ||
| 232 | font-weight: 500; | ||
| 233 | padding: 5px 12px; | ||
| 234 | } | ||
| 235 | |||
| 236 | input[type="submit"]:hover { | ||
| 237 | background-color: var(--color-primary-fixed-dim); | ||
| 238 | } | ||
| 239 | |||
| 240 | /* 4. Tabs Navigation */ | ||
| 241 | div#cgit table.tabs { | ||
| 242 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 243 | border-collapse: collapse; | ||
| 244 | margin: 0; | ||
| 245 | width: 100%; | ||
| 246 | background-color: var(--color-surface); | ||
| 247 | display: flex; /* Modern layout */ | ||
| 248 | flex-wrap: wrap; | ||
| 249 | padding: 0 1rem; | ||
| 250 | } | ||
| 251 | |||
| 252 | div#cgit table.tabs tbody, | ||
| 253 | div#cgit table.tabs tr { | ||
| 254 | display: contents; | ||
| 255 | } | ||
| 256 | |||
| 257 | div#cgit table.tabs td { | ||
| 258 | display: block; | ||
| 259 | padding: 0; | ||
| 260 | } | ||
| 261 | |||
| 262 | div#cgit table.tabs td a { | ||
| 263 | display: inline-block; | ||
| 264 | padding: 0.75rem 1rem; | ||
| 265 | color: var(--color-on-surface-variant); | ||
| 266 | font-weight: 500; | ||
| 267 | border-bottom: 2px solid transparent; | ||
| 268 | } | ||
| 269 | |||
| 270 | div#cgit table.tabs td a.active { | ||
| 271 | color: var(--color-primary); | ||
| 272 | border-bottom: 2px solid var(--color-primary); | ||
| 273 | background-color: var(--color-surface-container-low); | ||
| 274 | } | ||
| 275 | |||
| 276 | div#cgit table.tabs td a:hover { | ||
| 277 | background-color: var(--color-surface-container-high); | ||
| 278 | text-decoration: none; | ||
| 279 | } | ||
| 280 | |||
| 281 | div#cgit table.tabs td.form { | ||
| 282 | flex-grow: 1; | ||
| 283 | text-align: right; | ||
| 284 | padding: 0.5rem 0; | ||
| 285 | display: flex; | ||
| 286 | justify-content: flex-end; | ||
| 287 | align-items: center; | ||
| 288 | } | ||
| 289 | |||
| 290 | div#cgit a.button { | ||
| 291 | display: inline-block; | ||
| 292 | padding: 3px 6px; | ||
| 293 | margin: 0 4px; | ||
| 294 | background-color: var(--color-secondary-container); | ||
| 295 | color: var(--color-on-secondary-container); | ||
| 296 | border-radius: 5px; | ||
| 297 | font-size: 0.85rem; | ||
| 298 | font-weight: 500; | ||
| 299 | text-decoration: none; | ||
| 300 | transition: | ||
| 301 | background-color 0.2s, | ||
| 302 | color 0.2s, | ||
| 303 | box-shadow 0.2s; | ||
| 304 | } | ||
| 305 | |||
| 306 | div#cgit a.button:hover { | ||
| 307 | background-color: var(--color-primary); | ||
| 308 | color: var(--color-on-primary); | ||
| 309 | text-decoration: none; | ||
| 310 | opacity: 1; | ||
| 311 | box-shadow: 0 2px 4px var(--color-shadow); | ||
| 312 | } | ||
| 313 | |||
| 314 | /* 5. Content Area */ | ||
| 315 | div#cgit div.content { | ||
| 316 | padding: 1.5rem; | ||
| 317 | flex-grow: 1; | ||
| 318 | } | ||
| 319 | |||
| 320 | div#cgit div.path { | ||
| 321 | margin: 0; | ||
| 322 | padding: 0.5rem 1.5rem; | ||
| 323 | background-color: var(--color-surface-container-low); | ||
| 324 | color: var(--color-on-surface); | ||
| 325 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 326 | font-family: monospace; | ||
| 327 | } | ||
| 328 | |||
| 329 | /* 6. Lists and Tables */ | ||
| 330 | div#cgit table.list { | ||
| 331 | width: 100%; | ||
| 332 | border: none; | ||
| 333 | border-collapse: collapse; | ||
| 334 | margin-bottom: 1rem; | ||
| 335 | font-size: 0.95rem; | ||
| 336 | } | ||
| 337 | |||
| 338 | div#cgit table.list tr { | ||
| 339 | background: var(--color-surface); | ||
| 340 | border-bottom: 1px solid var(--color-surface-container-high); | ||
| 341 | } | ||
| 342 | |||
| 343 | div#cgit table.list tr:nth-child(even) { | ||
| 344 | background: var(--color-surface-container-lowest); | ||
| 345 | } | ||
| 346 | |||
| 347 | div#cgit table.list tr:hover { | ||
| 348 | background: var(--color-surface-container-high); | ||
| 349 | } | ||
| 350 | |||
| 351 | div#cgit table.list th { | ||
| 352 | text-align: left; | ||
| 353 | font-weight: 600; | ||
| 354 | color: var(--color-primary); | ||
| 355 | padding: 0.75rem 0.5rem; | ||
| 356 | border-bottom: 2px solid var(--color-outline-variant); | ||
| 357 | } | ||
| 358 | |||
| 359 | div#cgit table.list td { | ||
| 360 | padding: 0.75rem 0.5rem; | ||
| 361 | vertical-align: middle; | ||
| 362 | } | ||
| 363 | |||
| 364 | /* Commit Graph columns */ | ||
| 365 | div#cgit table.list td.commitgraph { | ||
| 366 | font-family: monospace; | ||
| 367 | white-space: pre; | ||
| 368 | color: var(--color-on-surface); | ||
| 369 | } | ||
| 370 | |||
| 371 | /* 7. Diffs and Code */ | ||
| 372 | div#cgit table.blob, | ||
| 373 | div#cgit table.diff, | ||
| 374 | div#cgit table.ssdiff { | ||
| 375 | width: 100%; | ||
| 376 | border: 1px solid var(--color-outline-variant); | ||
| 377 | border-radius: 4px; | ||
| 378 | overflow: hidden; | ||
| 379 | margin-top: 1rem; | ||
| 380 | background: var(--color-surface-container-lowest); | ||
| 381 | } | ||
| 382 | |||
| 383 | div#cgit table.blob td.linenumbers, | ||
| 384 | div#cgit table.ssdiff td.lineno { | ||
| 385 | border-right: 1px solid var(--color-outline-variant); | ||
| 386 | background: var(--color-surface-container-high); | ||
| 387 | text-align: right; | ||
| 388 | padding: 0 0.5em; | ||
| 389 | } | ||
| 390 | |||
| 391 | div#cgit table.blob td.linenumbers a, | ||
| 392 | div#cgit table.ssdiff td.lineno a { | ||
| 393 | display: inline-block; | ||
| 394 | width: 100%; | ||
| 395 | text-decoration: none; | ||
| 396 | color: var(--color-outline); | ||
| 397 | padding: 0; | ||
| 398 | } | ||
| 399 | |||
| 400 | div#cgit table.blob pre, | ||
| 401 | div#cgit table.diff td, | ||
| 402 | div#cgit table.ssdiff td { | ||
| 403 | font-family: monospace; | ||
| 404 | font-size: 0.9em; | ||
| 405 | padding: 0 0.5em; | ||
| 406 | margin: 0; | ||
| 407 | color: var(--color-on-surface); | ||
| 408 | } | ||
| 409 | |||
| 410 | /* Diff coloring */ | ||
| 411 | div#cgit table.diff td div.add, | ||
| 412 | div#cgit table.ssdiff td.add { | ||
| 413 | background-color: var(--diff-add-bg); | ||
| 414 | color: var(--diff-add-fg); | ||
| 415 | } | ||
| 416 | |||
| 417 | div#cgit table.diff td div.del, | ||
| 418 | div#cgit table.ssdiff td.del { | ||
| 419 | background-color: var(--diff-del-bg); | ||
| 420 | color: var(--diff-del-fg); | ||
| 421 | } | ||
| 422 | |||
| 423 | div#cgit table.diff td div.hunk, | ||
| 424 | div#cgit table.ssdiff td.hunk { | ||
| 425 | background-color: var(--color-surface-variant); | ||
| 426 | color: var(--color-on-surface-variant); | ||
| 427 | padding: 0.25em 0.5em; | ||
| 428 | } | ||
| 429 | |||
| 430 | /* 8. Decorations (Tags, Branches) */ | ||
| 431 | div#cgit a.branch-deco, | ||
| 432 | div#cgit a.tag-deco, | ||
| 433 | div#cgit a.tag-annotated-deco, | ||
| 434 | div#cgit a.remote-deco, | ||
| 435 | div#cgit a.deco { | ||
| 436 | display: inline-block; | ||
| 437 | padding: 2px 6px; | ||
| 438 | border-radius: 4px; | ||
| 439 | font-size: 0.8em; | ||
| 440 | margin-left: 0.5em; | ||
| 441 | border: none; | ||
| 442 | } | ||
| 443 | |||
| 444 | div#cgit a.branch-deco { | ||
| 445 | background-color: var(--color-primary-container); | ||
| 446 | color: var(--color-on-primary-container); | ||
| 447 | } | ||
| 448 | |||
| 449 | div#cgit a.tag-deco { | ||
| 450 | background-color: var(--color-tertiary-container); | ||
| 451 | color: var(--color-on-tertiary-container); | ||
| 452 | } | ||
| 453 | |||
| 454 | div#cgit a.tag-annotated-deco { | ||
| 455 | background-color: var(--color-tertiary-fixed); | ||
| 456 | color: var(--color-on-tertiary-fixed); | ||
| 457 | } | ||
| 458 | |||
| 459 | div#cgit a.remote-deco { | ||
| 460 | background-color: var(--color-secondary-container); | ||
| 461 | color: var(--color-on-secondary-container); | ||
| 462 | } | ||
| 463 | |||
| 464 | div#cgit a.deco { | ||
| 465 | background-color: var(--color-secondary-fixed); | ||
| 466 | color: var(--color-on-secondary-fixed); | ||
| 467 | } | ||
| 468 | |||
| 469 | /* 9. Commit Info Table */ | ||
| 470 | div#cgit table.commit-info { | ||
| 471 | background-color: var(--color-surface-container); | ||
| 472 | border: 1px solid var(--color-outline-variant); | ||
| 473 | border-radius: 8px; | ||
| 474 | padding: 1rem; | ||
| 475 | width: 100%; | ||
| 476 | margin-top: 1rem; | ||
| 477 | border-collapse: separate; | ||
| 478 | border-spacing: 0 0.5rem; | ||
| 479 | } | ||
| 480 | |||
| 481 | div#cgit table.commit-info th { | ||
| 482 | text-align: left; | ||
| 483 | padding: 0 1rem; | ||
| 484 | color: var(--color-secondary); | ||
| 485 | } | ||
| 486 | |||
| 487 | div#cgit table.commit-info td { | ||
| 488 | padding: 0 1rem; | ||
| 489 | } | ||
| 490 | |||
| 491 | div#cgit div.commit-subject { | ||
| 492 | font-size: 1.2rem; | ||
| 493 | font-weight: bold; | ||
| 494 | color: var(--color-primary); | ||
| 495 | margin: 1.5rem 0 0.5rem 0; | ||
| 496 | } | ||
| 497 | |||
| 498 | div#cgit div.commit-msg { | ||
| 499 | white-space: pre-wrap; | ||
| 500 | font-family: monospace; | ||
| 501 | padding: 1rem; | ||
| 502 | background: var(--color-surface-container-low); | ||
| 503 | border-radius: 4px; | ||
| 504 | color: var(--color-on-surface); | ||
| 505 | } | ||
| 506 | |||
| 507 | /* 10. Footer */ | ||
| 508 | div#cgit div.footer { | ||
| 509 | margin-top: auto; | ||
| 510 | padding: 2rem 1rem; | ||
| 511 | text-align: center; | ||
| 512 | font-size: 0.85rem; | ||
| 513 | color: var(--color-outline); | ||
| 514 | border-top: 1px solid var(--color-outline-variant); | ||
| 515 | } | ||
| 516 | |||
| 517 | div#cgit div.error { | ||
| 518 | color: var(--color-error); | ||
| 519 | background: var(--color-error-container); | ||
| 520 | padding: 1rem; | ||
| 521 | border-radius: 4px; | ||
| 522 | margin: 1rem 0; | ||
| 523 | } | ||
| 524 | |||
| 525 | /* 11. Responsive Adjustments */ | ||
| 526 | @media only screen and (max-width: 768px) { | ||
| 527 | div#cgit table#header { | ||
| 528 | flex-direction: column; | ||
| 529 | align-items: flex-start; | ||
| 530 | } | ||
| 531 | |||
| 532 | div#cgit table#header td.logo, | ||
| 533 | div#cgit table#header td.main, | ||
| 534 | div#cgit table#header td.form { | ||
| 535 | width: 100%; | ||
| 536 | text-align: left; | ||
| 537 | margin-bottom: 0.5rem; | ||
| 538 | } | ||
| 539 | |||
| 540 | div#cgit table.tabs { | ||
| 541 | flex-direction: column; | ||
| 542 | padding: 0; | ||
| 543 | } | ||
| 544 | |||
| 545 | div#cgit table.tabs td a { | ||
| 546 | width: 100%; | ||
| 547 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 548 | } | ||
| 549 | |||
| 550 | div#cgit table.tabs td.form { | ||
| 551 | width: 100%; | ||
| 552 | justify-content: flex-start; | ||
| 553 | padding: 1rem; | ||
| 554 | } | ||
| 555 | |||
| 556 | div#cgit div.content { | ||
| 557 | padding: 1rem 0.5rem; | ||
| 558 | overflow-x: auto; /* Enable horizontal scroll for content */ | ||
| 559 | } | ||
| 560 | |||
| 561 | /* Force tables to scroll on small screens */ | ||
| 562 | div#cgit table.list, | ||
| 563 | div#cgit table.blob, | ||
| 564 | div#cgit table.diff { | ||
| 565 | white-space: nowrap; | ||
| 566 | } | ||
| 567 | |||
| 568 | /* Allow wrapping in logs on mobile to prevent extreme width */ | ||
| 569 | div#cgit table.list td.logmsg { | ||
| 570 | white-space: normal; | ||
| 571 | min-width: 200px; | ||
| 572 | } | ||
| 573 | } | ||
| 574 | |||
| 575 | /* Container override for highlighted code to handle font sizing */ | ||
| 576 | div#cgit table.blob pre { | ||
| 577 | font-family: "JetBrains Mono", "Fira Code", monospace; | ||
| 578 | font-size: 0.95em; | ||
| 579 | line-height: 1.4; | ||
| 580 | } | ||
| 581 | |||
| 582 | /* --- Syntax Highlighting Mapping to Material Variables --- */ | ||
| 583 | |||
| 584 | /* Comments - Outline/Grey */ | ||
| 585 | .hl-c, | ||
| 586 | .hl-cm, | ||
| 587 | .hl-cp, | ||
| 588 | .hl-c1, | ||
| 589 | .hl-cs { | ||
| 590 | color: var(--color-outline); | ||
| 591 | font-style: italic; | ||
| 592 | } | ||
| 593 | |||
| 594 | /* Keywords - Primary (Pinkish/Orange) */ | ||
| 595 | .hl-k, | ||
| 596 | .hl-kc, | ||
| 597 | .hl-kd, | ||
| 598 | .hl-kn, | ||
| 599 | .hl-kp, | ||
| 600 | .hl-kr, | ||
| 601 | .hl-kt { | ||
| 602 | color: var(--color-primary); | ||
| 603 | font-weight: bold; | ||
| 604 | } | ||
| 605 | |||
| 606 | /* Names/Functions - Tertiary (Yellowish) */ | ||
| 607 | .hl-n, | ||
| 608 | .hl-na, | ||
| 609 | .hl-nb, | ||
| 610 | .hl-nc, | ||
| 611 | .hl-no, | ||
| 612 | .hl-nd, | ||
| 613 | .hl-ni, | ||
| 614 | .hl-ne, | ||
| 615 | .hl-nf, | ||
| 616 | .hl-nl, | ||
| 617 | .hl-nn, | ||
| 618 | .hl-nt, | ||
| 619 | .hl-nv, | ||
| 620 | .hl-nx { | ||
| 621 | color: var(--color-tertiary); | ||
| 622 | } | ||
| 623 | |||
| 624 | /* Strings - Secondary (Reddish/Brownish) */ | ||
| 625 | .hl-s, | ||
| 626 | .hl-sa, | ||
| 627 | .hl-sb, | ||
| 628 | .hl-sc, | ||
| 629 | .hl-dl, | ||
| 630 | .hl-sd, | ||
| 631 | .hl-s2, | ||
| 632 | .hl-se, | ||
| 633 | .hl-sh, | ||
| 634 | .hl-si, | ||
| 635 | .hl-sx, | ||
| 636 | .hl-sr, | ||
| 637 | .hl-s1, | ||
| 638 | .hl-ss { | ||
| 639 | color: var(--color-secondary); | ||
| 640 | } | ||
| 641 | |||
| 642 | /* Operators - On Surface (Main text color) */ | ||
| 643 | .hl-o, | ||
| 644 | .hl-ow { | ||
| 645 | color: var(--color-on-surface-variant); | ||
| 646 | } | ||
| 647 | |||
| 648 | /* Numbers - Primary Container (Brighter accent) */ | ||
| 649 | .hl-m, | ||
| 650 | .hl-mb, | ||
| 651 | .hl-mf, | ||
| 652 | .hl-mh, | ||
| 653 | .hl-mi, | ||
| 654 | .hl-mo, | ||
| 655 | .hl-il { | ||
| 656 | color: var(--color-primary-fixed); | ||
| 657 | } | ||
| 658 | |||
| 659 | /* Errors */ | ||
| 660 | .hl-err, | ||
| 661 | .hl-gr { | ||
| 662 | color: var(--color-error); | ||
| 663 | background-color: var(--color-error-container); | ||
| 664 | } | ||
| 665 | |||
| 666 | /* Generic Deleted */ | ||
| 667 | .hl-gd { | ||
| 668 | color: var(--color-error); | ||
| 669 | background-color: var(--color-error-container); | ||
| 670 | } | ||
| 671 | |||
| 672 | /* Generic Inserted */ | ||
| 673 | .hl-gi { | ||
| 674 | color: var(--color-tertiary); | ||
| 675 | background-color: var(--color-tertiary-container); | ||
| 676 | } | ||
| 677 | |||
| 678 | /* --- Markdown Body Styles (Material Design) --- */ | ||
| 679 | |||
| 680 | .markdown-body { | ||
| 681 | font-family: inherit; | ||
| 682 | font-size: 1rem; | ||
| 683 | line-height: 1.6; | ||
| 684 | color: var(--color-on-background); | ||
| 685 | word-wrap: break-word; | ||
| 686 | } | ||
| 687 | |||
| 688 | /* Headers */ | ||
| 689 | .markdown-body h1, | ||
| 690 | .markdown-body h2, | ||
| 691 | .markdown-body h3, | ||
| 692 | .markdown-body h4, | ||
| 693 | .markdown-body h5, | ||
| 694 | .markdown-body h6 { | ||
| 695 | margin-top: 24px; | ||
| 696 | margin-bottom: 16px; | ||
| 697 | font-weight: 600; | ||
| 698 | line-height: 1.25; | ||
| 699 | color: var(--color-on-surface); | ||
| 700 | } | ||
| 701 | |||
| 702 | .markdown-body h1 { | ||
| 703 | font-size: 2em; | ||
| 704 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 705 | padding-bottom: 0.3em; | ||
| 706 | } | ||
| 707 | .markdown-body h2 { | ||
| 708 | font-size: 1.5em; | ||
| 709 | border-bottom: 1px solid var(--color-outline-variant); | ||
| 710 | padding-bottom: 0.3em; | ||
| 711 | } | ||
| 712 | .markdown-body h3 { | ||
| 713 | font-size: 1.25em; | ||
| 714 | } | ||
| 715 | .markdown-body h4 { | ||
| 716 | font-size: 1em; | ||
| 717 | } | ||
| 718 | .markdown-body h5 { | ||
| 719 | font-size: 0.875em; | ||
| 720 | } | ||
| 721 | .markdown-body h6 { | ||
| 722 | font-size: 0.85em; | ||
| 723 | color: var(--color-on-surface-variant); | ||
| 724 | } | ||
| 725 | |||
| 726 | /* Links */ | ||
| 727 | .markdown-body a { | ||
| 728 | color: var(--color-primary); | ||
| 729 | text-decoration: none; | ||
| 730 | } | ||
| 731 | .markdown-body a:hover { | ||
| 732 | text-decoration: underline; | ||
| 733 | } | ||
| 734 | |||
| 735 | /* Paragraphs & Lists */ | ||
| 736 | .markdown-body p, | ||
| 737 | .markdown-body blockquote, | ||
| 738 | .markdown-body ul, | ||
| 739 | .markdown-body ol, | ||
| 740 | .markdown-body dl, | ||
| 741 | .markdown-body table, | ||
| 742 | .markdown-body pre { | ||
| 743 | margin-top: 0; | ||
| 744 | margin-bottom: 16px; | ||
| 745 | } | ||
| 746 | |||
| 747 | .markdown-body hr { | ||
| 748 | height: 0.25em; | ||
| 749 | padding: 0; | ||
| 750 | margin: 24px 0; | ||
| 751 | background-color: var(--color-outline-variant); | ||
| 752 | border: 0; | ||
| 753 | } | ||
| 754 | |||
| 755 | /* Blockquotes */ | ||
| 756 | .markdown-body blockquote { | ||
| 757 | padding: 0 1em; | ||
| 758 | color: var(--color-on-surface-variant); | ||
| 759 | border-left: 0.25em solid var(--color-outline); | ||
| 760 | background-color: var(--color-surface-container-low); | ||
| 761 | } | ||
| 762 | |||
| 763 | /* Tables */ | ||
| 764 | .markdown-body table { | ||
| 765 | display: block; | ||
| 766 | width: 100%; | ||
| 767 | overflow: auto; | ||
| 768 | border-spacing: 0; | ||
| 769 | border-collapse: collapse; | ||
| 770 | } | ||
| 771 | |||
| 772 | .markdown-body table th { | ||
| 773 | font-weight: 600; | ||
| 774 | background-color: var(--color-surface-container); | ||
| 775 | } | ||
| 776 | |||
| 777 | .markdown-body table th, | ||
| 778 | .markdown-body table td { | ||
| 779 | padding: 6px 13px; | ||
| 780 | border: 1px solid var(--color-outline-variant); | ||
| 781 | } | ||
| 782 | |||
| 783 | .markdown-body table tr { | ||
| 784 | background-color: var(--color-surface); | ||
| 785 | border-top: 1px solid var(--color-outline-variant); | ||
| 786 | } | ||
| 787 | |||
| 788 | .markdown-body table tr:nth-child(2n) { | ||
| 789 | background-color: var(--color-surface-container-lowest); | ||
| 790 | } | ||
| 791 | |||
| 792 | /* Images */ | ||
| 793 | .markdown-body img { | ||
| 794 | max-width: 100%; | ||
| 795 | box-sizing: border-box; | ||
| 796 | background-color: var(--color-surface); | ||
| 797 | border-radius: 4px; | ||
| 798 | } | ||
| 799 | |||
| 800 | /* Code Blocks & Inline Code */ | ||
| 801 | .markdown-body code, | ||
| 802 | .markdown-body tt { | ||
| 803 | padding: 0.2em 0.4em; | ||
| 804 | margin: 0; | ||
| 805 | font-size: 85%; | ||
| 806 | font-family: "JetBrains Mono", "Fira Code", monospace; | ||
| 807 | background-color: var(--color-surface-container-high); | ||
| 808 | border-radius: 6px; | ||
| 809 | color: var(--color-on-surface); | ||
| 810 | } | ||
| 811 | |||
| 812 | .markdown-body pre { | ||
| 813 | padding: 16px; | ||
| 814 | overflow: auto; | ||
| 815 | font-size: 85%; | ||
| 816 | line-height: 1.45; | ||
| 817 | background-color: var(--color-surface-container-lowest); | ||
| 818 | border-radius: 6px; | ||
| 819 | border: 1px solid var(--color-outline-variant); | ||
| 820 | } | ||
| 821 | |||
| 822 | .markdown-body pre code, | ||
| 823 | .markdown-body pre tt { | ||
| 824 | display: inline; | ||
| 825 | max-width: auto; | ||
| 826 | padding: 0; | ||
| 827 | margin: 0; | ||
| 828 | overflow: visible; | ||
| 829 | line-height: inherit; | ||
| 830 | word-wrap: normal; | ||
| 831 | background-color: transparent; | ||
| 832 | border: 0; | ||
| 833 | } | ||
| 834 | |||
| 835 | /* Anchors (Permalinks) */ | ||
| 836 | .markdown-body a.headerlink { | ||
| 837 | padding-left: 1ch; | ||
| 838 | line-height: 1; | ||
| 839 | color: var(--color-primary); | ||
| 840 | text-decoration: none; | ||
| 841 | opacity: 0; | ||
| 842 | transition: opacity 0.2s; | ||
| 843 | } | ||
| 844 | |||
| 845 | .markdown-body h1:hover .headerlink, | ||
| 846 | .markdown-body h2:hover .headerlink, | ||
| 847 | .markdown-body h3:hover .headerlink, | ||
| 848 | .markdown-body h4:hover .headerlink, | ||
| 849 | .markdown-body h5:hover .headerlink, | ||
| 850 | .markdown-body h6:hover .headerlink { | ||
| 851 | opacity: 1; | ||
| 852 | } | ||
| 853 | |||
| 854 | /* Pygments Syntax Highlighting within Markdown | ||
| 855 | (Mapping standard Pygments classes to Material Variables) */ | ||
| 856 | .markdown-body .highlight .c, | ||
| 857 | .markdown-body .highlight .cm, | ||
| 858 | .markdown-body .highlight .cp, | ||
| 859 | .markdown-body .highlight .c1, | ||
| 860 | .markdown-body .highlight .cs { | ||
| 861 | color: var(--color-outline); | ||
| 862 | font-style: italic; | ||
| 863 | } | ||
| 864 | .markdown-body .highlight .k, | ||
| 865 | .markdown-body .highlight .kc, | ||
| 866 | .markdown-body .highlight .kd, | ||
| 867 | .markdown-body .highlight .kn, | ||
| 868 | .markdown-body .highlight .kp, | ||
| 869 | .markdown-body .highlight .kr, | ||
| 870 | .markdown-body .highlight .kt { | ||
| 871 | color: var(--color-primary); | ||
| 872 | font-weight: bold; | ||
| 873 | } | ||
| 874 | .markdown-body .highlight .n, | ||
| 875 | .markdown-body .highlight .na, | ||
| 876 | .markdown-body .highlight .nb, | ||
| 877 | .markdown-body .highlight .nc, | ||
| 878 | .markdown-body .highlight .no, | ||
| 879 | .markdown-body .highlight .nd, | ||
| 880 | .markdown-body .highlight .ni, | ||
| 881 | .markdown-body .highlight .ne, | ||
| 882 | .markdown-body .highlight .nf, | ||
| 883 | .markdown-body .highlight .nl, | ||
| 884 | .markdown-body .highlight .nn, | ||
| 885 | .markdown-body .highlight .nt, | ||
| 886 | .markdown-body .highlight .nv, | ||
| 887 | .markdown-body .highlight .nx { | ||
| 888 | color: var(--color-tertiary); | ||
| 889 | } | ||
| 890 | .markdown-body .highlight .s, | ||
| 891 | .markdown-body .highlight .sa, | ||
| 892 | .markdown-body .highlight .sb, | ||
| 893 | .markdown-body .highlight .sc, | ||
| 894 | .markdown-body .highlight .dl, | ||
| 895 | .markdown-body .highlight .sd, | ||
| 896 | .markdown-body .highlight .s2, | ||
| 897 | .markdown-body .highlight .se, | ||
| 898 | .markdown-body .highlight .sh, | ||
| 899 | .markdown-body .highlight .si, | ||
| 900 | .markdown-body .highlight .sx, | ||
| 901 | .markdown-body .highlight .sr, | ||
| 902 | .markdown-body .highlight .s1, | ||
| 903 | .markdown-body .highlight .ss { | ||
| 904 | color: var(--color-secondary); | ||
| 905 | } | ||
| 906 | .markdown-body .highlight .m, | ||
| 907 | .markdown-body .highlight .mb, | ||
| 908 | .markdown-body .highlight .mf, | ||
| 909 | .markdown-body .highlight .mh, | ||
| 910 | .markdown-body .highlight .mi, | ||
| 911 | .markdown-body .highlight .mo, | ||
| 912 | .markdown-body .highlight .il { | ||
| 913 | color: var(--color-primary-fixed); | ||
| 914 | } | ||
| 915 | .markdown-body .highlight .o, | ||
| 916 | .markdown-body .highlight .ow { | ||
| 917 | color: var(--color-on-surface-variant); | ||
| 918 | } | ||
| 919 | .markdown-body .highlight .g, | ||
| 920 | .markdown-body .highlight .gh, | ||
| 921 | .markdown-body .highlight .gu, | ||
| 922 | .markdown-body .highlight .gd, | ||
| 923 | .markdown-body .highlight .gi { | ||
| 924 | color: var(--color-on-surface); | ||
| 925 | } | ||
