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. "; } }