1 /* Table styling. */ 2 3 table.calendar, 4 table.conflicts, 5 table.object { 6 border: 2px solid #000; 7 } 8 9 colgroup#columns-request { 10 background-color: #eef; 11 } 12 13 colgroup#columns-freebusy { 14 background-color: #fee; 15 } 16 17 th.requestheading { 18 background-color: #aaf; 19 } 20 21 th.participantheading{ 22 background-color: #faa; 23 } 24 25 th.dayheading, 26 th.mainheading { 27 background-color: #f85; 28 } 29 30 th.timeslot, 31 th.objectheading { 32 vertical-align: top; 33 white-space: nowrap; 34 } 35 36 th.timeslot { 37 padding-top: 0; 38 } 39 40 th.timeslot span.endpoint { 41 display: none; 42 font-size: smaller; 43 } 44 45 td.event { 46 background-color: #ff8; 47 border: 2px solid #000; 48 } 49 50 td.event.organising { 51 background-color: #af8; 52 } 53 54 td.event.continued { 55 border-top: 2px dotted #000; 56 } 57 58 td.event.continues { 59 border-bottom: 2px dotted #000; 60 } 61 62 td.event:target { 63 background-color: #5f4; 64 border-width: 4px; 65 } 66 67 td.event a { 68 color: #009; 69 } 70 71 .error { 72 background-color: #faa; 73 } 74 75 /* Selection of slots/periods for new events. */ 76 77 input.newevent.selector { 78 display: none; 79 } 80 81 th.container, 82 td.container { 83 padding: 0; /* for regions covered by labels */ 84 } 85 86 th.dayheading:hover, 87 th.dayheading:focus, 88 th.timeslot:hover, 89 th.timeslot:focus, 90 td.container:hover, 91 td.container:focus { 92 background-color: #af8; 93 } 94 95 label.day, 96 label.newevent.popup { 97 display: block; /* to make labels cover regions */ 98 padding: 0.25em; 99 } 100 101 label.newevent.popup { 102 visibility: hidden; 103 text-align: center; 104 } 105 106 td.container:hover label.newevent.popup, 107 td.container:focus label.newevent.popup { 108 visibility: visible; 109 } 110 111 input.newevent:checked ~ .timepoint { 112 background-color: #5f4; 113 text-decoration: underline; 114 } 115 116 /* Hiding/showing busy slots/periods or unused days. */ 117 118 /* Hide the controls. */ 119 120 input#hidebusy, 121 input#showdays, 122 123 /* Hide the enable labels when controls are already enabled. */ 124 /* Hide the disable labels when controls are already disabled. */ 125 126 input#hidebusy:checked ~ .controls label.enable[for=hidebusy], 127 input#showdays:checked ~ .controls label.disable[for=showdays], 128 input#hidebusy:not(:checked) ~ .controls label.disable[for=hidebusy], 129 input#showdays:not(:checked) ~ .controls label.enable[for=showdays], 130 131 /* Hide calendar rows depending on the selected controls. */ 132 133 input#hidebusy:checked ~ .calendar tr.slot.busy, 134 input#showdays:not(:checked) ~ .calendar thead.separator.empty, 135 input#showdays:not(:checked) ~ .calendar tbody.points.empty, 136 137 /* Hiding/showing end datetimes and start/end times. */ 138 139 input#dttimes-disable, 140 input#dttimes-enable, 141 input#dtend-disable, 142 input#dtend-enable, 143 input#dttimes-disable:checked ~ .object td.objectvalue .time.enabled, 144 input#dttimes-enable:checked ~ .object td.objectvalue .time.disabled, 145 input#dtend-disable:checked ~ .object td.objectvalue.dtend .dt.enabled, 146 input#dtend-enable:checked ~ .object td.objectvalue.dtend .dt.disabled, 147 148 /* Hiding/showing remove/uninvite labels. */ 149 150 input.remove, 151 input.remove:checked ~ label.remove, 152 input.remove:not(:checked) ~ label.removed { 153 display: none; 154 } 155 156 /* Show slot endpoints when hiding adjacent busy periods. */ 157 158 input#hidebusy:checked ~ .calendar th.timeslot span.endpoint { 159 display: block; 160 } 161 162 /* Style the labels. */ 163 164 label.remove, 165 label.removed { 166 float: right; 167 } 168 169 .dt.disabled label, 170 .dt.enabled label, 171 label.remove, 172 label.removed, 173 label.hidebusy, 174 label.showdays { 175 color: #009; 176 text-decoration: underline; 177 } 178 179 .dt.enabled label { 180 display: block; 181 margin-top: 0.25em; 182 } 183 184 label.hidebusy, 185 label.showdays { 186 padding-left: 0.25em; 187 } 188 189 label.showdays { 190 border-left: 1em solid #faa; /* th.participantheading background-color */ 191 } 192 193 label.hidebusy { 194 border-left: 1em solid #af8; /* td.event background-color */ 195 }