html {
	min-height: 100%;
	background: #161616;
}

body {
	position: relative;
	min-height: 100vh;
	overflow-x: hidden;
	background: #161616 !important;
	color: #f2f4f5;
	font-family: Raleway, "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
	isolation: isolate;
}

body::before {
	position: fixed;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	content: "";
	background:
		radial-gradient(ellipse at 50% 42%, rgba(70, 88, 190, .34) 0%, rgba(44, 64, 130, .22) 24%, transparent 56%),
		radial-gradient(ellipse at 37% 60%, rgba(95, 66, 160, .26) 0%, transparent 44%),
		radial-gradient(ellipse at 68% 34%, rgba(70, 130, 210, .2) 0%, transparent 42%),
		radial-gradient(ellipse at 50% 50%, transparent 0%, transparent 48%, rgba(0, 0, 0, .42) 100%),
		#161616;
}

body::after {
	position: fixed;
	inset: -18%;
	z-index: 0;
	pointer-events: none;
	content: "";
	background:
		linear-gradient(135deg, transparent 20%, rgba(105, 67, 255, .16) 42%, transparent 64%),
		linear-gradient(24deg, transparent 34%, rgba(95, 168, 255, .14) 52%, transparent 72%);
	filter: blur(72px);
	opacity: .72;
}

.pun {
	position: relative;
	z-index: 1;
	max-width: 1120px;
	padding: 24px 20px 28px;
	font-family: Raleway, "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
	animation: moonlith-page-in .24s ease-out both;
}

.punwrap {
	border-top: 0;
}

#brdheader .box,
.pun .box {
	border-color: #2b3033;
	background: rgba(17, 19, 20, .86);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .22);
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

#brdheader .box {
	display: grid;
	grid-template-columns: minmax(240px, auto) minmax(0, 1fr);
	grid-template-areas:
		"title nav"
		"status status";
	align-items: center;
	gap: 0 18px;
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 12px;
	background:
		linear-gradient(135deg, rgba(82, 181, 255, .055), transparent 32%),
		linear-gradient(225deg, rgba(149, 184, 6, .045), transparent 36%),
		rgba(9, 11, 12, .56);
	box-shadow: 0 22px 70px rgba(0, 0, 0, .18);
	backdrop-filter: blur(18px) saturate(1.08);
}

#brdtitle.inbox {
	grid-area: title;
	padding: 22px 0 18px 24px;
}

#brdtitle h1 {
	font-size: 28px;
	font-weight: 900;
	padding: 0 0 6px;
	line-height: 1.1;
}

#brdtitle h1 a {
	color: #f2f4f5;
	text-decoration: none;
	transition: color .18s ease;
}

#brdtitle h1 a span {
	color: #95b806;
	transition: text-shadow .18s ease;
}

#brdtitle h1 a:hover span {
	text-shadow: 0 0 18px rgba(149, 184, 6, .42);
}

#brddesc {
	color: #a8b0b4;
	font-size: 13px;
	line-height: 1.6;
}

#brdmenu {
	grid-area: nav;
	background: transparent;
	border: 0;
}

#brdmenu.inbox {
	padding: 18px 24px 18px 0;
}

#brdmenu ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 6px;
}

#brdmenu li {
	display: block;
	margin: 0;
}

#brdmenu a,
#brdmenu .fake-link {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 999px;
	color: #cfd6d9;
	background: rgba(255, 255, 255, .045);
	text-decoration: none;
	transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

#brdmenu #navnotifications .fake-link {
	justify-content: center;
	width: 34px;
	padding: 0;
}

#brdmenu li.isactive a,
#brdmenu a:hover,
#brdmenu .fake-link:hover {
	color: #101112;
	border-color: rgba(149, 184, 6, .64);
	background: #95b806;
	transform: translateY(-1px);
}

#brdwelcome {
	grid-area: status;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 13px 24px;
	color: #a8b0b4;
	background: rgba(0, 0, 0, .18);
	border-top: 1px solid rgba(255, 255, 255, .055);
	font-size: 12px;
	line-height: 1.6;
}

#brdwelcome ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	margin: 0;
	padding: 0;
}

#brdwelcome .conl,
#brdwelcome .conr {
	float: none;
	text-align: left;
}

#brdwelcome li {
	display: inline-flex;
}

#brdwelcome .moon-status-account span,
#brdwelcome .moon-free-status span,
#brdwelcome .moon-beta-status span,
#brdwelcome .moon-status-links span {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

#brdwelcome .moon-status-account span {
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 8px;
	background: rgba(255, 255, 255, .035);
}

#brdwelcome .moon-status-account strong,
#brdwelcome .moon-status-account a {
	display: inline-flex;
	align-items: center;
	padding: 0;
	border: 0;
	background: transparent;
	text-decoration: none;
}

#brdwelcome .moon-free-status span,
#brdwelcome .moon-beta-status span {
	min-height: 32px;
	padding: 4px 6px 4px 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 8px;
	background: rgba(255, 255, 255, .035);
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

#brdwelcome .moon-beta-status span {
	border-color: rgba(149, 184, 6, .24);
	background: rgba(149, 184, 6, .055);
}

#brdwelcome .moon-free-status span:hover,
#brdwelcome .moon-beta-status span:hover {
	transform: translateY(-1px);
}

#brdwelcome .moon-beta-status strong {
	color: #d8f15a;
	font-weight: 900;
}

#brdwelcome .moon-beta-status em {
	padding: 1px 7px;
	border: 1px solid rgba(149, 184, 6, .32);
	border-radius: 999px;
	color: #d8f15a;
	background: rgba(149, 184, 6, .09);
	font-style: normal;
	font-size: 10px;
	font-weight: 900;
	line-height: 1.4;
}

#brdwelcome .moon-free-status small,
#brdwelcome .moon-beta-status small {
	color: #a8b0b4;
	font-size: 11px;
	line-height: 1.4;
}

#brdwelcome .moon-free-status a,
#brdwelcome .moon-beta-status a,
#brdwelcome .moon-status-links a {
	min-height: 26px;
	padding: 0 9px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 6px;
	background: rgba(82, 181, 255, .07);
	text-decoration: none;
}

#brdwelcome .moon-beta-status a {
	border-color: rgba(149, 184, 6, .38);
	color: #101112;
	background: #b4e61e;
	font-weight: 900;
}

#brdwelcome .moon-status-links span {
	gap: 6px;
}

#brdwelcome strong {
	color: #f2f4f5;
}

#brdwelcome a {
	display: inline-flex;
	align-items: center;
	color: #52b5ff;
}

.pun h2 {
	padding: 12px 14px;
	color: #f2f4f5;
	background: #202326;
	border-color: #2b3033;
	border-radius: 0;
	font-size: 13px;
}

.pun .blockform {
	max-width: 720px;
	margin: 18px auto;
}

.pun #rules.blockform,
.pun #regform.blockform {
	max-width: 820px;
}

.pun .blockform .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .12);
	background: rgba(15, 17, 18, .62);
	backdrop-filter: blur(18px) saturate(1.08);
}

.pun .blockform form,
.pun .fakeform {
	padding: 0;
	background: transparent;
}

.pun .inform {
	border-top: 1px solid rgba(255, 255, 255, .06);
}

.pun .inform:first-child {
	border-top: 0;
}

.pun fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

.pun legend {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 16px 20px 4px;
	color: #f2f4f5;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
}

.pun .infldset {
	padding: 12px 20px 18px;
}

.pun .infldset p {
	color: #a8b0b4;
	font-size: 12px;
	line-height: 1.7;
}

.pun label {
	color: #dce2e4;
	font-size: 12px;
	line-height: 1.7;
}

.pun label strong {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 6px;
	color: #f2f4f5;
	font-size: 12px;
}

.pun .required strong span {
	position: static;
	display: inline-flex;
	overflow: visible;
	width: auto;
	left: auto;
	padding: 1px 5px;
	border: 1px solid rgba(149, 184, 6, .24);
	border-radius: 4px;
	color: #adc939;
	background: rgba(149, 184, 6, .055);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.35;
	text-indent: 0;
}

.pun label.conl {
	box-sizing: border-box;
	width: calc(50% - 8px);
	margin-right: 16px;
}

.pun label.conl + label.conl {
	margin-right: 0;
}

.pun input[type="text"],
.pun input[type="password"],
.pun input[type="email"],
.pun select,
.pun textarea {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-height: 38px;
	padding: 9px 11px;
	border: 1px solid #333a3e;
	border-radius: 6px;
	color: #f2f4f5;
	background: rgba(8, 10, 11, .72);
	font-size: 13px;
}

.pun input[type="checkbox"] {
	width: auto;
	margin-right: 8px;
	vertical-align: middle;
	accent-color: #95b806;
}

.pun .rbox {
	margin-top: 12px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 6px;
	background: rgba(255, 255, 255, .035);
}

.pun .actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}

.pun .actions span {
	display: inline-flex;
}

.pun .actions a {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 10px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 6px;
	background: rgba(82, 181, 255, .07);
}

.pun .actions a:hover {
	border-color: rgba(149, 184, 6, .44);
	background: rgba(149, 184, 6, .1);
	transform: translateY(-1px);
}

.pun .buttons,
.pun .submitend {
	margin: 0;
	padding: 16px 20px 20px;
	border-top: 1px solid rgba(255, 255, 255, .06);
	background: rgba(255, 255, 255, .03);
	text-align: right;
}

.pun .buttons input,
.pun .submitend input,
.pun input.button,
.pun .button {
	min-height: 38px;
	padding: 0 16px;
	border: 1px solid rgba(149, 184, 6, .58);
	border-radius: 6px;
	color: #101112 !important;
	background: #95b806;
	font-weight: 900;
	cursor: pointer;
}

.pun .buttons input:hover,
.pun .submitend input:hover,
.pun input.button:hover,
.pun .button:hover {
	border-color: #bfe220;
	background: #b0d517;
	box-shadow: 0 10px 26px rgba(149, 184, 6, .18);
	transform: translateY(-1px);
}

.pun .forminfo,
.pun .error-info {
	margin: 14px 20px;
	padding: 14px 16px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 6px;
	color: #dce2e4;
	background: rgba(82, 181, 255, .06);
}

.pun .error-info {
	border-color: rgba(255, 90, 90, .3);
	background: rgba(255, 90, 90, .08);
}

#punpayment .blockform,
#moonredeem.blockform {
	max-width: 980px;
	margin: 38px auto 48px;
}

#moonredeem h2 {
	display: none;
}

#moonredeem .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 16px;
	background:
		linear-gradient(150deg, rgba(82, 181, 255, .06), transparent 36%),
		linear-gradient(310deg, rgba(149, 184, 6, .055), transparent 34%),
		rgba(10, 12, 14, .7);
	box-shadow: 0 24px 80px rgba(0, 0, 0, .24);
}

.pun .moon-redeem {
	position: relative;
	overflow: hidden;
	padding: 0;
	background: transparent;
}

.pun .moon-redeem::before {
	display: none;
}

.pun .moon-redeem-hero {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px 34px;
	border-bottom: 1px solid rgba(255, 255, 255, .075);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .038), transparent 48%),
		rgba(255, 255, 255, .018);
}

.moon-redeem-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	margin-bottom: 16px;
	padding: 0 10px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 999px;
	color: #9ed4ff;
	background: rgba(82, 181, 255, .075);
	font-size: 12px;
	font-weight: 900;
}

.moon-redeem-hero strong {
	display: block;
	color: #f2f4f5;
	font-size: 29px;
	font-weight: 900;
	line-height: 1.2;
}

.moon-redeem-hero p,
.moon-redeem-form p {
	max-width: 620px;
	margin: 14px 0 0;
	color: #a8b0b4;
	font-size: 13px;
	line-height: 1.85;
}

.pun .moon-redeem-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 22px;
}

.moon-redeem-tags span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 999px;
	color: #dce2e4;
	background: rgba(255, 255, 255, .04);
	font-size: 12px;
}

.moon-redeem-state {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 14px;
	border: 1px solid rgba(149, 184, 6, .36);
	border-radius: 999px;
	color: #d8f15a;
	background: rgba(149, 184, 6, .09);
	box-shadow: 0 0 26px rgba(149, 184, 6, .08);
	font-size: 13px;
	font-weight: 900;
}

.moon-redeem-alert {
	position: relative;
	margin: 18px 24px 0 !important;
}

.pun .moon-redeem-body {
	position: relative;
	display: block;
	padding: 34px 38px 38px;
}

.pun .moon-redeem-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-top: 24px;
}

.moon-redeem-grid > div {
	min-height: 88px;
	padding: 20px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 8px;
	background: rgba(255, 255, 255, .04);
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.moon-redeem-grid > div:hover {
	border-color: rgba(149, 184, 6, .3);
	background: rgba(255, 255, 255, .055);
	transform: translateY(-1px);
}

.moon-redeem-grid span {
	display: block;
	margin-bottom: 12px;
	color: #8f9a9f;
	font-size: 11px;
}

.moon-redeem-grid strong {
	display: block;
	color: #f2f4f5;
	font-size: 15px;
	line-height: 1.4;
	word-break: break-word;
}

#moonredeem .moon-redeem-form {
	position: relative;
	padding: 28px 30px 30px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 12px;
	background:
		linear-gradient(145deg, rgba(82, 181, 255, .045), transparent 52%),
		rgba(0, 0, 0, .16) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}

.pun .moon-redeem-form-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 18px;
}

.moon-redeem-form-head strong {
	color: #f2f4f5;
	font-size: 16px;
	font-weight: 900;
}

.moon-redeem-form-head span {
	color: #8f9a9f;
	font-size: 12px;
}

.moon-redeem-code-field {
	display: block;
	margin: 0;
}

.moon-redeem-form input[type="text"] {
	min-height: 56px;
	padding-right: 14px;
	padding-left: 14px;
	border-color: rgba(255, 255, 255, .12);
	border-radius: 10px;
	background: rgba(5, 7, 8, .62);
	font-size: 14px;
	font-weight: 700;
}

.moon-redeem-form > p {
	margin-top: 16px;
}

.pun .moon-redeem-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.moon-redeem-actions a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 12px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 6px;
	background: rgba(82, 181, 255, .07);
	text-decoration: none;
}

.moon-2fa-key {
	display: grid;
	gap: 8px;
	margin: 4px 0 18px;
	padding: 14px 16px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 7px;
	background: rgba(82, 181, 255, .055);
}

.moon-2fa-key span {
	color: #8f9a9f;
	font-size: 11px;
}

.moon-2fa-key code {
	color: #d8f15a;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	word-break: break-all;
}

.pun .moon-qq-binding-panel fieldset {
	border-color: rgba(89, 191, 255, .24);
	background: rgba(64, 149, 205, .05);
}

.pun .moon-qq-binding-panel p {
	margin: 0 0 12px;
	color: #9baeb6;
}

.pun .moon-qq-binding-panel p:last-child {
	margin-bottom: 0;
}

.pun .moon-qq-binding-panel strong {
	color: #d5f07a;
}

.moon-qq-binding-code {
	margin-top: 14px;
}

.moon-qq-binding-code small {
	color: #75848a;
	font-size: 11px;
}

#msg .inbox {
	padding: 22px;
}

#punregister #register .inform:nth-of-type(5) {
	display: none;
}

#punlogin #brdmain {
	max-width: 900px;
	margin: 34px auto 0;
}

#punlogin .blockform {
	max-width: 900px;
	margin: 0 auto 26px;
}

#punlogin .blockform h2 {
	padding: 18px 22px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	background:
		linear-gradient(135deg, rgba(82, 181, 255, .13), rgba(149, 184, 6, .08)),
		rgba(18, 21, 22, .94);
	font-size: 18px;
	line-height: 1.3;
}

#punlogin .blockform .box {
	border-radius: 0 0 8px 8px;
	background:
		linear-gradient(145deg, rgba(82, 181, 255, .045), transparent 34%),
		rgba(10, 12, 13, .64);
	box-shadow: 0 24px 90px rgba(0, 0, 0, .22);
}

#punlogin #login {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 270px;
}

#punlogin #login .inform {
	border-top: 0;
}

#punlogin #login .inform:first-child .infldset {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 16px;
	padding: 18px 20px 22px;
}

#punlogin #login .inform:first-child legend {
	padding-top: 20px;
	font-size: 14px;
}

#punlogin #login label.conl {
	float: none;
	width: 100%;
	margin: 0;
}

#punlogin #login .rbox,
#punlogin #login .clearb,
#punlogin #login .actions {
	grid-column: 1 / -1;
}

#punlogin #login .rbox {
	margin-top: 2px;
	padding: 12px 14px;
	border-color: rgba(255, 255, 255, .08);
	background: rgba(255, 255, 255, .04);
}

#punlogin #login .inform:nth-of-type(2) {
	border-left: 1px solid rgba(255, 255, 255, .07);
	background: rgba(255, 255, 255, .025);
}

#punlogin #login .inform:nth-of-type(2) legend {
	padding-top: 20px;
}

#punlogin #login .inform:nth-of-type(2) .infldset {
	padding: 14px 18px 18px;
}

#punlogin #login .inform:nth-of-type(2) input[type="text"] {
	min-height: 38px;
}

#punlogin #login .buttons {
	grid-column: 1 / -1;
	padding: 18px 20px;
	border-top-color: rgba(255, 255, 255, .07);
	border-radius: 0 0 8px 8px;
}

#punlogin #login .buttons input {
	min-width: 118px;
}

#punredirect {
	display: flex;
	align-items: center;
	justify-content: center;
	width: min(92vw, 560px);
	min-height: calc(100vh - 48px);
	max-width: none;
	margin: 0 auto !important;
	padding: 24px;
}

#punredirect .punwrap {
	width: 100%;
	border-top: 0;
}

#punredirect .block {
	margin: 0;
}

#punredirect .block h2 {
	position: relative;
	padding: 22px 24px 18px 58px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	background:
		linear-gradient(135deg, rgba(82, 181, 255, .13), rgba(149, 184, 6, .08)),
		rgba(18, 21, 22, .94);
	font-size: 18px;
}

#punredirect .block h2::before {
	position: absolute;
	left: 24px;
	top: 50%;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border: 2px solid rgba(149, 184, 6, .22);
	border-top-color: #95b806;
	border-radius: 50%;
	content: "";
	animation: moonlith-spin .8s linear infinite;
}

#punredirect .box {
	border-radius: 0 0 10px 10px;
	background: rgba(10, 12, 13, .62);
	backdrop-filter: blur(18px) saturate(1.08);
}

#punredirect .inbox {
	padding: 24px;
}

#punredirect p {
	color: #dce2e4;
	font-size: 13px;
	line-height: 1.8;
}

#punredirect a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	margin-top: 6px;
	padding: 0 12px;
	border: 1px solid rgba(82, 181, 255, .2);
	border-radius: 6px;
	background: rgba(82, 181, 255, .08);
}

#msg .box:hover,
#brdfooter .box:hover,
.pun .blocktable .box:hover {
	border-color: rgba(149, 184, 6, .45);
	box-shadow: 0 20px 60px rgba(0, 0, 0, .28);
	transform: translateY(-1px);
}

#msg p {
	color: #dce2e4;
	font-size: 13px;
	line-height: 1.8;
}

#msg p:first-child {
	padding: 4px 0 12px;
}

.pun a:link,
.pun a:visited {
	color: #52b5ff;
	transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease;
}

.pun a:hover,
.pun a:active,
.pun a:focus {
	color: #95b806;
}

.pun table {
	font-size: 12px;
}

.pun .inbox thead .tc2,
.pun .inbox thead .tc3,
.pun .inbox thead .tcl,
.pun .inbox thead .tcr {
	background: #202326;
	border-bottom-color: #95b806;
}

.pun .roweven,
.pun .rowodd {
	background: #17191b;
}

.pun .roweven:hover,
.pun .rowodd:hover {
	background: #1f2426;
	box-shadow: inset 3px 0 0 #95b806;
}

.pun .forumdesc {
	color: #a8b0b4;
	font-size: 12px;
	line-height: 1.5;
}

#punindex #brdmain {
	margin-top: 18px;
}

#punindex .blocktable {
	margin: 18px 0 0;
}

#punindex .blocktable h2 {
	position: relative;
	margin: 0 0 10px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #f2f4f5;
	font-size: 15px;
}

#punindex .blocktable h2 span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid rgba(82, 181, 255, .16);
	border-radius: 999px;
	background: rgba(82, 181, 255, .07);
	box-shadow: 0 10px 28px rgba(0, 0, 0, .12);
}

#punindex .blocktable .box {
	overflow: visible;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 8px;
	background:
		linear-gradient(145deg, rgba(82, 181, 255, .035), transparent 38%),
		rgba(10, 12, 13, .48);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punindex .blocktable .inbox {
	padding: 12px;
}

#punindex .blocktable table,
#punindex .blocktable thead,
#punindex .blocktable tbody {
	display: block;
	width: 100%;
}

#punindex .blocktable thead {
	display: none;
}

#punindex .blocktable tbody {
	display: grid;
	gap: 10px;
}

#punindex .blocktable tr.roweven,
#punindex .blocktable tr.rowodd {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
	align-items: center;
	gap: 0;
	min-height: 92px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .035), transparent 48%),
		rgba(255, 255, 255, .028);
	transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}

#punindex .blocktable tr.roweven:hover,
#punindex .blocktable tr.rowodd:hover {
	border-color: rgba(149, 184, 6, .32);
	background:
		linear-gradient(135deg, rgba(149, 184, 6, .055), transparent 44%),
		rgba(255, 255, 255, .045);
	box-shadow: 0 16px 42px rgba(0, 0, 0, .18);
	transform: translateY(-1px);
}

#punindex .blocktable td {
	display: block;
	border: 0 !important;
	background: transparent !important;
}

#punindex .blocktable td.tcl {
	padding: 18px 20px;
}

#punindex .blocktable td.tcr {
	align-self: stretch;
	display: flex;
	align-items: center;
	min-width: 0;
	padding: 16px 20px;
	border-left: 1px solid rgba(255, 255, 255, .06) !important;
	background: rgba(7, 9, 10, .18) !important;
	color: #a8b0b4;
	font-size: 12px;
	line-height: 1.6;
}

#punindex .blocktable td.tcr a {
	color: #dce2e4;
	font-weight: 800;
}

#punindex .blocktable td.tcr .byuser {
	color: #8f9a9f;
}

#punindex .moon-last-post {
	display: grid;
	min-width: 0;
	width: 100%;
	gap: 4px;
}

#punindex .moon-last-label {
	color: #95b806;
	font-size: 10px;
	font-weight: 900;
}

#punindex .moon-last-post > a {
	overflow: hidden;
	color: #e7ecee;
	font-size: 13px;
	font-weight: 800;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#punindex .moon-last-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 12px;
	color: #8f9a9f;
	font-size: 11px;
}

#punindex .moon-last-empty > span:last-child {
	color: #8f9a9f;
	font-size: 12px;
}

#punindex .blocktable .tcl ul {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0;
	padding: 0;
}

#punindex .blocktable .rowlist {
	display: block;
	margin: 0;
	padding: 0;
}

#punindex .blocktable .icon {
	position: relative;
	display: grid;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	place-items: center;
	border: 1px solid rgba(82, 181, 255, .16);
	border-radius: 50%;
	color: #82c7fa;
	background: rgba(82, 181, 255, .055);
}

#punindex .blocktable .icon i {
	font-size: 18px;
}

#punindex .blocktable .icon-new::after {
	position: absolute;
	right: 1px;
	top: 1px;
	width: 6px;
	height: 6px;
	border: 2px solid #171b20;
	border-radius: 50%;
	background: #95b806;
	content: "";
}

#punindex .blocktable .icon-new {
	border-color: rgba(149, 184, 6, .28);
	color: #b4dc39;
	background: rgba(149, 184, 6, .075);
}

#punindex .blocktable .nosize {
	display: none;
}

#punindex .blocktable .tclcon {
	min-width: 0;
	padding: 0;
}

#punindex .blocktable h3 {
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.35;
}

#punindex .blocktable h3 a {
	color: #f2f4f5;
	font-weight: 900;
	text-decoration: none;
}

#punindex .blocktable h3 a:hover {
	color: #95b806;
}

#punindex .blocktable .forumdesc {
	margin-top: 4px;
	color: #a8b0b4;
	font-size: 12px;
	line-height: 1.55;
}

#punindex .blocktable .forum-meta {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 8px;
	color: #7f898e;
	font-size: 10px;
}

#punindex .blocktable .forum-meta strong {
	margin-left: 3px;
	color: #c7cfd2;
	font-weight: 800;
}

.pun .moon-terms {
	max-width: 980px;
	margin: 38px auto 48px;
}

.pun .moon-terms-hero {
	position: relative;
	overflow: hidden;
	padding: 40px 42px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 14px;
	background:
		linear-gradient(145deg, rgba(82, 181, 255, .08), transparent 38%),
		linear-gradient(315deg, rgba(149, 184, 6, .055), transparent 34%),
		rgba(10, 12, 13, .58);
	backdrop-filter: blur(16px) saturate(1.06);
}

.moon-terms-hero span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 999px;
	color: #9ed4ff;
	background: rgba(82, 181, 255, .075);
	font-size: 12px;
	font-weight: 900;
}

.moon-terms-hero h2 {
	margin: 18px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #f2f4f5;
	font-size: 28px;
	line-height: 1.2;
}

.moon-terms-hero p {
	max-width: 760px;
	margin: 16px 0 0;
	color: #a8b0b4;
	font-size: 13px;
	line-height: 1.9;
}

.pun .moon-terms-body {
	display: grid;
	gap: 18px;
	margin-top: 24px;
}

.moon-terms-body section {
	padding: 26px 28px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 10px;
	background: rgba(255, 255, 255, .035);
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.moon-terms-body section:hover {
	border-color: rgba(149, 184, 6, .28);
	background: rgba(255, 255, 255, .05);
	transform: translateY(-1px);
}

.moon-terms-body h3 {
	margin: 0 0 14px;
	color: #f2f4f5;
	font-size: 15px;
	line-height: 1.45;
}

.moon-terms-body p,
.moon-terms-body li {
	color: #c4cbcf;
	font-size: 13px;
	line-height: 1.85;
}

.moon-terms-body p {
	margin: 12px 0 0;
}

.moon-terms-body ul {
	margin: 12px 0 0;
	padding-left: 20px;
}

.moon-terms-body li + li {
	margin-top: 8px;
}

/* 版块主题列表 */
#punviewforum #brdmain {
	margin-top: 24px;
}

#punviewforum .linkst,
#punviewforum .linksb,
#punviewtopic .linkst,
#punviewtopic .linksb {
	margin: 0;
	padding: 0;
}

#punviewforum .crumbsplus,
#punviewtopic .crumbsplus {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 4px 2px 14px;
}

#punviewforum .crumbs,
#punviewtopic .crumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0;
	padding: 0;
	color: #8f9a9f;
}

#punviewforum .crumbs li,
#punviewtopic .crumbs li {
	display: inline-flex;
	align-items: center;
	margin: 0;
}

#punviewforum .pagepost,
#punviewtopic .pagepost {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
}

#punviewforum .postlink,
#punviewtopic .postlink {
	margin: 0;
}

#punviewforum .postlink a,
#punviewtopic .postlink a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 14px;
	border: 1px solid rgba(149, 184, 6, .58);
	border-radius: 6px;
	color: #101112;
	background: #95b806;
	font-weight: 900;
	text-decoration: none;
}

#punviewforum #vf {
	margin: 8px 0 22px;
}

#punviewforum #vf h2 {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 17px;
}

#punviewforum #vf h2 span {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 12px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 6px;
	background: rgba(82, 181, 255, .07);
}

#punviewforum #vf .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 12px;
	background: rgba(10, 12, 13, .5);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punviewforum #vf .inbox {
	padding: 10px 12px 12px;
}

#punviewforum #vf table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 10px;
}

#punviewforum #vf thead th {
	padding: 2px 14px 6px;
	border: 0;
	color: #7f8a90;
	background: transparent;
	font-size: 11px;
	font-weight: 700;
}

#punviewforum #vf tbody tr {
	background: transparent;
	box-shadow: none;
}

#punviewforum #vf tbody td {
	padding: 17px 14px;
	border-top: 1px solid rgba(255, 255, 255, .075);
	border-bottom: 1px solid rgba(255, 255, 255, .075);
	background: rgba(255, 255, 255, .032);
	transition: border-color .18s ease, background .18s ease;
}

#punviewforum #vf tbody td:first-child {
	border-left: 1px solid rgba(255, 255, 255, .075);
	border-radius: 8px 0 0 8px;
}

#punviewforum #vf tbody td:last-child {
	border-right: 1px solid rgba(255, 255, 255, .075);
	border-radius: 0 8px 8px 0;
}

#punviewforum #vf tbody tr:hover td {
	border-color: rgba(149, 184, 6, .28);
	background: rgba(149, 184, 6, .045);
}

#punviewforum #vf td.tcl ul {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0;
	padding: 0;
}

#punviewforum #vf .rowlist {
	display: block;
	margin: 0;
	padding: 0;
}

#punviewforum #vf .icon {
	position: relative;
	width: 10px;
	height: 10px;
	border: 2px solid #1b2024;
	border-radius: 50%;
	background: #728088;
	box-shadow: 0 0 0 3px rgba(114, 128, 136, .12);
}

#punviewforum #vf .inew .icon,
#punviewforum #vf .icon-new {
	background: #95b806;
	box-shadow: 0 0 0 3px rgba(149, 184, 6, .12);
}

#punviewforum #vf .tclcon {
	padding: 0;
	font-size: 13px;
	line-height: 1.65;
}

#punviewforum #vf .tclcon a {
	color: #f2f4f5;
	font-weight: 900;
	text-decoration: none;
}

#punviewforum #vf .byuser,
#punviewforum #vf .tcr {
	color: #8f9a9f;
	font-size: 11px;
	line-height: 1.6;
}

#punviewforum #vf tr.inone td {
	padding: 32px 20px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 8px;
	text-align: center;
}

#punviewforum #vf tr.inone .icon {
	display: none;
}

#punviewforum #vf tr.inone .tclcon {
	color: #a8b0b4;
	font-size: 13px;
}

/* 主题详情 */
#punviewtopic #brdmain {
	margin-top: 24px;
}

#punviewtopic .blockpost {
	margin: 18px 0 0;
	background: transparent;
}

#punviewtopic .blockpost > h2 {
	margin: 0;
	padding: 13px 18px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	background: rgba(12, 14, 15, .72);
	color: #a8b0b4;
	font-size: 12px;
}

#punviewtopic .blockpost > h2 .conr {
	color: #7f8a90;
}

#punviewtopic .blockpost > .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 0 0 10px 10px;
	background: rgba(10, 12, 13, .52);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punviewtopic .blockpost:not(:has(> h2)) > .box {
	border-radius: 10px;
}

#punviewtopic .blockpost > .box > .inbox {
	padding: 0;
}

#punviewtopic .postbody {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	min-height: 180px;
}

#punviewtopic .postleft,
#punviewtopic .postright {
	float: none;
	box-sizing: border-box;
	width: auto;
	min-height: 0;
}

#punviewtopic .postleft {
	padding: 22px 18px;
	border-right: 1px solid rgba(255, 255, 255, .065);
	background: rgba(255, 255, 255, .025) !important;
}

#punviewtopic .postleft dl,
#punviewtopic .postleft dt,
#punviewtopic .postleft dd {
	margin: 0;
	padding: 0;
}

#punviewtopic .postleft dt {
	margin-bottom: 5px;
	font-size: 14px;
}

#punviewtopic .postleft .usertitle {
	margin-bottom: 14px;
	color: #a8b0b4;
	font-size: 11px;
}

#punviewtopic .postleft dd:not(.usertitle):not(.postavatar) {
	margin-top: 6px;
	color: #a8b0b4;
	font-size: 11px;
	line-height: 1.5;
}

#punviewtopic .postavatar {
	margin: 14px 0;
}

#punviewtopic .postavatar img {
	display: block;
	max-width: 120px;
	height: auto;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 6px;
}

#punviewtopic .usercontacts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

#punviewtopic .usercontacts a {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	padding: 0 8px;
	border: 1px solid rgba(82, 181, 255, .16);
	border-radius: 5px;
	background: rgba(82, 181, 255, .06);
	text-decoration: none;
}

#punviewtopic .postright {
	padding: 24px 28px 30px;
	border-left: 0 !important;
	background: transparent !important;
}

#punviewtopic .postright h3 {
	position: static;
	display: block;
	overflow: visible;
	width: auto;
	left: auto;
	margin: 0 0 20px;
	padding: 0 0 14px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
	color: #f2f4f5;
	font-size: 15px;
	text-indent: 0;
}

#punviewtopic .postmsg {
	width: auto;
	color: #dce2e4;
	font-size: 13px;
	line-height: 1.85;
}

#punviewtopic .postmsg p {
	padding: 0 0 12px;
}

#punviewtopic .postsignature {
	margin-top: 26px;
	padding-top: 18px;
	color: #8f9a9f;
}

#punviewtopic .postfoot {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	min-height: 48px;
	border-top: 1px solid rgba(255, 255, 255, .065);
	background: rgba(255, 255, 255, .02);
}

#punviewtopic .postfootleft,
#punviewtopic .postfootright {
	float: none;
	box-sizing: border-box;
	width: auto;
}

#punviewtopic .postfootleft {
	display: flex;
	align-items: center;
	padding: 0 18px;
	border-right: 1px solid rgba(255, 255, 255, .065);
	color: #7f8a90;
	font-size: 11px;
	background: rgba(255, 255, 255, .018) !important;
}

#punviewtopic .postfootright {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 8px 14px;
	border-left: 0 !important;
	background: rgba(255, 255, 255, .018) !important;
}

#punviewtopic .postfootright ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 7px;
	margin: 0;
	padding: 0;
}

#punviewtopic .postfootright li {
	display: block;
	margin: 0;
}

#punviewtopic .postfootright li::before {
	content: none;
}

#punviewtopic .postfootright a {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 9px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 5px;
	background: rgba(255, 255, 255, .035);
	text-decoration: none;
}

#punviewtopic #quickpost.blockform {
	max-width: none;
	margin: 28px 0 34px;
}

#punviewtopic #quickpost > h2 {
	padding: 16px 18px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	background: rgba(12, 14, 15, .72);
	font-size: 14px;
}

#punviewtopic #quickpost > .box {
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 0 0 10px 10px;
	background: rgba(10, 12, 13, .52);
	box-shadow: none;
}

/* 个人中心 */
#punprofile #brdmain {
	margin-top: 28px;
}

#punprofile #profile.block2col {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	align-items: start;
	gap: 18px;
}

#punprofile #profile .blockmenu,
#punprofile #profile > .blockform,
#punprofile #profile > .block {
	float: none;
	width: auto;
	max-width: none;
	margin: 0;
}

#punprofile #profile .blockmenu {
	position: sticky;
	top: 18px;
}

#punprofile #profile .blockmenu h2,
#punprofile #profile > .blockform > h2,
#punprofile #profile > .block > h2 {
	margin: 0;
	padding: 16px 18px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	background: rgba(12, 14, 15, .72);
	font-size: 14px;
}

#punprofile #profile .blockmenu .box,
#punprofile #profile > .blockform > .box,
#punprofile #profile > .block > .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 0 0 10px 10px;
	background: rgba(10, 12, 13, .54);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punprofile #profile .blockmenu .inbox {
	padding: 10px;
}

#punprofile #profile .blockmenu ul {
	display: grid;
	gap: 5px;
	margin: 0;
	padding: 0;
}

#punprofile #profile .blockmenu li {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
}

#punprofile #profile .blockmenu a {
	display: flex;
	align-items: center;
	min-height: 38px;
	padding: 0 11px;
	border: 1px solid transparent;
	border-radius: 6px;
	color: #a8b0b4;
	text-decoration: none;
}

#punprofile #profile .blockmenu li.isactive a,
#punprofile #profile .blockmenu a:hover {
	border-color: rgba(149, 184, 6, .24);
	color: #f2f4f5;
	background: rgba(149, 184, 6, .07);
}

#punprofile #profile .inform {
	padding: 4px 0;
}

#punprofile #profile legend {
	padding: 20px 24px 6px;
	font-size: 14px;
}

#punprofile #profile .infldset {
	padding: 14px 24px 24px;
}

#punprofile #profile .buttons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	padding: 18px 24px;
}

/* 私信中心 */
#punpmsnew #brdmain {
	margin-top: 26px;
}

#punpmsnew #brdmain > .linkst {
	margin: 0 0 14px;
}

#punpmsnew .crumbsplus {
	display: flex;
	align-items: center;
	min-height: 34px;
	padding: 0 2px;
}

#punpmsnew .crumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0;
	padding: 0;
	color: #8f9a9f;
}

#punpmsnew .crumbs li {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

#punpmsnew .block2col {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	align-items: start;
	gap: 22px;
}

#punpmsnew .block2col > .blockmenu,
#punpmsnew .block2col > .block,
#punpmsnew .block2col > .blockform {
	float: none;
	width: auto;
	min-width: 0;
	max-width: none;
	margin: 0;
}

#punpmsnew .pms-sidebar {
	position: sticky;
	top: 18px;
	padding: 14px;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 8px;
	background: rgba(10, 12, 13, .5);
	backdrop-filter: blur(16px) saturate(1.06);
}

#punpmsnew .pms-sidebar h2 {
	margin: 0 0 7px;
	padding: 4px 7px;
	border: 0;
	background: transparent;
	color: #8f9a9f;
	font-size: 11px;
	font-weight: 800;
}

#punpmsnew .pms-sidebar h2.block2 {
	margin-top: 17px;
}

#punpmsnew .pms-sidebar h2 span {
	display: flex;
	align-items: center;
	gap: 7px;
}

#punpmsnew .pms-sidebar h2 i {
	width: 14px;
	color: #708087;
	text-align: center;
}

#punpmsnew .pms-sidebar .box,
#punpmsnew .pms-sidebar .inbox {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

#punpmsnew .pms-sidebar ul {
	display: grid;
	gap: 3px;
	margin: 0;
	padding: 0;
}

#punpmsnew .pms-sidebar li {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
}

#punpmsnew .pms-sidebar a {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	min-height: 39px;
	padding: 0 10px;
	border: 1px solid transparent;
	border-radius: 6px;
	color: #aeb7bb;
	text-decoration: none;
}

#punpmsnew .pms-sidebar a i {
	color: #718087;
	text-align: center;
}

#punpmsnew .pms-sidebar a strong {
	display: inline-grid;
	min-width: 22px;
	height: 22px;
	place-items: center;
	border-radius: 11px;
	color: #8f9a9f;
	background: rgba(255, 255, 255, .055);
	font-size: 10px;
}

#punpmsnew .pms-sidebar li.isactive a,
#punpmsnew .pms-sidebar a:hover {
	border-color: rgba(149, 184, 6, .23);
	color: #f2f4f5;
	background: rgba(149, 184, 6, .075);
}

#punpmsnew .pms-sidebar li.isactive a i,
#punpmsnew .pms-sidebar li.isactive a strong {
	color: #b4dc39;
}

#punpmsnew .pms-sidebar .pms-danger-link:hover {
	border-color: rgba(255, 91, 91, .24);
	color: #ff9c9c;
	background: rgba(255, 91, 91, .065);
}

#punpmsnew .pms-storage-list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 30px;
	padding: 0 10px;
	color: #8f9a9f;
	font-size: 11px;
}

#punpmsnew .pms-storage-list strong {
	color: #c4cbcf;
}

#punpmsnew .pms-storage-list li.is-full,
#punpmsnew .pms-storage-list li.is-full strong {
	color: #ff7f7f;
}

#punpmsnew .block2col > .blockform > h2,
#punpmsnew .block2col > .block > h2,
#punpmsnew .block2col #vf > h2,
#punpmsnew #postreview > h2 {
	margin: 0;
	padding: 17px 20px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	background: rgba(12, 14, 15, .68);
	color: #f2f4f5;
	font-size: 15px;
}

#punpmsnew .block2col > .blockform > .box,
#punpmsnew .block2col > .block > .box,
#punpmsnew .block2col #vf > .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 0 0 8px 8px;
	background: rgba(10, 12, 13, .5);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punpmsnew .blockform .inform {
	padding: 0;
}

#punpmsnew .blockform fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

#punpmsnew .blockform legend {
	padding: 22px 24px 4px;
	color: #95b806;
	font-size: 12px;
	font-weight: 900;
}

#punpmsnew .blockform .infldset {
	padding: 16px 24px 24px;
}

#punpmsnew #infono .infldset {
	min-height: 150px;
	padding: 30px 28px;
}

#punpmsnew #infono .infldset p {
	position: relative;
	max-width: 560px;
	padding: 18px 20px 18px 50px;
	border-left: 3px solid #95b806;
	color: #c9d0d3;
	background: rgba(149, 184, 6, .055);
	font-size: 13px;
	line-height: 1.75;
}

#punpmsnew #infono .infldset p::before {
	position: absolute;
	left: 19px;
	top: 18px;
	color: #b4dc39;
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f05a";
}

#punpmsnew .pagepost {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 38px;
	margin: 0 0 10px;
	overflow: visible;
}

#punpmsnew .pagepost:empty {
	display: none;
}

#punpmsnew .pagepost .conl,
#punpmsnew .pagepost .conr {
	float: none;
	margin: 0;
}

#punpmsnew .postlink.actions,
#punpmsnew .postlink.actions span {
	display: flex;
	align-items: center;
	gap: 8px;
}

#punpmsnew .postlink.actions a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid rgba(149, 184, 6, .5);
	border-radius: 6px;
	color: #111314;
	background: #95b806;
	font-weight: 900;
	text-decoration: none;
}

#punpmsnew .block2col #vf {
	margin: 0;
}

#punpmsnew .block2col #vf .inbox {
	padding: 0;
	overflow-x: auto;
}

#punpmsnew .block2col #vf table,
#punpmsnew #users1 table {
	width: 100%;
	min-width: 650px;
	border-collapse: collapse;
}

#punpmsnew .blocktable thead th {
	padding: 12px 14px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .07);
	color: #849096;
	background: rgba(255, 255, 255, .025);
	font-size: 10px;
	font-weight: 800;
}

#punpmsnew .blocktable tbody td {
	padding: 15px 14px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .055);
	background: transparent;
	color: #aeb7bb;
}

#punpmsnew .blocktable tbody tr:last-child td {
	border-bottom: 0;
}

#punpmsnew .blocktable tbody tr:hover td {
	background: rgba(255, 255, 255, .025);
}

#punpmsnew .blocktable td.tcl {
	position: relative;
}

#punpmsnew .blocktable td.tcl .icon {
	position: absolute;
	left: 14px;
	top: 50%;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border: 0;
	border-radius: 50%;
	background: #58646a;
}

#punpmsnew .blocktable td.tcl .icon-new,
#punpmsnew .blocktable tr.inew td.tcl .icon {
	background: #95b806;
	box-shadow: 0 0 0 4px rgba(149, 184, 6, .1);
}

#punpmsnew .blocktable td.tcl .tclcon {
	padding-left: 20px;
}

#punpmsnew .blocktable td.tcl .tclcon > div > a {
	color: #e4e9eb;
	font-size: 13px;
	font-weight: 800;
}

#punpmsnew .blocktable .newtext a {
	color: #b4dc39;
	font-size: 10px;
}

#punpmsnew .blocktable .tce {
	width: 42px;
	text-align: center;
}

#punpmsnew .blockform label {
	display: block;
	margin: 0 0 18px;
	color: #d5dcdf;
}

#punpmsnew .blockform label strong {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 12px;
}

#punpmsnew .blockform label.required strong span {
	color: #95b806;
	font-size: 10px;
}

#punpmsnew #postform input[type="text"],
#punpmsnew #postform textarea {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	border-color: rgba(255, 255, 255, .11);
	border-radius: 6px;
	background: rgba(3, 5, 6, .38);
}

#punpmsnew #postform textarea {
	min-height: 250px;
	resize: vertical;
}

#punpmsnew .bblinks {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 12px;
	margin: 4px 0 0;
	padding: 0;
	color: #7f8a8f;
	font-size: 10px;
}

#punpmsnew .buttons {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0;
	padding: 18px 24px;
	border-top: 1px solid rgba(255, 255, 255, .06);
}

#punpmsnew .buttons input,
#punpmsnew .pagepost input {
	min-height: 36px;
	padding: 0 13px;
	border-radius: 6px;
}

#punpmsnew .blockpost {
	margin: 0 0 14px;
}

#punpmsnew .blockpost > h2 {
	padding: 12px 16px;
	border: 1px solid rgba(82, 181, 255, .12);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	background: rgba(12, 14, 15, .7);
	font-size: 11px;
}

#punpmsnew .blockpost > .box,
#punpmsnew #postreview .blockpost .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 0 0 8px 8px;
	background: rgba(10, 12, 13, .48);
	box-shadow: none;
}

#punpmsnew .blockpost .inbox {
	padding: 0;
}

#punpmsnew .blockpost .postbody {
	display: grid;
	grid-template-columns: 170px minmax(0, 1fr);
}

#punpmsnew .blockpost .postleft {
	box-sizing: border-box;
	width: auto;
	padding: 18px;
	border-right: 1px solid rgba(255, 255, 255, .06);
	background: rgba(255, 255, 255, .02);
}

#punpmsnew .blockpost .postright {
	box-sizing: border-box;
	width: auto;
	min-width: 0;
	padding: 22px;
	background: transparent;
}

#punpmsnew .blockpost .postfoot {
	display: grid;
	grid-template-columns: 170px minmax(0, 1fr);
	border-top: 1px solid rgba(255, 255, 255, .055);
}

#punpmsnew .blockpost .postfootleft,
#punpmsnew .blockpost .postfootright {
	box-sizing: border-box;
	width: auto;
	min-height: 38px;
	padding: 7px 14px;
	background: transparent;
}

#punpmsnew .blockpost .postfootleft {
	border-right: 1px solid rgba(255, 255, 255, .055);
}

#punpmsnew .blockpost .postfootright ul {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 7px;
}

#punpmsnew .blockpost .postfootright li {
	display: block;
	margin: 0;
}

#punpmsnew .blockpost .postfootright a {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	padding: 0 8px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 5px;
	background: rgba(255, 255, 255, .035);
}

#punpmsnew #quickpost,
#punpmsnew #postreview {
	margin-top: 22px;
}

#punpmsnew .psmnwarn {
	position: relative;
	margin: 12px 0 0;
	padding: 12px 14px;
	border: 1px solid rgba(255, 194, 82, .2);
	border-left: 3px solid #ffc252;
	color: #e8d3ad;
	background: rgba(255, 194, 82, .055);
}

/* 帮助中心 */
#punhelp #brdmain {
	max-width: 980px;
	margin: 30px auto 46px;
}

#punhelp #brdmain > h2 {
	margin: 24px 0 10px;
	padding: 0 0 0 12px;
	border: 0;
	border-left: 3px solid #95b806;
	background: transparent;
	font-size: 17px;
	line-height: 1.5;
}

#punhelp #brdmain > h2:first-child {
	margin-top: 0;
}

#punhelp #brdmain > .box {
	border: 1px solid rgba(82, 181, 255, .11);
	border-radius: 9px;
	background: rgba(10, 12, 13, .5);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#punhelp #brdmain > .box > .inbox {
	padding: 20px 22px;
}

#punhelp #brdmain > .box > .inbox + .inbox {
	border-top: 1px solid rgba(255, 255, 255, .06);
}

#punhelp #brdmain p {
	padding: 6px 0;
	color: #c4cbcf;
	font-size: 13px;
	line-height: 1.8;
}

#punhelp code,
#punhelp samp {
	display: inline-block;
	max-width: 100%;
	padding: 3px 7px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 4px;
	color: #dce2e4;
	background: rgba(0, 0, 0, .22);
	overflow-wrap: anywhere;
}

#brdfooter .inbox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 0;
}

#brdfooter p {
	color: #f2f4f5;
	font-weight: 900;
	font-size: 13px;
}

#brdfooter ul {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
	color: #a8b0b4;
}

#brdfooter .box {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, .08);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

#brdfooter h2 {
	display: none;
}

#brdfooternav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

#brdfooternav .conl {
	float: none;
}

#brdfooternav .conr {
	float: none;
	margin-left: auto;
	text-align: right;
}

#brdfooternav #poweredby {
	color: #a8b0b4;
	font-size: 12px;
	font-weight: 400;
}

#brdfooter.block {
	margin-top: 24px;
	margin-bottom: 0;
	padding: 18px 4px 0;
}

#brdfooter .box .inbox > p {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	letter-spacing: .02em;
}

#brdfooter .box .inbox > ul {
	align-items: center;
}

#brdfooter .box .inbox > ul li {
	display: inline-flex;
	align-items: center;
}

#brdstats {
	margin: 18px 0 0;
}

#brdstats h2 {
	display: none;
}

#brdstats .box {
	border: 1px solid rgba(82, 181, 255, .1);
	border-radius: 12px;
	background:
		linear-gradient(135deg, rgba(82, 181, 255, .035), transparent 34%),
		rgba(10, 12, 13, .48);
	box-shadow: none;
	backdrop-filter: blur(16px) saturate(1.06);
}

#brdstats .inbox {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 16px;
	padding: 14px 16px;
}

#brdstats dl {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
}

#brdstats .conl,
#brdstats .conr {
	float: none;
	text-align: left;
}

#brdstats .conr:empty {
	display: none;
}

#brdstats dt {
	position: static;
	display: inline-flex;
	overflow: visible;
	width: auto;
	left: auto;
	color: #8f9a9f;
	font-size: 11px;
	text-indent: 0;
}

#brdstats dd {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
	color: #dce2e4;
}

#brdstats .conl > dd > span,
#brdstats .conr > dd > span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 999px;
	background: rgba(255, 255, 255, .035);
	color: #dce2e4;
}

#brdstats #onlinelist {
	flex-basis: 100%;
	padding-top: 2px;
}

#brdstats #onlinelist dd {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 999px;
	background: rgba(255, 255, 255, .035);
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

#brdstats #onlinelist dd:hover {
	border-color: rgba(149, 184, 6, .28);
	background: rgba(255, 255, 255, .055);
	transform: translateY(-1px);
}

#brdstats #onlinelist a,
#brdstats #onlinelist a:visited {
	display: inline-flex;
	align-items: center;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	text-decoration: none;
}

#brdstats #onlinelist .gid1,
#brdwelcome .moon-status-account .gid1 {
	color: #b4e61e !important;
	font-weight: 900;
}

#brdstats #onlinelist .gid2,
#brdwelcome .moon-status-account .gid2 {
	color: #fecc01 !important;
	font-weight: 900;
}

#brdstats #onlinelist .gid5,
#brdwelcome .moon-status-account .gid5 {
	color: #ff5b5b !important;
	font-weight: 900;
}

#brdstats #onlinelist dt strong {
	color: #8f9a9f;
	font-weight: 700;
}

#brdfooter a:hover {
	color: #95b806;
}

.pun input,
.pun select,
.pun textarea,
.pun .button {
	transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.pun input:focus,
.pun select:focus,
.pun textarea:focus {
	border-color: #95b806;
	box-shadow: 0 0 0 3px rgba(149, 184, 6, .12);
}

@keyframes moonlith-page-in {
	from {
		opacity: 0;
		transform: translateY(6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes moonlith-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	* {
		animation-duration: .01ms !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}

@media (max-width: 700px) {
	.pun {
		padding: 10px 12px 18px;
	}

	.pun .blockform {
		max-width: none;
		margin: 12px auto;
	}

	.pun label.conl {
		width: 100%;
		margin-right: 0;
	}

	#punlogin #brdmain {
		margin-top: 18px;
	}

	#punlogin #login {
		display: block;
	}

	#punlogin #login .inform:first-child .infldset {
		display: block;
	}

	#punlogin #login .inform:nth-of-type(2) {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, .07);
	}

	.pun .buttons,
	.pun .submitend {
		text-align: left;
	}

	#brdfooter .inbox {
		align-items: flex-start;
		flex-direction: column;
	}

	#brdfooter ul {
		justify-content: flex-start;
	}

	#brdheader .box {
		display: block;
	}

	#brdtitle.inbox,
	#brdmenu.inbox,
	#brdwelcome {
		padding-right: 16px;
		padding-left: 16px;
	}

	#brdmenu ul,
	#brdwelcome {
		justify-content: flex-start;
	}

	#brdstats .inbox {
		align-items: flex-start;
		flex-direction: column;
	}

	#punindex .blocktable .inbox {
		padding: 10px;
	}

	#punindex .blocktable tr.roweven,
	#punindex .blocktable tr.rowodd {
		display: block;
	}

	#punindex .blocktable td.tcl {
		padding: 14px;
	}

	#punindex .blocktable td.tcr {
		padding: 12px 14px 14px;
		border-top: 1px solid rgba(255, 255, 255, .06) !important;
		border-left: 0 !important;
	}

	.pun .moon-redeem {
		padding: 0;
	}

	.pun .moon-redeem-hero {
		display: block;
		padding: 24px 20px;
	}

	.moon-redeem-state {
		margin-top: 12px;
	}

	.moon-redeem-grid {
		grid-template-columns: 1fr;
	}

	.pun .moon-redeem-body {
		padding: 22px 18px 24px;
	}

	#moonredeem .moon-redeem-form {
		padding: 22px 18px 24px;
	}

	.pun .moon-redeem-form-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.pun .moon-terms {
		margin: 24px auto 34px;
	}

	.pun .moon-terms-hero {
		padding: 28px 22px;
	}

	.moon-terms-hero h2 {
		font-size: 24px;
	}

	.pun .moon-terms-body {
		gap: 14px;
		margin-top: 18px;
	}

	.moon-terms-body section {
		padding: 22px 20px;
	}

	#punviewforum .crumbsplus,
	#punviewtopic .crumbsplus {
		align-items: flex-start;
		flex-direction: column;
	}

	#punviewforum .pagepost,
	#punviewtopic .pagepost {
		width: 100%;
		margin-left: 0;
	}

	#punviewforum #vf .inbox {
		overflow-x: auto;
	}

	#punviewforum #vf table {
		min-width: 620px;
	}

	#punviewtopic .postbody,
	#punviewtopic .postfoot {
		grid-template-columns: 1fr;
	}

	#punviewtopic .postleft {
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .065);
	}

	#punviewtopic .postright {
		padding: 22px 18px 26px;
	}

	#punviewtopic .postfootleft {
		min-height: 38px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .055);
	}

	#punviewtopic .postfootright {
		justify-content: flex-start;
	}

	#punviewtopic .postfootright ul {
		justify-content: flex-start;
	}

	#punpmsnew .block2col {
		grid-template-columns: 1fr;
	}

	#punpmsnew .pms-sidebar {
		position: static;
		padding: 12px;
	}

	#punpmsnew .pms-sidebar h2 {
		margin-top: 12px;
	}

	#punpmsnew .pms-sidebar h2:first-child {
		margin-top: 0;
	}

	#punpmsnew .pms-sidebar ul:not(.pms-storage-list) {
		display: flex;
		overflow-x: auto;
		padding-bottom: 2px;
	}

	#punpmsnew .pms-sidebar ul:not(.pms-storage-list) li {
		flex: 0 0 auto;
	}

	#punpmsnew .pms-sidebar a {
		grid-template-columns: 18px auto auto;
	}

	#punpmsnew .block2col #vf .inbox,
	#punpmsnew #users1 .inbox {
		overflow-x: auto;
	}

	#punpmsnew .blockpost .postbody,
	#punpmsnew .blockpost .postfoot {
		grid-template-columns: 1fr;
	}

	#punpmsnew .blockpost .postleft {
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .06);
	}

	#punpmsnew .blockpost .postfootleft {
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .055);
	}

	#punpmsnew .blockpost .postfootright ul {
		justify-content: flex-start;
	}

	#punpmsnew .blockform .infldset,
	#punpmsnew .blockform legend,
	#punpmsnew .buttons {
		padding-right: 18px;
		padding-left: 18px;
	}

	#punprofile #profile.block2col {
		grid-template-columns: 1fr;
	}

	#punprofile #profile .blockmenu {
		position: static;
	}

	#punprofile #profile .blockmenu ul {
		display: flex;
		overflow-x: auto;
		padding-bottom: 2px;
	}

	#punprofile #profile .blockmenu li {
		flex: 0 0 auto;
	}

	#punprofile #profile .buttons {
		align-items: flex-start;
		flex-direction: column;
	}

	#punhelp #brdmain {
		margin-top: 24px;
	}

	#punhelp #brdmain > .box > .inbox {
		padding: 18px;
	}
}

/* 后台邀请码与 CDK 管理 */
#punadmin #adminconsole {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	align-items: start;
	gap: 20px;
	margin-top: 28px;
}

#punadmin #adminmenu,
#punadmin #adminconsole > .block,
#punadmin #adminconsole > .blockform {
	float: none;
	box-sizing: border-box;
	width: auto;
	max-width: none;
	margin: 0;
}

#punadmin #adminmenu {
	position: sticky;
	top: 18px;
}

#punadmin #adminmenu h2,
#punadmin #adminconsole > .block > h2,
#punadmin #adminconsole > .blockform > h2 {
	margin: 0;
	padding: 15px 17px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-bottom: 0;
	background: rgba(12, 14, 15, .74);
	font-size: 14px;
}

#punadmin #adminmenu .box,
#punadmin #adminconsole > .block > .box,
#punadmin #adminconsole > .blockform > .box {
	border: 1px solid rgba(82, 181, 255, .14);
	background: rgba(8, 10, 11, .52);
	backdrop-filter: blur(16px);
}

#punadmin #adminmenu .box {
	margin-bottom: 14px;
}

#punadmin #adminmenu .inbox {
	padding: 8px;
}

#punadmin #adminmenu ul {
	display: grid;
	gap: 4px;
	margin: 0;
	padding: 0;
}

#punadmin #adminmenu li {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
}

#punadmin #adminmenu a {
	display: flex;
	align-items: center;
	min-height: 36px;
	padding: 0 10px;
	border: 1px solid transparent;
	border-radius: 5px;
	color: #aab3b7;
	text-decoration: none;
}

#punadmin #adminmenu li.isactive a,
#punadmin #adminmenu a:hover {
	border-color: rgba(149, 184, 6, .24);
	color: #f2f4f5;
	background: rgba(149, 184, 6, .07);
}

.moon-admin-codes > .box {
	box-sizing: border-box;
	padding: 22px;
}

.moon-code-summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .07);
	background: rgba(255, 255, 255, .07);
}

.moon-code-summary > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-height: 64px;
	padding: 0 15px;
	background: rgba(13, 15, 16, .94);
}

.moon-code-summary span,
.moon-code-actions section > p,
.moon-section-heading > p {
	color: #89949a;
	font-size: 11px;
	line-height: 1.7;
}

.moon-code-summary strong {
	color: #f1f4f5;
	font-size: 21px;
}

.moon-admin-notice {
	margin-top: 16px;
	padding: 13px 15px;
	border: 1px solid rgba(149, 184, 6, .24);
	color: #dce9b7;
	background: rgba(149, 184, 6, .065);
	line-height: 1.65;
	word-break: break-word;
}

.moon-admin-notice.is-error {
	border-color: rgba(255, 98, 98, .25);
	color: #ffc2c2;
	background: rgba(255, 98, 98, .06);
}

.moon-code-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 20px;
}

.moon-code-actions section {
	padding: 20px;
	border: 1px solid rgba(255, 255, 255, .075);
	background: rgba(255, 255, 255, .022);
}

.moon-code-kicker {
	display: block;
	margin-bottom: 6px;
	color: #9fc6de;
	font-size: 10px;
	font-weight: 850;
}

.moon-code-actions h3,
.moon-section-heading h3 {
	margin: 0;
	color: #f0f3f4;
	font-size: 16px;
}

.moon-code-actions section > p {
	margin: 7px 0 18px;
}

.moon-code-actions form {
	display: grid;
	gap: 13px;
}

.moon-code-actions label {
	display: grid;
	gap: 7px;
	color: #bfc7ca;
	font-size: 11px;
}

.moon-code-actions input,
.moon-code-actions select {
	box-sizing: border-box;
	width: 100%;
	min-height: 40px;
	padding: 0 11px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 5px;
	color: #edf1f2;
	background: rgba(4, 6, 7, .55);
}

.moon-code-actions button,
.pms-blocklist-actions button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 15px;
	border: 1px solid rgba(149, 184, 6, .46);
	border-radius: 5px;
	color: #101314;
	background: #b4dd32;
	font-weight: 850;
	cursor: pointer;
	transition: filter .16s ease, transform .16s ease;
}

.moon-code-actions button:hover,
.pms-blocklist-actions button:hover {
	filter: brightness(1.07);
	transform: translateY(-1px);
}

.moon-code-actions .moon-invite-wave {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	border-color: rgba(82, 181, 255, .16);
	background: rgba(82, 181, 255, .035);
}

.moon-invite-wave p {
	margin-bottom: 0 !important;
}

.moon-code-history {
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, .07);
}

.moon-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 14px;
}

.moon-section-heading > p {
	margin: 0;
	text-align: right;
}

.moon-table-scroll {
	overflow-x: auto;
	border: 1px solid rgba(255, 255, 255, .075);
}

.moon-table-scroll table {
	width: 100%;
	min-width: 850px;
	border-collapse: collapse;
}

.moon-table-scroll th,
.moon-table-scroll td {
	padding: 12px 13px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .055);
	text-align: left;
	vertical-align: middle;
}

.moon-table-scroll th {
	color: #89949a;
	background: rgba(255, 255, 255, .025);
	font-size: 10px;
}

.moon-table-scroll td {
	color: #bac3c7;
	font-size: 11px;
}

.moon-table-scroll code {
	color: #e8edf0;
	font-family: Consolas, monospace;
}

.moon-code-type,
.moon-code-state {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 0 7px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 4px;
	white-space: nowrap;
}

.moon-code-type.is-vip {
	border-color: rgba(255, 194, 82, .2);
	color: #ffd58a;
	background: rgba(255, 194, 82, .05);
}

.moon-code-type.is-invite,
.moon-code-state.is-ready {
	border-color: rgba(82, 181, 255, .2);
	color: #9bd7ff;
	background: rgba(82, 181, 255, .05);
}

.moon-code-state.is-used {
	color: #7f8a90;
}

.moon-icon-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	border: 1px solid rgba(255, 105, 105, .18);
	border-radius: 4px;
	color: #ff9393;
	background: rgba(255, 105, 105, .05);
	cursor: pointer;
}

.moon-empty-row {
	padding: 32px 16px !important;
	color: #7f8a90 !important;
	text-align: center !important;
}

/* 私信黑名单 */
#punpmsnew .pms-blocklist {
	min-width: 0;
	margin: 0;
}

.pms-blocklist-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 21px 22px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-bottom: 0;
	background: rgba(12, 14, 15, .7);
}

.pms-blocklist-heading span {
	color: #9fc6de;
	font-size: 10px;
	font-weight: 850;
}

.pms-blocklist-heading h2 {
	margin: 3px 0 0;
	color: #f1f4f5;
	font-size: 16px;
}

.pms-blocklist-heading p {
	margin: 5px 0 0;
	color: #879298;
	font-size: 11px;
}

.pms-blocklist-heading > strong {
	padding: 7px 10px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 4px;
	color: #aab4b8;
	background: rgba(255, 255, 255, .03);
	font-size: 11px;
}

.pms-blocklist > form {
	border: 1px solid rgba(82, 181, 255, .13);
	background: rgba(8, 10, 11, .5);
	backdrop-filter: blur(15px);
}

.pms-blocked-user {
	display: grid;
	grid-template-columns: 46px minmax(150px, 1fr) minmax(260px, 1fr) 70px;
	align-items: center;
	gap: 15px;
	min-height: 78px;
	padding: 0 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .055);
	transition: background .16s ease;
}

.pms-blocked-user:hover {
	background: rgba(255, 255, 255, .018);
}

.pms-blocked-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 6px;
	color: #8e9a9f;
	background: rgba(255, 255, 255, .035);
}

.pms-blocked-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pms-blocked-identity {
	display: grid;
	gap: 5px;
	min-width: 0;
}

.pms-blocked-identity strong,
.pms-blocked-identity a {
	overflow: hidden;
	color: #edf1f2;
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pms-blocked-identity span {
	color: #849096;
	font-size: 10px;
}

.pms-blocked-user dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 0;
}

.pms-blocked-user dl > div {
	display: grid;
	gap: 5px;
}

.pms-blocked-user dt {
	color: #78848a;
	font-size: 9px;
}

.pms-blocked-user dd {
	margin: 0;
	color: #b8c1c5;
	font-size: 11px;
}

.pms-unblock-select {
	display: grid;
	justify-items: center;
	gap: 4px;
	cursor: pointer;
}

.pms-unblock-select input {
	position: absolute;
	opacity: 0;
}

.pms-unblock-select span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 1px solid rgba(255, 255, 255, .11);
	border-radius: 4px;
	color: transparent;
}

.pms-unblock-select input:checked + span {
	border-color: rgba(149, 184, 6, .45);
	color: #101314;
	background: #b4dd32;
}

.pms-unblock-select em {
	color: #778389;
	font-size: 9px;
	font-style: normal;
}

.pms-blocklist-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 58px 20px;
	color: #78848a;
	text-align: center;
}

.pms-blocklist-empty i {
	font-size: 24px;
}

.pms-blocklist-empty strong {
	color: #c7ced1;
}

.pms-blocklist-empty p {
	margin: 0;
}

.pms-blocklist-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	min-height: 62px;
	padding: 0 18px;
	border-top: 1px solid rgba(255, 255, 255, .055);
}

.pms-blocklist-actions > label {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #98a3a8;
}

.pms-blocklist-pages {
	margin-right: auto;
}

/* 移除旧主题行悬停时的绿色竖线，并修正在线状态。 */
#punviewtopic .blockpost,
#punpmsnew .blockpost,
#punviewtopic .blockpost > h2,
#punviewtopic .blockpost > .box,
#punpmsnew .blockpost > h2,
#punpmsnew .blockpost > .box {
	border-left-color: rgba(82, 181, 255, .13) !important;
	box-shadow: none !important;
}

#punviewtopic .blockpost .box.roweven:hover,
#punviewtopic .blockpost .box.rowodd:hover,
#punpmsnew .blockpost .box.roweven:hover,
#punpmsnew .blockpost .box.rowodd:hover {
	box-shadow: none !important;
}

#punviewtopic .postfootleft p,
#punpmsnew .postfootleft p {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

#punviewtopic .postfootleft p strong::before,
#punviewtopic .postfootleft p span::before,
#punpmsnew .postfootleft p strong::before,
#punpmsnew .postfootleft p span::before {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #5f696e;
	content: "";
}

#punviewtopic .postfootleft p strong,
#punpmsnew .postfootleft p strong {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #b8dd49;
}

#punviewtopic .postfootleft p strong::before,
#punpmsnew .postfootleft p strong::before {
	background: #a9d82c;
	box-shadow: 0 0 0 3px rgba(169, 216, 44, .09);
}

@media (max-width: 900px) {
	#punadmin #adminconsole {
		grid-template-columns: 1fr;
	}

	#punadmin #adminmenu {
		position: static;
	}

	#punadmin #adminmenu ul {
		display: flex;
		overflow-x: auto;
	}

	.moon-code-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pms-blocked-user {
		grid-template-columns: 46px minmax(130px, 1fr) 64px;
	}

	.pms-blocked-user dl {
		display: none;
	}
}

@media (max-width: 640px) {
	.moon-admin-codes > .box {
		padding: 14px;
	}

	.moon-code-actions {
		grid-template-columns: 1fr;
	}

	.moon-code-actions .moon-invite-wave {
		align-items: stretch;
		flex-direction: column;
	}

	.pms-blocked-user {
		grid-template-columns: 40px minmax(0, 1fr) 54px;
		gap: 10px;
		padding: 10px 12px;
	}

	.pms-blocklist-actions {
		flex-wrap: wrap;
		padding: 12px;
	}
}

/* 站内提醒：替换旧主题自带的紫色提示条。 */
.pun .notice-bar {
	margin: 14px 0 0;
	padding: 0;
	border: 1px solid rgba(82, 181, 255, .16);
	border-radius: 7px;
	color: #cbd5d9;
	background: rgba(13, 18, 20, .76);
	font-size: 12px;
	font-weight: 700;
	text-align: left;
	backdrop-filter: blur(14px);
}

.pun .notice-bar a {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 46px;
	padding: 0 15px;
	color: #dce5e8;
	text-decoration: none;
}

.pun .notice-bar a:hover {
	color: #f4f7f8;
	background: rgba(82, 181, 255, .045);
}

.pun .notice-bar i {
	color: #52b5ff;
	font-size: 14px;
	text-align: center;
}

.pun .notice-bar strong {
	display: inline-grid;
	min-width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 12px;
	color: #0d1113;
	background: #a9d82c;
	font-size: 10px;
}

.pun .notice-bar-invite {
	border-color: rgba(169, 216, 44, .18);
}

.pun .notice-bar-invite i {
	color: #a9d82c;
}

/* 私信会话：清除旧皮肤的 18em 边框占位。 */
#punpmsnew .blockpost .postleft,
#punpmsnew .blockpost .postright,
#punpmsnew .blockpost .postfootleft,
#punpmsnew .blockpost .postfootright {
	float: none;
	position: static;
	margin: 0;
	border-left: 0 !important;
	overflow: visible;
}

#punpmsnew .blockpost .postright {
	min-height: 150px;
}

#punpmsnew .blockpost .postmsg {
	width: auto;
	padding: 0;
	font-size: 13px;
	line-height: 1.8;
}

#punpmsnew .block2col > #quickpost {
	grid-column: 2;
	width: 100%;
}

#punpmsnew #quickpost .txtarea,
#punviewtopic #quickpost .txtarea {
	box-sizing: border-box;
	width: auto;
	padding: 16px 24px 22px;
}

#punpmsnew #quickpost label,
#punviewtopic #quickpost label {
	display: block;
	width: auto;
	margin: 0;
	padding: 0;
}

#punpmsnew #quickpost textarea,
#punviewtopic #quickpost textarea {
	width: 100%;
	min-height: 158px;
	resize: vertical;
}

#punpmsnew #quickpost .bblinks,
#punviewtopic #quickpost .bblinks {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 15px;
	margin: 10px 0 0;
	padding: 0;
}

#punpmsnew #quickpost .bblinks li,
#punviewtopic #quickpost .bblinks li {
	display: block;
	padding: 0;
}

/* 普通用户的邀请码中心。 */
#punprofile .moon-invites-page > .box {
	overflow: hidden;
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 0 0 8px 8px;
	background: rgba(10, 12, 13, .5);
	box-shadow: none;
}

.moon-invite-overview {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.moon-invite-overview > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 72px;
	padding: 0 24px;
}

.moon-invite-overview > div + div {
	border-left: 1px solid rgba(255, 255, 255, .06);
}

.moon-invite-overview span {
	color: #8f9a9f;
	font-size: 12px;
}

.moon-invite-overview strong {
	color: #f2f4f5;
	font-size: 22px;
}

.moon-invite-guide {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	margin: 22px 24px 14px;
	padding: 16px 18px;
	border: 1px solid rgba(169, 216, 44, .17);
	border-radius: 7px;
	background: rgba(169, 216, 44, .045);
}

.moon-invite-guide > i {
	color: #a9d82c;
	font-size: 20px;
	text-align: center;
}

.moon-invite-guide strong {
	display: block;
	margin-bottom: 3px;
	color: #e8edef;
	font-size: 13px;
}

.moon-invite-guide p {
	margin: 0;
	padding: 0;
	color: #8f9a9f;
	font-size: 11px;
	line-height: 1.6;
}

.moon-user-invite-list {
	display: grid;
	gap: 10px;
	padding: 10px 24px 26px;
}

.moon-user-invite {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	min-height: 62px;
	padding: 12px 14px;
	border: 1px solid rgba(82, 181, 255, .11);
	border-radius: 7px;
	background: rgba(255, 255, 255, .025);
}

.moon-user-invite.is-used {
	opacity: .62;
}

.moon-user-invite-main {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.moon-user-invite code {
	color: #e7ecee;
	font-size: 13px;
	font-weight: 800;
}

.moon-user-invite-meta {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 7px 14px;
	color: #7f8a90;
	font-size: 10px;
}

.moon-copy-invite {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 32px;
	padding: 0 10px;
	border: 1px solid rgba(82, 181, 255, .16);
	border-radius: 5px;
	color: #9ed3f8;
	background: rgba(82, 181, 255, .055);
	cursor: pointer;
}

.moon-copy-invite.is-copied {
	border-color: rgba(169, 216, 44, .2);
	color: #b8dd49;
	background: rgba(169, 216, 44, .055);
}

.moon-invite-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 48px 24px 54px;
	color: #7f8a90;
	text-align: center;
}

.moon-invite-empty i {
	margin-bottom: 5px;
	color: #657177;
	font-size: 25px;
}

.moon-invite-empty strong {
	color: #cbd2d5;
	font-size: 13px;
}

.moon-invite-empty p {
	margin: 0;
	padding: 0;
	font-size: 11px;
}

@media (max-width: 760px) {
	#punpmsnew .block2col > #quickpost {
		grid-column: 1;
	}

	.moon-invite-guide,
	.moon-user-invite {
		grid-template-columns: 1fr;
	}

	.moon-invite-guide > i {
		text-align: left;
	}

	.moon-invite-guide .button {
		justify-self: start;
	}

	.moon-user-invite-meta {
		justify-content: flex-start;
	}
}

@media (max-width: 520px) {
	.moon-invite-overview {
		grid-template-columns: 1fr;
	}

	.moon-invite-overview > div + div {
		border-top: 1px solid rgba(255, 255, 255, .06);
		border-left: 0;
	}

	.moon-invite-guide {
		margin-right: 16px;
		margin-left: 16px;
	}

	.moon-user-invite-list {
		padding-right: 16px;
		padding-left: 16px;
	}
}

/* 轮盘赌 */
.pun .moon-roulette-page {
	max-width: 1040px;
	margin: 30px auto 48px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 8px;
	background: rgba(9, 12, 14, .62);
	overflow: hidden;
	backdrop-filter: blur(18px) saturate(1.06);
}

.moon-roulette-head {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	padding: 26px 30px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
	background: rgba(255, 255, 255, .018);
}

.moon-roulette-head-icon {
	display: grid;
	width: 56px;
	height: 56px;
	place-items: center;
	border: 1px solid rgba(169, 216, 44, .21);
	border-radius: 8px;
	color: #b8dd49;
	background: rgba(169, 216, 44, .06);
	font-size: 23px;
}

.moon-roulette-head > div:nth-child(2) > span,
.moon-section-title > div > span {
	color: #78878d;
	font-size: 10px;
	font-weight: 900;
}

.moon-roulette-head h2 {
	margin: 4px 0 5px;
	padding: 0;
	border: 0;
	color: #f2f4f5;
	background: transparent;
	font-size: 23px;
}

.moon-roulette-head p {
	margin: 0;
	padding: 0;
	color: #8f9a9f;
	font-size: 12px;
}

.moon-spin-balance {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 7px 0 7px 18px;
	border-left: 1px solid rgba(255, 255, 255, .08);
}

.moon-spin-balance span {
	color: #8f9a9f;
	font-size: 11px;
}

.moon-spin-balance strong {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	color: #dce2e4;
}

.moon-spin-balance strong b {
	color: #b8dd49;
	font-size: 22px;
	line-height: 1;
}

.moon-spin-balance strong em {
	color: #78858b;
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
}

.moon-roulette-stage,
.moon-prize-pool,
.moon-reward-history {
	padding: 26px 30px 30px;
}

.moon-prize-pool,
.moon-reward-history {
	border-top: 1px solid rgba(255, 255, 255, .06);
}

.moon-section-title {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 17px;
}

.moon-section-title h3 {
	margin: 3px 0 0;
	padding: 0;
	color: #edf1f2;
	font-size: 16px;
}

.moon-section-title small {
	color: #748086;
	font-size: 10px;
}

.moon-reel-shell {
	position: relative;
	padding: 13px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 8px;
	background: rgba(5, 8, 10, .66);
}

.moon-reel-viewport {
	position: relative;
	height: 168px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 7px;
	background: rgba(12, 15, 17, .88);
}

.moon-reel-track {
	display: flex;
	align-items: center;
	gap: 12px;
	width: max-content;
	height: 100%;
	padding: 0 16px;
	will-change: transform;
}

.moon-reel-track.is-previewing {
	animation: moon-reel-preview 20s linear infinite;
}

@keyframes moon-reel-preview {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(-1056px, 0, 0); }
}

.moon-reel-item {
	display: grid;
	flex: 0 0 164px;
	box-sizing: border-box;
	height: 136px;
	place-items: center;
	align-content: center;
	gap: 10px;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 7px;
	background: rgba(255, 255, 255, .025);
}

.moon-reel-item strong {
	overflow: hidden;
	max-width: 100%;
	color: #dce2e4;
	font-size: 11px;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.moon-reel-media,
.moon-prize-media,
.moon-spin-result-icon {
	display: grid;
	place-items: center;
	overflow: hidden;
	border-radius: 7px;
}

.moon-reel-media {
	width: 66px;
	height: 66px;
	font-size: 26px;
}

.moon-reel-media img,
.moon-prize-media img,
.moon-spin-result-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.moon-reel-pointer {
	position: absolute;
	top: 5px;
	bottom: 5px;
	left: 50%;
	z-index: 4;
	width: 2px;
	background: rgba(169, 216, 44, .76);
	box-shadow: 0 0 15px rgba(169, 216, 44, .36);
	pointer-events: none;
}

.moon-reel-pointer::before,
.moon-reel-pointer::after {
	position: absolute;
	left: 50%;
	width: 0;
	height: 0;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	content: "";
	transform: translateX(-50%);
}

.moon-reel-pointer::before {
	top: -1px;
	border-top: 9px solid #a9d82c;
}

.moon-reel-pointer::after {
	bottom: -1px;
	border-bottom: 9px solid #a9d82c;
}

.tone-vip .moon-reel-media,
.tone-vip .moon-prize-media {
	color: #b8dd49;
	background: rgba(169, 216, 44, .08);
}

.tone-invite .moon-reel-media,
.tone-invite .moon-prize-media {
	color: #79c8ff;
	background: rgba(82, 181, 255, .09);
}

.tone-cs2 .moon-reel-media,
.tone-cs2 .moon-prize-media {
	border: 1px solid rgba(230, 180, 50, .22);
}

.tone-cs2-multi .moon-reel-media,
.tone-cs2-multi .moon-prize-media {
	border: 1px solid rgba(63, 205, 215, .22);
}

.tone-premium .moon-reel-media,
.tone-premium .moon-prize-media {
	border: 1px solid rgba(230, 111, 162, .22);
}

.tone-thanks .moon-reel-media,
.tone-thanks .moon-prize-media {
	color: #9ca7ac;
	background: rgba(156, 167, 172, .07);
}

.moon-spin-controls {
	display: grid;
	justify-items: center;
	gap: 9px;
	padding: 24px 0 2px;
}

.moon-spin-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-width: 154px;
	height: 44px;
	padding: 0 20px;
	border: 1px solid #a9d82c;
	border-radius: 7px;
	color: #111416;
	background: #a9d82c;
	font-weight: 900;
	cursor: pointer;
	transition: background .18s ease, transform .18s ease;
}

.moon-spin-button:hover:not(:disabled) {
	background: #b9e440;
	transform: translateY(-1px);
}

.moon-spin-button:disabled {
	cursor: default;
	opacity: .48;
}

.moon-spin-controls p {
	margin: 0;
	padding: 0;
	color: #78858b;
	font-size: 10px;
}

.moon-spin-result-icon {
	width: 92px;
	height: 92px;
	color: var(--result-accent);
	background: var(--result-soft);
	font-size: 34px;
}

.moon-modal-open {
	overflow: hidden;
}

.moon-win-modal {
	--result-accent: #a9d82c;
	--result-soft: rgba(169, 216, 44, .075);
	position: fixed;
	inset: 0;
	z-index: 5000;
	display: grid;
	place-items: center;
	padding: 20px;
	opacity: 0;
	pointer-events: none;
	transition: opacity .18s ease;
}

.moon-win-modal[hidden] {
	display: none;
}

.moon-win-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

.moon-win-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(4, 7, 9, .38);
	backdrop-filter: blur(3px) saturate(.82);
}

.moon-win-dialog {
	position: relative;
	width: min(470px, calc(100vw - 40px));
	box-sizing: border-box;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .11);
	border-top-color: color-mix(in srgb, var(--result-accent) 55%, transparent);
	border-radius: 8px;
	background: rgba(19, 23, 25, .97);
	box-shadow: 0 24px 64px rgba(0, 0, 0, .4), 0 0 0 1px rgba(0, 0, 0, .16);
	transform: translateY(10px) scale(.98);
	transition: transform .18s ease;
}

.moon-win-dialog::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 2px;
	background: var(--result-accent);
	content: "";
}

.moon-win-modal.is-open .moon-win-dialog {
	transform: translateY(0) scale(1);
}

.moon-win-close {
	position: absolute;
	top: 12px;
	right: 12px;
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 5px;
	color: #93a0a5;
	background: rgba(255, 255, 255, .035);
	cursor: pointer;
	transition: border-color .16s ease, color .16s ease, background .16s ease;
}

.moon-win-close:hover {
	border-color: rgba(255, 255, 255, .17);
	color: #edf1f2;
	background: rgba(255, 255, 255, .065);
}

.moon-win-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 52px;
	padding: 0 55px 0 20px;
	border-bottom: 1px solid rgba(255, 255, 255, .07);
	background: rgba(255, 255, 255, .018);
}

.moon-win-head > span:last-child {
	color: #59656a;
	font-size: 9px;
	font-weight: 800;
}

.moon-win-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #bac3c6;
	font-size: 10px;
	font-weight: 900;
}

.moon-win-kicker i {
	color: var(--result-accent);
}

.moon-win-body {
	display: grid;
	grid-template-columns: 108px minmax(0, 1fr);
	align-items: center;
	gap: 22px;
	padding: 25px 24px 24px;
}

.moon-win-visual {
	display: grid;
	width: 108px;
	height: 108px;
	place-items: center;
	border: 1px solid color-mix(in srgb, var(--result-accent) 20%, transparent);
	border-radius: 7px;
	background: var(--result-soft);
}

.moon-win-content {
	display: grid;
	justify-items: start;
	min-width: 0;
	text-align: left;
}

.moon-win-label,
.moon-win-hint {
	margin: 0;
	padding: 0;
	color: #849197;
	font-size: 10px;
}

.moon-win-label {
	margin-bottom: 6px;
	color: var(--result-accent);
	font-weight: 850;
}

.moon-win-content > strong {
	color: #f1f4f5;
	font-size: 20px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.moon-win-content > code {
	box-sizing: border-box;
	max-width: 100%;
	margin-top: 12px;
	padding: 8px 10px;
	border: 1px solid color-mix(in srgb, var(--result-accent) 24%, transparent);
	border-radius: 5px;
	color: var(--result-accent);
	background: var(--result-soft);
	font-size: 11px;
	overflow-wrap: anywhere;
}

.moon-win-hint {
	margin-top: 10px;
	line-height: 1.6;
}

.moon-win-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px;
	padding: 16px 20px 18px;
	border-top: 1px solid rgba(255, 255, 255, .07);
	background: rgba(0, 0, 0, .11);
}

#moonCopyReward,
#moonResultDismiss {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-width: 104px;
	height: 36px;
	padding: 0 12px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 5px;
	color: #9ed3f8;
	background: rgba(82, 181, 255, .055);
	font-weight: 800;
	cursor: pointer;
	transition: transform .16s ease, filter .16s ease;
}

#moonResultDismiss {
	border-color: var(--result-accent);
	color: #111416;
	background: var(--result-accent);
}

#moonCopyReward:hover,
#moonResultDismiss:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
}

#moonCopyReward[hidden] {
	display: none;
}

.moon-win-modal.tone-invite {
	--result-accent: #62bdf8;
	--result-soft: rgba(82, 181, 255, .075);
}

.moon-win-modal.tone-cs2 {
	--result-accent: #e6b432;
	--result-soft: rgba(230, 180, 50, .075);
}

.moon-win-modal.tone-cs2-multi {
	--result-accent: #49cbd4;
	--result-soft: rgba(63, 205, 215, .075);
}

.moon-win-modal.tone-premium {
	--result-accent: #e66fa2;
	--result-soft: rgba(230, 111, 162, .075);
}

.moon-win-modal.tone-thanks {
	--result-accent: #89969c;
	--result-soft: rgba(137, 150, 156, .065);
}

@media (max-width: 520px) {
	.moon-win-modal {
		padding: 14px;
	}

	.moon-win-dialog {
		width: min(390px, calc(100vw - 28px));
	}

	.moon-win-body {
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 15px;
		padding: 22px 20px;
	}

	.moon-win-visual {
		width: 98px;
		height: 98px;
	}

	.moon-win-content {
		justify-items: center;
		text-align: center;
	}

	.moon-win-actions {
		padding: 14px 16px 16px;
	}

	#moonCopyReward,
	#moonResultDismiss {
		flex: 1 1 120px;
	}
}

.moon-prize-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 10px;
}

.moon-prize-card {
	display: grid;
	justify-items: center;
	gap: 8px;
	min-width: 0;
	padding: 16px 10px 14px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 7px;
	background: rgba(255, 255, 255, .022);
	text-align: center;
	transition: border-color .18s ease, transform .18s ease;
}

.moon-prize-card:hover {
	border-color: rgba(82, 181, 255, .2);
	transform: translateY(-2px);
}

.moon-prize-media {
	width: 58px;
	height: 58px;
	font-size: 23px;
}

.moon-prize-card strong {
	overflow-wrap: anywhere;
	color: #dce2e4;
	font-size: 11px;
	line-height: 1.45;
}

.moon-reward-list {
	display: grid;
	gap: 7px;
}

.moon-reward-row {
	display: grid;
	grid-template-columns: minmax(180px, 1fr) minmax(170px, auto) 100px;
	align-items: center;
	gap: 15px;
	min-height: 54px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, .065);
	border-radius: 6px;
	background: rgba(255, 255, 255, .018);
}

.moon-reward-row > div:first-child {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.moon-reward-row strong {
	overflow: hidden;
	color: #cfd6d9;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.moon-reward-status {
	flex: 0 0 auto;
	padding: 2px 6px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 4px;
	font-size: 9px;
}

.moon-reward-status.is-issued {
	border-color: rgba(169, 216, 44, .18);
	color: #b8dd49;
	background: rgba(169, 216, 44, .045);
}

.moon-reward-status.is-pending {
	border-color: rgba(255, 194, 82, .18);
	color: #ffc252;
	background: rgba(255, 194, 82, .045);
}

.moon-reward-status.is-none {
	border-color: rgba(156, 167, 172, .16);
	color: #9ca7ac;
	background: rgba(156, 167, 172, .04);
}

.moon-reward-value {
	min-width: 0;
	color: #829097;
	font-size: 10px;
	text-align: right;
}

.moon-reward-value code {
	color: #9ed3f8;
	font-size: 10px;
}

.moon-reward-row time {
	color: #6f7b81;
	font-size: 9px;
	text-align: right;
}

.moon-reward-empty {
	display: grid;
	justify-items: center;
	gap: 7px;
	padding: 38px 20px 42px;
	color: #6f7c82;
	text-align: center;
}

.moon-reward-empty i {
	margin-bottom: 4px;
	font-size: 23px;
}

.moon-reward-empty strong {
	color: #bfc7ca;
	font-size: 12px;
}

.moon-reward-empty p {
	margin: 0;
	padding: 0;
	font-size: 10px;
}

@media (max-width: 820px) {
	.moon-prize-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.moon-reward-row {
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 10px 12px;
	}

	.moon-reward-row time {
		grid-column: 1 / -1;
		text-align: left;
	}
}

@media (max-width: 620px) {
	.pun .moon-roulette-page {
		margin-top: 22px;
	}

	.moon-roulette-head {
		grid-template-columns: 46px minmax(0, 1fr);
		padding: 20px 18px;
	}

	.moon-roulette-head-icon {
		width: 46px;
		height: 46px;
		font-size: 19px;
	}

	.moon-spin-balance {
		grid-column: 1 / -1;
		justify-self: stretch;
		justify-content: space-between;
		padding-left: 0;
		border-top: 1px solid rgba(255, 255, 255, .07);
		border-left: 0;
	}

	.moon-roulette-stage,
	.moon-prize-pool,
	.moon-reward-history {
		padding: 22px 16px 25px;
	}

	.moon-section-title {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.moon-reel-viewport {
		height: 154px;
	}

	.moon-reel-item {
		flex-basis: 142px;
		height: 124px;
	}

	.moon-prize-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.moon-reward-row,
	.moon-reward-row > div:first-child {
		align-items: flex-start;
		grid-template-columns: 1fr;
	}

	.moon-reward-value,
	.moon-reward-row time {
		text-align: left;
	}
}

@media (prefers-reduced-motion: reduce) {
	.moon-reel-track.is-previewing {
		animation: none;
	}
}

/* 公开资料页：彻底覆盖旧主题的浮动定义，保持信息分组清晰。 */
.pun .moon-public-profile {
	display: grid;
	gap: 12px;
	margin-top: 16px;
}

.pun .moon-profile-summary {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	min-height: 104px;
	padding: 20px 22px;
	border: 1px solid rgba(82, 181, 255, .13);
	border-radius: 8px;
	background:
		linear-gradient(110deg, rgba(82, 181, 255, .065), transparent 34%),
		rgba(10, 12, 13, .68);
	box-shadow: 0 18px 48px rgba(0, 0, 0, .18);
	backdrop-filter: blur(16px);
}

.pun .moon-profile-avatar {
	display: grid;
	width: 72px;
	height: 72px;
	place-items: center;
	overflow: hidden;
	border: 1px solid rgba(149, 184, 6, .28);
	border-radius: 7px;
	color: #b4dd32;
	background: rgba(149, 184, 6, .075);
	font-size: 25px;
}

.pun .moon-profile-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.pun .moon-profile-summary-main {
	min-width: 0;
}

.pun .moon-profile-summary-main > span {
	display: block;
	margin-bottom: 5px;
	color: #748087;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0;
}

.pun .moon-profile-summary-main h2 {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	color: #f1f4f5;
	background: transparent;
	font-size: 21px;
	font-weight: 900;
	line-height: 1.25;
}

.pun .moon-profile-summary-main h2 a,
.pun .moon-profile-summary-main h2 span {
	font-size: inherit;
	line-height: inherit;
}

.pun .moon-profile-summary-main p {
	margin: 6px 0 0;
	padding: 0;
	color: #9aa5aa;
	font-size: 11px;
	line-height: 1.5;
}

.pun .moon-profile-summary-meta {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 7px;
}

.pun .moon-profile-summary-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 9px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 5px;
	color: #8f9ba0;
	background: rgba(255, 255, 255, .025);
	font-size: 10px;
	white-space: nowrap;
}

.pun .moon-profile-summary-meta i {
	width: 15px;
	margin-right: 5px;
	color: #78bce9;
	text-align: center;
}

.pun .moon-public-profile > .box {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.pun .moon-profile-sections {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.pun .moon-profile-section {
	min-width: 0;
	margin: 0;
}

.pun .moon-profile-section:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.pun .moon-profile-section fieldset {
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 7px;
	background: rgba(10, 12, 13, .58);
	overflow: hidden;
}

.pun .moon-profile-section legend {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 13px 16px 11px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
	color: #d9dfe1;
	background: rgba(255, 255, 255, .025);
	font-size: 11px;
	font-weight: 800;
	line-height: 1.4;
}

.pun .moon-profile-section .infldset {
	padding: 7px 16px 10px;
}

.pun #viewprofile .moon-profile-section dl {
	display: grid;
	grid-template-columns: minmax(76px, 34%) minmax(0, 1fr);
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}

.pun #viewprofile .moon-profile-section dt,
.pun #viewprofile .moon-profile-section dd {
	box-sizing: border-box;
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid rgba(255, 255, 255, .05);
	background: transparent;
	font-size: 10px;
	line-height: 1.55;
}

.pun #viewprofile .moon-profile-section dt {
	padding-right: 12px;
	color: #77848a;
	font-weight: 700;
}

.pun #viewprofile .moon-profile-section dd {
	color: #c8d0d3;
	overflow-wrap: anywhere;
}

.pun #viewprofile .moon-profile-section dt:first-of-type,
.pun #viewprofile .moon-profile-section dd:first-of-type {
	border-top: 0;
}

.pun #viewprofile .moon-profile-section dd a {
	color: #8ecaf2;
	text-decoration: none;
}

.pun #viewprofile .moon-profile-section dd a:hover {
	color: #b4dd32;
}

.pun .moon-profile-section .clearer {
	display: none;
}

@media (max-width: 760px) {
	.pun .moon-profile-summary {
		grid-template-columns: 64px minmax(0, 1fr);
		padding: 18px;
	}

	.pun .moon-profile-avatar {
		width: 62px;
		height: 62px;
	}

	.pun .moon-profile-summary-meta {
		grid-column: 1 / -1;
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
		padding-top: 2px;
	}

	.pun .moon-profile-sections {
		grid-template-columns: minmax(0, 1fr);
	}

	.pun .moon-profile-section:last-child:nth-child(odd) {
		grid-column: auto;
	}
}

@media (max-width: 440px) {
	.pun .moon-profile-summary {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 13px;
		padding: 15px;
	}

	.pun .moon-profile-avatar {
		width: 50px;
		height: 50px;
		font-size: 19px;
	}

	.pun .moon-profile-summary-main h2 {
		font-size: 18px;
	}

	.pun .moon-profile-summary-meta span {
		white-space: normal;
	}

	.pun .moon-profile-section .infldset {
		padding: 6px 13px 9px;
	}

	.pun #viewprofile .moon-profile-section dl {
		grid-template-columns: minmax(68px, 32%) minmax(0, 1fr);
	}
}

/* 头像上传页：独立于旧版通用表单，突出文件选择和限制说明。 */
.pun .moon-avatar-upload {
	max-width: 760px;
	margin: 34px auto 48px;
}

.pun .moon-avatar-upload > h2 {
	margin: 0;
	padding: 17px 20px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	background: rgba(12, 14, 15, .76);
	font-size: 15px;
}

.pun .moon-avatar-upload > .box {
	border-radius: 0 0 8px 8px;
	background: rgba(8, 10, 11, .6);
}

.pun .moon-avatar-upload .inform {
	padding: 0;
}

.pun .moon-avatar-upload legend {
	padding: 24px 26px 6px;
	color: #edf1f2;
	font-size: 14px;
}

.pun .moon-avatar-upload .infldset {
	display: grid;
	gap: 16px;
	padding: 14px 26px 27px;
}

.pun .moon-avatar-file {
	display: grid;
	gap: 10px;
}

.pun .moon-avatar-file strong {
	margin: 0;
}

.pun .moon-avatar-file input[type="file"] {
	box-sizing: border-box;
	width: 100%;
	min-height: 48px;
	padding: 6px;
	border: 1px dashed rgba(82, 181, 255, .27);
	border-radius: 6px;
	color: #9da8ad;
	background: rgba(82, 181, 255, .035);
	font: inherit;
	cursor: pointer;
}

.pun .moon-avatar-file input[type="file"]::file-selector-button {
	min-height: 34px;
	margin-right: 12px;
	padding: 0 13px;
	border: 1px solid rgba(82, 181, 255, .24);
	border-radius: 5px;
	color: #cfe7f7;
	background: rgba(82, 181, 255, .09);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
}

.pun .moon-avatar-file input[type="file"]:hover,
.pun .moon-avatar-file input[type="file"]:focus {
	border-color: rgba(149, 184, 6, .48);
	outline: 0;
}

.pun .moon-avatar-note {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: center;
	gap: 11px;
	margin: 0;
	padding: 13px 14px;
	border: 1px solid rgba(149, 184, 6, .16);
	border-radius: 6px;
	color: #aeb8bc;
	background: rgba(149, 184, 6, .045);
}

.pun .moon-avatar-note i {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 5px;
	color: #b4dd32;
	background: rgba(149, 184, 6, .09);
	font-size: 14px;
}

.pun .moon-avatar-note span {
	font-size: 11px;
	line-height: 1.7;
}

.pun .moon-avatar-upload .buttons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	padding: 18px 26px 22px;
}

.pun .moon-avatar-upload .buttons a {
	color: #8ecaf2;
	font-size: 11px;
}

@media (max-width: 560px) {
	.pun .moon-avatar-upload {
		margin-top: 22px;
	}

	.pun .moon-avatar-upload legend {
		padding: 20px 18px 5px;
	}

	.pun .moon-avatar-upload .infldset {
		padding: 12px 18px 22px;
	}

	.pun .moon-avatar-upload .buttons {
		align-items: stretch;
		flex-direction: column;
		padding: 16px 18px 20px;
		text-align: left;
	}

	.pun .moon-avatar-upload .buttons input {
		width: 100%;
	}
}

/* 删除确认页 */
#pundelete .linkst,
#pundelete .moon-delete-confirm,
#pundelete .moon-delete-preview {
	box-sizing: border-box;
	width: min(100%, 840px);
	max-width: 840px;
	margin-right: auto;
	margin-left: auto;
}

#pundelete .linkst {
	margin-top: 20px;
	margin-bottom: 14px;
}

#pundelete .moon-delete-confirm {
	margin-top: 0;
	margin-bottom: 16px;
}

#pundelete .moon-delete-confirm > h2,
#pundelete .moon-delete-preview > h2 {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 15px 18px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-bottom: 0;
	border-radius: 7px 7px 0 0;
	background: rgba(18, 20, 22, .88);
	font-size: 14px;
}

#pundelete .moon-delete-confirm > h2::before,
#pundelete .moon-delete-preview > h2::before {
	content: "";
	display: block;
	width: 4px;
	height: 16px;
	border-radius: 2px;
	background: #ef6464;
}

#pundelete .moon-delete-preview > h2::before {
	background: #52b5ff;
}

#pundelete .moon-delete-confirm > .box {
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 0 0 7px 7px;
	background: rgba(12, 14, 15, .68);
}

#pundelete .moon-delete-confirm form {
	padding: 0;
}

#pundelete .moon-delete-confirm .inform {
	padding: 20px 20px 0;
	border: 0;
}

#pundelete .moon-delete-confirm .forminfo {
	margin: 0;
	padding: 18px 20px;
	border: 1px solid rgba(239, 100, 100, .22);
	border-radius: 6px;
	background: rgba(239, 100, 100, .055);
}

#pundelete .moon-delete-confirm .forminfo h3 {
	margin: 0 0 9px;
	padding: 0;
	color: #f2f4f5;
	font-size: 13px;
	line-height: 1.6;
}

#pundelete .moon-delete-confirm .forminfo p {
	padding: 0;
	color: #aeb8bc;
	font-size: 12px;
	line-height: 1.8;
}

#pundelete .moon-delete-confirm .forminfo p strong {
	color: #ff9a9a;
}

#pundelete .moon-delete-confirm .buttons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	margin: 0;
	padding: 18px 20px 20px;
}

#pundelete .moon-delete-confirm .buttons input[type="submit"] {
	min-width: 108px;
	min-height: 38px;
	margin: 0;
	padding: 0 18px;
	border: 1px solid #ef6464;
	border-radius: 5px;
	color: #fff !important;
	background: #d84f4f;
	font-weight: 900;
	cursor: pointer;
}

#pundelete .moon-delete-confirm .buttons input[type="submit"]:hover,
#pundelete .moon-delete-confirm .buttons input[type="submit"]:focus {
	border-color: #ff8585;
	color: #fff !important;
	background: #e65d5d;
}

#pundelete .moon-delete-confirm .buttons a {
	color: #8ecaf2;
	font-size: 12px;
}

#pundelete .moon-delete-preview {
	margin-top: 0;
	margin-bottom: 36px;
}

#pundelete .moon-delete-preview .blockpost {
	margin: 0;
}

#pundelete .moon-delete-preview .blockpost > .box {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 0 0 7px 7px;
	background: rgba(12, 14, 15, .58);
}

#pundelete .moon-delete-preview .postbody {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	min-height: 112px;
}

#pundelete .moon-delete-preview .postleft,
#pundelete .moon-delete-preview .postright {
	float: none;
	box-sizing: border-box;
	width: auto;
}

#pundelete .moon-delete-preview .postleft {
	padding: 20px;
	border-right: 1px solid rgba(255, 255, 255, .065);
	background: rgba(255, 255, 255, .025) !important;
}

#pundelete .moon-delete-preview .postleft dl,
#pundelete .moon-delete-preview .postleft dd {
	margin: 0;
	padding: 0;
}

#pundelete .moon-delete-preview .postleft dt {
	margin-bottom: 7px;
	color: #f2f4f5;
	font-size: 13px;
}

#pundelete .moon-delete-preview .postleft dd {
	color: #7f8a90;
	font-size: 11px;
}

#pundelete .moon-delete-preview .postright {
	padding: 22px 24px;
	border-left: 0;
	background: transparent !important;
}

#pundelete .moon-delete-preview .postmsg {
	width: auto;
	padding: 0;
	color: #dce2e4;
	font-size: 13px;
	line-height: 1.8;
}

@media (max-width: 640px) {
	#pundelete .moon-delete-preview .postbody {
		grid-template-columns: 1fr;
	}

	#pundelete .moon-delete-preview .postleft {
		display: block;
		padding: 14px 16px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .065);
	}

	#pundelete .moon-delete-preview .postright {
		padding: 18px 16px;
	}

	#pundelete .moon-delete-confirm .buttons {
		align-items: stretch;
		flex-direction: column;
	}

	#pundelete .moon-delete-confirm .buttons input[type="submit"] {
		width: 100%;
	}
}

/* 后台用户管理 */
#punadmin #adminconsole > .moon-admin-user-management {
	display: grid;
	grid-column: 2;
	grid-row: 1;
	gap: 16px;
	min-width: 0;
}

#punadmin .moon-admin-user-management .blockform,
#punadmin .moon-admin-ban-page {
	width: auto;
	max-width: none;
	margin: 0;
}

#punadmin .moon-user-management-intro .inbox {
	display: grid;
	gap: 9px;
	padding: 20px;
}

#punadmin .moon-user-management-intro p {
	padding: 0;
	color: #aeb8bc;
	font-size: 12px;
	line-height: 1.75;
}

#punadmin .moon-user-management-intro p strong {
	display: block;
	padding: 11px 13px;
	border: 1px solid rgba(239, 100, 100, .2);
	border-radius: 5px;
	color: #ffc0c0;
	background: rgba(239, 100, 100, .055);
}

#punadmin .moon-user-management-tools > h2.block2 {
	margin-top: 16px;
}

#punadmin .moon-user-management-tools table.aligntop,
#punadmin .moon-admin-ban-page table.aligntop {
	display: block;
	width: 100%;
}

#punadmin .moon-user-management-tools table.aligntop tbody,
#punadmin .moon-admin-ban-page table.aligntop tbody {
	display: grid;
	width: 100%;
}

#punadmin .moon-user-management-tools table.aligntop tr,
#punadmin .moon-admin-ban-page table.aligntop tr {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	border-top: 1px solid rgba(255, 255, 255, .055);
}

#punadmin .moon-user-management-tools table.aligntop tr:first-child,
#punadmin .moon-admin-ban-page table.aligntop tr:first-child {
	border-top: 0;
}

#punadmin .moon-user-management-tools table.aligntop th,
#punadmin .moon-user-management-tools table.aligntop td,
#punadmin .moon-admin-ban-page table.aligntop th,
#punadmin .moon-admin-ban-page table.aligntop td {
	box-sizing: border-box;
	width: auto;
	padding: 15px 17px;
	border: 0;
	background: transparent;
}

#punadmin .moon-user-management-tools table.aligntop th,
#punadmin .moon-admin-ban-page table.aligntop th {
	color: #dfe4e6;
	font-size: 11px;
	font-weight: 850;
}

#punadmin .moon-user-management-tools table.aligntop td,
#punadmin .moon-admin-ban-page table.aligntop td {
	border-left: 1px solid rgba(255, 255, 255, .055);
}

#punadmin .moon-user-management-tools table.aligntop td > span,
#punadmin .moon-admin-ban-page table.aligntop td > span {
	display: block;
	margin-top: 7px;
	color: #7f8b90;
	font-size: 10px;
	line-height: 1.65;
}

#punadmin .moon-user-management-tools input[type="text"],
#punadmin .moon-user-management-tools input[type="password"],
#punadmin .moon-admin-ban-page input[type="text"],
#punadmin .moon-admin-ban-page select {
	box-sizing: border-box;
	max-width: 100%;
	min-height: 38px;
	padding: 0 10px;
}

#punadmin .moon-user-management-tools .submitend,
#punadmin .moon-admin-ban-page .submitend,
#punadmin .moon-admin-ban-page .submittop {
	display: flex;
	justify-content: flex-end;
}

/* 封禁管理与搜索结果 */
#punadmin .moon-admin-ban-page .topspace {
	margin: 4px 17px 16px;
	padding: 12px 14px;
	border: 1px solid rgba(239, 100, 100, .18);
	border-radius: 5px;
	color: #ffc0c0;
	background: rgba(239, 100, 100, .05);
	line-height: 1.7;
}

#punadmin .moon-admin-ban-page #bans > .inform .infldset,
#punadmin .moon-admin-ban-page #find_bans > .inform .infldset,
#punadmin .moon-admin-ban-page #bans2 > .inform .infldset {
	padding: 10px 18px 18px;
}

#punadmin .moon-admin-ban-page #find_bans .infldset > p {
	margin: 0 0 12px;
	padding: 12px 14px;
	border: 1px solid rgba(82, 181, 255, .12);
	border-radius: 5px;
	color: #aeb8bc;
	background: rgba(82, 181, 255, .04);
	line-height: 1.7;
}

#punadmin #adminconsole > .moon-admin-ban-results,
#punadmin #adminconsole > .linkst,
#punadmin #adminconsole > .linksb {
	grid-column: 1 / -1;
	min-width: 0;
}

#punadmin .moon-admin-ban-results > .box > .inbox {
	overflow-x: auto;
}

#punadmin .moon-admin-ban-results table {
	min-width: 940px;
}

#punadmin .moon-admin-ban-results th,
#punadmin .moon-admin-ban-results td {
	box-sizing: border-box;
	padding: 12px 10px;
	vertical-align: middle;
}

#punadmin .moon-ban-row-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}

#punadmin .moon-ban-row-actions form {
	display: inline-flex;
	padding: 0;
}

#punadmin .moon-ban-row-actions a,
#punadmin .moon-ban-row-actions button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 0 9px;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 4px;
	color: #b8c3c8;
	background: rgba(255, 255, 255, .035);
	font: inherit;
	cursor: pointer;
}

#punadmin .moon-ban-row-actions button {
	border-color: rgba(239, 100, 100, .2);
	color: #ffaaaa;
	background: rgba(239, 100, 100, .055);
}

/* 通用提示与被封禁页面 */
.pun #msg.block {
	width: min(100%, 680px);
	margin: 32px auto 42px;
}

.pun #msg > h2 {
	padding: 16px 18px;
	border: 1px solid rgba(82, 181, 255, .14);
	border-bottom: 0;
	border-radius: 7px 7px 0 0;
	background: rgba(15, 18, 20, .9);
	font-size: 14px;
}

.pun #msg > .box {
	border: 1px solid rgba(82, 181, 255, .14);
	border-radius: 0 0 7px 7px;
	background: rgba(9, 11, 12, .64);
}

.pun #msg .inbox {
	padding: 24px;
}

.pun #msg p + p {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, .06);
}

.pun #msg p a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 11px;
	border: 1px solid rgba(82, 181, 255, .18);
	border-radius: 5px;
	background: rgba(82, 181, 255, .06);
}

/* VIP 状态页 */
.pun .moon-vip-profile > .box {
	padding: 18px;
}

.pun .moon-vip-profile-body {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.pun .moon-vip-profile-body > .inform {
	margin: 0;
	padding: 0;
}

.pun .moon-vip-profile-body > .inform:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.pun .moon-vip-profile-body fieldset {
	height: 100%;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 6px;
	background: rgba(9, 11, 12, .56);
}

.pun .moon-vip-profile-body legend {
	margin-left: 14px;
	padding: 0 8px;
	color: #d8e0e3;
	font-weight: 700;
}

.pun .moon-vip-profile-body .infldset {
	padding: 18px;
}

.pun .moon-vip-resource-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 16px;
}

.pun .moon-vip-resource-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid rgba(82, 181, 255, .2);
	border-radius: 5px;
	color: #dcecf7;
	background: rgba(82, 181, 255, .075);
}

/* 内容审核队列 */
#punadmin .moon-review-page > .box {
	padding: 18px;
}

#punadmin .moon-review-heading,
#punadmin .moon-review-item > header,
#punadmin .moon-review-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

#punadmin .moon-review-heading {
	margin-bottom: 16px;
	padding: 15px 16px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 6px;
	background: rgba(8, 10, 12, .52);
}

#punadmin .moon-review-heading strong,
#punadmin .moon-review-empty strong {
	display: block;
	margin-bottom: 4px;
	color: #f1f4f5;
	font-size: 14px;
}

#punadmin .moon-review-heading span,
#punadmin .moon-review-empty span {
	color: #889397;
}

#punadmin .moon-review-heading em {
	flex: 0 0 auto;
	padding: 6px 9px;
	border: 1px solid rgba(157, 214, 0, .2);
	border-radius: 4px;
	color: #b9e142;
	background: rgba(157, 214, 0, .07);
	font-style: normal;
	font-weight: 700;
}

#punadmin .moon-review-list {
	display: grid;
	gap: 12px;
}

#punadmin .moon-review-item {
	padding: 17px;
	border: 1px solid rgba(255, 255, 255, .085);
	border-radius: 6px;
	background: rgba(10, 12, 15, .66);
}

#punadmin .moon-review-item h3 {
	display: inline;
	margin: 0 0 0 8px;
	color: #eef2f3;
	font-size: 14px;
}

#punadmin .moon-review-item time {
	flex: 0 0 auto;
	color: #707b80;
}

#punadmin .moon-review-type {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 3px;
	color: #0e1304;
	background: #9dd600;
	font-size: 11px;
	font-weight: 800;
}

#punadmin .moon-review-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	margin: 12px 0;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
	color: #7f8a8e;
}

#punadmin .moon-review-content {
	max-height: 210px;
	overflow: auto;
	padding: 13px 14px;
	border: 1px solid rgba(255, 255, 255, .065);
	border-radius: 5px;
	color: #bdc6c9;
	background: rgba(0, 0, 0, .22);
	line-height: 1.75;
	word-break: break-word;
}

#punadmin .moon-review-footer {
	align-items: flex-end;
	margin-top: 13px;
}

#punadmin .moon-review-scan {
	display: grid;
	min-width: 0;
	gap: 4px;
}

#punadmin .moon-review-scan strong {
	color: #8d989c;
	font-size: 11px;
}

#punadmin .moon-review-scan a {
	overflow: hidden;
	max-width: 620px;
	color: #7dc8fa;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#punadmin .moon-review-actions {
	display: flex;
	flex: 0 0 auto;
	gap: 8px;
}

#punadmin .moon-review-actions form {
	margin: 0;
}

#punadmin .moon-review-actions button {
	min-height: 34px;
	padding: 0 13px;
	border-radius: 4px;
	font-weight: 700;
	cursor: pointer;
}

#punadmin .moon-review-reject {
	border: 1px solid rgba(235, 92, 92, .28);
	color: #f0a0a0;
	background: rgba(155, 38, 38, .12);
}

#punadmin .moon-review-approve {
	border: 1px solid #9dd600;
	color: #111703;
	background: #9dd600;
}

#punadmin .moon-review-empty {
	padding: 40px 20px;
	border: 1px dashed rgba(255, 255, 255, .1);
	border-radius: 6px;
	text-align: center;
	background: rgba(8, 10, 12, .38);
}

.pun .moon-review-shortcut {
	color: #c4eb55;
}

/* 帖子附件 */
.pun .moon-post-attachment input[type="file"] {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 7px 0 5px;
	padding: 8px;
	border: 1px solid rgba(255, 255, 255, .11);
	border-radius: 5px;
	color: #aab4b8;
	background: rgba(5, 7, 9, .62);
}

.pun .moon-post-attachment input[type="file"]::file-selector-button {
	margin-right: 10px;
	padding: 7px 10px;
	border: 0;
	border-radius: 4px;
	color: #111603;
	background: #9dd600;
	font-weight: 700;
	cursor: pointer;
}

.pun .moon-post-attachments,
#punadmin .moon-review-files {
	display: grid;
	gap: 7px;
	margin-top: 13px;
	padding: 12px;
	border: 1px solid rgba(125, 200, 250, .15);
	border-radius: 5px;
	background: rgba(69, 150, 203, .055);
}

.pun .moon-post-attachments > strong,
#punadmin .moon-review-files > strong {
	color: #91a0a5;
	font-size: 11px;
	text-transform: uppercase;
}

.pun .moon-post-attachments > a,
#punadmin .moon-review-files > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-width: 0;
	gap: 14px;
	padding: 9px 10px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 4px;
	background: rgba(0, 0, 0, .18);
}

.pun .moon-post-attachments > a span,
#punadmin .moon-review-files > a span {
	overflow: hidden;
	color: #d9e7ed;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-post-attachments > a small,
#punadmin .moon-review-files > a small {
	flex: 0 0 auto;
	color: #77858a;
	font-size: 10px;
}

@media (max-width: 760px) {
	#punadmin #adminconsole > .moon-admin-user-management {
		grid-column: 1;
		grid-row: auto;
	}

	#punadmin .moon-user-management-tools table.aligntop tr,
	#punadmin .moon-admin-ban-page table.aligntop tr {
		grid-template-columns: 1fr;
	}

	#punadmin .moon-user-management-tools table.aligntop td,
	#punadmin .moon-admin-ban-page table.aligntop td {
		padding-top: 6px;
		border-left: 0;
	}

	.pun .moon-vip-profile-body {
		grid-template-columns: 1fr;
	}

	#punadmin .moon-review-heading,
	#punadmin .moon-review-item > header,
	#punadmin .moon-review-footer {
		align-items: stretch;
		flex-direction: column;
	}

	#punadmin .moon-review-actions,
	#punadmin .moon-review-actions form,
	#punadmin .moon-review-actions button {
		width: 100%;
	}

	.pun .moon-post-attachments > a,
	#punadmin .moon-review-files > a {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.pun .moon-post-attachments > a small,
	#punadmin .moon-review-files > a small {
		max-width: 100%;
		overflow-wrap: anywhere;
	}
}

/* 账号专区与账号库存 */
.pun .moon-accounts-page {
	display: grid;
	gap: 16px;
	margin: 0 0 18px;
	color: #d8e0e3;
}

.pun .moon-accounts-hero,
#punadmin .moon-account-admin-head {
	display: grid;
	grid-template-columns: 62px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	padding: 22px 24px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 7px;
	background: linear-gradient(105deg, rgba(17, 21, 24, .96), rgba(7, 9, 11, .93));
	box-shadow: 0 16px 38px rgba(0, 0, 0, .24);
}

.pun .moon-accounts-hero-mark,
#punadmin .moon-account-admin-head::before {
	display: grid;
	width: 58px;
	height: 58px;
	place-items: center;
	border: 1px solid rgba(157, 214, 0, .3);
	border-radius: 7px;
	color: #b8e834;
	background: rgba(157, 214, 0, .075);
	font-size: 27px;
	content: "\f1b6";
	font-family: FontAwesome;
}

.pun .moon-accounts-hero > div:nth-child(2) > span,
#punadmin .moon-account-admin-head > div:first-child > span,
.pun .moon-query-copy > span,
.pun .moon-my-accounts > header span,
#punadmin .moon-account-stock > header span {
	display: block;
	margin-bottom: 5px;
	color: #879398;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0;
}

.pun .moon-accounts-hero h2,
#punadmin .moon-account-admin-head h2,
.pun .moon-query-copy h3,
.pun .moon-my-accounts > header h3,
#punadmin .moon-account-stock > header h3 {
	margin: 0;
	color: #f2f6f7;
	font-size: 22px;
	line-height: 1.2;
}

.pun .moon-accounts-hero h2,
#punadmin .moon-account-admin-head h2 {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.pun .moon-accounts-hero p,
#punadmin .moon-account-admin-head p,
.pun .moon-query-copy p {
	margin: 7px 0 0;
	color: #8d989d;
	font-size: 12px;
	line-height: 1.65;
}

.pun .moon-accounts-count {
	display: grid;
	grid-template-columns: auto auto;
	align-items: baseline;
	min-width: 116px;
	padding-left: 22px;
	border-left: 1px solid rgba(255, 255, 255, .08);
}

.pun .moon-accounts-count span {
	grid-column: 1 / -1;
	color: #7e898d;
	font-size: 10px;
}

.pun .moon-accounts-count strong {
	color: #b8e834;
	font-size: 30px;
}

.pun .moon-accounts-count em {
	margin-left: 6px;
	color: #9aa4a8;
	font-style: normal;
}

.pun .moon-account-tabs {
	display: flex;
	gap: 3px;
	padding: 4px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 6px;
	background: rgba(8, 10, 12, .7);
}

.pun .moon-account-tabs a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	gap: 8px;
	padding: 0 16px;
	border-radius: 4px;
	color: #8e999e;
	font-weight: 700;
	transition: color .16s ease, background .16s ease;
}

.pun .moon-account-tabs a:hover {
	color: #dce4e7;
	background: rgba(255, 255, 255, .04);
}

.pun .moon-account-tabs a.is-active {
	color: #151b04;
	background: #a6dc13;
}

.pun .moon-account-tabs a b {
	display: inline-grid;
	min-width: 18px;
	height: 18px;
	place-items: center;
	border-radius: 9px;
	color: #c7d0d3;
	background: rgba(255, 255, 255, .09);
	font-size: 10px;
}

.pun .moon-account-tabs a.is-active b {
	color: #efffc3;
	background: rgba(13, 18, 3, .33);
}

.pun .moon-account-query,
.pun .moon-my-accounts,
#punadmin .moon-account-stock {
	padding: 24px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 7px;
	background: rgba(12, 15, 18, .84);
}

.pun .moon-account-query {
	display: grid;
	grid-template-columns: minmax(220px, .72fr) minmax(380px, 1.28fr);
	gap: 24px 34px;
}

.pun .moon-query-form {
	align-self: center;
}

.pun .moon-query-form > label,
#punadmin .moon-account-admin-panel label {
	display: grid;
	gap: 7px;
	color: #9aa5a9;
	font-size: 11px;
	font-weight: 700;
}

.pun .moon-query-form > div {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	margin-top: 7px;
	border: 1px solid rgba(125, 200, 250, .25);
	border-radius: 6px;
	background: rgba(2, 5, 8, .72);
	box-shadow: 0 0 0 3px rgba(62, 151, 210, .035);
}

.pun .moon-query-form i {
	color: #64879c;
	text-align: center;
}

.pun .moon-query-form input {
	box-sizing: border-box;
	width: 100%;
	height: 46px;
	padding: 0 10px 0 0;
	border: 0;
	color: #e5ecef;
	background: transparent;
	font-size: 13px;
}

.pun .moon-query-form input:focus {
	outline: 0;
}

.pun .moon-query-form button,
.pun .moon-primary-button,
.pun .moon-secondary-button {
	min-height: 34px;
	margin-right: 6px;
	padding: 0 16px;
	border: 1px solid #a6dc13;
	border-radius: 4px;
	color: #111703;
	background: #a6dc13;
	font-weight: 800;
	cursor: pointer;
}

.pun .moon-query-message,
.pun .moon-account-result,
.pun .moon-query-idle {
	grid-column: 1 / -1;
}

.pun .moon-query-message {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 12px 14px;
	border: 1px solid rgba(232, 85, 85, .26);
	border-radius: 5px;
	color: #edaaaa;
	background: rgba(149, 37, 37, .09);
}

.pun .moon-query-idle {
	display: grid;
	justify-items: center;
	padding: 42px 20px 34px;
	border-top: 1px solid rgba(255, 255, 255, .06);
	text-align: center;
}

.pun .moon-query-idle div {
	display: grid;
	width: 54px;
	height: 54px;
	margin-bottom: 13px;
	place-items: center;
	border: 1px solid rgba(125, 200, 250, .19);
	border-radius: 50%;
	color: #77bce8;
	background: rgba(69, 150, 203, .06);
	font-size: 20px;
}

.pun .moon-query-idle strong {
	color: #dce4e7;
	font-size: 14px;
}

.pun .moon-query-idle span {
	margin-top: 6px;
	color: #738086;
}

.pun .moon-account-result {
	overflow: hidden;
	border: 1px solid rgba(157, 214, 0, .18);
	border-radius: 6px;
	background: rgba(5, 8, 10, .66);
}

.pun .moon-account-result > header {
	display: grid;
	grid-template-columns: 50px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	padding: 17px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
}

.pun .moon-account-avatar {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border-radius: 5px;
	color: #a7d925;
	background: #1a2022;
	font-size: 23px;
}

.pun .moon-account-result header span,
.pun .moon-account-card header small {
	color: #82a0af;
	font-size: 10px;
}

.pun .moon-account-result header h3 {
	margin: 3px 0;
	color: #edf2f4;
	font-size: 16px;
}

.pun .moon-account-result header p {
	margin: 0;
	color: #879398;
}

.pun .moon-account-result header em {
	padding: 5px 8px;
	border-radius: 3px;
	color: #c6ed61;
	background: rgba(157, 214, 0, .1);
	font-style: normal;
	font-weight: 700;
}

.pun .moon-account-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pun .moon-account-stats > div {
	display: grid;
	gap: 7px;
	padding: 18px;
	border-left: 1px solid rgba(255, 255, 255, .055);
}

.pun .moon-account-stats > div:first-child {
	border-left: 0;
}

.pun .moon-account-stats span {
	color: #758187;
	font-size: 10px;
}

.pun .moon-account-stats strong {
	color: #dfe7ea;
	font-size: 15px;
}

/* 公开战绩档案 */
.pun .moon-records-result {
	grid-column: 1 / -1;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 7px;
	background: rgba(7, 10, 14, .7);
	box-shadow: 0 18px 46px rgba(0, 0, 0, .22);
}

.pun .moon-records-profile {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	padding: 20px 22px 16px;
	border-bottom: 1px solid rgba(255, 255, 255, .055);
	background: linear-gradient(100deg, rgba(49, 89, 111, .12), rgba(95, 67, 128, .08) 58%, rgba(192, 149, 54, .035));
}

.pun .moon-records-avatar {
	display: grid;
	overflow: hidden;
	width: 56px;
	height: 56px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 7px;
	color: #8dd7f5;
	background: #10161b;
	font-size: 25px;
}

.pun .moon-records-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pun .moon-records-identity {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.pun .moon-records-identity > span {
	color: #74828a;
	font-size: 9px;
	font-weight: 800;
}

.pun .moon-records-identity h3 {
	overflow: hidden;
	margin: 0;
	color: #f0f4f6;
	font-size: 19px;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-identity a {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	max-width: 100%;
	gap: 7px;
	overflow: hidden;
	color: #77868e;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-identity a:hover { color: #9bdaf2; }

.pun .moon-records-status {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	gap: 7px;
	padding: 0 10px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 4px;
	color: #87939a;
	background: rgba(0, 0, 0, .2);
	font-size: 11px;
}

.pun .moon-records-status i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #69757b;
}

.pun .moon-records-status.is-online {
	color: #9fd7ee;
	border-color: rgba(90, 183, 222, .18);
}

.pun .moon-records-status.is-online i {
	background: #67c7ec;
	box-shadow: 0 0 0 3px rgba(103, 199, 236, .1);
}

.pun .moon-records-meta {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0 22px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.pun .moon-records-meta > div {
	display: grid;
	min-width: 0;
	gap: 5px;
	padding: 15px 14px;
	border-left: 1px solid rgba(255, 255, 255, .045);
}

.pun .moon-records-meta > div:first-child {
	padding-left: 0;
	border-left: 0;
}

.pun .moon-records-meta span,
.pun .moon-records-career span,
.pun .moon-records-last > div span {
	color: #6f7d85;
	font-size: 10px;
}

.pun .moon-records-meta strong {
	overflow: hidden;
	color: #c7d0d4;
	font-size: 12px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-meta small {
	color: #607078;
	font-size: 9px;
}

.pun .moon-records-career {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	padding: 16px 22px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.pun .moon-records-career > div {
	display: grid;
	min-width: 0;
	gap: 7px;
	padding: 3px 12px;
	border-left: 1px solid rgba(255, 255, 255, .045);
}

.pun .moon-records-career > div:first-child {
	padding-left: 0;
	border-left: 0;
}

.pun .moon-records-career strong,
.pun .moon-records-last > div strong {
	overflow: hidden;
	color: #e1e7ea;
	font-size: 17px;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-result strong.is-cyan { color: #74d7f3; }
.pun .moon-records-result strong.is-purple { color: #c397ef; }
.pun .moon-records-result strong.is-gold { color: #e5c45b; }

.pun .moon-records-last {
	padding: 16px 22px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.pun .moon-records-last > header,
.pun .moon-records-breakdown section > header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
	color: #b3bdc2;
	font-size: 11px;
	font-weight: 800;
}

.pun .moon-records-last > header span,
.pun .moon-records-breakdown section > header span {
	position: relative;
	padding-left: 10px;
}

.pun .moon-records-last > header span::before,
.pun .moon-records-breakdown section > header span::before {
	position: absolute;
	top: 2px;
	bottom: 2px;
	left: 0;
	width: 2px;
	border-radius: 1px;
	background: #6ec8eb;
	content: "";
}

.pun .moon-records-last > div {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.pun .moon-records-last > div > div {
	display: grid;
	min-width: 0;
	gap: 6px;
	padding: 3px 13px;
	border-left: 1px solid rgba(255, 255, 255, .045);
}

.pun .moon-records-last > div > div:first-child {
	padding-left: 0;
	border-left: 0;
}

.pun .moon-records-last > div strong { font-size: 14px; }

.pun .moon-records-breakdown {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pun .moon-records-breakdown > section {
	min-width: 0;
	padding: 18px 22px 21px;
}

.pun .moon-records-breakdown > section + section { border-left: 1px solid rgba(255, 255, 255, .06); }

.pun .moon-records-breakdown section > header em {
	color: #637178;
	font-size: 9px;
	font-style: normal;
	font-weight: 600;
}

.pun .moon-records-list {
	display: grid;
	max-height: 410px;
	gap: 12px;
	overflow: auto;
	padding-right: 7px;
	scrollbar-color: #3f5d6b transparent;
	scrollbar-width: thin;
}

.pun .moon-records-list > p {
	margin: 12px 0;
	color: #6d7a81;
}

.pun .moon-records-row {
	display: grid;
	grid-template-columns: minmax(105px, .75fr) minmax(90px, 1.25fr) 48px;
	align-items: center;
	gap: 10px;
}

.pun .moon-records-row > div {
	display: grid;
	min-width: 0;
	gap: 2px;
}

.pun .moon-records-row strong {
	overflow: hidden;
	color: #cdd5d9;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-row small {
	overflow: hidden;
	color: #5f6d74;
	font-size: 9px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-records-row > span {
	display: block;
	overflow: hidden;
	height: 4px;
	border-radius: 2px;
	background: rgba(255, 255, 255, .07);
}

.pun .moon-records-row > span i {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #71d5ef, #ad83e6);
}

.pun .moon-records-list.is-weapons .moon-records-row > span i { background: linear-gradient(90deg, #a879e0, #e391ca); }

.pun .moon-records-row > em {
	color: #aab5ba;
	font-size: 10px;
	font-style: normal;
	text-align: right;
}

.pun .moon-records-private {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 22px;
	padding: 20px;
	border: 1px solid rgba(225, 184, 77, .16);
	border-radius: 5px;
	color: #d5bd79;
	background: rgba(151, 112, 27, .055);
}

.pun .moon-records-private > i { font-size: 21px; }

.pun .moon-records-private > div {
	display: grid;
	gap: 4px;
}

.pun .moon-records-private strong { color: #dfcf9e; }
.pun .moon-records-private span { color: #8f866b; }

.pun .moon-my-accounts > header,
#punadmin .moon-account-stock > header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
}

.pun .moon-my-accounts > header em,
#punadmin .moon-account-stock > header em {
	color: #879499;
	font-style: normal;
}

.pun .moon-account-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.pun .moon-account-card {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .085);
	border-radius: 6px;
	background: rgba(6, 9, 11, .7);
	transition: transform .16s ease, border-color .16s ease;
}

.pun .moon-account-card:hover {
	transform: translateY(-2px);
	border-color: rgba(125, 200, 250, .21);
}

.pun .moon-account-card.tone-premium {
	border-color: rgba(236, 188, 82, .2);
}

.pun .moon-account-card > header {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	padding: 15px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.pun .moon-account-card > header > div {
	display: grid;
	overflow: hidden;
	width: 40px;
	height: 40px;
	place-items: center;
	border-radius: 5px;
	color: #8ac8ef;
	background: rgba(69, 150, 203, .1);
	font-size: 20px;
}

.pun .moon-account-card > header > div img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pun .moon-account-card.tone-premium > header > div {
	color: #e6c46d;
	background: rgba(210, 157, 42, .09);
}

.pun .moon-account-card > header > span {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.pun .moon-account-card > header strong {
	overflow: hidden;
	color: #e6edef;
	font-size: 14px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-account-card > header em {
	color: #67757b;
	font-style: normal;
}

.pun .moon-account-card dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	padding: 5px 15px 14px;
}

.pun .moon-account-card dl > div {
	display: grid;
	min-width: 0;
	gap: 3px;
	padding: 11px 8px 5px 0;
}

.pun .moon-account-card dt {
	color: #68757a;
	font-size: 10px;
}

.pun .moon-account-card dd {
	overflow: hidden;
	margin: 0;
	color: #b9c3c7;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-account-card > footer {
	display: flex;
	justify-content: flex-end;
	gap: 7px;
	padding: 11px 15px;
	border-top: 1px solid rgba(255, 255, 255, .055);
	background: rgba(0, 0, 0, .13);
}

.pun .moon-account-card > footer form {
	margin: 0;
}

.pun .moon-account-card > footer a,
.pun .moon-account-card > footer button {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	gap: 7px;
	padding: 0 11px;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 4px;
	color: #a9b5b9;
	background: rgba(255, 255, 255, .035);
	font-weight: 700;
	cursor: pointer;
}

.pun .moon-account-card > footer button {
	border-color: rgba(157, 214, 0, .24);
	color: #c5e967;
}

.pun .moon-account-card > footer .moon-account-delete {
	border-color: rgba(232, 85, 85, .25);
	color: #dc9797;
	background: rgba(149, 37, 37, .07);
}

.pun .moon-account-card > footer .moon-account-delete:hover {
	border-color: rgba(232, 85, 85, .48);
	background: rgba(149, 37, 37, .14);
}

.pun .moon-account-card > footer .moon-client-only {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	gap: 7px;
	padding: 0 3px 0 9px;
	color: #718087;
	font-size: 10px;
}

.pun .moon-account-card > footer .moon-client-only i { color: #6997ad; }

.pun .moon-account-secret {
	display: grid;
	gap: 10px;
	margin-bottom: 15px;
	padding: 15px;
	border: 1px solid rgba(157, 214, 0, .22);
	border-radius: 6px;
	background: rgba(157, 214, 0, .045);
}

.pun .moon-account-secret > div {
	display: flex;
	align-items: center;
	gap: 11px;
}

.pun .moon-account-secret > div > i {
	color: #b5df40;
	font-size: 20px;
}

.pun .moon-account-secret > div span {
	display: grid;
	gap: 2px;
}

.pun .moon-account-secret small {
	color: #7c898e;
}

.pun .moon-account-secret label {
	display: grid;
	gap: 5px;
	color: #7e8a8f;
	font-size: 10px;
}

.pun .moon-account-secret label > span,
#punadmin .moon-token-once {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 9px;
	padding: 8px 9px 8px 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 4px;
	background: rgba(0, 0, 0, .24);
}

.pun .moon-account-secret code,
#punadmin .moon-token-once code {
	overflow: hidden;
	color: #dbe5e8;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pun .moon-account-secret button,
#punadmin .moon-token-once button {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 4px;
	color: #aeb9bd;
	background: rgba(255, 255, 255, .04);
	cursor: pointer;
}

.pun .moon-account-empty {
	display: grid;
	grid-column: 1 / -1;
	justify-items: center;
	gap: 7px;
	padding: 42px 18px;
	border: 1px dashed rgba(255, 255, 255, .1);
	border-radius: 6px;
	color: #748086;
	text-align: center;
}

.pun .moon-account-empty i {
	margin-bottom: 5px;
	color: #66767d;
	font-size: 25px;
}

.pun .moon-account-empty strong {
	color: #cdd5d8;
	font-size: 14px;
}

.pun .moon-account-empty a {
	margin-top: 7px;
	color: #b5df40;
	font-weight: 700;
}

#punadmin .moon-admin-accounts {
	display: grid;
	grid-column: 2;
	gap: 14px;
	min-width: 0;
}

#punadmin .moon-admin-accounts > h2 {
	display: none;
}

#punadmin .moon-account-admin-head {
	grid-template-columns: minmax(0, 1fr) auto;
}

#punadmin .moon-account-admin-head::before {
	display: none;
}

#punadmin .moon-account-summary {
	display: grid;
	grid-template-columns: repeat(3, auto);
	gap: 5px;
}

#punadmin .moon-account-summary span {
	display: grid;
	min-width: 65px;
	gap: 2px;
	padding: 9px 11px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 5px;
	color: #7e8a8f;
	background: rgba(0, 0, 0, .16);
	font-size: 10px;
}

#punadmin .moon-account-summary b {
	color: #dce5e8;
	font-size: 19px;
}

#punadmin .moon-token-once {
	grid-template-columns: auto minmax(0, 1fr) auto;
	border-color: rgba(157, 214, 0, .22);
}

#punadmin .moon-token-once strong {
	color: #b8df50;
}

#punadmin .moon-token-once button {
	display: inline-flex;
	width: auto;
	padding: 0 9px;
	gap: 6px;
}

#punadmin .moon-account-admin-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
	gap: 14px;
}

#punadmin .moon-account-admin-panel {
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 7px;
	background: rgba(11, 14, 17, .84);
}

#punadmin .moon-account-admin-panel > header {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 16px;
	padding-bottom: 13px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}

#punadmin .moon-account-admin-panel > header > i {
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border-radius: 4px;
	color: #a9d733;
	background: rgba(157, 214, 0, .08);
}

#punadmin .moon-account-admin-panel > header div {
	display: grid;
	gap: 3px;
}

#punadmin .moon-account-admin-panel > header strong {
	color: #e4ebed;
	font-size: 13px;
}

#punadmin .moon-account-admin-panel > header span {
	color: #748086;
	font-size: 10px;
}

#punadmin .moon-account-admin-panel form {
	display: grid;
	gap: 11px;
	margin: 0;
}

#punadmin .moon-account-form-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

#punadmin .moon-account-admin-panel input,
#punadmin .moon-account-admin-panel select,
#punadmin .moon-account-admin-panel textarea,
#punadmin .moon-stock-actions select {
	box-sizing: border-box;
	width: 100%;
	min-height: 36px;
	padding: 7px 9px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 4px;
	color: #d3dcdf;
	background: rgba(3, 6, 8, .7);
}

#punadmin .moon-account-admin-panel textarea {
	min-height: 74px;
	resize: vertical;
}

#punadmin .moon-primary-button,
#punadmin .moon-secondary-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	gap: 7px;
	margin: 2px 0 0;
}

#punadmin .moon-secondary-button {
	border-color: rgba(125, 200, 250, .28);
	color: #acd7f2;
	background: rgba(69, 150, 203, .1);
}

#punadmin .moon-api-token-list {
	display: grid;
	gap: 6px;
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, .055);
}

#punadmin .moon-api-token-list > div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	align-items: center;
	gap: 7px;
	padding: 8px;
	border-radius: 4px;
	background: rgba(255, 255, 255, .025);
}

#punadmin .moon-api-token-list > div > span {
	display: grid;
	min-width: 0;
	gap: 2px;
}

#punadmin .moon-api-token-list code {
	color: #7c898e;
	font-size: 10px;
}

#punadmin .moon-api-token-list em {
	color: #84ad1e;
	font-style: normal;
	font-size: 10px;
}

#punadmin .moon-api-token-list em.is-revoked {
	color: #9b7373;
}

#punadmin .moon-api-token-list form {
	display: block;
}

#punadmin .moon-api-token-list button {
	display: grid;
	width: 28px;
	height: 28px;
	place-items: center;
	border: 1px solid rgba(232, 85, 85, .16);
	border-radius: 4px;
	color: #c88282;
	background: rgba(149, 37, 37, .06);
	cursor: pointer;
}

#punadmin .moon-account-stock {
	padding: 18px;
}

#punadmin .moon-stock-list {
	display: grid;
	gap: 7px;
}

#punadmin .moon-stock-row {
	display: grid;
	grid-template-columns: 56px minmax(180px, 1.2fr) minmax(130px, .72fr) minmax(115px, .55fr) minmax(160px, auto);
	align-items: center;
	gap: 12px;
	padding: 11px 12px;
	border: 1px solid rgba(255, 255, 255, .065);
	border-radius: 5px;
	background: rgba(4, 7, 9, .5);
}

#punadmin .moon-stock-row.is-assigned {
	border-left: 2px solid #6eb7e5;
}

#punadmin .moon-stock-row.is-available {
	border-left: 2px solid #9dd600;
}

#punadmin .moon-stock-row.is-disabled {
	opacity: .62;
}

#punadmin .moon-stock-id,
#punadmin .moon-stock-main,
#punadmin .moon-stock-type,
#punadmin .moon-stock-owner {
	display: grid;
	min-width: 0;
	gap: 3px;
}

#punadmin .moon-stock-id span,
#punadmin .moon-stock-main small,
#punadmin .moon-stock-type em,
#punadmin .moon-stock-owner span {
	color: #6e7c81;
	font-style: normal;
	font-size: 10px;
}

#punadmin .moon-stock-id i {
	color: #739fba;
	font-size: 18px;
}

#punadmin .moon-stock-main strong,
#punadmin .moon-stock-owner strong {
	overflow: hidden;
	color: #d6dfe2;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#punadmin .moon-stock-main > span,
#punadmin .moon-stock-type span {
	overflow: hidden;
	color: #929fa4;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#punadmin .moon-stock-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 5px;
}

#punadmin .moon-stock-actions form {
	display: flex;
	gap: 5px;
	margin: 0;
}

#punadmin .moon-stock-actions select {
	width: 96px;
	min-height: 31px;
	padding: 4px 6px;
}

#punadmin .moon-stock-actions button {
	min-height: 31px;
	padding: 0 9px;
	border: 1px solid rgba(157, 214, 0, .2);
	border-radius: 4px;
	color: #bbdd61;
	background: rgba(157, 214, 0, .055);
	cursor: pointer;
}

#punadmin .moon-stock-actions button.is-danger {
	border-color: rgba(232, 85, 85, .2);
	color: #d98e8e;
	background: rgba(149, 37, 37, .07);
}

@media (max-width: 980px) {
	.pun .moon-account-query,
	#punadmin .moon-account-admin-grid {
		grid-template-columns: 1fr;
	}

	#punadmin .moon-stock-row {
		grid-template-columns: 46px minmax(0, 1fr) auto;
	}

	#punadmin .moon-stock-type,
	#punadmin .moon-stock-owner {
		grid-column: 2;
	}

	#punadmin .moon-stock-actions {
		grid-column: 3;
		grid-row: 1 / span 3;
	}
}

@media (max-width: 760px) {
	.pun .moon-accounts-hero {
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 12px;
		padding: 17px;
	}

	.pun .moon-accounts-hero-mark {
		width: 44px;
		height: 44px;
		font-size: 21px;
	}

	.pun .moon-accounts-count {
		grid-column: 1 / -1;
		grid-template-columns: auto auto 1fr;
		padding: 11px 0 0;
		border-top: 1px solid rgba(255, 255, 255, .07);
		border-left: 0;
	}

	.pun .moon-accounts-count span {
		grid-column: auto;
		margin-right: 10px;
	}

	.pun .moon-accounts-count strong {
		font-size: 22px;
	}

	.pun .moon-account-tabs a {
		flex: 1;
		justify-content: center;
		padding: 0 8px;
	}

	.pun .moon-account-query,
	.pun .moon-my-accounts {
		padding: 17px;
	}

	.pun .moon-query-form > div {
		grid-template-columns: 34px minmax(0, 1fr);
	}

	.pun .moon-query-form button {
		grid-column: 1 / -1;
		width: calc(100% - 10px);
		margin: 0 5px 5px;
	}

	.pun .moon-account-card-grid,
	.pun .moon-account-stats,
	.pun .moon-account-card dl {
		grid-template-columns: 1fr;
	}

	.pun .moon-account-stats > div {
		border-top: 1px solid rgba(255, 255, 255, .055);
		border-left: 0;
	}

	.pun .moon-account-result > header {
		grid-template-columns: 46px minmax(0, 1fr);
	}

	.pun .moon-account-result header em {
		grid-column: 2;
		justify-self: start;
	}

	.pun .moon-account-card > footer {
		align-items: stretch;
		flex-direction: column;
	}

	.pun .moon-account-card > footer a,
	.pun .moon-account-card > footer button,
	.pun .moon-account-card > footer form {
		box-sizing: border-box;
		width: 100%;
		justify-content: center;
	}

	#punadmin .moon-admin-accounts {
		grid-column: 1;
	}

	#punadmin .moon-account-admin-head {
		grid-template-columns: 1fr;
		padding: 17px;
	}

	#punadmin .moon-account-summary,
	#punadmin .moon-account-form-row {
		grid-template-columns: 1fr;
	}

	#punadmin .moon-stock-row {
		grid-template-columns: 38px minmax(0, 1fr);
		align-items: start;
	}

	#punadmin .moon-stock-type,
	#punadmin .moon-stock-owner,
	#punadmin .moon-stock-actions {
		grid-column: 2;
		grid-row: auto;
	}

	#punadmin .moon-stock-actions {
		align-items: stretch;
		justify-content: flex-start;
		flex-direction: column;
	}

	#punadmin .moon-stock-actions form,
	#punadmin .moon-stock-actions select,
	#punadmin .moon-stock-actions button {
		box-sizing: border-box;
		width: 100%;
	}
}

/* 轮盘结果弹窗精简版：中性面板配单一奖品强调色，保留页面上下文。 */
.moon-spin-balance small {
	display: block;
	margin-top: 4px;
	color: #78858a;
	font-size: 10px;
	font-weight: 500;
}

.moon-spin-balance small b {
	color: #aab6ba;
	font-size: inherit;
}

.moon-win-modal {
	--reward-accent: #a6dc13;
	display: grid;
	position: fixed;
	z-index: 9999;
	inset: 0;
	padding: 20px;
	place-items: center;
	opacity: 0;
	pointer-events: none;
	transition: opacity .16s ease;
}

.moon-win-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

.moon-win-modal[hidden] {
	display: none;
}

.moon-win-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 2, 3, .28);
	backdrop-filter: blur(2px);
}

.moon-win-dialog {
	position: relative;
	width: min(460px, calc(100vw - 30px));
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .11);
	border-radius: 7px;
	color: #dbe3e6;
	background: #101416;
	box-shadow: 0 22px 65px rgba(0, 0, 0, .45);
	transform: translateY(8px) scale(.985);
	transition: transform .18s ease;
}

.moon-win-dialog::before {
	display: block;
	height: 2px;
	background: var(--reward-accent);
	content: "";
}

.moon-win-modal.is-open .moon-win-dialog {
	transform: translateY(0) scale(1);
}

.moon-win-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 42px;
	padding: 0 48px 0 16px;
	border-bottom: 1px solid rgba(255, 255, 255, .065);
	background: #121719;
}

.moon-win-head > span:last-child {
	color: #667277;
	font-size: 9px;
	font-weight: 800;
}

.moon-win-kicker {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #aeb9bd;
	font-size: 10px;
	font-weight: 800;
}

.moon-win-kicker i {
	color: var(--reward-accent);
}

.moon-win-close {
	display: grid;
	position: absolute;
	z-index: 2;
	top: 7px;
	right: 8px;
	width: 28px;
	height: 28px;
	padding: 0;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 4px;
	color: #78858a;
	background: rgba(255, 255, 255, .025);
	cursor: pointer;
}

.moon-win-close:hover {
	color: #dce4e7;
	background: rgba(255, 255, 255, .055);
}

.moon-win-body {
	display: grid;
	grid-template-columns: 80px minmax(0, 1fr);
	align-items: center;
	gap: 22px;
	padding: 24px;
}

.moon-win-visual {
	display: grid;
	width: 78px;
	height: 78px;
	place-items: center;
	border: 1px solid color-mix(in srgb, var(--reward-accent) 28%, transparent);
	border-radius: 6px;
	background: color-mix(in srgb, var(--reward-accent) 7%, #0c1012);
}

.moon-spin-result-icon {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	color: var(--reward-accent);
	font-size: 30px;
}

.moon-spin-result-icon img {
	width: 100%;
	height: 100%;
	border-radius: 5px;
	object-fit: cover;
}

.moon-win-content {
	display: grid;
	min-width: 0;
	gap: 8px;
	text-align: left;
}

.moon-win-label,
.moon-win-hint {
	margin: 0;
}

.moon-win-label {
	color: var(--reward-accent);
	font-size: 10px;
	font-weight: 800;
}

.moon-win-content > strong {
	color: #f0f4f5;
	font-size: 19px;
	line-height: 1.25;
}

.moon-win-content > code {
	overflow: hidden;
	margin-top: 3px;
	padding: 8px 10px;
	border: 1px solid color-mix(in srgb, var(--reward-accent) 23%, transparent);
	border-radius: 4px;
	color: #dce9b8;
	background: rgba(0, 0, 0, .21);
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.moon-win-hint {
	color: #78858a;
	font-size: 10px;
}

.moon-win-actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	padding: 14px 20px;
	border-top: 1px solid rgba(255, 255, 255, .06);
	background: #0d1113;
}

.moon-win-actions button {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	gap: 7px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 4px;
	color: #acb7bb;
	background: rgba(255, 255, 255, .035);
	font-weight: 700;
	cursor: pointer;
}

.moon-win-actions #moonResultDismiss {
	border-color: color-mix(in srgb, var(--reward-accent) 35%, transparent);
	color: var(--reward-accent);
	background: color-mix(in srgb, var(--reward-accent) 6%, transparent);
}

.moon-win-modal.tone-vip { --reward-accent: #b2e52b; }
.moon-win-modal.tone-invite { --reward-accent: #77c8f6; }
.moon-win-modal.tone-cs2 { --reward-accent: #63b9ed; }
.moon-win-modal.tone-cs2-multi { --reward-accent: #54c9bc; }
.moon-win-modal.tone-premium { --reward-accent: #e3bd61; }
.moon-win-modal.tone-thanks { --reward-accent: #89959a; }

.pun .moon-prize-card small {
	display: block;
	margin-top: 5px;
	color: var(--moon-text-muted, #8e9ba1);
	font-size: 12px;
}

@supports not (color: color-mix(in srgb, white 50%, black)) {
	.moon-win-visual,
	.moon-win-content > code,
	.moon-win-actions #moonResultDismiss {
		border-color: rgba(166, 220, 19, .24);
	}
}

@media (max-width: 520px) {
	.moon-win-modal {
		padding: 12px;
	}

	.moon-win-dialog {
		width: 100%;
	}

	.moon-win-body {
		grid-template-columns: 60px minmax(0, 1fr);
		gap: 15px;
		padding: 19px;
	}

	.moon-win-visual {
		width: 58px;
		height: 58px;
	}

	.moon-win-content > strong {
		font-size: 16px;
	}

	.moon-win-actions,
	.moon-win-actions button {
		width: 100%;
	}

	.moon-win-actions button {
		justify-content: center;
	}
}

@media (max-width: 980px) {
	.pun .moon-records-career {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		row-gap: 16px;
	}

	.pun .moon-records-career > div:nth-child(5) {
		padding-left: 0;
		border-left: 0;
	}
}

@media (max-width: 760px) {
	.pun .moon-records-profile {
		grid-template-columns: 50px minmax(0, 1fr);
		padding: 16px;
	}

	.pun .moon-records-avatar {
		width: 48px;
		height: 48px;
	}

	.pun .moon-records-status {
		grid-column: 2;
		justify-self: start;
	}

	.pun .moon-records-meta {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin: 0 16px;
	}

	.pun .moon-records-meta > div:nth-child(3) {
		padding-left: 0;
		border-top: 1px solid rgba(255, 255, 255, .045);
		border-left: 0;
	}

	.pun .moon-records-meta > div:nth-child(4) {
		border-top: 1px solid rgba(255, 255, 255, .045);
	}

	.pun .moon-records-career {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 16px;
	}

	.pun .moon-records-career > div:nth-child(odd) {
		padding-left: 0;
		border-left: 0;
	}

	.pun .moon-records-last { padding: 16px; }

	.pun .moon-records-last > div {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 15px;
	}

	.pun .moon-records-last > div > div:nth-child(odd) {
		padding-left: 0;
		border-left: 0;
	}

	.pun .moon-records-breakdown { grid-template-columns: 1fr; }

	.pun .moon-records-breakdown > section { padding: 18px 16px; }

	.pun .moon-records-breakdown > section + section {
		border-top: 1px solid rgba(255, 255, 255, .06);
		border-left: 0;
	}

	.pun .moon-records-row {
		grid-template-columns: minmax(90px, .85fr) minmax(70px, 1.15fr) 42px;
	}
}

/* 搜索页沿用论坛数据表结构，但以 MoonLith 的信息密度和层级展示。 */
#punsearch .linkst {
	margin: 0 0 14px;
	padding: 0;
}

#punsearch .linkst .inbox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 12px 15px;
	border: 1px solid rgba(165, 181, 188, .12);
	border-radius: 6px;
	background: rgba(10, 16, 19, .52);
}

#punsearch .linkst .crumbs {
	display: flex;
	min-width: 0;
	gap: 7px;
	padding: 0;
	color: #6f7e84;
	font-size: 11px;
	line-height: 1.5;
}

#punsearch .linkst .crumbs li {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#punsearch .linkst .crumbs li:last-child {
	color: #bfc9cc;
}

#punsearch .linkst .crumbs a {
	color: #74b9dc;
}

#punsearch .linkst .crumbs span {
	color: #536168;
}

#punsearch .linkst .pagepost,
#punsearch .linkst .pagelink {
	float: none;
	padding: 0;
	white-space: nowrap;
}

#punsearch .pagelink,
#punsearch .pages-label {
	color: #859398;
	font-size: 11px;
}

#punsearch .pagelink a,
#punsearch .pagelink strong {
	display: inline-grid;
	min-width: 24px;
	height: 24px;
	margin-left: 3px;
	place-items: center;
	border: 1px solid rgba(160, 179, 185, .16);
	border-radius: 4px;
	font-weight: 700;
	vertical-align: middle;
}

#punsearch .pagelink a {
	color: #91b9cb;
	background: rgba(255, 255, 255, .025);
}

#punsearch .pagelink strong {
	border-color: rgba(166, 220, 19, .42);
	color: #b9e456;
	background: rgba(166, 220, 19, .08);
}

#punsearch #vf.blocktable {
	margin: 0 0 18px;
	border: 1px solid rgba(166, 184, 191, .13);
	border-radius: 6px;
	overflow: hidden;
	background: rgba(12, 18, 21, .62);
	box-shadow: none;
}

#punsearch #vf.blocktable > h2 {
	margin: 0;
	padding: 13px 16px;
	border: 0;
	border-bottom: 1px solid rgba(166, 184, 191, .11);
	border-radius: 0;
	color: #dce5e8;
	background: rgba(255, 255, 255, .025);
	font-size: 13px;
	font-weight: 700;
}

#punsearch #vf.blocktable > .box,
#punsearch #vf.blocktable > .box > .inbox {
	border: 0;
	background: transparent;
}

#punsearch #vf table {
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
}

#punsearch #vf thead th {
	padding: 10px 14px;
	border: 0;
	border-bottom: 1px solid rgba(166, 184, 191, .09);
	color: #718086;
	background: rgba(255, 255, 255, .012);
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

#punsearch #vf tbody td {
	padding: 14px;
	border: 0;
	border-bottom: 1px solid rgba(166, 184, 191, .075);
	background: transparent;
	vertical-align: middle;
}

#punsearch #vf tbody tr:last-child td {
	border-bottom: 0;
}

#punsearch #vf tbody tr:hover td {
	background: rgba(112, 183, 220, .035);
}

#punsearch #vf .tcl {
	width: auto;
}

#punsearch #vf .tclcon {
	padding: 0 0 0 20px;
	overflow: visible;
}

#punsearch #vf .icon {
	position: absolute;
	left: 1px;
	top: 4px;
	margin: 0;
	border-color: #45545b;
}

#punsearch #vf .inew .icon {
	border-color: #6f9fce #5c89b7 #4e79a6 #6395c5;
}

#punsearch #vf .tcl h3 {
	margin: 0;
	font-size: 12px;
	line-height: 1.45;
}

#punsearch #vf .tcl h3 a {
	color: #d4e0e4;
}

#punsearch #vf .tcl h3 a:hover {
	color: #9fd6f1;
}

#punsearch #vf .tcl p {
	padding: 5px 0 0;
	color: #78868b;
	font-size: 10px;
}

#punsearch #vf .byuser,
#punsearch #vf .pagestext,
#punsearch #vf .newtext {
	color: #75848a;
	font-weight: 400;
}

#punsearch #vf .newtext a {
	margin-left: 4px;
	color: #aee43f;
}

#punsearch #vf .stickytext {
	margin-right: 6px;
	color: #e5c064;
	font-size: 10px;
}

#punsearch #vf .tc2,
#punsearch #vf .tc3,
#punsearch #vf .tcr {
	color: #90a0a5;
	font-size: 10px;
}

#punsearch #vf .tc2 {
	width: 18%;
	text-align: left;
}

#punsearch #vf .tc3 {
	width: 8%;
	text-align: center;
}

#punsearch #vf .tcr {
	width: 25%;
	line-height: 1.5;
}

#punsearch #vf .tcr a {
	color: #82c3e4;
}

#punsearch #searchform.blockform {
	margin-top: 18px;
	border: 1px solid rgba(166, 184, 191, .13);
	border-radius: 6px;
	background: rgba(12, 18, 21, .62);
}

#punsearch #searchform .box,
#punsearch #searchform .inbox {
	border: 0;
	background: transparent;
}

#punsearch #searchform form {
	padding: 18px;
}

#punsearch #searchform fieldset {
	margin: 0 0 16px;
	padding: 14px 16px 16px;
	border: 1px solid rgba(166, 184, 191, .12);
	border-radius: 5px;
}

#punsearch #searchform legend {
	padding: 0 7px;
	color: #cbd7db;
	font-size: 12px;
	font-weight: 700;
}

#punsearch #searchform .inform {
	padding-bottom: 10px;
}

#punsearch #searchform .forminfo {
	margin: 0 0 13px;
	padding: 10px 12px;
	border-color: rgba(112, 183, 220, .17);
	border-radius: 4px;
	color: #849399;
	background: rgba(112, 183, 220, .04);
}

#punsearch #searchform label {
	padding: 6px 0;
	color: #a9b8bd;
	font-size: 11px;
}

#punsearch #searchform input[type="text"],
#punsearch #searchform select {
	min-height: 32px;
	border-color: rgba(166, 184, 191, .2);
	border-radius: 4px;
	background: rgba(0, 0, 0, .18);
}

#punsearch #searchform .buttons {
	padding: 0;
}

#punsearch #searchform .buttons input {
	min-height: 34px;
	padding: 0 14px;
	border: 1px solid rgba(166, 220, 19, .42);
	border-radius: 4px;
	color: #ccef75;
	background: rgba(166, 220, 19, .1);
	font-weight: 700;
	cursor: pointer;
}

#punsearch #searchform .buttons input:hover {
	background: rgba(166, 220, 19, .18);
}

@media (max-width: 680px) {
	#punsearch .linkst .inbox {
		align-items: flex-start;
		flex-direction: column;
	}

	#punsearch #vf .tc2,
	#punsearch #vf .tc3,
	#punsearch #vf .tcr {
		display: none;
	}

	#punsearch #vf .tcl,
	#punsearch #vf thead .tcl {
		display: table-cell;
		width: 100%;
	}

	#punsearch #vf tbody td {
		padding: 13px;
	}

	#punsearch #searchform form {
		padding: 13px;
	}

	#punsearch #searchform fieldset {
		padding: 12px;
	}
}
