.admin-watch {
	--aw-blue: #149cf2;
	--aw-blue-dark: #0d4baf;
	--aw-teal: #18b7ad;
	--aw-aqua: #45d2c4;
	--aw-orange: #f47a18;
	--aw-magenta: #ef2065;
	--aw-purple: #9638b8;
	--aw-lime: #b8d530;
	--aw-charcoal: #1d2327;
	--aw-text-muted: #646970;
	--aw-border: #dcdcde;
	--aw-background: #f6f7f7;
	--aw-surface: #ffffff;
}

.admin-watch-activity-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px;
	margin: 24px 0 12px;
}

.admin-watch-activity-filters label {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.admin-watch-activity-list {
	list-style: none;
	margin: 16px 0;
	padding: 0;
}

.admin-watch-activity-entry {
	border: 1px solid var(--aw-border);
	border-radius: 6px;
	background: var(--aw-surface);
	padding: 16px;
	margin: 0 0 10px;
}

.admin-watch-activity-entry p {
	margin: 8px 0;
	overflow-wrap: anywhere;
}

.admin-watch-activity-entry time,
.admin-watch-activity-category {
	color: var(--aw-text-muted);
}

.admin-watch-activity-entry .dashicons {
	color: var(--aw-blue-dark);
	margin-inline-end: 8px;
}

.admin-watch-activity-entry a {
	margin-inline-start: 12px;
}

.admin-watch-activity-day {
	font-size: 16px;
	margin: 24px 0 12px;
}

.admin-watch-recent-activity {
	margin-top: 16px;
}

.admin-watch-activity-list.is-compact .admin-watch-activity-entry {
	border: 0;
	border-bottom: 1px solid var(--aw-border);
	border-radius: 0;
	padding: 4px 0 12px;
}

.admin-watch-sessions-table td {
	overflow-wrap: anywhere;
}

.admin-watch-header,
.admin-watch-content {
	max-width: 1440px;
	color: var(--aw-charcoal);
}

.admin-watch-header {
	margin: 20px 0 24px;
}

.admin-watch-header__inner {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px 24px;
	border: 1px solid var(--aw-border);
	border-radius: 8px;
	background: var(--aw-surface);
	box-shadow: 0 1px 2px rgba( 0, 0, 0, 0.04 );
}

.admin-watch-header--dashboard .admin-watch-header__inner {
	border-left: 4px solid var(--aw-blue);
}

.admin-watch-header__icon {
	width: 52px;
	height: 52px;
	flex: 0 0 52px;
	object-fit: contain;
}

.admin-watch-header__content {
	min-width: 0;
}

.admin-watch-header__title-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

.admin-watch-header h1 {
	margin: 0;
	padding: 0;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 600;
}

.admin-watch-header p {
	margin: 5px 0 0;
	color: var(--aw-text-muted);
	font-size: 14px;
}

.admin-watch-badge {
	display: inline-block;
	padding: 2px 8px;
	border: 1px solid #b9e5fb;
	border-radius: 999px;
	background: #f0f9fe;
	color: var(--aw-blue-dark);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
}

.admin-watch-grid {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 245px, 1fr ) );
	gap: 16px;
}

/* Layout */
.admin-watch-section-title {
	margin: 26px 0 12px;
	color: var(--aw-text-muted);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.admin-watch-dashboard-grid {
	grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
}

.admin-watch-activity-grid {
	grid-template-columns: minmax( 0, 2fr ) minmax( 300px, 1fr );
}

.admin-watch-card,
.admin-watch-pro {
	box-sizing: border-box;
	border: 1px solid var(--aw-border);
	border-radius: 8px;
	background: var(--aw-surface);
	box-shadow: 0 1px 2px rgba( 0, 0, 0, 0.04 );
}

.admin-watch-card {
	position: relative;
	min-height: 202px;
	padding: 20px;
	overflow: hidden;
}

.admin-watch-card::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: var(--aw-blue);
	content: "";
}

.admin-watch-card--access::before {
	background: var(--aw-teal);
}

.admin-watch-card--logins::before {
	background: var(--aw-blue-dark);
}

.admin-watch-card--404::before {
	background: var(--aw-orange);
}

.admin-watch-card--sessions::before,
.admin-watch-card--security::before {
	background: var(--aw-blue-dark);
}

.admin-watch-card h2,
.admin-watch-pro h2 {
	margin: 0 0 14px;
	color: var(--aw-charcoal);
	font-size: 16px;
	line-height: 1.4;
}

.admin-watch-card p {
	margin: 0 0 10px;
	color: var(--aw-text-muted);
}

.admin-watch-card p strong {
	color: var(--aw-charcoal);
	font-size: 17px;
}

.admin-watch-status {
	color: var(--aw-charcoal) !important;
	font-size: 18px;
	font-weight: 600;
}

/* KPI cards and circular metrics */
.admin-watch-kpi-value {
	margin: 8px 0 0 !important;
	color: var(--aw-charcoal) !important;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.1;
}

.admin-watch-kpi-label,
.admin-watch-card__facts {
	margin-top: 3px !important;
	font-size: 13px;
}

.admin-watch-card__facts {
	margin-top: 14px !important;
}

.admin-watch-ring {
	display: grid;
	width: 116px;
	height: 116px;
	margin: 4px 0 14px;
	border-radius: 50%;
	place-items: center;
	text-align: center;
	background: radial-gradient( closest-side, var(--aw-surface) 78%, transparent 79% 100% ), conic-gradient( var(--aw-teal) 0.7turn, #d9eeec 0 );
}

.admin-watch-ring span,
.admin-watch-ring strong {
	display: block;
	max-width: 76px;
	color: var(--aw-charcoal);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: uppercase;
}

.admin-watch-ring--attention {
	background: radial-gradient( closest-side, var(--aw-surface) 78%, transparent 79% 100% ), conic-gradient( var(--aw-orange) 0.7turn, #fff0e4 0 );
}

.admin-watch-ring--access,
.admin-watch-ring--404,
.admin-watch-ring--sessions {
	background: radial-gradient( closest-side, var(--aw-surface) 68%, transparent 69% 100% ), conic-gradient( var(--aw-teal), var(--aw-aqua) 0.18turn, var(--aw-teal) 0.18turn );
}

.admin-watch-ring--sessions {
	background: radial-gradient( closest-side, var(--aw-surface) 68%, transparent 69% 100% ), conic-gradient( var(--aw-blue), var(--aw-teal) 0.18turn, var(--aw-blue) 0.18turn );
}

.admin-watch-ring--404 {
	background: radial-gradient( closest-side, var(--aw-surface) 68%, transparent 69% 100% ), conic-gradient( var(--aw-orange), #f7ae70 0.18turn, var(--aw-orange) 0.18turn );
}

.admin-watch-ring--access strong,
.admin-watch-ring--404 strong,
.admin-watch-ring--sessions strong {
	margin: 22px auto 0;
	font-size: 30px;
	line-height: 1;
}

.admin-watch-ring--access span,
.admin-watch-ring--404 span,
.admin-watch-ring--sessions span {
	margin: 2px auto 18px;
	font-size: 11px;
}

.admin-watch-role-list p,
.admin-watch-security-list p {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 7px;
	font-size: 13px;
}

.admin-watch-role-list strong,
.admin-watch-security-list strong {
	color: var(--aw-charcoal);
}

.admin-watch-login-list {
	margin: 0;
}

.admin-watch-login-list li {
	display: grid;
	grid-template-columns: minmax( 110px, 1.3fr ) minmax( 110px, 1fr ) auto;
	gap: 12px;
	margin: 0;
	padding: 9px 0;
	border-top: 1px solid #f0f0f1;
	font-size: 13px;
}

.admin-watch-login-list li:first-child {
	border-top: 0;
}

.admin-watch-login-list span,
.admin-watch-login-list time {
	color: var(--aw-text-muted);
}

/* Tables, sessions and settings */
.admin-watch-summary-grid {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 220px ) );
	gap: 12px;
	margin: 16px 0;
}

.admin-watch-summary-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 15px 16px;
	border: 1px solid var(--aw-border);
	border-radius: 8px;
	background: var(--aw-surface);
}

.admin-watch-summary-card span {
	color: var(--aw-text-muted);
	font-size: 13px;
}

.admin-watch-summary-card strong {
	font-size: 26px;
}

.admin-watch-more-sessions {
	margin: 12px 0 0;
	color: var(--aw-text-muted);
}

.admin-watch-pro--sessions {
	margin-top: 18px;
}

/* About & Support */
.admin-watch-about-grid {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	gap: 16px;
}

.admin-watch-about-card {
	padding: 20px;
	border: 1px solid var(--aw-border);
	border-radius: 8px;
	background: var(--aw-surface);
	box-shadow: 0 1px 2px rgba( 0, 0, 0, 0.04 );
}

.admin-watch-about-card h2 {
	margin: 0 0 12px;
	font-size: 16px;
}

.admin-watch-about-card p {
	color: var(--aw-text-muted);
}

.admin-watch-about-card--privacy {
	border-left: 4px solid var(--aw-teal);
}

.admin-watch-about-list {
	display: grid;
	grid-template-columns: max-content minmax( 0, 1fr );
	gap: 8px 14px;
	margin: 0;
}

.admin-watch-about-list dt {
	font-weight: 600;
}

.admin-watch-about-list dd {
	margin: 0;
}

.admin-watch-about-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.admin-watch-about-actions .button {
	margin: 0;
}

.admin-watch-card ul {
	margin: 0;
}

.admin-watch-card li {
	margin: 0 0 9px;
	color: var(--aw-text-muted);
	line-height: 1.45;
}

.admin-watch-card a,
.admin-watch-content > p a {
	color: var(--aw-blue-dark);
	font-weight: 600;
	text-decoration: none;
}

.admin-watch-card a:hover,
.admin-watch-card a:focus,
.admin-watch-content > p a:hover,
.admin-watch-content > p a:focus {
	color: var(--aw-blue);
	text-decoration: underline;
}

.admin-watch-pro {
	max-width: 100%;
	margin-top: 20px;
	padding: 18px 20px;
	border-left: 4px solid var(--aw-teal);
	background: #fcfefe;
}

.admin-watch-pro h2 {
	margin-bottom: 6px;
}

.admin-watch-pro p {
	margin: 0;
	color: var(--aw-text-muted);
}

.admin-watch-content .subsubsub {
	float: none;
	margin: -8px 0 14px;
}

/* User filters */
.admin-watch-filter-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: -8px 0 16px;
}

.admin-watch-filter-button {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 10px;
	border: 1px solid var(--aw-border);
	border-radius: 999px;
	background: var(--aw-surface);
	color: var(--aw-blue-dark);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
}

.admin-watch-filter-button:hover {
	border-color: var(--aw-blue);
	color: var(--aw-blue-dark);
	background: #f0f9fe;
}

.admin-watch-filter-button:focus {
	outline: 2px solid var(--aw-blue);
	outline-offset: 2px;
	box-shadow: none;
}

.admin-watch-filter-button.is-current {
	border-color: var(--aw-blue-dark);
	background: var(--aw-blue-dark);
	color: #ffffff;
}

.admin-watch-page-note {
	margin: -8px 0 16px;
	padding: 10px 12px;
	border-left: 3px solid var(--aw-aqua);
	background: #f7fcfc;
	color: var(--aw-text-muted);
}

.admin-watch-content .wp-list-table,
.admin-watch-content .form-table {
	border: 1px solid var(--aw-border);
}

.admin-watch-content .wp-list-table {
	border-radius: 6px;
	box-shadow: 0 1px 2px rgba( 0, 0, 0, 0.04 );
}

.admin-watch-content .wp-list-table thead th {
	padding-top: 12px;
	padding-bottom: 12px;
	color: var(--aw-charcoal);
	background: var(--aw-background);
}

.admin-watch-content .wp-list-table td {
	vertical-align: middle;
}

.admin-watch-users-table th:nth-child( 1 ) {
	width: 23%;
}

.admin-watch-users-table th:nth-child( 2 ) {
	width: 15%;
}

.admin-watch-status-badge {
	display: inline-block;
	padding: 3px 8px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	white-space: nowrap;
}

.admin-watch-status-badge--strength-strong,
.admin-watch-status-badge--enabled {
	border-color: #a6d9d3;
	background: #effaf8;
	color: #116b64;
}

.admin-watch-status-badge--strength-medium {
	border-color: #b9e5fb;
	background: #f0f9fe;
	color: var(--aw-blue-dark);
}

.admin-watch-status-badge--strength-weak {
	border-color: #ffd4ae;
	background: #fff7ed;
	color: #9a4f08;
}

.admin-watch-status-badge--strength-very_weak {
	border-color: #f5b9b9;
	background: #fff5f5;
	color: #a61b1b;
}

.admin-watch-status-badge--not-recorded,
.admin-watch-status-badge--not_detected,
.admin-watch-status-badge--not_enabled {
	border-color: var(--aw-border);
	background: var(--aw-background);
	color: var(--aw-text-muted);
}

.admin-watch-content .search-box {
	margin: 0 0 16px;
}

.admin-watch-content .form-table {
	margin-top: 0;
	margin-bottom: 26px;
	padding: 4px 20px;
	border-radius: 6px;
	background: var(--aw-surface);
	box-shadow: 0 1px 2px rgba( 0, 0, 0, 0.04 );
}

.admin-watch-content .form-table th {
	width: 220px;
	color: var(--aw-charcoal);
}

.admin-watch-content .button-primary {
	border-color: var(--aw-blue-dark);
	background: var(--aw-blue-dark);
}

.admin-watch-content .button-primary:hover,
.admin-watch-content .button-primary:focus {
	border-color: var(--aw-blue);
	background: var(--aw-blue);
}

.admin-watch-content .tablenav-pages {
	margin: 16px 0;
}

@media screen and (max-width: 782px) {
	.admin-watch-sessions-table,
	.admin-watch-sessions-table tbody,
	.admin-watch-sessions-table tbody tr {
		display: block;
		width: 100%;
	}

	.admin-watch-sessions-table thead {
		display: none;
	}

	#wpbody-content .admin-watch-content .admin-watch-sessions-table tbody td {
		display: block;
		position: static;
		width: 100%;
		box-sizing: border-box;
		padding: 10px 12px;
	}

	#wpbody-content .admin-watch-content .admin-watch-sessions-table tbody td::before {
		content: attr( data-colname );
		position: static;
		display: block;
		width: auto;
		font-weight: 600;
		margin-bottom: 4px;
	}
	.admin-watch-header {
		margin-top: 12px;
	}

	.admin-watch-header__inner {
		align-items: flex-start;
		padding: 16px;
	}

	.admin-watch-header__icon {
		width: 48px;
		height: 48px;
		flex-basis: 48px;
	}

	.admin-watch-header h1 {
		font-size: 22px;
	}

	.admin-watch-card {
		min-height: 0;
	}

	.admin-watch-dashboard-grid,
	.admin-watch-activity-grid {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}

	.admin-watch-login-list li {
		grid-template-columns: 1fr;
		gap: 3px;
	}

	.admin-watch-content .form-table {
		padding: 4px 12px;
	}

	.admin-watch-about-grid {
		grid-template-columns: 1fr;
	}

	.admin-watch-users-table th:nth-child( 1 ),
	.admin-watch-users-table th:nth-child( 2 ) {
		width: auto;
	}

	.admin-watch-users-table td,
	.admin-watch-users-table th {
		white-space: normal;
	}
}

@media screen and (max-width: 520px) {
	.admin-watch-dashboard-grid,
	.admin-watch-activity-grid,
	.admin-watch-summary-grid,
	.admin-watch-about-grid {
		grid-template-columns: 1fr;
	}

	.admin-watch-ring {
		width: 108px;
		height: 108px;
	}
}
