html {
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body.xs99-modern-home {
	margin: 0;
	background: #f4f9ff;
	color: #21384f;
	font-family: Arial, "Microsoft YaHei", "PingFang SC", sans-serif;
	font-size: 14px;
	line-height: 1.6;
	overflow-x: hidden;
}

.xs99-modern-home a {
	color: #155799;
	text-decoration: none;
}

.xs99-modern-home a:hover {
	color: #c13c54;
	text-decoration: underline;
}

.xs99-wrap,
.xs99-home-main {
	width: min(1180px, calc(100% - 24px));
	margin: 0 auto;
}

.xs99-site-header {
	background: #0f4c8a;
	background: linear-gradient(180deg, #1d65ac 0%, #0f4c8a 100%);
	color: #fff;
	border-bottom: 1px solid #0b3d70;
	box-shadow: 0 2px 10px rgba(15, 76, 138, .16);
	overflow: hidden;
}

.xs99-header-main {
	display: grid;
	grid-template-columns: minmax(180px, 250px) minmax(0, 1fr);
	gap: 10px 18px;
	align-items: center;
	padding: 8px 0;
}

.xs99-logo {
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	color: #fff !important;
	text-decoration: none;
	text-shadow: 0 1px 2px rgba(0, 33, 68, .25);
}

.xs99-logo strong {
	color: #fff;
	font-size: 25px;
	line-height: 1.1;
	letter-spacing: 0;
}

.xs99-logo span {
	color: #e9f6ff;
	font-size: 12px;
}

.xs99-search-box {
	display: grid;
	grid-template-columns: minmax(300px, 1fr) auto;
	align-items: center;
	gap: 8px 12px;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 8px;
	padding: 6px 8px;
	min-width: 0;
}

.xs99-search-row {
	display: grid;
	grid-template-columns: minmax(170px, 1fr) 70px;
	gap: 6px;
}

.xs99-search-row input[type="text"] {
	width: 100%;
	min-width: 0;
	height: 34px;
	padding: 7px 10px;
	border: 1px solid #b9d8f3;
	border-radius: 6px;
	background: #fff;
	color: #17324d;
	font-size: 14px;
	outline: none;
}

.xs99-search-row input[type="text"]:focus {
	border-color: #7fb5e6;
	box-shadow: 0 0 0 3px rgba(127, 181, 230, .25);
}

.xs99-search-row button {
	height: 34px;
	border: 0;
	border-radius: 6px;
	background: #ffd15c;
	color: #24384b;
	font-weight: 700;
	cursor: pointer;
}

.xs99-search-row button:hover {
	background: #ffbf2e;
}

.xs99-search-types {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	align-items: center;
	margin-top: 0;
	color: #eef7ff;
	font-size: 13px;
}

.xs99-search-types label {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	white-space: nowrap;
}

.xs99-search-types a {
	color: #fff7c7;
	font-weight: 700;
}

.xs99-top-ad,
.xs99-ad {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	min-width: 0;
}

.xs99-top-ad {
	display: none;
	min-height: 0;
}

.xs99-ad {
	margin: 12px auto;
	min-height: 0;
}

.xs99-top-ad ins.adsbygoogle,
.xs99-ad ins.adsbygoogle {
	width: 100% !important;
	max-width: 100% !important;
}

.xs99-top-ad ins.adsbygoogle:not([data-ad-status="filled"]),
.xs99-ad ins.adsbygoogle:not([data-ad-status="filled"]) {
	display: block !important;
	height: 0 !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

.xs99-top-ad:has(ins.adsbygoogle[data-ad-status="filled"]) {
	display: flex;
	grid-column: 1 / -1;
	min-height: 90px;
	margin-top: 4px;
}

.xs99-ad:has(ins.adsbygoogle[data-ad-status="filled"]) {
	min-height: 96px;
	background: #eef7ff;
	border: 1px solid #cfe3f8;
	border-radius: 8px;
	padding: 8px;
}

.xs99-nav {
	border-top: 1px solid rgba(255, 255, 255, .18);
	background: rgba(9, 57, 105, .58);
}

.xs99-nav-scroll {
	display: flex;
	align-items: center;
	gap: 2px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.xs99-nav-scroll::-webkit-scrollbar {
	display: none;
}

.xs99-nav a {
	display: block;
	padding: 8px 12px;
	color: #fff;
	font-weight: 700;
	white-space: nowrap;
	text-decoration: none;
}

.xs99-nav a:hover {
	background: rgba(255, 255, 255, .12);
	color: #fff;
	text-decoration: none;
}

.xs99-hero {
	margin: 14px auto 12px;
	padding: 18px 20px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(238, 247, 255, .92)),
		repeating-linear-gradient(90deg, rgba(29, 101, 172, .06) 0 1px, transparent 1px 32px);
	border: 1px solid #cfe3f8;
	border-radius: 8px;
}

.xs99-hero h1 {
	margin: 0 0 6px;
	color: #0f4c8a;
	font-size: 25px;
	line-height: 1.25;
	letter-spacing: 0;
}

.xs99-hero p {
	margin: 0 0 12px;
	color: #53697e;
}

.xs99-quick-tags,
.xs99-hot-authors {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.xs99-quick-tags a,
.xs99-hot-authors a {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 3px 10px;
	background: #fff;
	border: 1px solid #cfe3f8;
	border-radius: 999px;
	color: #155799;
	white-space: nowrap;
}

.xs99-quick-tags a:hover,
.xs99-hot-authors a:hover {
	background: #e6f3ff;
	text-decoration: none;
}

.xs99-hero .xs99-home-tag-cloud,
.xs99-page-hero .xs99-home-tag-cloud {
	align-items: flex-start;
	gap: 3px 14px;
	max-height: 46px;
	overflow: hidden;
	line-height: 1.7;
}

.xs99-hero .xs99-home-tag-cloud a,
.xs99-page-hero .xs99-home-tag-cloud a {
	display: inline;
	min-height: 0;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #155799;
	font-size: 13px;
	line-height: 1.7;
}

.xs99-hero .xs99-home-tag-cloud a:hover,
.xs99-page-hero .xs99-home-tag-cloud a:hover {
	background: transparent;
	color: #b7354b;
	text-decoration: underline;
}

.xs99-hot-authors {
	margin: 0 auto 12px;
	padding: 10px 12px;
	background: #fff;
	border: 1px solid #d7e9f9;
	border-radius: 8px;
}

.xs99-hot-authors strong {
	color: #d64545;
	margin-right: 2px;
}

.xs99-grid {
	display: grid;
	grid-template-columns: minmax(170px, .82fr) minmax(360px, 2.1fr) minmax(170px, .82fr);
	gap: 12px;
	align-items: start;
}

.xs99-writer-grid {
	display: grid;
	grid-template-columns: minmax(170px, .8fr) minmax(360px, 2.15fr) minmax(170px, .8fr);
	gap: 12px;
	margin-bottom: 12px;
	align-items: stretch;
}

.xs99-panel {
	min-width: 0;
	background: #fff;
	border: 1px solid #cfe3f8;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 1px 4px rgba(29, 101, 172, .08);
}

.xs99-panel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
	min-height: 42px;
	padding: 9px 12px;
	background: #e6f3ff;
	border-bottom: 1px solid #cfe3f8;
}

.xs99-panel-head h2 {
	margin: 0;
	color: #0f4c8a;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0;
}

.xs99-panel-head a {
	font-size: 13px;
	color: #386f9f;
	white-space: nowrap;
}

.xs99-panel-body {
	padding: 8px;
}

.xs99-panel-note {
	color: #8a4b19;
	font-size: 13px;
}

.xs99-panel table {
	width: 100% !important;
	border-collapse: collapse !important;
	background: #fff !important;
}

.xs99-panel tbody,
.xs99-panel tr {
	max-width: 100%;
}

.xs99-panel td {
	padding: 6px 7px !important;
	background: #fff !important;
	border-bottom: 1px solid #edf4fb;
	color: #314960;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.xs99-panel tr:last-child td {
	border-bottom: 0;
}

.xs99-panel td div {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.xs99-panel font {
	font-size: inherit !important;
}

.xs99-rank-panel td,
.xs99-writer-side td {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.xs99-latest-panel .xs99-panel-body {
	padding: 0;
}

.xs99-latest-panel table {
	table-layout: fixed;
}

.xs99-latest-panel td {
	width: 50% !important;
}

.xs99-writer-picks {
	min-height: 100%;
}

.xs99-writer-picks table {
	table-layout: fixed;
}

.xs99-writer-picks td {
	text-align: center;
}

.xs99-writer-picks td a {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.xs99-footer {
	margin: 14px auto 0;
	padding-bottom: 18px;
}

.xs99-links,
.xs99-copyright {
	background: #fff;
	border: 1px solid #cfe3f8;
	border-radius: 8px;
	padding: 10px 12px;
}

.xs99-links {
	margin-bottom: 8px;
}

.xs99-links strong {
	color: #8a4b19;
}

.xs99-copyright {
	text-align: center;
	color: #546b80;
	font-size: 13px;
}

.xs99-copyright p {
	margin: 4px 0;
}

@media (max-width: 980px) {
	.xs99-header-main {
		grid-template-columns: 1fr;
	}

	.xs99-top-ad {
		min-height: 80px;
	}

	.xs99-writer-grid,
	.xs99-grid {
		grid-template-columns: 1fr 1fr;
	}

	.xs99-writer-picks,
	.xs99-latest-panel {
		grid-column: 1 / -1;
	}

	.xs99-latest-panel {
		order: -1;
	}
}

@media (max-width: 640px) {
	body.xs99-modern-home {
		font-size: 15px;
	}

	.xs99-wrap,
	.xs99-home-main {
		width: min(100% - 18px, 1180px);
	}

	.xs99-header-main {
		padding: 10px 0;
		gap: 10px;
	}

	.xs99-logo strong {
		font-size: 23px;
	}

	.xs99-search-types {
		flex-wrap: wrap;
		gap: 7px 9px;
		margin-top: 8px;
	}

	.xs99-nav-scroll {
		margin-inline: -9px;
		padding-inline: 9px;
	}

	.xs99-search-row {
		grid-template-columns: 1fr;
	}

	.xs99-search-box {
		display: block;
		padding: 9px;
	}

	.xs99-search-row button {
		width: 100%;
	}

	.xs99-hero {
		margin-top: 10px;
		padding: 14px;
	}

	.xs99-hero h1 {
		font-size: 21px;
	}

	.xs99-hero .xs99-home-tag-cloud,
	.xs99-page-hero .xs99-home-tag-cloud {
		gap: 3px 12px;
		max-height: 68px;
	}

	.xs99-writer-grid,
	.xs99-grid {
		grid-template-columns: 1fr;
	}

	.xs99-latest-panel {
		order: 0;
	}

	.xs99-latest-panel table,
	.xs99-latest-panel tbody,
	.xs99-latest-panel tr,
	.xs99-latest-panel td {
		display: block;
		width: 100% !important;
	}

	.xs99-writer-picks table,
	.xs99-writer-picks tbody {
		display: block;
		width: 100% !important;
	}

	.xs99-writer-picks tr {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100% !important;
	}

	.xs99-writer-picks td,
	.xs99-writer-picks td[colspan] {
		display: block;
		width: auto !important;
		min-width: 0;
	}

	.xs99-panel-head {
		align-items: flex-start;
	}

	.xs99-panel-head a {
		white-space: normal;
	}

	.xs99-panel-note {
		width: 100%;
	}

	.xs99-panel td div {
		white-space: normal;
	}

	.xs99-top-ad,
	.xs99-ad {
		width: 100%;
		max-width: 100%;
		min-height: 0;
	}

	.xs99-ad:has(ins.adsbygoogle[data-ad-status="filled"]) {
		min-height: 70px;
	}
}

/* Modern generated pages */
.xs99-page-main,
.xs99-reader-main {
	width: min(1180px, calc(100% - 24px));
	margin: 0 auto;
}

.xs99-page-main {
	padding: 12px 0 18px;
}

.xs99-reader-main {
	padding: 14px 0 22px;
}

.xs99-page-hero {
	margin: 0 0 12px;
	padding: 15px 18px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .94), rgba(236, 247, 255, .96)),
		repeating-linear-gradient(90deg, rgba(29, 101, 172, .05) 0 1px, transparent 1px 34px);
	border: 1px solid #cfe3f8;
	border-radius: 8px;
}

.xs99-page-hero h1,
.xs99-book-summary h1,
.xs99-reader-head h1 {
	margin: 0;
	color: #0f4c8a;
	letter-spacing: 0;
}

.xs99-page-hero h1 {
	font-size: 24px;
	line-height: 1.25;
}

.xs99-page-hero p {
	margin: 6px 0 0;
	color: #53697e;
}

.xs99-breadcrumb {
	margin-bottom: 8px;
	color: #58748e;
	font-size: 13px;
	line-height: 1.5;
}

.xs99-page-content {
	margin-top: 12px;
}

.xs99-generated-content {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.xs99-generated-content > table,
.xs99-keyword-panel > table {
	width: 100% !important;
	max-width: 100%;
	border-collapse: collapse !important;
	background: #fff !important;
}

.xs99-generated-content td,
.xs99-keyword-panel td {
	padding: 8px 9px !important;
	background: #fff !important;
	border-bottom: 1px solid #edf4fb;
	color: #314960;
	vertical-align: middle;
	overflow-wrap: anywhere;
}

.xs99-generated-content input[type="text"],
.xs99-generated-content select,
.xs99-generated-content textarea {
	max-width: 100%;
	border: 1px solid #b9d8f3;
	border-radius: 6px;
	padding: 6px 8px;
	background: #fff;
	color: #17324d;
	font: inherit;
}

.xs99-generated-content input[type="submit"],
.xs99-generated-content input[type="reset"] {
	border: 0;
	border-radius: 6px;
	padding: 7px 16px;
	background: #1d65ac;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

.xs99-generated-content input[type="reset"] {
	background: #6d8398;
}

.xs99-table-scroll {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.xs99-list-table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	background: #fff;
}

.xs99-list-table th,
.xs99-list-table td {
	padding: 9px 10px;
	border-bottom: 1px solid #edf4fb;
	text-align: left;
	vertical-align: middle;
}

.xs99-list-table th {
	background: #e6f3ff;
	color: #0f4c8a;
	font-weight: 700;
	white-space: nowrap;
}

.xs99-list-table td {
	color: #314960;
}

.xs99-list-table tbody tr:hover td {
	background: #f7fbff;
}

.xs99-list-table td:first-child,
.xs99-list-table th:first-child {
	text-align: center;
}

.xs99-list-table tfoot td {
	background: #f3f8fd;
	color: #58748e;
	text-align: right;
}

.xs99-book-layout {
	width: min(1180px, calc(100% - 24px));
	margin: 0 auto;
	padding: 12px 0 18px;
}

.xs99-book-hero {
	display: grid;
	grid-template-columns: minmax(130px, 190px) minmax(0, 1fr);
	gap: 18px;
	padding: 16px;
}

.xs99-book-cover {
	display: flex;
	align-items: flex-start;
	justify-content: center;
}

.xs99-book-cover img {
	width: min(100%, 180px);
	height: auto;
	border: 1px solid #cfe3f8;
	border-radius: 6px;
	box-shadow: 0 4px 12px rgba(29, 101, 172, .16);
}

.xs99-book-summary {
	min-width: 0;
}

.xs99-book-summary h1 {
	font-size: 26px;
	line-height: 1.25;
}

.xs99-book-byline {
	margin: 7px 0 12px;
	color: #58748e;
}

.xs99-book-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 12px;
}

.xs99-book-actions a,
.xs99-book-actions img {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
}

.xs99-book-actions a {
	min-height: 34px;
	padding: 7px 13px;
	border-radius: 6px;
	background: #1d65ac;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}

.xs99-book-actions a:hover {
	background: #0f4c8a;
	color: #fff;
	text-decoration: none;
}

.xs99-book-intro {
	color: #314960;
	line-height: 1.8;
	overflow-wrap: anywhere;
}

.xs99-book-columns {
	display: grid;
	grid-template-columns: minmax(190px, .8fr) minmax(0, 2fr);
	gap: 12px;
	margin-top: 12px;
}

.xs99-book-side,
.xs99-book-chapters,
.xs99-book-meta {
	min-width: 0;
}

.xs99-book-side table,
.xs99-book-chapters table {
	width: 100% !important;
}

.xs99-book-side td,
.xs99-book-chapters td {
	overflow-wrap: anywhere;
}

.xs99-book-meta {
	margin-top: 12px;
}

.xs99-meta-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	background: #d7e8f8;
	border: 1px solid #d7e8f8;
}

.xs99-meta-grid div {
	min-width: 0;
	padding: 9px 10px;
	background: #fff;
}

.xs99-meta-grid span {
	display: block;
	margin-bottom: 3px;
	color: #6b8298;
	font-size: 12px;
}

.xs99-meta-grid strong {
	display: block;
	color: #21384f;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.xs99-reader {
	max-width: 920px;
	margin: 0 auto;
}

.xs99-reader-head {
	padding: 16px 18px 10px;
	text-align: center;
	border-bottom: 1px solid #edf4fb;
}

.xs99-reader-head h1 {
	font-size: 25px;
	line-height: 1.35;
}

.xs99-reader-head p {
	margin: 6px 0 0;
	color: #58748e;
}

.xs99-reader-nav {
	padding: 10px 14px;
	background: #f3f8fd;
	border-bottom: 1px solid #edf4fb;
	text-align: center;
	line-height: 1.9;
}

.xs99-reader-content {
	padding: 22px 28px;
	color: #263f57;
	font-size: 18px;
	line-height: 2;
	overflow-wrap: anywhere;
	word-break: break-word;
	max-width: 100%;
}

.xs99-reader-content p {
	margin: 0 0 1em;
}

.xs99-key-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.xs99-key-tabs a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 6px 12px;
	border: 1px solid #cfe3f8;
	border-radius: 6px;
	background: #f3f8fd;
	color: #155799;
	font-weight: 700;
}

.xs99-key-tabs a:hover {
	background: #e6f3ff;
	text-decoration: none;
}

.xs99-keyword-panel {
	border: 1px solid #cfe3f8;
	border-radius: 8px;
	overflow: hidden;
}

@media (max-width: 980px) {
	.xs99-book-columns,
	.xs99-meta-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.xs99-page-main,
	.xs99-reader-main,
	.xs99-book-layout {
		width: min(100% - 18px, 1180px);
	}

	.xs99-page-hero {
		padding: 13px;
	}

	.xs99-page-hero h1,
	.xs99-book-summary h1,
	.xs99-reader-head h1 {
		font-size: 21px;
	}

	.xs99-generated-content > table:not(.xs99-list-table),
	.xs99-keyword-panel > table:not(.xs99-list-table) {
		display: block;
		width: 100% !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.xs99-list-table {
		min-width: 0;
	}

	.xs99-list-table thead {
		display: none;
	}

	.xs99-list-table,
	.xs99-list-table tbody,
	.xs99-list-table tr,
	.xs99-list-table td {
		display: block;
		width: 100%;
	}

	.xs99-list-table tr {
		border-bottom: 1px solid #dcebf8;
	}

	.xs99-list-table td {
		display: grid;
		grid-template-columns: 90px minmax(0, 1fr);
		gap: 8px;
		padding: 8px 10px;
		border-bottom: 1px solid #edf4fb;
		text-align: left !important;
	}

	.xs99-list-table td::before {
		content: attr(data-label);
		color: #6b8298;
		font-weight: 700;
	}

	.xs99-book-hero,
	.xs99-book-columns,
	.xs99-meta-grid {
		grid-template-columns: 1fr;
	}

	.xs99-book-hero {
		padding: 13px;
	}

	.xs99-book-cover {
		justify-content: flex-start;
	}

	.xs99-reader-content {
		padding: 18px 15px;
		font-size: 17px;
		line-height: 1.95;
		word-break: break-all;
	}
}
