body { margin-bottom:45pt; }
form { margin:0; }

a			{ text-decoration: none; color: #0000f0; }
a:visited		{ text-decoration: none; color: #800080; }
a:hover			{ text-decoration: underline; }

* { font-family:'PT Sans',sans-serif;}
div, p, td, th { font-size:10pt; }
h1 { font-size:16pt; margin:0 0 2pt 0; padding:1pt 6pt;
     border-width:1px; border-color:#aaf; border-style:none solid solid none;
     background-color:#ccf; background-image:url('/images/gradient.gif'); background-repeat:repeat-y; }
h1:first-letter { font-family:'PT Sans Caption',sans-serif; font-size:20pt; color:#00a; }
h2 { font-size:11pt; margin:10pt 0 10pt 0; padding:1pt 6pt;
     border-width:1px; border-color:#aaf; border-style:none solid solid none;
     background-color:#ccf; background-image:url('/images/gradient.gif'); background-repeat:repeat-y; }
h2:first-letter { font-family:'PT Sans Caption',sans-serif; font-size:13pt; color:#00a; }
h3 { font-size:12pt; margin-bottom:6pt; }
h4 { font-size:10pt; margin-bottom:4pt; color:#007; }
p { margin:0 6pt 6pt 6pt; }
.bold {
    font-weight: bold;
}

#neslogo { position:absolute; top:8px; left:8px; }

#neslogo a {
    display: block;
    width: 119px;
    height: 80px;
    background-color: transparent;
    background-image: url("/images/nes_logo_ru_80.gif");
    background-repeat: no-repeat;
    text-decoration: none;
    text-indent: -700em;
}


#pagetitle { margin:0px 0px 12pt 0px; height:80px; padding:0px 0px 0px 128px; }

#fc { width:350px; border-right:1px solid #aaf; padding:0; }
#fc h2 { border-style:none none solid none; }

input, select, textarea { background-color:white; color:black; border:1px solid #aaf; }
input.notreq, textarea.notreq { border:1px dotted #99c; }
input.borderless { border-style:none; }

table.formtbl { margin:0 0 18pt 0; background-color:#fff; }
table.formtbl td { font-size:10pt; padding:2pt 4pt; }
table.formtbl th { font-size:10pt; font-weight:normal; padding:4pt 0 2pt 10pt; text-align:right; }

.error { color:red; font-weight:bold; font-size:8pt; }
h3.error { display:none; color:red; font-weight:bold; font-size:8pt; }
.subh { border-bottom:1px solid #aaf; padding:1pt 10pt; font-weight:bold; font-style:italic; }
.submitbutton { margin:6pt 15pt 6pt 15pt; }
.add_del_buttons { margin:0 0 18pt 30pt; }
.small { font-size:80%; color:#888; }

.help_button  { width:19px; height:19px; font-weight:bold; margin-left:6pt; text-align:center;
		background-color:#e4e4fe; border:1px solid #aaf; color:#00a; cursor:hand; }
.help_message { width:235px; height:auto; position:absolute; display:none;
		border:1px solid #55a; background-color:#e4e4fe; filter:progid:DXImageTransform.Microsoft.Glow(color="#bbbbdd",strength=7); }
.help_message .text { margin:2pt 6pt 6pt 6pt; font-size:9pt; }
.help_message hr { width:75%; height:1px; text-align:center; color:#55a; }
.close_button { width:13px; height:13px; float:right; font-size:9px; font-weight:bold; text-align:center;
		border:1px solid #aaf; background-color:white; cursor:hand; margin:2px; }

.icon { width:16px; height:16px; margin-right:4pt; position:relative; top:3px; border-width:0px; }
.icon1 { margin-right:4pt; position:relative; top:1px; border-width:0px; }
.ricon1 { margin-left:4pt; position:relative; top:1px; border-width:0px; }
#headertable { width:100%; margin:0px; padding:0px; }
.help_image {
     padding-left: 5px;
}
.help_image:hover {
     cursor: pointer;
}
.help_tooltip {
     position: relative;
     display: inline-block;
     padding-left: 5px;
}
.help_tooltip .tooltiptext {
     visibility: hidden;
     width: 500px;
     background-color: #ccc;
     color: #000;
     text-align: center;
     border-radius: 6px;
     padding: 10px;
 
     /* Position the tooltip */
     position: absolute;
     z-index: 1;
 }
 
 .help_tooltip:hover .tooltiptext {
     visibility: visible;
 }

/* used as lists for decanat, has yellowish headers */
.table4			{ margin:0 0 4pt 30pt; page-break-inside:avoid; border-collapse:collapse; }
.table4 td		{ border:1px solid #bbb; padding:1px 4px; cursor:default; border-spacing:0pt; }
.table4 th		{ border:1px solid #777; padding:1px 4px; cursor:default; background-color:#ddf; font-weight:bold; }
.table4 .subheader	{ border-style:none; padding-top:6pt; background-color:white; }

/* used mainly as forms */
.table5			{ width:100%; }
.table5 td		{ padding:1pt 3pt; }
.table5 th		{ padding:1pt 3pt; color:black; background-color:white; font-weight:normal; vertical-align:top; text-align:right; }
.table5 th.subheader { font-weight:bold; font-size:11pt; margin:0 0 6pt 0; padding:1pt 6pt;
     border-width:1px; border-color:#aaf; border-style:none solid solid none; text-align:left;
     background-color:#ccf; background-image:url('/images/gradient.gif'); background-repeat:repeat-y; }
.table5 .long, .table5 .long_has_error		{ width:100%; overflow:hidden; }
.table5 .has_error, .table5 .long_has_error	{ color:red; font-weight:bold; }

/* airy table, with no grid lines */
table.table7		{ border-collapse: collapse; }
table.table7 td		{ padding: 2pt 10pt 2pt 6pt; }
table.table7 th		{ padding: 2pt 10pt 1pt 6pt; background-color: white; border-style: none;
			  border-bottom: 1px solid #5275bd; font-weight: bold; }
input.entrance          { border-style:none; background-color:transparent; }

img		{ border-style:none; }
.formhead { width:80%; margin-left:10%; margin-top:10pt; margin-bottom:10pt; color:#000080; }
.formhead_red { width:80%; margin-left:10%; margin-top:10pt; margin-bottom:10pt; color:#ff0000; font-weight: bold; }
.formhead_green { width:80%; margin-left:10%; margin-top:10pt; margin-bottom:10pt; color:#00dd00; font-weight: bold; }
.error_doc { width:80%; margin-left:10%; color:#ff0000; font-weight: bold; }
p.declaration { width:80%; margin-left:10%; margin-top:10pt; margin-bottom:10pt; color:#a00000; text-align:center; }
p.epgu { width:80%; margin-left:10%; margin-top:10pt; margin-bottom:10pt; color:#a00000; }
table.date { width:90%; margin-left:5%; margin-top:40pt; display:none; }

.buttons { margin: 5pt 0 10pt 30pt; border:0; border-collapse:collapse; }
.buttons td.l { width:355px; padding:0; text-align:right; }
.buttons td.f { width:355px; padding:0; text-align:left; }

.appointments { margin: 5pt 0 0 30pt; border-collapse:collapse; }
.appointments th { text-align:center; border:1px solid #669; background-color:#ddf; cursor:default; width:115px; height:20px; }
.appointments td { text-align:center; border:1px solid #669; background-color:#fff; cursor:default; width:115px; height:20px; }

td.empty_slot { border:2px solid #669; background-color:#dfd; cursor:pointer; }
td.expired_slot { border:2px solid #669; background-color:#ddd; }
td.occupied_slot { border:2px solid #669; background-color:#fdd; }
td.my_slot { border:2px solid #669; background-color:#ddf; cursor:pointer; }

.grade { font-weight:bold; color: #008800; }
.grade_fail {color: black; background-color: red; padding: 0 4pt;}
.grade_12, .grade_11, .grade_10 { color: #ff0000; }
.grade_9, .grade_8, .grade_7, .grade_6 { color: #ff8800; }
.grade_5, .grade_4, .grade_3 { color: #008800; }
.grade_2 { background-color: red; padding: 0 4pt;}

.grade_math12, .grade_math11, .grade_math10 { color: #ff0000; }
.grade_math9, .grade_math8, .grade_math7, .grade_math6 { color: #ff8800; }
.grade_math5, .grade_math4, .grade_math3 { color: #008800; }
.grade_math2 { background-color: red; padding: 0 4pt; }

.grade_engl10 { color: #ff0000; }
.grade_engl9, .grade_engl8, .grade_engl7, .grade_engl6 { color: #ff8800; }
.grade_engl5, { color: #008800; }
.grade_engl4, .grade_engl3, .grade_engl2 { background-color: red; padding: 0 4pt; }

.grade2_22, .grade2_21, .grade2_20, .grade2_19, .grade2_18, .grade2_17, .grade2_16, .grade2_15, .grade2_14, .grade2_13, .grade2_12, .grade2_11, .grade2_10, .grade2_9 { font-weight:bold; }
.grade2_22, .grade2_21, .grade2_20, .grade2_19 { color: #ff0000; }
.grade2_18, .grade2_17, .grade2_16, .grade2_15, .grade2_14 { color: #ff8800; }
.grade2_13, .grade2_12, .grade2_11, .grade2_10, .grade2_9 { color: #008800; }

.grade3_32, .grade3_31, .grade3_30, .grade3_29, .grade3_28, .grade3_27, .grade3_26, .grade3_25, .grade3_24, .grade3_23, .grade3_22, .grade3_21, .grade3_20, .grade3_19, .grade3_18, .grade3_17, .grade3_16, .grade3_15 { font-weight:bold; }
.grade3_32, .grade3_31, .grade3_30, .grade3_29, .grade3_28 { color: #ff0000; }
.grade3_27, .grade3_26, .grade3_25, .grade3_24, .grade3_23 { color: #ff8800; }
.grade3_22, .grade3_21, .grade3_20, .grade3_19, .grade3_18, .grade3_17, .grade3_16, .grade3_15 { color: #008800; }

th.m, td.m { border-left:0; border-right:0; text-align: center;}
th.l, td.l { border-left:0; text-align: right;}
th.f, td.f { border-right:0; text-align: left;}
tr.expired { color:#bbbbbb; }
tr.disabled { background-color:#dddddd; }
tr.active { background-color:#dfddff; }

td.td_check_all { border-right:0; text-align: right; padding-right: 52.5px; font-weight: bold;}
td.td_check_all > label {
    display: flex;
    justify-content: end;
    align-items: center;
}
.check_all { margin-left: 0.5rem; }

div.actions { margin:10pt 20pt; }
.actions>p { margin: 0}
.error1 { color:red; font-weight:bold; }

p.disclamer { color:#cc0000; font-weight:bold; font-style:italic; }
pre.essay { display:none; }

.no_visible { display:none; }

.link {
    cursor: pointer;
    color: #0000f0;
}

.info {
    color: #ff8800;
}

.send_button {
    margin-left: 10%;
}

.custom-checkbox, .custom-checkbox-checked {
    display: inline-block;
    width: 11px; 
    height: 11px;
    margin-right: 10px;
    border: 1px solid #888;  
    border-radius: 20%;
}

.custom-checkbox-checked {
    position: relative;
    border: 1px solid #0075ff;
    background: #0075ff; 
}

.custom-checkbox-checked::after {
    content: '\2713';
    color: white;
    font-size: 10px;
    position: absolute; top: -1px; left: 2px;
  }

@media print {
.error { display:none; }
.formhead { display:none; }
table .actions { display:none; }
table.date { width:90%; margin-left:5%; margin-top:40pt; display:block; }
button { display:none; }
#i_people_essay { display:none; }
pre.essay { display:block; }
}

/* The Modal (background) */
.modal {
     display: none; /* Hidden by default */
     position: fixed; /* Stay in place */
     z-index: 1; /* Sit on top */
     padding-top: 100px; /* Location of the box */
     left: 0;
     top: 0;
     width: 100%; /* Full width */
     height: 100%; /* Full height */
     overflow: auto; /* Enable scroll if needed */
     background-color: rgb(0,0,0); /* Fallback color */
     background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
 }
 
 /* Modal Content (image) */
 .modal-content {
     margin: auto;
     display: block;
     width: 80%;
     max-width: 700px;
 }
 
 /* Caption of Modal Image */
 #caption {
     margin: auto;
     display: block;
     width: 80%;
     max-width: 700px;
     text-align: center;
     color: #ccc;
     padding: 10px 0;
     height: 150px;
 }
 
 /* Add Animation */
 .modal-content, #caption {    
     -webkit-animation-name: zoom;
     -webkit-animation-duration: 0.6s;
     animation-name: zoom;
     animation-duration: 0.6s;
 }
 
 @-webkit-keyframes zoom {
     from {-webkit-transform:scale(0)} 
     to {-webkit-transform:scale(1)}
 }
 
 @keyframes zoom {
     from {transform:scale(0)} 
     to {transform:scale(1)}
 }
 
 /* The Close Button */
 .close {
     position: absolute;
     top: 15px;
     right: 35px;
     color: #f1f1f1;
     font-size: 40px;
     font-weight: bold;
     transition: 0.3s;
 }
 
 .close:hover,
 .close:focus {
     color: #bbb;
     text-decoration: none;
     cursor: pointer;
 }
 
 /* 100% Image Width on Smaller Screens */
 @media only screen and (max-width: 700px){
     .modal-content {
         width: 100%;
     }
 }