You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

170 lines
2.9 KiB

1 year ago
1 year ago
1 year ago
  1. /* LAYOUT */
  2. body {
  3. margin: 0
  4. }
  5. footer {
  6. border-top: 0.3em dashed #722CA2;
  7. padding: 1em 1em 0 1em;
  8. background: #f1cc37;
  9. color: #5A4B0B;
  10. padding: 1em 0
  11. }
  12. main {
  13. background: #FFE98E;
  14. padding: 1em 0
  15. }
  16. header {
  17. border-bottom: 0.3em dashed #722CA2;
  18. background: #f1cc37;
  19. color: #5A4B0B;
  20. padding: 1em 0
  21. }
  22. h1 {
  23. margin: 0
  24. }
  25. :where(footer, header, main) > * {
  26. margin: 0 auto;
  27. max-width: 80rem;
  28. padding: 0 1rem
  29. }
  30. /* CALENDAR */
  31. .month {
  32. display: inline-block;
  33. vertical-align: top;
  34. margin-right: 2em;
  35. border-spacing: 0
  36. }
  37. .month tbody {
  38. border-radius: 0.3em;
  39. color: #5A4B0B;
  40. box-shadow: .4em .5em 0 0 RGBA(114, 44, 162,0.5)
  41. }
  42. .month th:first-of-type {
  43. border-top-left-radius: 0.3em
  44. }
  45. .month th:last-of-type {
  46. border-top-right-radius: 0.3em
  47. }
  48. .month tr > :last-of-type {
  49. border-right-width: 1px
  50. }
  51. .month tr:last-of-type td:first-of-type {
  52. border-bottom-left-radius: 0.3em
  53. }
  54. .month tr:last-of-type td:last-of-type {
  55. border-bottom-right-radius: 0.3em
  56. }
  57. .month tr:last-of-type td {
  58. border-bottom-width: 1px
  59. }
  60. /* date in calendar */
  61. .month :where(th, td) {
  62. width: 3.5em;
  63. height: 3.5em;
  64. border: 1px solid #CBC19A;
  65. border-width: 1px 0 0 1px;
  66. text-align: center;
  67. padding: 0;
  68. background: white;
  69. box-sizing: border-box
  70. }
  71. .month input[type=checkbox] {
  72. appearance: none;
  73. position: absolute
  74. }
  75. .month label {
  76. display: block;
  77. line-height: 3.5em
  78. }
  79. .month :focus + label {
  80. border: 1px solid #722CA2;
  81. margin: -1px
  82. }
  83. :checked + label:not(.unselecting),
  84. .selecting {
  85. background: #f1cc37
  86. }
  87. .invalid {
  88. color: #CBC19A
  89. }
  90. /* calendar on smaller screens */
  91. @media only screen and (max-width: 55em) {
  92. .month {
  93. margin-right: 1.5vw
  94. }
  95. .month th, .month td {
  96. width: 6vw
  97. }
  98. }
  99. @media only screen and (max-width: 40em) {
  100. .month {
  101. margin: 0 auto;
  102. display: table
  103. }
  104. .month th, .month td {
  105. width: 3.5em
  106. }
  107. }
  108. /* events in calendar */
  109. .event {
  110. position: relative;
  111. top: -3.5em;
  112. right: -0.9em;
  113. line-height: initial;
  114. display: block
  115. }
  116. .event::before {
  117. content: "★";
  118. position: absolute;
  119. padding: 0.5em;
  120. top: -0.5em;
  121. right: 0.5em
  122. }
  123. .event-content {
  124. visibility: hidden;
  125. position: absolute;
  126. background: white;
  127. top: 0.4em;
  128. left: 1.8em;
  129. padding: 0.4em;
  130. border: 1px solid #CBC19A;
  131. border-radius: 0.2em;
  132. box-shadow: .2em .25em 0 0 RGBA(114, 44, 162,0.5);
  133. z-index: 1
  134. }
  135. .month :where(:focus + label, td:hover, td:active) .event-content {
  136. visibility: initial
  137. }
  138. /* OTHER FORM ELEMENTS */
  139. .row {
  140. display: block;
  141. margin: 1em 0
  142. }
  143. .row > input,
  144. .row > select {
  145. padding: 0.5rem;
  146. margin-right: 1rem;
  147. width: 12rem;
  148. box-sizing: border-box;
  149. border: 1px solid #5A4B0B;
  150. border-radius: .3em;
  151. box-shadow: .4em .5em 0 0 RGBA(114, 44, 162,0.5)
  152. }
  153. .row > input[type="number"] {
  154. margin-left: 8.5rem;
  155. width: 3.5rem
  156. }
  157. .row > input[type="submit"] {
  158. background: #f1cc37
  159. }
  160. .row > input[type="submit"]:active {
  161. background: white
  162. }
  163. .row :focus-visible {
  164. outline: 0.2em #722CA2 solid
  165. }