|
1 | 1 | /* Variable definitions */
|
2 |
| -:root { |
| 2 | +:root, |
| 3 | +#djDebug[data-theme="light"] { |
3 | 4 | /* Font families are the same as in Django admin/css/base.css */
|
4 | 5 | --djdt-font-family-primary: "Segoe UI", system-ui, Roboto, "Helvetica Neue",
|
5 | 6 | Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
|
|
9 | 10 | "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New",
|
10 | 11 | monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
|
11 | 12 | "Noto Color Emoji";
|
| 13 | + |
| 14 | + color-scheme: light; |
| 15 | + --djdt-font-color: black; |
| 16 | + --djdt-background-color: white; |
| 17 | + --djdt-panel-content-background-color: #eee; |
| 18 | + --djdt-panel-content-table-background-color: var(--djdt-background-color); |
| 19 | + --djdt-panel-title-background-color: #ffc; |
| 20 | + --djdt-djdt-panel-content-table-strip-background-color: #f5f5f5; |
| 21 | + --djdt--highlighted-background-color: lightgrey; |
| 22 | + --djdt-toggle-template-background-color: #bbb; |
| 23 | + |
| 24 | + --djdt-sql-font-color: #333; |
| 25 | + --djdt-pre-text-color: #555; |
| 26 | + --djdt-path-and-locals: #777; |
| 27 | + --djdt-stack-span-color: black; |
| 28 | + --djdt-template-highlight-color: #333; |
| 29 | + |
| 30 | + --djdt-table-border-color: #ccc; |
| 31 | + --djdt-button-border-color: var(--djdt-table-border-color); |
| 32 | + --djdt-pre-border-color: var(--djdt-table-border-color); |
| 33 | + --djdt-raw-border-color: var(--djdt-table-border-color); |
| 34 | +} |
| 35 | + |
| 36 | +@media (prefers-color-scheme: dark) { |
| 37 | + :root { |
| 38 | + color-scheme: dark; |
| 39 | + --djdt-font-color: #8393a7; |
| 40 | + --djdt-background-color: #1e293bff; |
| 41 | + --djdt-panel-content-background-color: #0f1729ff; |
| 42 | + --djdt-panel-title-background-color: #242432; |
| 43 | + --djdt-djdt-panel-content-table-strip-background-color: #324154ff; |
| 44 | + --djdt--highlighted-background-color: #2c2a7dff; |
| 45 | + --djdt-toggle-template-background-color: #282755; |
| 46 | + |
| 47 | + --djdt-sql-font-color: var(--djdt-font-color); |
| 48 | + --djdt-pre-text-color: var(--djdt-font-color); |
| 49 | + --djdt-path-and-locals: #65758cff; |
| 50 | + --djdt-stack-span-color: #7c8fa4; |
| 51 | + --djdt-template-highlight-color: var(--djdt-stack-span-color); |
| 52 | + |
| 53 | + --djdt-table-border-color: #324154ff; |
| 54 | + --djdt-button-border-color: var(--djdt-table-border-color); |
| 55 | + --djdt-pre-border-color: var(--djdt-table-border-color); |
| 56 | + --djdt-raw-border-color: var(--djdt-table-border-color); |
| 57 | + } |
| 58 | +} |
| 59 | + |
| 60 | +#djDebug[data-theme="dark"] { |
| 61 | + color-scheme: dark; |
| 62 | + --djdt-font-color: #8393a7; |
| 63 | + --djdt-background-color: #1e293bff; |
| 64 | + --djdt-panel-content-background-color: #0f1729ff; |
| 65 | + --djdt-panel-title-background-color: #242432; |
| 66 | + --djdt-djdt-panel-content-table-strip-background-color: #324154ff; |
| 67 | + --djdt--highlighted-background-color: #2c2a7dff; |
| 68 | + --djdt-toggle-template-background-color: #282755; |
| 69 | + |
| 70 | + --djdt-sql-font-color: var(--djdt-font-color); |
| 71 | + --djdt-pre-text-color: var(--djdt-font-color); |
| 72 | + --djdt-path-and-locals: #65758cff; |
| 73 | + --djdt-stack-span-color: #7c8fa4; |
| 74 | + --djdt-template-highlight-color: var(--djdt-stack-span-color); |
| 75 | + |
| 76 | + --djdt-table-border-color: #324154ff; |
| 77 | + --djdt-button-border-color: var(--djdt-table-border-color); |
| 78 | + --djdt-pre-border-color: var(--djdt-table-border-color); |
| 79 | + --djdt-raw-border-color: var(--djdt-table-border-color); |
12 | 80 | }
|
13 | 81 |
|
14 | 82 | /* Debug Toolbar CSS Reset, adapted from Eric Meyer's CSS Reset */
|
15 | 83 | #djDebug {
|
16 |
| - color: #000; |
17 |
| - background: #fff; |
| 84 | + color: var(--djdt-font-color); |
| 85 | + background: var(--djdt-background-color); |
18 | 86 | }
|
19 | 87 | #djDebug,
|
20 | 88 | #djDebug div,
|
|
87 | 155 | outline: 0;
|
88 | 156 | font-size: 12px;
|
89 | 157 | line-height: 1.5em;
|
90 |
| - color: #000; |
| 158 | + color: var(--djdt-font-color); |
91 | 159 | vertical-align: baseline;
|
92 | 160 | background-color: transparent;
|
93 | 161 | font-family: var(--djdt-font-family-primary);
|
|
100 | 168 | #djDebug button {
|
101 | 169 | background-color: #eee;
|
102 | 170 | background-image: linear-gradient(to bottom, #eee, #cccccc);
|
103 |
| - border: 1px solid #ccc; |
| 171 | + border: 1px solid var(--djdt-button-border-color); |
104 | 172 | border-bottom: 1px solid #bbb;
|
105 | 173 | border-radius: 3px;
|
106 | 174 | color: #333;
|
|
268 | 336 |
|
269 | 337 | #djDebug pre {
|
270 | 338 | white-space: pre-wrap;
|
271 |
| - color: #555; |
272 |
| - border: 1px solid #ccc; |
| 339 | + color: var(--djdt-pre-text-color); |
| 340 | + border: 1px solid var(--djdt-pre-border-color); |
273 | 341 | border-collapse: collapse;
|
274 |
| - background-color: #fff; |
| 342 | + background-color: var(--djdt-background-color); |
275 | 343 | padding: 2px 3px;
|
276 | 344 | margin-bottom: 3px;
|
277 | 345 | }
|
|
283 | 351 | right: 220px;
|
284 | 352 | bottom: 0;
|
285 | 353 | left: 0px;
|
286 |
| - background-color: #eee; |
| 354 | + background-color: var(--djdt-panel-content-background-color); |
287 | 355 | color: #666;
|
288 | 356 | z-index: 100000000;
|
289 | 357 | }
|
|
294 | 362 |
|
295 | 363 | #djDebug .djDebugPanelTitle {
|
296 | 364 | position: absolute;
|
297 |
| - background-color: #ffc; |
| 365 | + background-color: var(--djdt-panel-title-background-color); |
298 | 366 | color: #666;
|
299 | 367 | padding-left: 20px;
|
300 | 368 | top: 0;
|
|
357 | 425 | }
|
358 | 426 |
|
359 | 427 | #djDebug .djdt-panelContent table {
|
360 |
| - border: 1px solid #ccc; |
| 428 | + border: 1px solid var(--djdt-table-border-color); |
361 | 429 | border-collapse: collapse;
|
362 | 430 | width: 100%;
|
363 |
| - background-color: #fff; |
| 431 | + background-color: var(--djdt-panel-content-table-background-color); |
364 | 432 | display: table;
|
365 | 433 | margin-top: 0.8em;
|
366 | 434 | overflow: auto;
|
367 | 435 | }
|
368 | 436 | #djDebug .djdt-panelContent tbody > tr:nth-child(odd):not(.djdt-highlighted) {
|
369 |
| - background-color: #f5f5f5; |
| 437 | + background-color: var(--djdt-panel-content-table-strip-background-color); |
370 | 438 | }
|
371 | 439 | #djDebug .djdt-panelContent tbody td,
|
372 | 440 | #djDebug .djdt-panelContent tbody th {
|
|
392 | 460 | }
|
393 | 461 |
|
394 | 462 | #djDebug .djTemplateContext {
|
395 |
| - background-color: #fff; |
| 463 | + background-color: var(--djdt-background-color); |
396 | 464 | }
|
397 | 465 |
|
398 | 466 | #djDebug .djdt-panelContent .djDebugClose {
|
|
433 | 501 |
|
434 | 502 | #djDebug a.toggleTemplate {
|
435 | 503 | padding: 4px;
|
436 |
| - background-color: #bbb; |
| 504 | + background-color: var(--djdt-toggle-template-background-color); |
437 | 505 | border-radius: 3px;
|
438 | 506 | }
|
439 | 507 |
|
|
445 | 513 | }
|
446 | 514 |
|
447 | 515 | #djDebug .djDebugCollapsed {
|
448 |
| - color: #333; |
| 516 | + color: var(--djdt-sql-font-color); |
449 | 517 | }
|
450 | 518 |
|
451 | 519 | #djDebug .djDebugUncollapsed {
|
452 |
| - color: #333; |
| 520 | + color: var(--djdt-sql-font-color); |
453 | 521 | }
|
454 | 522 |
|
455 | 523 | #djDebug .djUnselected {
|
|
483 | 551 | }
|
484 | 552 |
|
485 | 553 | #djDebug .highlight {
|
486 |
| - color: #000; |
| 554 | + color: var(--djdt-font-color); |
487 | 555 | }
|
488 | 556 | #djDebug .highlight .err {
|
489 |
| - color: #000; |
| 557 | + color: var(--djdt-font-color); |
490 | 558 | } /* Error */
|
491 | 559 | #djDebug .highlight .g {
|
492 |
| - color: #000; |
| 560 | + color: var(--djdt-font-color); |
493 | 561 | } /* Generic */
|
494 | 562 | #djDebug .highlight .k {
|
495 |
| - color: #000; |
| 563 | + color: var(--djdt-font-color); |
496 | 564 | font-weight: bold;
|
497 | 565 | } /* Keyword */
|
498 | 566 | #djDebug .highlight .o {
|
499 |
| - color: #000; |
| 567 | + color: var(--djdt-font-color); |
500 | 568 | } /* Operator */
|
501 | 569 | #djDebug .highlight .n {
|
502 |
| - color: #000; |
| 570 | + color: var(--djdt-font-color); |
503 | 571 | } /* Name */
|
504 | 572 | #djDebug .highlight .mi {
|
505 |
| - color: #000; |
| 573 | + color: var(--djdt-font-color); |
506 | 574 | font-weight: bold;
|
507 | 575 | } /* Literal.Number.Integer */
|
508 | 576 | #djDebug .highlight .l {
|
509 |
| - color: #000; |
| 577 | + color: var(--djdt-font-color); |
510 | 578 | } /* Literal */
|
511 | 579 | #djDebug .highlight .x {
|
512 |
| - color: #000; |
| 580 | + color: var(--djdt-font-color); |
513 | 581 | } /* Other */
|
514 | 582 | #djDebug .highlight .p {
|
515 |
| - color: #000; |
| 583 | + color: var(--djdt-font-color); |
516 | 584 | } /* Punctuation */
|
517 | 585 | #djDebug .highlight .m {
|
518 |
| - color: #000; |
| 586 | + color: var(--djdt-font-color); |
519 | 587 | font-weight: bold;
|
520 | 588 | } /* Literal.Number */
|
521 | 589 | #djDebug .highlight .s {
|
522 |
| - color: #333; |
| 590 | + color: var(--djdt-template-highlight-color); |
523 | 591 | } /* Literal.String */
|
524 | 592 | #djDebug .highlight .w {
|
525 | 593 | color: #888888;
|
526 | 594 | } /* Text.Whitespace */
|
527 | 595 | #djDebug .highlight .il {
|
528 |
| - color: #000; |
| 596 | + color: var(--djdt-font-color); |
529 | 597 | font-weight: bold;
|
530 | 598 | } /* Literal.Number.Integer.Long */
|
531 | 599 | #djDebug .highlight .na {
|
532 |
| - color: #333; |
| 600 | + color: var(--djdt-template-highlight-color); |
533 | 601 | } /* Name.Attribute */
|
534 | 602 | #djDebug .highlight .nt {
|
535 |
| - color: #000; |
| 603 | + color: var(--djdt-font-color); |
536 | 604 | font-weight: bold;
|
537 | 605 | } /* Name.Tag */
|
538 | 606 | #djDebug .highlight .nv {
|
539 |
| - color: #333; |
| 607 | + color: var(--djdt-template-highlight-color); |
540 | 608 | } /* Name.Variable */
|
541 | 609 | #djDebug .highlight .s2 {
|
542 |
| - color: #333; |
| 610 | + color: var(--djdt-template-highlight-color); |
543 | 611 | } /* Literal.String.Double */
|
544 | 612 | #djDebug .highlight .cp {
|
545 |
| - color: #333; |
| 613 | + color: var(--djdt-template-highlight-color); |
546 | 614 | } /* Comment.Preproc */
|
547 | 615 |
|
548 | 616 | #djDebug svg.djDebugLineChart {
|
|
595 | 663 | }
|
596 | 664 |
|
597 | 665 | #djDebug .djdt-stack span {
|
598 |
| - color: #000; |
| 666 | + color: var(--djdt-stack-span-color); |
599 | 667 | font-weight: bold;
|
600 | 668 | }
|
601 | 669 | #djDebug .djdt-stack span.djdt-path,
|
602 | 670 | #djDebug .djdt-stack pre.djdt-locals,
|
603 | 671 | #djDebug .djdt-stack pre.djdt-locals span {
|
604 |
| - color: #777; |
| 672 | + color: var(--djdt-path-and-locals); |
605 | 673 | font-weight: normal;
|
606 | 674 | }
|
607 | 675 | #djDebug .djdt-stack span.djdt-code {
|
|
612 | 680 | }
|
613 | 681 | #djDebug .djdt-raw {
|
614 | 682 | background-color: #fff;
|
615 |
| - border: 1px solid #ccc; |
| 683 | + border: 1px solid var(--djdt-raw-border-color); |
616 | 684 | margin-top: 0.8em;
|
617 | 685 | padding: 5px;
|
618 | 686 | white-space: pre-wrap;
|
|
631 | 699 | max-height: 100%;
|
632 | 700 | }
|
633 | 701 | #djDebug .djdt-highlighted {
|
634 |
| - background-color: lightgrey; |
| 702 | + background-color: var(--djdt--highlighted-background-color); |
635 | 703 | }
|
636 | 704 | #djDebug tr.djdt-highlighted.djdt-profile-row {
|
637 | 705 | background-color: #ffc;
|
|
654 | 722 | .djdt-hidden {
|
655 | 723 | display: none;
|
656 | 724 | }
|
| 725 | + |
| 726 | +#djDebug #djDebugToolbar a#djToggleThemeButton { |
| 727 | + display: flex; |
| 728 | + align-items: center; |
| 729 | + cursor: pointer; |
| 730 | +} |
| 731 | +#djToggleThemeButton > svg { |
| 732 | + margin-left: auto; |
| 733 | +} |
| 734 | +#djDebug[data-theme="light"] #djToggleThemeButton svg.theme-light, |
| 735 | +#djDebug[data-theme="dark"] #djToggleThemeButton svg.theme-dark, |
| 736 | +#djDebug[data-theme="auto"] #djToggleThemeButton svg.theme-auto { |
| 737 | + display: block; |
| 738 | +} |
0 commit comments