/* Clean, compact profile moderation tools. Loaded after the main theme layer. */
.profile-moderation {
	--mod-surface: rgba(10, 10, 13, .95);
	--mod-card: rgba(20, 20, 24, .78);
	--mod-border: rgba(255, 255, 255, .10);
	--mod-border-strong: rgba(255, 255, 255, .18);
	--mod-muted: #aaa7ae;
	--mod-red: #ef233c;
	--mod-red-deep: #7f1024;
	--mod-green: #23885b;
	--mod-amber: #9b6b24;
	overflow: hidden !important;
	margin-top: 18px !important;
	border: 1px solid var(--mod-border) !important;
	border-radius: 13px !important;
	background: var(--mod-surface) !important;
	box-shadow: 0 16px 42px rgba(0, 0, 0, .32) !important;
	backdrop-filter: blur(14px) saturate(110%);
}

.profile-moderation > summary {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	min-height: 56px !important;
	padding: 0 18px !important;
	color: #f5f4f6 !important;
	font-size: .96rem !important;
	font-weight: 800 !important;
	letter-spacing: .01em !important;
	background: linear-gradient(90deg, rgba(239, 35, 60, .08), transparent 38%) !important;
	border: 0 !important;
}

.profile-moderation[open] > summary {
	border-bottom: 1px solid var(--mod-border) !important;
}

.profile-moderation__body {
	padding: 16px !important;
	border: 0 !important;
}

/* Form cards use a simple responsive grid. Four tools fit in one row on wide screens. */
.profile-moderation .admintools-user-lower-desktop,
.profile-moderation .admintools-user-lower-mobile {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
	gap: 12px !important;
	align-items: start !important;
}

.profile-moderation .admintools-user-lower-desktop > .body,
.profile-moderation .admintools-user-lower-mobile > .body,
.profile-moderation .admintools-user-lower-desktop > form:not(.actionbtns),
.profile-moderation .admintools-user-lower-mobile > form:not(.actionbtns) {
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 13px !important;
	border: 1px solid var(--mod-border) !important;
	border-radius: 10px !important;
	background: var(--mod-card) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
	box-sizing: border-box !important;
}

.profile-moderation form .form-control,
.profile-moderation form .custom-select,
.profile-moderation .body .form-control,
.profile-moderation .body .custom-select {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	height: 42px !important;
	min-height: 42px !important;
	margin: 0 0 9px !important;
	padding: 0 11px !important;
	color: #f1eff2 !important;
	font-size: .84rem !important;
	line-height: normal !important;
	border: 1px solid var(--mod-border) !important;
	border-radius: 8px !important;
	background: rgba(3, 3, 5, .76) !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

.profile-moderation form .form-control:hover,
.profile-moderation form .custom-select:hover,
.profile-moderation .body .form-control:hover,
.profile-moderation .body .custom-select:hover {
	border-color: var(--mod-border-strong) !important;
}

.profile-moderation form .form-control:focus,
.profile-moderation form .custom-select:focus,
.profile-moderation .body .form-control:focus,
.profile-moderation .body .custom-select:focus {
	border-color: rgba(239, 35, 60, .68) !important;
	box-shadow: 0 0 0 3px rgba(239, 35, 60, .12) !important;
}

/* Preserve Bootstrap checkbox structure instead of pulling controls out of position. */
.profile-moderation .custom-control,
.profile-moderation .form-check {
	min-height: 28px !important;
	margin: 0 0 9px !important;
}

.profile-moderation .custom-control-label,
.profile-moderation .form-check-label {
	font-size: .83rem !important;
	line-height: 1.3 !important;
}

.profile-moderation .btn,
.profile-moderation button,
.profile-moderation input[type="submit"] {
	min-height: 40px !important;
	margin: 0 !important;
	padding: 9px 13px !important;
	font-size: .81rem !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	white-space: normal !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	transform: none !important;
}

.profile-moderation .btn:hover,
.profile-moderation .btn:focus,
.profile-moderation button:hover,
.profile-moderation button:focus,
.profile-moderation input[type="submit"]:hover,
.profile-moderation input[type="submit"]:focus {
	transform: translateY(-1px) !important;
	box-shadow: 0 7px 18px rgba(0, 0, 0, .22) !important;
}

/* Action bar: forms have no visual box. Only the actual buttons are flex items. */
.profile-moderation .actionbtns {
	grid-column: 1 / -1 !important;
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: stretch !important;
	gap: 8px !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 2px 0 0 !important;
	padding: 11px !important;
	border: 1px solid var(--mod-border) !important;
	border-radius: 10px !important;
	background: rgba(255, 255, 255, .022) !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

.profile-moderation .actionbtns > form,
.profile-moderation .actionbtns form {
	display: contents !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.profile-moderation .actionbtns > .btn,
.profile-moderation .actionbtns > a,
.profile-moderation .actionbtns form > .btn,
.profile-moderation .actionbtns form > button,
.profile-moderation .actionbtns form > input[type="submit"] {
	display: inline-flex !important;
	flex: 1 1 150px !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 135px !important;
	max-width: 230px !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 9px 12px !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

.profile-moderation .actionbtns input[type="hidden"],
.profile-moderation .actionbtns [hidden],
.profile-moderation .actionbtns .d-none,
.profile-moderation .actionbtns form:empty {
	display: none !important;
}

.profile-moderation .actionbtns .btn-secondary,
.profile-moderation .actionbtns a.btn-secondary {
	color: #eceaec !important;
	border-color: var(--mod-border) !important;
	background: rgba(255, 255, 255, .055) !important;
}

.profile-moderation .actionbtns .btn-success {
	color: #fff !important;
	border-color: rgba(35, 136, 91, .48) !important;
	background: rgba(35, 136, 91, .30) !important;
}

.profile-moderation .actionbtns .btn-danger,
.profile-moderation .actionbtns .btn-primary {
	color: #fff !important;
	border-color: rgba(239, 35, 60, .34) !important;
	background: rgba(127, 16, 36, .58) !important;
}

/* Asset reset actions are a separate compact row. */
.profile-moderation .moderation-asset-actions {
	grid-column: 1 / -1 !important;
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 2px 0 0 !important;
	padding: 12px !important;
	border: 1px solid var(--mod-border) !important;
	border-radius: 10px !important;
	background: rgba(255, 255, 255, .022) !important;
}

.profile-moderation .moderation-asset-actions .text-small {
	flex: 0 0 100% !important;
	margin: 0 0 3px !important;
	color: var(--mod-muted) !important;
	font-size: .72rem !important;
	font-weight: 760 !important;
	letter-spacing: .04em !important;
	text-transform: uppercase !important;
}

.profile-moderation .moderation-asset-actions form {
	display: contents !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.profile-moderation .moderation-asset-actions .btn,
.profile-moderation .moderation-asset-actions form .btn,
.profile-moderation .moderation-asset-actions form input[type="submit"] {
	width: auto !important;
	min-width: 145px !important;
	margin: 0 !important;
	color: #f4ead6 !important;
	border-color: rgba(155, 107, 36, .42) !important;
	background: rgba(155, 107, 36, .20) !important;
}

@media (max-width: 720px) {
	.profile-moderation__body {
		padding: 10px !important;
	}

	.profile-moderation .admintools-user-lower-desktop,
	.profile-moderation .admintools-user-lower-mobile {
		grid-template-columns: 1fr !important;
		gap: 9px !important;
	}

	.profile-moderation .actionbtns > .btn,
	.profile-moderation .actionbtns > a,
	.profile-moderation .actionbtns form > .btn,
	.profile-moderation .actionbtns form > button,
	.profile-moderation .actionbtns form > input[type="submit"],
	.profile-moderation .moderation-asset-actions .btn,
	.profile-moderation .moderation-asset-actions form .btn,
	.profile-moderation .moderation-asset-actions form input[type="submit"] {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: none !important;
	}
}
