schedule-grid-js/www/main.css

219 lines
3.6 KiB
CSS

table {
padding: 0;
margin: 0;
}
table.schedule, table.schedule tr, table.schedule td {
border: solid black 1px;
border-collapse: collapse;
}
.location {
font-variant: small-caps;
font-size: 1em;
text-decoration: underline;
}
.staff {
font-weight: bold;
}
.staff a, .student a {
text-decoration: none;
}
td.compact {
font-size: .9em;
line-height: 1em;
}
td.location_only {
font-size: 2em;
text-align: center;
vertical-align: center;
}
td.location_only .location {
text-decoration: none;
}
td.location_only.compact {
font-size: 1em;
}
.notes {
left: 0;
bottom: 0.2em;
position: absolute;
}
table.schedule td.event {
position: relative;
vertical-align: top;
}
table.schedule, table.schedule td.event {
border: solid black 2px;
}
table.schedule {
width: 10in;
height: 7.5in;
table-layout: fixed;
font-size: .8em;
}
table.narrow {
width: 3in;
}
table.multiday {
border: none;
border-style: none;
width: 100%;
}
.own-page {
page-break-before: always;
}
h1 {
page-break-before: always;
text-align: center;
font-size: 0.8em;
margin: 0em;
}
h2 {
text-align: center;
font-size: 0.8em;
margin: 0em;
}
table.schedule tr, .row_time {
height: .9em;
}
table.schedule th, .row_time {
max-width: 6ex;
width: 6ex;
}
table.schedule th {
border-left: solid black 2px;
border-right: solid black 2px;
}
.row_time {
font-weight: normal;
}
.row_time.hour {
font-weight: bolder;
}
@media print {
.noprint {
display: none;
}
}
div#assignmentFormDiv {
position: fixed;
top: 0;
right: 0;
z-index: 3000;
height: calc(100% - 4px);
}
form#assignmentForm {
background: lightgreen;
border: 4px solid blue;
z-index: 3000;
overflow-y: scroll;
max-height: calc(100% - 4px);
}
#assignmentForm .foldCheckboxHeader {
margin: 0;
}
table.peopleTable, table.peopleTable th, table.peopleTable td {
border: 1px solid white;
border-collapse: collapse;
background: white;
height: 100%;
}
table.peopleTable th label, table.peopleTable td label {
display: flex;
flex-direction: column;
text-align: center;
min-width: 2ex;
height: 100%;
vertical-align: middle;
justify-content: center;
}
table.peopleTable input {
display: none;
}
table.peopleTable input + label {
background: lightgray;
font-size: 0.5em;
height: 100%;
min-width: 4ex;
}
table.peopleTable input:checked + label {
background: limegreen;
font-size: 1em;
min-width: 2ex;
}
table.peopleTable th {
font-weight: bold;
}
input:invalid {
background: red;
}
table.schedule td.event.editing {
background: yellow;
border: solid gold 2px;
}
.warningsSection {
background: #c99;
}
.foldCheckbox {
display: none;
}
.foldCheckbox + .foldCheckboxHeader + .foldable {
display: none;
}
.foldCheckbox:checked + .foldCheckboxHeader + .foldable {
display: block;
}
.foldCheckbox + .foldCheckboxHeader label:before {
content: "[+] ";
font-family: monospace;
}
.foldCheckbox:checked + .foldCheckboxHeader label:before {
content: "[-] ";
}
.foldable {
display: none;
}
.warningHeader {
color: darkred;
}
.warningHeader label {
cursor: pointer;
}
#scheduleSettings div {
margin: 1em;
}
@media not print {
.clickable {
cursor: pointer;
text-decoration: underline;
color: darkblue;
}
.invalid_start_time {
border-top-color: red !important;
}
.invalid_start_time:before {
color: red;
content: "Event starts before start of schedule. ";
}
.invalid_end_time {
border-bottom-color: red !important;
}
.invalid_end_time:before {
color: red;
content: "Event ends after end of schedule. ";
}
}