.anm-llg {
	max-width: 1480px;
	--anm-accent: #11665d;
	--anm-border: #dce2e5;
	--anm-muted: #52616b;
}

.anm-llg-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 18px 0;
}

.anm-llg-stat,
.anm-llg-panel {
	background: #fff;
	border: 1px solid #c3c4c7;
	border-radius: 4px;
	box-sizing: border-box;
}

.anm-llg-stat {
	padding: 16px;
}

.anm-llg-stat-value {
	color: #1d2327;
	display: block;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
}

.anm-llg-stat-label {
	color: #50575e;
	display: block;
	margin-top: 4px;
}

.anm-llg-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
	gap: 16px;
	margin-bottom: 16px;
}

.anm-llg-panel {
	margin: 0 0 16px;
	padding: 16px;
}

.anm-llg-tabs {
	margin: 18px 0 16px;
}

.anm-llg-panel h2 {
	margin-top: 0;
}

.anm-llg-panel-header {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.anm-llg-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.anm-llg-actions form,
.anm-llg-release-all {
	margin: 0;
}

.anm-llg-inline-fields {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
}

.anm-llg-inline-fields input[type="number"] {
	max-width: 96px;
}

.anm-llg-check-grid,
.anm-llg-search {
	display: grid;
	gap: 10px 12px;
}

.anm-llg-check-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.anm-llg-search {
	align-items: end;
	grid-template-columns: minmax(180px, 1.5fr) minmax(140px, 1fr) minmax(120px, 0.8fr) minmax(130px, 0.8fr) minmax(130px, 0.8fr) auto auto;
	margin: 12px 0 16px;
}

.anm-llg-search label {
	display: block;
	font-weight: 600;
	margin-bottom: 4px;
}

.anm-llg-field input,
.anm-llg-field select {
	width: 100%;
}

.anm-llg-textareas {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.anm-llg-textareas label,
.anm-llg-textareas textarea,
.anm-llg-textareas .description {
	display: block;
	width: 100%;
}

.anm-llg-textareas label {
	font-weight: 600;
}

.anm-llg-hp {
	height: 0;
	left: -9999px;
	overflow: hidden;
	position: absolute;
	width: 0;
}

.anm-llg-qr-wrap {
	background: #fff;
	border: 1px solid #dcdcde;
	display: inline-block;
	line-height: 0;
	margin: 8px 0;
	padding: 10px;
}

.anm-llg-qr {
	height: auto;
	max-width: 100%;
}

.anm-llg-role-modes select {
	min-width: 180px;
}

.anm-llg-attempt-tabs {
	display: flex;
	gap: 0;
	justify-content: center;
	margin: 8px 0 14px;
}

.anm-llg-attempt-tabs .button {
	border-radius: 0;
	margin: 0;
}

.anm-llg-attempt-tabs .button:first-child {
	border-bottom-left-radius: 4px;
	border-top-left-radius: 4px;
}

.anm-llg-attempt-tabs .button:last-child {
	border-bottom-right-radius: 4px;
	border-top-right-radius: 4px;
}

.anm-llg-attempts-scroll {
	border-top: 1px solid #dcdcde;
	max-height: 430px;
	overflow: auto;
}

.anm-llg-attempts-scroll:focus {
	box-shadow: 0 0 0 2px #2271b1;
	outline: 2px solid transparent;
}

.anm-llg-attempts-table th,
.anm-llg-attempts-table td {
	white-space: nowrap;
}

.anm-llg-table-wrap {
	overflow-x: auto;
}

.anm-llg-table-wrap:focus-visible {
	outline: 2px solid #2271b1;
	outline-offset: 2px;
}

.anm-llg-table-wrap td,
.anm-llg-table-wrap code {
	overflow-wrap: anywhere;
}

.anm-llg-status {
	border-radius: 4px;
	display: inline-block;
	font-weight: 600;
	padding: 2px 6px;
}

.anm-llg-status-failed {
	background: #fcf0f1;
	color: #8a2424;
}

.anm-llg-status-lockout,
.anm-llg-status-locked,
.anm-llg-status-blocked {
	background: #f6e2bd;
	color: #5f3b00;
}

.anm-llg-status-success {
	background: #edfaef;
	color: #0a5f1f;
}

.anm-llg-status-info,
.anm-llg-status-notice {
	background: #e9f4ff;
	color: #0b4f79;
}

.anm-llg-status-warning {
	background: #f6e2bd;
	color: #5f3b00;
}

.anm-llg-status-critical {
	background: #fcf0f1;
	color: #8a2424;
}

#anm_llg_dashboard_widget .inside {
	margin: 0;
	padding: 0;
}

.anm-llg-datetime { overflow-wrap: anywhere; }
.anm-llg-timezone { font-size: 11px; line-height: 1.5; color: #50575e; font-weight: 400; }
.anm-llg-platform { color: #1d2327; }
.anm-llg-platform h3 { font-size: 15px; margin: 0 0 12px; }
.anm-llg-platform-list { list-style: none; margin: 0; padding: 0; }
.anm-llg-platform-list li { border-bottom: 1px solid #dcdcde; padding: 12px 0; overflow-wrap: anywhere; }
.anm-llg-platform-heading { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-bottom: 4px; }
.anm-llg-platform-list small { display: inline-block; font-size: 12px; margin: 4px 8px 0 0; }
.anm-llg-platform-state { display: inline-flex; align-items: center; gap: 5px; font-weight: 600; line-height: 1.5; }
.anm-llg-platform-state .dashicons { flex: 0 0 20px; width: 20px; height: 20px; line-height: 20px; }
.anm-llg-platform-current { color: #166534; }
.anm-llg-platform-outdated { color: #b42318; }
.anm-llg-platform-unknown { color: #50575e; }
.anm-llg-platform-links { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.anm-llg-platform-compact { border-top: 1px solid #dcdcde; margin-top: 16px; padding-top: 12px; }
.anm-llg-platform-compact .anm-llg-platform-list li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 4px 12px; padding: 8px 0; }
.anm-llg-platform-compact .anm-llg-platform-heading { align-content: start; font-size: 13px; gap: 2px 8px; margin: 0; }
.anm-llg-platform-compact .anm-llg-platform-state { align-items: start; font-size: 12px; line-height: 20px; }
.anm-llg-platform-details { grid-column: 1 / -1; font-size: 12px; }
.anm-llg-platform-details summary { color: #135e96; cursor: pointer; width: fit-content; }
.anm-llg-platform-details summary:focus-visible { outline: 2px solid #2271b1; outline-offset: 2px; }
.anm-llg-platform-compact .anm-llg-platform-links { font-size: 12px; margin-bottom: 0; }

.anm-llg-dashboard-widget {
	padding: 18px 14px 12px;
}

.anm-llg-dashboard-hero {
	text-align: center;
}

.anm-llg-dashboard-ring {
	display: block;
	height: auto;
	margin: 0 auto 10px;
	max-width: 172px;
	width: 42%;
}

.anm-llg-dashboard-ring-shadow,
.anm-llg-dashboard-ring-track,
.anm-llg-dashboard-ring-value {
	fill: none;
	stroke-linecap: round;
	stroke-width: 18;
}

.anm-llg-dashboard-ring-shadow {
	filter: drop-shadow(0 8px 14px rgba(15, 118, 86, 0.18));
	stroke: rgba(0, 0, 0, 0);
}

.anm-llg-dashboard-ring-track {
	stroke: #eef2f5;
}

.anm-llg-dashboard-ring-value {
	stroke: #8af0bd;
}

.anm-llg-dashboard-ring-warning {
	stroke: #f2b64b;
}

.anm-llg-dashboard-ring-critical {
	stroke: #dc5b5b;
}

.anm-llg-dashboard-ring-text {
	fill: #32373c;
	font-size: 28px;
	font-weight: 700;
}

.anm-llg-dashboard-message {
	color: #1d2327;
	font-size: 14px;
	font-weight: 700;
	margin: 0 0 14px;
}

.anm-llg-dashboard-metrics {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 12px;
}

.anm-llg-dashboard-metrics span {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	color: #50575e;
	display: block;
	padding: 8px;
}

.anm-llg-dashboard-metrics strong {
	color: #1d2327;
	display: block;
	font-size: 18px;
	line-height: 1.2;
}

.anm-llg-dashboard-chart-head {
	align-items: center;
	background: #eff8fc;
	border-radius: 4px;
	color: #2c3338;
	display: inline-flex;
	font-size: 12px;
	gap: 6px;
	margin: 0 0 8px;
	padding: 4px 8px;
}

.anm-llg-dashboard-dot {
	background: #49bdf2;
	border-radius: 999px;
	display: inline-block;
	height: 10px;
	width: 10px;
}

.anm-llg-dashboard-chart {
	overflow-x: auto;
}

.anm-llg-dashboard-chart svg {
	display: block;
	min-width: 420px;
	width: 100%;
}

.anm-llg-chart-axis {
	stroke: #ccd0d4;
	stroke-width: 1;
}

.anm-llg-chart-grid {
	stroke: #dcdcde;
	stroke-width: 1;
}

.anm-llg-chart-area {
	fill: rgba(73, 189, 242, 0.12);
}

.anm-llg-chart-line {
	fill: none;
	stroke: #2fa7f3;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 3;
}

.anm-llg-chart-point {
	fill: #fff;
	stroke: #2fa7f3;
	stroke-width: 2;
}

.anm-llg-chart-x-label,
.anm-llg-chart-y-label {
	fill: #646970;
	font-size: 11px;
}

.anm-llg-dashboard-footer {
	margin: 10px 0 0;
	text-align: right;
}

.anm-llg-header {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 20px 0 24px;
}

.anm-llg-header h1 {
	color: #202b32;
	font-size: 23px;
	font-weight: 600;
	line-height: 1.35;
	margin: 0;
	padding: 0;
}

.anm-llg-brand-icon {
	color: var(--anm-accent);
	font-size: 32px;
	height: 32px;
	width: 32px;
}

.anm-llg .dashicons {
	color: inherit;
}

.anm-llg .anm-llg-brand-icon {
	color: var(--anm-accent);
}

.anm-llg-version {
	border-left: 1px solid var(--anm-border);
	color: var(--anm-muted);
	font-size: 12px;
	padding-left: 12px;
}

.anm-llg-workspace {
	align-items: start;
	display: grid;
	gap: 28px;
	grid-template-columns: 210px minmax(0, 1fr);
}

.anm-llg-content,
.anm-llg-nav-group,
.anm-llg-textarea-field {
	min-width: 0;
}

.anm-llg .anm-llg-tabs {
	border: 0;
	margin: 0;
	padding: 0;
}

.anm-llg-navigation > summary {
	display: none;
}

.anm-llg-nav-group {
	margin-bottom: 20px;
}

.anm-llg-nav-label {
	color: var(--anm-muted);
	font-size: 11px;
	font-weight: 600;
	margin: 0 0 8px;
	padding: 0 12px;
	text-transform: uppercase;
}

.anm-llg-nav-link {
	align-items: center;
	border-left: 3px solid transparent;
	border-radius: 0 4px 4px 0;
	color: #384750;
	display: flex;
	font-size: 13px;
	gap: 10px;
	line-height: 1.4;
	min-height: 44px;
	padding: 0 10px;
	text-decoration: none;
}

.anm-llg-nav-link .dashicons {
	flex: 0 0 20px;
	font-size: 19px;
}

.anm-llg-nav-link:hover {
	background: #e8eded;
	color: #173f3a;
}

.anm-llg-nav-active,
.anm-llg-nav-active:hover {
	background: #e0eeea;
	border-left-color: var(--anm-accent);
	color: #104f48;
	font-weight: 600;
}

.anm-llg-content > .anm-llg-panel {
	border: 0;
	border-radius: 0;
	border-top: 1px solid var(--anm-border);
	padding: 24px;
}

.anm-llg-content > .anm-llg-panel + .anm-llg-panel {
	margin-top: 24px;
}

.anm-llg-settings-heading {
	border-bottom: 1px solid var(--anm-border);
	padding-bottom: 20px;
}

.anm-llg-settings-heading h2 {
	color: #202b32;
	font-size: 19px;
	font-weight: 600;
	line-height: 1.4;
	margin: 0;
}

.anm-llg-settings-table {
	margin: 0;
	width: 100%;
}

.anm-llg-settings-table > tbody > tr {
	border-bottom: 1px solid #edf0f1;
	display: grid;
	gap: 20px;
	grid-template-columns: 180px minmax(0, 1fr);
	padding: 22px 0;
}

.anm-llg-settings-table > tbody > tr:last-child {
	border-bottom: 0;
}

.anm-llg-settings-table > tbody > tr > th,
.anm-llg-settings-table > tbody > tr > td {
	box-sizing: border-box;
	display: block;
	font-size: 13px;
	margin: 0;
	min-width: 0;
	padding: 0;
	width: auto;
}

.anm-llg-settings-table > tbody > tr > th {
	color: #34434c;
	font-weight: 600;
	line-height: 1.6;
	text-align: left;
}

.anm-llg-settings-table > tbody > tr > td.anm-llg-textareas {
	display: grid;
}

.anm-llg-settings-table > tbody > tr > td.anm-llg-inline-fields {
	display: flex;
}

.anm-llg-settings-form[data-scope="lists"] .anm-llg-settings-table > tbody > tr {
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
}

.anm-llg-settings-form[data-scope="lists"] .anm-llg-settings-table > tbody > tr > th {
	font-size: 15px;
}

.anm-llg-settings-form label:not(:has(input[type="checkbox"])) {
	display: block;
	font-weight: 500;
	margin: 0 0 6px;
}

.anm-llg-settings-form td > label:has(input[type="checkbox"]),
.anm-llg-settings-form .anm-llg-check-grid label {
	align-items: baseline;
	display: block;
	line-height: 1.65;
	margin: 0;
	min-height: 28px;
}

.anm-llg-settings-form td > br {
	display: none;
}

.anm-llg-settings-form input[type="checkbox"] {
	accent-color: var(--anm-accent);
	margin-right: 7px;
}

.anm-llg-settings-form input:not([type="checkbox"]):not([type="hidden"]),
.anm-llg-settings-form select,
.anm-llg-settings-form textarea {
	border: 1px solid #89979f;
	border-radius: 4px;
	box-sizing: border-box;
	color: #202b32;
	font-size: 13px;
	max-width: 100%;
	min-height: 38px;
}

.anm-llg-settings-form .regular-text {
	width: min(100%, 440px);
}

.anm-llg-settings-form select {
	width: auto;
}

.anm-llg-settings-form .description {
	color: var(--anm-muted);
	font-size: 12px;
	line-height: 1.65;
	margin: 7px 0 0;
}

.anm-llg-settings-form p,
.anm-llg-settings-form code {
	overflow-wrap: anywhere;
}

.anm-llg-textareas {
	align-items: start;
	gap: 22px;
}

.anm-llg-textarea-field {
	width: 100%;
}

.anm-llg-textarea-field label {
	display: block;
	font-weight: 600;
	margin: 0 0 8px;
}

.anm-llg-textarea-field textarea {
	display: block;
	font-family: Consolas, Monaco, monospace;
	line-height: 1.6;
	min-height: 136px;
	padding: 10px 12px;
	resize: vertical;
	width: 100%;
}

.anm-llg-number-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.anm-llg-number-field {
	flex: 1 1 150px;
	min-width: 0;
}

.anm-llg-settings-form .anm-llg-number-field input[type="number"] {
	width: 100%;
	max-width: 140px;
}

.anm-llg-settings-table table :is(th, td) {
	display: table-cell;
	font-size: 13px;
	padding: 10px;
	width: auto;
}

.anm-llg-settings-form .widefat input[type="file"] {
	width: 180px;
}

.anm-llg-settings-form .anm-llg-role-modes {
	table-layout: fixed;
}

.anm-llg-settings-form .anm-llg-role-modes select {
	min-width: 0;
	width: 100%;
}

.anm-llg-details {
	border-bottom: 1px solid var(--anm-border);
	border-top: 1px solid var(--anm-border);
	margin: 18px 0;
}

.anm-llg-details > summary {
	color: #34434c;
	cursor: pointer;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	padding: 14px 0;
}

.anm-llg-details > summary::marker {
	color: var(--anm-accent);
}

.anm-llg-details[open] > summary {
	border-bottom: 1px solid #edf0f1;
	margin-bottom: 14px;
}

.anm-llg-rule-sources {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 18px 0;
}

.anm-llg-rule-source {
	background: #fbfdfe;
	border: 1px solid var(--anm-border);
	border-radius: 4px;
	min-width: 0;
	padding: 16px;
}

.anm-llg-rule-source h3 {
	font-size: 14px;
	margin: 0 0 10px;
}

.anm-llg-rule-source form,
.anm-llg-rule-source .submit {
	margin: 0;
	padding: 0;
}

.anm-llg-hash code {
	display: inline;
	overflow-wrap: anywhere;
}

.anm-llg-server-snippets .anm-llg-details label {
	display: block;
	font-weight: 600;
	margin: 14px 0 7px;
}

.anm-llg-server-snippets textarea[readonly] {
	background: #fbfdfe;
	border: 1px solid #89979f;
	border-radius: 4px;
	box-sizing: border-box;
	color: #202b32;
	line-height: 1.55;
	padding: 12px;
	resize: vertical;
	width: 100%;
}

.anm-llg-save-bar {
	align-items: center;
	border-top: 1px solid var(--anm-border);
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
	margin-top: 20px;
	padding-top: 20px;
}

.anm-llg-save-bar .button-primary {
	align-items: center;
	background: var(--anm-accent);
	border-color: var(--anm-accent);
	color: #fff;
	display: inline-flex;
	font-size: 13px;
	gap: 7px;
	line-height: 1.4;
	min-height: 42px;
	padding: 8px 16px;
}

.anm-llg-save-bar .button-primary:hover {
	background: #0c4f48;
	border-color: #0c4f48;
	color: #fff;
}

/* Core button rules can give a 20px Dashicon a 38px line box. */
.anm-llg button.button > .dashicons {
	align-items: center;
	display: inline-flex;
	flex: 0 0 20px;
	height: 20px;
	justify-content: center;
	line-height: 20px;
	margin: 0;
	vertical-align: middle;
	width: 20px;
}

.anm-llg-save-state {
	color: var(--anm-muted);
	font-size: 12px;
}

.anm-llg-save-state.anm-llg-unsaved {
	color: #805411;
	font-weight: 600;
}

.anm-llg-module-status {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 20px 0;
}

.anm-llg-module-status > span {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: space-between;
}

.anm-llg-status-neutral {
	background: #edf0f1;
	color: #45535c;
}

.anm-llg :is(a, button, input, textarea, select, summary):focus-visible {
	box-shadow: none;
	outline: 2px solid #11665d;
	outline-offset: 3px;
}

@media (max-width: 1180px) {
	.anm-llg-workspace {
		gap: 20px;
		grid-template-columns: 190px minmax(0, 1fr);
	}

	.anm-llg-settings-table > tbody > tr {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}
}

@media (max-width: 960px) {
	.anm-llg-stats,
	.anm-llg-grid,
	.anm-llg-rule-sources,
	.anm-llg-textareas,
	.anm-llg-check-grid,
	.anm-llg-search {
		grid-template-columns: 1fr;
	}

	.anm-llg-panel-header {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 782px) {
	.anm-llg-navigation > summary {
		border-bottom: 1px solid var(--anm-border);
		color: #34434c;
		cursor: pointer;
		display: list-item;
		font-size: 13px;
		font-weight: 600;
		padding: 12px 0;
	}

	.anm-llg-navigation > summary span {
		color: var(--anm-accent);
		margin-left: 12px;
	}

	.anm-llg-navigation[open] > summary {
		margin-bottom: 16px;
	}

	.anm-llg-workspace {
		grid-template-columns: minmax(0, 1fr);
		gap: 20px;
	}

	.anm-llg .anm-llg-tabs {
		display: grid;
		gap: 12px 16px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.anm-llg-nav-group {
		margin: 0;
	}

	.anm-llg-nav-link {
		gap: 7px;
		padding: 6px 8px;
	}

	.anm-llg-nav-label {
		padding: 0 8px;
	}

	.anm-llg-content > .anm-llg-panel {
		padding: 18px;
	}

	.anm-llg-header h1 {
		font-size: 20px;
	}

	.anm-llg-number-grid,
	.anm-llg-module-status {
		grid-template-columns: minmax(0, 1fr);
	}

	.anm-llg-dashboard-ring {
		width: 52%;
	}

	.anm-llg-dashboard-metrics {
		grid-template-columns: 1fr;
	}
}
.anm-llg-update-status {
    display: grid;
    grid-template-columns: minmax(130px, 190px) minmax(0, 1fr);
    gap: 12px 20px;
}
.anm-llg-update-status dt { font-weight: 600; }
.anm-llg-filter-form,
.anm-llg-pagination {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 16px 0;
}
.anm-llg-filter-form input[type="search"] { flex: 1 1 200px; min-width: 0; max-width: 100%; }
.anm-llg-pagination span { overflow-wrap: anywhere; }
.anm-llg-lockouts-table { min-width: 880px; }
.anm-llg-lockouts-table th:nth-child(1) { width: 180px; }
.anm-llg-lockouts-table th:nth-child(3),
.anm-llg-lockouts-table th:nth-child(4) { width: 160px; }
.anm-llg-lockouts-table td:first-child { overflow-wrap: normal; }
.anm-llg-update-status dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 600px) {
    .anm-llg-update-status { grid-template-columns: minmax(0, 1fr); gap: 4px; }
    .anm-llg-update-status dd { margin-bottom: 12px; }
}
