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.

174 lines
3.0 KiB

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