main.scss 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258
  1. // Base styles
  2. body {
  3. margin: 0;
  4. padding: 0;
  5. font-family: Arial, sans-serif;
  6. background-color: #222;
  7. color: #eee;
  8. }
  9. // Main container
  10. .meteo {
  11. &__nav {
  12. display: flex;
  13. background-color: #333;
  14. }
  15. &__nav-btn {
  16. flex: 1;
  17. padding: 15px;
  18. border: none;
  19. color: #eee;
  20. cursor: pointer;
  21. outline: none;
  22. background: linear-gradient(#232422, #161715);
  23. font-size: 16px;
  24. transition: background 0.2s ease;
  25. border-bottom: 2px solid #28A3E9;
  26. &:hover {
  27. background: #555;
  28. }
  29. &--active {
  30. background: linear-gradient(#279FE3, #1C5A7C);
  31. border-bottom: none;
  32. }
  33. }
  34. &__tab {
  35. padding: 20px;
  36. background-color: #171816;
  37. &--hidden {
  38. display: none;
  39. }
  40. }
  41. &__content {
  42. display: flex;
  43. flex-wrap: wrap;
  44. gap: 2px;
  45. @media (max-width: 1306px) {
  46. flex-direction: column;
  47. }
  48. }
  49. }
  50. // Mode selector
  51. .mode-selector {
  52. display: flex;
  53. margin-bottom: 20px;
  54. &__btn {
  55. padding: 10px 20px;
  56. border: none;
  57. background: #444;
  58. color: #eee;
  59. cursor: pointer;
  60. outline: none;
  61. font-size: 14px;
  62. margin-right: 10px;
  63. transition: background 0.2s ease;
  64. &:hover {
  65. background: #555;
  66. }
  67. &--active {
  68. background: #555;
  69. }
  70. }
  71. }
  72. // Input form
  73. .input-form {
  74. &__group {
  75. display: flex;
  76. }
  77. &__label {
  78. display: flex;
  79. align-items: center;
  80. width: 40%;
  81. padding: 20px 37px 20px 14px;
  82. font-size: 18px;
  83. color: #ECEBBE;
  84. background: #232420;
  85. white-space: wrap;
  86. }
  87. &__field {
  88. width: 60%;
  89. padding: 18px;
  90. font-size: 26px;
  91. background: #2F312B;
  92. color: #eee;
  93. border: none;
  94. outline: none;
  95. &:focus {
  96. border-color: #777;
  97. }
  98. }
  99. }
  100. // Buttons
  101. .meteo-btn {
  102. padding: 20px;
  103. border: none;
  104. border-radius: 5px;
  105. color: #ECEBBE;
  106. cursor: pointer;
  107. font-size: 20px;
  108. margin-top: 10px;
  109. transition: 0.2s ease;
  110. &--primary {
  111. background: linear-gradient(#279FE3, #1C5A7C);
  112. }
  113. &--red {
  114. background: linear-gradient(#FE452C, #BA2101);
  115. }
  116. &:hover:not(:disabled) {
  117. opacity: .8;
  118. }
  119. &:disabled {
  120. background: #444;
  121. cursor: not-allowed;
  122. }
  123. }
  124. // Result panel
  125. .result-panel {
  126. flex: 1;
  127. padding: 10px;
  128. &:last-child {
  129. border: 2px solid #28A3E9;
  130. border-radius: 5px;
  131. }
  132. &__header {
  133. background: linear-gradient(#242523, #171816);
  134. border-bottom: 2px solid #28A3E9;
  135. display: flex;
  136. justify-content: center;
  137. align-items: center;
  138. height: 65px;
  139. }
  140. &__title {
  141. color: #ECEBBE;
  142. font-size: 16px;
  143. }
  144. &__subtitle {
  145. color: #fff;
  146. font-size: 24px;
  147. }
  148. &__dates {
  149. display: flex;
  150. gap: 2px;
  151. height: 30px;
  152. margin-bottom: 40px;
  153. }
  154. &__date {
  155. background-color: #2F312B;
  156. flex: 1;
  157. font-size: 24px;
  158. text-align: center;
  159. height: 65px;
  160. padding: 16px;
  161. box-sizing: border-box;
  162. }
  163. &__dt-list {
  164. display: flex;
  165. width: 100%;
  166. }
  167. &__dt {
  168. &:first-child {
  169. margin-left: 27%;
  170. }
  171. &:nth-child(2) {
  172. margin-left: 26%;
  173. }
  174. &:last-child {
  175. margin-left: 28%;
  176. }
  177. }
  178. }
  179. // Meteo table
  180. .meteo-table {
  181. background: #333;
  182. border: 1px solid #555;
  183. max-height: 532px;
  184. overflow-y: auto;
  185. &__content {
  186. width: 100%;
  187. border-collapse: collapse;
  188. }
  189. &__cell {
  190. border: 1px solid #171816;
  191. background-color: #2F312B;
  192. padding: 5px;
  193. width: 20%;
  194. height: 55px;
  195. text-align: center;
  196. &:first-child {
  197. width: 10%;
  198. }
  199. }
  200. }
  201. // Log table
  202. .log {
  203. margin-top: 20px;
  204. max-height: 725px;
  205. overflow: auto;
  206. &__table {
  207. width: 100%;
  208. border-collapse: collapse;
  209. }
  210. &__cell {
  211. border: 1px solid #555;
  212. padding: 8px;
  213. text-align: center;
  214. height: 55px;
  215. &--header {
  216. background: #444;
  217. }
  218. }
  219. }