style.tcss 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. Screen { align: center middle; }
  2. #main_container { width: 95%; height: 95%; border: solid green; padding: 1 2; }
  3. /* =========================================
  4. Top Section: Configuration
  5. ========================================= */
  6. #config_section {
  7. height: 35%; /* Constrains height so it doesn't take over */
  8. margin-bottom: 1;
  9. border: round gray;
  10. padding: 1;
  11. }
  12. #config_left_col {
  13. width: 1fr;
  14. padding-right: 2;
  15. height: 100%;
  16. }
  17. #config_right_col {
  18. width: 2fr;
  19. height: 100%;
  20. }
  21. /* Ensure buttons take up consistent space and stack cleanly */
  22. #load_btn, #reload_btn {
  23. width: 100%;
  24. margin-top: 1;
  25. margin-bottom: 0;
  26. }
  27. #config_display {
  28. height: 1fr;
  29. border: round $primary-muted;
  30. background: $surface;
  31. }
  32. /* =========================================
  33. Bottom Section: Columns
  34. ========================================= */
  35. #bottom_area { height: 1fr; margin-top: 0; }
  36. #control_panel { width: 6fr; padding-right: 1; }
  37. #log_panel { width: 5fr; height: 1fr; border: solid white; }
  38. /* Controls, Dropdowns, and Status */
  39. #status_row {
  40. height: 3;
  41. margin-bottom: 1;
  42. }
  43. #log_header_row {
  44. height: auto;
  45. margin-bottom: 0;
  46. }
  47. #log_status_row {
  48. height: auto;
  49. margin-bottom: 1;
  50. }
  51. #scenario_select {
  52. width: 1fr;
  53. margin-right: 1;
  54. }
  55. #pipeline_status_label {
  56. width: 1fr;
  57. height: 3;
  58. content-align: center middle;
  59. background: $boost;
  60. border: round $primary;
  61. text-style: bold;
  62. }
  63. Button { margin-top: 0; margin-bottom: 0; width: 100%; }
  64. #active_controls { height: auto; }
  65. #active_controls Button { width: 1fr; margin-right: 1; }
  66. #btn_start { margin-bottom: 1; }
  67. RichLog { height: 1fr; }
  68. /* =========================================
  69. Progress Bars Setup
  70. ========================================= */
  71. #progress_area { height: auto; margin-top: 0; margin-bottom: 0; }
  72. .progress_row {
  73. height: 4;
  74. layout: horizontal;
  75. display: none;
  76. border: round $primary-muted;
  77. background: $surface;
  78. padding: 0 1;
  79. margin-bottom: 0;
  80. }
  81. .progress_title {
  82. width: 16;
  83. height: auto;
  84. content-align: left middle;
  85. padding-right: 1;
  86. margin-right: 1;
  87. text-style: bold;
  88. border-right: solid $primary-muted;
  89. }
  90. .progress_bar { width: 1fr; height: 2; margin-top: 0; }
  91. ProgressBar ETAStatus { width: auto; }
  92. .progress_stats {
  93. width: 8;
  94. height: auto;
  95. content-align: right middle;
  96. padding-left: 1;
  97. margin-left: 1;
  98. border-left: solid $primary-muted;
  99. }
  100. #progress_bar_1 .bar--complete { background: $secondary; }
  101. #progress_bar_2 .bar--complete { background: $warning; }
  102. #progress_bar_3 .bar--complete { background: $error; }
  103. #progress_bar_4 .bar--complete { background: $accent; }
  104. /* =========================================
  105. Modal Screen CSS
  106. ========================================= */
  107. OverwriteConfirmScreen { background: $background 80%; }
  108. #warning_label { width: 100%; height: auto; }
  109. #dialog { padding: 1 2; border: thick $error; width: 60; height: auto; background: $surface; }
  110. #dialog_buttons { margin-top: 2; align: right middle; height: auto; }
  111. #dialog_buttons Button { width: auto; margin-left: 2; margin-top: 0; margin-bottom: 0; }