@charset "utf-8";


/************************************************************************/
/* table elements */
table { /* default table */
    width: 100%; /* для выравнивание нескольких таблиц в одном блоке */
    border-collapse: collapse;
    border: 0;
}
table.widthauto { width: auto; }
table.noframe tr, table.noframe td, table.noframe th { background: none !important; border: none !important; }
td.top { margin-top: 0; margin-bottom: auto; padding-top: 0 !important; vertical-align:top; }
td.bottom { margin-top: auto; margin-bottom: 0; padding-bottom: 0 !important; vertical-align:bottom; }
table.odd-even-gray tr:nth-child(even), table.even-odd-gray tr:nth-child(odd) { background: var(--bkclr-lightgray); }
table.odd-even-gray tr:nth-child(odd), table.even-odd-gray tr:nth-child(even) { background: white; }
table.odd-even-graylight tr:nth-child(even), table.even-odd-graylight tr:nth-child(odd) { background: var(--bkclr-lightestgray); }
table.odd-even-graylight tr:nth-child(odd), table.even-odd-graylight tr:nth-child(even) { background: white; }
table.border1light tr { border: 1px solid var(--bkclr-lightgray); }
table.border1 tr, tr.border1 { border: 1px solid var(--bkclr-midgray); }
table.border1light td, table.border1light th { border: 1px solid var(--bkclr-lightgray); }
table.border1 td, table.border1 th { border: 1px solid var(--bkclr-midgray); }
table.border2 tr, table.border2 td, table.border2 th, tr.border2 td , tr.border2 th { border: 2px solid var(--bkclr-midgray); }
.topborder2, tr.topborder2 td , tr.topborder2 th { border-top: 2px solid var(--bkclr-midgray); }
.btmborder2, tr.btmborder2 td , tr.btmborder2 th { border-bottom: 2px solid var(--bkclr-midgray); }
.btmborder3, tr.btmborder3 td , tr.btmborder3 th { border-bottom: 3px solid var(--bkclr-midgray); }
table.hborder td, table.hborder th { border-top: 1px solid var(--bkclr-midgray); border-bottom: 1px solid var(--bkclr-midgray); }
table.vborder td, table.vborder th { border-left: 1px solid var(--bkclr-midgray); border-right: 1px solid var(--bkclr-midgray); }
table.vpad1 td, table.vpad1 th { padding-top: 1px !important; padding-bottom: 1px !important; }
table.hpad1 td, table.hpad1 th { padding-left: 1px !important; padding-right: 1px !important; }
table.hpad2 td, table.hpad2 th { padding-left: 2px !important; padding-right: 2px !important; }
td.hpad2px, th.hpad2px { padding-left: 2px !important; padding-right: 2px !important; }
table.hpad4 td, table.hpad4 th { padding-left: 4px !important; padding-right: 4px !important; }
table.novpad td, table.novpad th { padding-top: 0 !important; padding-bottom: 0 !important; }
table.nopad tr, table.nopad td, table.nopad th { padding: 0 !important; }
table.pad1 td, table.pad1 th, tr.pad1 td, tr.pad1 th, td.pad1 { padding: 1px; }
table.pad2 td, table.pad2 th, tr.pad2 td, tr.pad2 th, td.pad2  { padding: 2px; }
table.pad3 td, table.pad3 th, tr.pad3 td, tr.pad3 th, td.pad3  { padding: 3px; }
table.pad4 td, table.pad4 th, tr.pad4 td, tr.pad4 th, td.pad4  { padding: 4px; }
table.pad6 td, table.pad6 th, tr.pad6 td, tr.pad6 th, td.pad6  { padding: 6px; }
table.pad8 td, table.pad8 th, tr.pad8 td, tr.pad8 th, td.pad8  { padding: 8px; }
table.pad03rem td, table.pad03rem th, tr.pad03rem td, tr.pad03rem th  { padding: 0.3rem; }
table.pad05rem td, table.pad05rem th, tr.pad05rem td, tr.pad05rem th  { padding: 0.5rem; }
table.pad1rem td, table.pad1rem th, tr.pad1rem td, tr.pad1rem th  { padding: 1rem; }
table.nowrap td, table.nowrap th { white-space: nowrap; } /* на всю таблицу */ 
tr.nowrap td, tr.nowrap th { white-space: nowrap; } /* на данную строку */ 
td.fixwidth, th.fixwidth { width: 1%; white-space: nowrap; }

table.nopadpar p { padding: 0; margin: 0; line-height: 1; }
table.minpadpar p { padding: 0; margin: 0.3rem; line-height: 1; }
table.nowrap p { white-space: nowrap; }

table.lightheader th, tr.lightheader th, th.lightheader, .lightheader 
{ background: var(--bkclr-midgray); color: var(--clr-black); }
tr.darkheader th, tr.darkheader td, .darkheader { background: var(--clr-darkgray); color: white; }
tr.midheader th, tr.midheader td, .midheader { background: var(--clr-midgray) !important; color: white; }
table.school tr { border-top: 0 none; border-bottom-width: 0 none; }
table.school th { border-top: 0 none; border-bottom-width: 0 none; }
table.nodec a { text-decoration: none; color: unset; }
tr.top td, tr.top th { border-top: 1px solid var(--clr-lightgray); }
tr.bottom td, tr.bottom th { border-bottom: 1px solid var(--clr-lightgray); }
tr.top2 td, tr.top2 th { border-top: 2px solid var(--clr-lightgray); }
tr.bottom2 td, tr.bottom2 th { border-bottom: 2px solid var(--clr-lightgray); }
tr.pad4 td { padding: 4px; }
tr.hpad4 td, table.hpad4 td{ padding-right: 4px; padding-left: 4px; }
tr.hpad6 td, table.hpad6 td{ padding-right: 6px; padding-left: 6px; }
tr.hpad8 td, table.hpad8 td{ padding-right: 8px; padding-left: 8px; }
tr.vpad4 td { padding-top: 4px; padding-bottom: 4px; }
tr.tpad4 td { padding-top: 4px; }
tr.bpad4 td { padding-bottom: 4px; }

table.hotraw tr:hover td { background: var(--bkclr-lightblue); cursor: pointer; }
tr.hotraw td { background: var(--bkclr-lightblue); }
td.hothover:hover { background: var(--bkclr-lightblue); }
td.hot:hover { background: var(--bkclr-lightblue); }

table.air td { padding: 0.5rem; white-space: nowrap; }

/************************************************************************/
/* teacher-job-matrix */
table.job td, table.job th {
    padding: 3px; 
    white-space: nowrap;
    font-size: small;
    border: 1px solid var(--bkclr-midgray); 
}
table.job th { background: var(--bkclr-blue); border-width: 0; }
table.job tr.teacher td { background: var(--bkclr-lightgray); border-top: 2px solid var(--clr-lightgray); }
table.job tr.subject td { background: white; color: var(--clr-darkgray); padding-top: 0; padding-bottom: 0; }

td.nopad { padding: 0; }
tr.bold-top td { border-top-width: 2px; border-top-color: var(--bkclr-midgray); }
tr.bold-bottom td { border-bottom-width: 2px; border-bottom-color: var(--bkclr-midgray); }
td.bold-left, th.bold-left { border-left-width: 2px !important; border-left-color: var(--bkclr-midgray); }
td.bold-right, th.bold-right { border-right-width: 2px !important; }

/************************************************************************/
table.ttday { 
    width: 100%; /* если рядом есть другая таблица, надо сделать их одинаковыми (растянуть меньшую) */
    border: 1px solid var(--bkclr-midgray) !important; 
    /*box-shadow: 0.2rem 0.2rem 3px rgba(122,122,122,0.5);/**/ 
}
table.ttday tr { border-right: 1px solid var(--bkclr-midgray); }
table.ttday td.brdright { border-right: 1px solid var(--bkclr-midgray); }
table.ttday td { padding: 0 0.3rem; }
table.ttday tr.padtop td    { padding-top: 0.3rem; border-top: solid var(--bkclr-midgray) 1px; }
table.ttday tr.padbottom td { padding-bottom: 0.3rem; border-bottom: solid var(--bkclr-midgray) 1px; }

/************************************************************************/
/* school-data */
table.school tr:nth-child(even) { background: white; }
table.school tr:nth-child(odd) { background: var(--bkclr-lightgray); }
table.school tr.even { background: white; }
table.school tr.odd { background: var(--bkclr-lightgray); }
table.school td, table.school th { 
    padding: 4px; 
    border: 1px solid var(--bkclr-midgray); /**/
}
table.school th { background: var(--clr-darkgray); color: white;  }
table.school th { border-top-width: 0; border-bottom-width: 0; }
table.school a { text-decoration: none; color: unset; }

