.gnc-wrap {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}
.gnc-head {
	margin: 0 0 20px 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #ddd;
}
.gnc-head h2 {
	margin: 0;
	padding: 0;
	font-size: 24px;
	line-height: 1.3;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.gnc-head h2 a {
	text-decoration: none;
}
.gnc-head .desc {
	margin: 8px 0 0 0;
	color: #777;
	font-size: 12px;
	line-height: 1.6;
	word-break: keep-all;
	overflow-wrap: break-word;
}

.gnc-msg {
	margin: 15px 0;
	padding: 12px 15px;
	border: 1px solid #e1e1e1;
	background: #fafafa;
	color: #444;
	line-height: 1.7;
	word-break: keep-all;
	overflow-wrap: break-word;
	box-sizing: border-box;
}
.gnc-msg.error {
	border-color: #e5b7b7;
	background: #fff5f5;
	color: #b94a48;
}
.gnc-msg.info {
	border-color: #d9e7f5;
	background: #f7fbff;
	color: #2f5d8a;
}

.gnc-auth-box {
	width: 420px;
	max-width: 100%;
	margin: 30px auto;
	border: 1px solid #dcdcdc;
	background: #fff;
	box-sizing: border-box;
}
.gnc-auth-box .auth-hd {
	padding: 14px 18px;
	border-bottom: 1px solid #e5e5e5;
	background: #f8f8f8;
	font-size: 14px;
	font-weight: bold;
	word-break: keep-all;
}
.gnc-auth-box .auth-bd {
	padding: 20px 18px;
	box-sizing: border-box;
}
.gnc-auth-box .auth-help {
	margin: 0 0 12px 0;
	color: #666;
	line-height: 1.6;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.gnc-auth-box .itx {
	width: 100%;
	height: 42px;
	line-height: 42px;
	padding: 0 10px;
	border: 1px solid #cfcfcf;
	background: #fff;
	box-sizing: border-box;
	font-size: 16px;
}
.gnc-auth-box .btnArea {
	margin-top: 12px;
}
.gnc-auth-box .auth-link {
	margin-top: 10px;
	font-size: 11px;
}

.gnc-subject-list {
	overflow: hidden;
	margin: 0 -10px;
}
.gnc-subject-item {
	float: left;
	width: 33.3333%;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
}
.gnc-subject-item .box {
	border: 1px solid #ddd;
	background: #fff;
	height: 100%;
	box-sizing: border-box;
}
.gnc-subject-item .box a {
	display: block;
	padding: 18px 16px;
	text-decoration: none;
}
.gnc-subject-item .title {
	margin: 0 0 8px 0;
	font-size: 15px;
	font-weight: bold;
	color: #333;
	line-height: 1.5;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.gnc-subject-item .meta {
	color: #777;
	font-size: 12px;
	line-height: 1.6;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.gnc-subject-item .more {
	margin-top: 12px;
	color: #2f5d8a;
	font-size: 12px;
	font-weight: bold;
}

.gnc-table-wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 0 0 20px 0;
}
.gnc-table {
	width: 100%;
	min-width: 520px;
	border: 0;
	border-collapse: collapse;
	border-top: 2px solid #444;
	margin: 0;
}
.gnc-table th,
.gnc-table td {
	padding: 10px 12px;
	border-bottom: 1px solid #e5e5e5;
	text-align: center;
	vertical-align: middle;
	word-break: keep-all;
}
.gnc-table th {
	background: #f8f8f8;
	font-weight: bold;
}
.gnc-table td.left {
	text-align: left;
}

.gnc-state {
	display: inline-block;
	padding: 2px 6px;
	border: 1px solid #ddd;
	background: #fafafa;
	font-size: 11px;
	line-height: 1.4;
}
.gnc-state.open {
	border-color: #bcd4ea;
	background: #f3f8fd;
	color: #2f5d8a;
}
.gnc-state.prepare {
	color: #777;
}
.gnc-state.closed {
	color: #999;
}

.gnc-topbar {
	overflow: hidden;
	margin: 0 0 15px 0;
}
.gnc-topbar .left {
	float: left;
}
.gnc-topbar .right {
	float: right;
}
.gnc-badge {
	display: inline-block;
	padding: 3px 8px;
	border: 1px solid #bcd4ea;
	background: #f3f8fd;
	color: #2f5d8a;
	font-size: 11px;
	font-weight: bold;
	line-height: 1.4;
}

.gnc-lecture-title {
	margin: 0 0 15px 0;
	padding: 10px 12px;
	border-left: 4px solid #4c6b8a;
	background: #f8f8f8;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.gnc-player-wrap {
	margin: 0 0 15px 0;
	border: 1px solid #ddd;
	background: #000;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}
.gnc-guide {
	margin: 15px 0;
	padding: 15px;
	border: 1px solid #e7e7e7;
	background: #fafafa;
	word-break: keep-all;
	overflow-wrap: break-word;
	box-sizing: border-box;
}
.gnc-guide ul {
	margin: 0;
	padding-left: 18px;
}
.gnc-guide li {
	margin: 4px 0;
	line-height: 1.7;
}

.gnc-btns {
	margin: 20px 0 0 0;
	text-align: center;
}
.gnc-btns a {
	margin: 4px 2px;
}

.gnc-clear {
	clear: both;
	height: 0;
	overflow: hidden;
}

@media all and (max-width: 768px) {
	.gnc-wrap {
		padding: 0 12px;
	}

	.gnc-head {
		margin: 0 0 16px 0;
		padding: 0 0 10px 0;
	}

	.gnc-head h2 {
		font-size: 20px;
	}

	.gnc-head .desc {
		font-size: 13px;
	}

	.gnc-auth-box {
		width: 100%;
		margin: 20px 0;
	}

	.gnc-auth-box .auth-hd {
		padding: 12px 14px;
		font-size: 14px;
	}

	.gnc-auth-box .auth-bd {
		padding: 16px 14px;
	}

	.gnc-subject-list {
		margin: 0;
	}

	.gnc-subject-item {
		float: none;
		width: 100%;
		padding: 0;
		margin-bottom: 12px;
	}

	.gnc-subject-item .box a {
		padding: 16px 14px;
	}

	.gnc-topbar .left,
	.gnc-topbar .right {
		float: none;
		width: 100%;
	}

	.gnc-topbar .right {
		margin-top: 8px;
		text-align: right;
	}

	.gnc-table {
		min-width: 480px;
	}

	.gnc-table th,
	.gnc-table td {
		padding: 9px 8px;
		font-size: 13px;
	}

	.gnc-lecture-title {
		font-size: 15px;
		padding: 10px;
	}

	.gnc-msg,
	.gnc-guide {
		padding: 12px;
		font-size: 13px;
		line-height: 1.7;
	}

	.gnc-auth-box .btn,
	.gnc-btns .btn,
	.gnc-table .btn {
		display: inline-block;
		min-height: 40px;
		line-height: 40px;
		padding: 0 14px;
		box-sizing: border-box;
	}
}

@media all and (max-width: 480px) {
	.gnc-head h2 {
		font-size: 18px;
	}

	.gnc-head .desc {
		font-size: 12px;
	}

	.gnc-auth-box .itx {
		height: 40px;
		line-height: 40px;
		font-size: 16px;
	}

	.gnc-table {
		min-width: 420px;
	}

	.gnc-table th,
	.gnc-table td {
		font-size: 12px;
		padding: 8px 6px;
	}

	.gnc-subject-item .title {
		font-size: 14px;
	}

	.gnc-subject-item .meta,
	.gnc-subject-item .more {
		font-size: 12px;
	}