body, html {
	font-size:14px;
	font-family:Arial;
	padding:0px;
	margin:0px;
	height:100%;
	background:#004080;
}

a {
	text-decoration: none;
}

.clear {
	clear:both;
}

.t {
	display:table;
}
.tr {
	display:table-row;
}
.td, .th {
	display:table-cell;
}

.main {
	margin:0px auto;
	min-height:100%;
	max-width:800px;
	background:#4D91BA;
	border-left:1px solid black;
	border-right:1px solid black;
	padding:0px;
}

.school-hdr {
	background-image: linear-gradient(to bottom, #f8f8f8 0%, #909090 50%, #808080 50%, #a0a0a0 100%);
	font-weight:bold;
	text-shadow:1px 1px 1px #d0d0d0;
	color:#203040;
	border-bottom:1px solid #405060;
	position:fixed;
	top:0px;
	left:0px;
	z-index:1;
	width:100%;
	padding:0px;
}

.school-hdr div.icons {
	position:relative;
	top:-4px;
	float:right;
}

.school-hdr div.icons > div {
	float:right;
	text-align:center;
}

.school-hdr div.icons > div img {
	width:100%;
	height:100%;
}

.school-info {
	position:relative;
	background:#e0f0ff;
}

.school-info img {
	border-bottom:1px solid #405060;
	width:100%;
}

.school-info h2 {
	position:absolute;
	margin:0px;
	padding:0px;
	color:#000;
	text-shadow: 2px 2px 1px #fff, -2px 2px 1px #fff, -2px -2px 1px #fff, 2px -2px 1px #fff, 0px 0px 4px #fff;
}

.school-info table {
	width:100%;
}
.school-info table td {
	color:#004060;
	font-weight:bold;
}
.school-info table td.class-name,
.school-info table td.sub-header {
	text-align:right;
}

.index {
	text-align:center;
	padding:20px;
}
.index .button {
	display:inline-block;
	color:#fff;
	text-align:center;
	border:1px solid #606060;
	background-image: linear-gradient(to bottom, #f8f8f8 0%, #909090 50%, #808080 50%, #a0a0a0 100%);
	text-shadow:-1px -1px 1px #808080;
	font-size:24px;
	padding:10px 20px;
	margin-bottom:10px;
}

table.index-butt {
	margin:0px auto;
}
table.index-butt a.button {
	display:block;
}

.classes {
	padding:10px 2px;
	text-align:center;
}

.classes h2 {
	margin:5px 10px 10px 10px;
	font-size:18px;
	padding:0px;
	color:#e0e8ff;
}
.classes .button {
	display:inline-block;
	color:#fff;
	text-align:center;
	border:1px solid #606060;
	background-image: linear-gradient(to bottom, #f8f8f8 0%, #909090 50%, #808080 50%, #a0a0a0 100%);
	text-shadow:-1px -1px 1px #808080;
	font-size:24px;
	padding:10px;
	margin:0px;
	width:9.5%;
	margin:2px 0px;
}

.button.pressed {
	position:relative;
	top:2px;
	left:2px;
}

div.day {
	font-weight:bold;
	color:#fff;
	border-top:1px solid #000;
	border-bottom:1px solid #000;
	background-color: #406080;
	text-align:center;
}

table.school-plan-day {
	border:2px solid #406080;
}

table.school-plan-day th {
	background-color:#406080;
	color:#e0f0ff;
}

table.school-plan-day tr {
	background-color:#e0f0ff;
}
table.school-plan-day tr.odd {
	background-color:#d0e8ff;
}
table.school-plan-day tr.changed {
	background-color:#ffe8e8;
}
table.school-plan-day tr.changed.odd {
	background-color:#ffd0d0;
}

table.school-plan-day td {
	vertical-align:top;
}
table.school-plan-day td > div {
	overflow:hidden;
	white-space:nowrap;
}
table.school-plan-day td.n > div {
	text-align:right;
}
table.school-plan-day td.time > div {
	text-align:center;
}
table.school-plan-day td.lesson > div {
	text-align:left;
}
table.school-plan-day td.place > div {
	text-align:center;
}
table.school-plan-day td.teacher > div {
	text-align:left;
}

.sections {
	border:2px solid #406080;
	border-spacing: 2px;
}

.sections .tr {
	background-color:#e0f0ff;
}
.sections .tr.odd {
	background-color:#d0e8ff;
}
.sections .th {
	background-color:#406080;
	color:#e0f0ff;
	font-weight:bold;
	padding:6px 6px;
}
.sections .td {
	padding: 4px 6px;
}
.sections .td span {
	display: none;
}

.info-date {
	background-color: #406080;
	color:#e0f0ff;
	font-weight:bold;
	border:1px solid #405060;
	padding:5px 10px;
	text-align:left;
}
.info-text {
	margin-bottom:10px;
	border:1px solid #405060;
	border-top:none;
	padding:10px 20px;
	text-align:left;
	background:#e0f0ff;
}

/*--- WIDTH < 360 ---*/
@media (max-width:359px) {
	table.school-plan-day {
		border-spacing:1px;
		margin:5px auto;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		font-size:8px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:2px 2px;
	}
	table.school-plan-day th.teacher,
	table.school-plan-day td.teacher {
		display:none;
	}
	table.school-plan-day td.place > div {
		//width:15px;
	}
	table.school-plan-day td.lesson > div {
		width:95px;
	}
	table.school-plan-day td.time > div {
		width:50px;
	}
	table.school-plan-day td.n > div {
		width:6px;
	}
	div.day {
		padding:3px;
		font-size:10px;
	}

	.school-info {
		margin-top:27px;
	}
	.school-info table td {
		padding:0px 5px;
	}
	.school-info table td.class-name {
		font-size:16px;
	}
	.school-info table td.school-name,
	.school-info table td.sub-header {
		font-size:11px;
	}
	.school-info h2 {
		font-size:11px;
		top:8px;
		right:10px;
	}
	
	.classes h2 {
		font-size:14px;
		margin:0px 0px 5px 0px;
	}
	
	.school-hdr > div {
		font-size:11px;
		line-height:16px;
		padding:4px 4px 4px 6px;
	}
	.school-hdr div.icons > div {
		width:20px;
		height:20px;
		margin-left:2px;
		margin-top:2px;
	}
	
	.classes .button {
		font-size:14px;
		padding:5px;
	}
	.index .button {
		font-size:14px;
		padding:5px 10px;
	}

	.sections .tr.thdr {
		display:none;
	}
	.sections,
	.sections .tr,
	.sections .td {
		display:block;
		border:none;
	}
	.sections .tr {
		border:2px solid #406080;
		margin:4px 0px;
	}
	.sections .td.section_name {
		background-color:#406080;
		color:#e0f0ff;
		font-weight:bold;
	}
	.sections .td.section_instructor {
		font-style:italic;
	}
	
	.info-date {
		padding:2px 5px;
		font-size:10px;
	}
	.info-text {
		padding:2px 5px;
		font-size:12px;
	}
}

/*--- WIDTH > 360 ---*/
@media (min-width:360px) {
	.sections .tr.thdr {
		display:none;
	}
	.sections,
	.sections .tr,
	.sections .td {
		display:block;
		border:none;
	}
	.sections .tr {
		border:2px solid #406080;
		margin:4px 0px;
	}
	.sections .td.section_name {
		background-color:#406080;
		color:#e0f0ff;
		font-weight:bold;
	}
	.sections .td.section_instructor {
		font-style:italic;
	}
}

/*--- WIDTH > 360 ---*/
@media (min-width:360px) {
	table.school-plan-day {
		border-spacing:1px;
		margin:8px auto;
	}
	table.school-plan-day th {
		font-size:8px;
	}
	table.school-plan-day td {
		font-size:7px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:2px 2px;
	}
	table.school-plan-day th.teacher,
	table.school-plan-day td.teacher {
		display:table-cell;
	}
	table.school-plan-day td.teacher > div {
		width:157px;
	}
	table.school-plan-day td.place > div {
		//width:15px;
	}
	table.school-plan-day td.lesson > div {
		width:84px;
	}
	table.school-plan-day td.time > div {
		width:42px;
	}
	table.school-plan-day td.n > div {
		width:5px;
	}
	div.day {
		padding:3px;
		font-size:13px;
	}
	
	.school-info {
		margin-top:35px;
	}
	.school-info table td {
		padding:0px 10px;
	}
	.school-info table td.class-name {
		font-size:24px;
	}
	.school-info table td.school-name,
	.school-info table td.sub-header {
		font-size:14px;
	}
	.school-info h2 {
		font-size:18px;
		top:10px;
		right:10px;
	}
	
	.school-hdr > div {
		font-size:18px;
		padding:5px 5px 5px 15px;
	}
	.school-hdr div.icons > div {
		width:28px;
		height:28px;
		margin-left:5px;
		margin-top:2px;
	}
	
	.classes .button {
		font-size:20px;
		padding:8px;
	}
	
	.index .button {
		font-size:20px;
		padding:8px 20px;
	}
}

/*--- WIDTH > 480 ---*/
@media (min-width:470px) {
	table.school-plan-day {
		border-spacing:1px;
		margin:10px auto;
	}
	table.school-plan-day th {
		font-size:10px;
	}
	table.school-plan-day td {
		font-size:9px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:2px 3px;
	}
	table.school-plan-day td.teacher > div {
		width:200px;
	}
	table.school-plan-day td.place > div {
		//width:20px;
	}
	table.school-plan-day td.lesson > div {
		width:115px;
	}
	table.school-plan-day td.time > div {
		width:65px;
	}
	table.school-plan-day td.n > div {
		width:8px;
	}
	div.day {
		padding:4px;
		font-size:14px;
	}
	
	.school-info {
		margin-top:40px;
	}
	.school-info table td {
		padding:0px 15px;
	}
	.school-info table td.class-name {
		font-size:28px;
	}
	.school-info table td.school-name,
	.school-info table td.sub-header {
		font-size:16px;
	}
	.school-info h2 {
		font-size:25px;
		top:15px;
		right:15px;
	}
	
	.school-hdr > div {
		font-size:20px;
		padding:6px 6px 6px 15px;
	}
	.school-hdr div.icons > div {
		width:32px;
		height:32px;
		margin-left:5px;
	}
	
	.classes .button {
		font-size:24px;
		padding:10px;
	}
	
	.index .button {
		font-size:24px;
		padding:10px 20px;
	}
}

/*--- WIDTH > 560 ---*/
@media (min-width:560px) {
	table.school-plan-day {
		border-spacing:2px;
		margin:15px auto;
	}
	table.school-plan-day th {
		font-size:12px;
	}
	table.school-plan-day td {
		font-size:11px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:3px 5px;
	}
	table.school-plan-day td.teacher > div {
		width:235px;
	}
	table.school-plan-day td.place > div {
		//width:25px;
	}
	table.school-plan-day td.lesson > div {
		width:130px;
	}
	table.school-plan-day td.time > div {
		width:70px;
	}
	table.school-plan-day td.n > div {
		width:10px;
	}
	div.day {
		padding:4px;
		font-size:16px;
	}
	
	.school-info {
		margin-top:50px;
	}
	.school-info table td {
		padding:0px 20px;
	}
	.school-info table td.class-name {
		font-size:36px;
	}
	.school-info table td.school-name,
	.school-info table td.sub-header {
		font-size:20px;
	}
	.school-info h2 {
		font-size:30px;
		top:20px;
		right:20px;
	}

	.school-hdr > div {
		font-size:24px;
		padding:10px 10px 10px 20px;
	}	
	
	.school-hdr div.icons > div {
		width:38px;
		height:38px;
		margin-left:5px;
	}

	.sections {
		display:table;
		border:2px solid #406080;
	}
	.sections .tr,
	.sections .tr.thdr {
		display:table-row;
	}
	.sections .th {
		display:table-cell;
	}
	.sections .td {
		display:table-cell;
		background-color:transparent !important;
		color: inherit !important;
		font-weight:normal !important;
		font-style:normal !important;
	}

}

/*--- WIDTH > 640 ---*/
@media (min-width:640px) {
	table.school-plan-day td {
		font-size:12px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:4px 6px;
	}
	table.school-plan-day td.teacher > div {
		width:260px;
	}
	table.school-plan-day td.place > div {
		//width:25px;
	}
	table.school-plan-day td.lesson > div {
		width:145px;
	}
	table.school-plan-day td.time > div {
		width:80px;
	}
	table.school-plan-day td.n > div {
		width:15px;
	}
	div.day {
		padding:5px;
		font-size:20px;
	}
}

/*--- WIDTH > 720 ---*/
@media (min-width:720px) {
	table.school-plan-day td {
		font-size:14px;
	}
	table.school-plan-day th,
	table.school-plan-day td {
		padding:5px 8px;
	}
	table.school-plan-day td.teacher > div {
		width:300px;
	}
	table.school-plan-day td.place > div {
		//width:30px;
	}
	table.school-plan-day td.lesson > div {
		width:160px;
	}
	table.school-plan-day td.time > div {
		width:95px;
	}
	table.school-plan-day td.n > div {
		width:15px;
	}
}
