/**
 * AI Sales Manager — frontend styles for client auth / cabinet pages.
 *
 * Visual style is inspired by WordPress Admin (wp-admin) — a dark sidebar
 * on the left and a light content area on the right.
 */

/* ============================================================
   Cabinet body — kill theme chrome ONLY on cabinet pages.

   Active theme (block theme) renders a horizontal site header with
   auto page links and a centered constrained content layout. For the
   cabinet pages we need a full-bleed two-column shell instead, so we
   forcibly hide the theme header/footer and remove the constrained
   width/padding wrappers — but only when body has .asm-cabinet-body.
   ============================================================ */

body.asm-cabinet-body {
	margin: 0 !important;
	padding: 0 !important;
	background: #f0f0f1 !important;
}

/* Hide theme site header / footer template parts. */
body.asm-cabinet-body header.wp-block-template-part,
body.asm-cabinet-body footer.wp-block-template-part,
body.asm-cabinet-body .wp-site-blocks > header,
body.asm-cabinet-body .wp-site-blocks > footer,
body.asm-cabinet-body .wp-block-site-title,
body.asm-cabinet-body .wp-block-navigation,
body.asm-cabinet-body .wp-block-page-list {
	display: none !important;
}

/* Break theme container — let the app shell go full width. */
body.asm-cabinet-body .wp-site-blocks,
body.asm-cabinet-body main.wp-block-group,
body.asm-cabinet-body .is-layout-constrained,
body.asm-cabinet-body .is-layout-flow,
body.asm-cabinet-body .entry-content,
body.asm-cabinet-body .wp-block-post-content,
body.asm-cabinet-body .wp-block-group,
body.asm-cabinet-body .site-main,
body.asm-cabinet-body main,
body.asm-cabinet-body article,
body.asm-cabinet-body .site-content,
body.asm-cabinet-body #content,
body.asm-cabinet-body #page {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #f0f0f1 !important;
}

/* Force the app shell to escape any remaining theme container
   (centered max-width wrapper, side paddings, etc.) and span the
   full viewport width. The negative margin trick pulls the shell
   left/right out of a constrained parent. */
body.asm-cabinet-body .asm-app-shell {
	width: 100vw !important;
	max-width: none !important;
	min-height: 100vh !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

/* Remove text-align centering inherited from theme. */
body.asm-cabinet-body,
body.asm-cabinet-body .wp-site-blocks,
body.asm-cabinet-body .entry-content {
	text-align: left !important;
}

/* Kill the theme's page title (we render our own inside main). */
body.asm-cabinet-body .wp-block-post-title,
body.asm-cabinet-body .entry-header,
body.asm-cabinet-body .entry-title {
	display: none !important;
}

/* ============================================================
   Auth pages (login / register) — standalone, centered
   ============================================================ */

.asm-auth-wrapper {
	max-width: 420px;
	margin: 60px auto;
	padding: 0 16px;
	box-sizing: border-box;
}

.asm-auth-card {
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 6px;
	padding: 28px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.asm-auth-title {
	font-size: 22px;
	font-weight: 600;
	margin: 0 0 18px;
	color: #1d2327;
	text-align: center;
}

/* ============================================================
   App shell — sidebar + content (WordPress Admin style)
   ============================================================ */

.asm-app-shell {
	display: flex !important;
	flex-direction: row !important;
	align-items: stretch;
	justify-content: flex-start;
	width: 100%;
	min-height: 100vh;
	margin: 0;
	padding: 0;
	background: #f0f0f1;
	color: #1d2327;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
}

.asm-app-shell *,
.asm-app-shell *::before,
.asm-app-shell *::after {
	box-sizing: border-box;
}

/* Sidebar */
.asm-sidebar {
	width: 240px;
	flex: 0 0 240px;
	background: #1d2327;
	color: #c3c4c7;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.asm-sidebar-brand {
	padding: 20px 20px 16px;
	border-bottom: 1px solid #2c3338;
}

.asm-sidebar-brand-title {
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	letter-spacing: 0.02em;
}

.asm-sidebar-brand-sub {
	font-size: 12px;
	color: #a7aaad;
	margin-top: 2px;
}

.asm-sidebar-nav {
	flex: 1 1 auto;
	padding: 8px 0;
	overflow-y: auto;
}

.asm-sidebar-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.asm-sidebar-nav li {
	margin: 0;
}

.asm-sidebar-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 18px;
	color: #c3c4c7;
	text-decoration: none;
	font-size: 14px;
	font-weight: 400;
	border-left: 3px solid transparent;
	transition: background 0.12s ease, color 0.12s ease, border-color 0.12s ease;
}

.asm-sidebar-item:hover {
	background: #2c3338;
	color: #ffffff;
}

.asm-sidebar-item.is-active {
	background: #5b6cf9;
	color: #ffffff;
	border-left-color: #8be9ff;
}

.asm-sidebar-item.is-active:hover {
	background: #5b6cf9;
	color: #ffffff;
}

.asm-sidebar-item.is-soon {
	color: #8c8f94;
	cursor: default;
}

.asm-sidebar-item.is-soon:hover {
	background: transparent;
	color: #8c8f94;
}

.asm-sidebar-icon {
	display: inline-flex;
	width: 18px;
	height: 18px;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	line-height: 1;
	color: inherit;
}

.asm-sidebar-label {
	flex: 1 1 auto;
}

.asm-sidebar-badge {
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 2px 6px;
	border-radius: 10px;
	background: #2c3338;
	color: #a7aaad;
}

.asm-sidebar-footer {
	border-top: 1px solid #2c3338;
	padding: 8px 0;
}

.asm-sidebar-logout {
	color: #c3c4c7;
}

/* Main content area */
.asm-main {
	flex: 1 1 auto;
	min-width: 0;
	background: #f0f0f1;
	/* Extra left padding so the content does not stick to the dark sidebar,
	   mimicking the inner gutter of WordPress Admin. */
	padding: 32px 32px 32px 36px;
}

.asm-main-header {
	max-width: 1180px;
	margin: 0 0 24px;
	text-align: left;
}

.asm-main-title {
	margin: 0 0 8px;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.2;
	color: #1d2327;
	text-align: left;
}

.asm-main-subtitle {
	margin: 0;
	color: #646970;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
}

.asm-main-content {
	max-width: 1180px;
	margin: 0;
	text-align: left;
}

/* ============================================================
   Generic card / metabox
   ============================================================ */

.asm-card {
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 20px;
	margin: 0 0 16px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.asm-card-title {
	margin: 0 0 14px;
	font-size: 16px;
	font-weight: 600;
	color: #1d2327;
	padding-bottom: 10px;
	border-bottom: 1px solid #f0f0f1;
}

.asm-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
}

.asm-card-grid code,
.asm-card code {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 12px;
	color: #1d2327;
}

/* ============================================================
   Forms
   ============================================================ */

.asm-field {
	margin-bottom: 16px;
}

.asm-form .asm-field {
	max-width: 720px;
}

.asm-label {
	display: block;
	font-size: 13px;
	color: #1d2327;
	margin-bottom: 6px;
	font-weight: 500;
}

.asm-input {
	width: 100%;
	max-width: 720px;
	box-sizing: border-box;
	padding: 8px 10px;
	border: 1px solid #8c8f94;
	border-radius: 4px;
	background: #ffffff;
	font-size: 14px;
	color: #1d2327;
	transition: border-color 0.12s, box-shadow 0.12s;
}

.asm-input:focus {
	outline: none;
	border-color: #5b6cf9;
	box-shadow: 0 0 0 1px #5b6cf9;
}

.asm-textarea {
	min-height: 200px;
	max-width: 900px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	line-height: 1.5;
	resize: vertical;
}

.asm-help {
	margin: 6px 0 0;
	font-size: 12px;
	color: #646970;
	line-height: 1.5;
}

.asm-form-actions {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
	padding-top: 4px;
}

/* ============================================================
   Buttons
   ============================================================ */

.asm-button,
.asm-button-secondary,
.asm-button-danger {
	display: inline-block;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	border-radius: 3px;
	cursor: pointer;
	border: 1px solid transparent;
	text-decoration: none;
	transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
	box-sizing: border-box;
}

.asm-button {
	background: #5b6cf9;
	color: #ffffff;
	border-color: #5b6cf9;
}

.asm-button:hover,
.asm-button:focus {
	background: #4f46e5;
	border-color: #4f46e5;
	color: #ffffff;
}

.asm-button-secondary {
	background: #f6f7f7;
	color: #2c3338;
	border-color: #8c8f94;
}

.asm-button-secondary:hover,
.asm-button-secondary:focus {
	background: #f0f0f1;
	border-color: #50575e;
	color: #1d2327;
}

.asm-button-danger {
	background: #ffffff;
	color: #b32d2e;
	border-color: #d63638;
}

.asm-button-danger:hover,
.asm-button-danger:focus {
	background: #fcf0f1;
	color: #8a1f1f;
	border-color: #b32d2e;
}

/* Auth forms keep full-width submit */
.asm-auth-card .asm-button {
	display: block;
	width: 100%;
}

/* ============================================================
   Flash messages
   ============================================================ */

.asm-error,
.asm-success {
	padding: 10px 12px;
	border-radius: 4px;
	font-size: 13px;
	margin: 0 0 16px;
	border-left: 4px solid transparent;
	background: #ffffff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.asm-error {
	border-left-color: #d63638;
	color: #1d2327;
}

.asm-success {
	border-left-color: #00a32a;
	color: #1d2327;
}

/* ============================================================
   Muted text + status pills
   ============================================================ */

.asm-muted {
	color: #646970;
	font-size: 13px;
}

.asm-muted a {
	color: #5b6cf9;
	text-decoration: none;
}

.asm-muted a:hover {
	text-decoration: underline;
}

.asm-status-pill {
	display: inline-block;
	font-size: 12px;
	padding: 2px 8px;
	background: #f0f6fc;
	border: 1px solid #c5d9ed;
	border-radius: 10px;
	color: #1d2327;
}

/* ============================================================
   Dashboard
   ============================================================ */

.asm-tenant-box {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 18px 20px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
	margin-bottom: 20px;
}

.asm-tenant-box code {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 12px;
}

.asm-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 16px;
}

.asm-card.asm-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	margin: 0;
	transition: border-color 0.12s, box-shadow 0.12s;
}

.asm-card.asm-card-link:hover {
	border-color: #5b6cf9;
	box-shadow: 0 1px 4px rgba(34, 113, 177, 0.12);
}

.asm-card h3 {
	margin: 0 0 6px;
	font-size: 15px;
	font-weight: 600;
	color: #1d2327;
}

.asm-card p {
	margin: 0 0 12px;
	color: #50575e;
	font-size: 13px;
	line-height: 1.5;
}

.asm-card-cta {
	display: inline-block;
	font-size: 13px;
	font-weight: 500;
	color: #5b6cf9;
}

.asm-card-link:hover .asm-card-cta {
	color: #4f46e5;
}

.asm-card-cta-disabled,
.asm-card-soon .asm-card-cta {
	color: #8c8f94;
	cursor: default;
}

.asm-card-soon {
	background: #fafafa;
}

/* ============================================================
   AI Tools page (wrapper inside main content)
   ============================================================ */

.asm-ai-tools-wrapper {
	max-width: 1180px;
	margin: 0 auto;
}

.asm-ai-tools-section {
	margin-bottom: 28px;
}

.asm-ai-tools-section-head {
	margin-bottom: 14px;
}

.asm-ai-tools-section-title {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 600;
	color: #1d2327;
}

.asm-ai-tools-section-desc {
	margin: 0;
	color: #646970;
	font-size: 13px;
	line-height: 1.5;
}

.asm-ai-tools-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 16px;
}

.asm-ai-tools-card {
	display: flex;
	flex-direction: column;
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 18px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
	min-height: 180px;
}

.asm-ai-tools-card-active:hover {
	border-color: #5b6cf9;
	box-shadow: 0 1px 4px rgba(34, 113, 177, 0.12);
}

.asm-ai-tools-card-disabled {
	background: #fafafa;
	opacity: 0.85;
}

.asm-ai-tools-card-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	gap: 8px;
}

.asm-ai-tools-card-icon {
	font-size: 24px;
	line-height: 1;
}

.asm-ai-tools-card-title {
	margin: 0 0 4px;
	font-size: 15px;
	font-weight: 600;
	color: #1d2327;
}

.asm-ai-tools-card-desc {
	margin: 0 0 14px;
	font-size: 13px;
	color: #50575e;
	line-height: 1.5;
	flex: 1;
}

.asm-ai-tools-card-cta {
	display: inline-block;
	font-size: 13px;
	font-weight: 500;
	color: #5b6cf9;
	text-decoration: none;
	margin-top: auto;
}

.asm-ai-tools-card-cta:hover {
	color: #4f46e5;
}

.asm-ai-tools-card-cta-disabled {
	color: #8c8f94;
	cursor: default;
}

.asm-ai-tools-card-cta-disabled:hover {
	color: #8c8f94;
}

/* Badges */
.asm-ai-tools-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 500;
	padding: 2px 8px;
	border-radius: 10px;
	border: 1px solid transparent;
	line-height: 1.4;
	white-space: nowrap;
}

.asm-ai-tools-badge-progress {
	background: #fcf9e8;
	color: #674c00;
	border-color: #f0e6a8;
}

.asm-ai-tools-badge-soon {
	background: #f0f0f1;
	color: #646970;
	border-color: #dcdcde;
}

.asm-ai-tools-badge-type {
	background: #f0f6fc;
	color: #1d2327;
	border-color: #c5d9ed;
}

.asm-ai-tools-badge-active {
	background: #edfaef;
	color: #08611c;
	border-color: #b8e0bb;
}

.asm-ai-tools-badge-inactive {
	background: #f0f0f1;
	color: #50575e;
	border-color: #dcdcde;
}

.asm-ai-tools-badge-sync {
	background: #fcf9e8;
	color: #674c00;
	border-color: #f0e6a8;
}

.asm-ai-tools-badge-edit {
	background: #f0f6fc;
	color: #1d2327;
	border-color: #c5d9ed;
}

.asm-ai-tools-badge-deleted {
	background: #fcf0f1;
	color: #8a1f1f;
	border-color: #f1bcbc;
}

/* Notice block */
.asm-ai-tools-notice {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	border-left: 4px solid #5b6cf9;
	color: #1d2327;
	border-radius: 4px;
	padding: 12px 14px;
	margin: 0 0 16px;
	font-size: 13px;
	line-height: 1.55;
}

.asm-ai-tools-notice code {
	background: #ffffff;
	border: 1px solid #dcdcde;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 12px;
}

/* Form card */
.asm-ai-tools-form-card {
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 20px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.asm-ai-tools-form-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid #f0f0f1;
}

.asm-ai-tools-form-title {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: #1d2327;
}

.asm-ai-tools-form .asm-field {
	margin-bottom: 16px;
	max-width: 720px;
}

.asm-ai-tools-help {
	margin: 6px 0 0;
	font-size: 12px;
	color: #646970;
	line-height: 1.5;
}

.asm-ai-tools-help code {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	padding: 1px 5px;
	border-radius: 3px;
	font-size: 11.5px;
}

.asm-ai-tools-form-actions {
	display: flex;
	gap: 12px;
	align-items: center;
	flex-wrap: wrap;
	padding-top: 4px;
}

.asm-ai-tools-submit {
	min-width: 180px;
}

.asm-ai-tools-cancel {
	font-size: 13px;
	color: #646970;
	text-decoration: none;
}

.asm-ai-tools-cancel:hover {
	color: #5b6cf9;
	text-decoration: underline;
}

/* Empty state */
.asm-ai-tools-empty {
	background: #ffffff;
	border: 1px dashed #c3c4c7;
	border-radius: 4px;
	padding: 28px 20px;
	text-align: center;
}

.asm-ai-tools-empty-icon {
	font-size: 28px;
	margin-bottom: 6px;
}

.asm-ai-tools-empty-title {
	font-size: 14px;
	font-weight: 600;
	color: #1d2327;
	margin-bottom: 4px;
}

.asm-ai-tools-empty-desc {
	font-size: 13px;
	color: #646970;
}

/* Saved tools list */
.asm-ai-tools-saved-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.asm-ai-tools-saved-card {
	background: #ffffff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 16px 18px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.asm-ai-tools-saved-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}

.asm-ai-tools-saved-title-wrap {
	min-width: 0;
	flex: 1 1 240px;
}

.asm-ai-tools-saved-name {
	margin-bottom: 6px;
	word-break: break-all;
}

.asm-ai-tools-saved-name code {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	padding: 3px 8px;
	border-radius: 3px;
	font-size: 14px;
	font-weight: 600;
	color: #1d2327;
}

.asm-ai-tools-saved-badges {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}

.asm-ai-tools-saved-actions {
	display: flex;
	gap: 8px;
	align-items: center;
	flex-wrap: wrap;
}

.asm-ai-tools-saved-actions form {
	margin: 0;
}

.asm-ai-tools-delete-form {
	display: inline;
}

.asm-ai-tools-delete-btn {
	background: #ffffff;
	border: 1px solid #d63638;
	color: #b32d2e;
	font-size: 13px;
	font-weight: 500;
	padding: 7px 13px;
	border-radius: 3px;
	cursor: pointer;
	transition: background 0.12s, color 0.12s;
}

.asm-ai-tools-delete-btn:hover {
	background: #fcf0f1;
	color: #8a1f1f;
}

.asm-ai-tools-saved-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 12px 16px;
	border-top: 1px solid #f0f0f1;
	padding-top: 12px;
}

.asm-ai-tools-saved-field {
	min-width: 0;
}

.asm-ai-tools-saved-label {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #646970;
	margin-bottom: 4px;
}

.asm-ai-tools-saved-value {
	font-size: 13px;
	color: #1d2327;
	word-break: break-all;
}

.asm-ai-tools-saved-value code {
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 12px;
}

.asm-ai-tools-saved-card-pending-delete {
	background: #fafafa;
	opacity: 0.85;
}

.asm-ai-tools-saved-card-pending-delete .asm-ai-tools-saved-name code,
.asm-ai-tools-saved-card-pending-delete .asm-ai-tools-saved-value,
.asm-ai-tools-saved-card-pending-delete .asm-ai-tools-saved-label {
	color: #646970;
}

.asm-ai-tools-pending-delete-note {
	display: inline-block;
	padding: 5px 10px;
	background: #fcf9e8;
	border: 1px solid #f0e6a8;
	color: #674c00;
	border-radius: 3px;
	font-size: 12px;
	font-weight: 500;
}

/* ============================================================
   Mobile
   ============================================================ */

@media (max-width: 900px) {
	.asm-app-shell {
		flex-direction: column;
	}

	.asm-sidebar {
		width: 100%;
		flex: 0 0 auto;
		min-height: 0;
	}

	.asm-sidebar-nav {
		max-height: none;
	}

	.asm-main {
		padding: 20px 16px;
	}

	.asm-main-title {
		font-size: 26px;
	}
}

@media (max-width: 640px) {
	.asm-ai-tools-form-card,
	.asm-ai-tools-saved-card,
	.asm-card {
		padding: 16px;
	}

	.asm-ai-tools-submit {
		width: 100%;
	}
}

/* ============================================================
   FINAL OVERRIDES — must stay at the very end of the file.

   Tighten the cabinet to look like real WordPress Admin (wp-admin):
   narrow 160px sidebar, compact menu items, small headings, dry
   admin-style cards / forms / buttons / tables.

   All rules below are scoped to body.asm-cabinet-body so they only
   affect cabinet pages (/dashboard, /ai-agent, /ai-tools, /wazzup,
   /account) and never the rest of the site.
   ============================================================ */

/* ---------- Typography baseline (admin font stack) ---------- */
body.asm-cabinet-body,
body.asm-cabinet-body .asm-app-shell,
body.asm-cabinet-body .asm-app-shell * {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
}

/* ---------- Sidebar: narrow wp-admin column ---------- */
body.asm-cabinet-body .asm-sidebar {
	flex: 0 0 160px !important;
	width: 160px !important;
	min-height: 100vh;
	background: #1d2327 !important;
	color: #c3c4c7 !important;
}

/* Brand block on top of sidebar — compact. */
body.asm-cabinet-body .asm-sidebar-brand {
	padding: 12px 12px 10px !important;
	border-bottom: 1px solid #2c3338 !important;
}

body.asm-cabinet-body .asm-sidebar-brand-title,
body.asm-cabinet-body .asm-sidebar-logo {
	font-size: 14px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
	color: #fff !important;
}

body.asm-cabinet-body .asm-sidebar-brand-sub,
body.asm-cabinet-body .asm-sidebar-company {
	font-size: 11px !important;
	line-height: 1.3 !important;
	color: #8c8f94 !important;
	margin-top: 2px !important;
}

/* Sidebar nav reset. */
body.asm-cabinet-body .asm-sidebar-nav {
	padding: 4px 0 !important;
}

body.asm-cabinet-body .asm-sidebar-nav ul,
body.asm-cabinet-body .asm-sidebar-nav li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Menu links — wp-admin look. */
body.asm-cabinet-body .asm-sidebar-item,
body.asm-cabinet-body .asm-sidebar-link {
	display: flex !important;
	align-items: center !important;
	min-height: 34px !important;
	padding: 8px 12px !important;
	font-size: 14px !important;
	line-height: 18px !important;
	font-weight: 400 !important;
	color: #c3c4c7 !important;
	text-decoration: none !important;
	border-left: 0 !important;
	background: transparent !important;
	transition: background 0.1s ease, color 0.1s ease !important;
}

body.asm-cabinet-body .asm-sidebar-item:hover,
body.asm-cabinet-body .asm-sidebar-link:hover {
	background: #2c3338 !important;
	color: #8be9ff !important;
}

body.asm-cabinet-body .asm-sidebar-item.is-active,
body.asm-cabinet-body .asm-sidebar-link.is-active {
	background: #5b6cf9 !important;
	color: #fff !important;
}

body.asm-cabinet-body .asm-sidebar-item.is-active:hover,
body.asm-cabinet-body .asm-sidebar-link.is-active:hover {
	background: #5b6cf9 !important;
	color: #fff !important;
}

/* "Скоро" — disabled state stays muted, no hover swap. */
body.asm-cabinet-body .asm-sidebar-item.is-soon {
	color: #8c8f94 !important;
	cursor: default !important;
}

body.asm-cabinet-body .asm-sidebar-item.is-soon:hover {
	background: transparent !important;
	color: #8c8f94 !important;
}

/* Sidebar icon column. */
body.asm-cabinet-body .asm-sidebar-icon,
body.asm-cabinet-body .asm-sidebar-link .asm-menu-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 20px !important;
	min-width: 20px !important;
	height: 18px !important;
	margin-right: 8px !important;
	font-size: 13px !important;
	line-height: 1 !important;
	text-align: center !important;
	opacity: 0.9 !important;
	color: inherit !important;
}

/* Small "Скоро" / pill badges. */
body.asm-cabinet-body .asm-sidebar-badge {
	margin-left: auto !important;
	padding: 1px 5px !important;
	border-radius: 10px !important;
	font-size: 10px !important;
	line-height: 16px !important;
	background: #2c3338 !important;
	color: #a7aaad !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* Sidebar footer (Выйти). */
body.asm-cabinet-body .asm-sidebar-footer {
	border-top: 1px solid #2c3338 !important;
	padding: 4px 0 !important;
}

/* ---------- Main content area: tight wp-admin gutter ---------- */
body.asm-cabinet-body .asm-app-shell .asm-main {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	background: #f0f0f1 !important;
	padding: 20px !important;
}

body.asm-cabinet-body .asm-app-shell .asm-main-inner,
body.asm-cabinet-body .asm-app-shell .asm-main-content,
body.asm-cabinet-body .asm-app-shell .asm-main-header {
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.asm-cabinet-body .asm-app-shell .asm-main-header {
	margin: 0 0 16px !important;
}

/* ---------- Headings (admin style: 23px / 400) ---------- */
body.asm-cabinet-body .asm-main-header h1,
body.asm-cabinet-body .asm-main-title {
	font-size: 23px !important;
	line-height: 1.3 !important;
	font-weight: 400 !important;
	margin: 0 0 4px !important;
	padding: 9px 0 4px !important;
	color: #1d2327 !important;
	text-align: left !important;
}

body.asm-cabinet-body .asm-main-header p,
body.asm-cabinet-body .asm-main-subtitle {
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #646970 !important;
	margin: 0 !important;
	text-align: left !important;
}

/* ---------- Cards / panels: dry wp-admin postbox ---------- */
body.asm-cabinet-body .asm-card,
body.asm-cabinet-body .asm-panel,
body.asm-cabinet-body .asm-settings-card,
body.asm-cabinet-body .asm-tool-card,
body.asm-cabinet-body .asm-tenant-box,
body.asm-cabinet-body .asm-ai-tools-form-card,
body.asm-cabinet-body .asm-ai-tools-card,
body.asm-cabinet-body .asm-ai-tools-saved-card {
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 16px !important;
}

body.asm-cabinet-body .asm-card h2,
body.asm-cabinet-body .asm-panel h2,
body.asm-cabinet-body .asm-settings-card h2,
body.asm-cabinet-body .asm-card-title,
body.asm-cabinet-body .asm-ai-tools-form-title,
body.asm-cabinet-body .asm-ai-tools-section-title {
	font-size: 14px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	border: 0 !important;
	color: #1d2327 !important;
}

body.asm-cabinet-body .asm-card h3,
body.asm-cabinet-body .asm-ai-tools-card-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 6px !important;
}

/* ---------- Forms (compact admin inputs) ---------- */
body.asm-cabinet-body .asm-form-row,
body.asm-cabinet-body .asm-field {
	margin-bottom: 14px !important;
}

body.asm-cabinet-body label,
body.asm-cabinet-body .asm-label {
	display: block !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin-bottom: 4px !important;
}

body.asm-cabinet-body input[type="text"],
body.asm-cabinet-body input[type="email"],
body.asm-cabinet-body input[type="url"],
body.asm-cabinet-body input[type="password"],
body.asm-cabinet-body input[type="number"],
body.asm-cabinet-body input[type="search"],
body.asm-cabinet-body select,
body.asm-cabinet-body .asm-input {
	font-size: 14px !important;
	line-height: 2 !important;
	min-height: 30px !important;
	padding: 0 8px !important;
	border: 1px solid #8c8f94 !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #2c3338 !important;
	box-shadow: 0 0 0 transparent !important;
	max-width: 25em !important;
	width: 100% !important;
}

body.asm-cabinet-body textarea,
body.asm-cabinet-body .asm-textarea {
	font-size: 14px !important;
	line-height: 1.5 !important;
	padding: 6px 8px !important;
	border: 1px solid #8c8f94 !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #2c3338 !important;
	box-shadow: 0 0 0 transparent !important;
	width: 100% !important;
	max-width: 720px !important;
}

body.asm-cabinet-body input:focus,
body.asm-cabinet-body select:focus,
body.asm-cabinet-body textarea:focus,
body.asm-cabinet-body .asm-input:focus,
body.asm-cabinet-body .asm-textarea:focus {
	border-color: #5b6cf9 !important;
	box-shadow: 0 0 0 1px #5b6cf9 !important;
	outline: 2px solid transparent !important;
}

body.asm-cabinet-body .asm-help {
	font-size: 12px !important;
	color: #646970 !important;
	margin: 4px 0 0 !important;
}

/* ---------- Buttons (wp-admin .button / .button-primary) ---------- */
body.asm-cabinet-body .asm-button,
body.asm-cabinet-body .asm-button-primary,
body.asm-cabinet-body button[type="submit"],
body.asm-cabinet-body input[type="submit"] {
	display: inline-block !important;
	background: #5b6cf9 !important;
	border: 1px solid #5b6cf9 !important;
	color: #fff !important;
	border-radius: 3px !important;
	font-size: 13px !important;
	line-height: 2.15384615 !important;
	min-height: 30px !important;
	padding: 0 10px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

body.asm-cabinet-body .asm-button:hover,
body.asm-cabinet-body .asm-button-primary:hover,
body.asm-cabinet-body button[type="submit"]:hover,
body.asm-cabinet-body input[type="submit"]:hover,
body.asm-cabinet-body .asm-button:focus,
body.asm-cabinet-body .asm-button-primary:focus,
body.asm-cabinet-body button[type="submit"]:focus,
body.asm-cabinet-body input[type="submit"]:focus {
	background: #4f46e5 !important;
	border-color: #4f46e5 !important;
	color: #fff !important;
}

body.asm-cabinet-body .asm-button-secondary {
	background: #f6f7f7 !important;
	border: 1px solid #5b6cf9 !important;
	color: #5b6cf9 !important;
	border-radius: 3px !important;
	font-size: 13px !important;
	line-height: 2.15384615 !important;
	min-height: 30px !important;
	padding: 0 10px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

body.asm-cabinet-body .asm-button-secondary:hover,
body.asm-cabinet-body .asm-button-secondary:focus {
	background: #f0f0f1 !important;
	border-color: #0a4b78 !important;
	color: #0a4b78 !important;
}

body.asm-cabinet-body .asm-button-danger,
body.asm-cabinet-body .asm-ai-tools-delete-btn {
	background: #fff !important;
	border: 1px solid #b32d2e !important;
	color: #b32d2e !important;
	border-radius: 3px !important;
	font-size: 13px !important;
	line-height: 2.15384615 !important;
	min-height: 30px !important;
	padding: 0 10px !important;
	box-shadow: none !important;
}

body.asm-cabinet-body .asm-button-danger:hover,
body.asm-cabinet-body .asm-ai-tools-delete-btn:hover {
	background: #fcf0f1 !important;
	color: #8a1f1f !important;
	border-color: #8a1f1f !important;
}

/* ---------- Tables (wp-list-table feel) ---------- */
body.asm-cabinet-body .asm-app-shell table {
	border-collapse: collapse !important;
	width: 100% !important;
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 0 !important;
}

body.asm-cabinet-body .asm-app-shell th,
body.asm-cabinet-body .asm-app-shell td {
	border-bottom: 1px solid #c3c4c7 !important;
	padding: 8px 10px !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	text-align: left !important;
	color: #2c3338 !important;
}

body.asm-cabinet-body .asm-app-shell th {
	font-weight: 600 !important;
	color: #2c3338 !important;
	background: #fff !important;
}

/* ---------- Grids — tighter gaps for admin density ---------- */
body.asm-cabinet-body .asm-dashboard-grid,
body.asm-cabinet-body .asm-ai-tools-grid {
	gap: 12px !important;
}

body.asm-cabinet-body .asm-card-grid {
	gap: 12px !important;
}

/* Status pill compact. */
body.asm-cabinet-body .asm-status-pill {
	font-size: 11px !important;
	padding: 1px 8px !important;
	border-radius: 9px !important;
}

/* ---------- Mobile: stack ---------- */
@media (max-width: 900px) {
	body.asm-cabinet-body .asm-app-shell {
		flex-direction: column !important;
	}

	body.asm-cabinet-body .asm-sidebar {
		flex: 0 0 auto !important;
		width: 100% !important;
		min-height: 0 !important;
	}

	body.asm-cabinet-body .asm-app-shell .asm-main {
		padding: 16px !important;
	}
}

/* ============================================================
   FINAL OVERRIDES — sidebar link layout fix.

   In the narrow 160px sidebar the label was getting clipped because
   icon + label + "Скоро" badge were all fighting for horizontal
   space. Tighten paddings, give icon a fixed 20px column, let the
   label flex with min-width:0 + ellipsis, and shrink (or hide) the
   badge so the menu item label always fits.
   ============================================================ */

body.asm-cabinet-body .asm-sidebar-item,
body.asm-cabinet-body .asm-sidebar-link {
	padding: 8px 8px 8px 10px !important;
	gap: 6px !important;
	white-space: nowrap !important;
	overflow: hidden !important;
}

body.asm-cabinet-body .asm-sidebar-item .asm-sidebar-icon,
body.asm-cabinet-body .asm-sidebar-link .asm-sidebar-icon,
body.asm-cabinet-body .asm-sidebar-item .asm-menu-icon,
body.asm-cabinet-body .asm-sidebar-link .asm-menu-icon,
body.asm-cabinet-body .asm-sidebar-item .dashicons,
body.asm-cabinet-body .asm-sidebar-link .dashicons {
	width: 20px !important;
	min-width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	text-align: center !important;
	font-size: 16px !important;
	line-height: 20px !important;
	flex: 0 0 20px !important;
}

body.asm-cabinet-body .asm-sidebar-item .asm-sidebar-label,
body.asm-cabinet-body .asm-sidebar-link .asm-sidebar-label,
body.asm-cabinet-body .asm-sidebar-item .asm-menu-label,
body.asm-cabinet-body .asm-sidebar-link .asm-menu-label,
body.asm-cabinet-body .asm-sidebar-item > span:not(.asm-sidebar-badge):not(.asm-sidebar-icon):not(.asm-menu-icon):not(.dashicons),
body.asm-cabinet-body .asm-sidebar-link > span:not(.asm-sidebar-badge):not(.asm-sidebar-icon):not(.asm-menu-icon):not(.dashicons) {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

body.asm-cabinet-body .asm-sidebar-badge {
	flex: 0 0 auto !important;
	margin-left: 4px !important;
	padding: 0 4px !important;
	font-size: 9px !important;
	line-height: 14px !important;
	border-radius: 8px !important;
	background: #2c3338 !important;
	color: #a7aaad !important;
}

/* In very narrow sidebar (<=160px) the badge has no room — hide it. */
@media (max-width: 1200px) {
	body.asm-cabinet-body .asm-sidebar {
		/* keep 160px */
	}
}

/* ============================================================
   FINAL OVERRIDES — sidebar item to match wp-admin density.

   Real wp-admin uses a 34px row, an icon column ~30px hugging the
   left edge with an 18px glyph, and the label sits right after the
   icon with no extra gap. We also hide the "Скоро" badge — it has
   no room in a 160px column.
   ============================================================ */

body.asm-cabinet-body .asm-sidebar-item,
body.asm-cabinet-body .asm-sidebar-link {
	min-height: 34px !important;
	height: 34px !important;
	padding: 0 6px 0 0 !important;
	gap: 0 !important;
	font-size: 14px !important;
	line-height: 34px !important;
}

body.asm-cabinet-body .asm-sidebar-item .asm-sidebar-icon,
body.asm-cabinet-body .asm-sidebar-link .asm-sidebar-icon,
body.asm-cabinet-body .asm-sidebar-item .asm-menu-icon,
body.asm-cabinet-body .asm-sidebar-link .asm-menu-icon,
body.asm-cabinet-body .asm-sidebar-item .dashicons,
body.asm-cabinet-body .asm-sidebar-link .dashicons {
	width: 30px !important;
	min-width: 30px !important;
	max-width: 30px !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 18px !important;
	line-height: 34px !important;
	flex: 0 0 30px !important;
}

body.asm-cabinet-body .asm-sidebar-item .asm-sidebar-label,
body.asm-cabinet-body .asm-sidebar-link .asm-sidebar-label,
body.asm-cabinet-body .asm-sidebar-item .asm-menu-label,
body.asm-cabinet-body .asm-sidebar-link .asm-menu-label {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
	white-space: nowrap !important;
	overflow: visible !important;
	text-overflow: clip !important;
}

body.asm-cabinet-body .asm-sidebar-badge {
	display: none !important;
}

/* ============================================================
   Sidebar submenu — WordPress Admin "Внешний вид → Темы" style.

   Parent item stays a normal link; children appear immediately
   below it in a slightly darker strip, indented, no icons.
   Always visible when the parent section is open (no toggle).
   ============================================================ */

/* ---------- Base (non-cabinet) fallback ---------- */

.asm-sidebar-has-submenu {
	margin: 0;
	padding: 0;
}

.asm-sidebar-submenu {
	list-style: none;
	margin: 0;
	padding: 4px 0;
	background: #16181a;
}

.asm-sidebar-submenu li {
	margin: 0;
	padding: 0;
}

.asm-sidebar-subitem,
.asm-sidebar-subitem:link,
.asm-sidebar-subitem:visited,
.asm-sidebar-subitem:hover,
.asm-sidebar-subitem:focus,
.asm-sidebar-subitem:active {
	text-decoration: none;
}

.asm-sidebar-subitem {
	position: relative;
	display: block;
	padding: 6px 12px 6px 34px;
	color: #c3c4c7;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	transition: background 0.15s ease, color 0.15s ease;
}

.asm-sidebar-subitem:hover {
	background: #2c3338;
	color: #8be9ff;
}

.asm-sidebar-subitem.is-active {
	color: #8be9ff;
	font-weight: 500;
	background: rgba(255, 255, 255, 0.03);
}

.asm-sidebar-subitem.is-active::before {
	content: "";
	position: absolute;
	left: 12px;
	top: 6px;
	bottom: 6px;
	width: 3px;
	background: #8be9ff;
	border-radius: 2px;
}

.asm-sidebar-sublabel {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-decoration: none;
}

/* ---------- Cabinet body overrides — 160px narrow sidebar ---------- */

body.asm-cabinet-body .asm-sidebar-has-submenu {
	margin: 0 !important;
	padding: 0 !important;
}

body.asm-cabinet-body .asm-sidebar-submenu {
	list-style: none !important;
	margin: 6px 0 10px 0 !important;
	padding: 4px 0 !important;
	background: #16181a !important;
	border-radius: 0 !important;
}

body.asm-cabinet-body .asm-sidebar-submenu li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Kill underline from theme globals on ALL link states */
body.asm-cabinet-body .asm-sidebar-subitem,
body.asm-cabinet-body .asm-sidebar-subitem:link,
body.asm-cabinet-body .asm-sidebar-subitem:visited,
body.asm-cabinet-body .asm-sidebar-subitem:hover,
body.asm-cabinet-body .asm-sidebar-subitem:focus,
body.asm-cabinet-body .asm-sidebar-subitem:active {
	text-decoration: none !important;
}

body.asm-cabinet-body .asm-sidebar-subitem {
	position: relative !important;
	display: block !important;
	margin: 0 !important;
	padding: 6px 12px 6px 34px !important;
	min-height: 30px !important;
	height: auto !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #c3c4c7 !important;
	background: transparent !important;
	border-left: 0 !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	transition: background-color 0.15s ease, color 0.15s ease !important;
}

body.asm-cabinet-body .asm-sidebar-subitem:hover,
body.asm-cabinet-body .asm-sidebar-subitem:focus {
	background: #2c3338 !important;
	color: #8be9ff !important;
}

body.asm-cabinet-body .asm-sidebar-subitem.is-active {
	background: rgba(255, 255, 255, 0.03) !important;
	color: #8be9ff !important;
	font-weight: 500 !important;
}

body.asm-cabinet-body .asm-sidebar-subitem.is-active::before {
	content: "" !important;
	position: absolute !important;
	left: 12px !important;
	top: 6px !important;
	bottom: 6px !important;
	width: 3px !important;
	background: #8be9ff !important;
	border-radius: 2px !important;
}

body.asm-cabinet-body .asm-sidebar-sublabel {
	display: block !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	text-decoration: none !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
}

/* Mobile — submenu inherits sidebar stack */
@media (max-width: 900px) {
	body.asm-cabinet-body .asm-sidebar-submenu {
		background: #16181a !important;
		margin: 4px 0 8px 0 !important;
	}
}

/* ============================================================
   FINAL SCOPED OVERRIDE — sidebar submenu.

   Uses .asm-sidebar ancestor for maximum specificity so no
   theme global (a, a:hover, a:visited) can bleed through.
   Must stay at the very end of the file.
   ============================================================ */

/* Hide submenu when parent is not open — CSS safety net (PHP also controls this). */
body.asm-cabinet-body .asm-sidebar .asm-sidebar-has-submenu:not(.is-open) .asm-sidebar-submenu {
	display: none !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-submenu {
	display: block !important;
	margin: 6px 0 10px 0 !important;
	padding: 4px 0 !important;
	background: #16181a !important;
	list-style: none !important;
	border-radius: 0 !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-submenu li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-submenu a,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:link,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:visited,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:hover,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:focus,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:active {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 6px 12px 6px 26px !important;
	min-height: 30px !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #c3c4c7 !important;
	text-decoration: none !important;
	border: 0 !important;
	outline: none !important;
	background: transparent !important;
	box-shadow: none !important;
	white-space: nowrap !important;
	overflow: hidden !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-submenu a:hover,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:hover,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:focus {
	background: #2c3338 !important;
	color: #8be9ff !important;
	text-decoration: none !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-submenu a.is-active,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem.is-active {
	background: rgba(255, 255, 255, 0.04) !important;
	color: #8be9ff !important;
	font-weight: 500 !important;
	text-decoration: none !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem.is-active::before {
	content: "" !important;
	position: absolute !important;
	left: 8px !important;
	top: 6px !important;
	bottom: 6px !important;
	width: 3px !important;
	background: #8be9ff !important;
	border-radius: 2px !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-sublabel {
	display: block !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	text-decoration: none !important;
}

body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:hover .asm-sidebar-sublabel,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem:focus .asm-sidebar-sublabel,
body.asm-cabinet-body .asm-sidebar .asm-sidebar-subitem.is-active .asm-sidebar-sublabel {
	text-decoration: none !important;
	color: inherit !important;
}

/* ============================================================
   Register Landing Page — /register public SaaS landing.

   All styles scoped to body.asm-register-landing-body (for
   theme-chrome overrides) and .asm-register-landing (for
   component styles). Never touches cabinet or other pages.
   ============================================================ */

/* --- Kill theme chrome on /register ----------------------- */

body.asm-register-landing-body {
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
}

body.asm-register-landing-body header.wp-block-template-part,
body.asm-register-landing-body footer.wp-block-template-part,
body.asm-register-landing-body .wp-site-blocks > header,
body.asm-register-landing-body .wp-site-blocks > footer,
body.asm-register-landing-body .wp-block-site-title,
body.asm-register-landing-body .wp-block-navigation,
body.asm-register-landing-body .wp-block-page-list {
	display: none !important;
}

body.asm-register-landing-body .wp-site-blocks,
body.asm-register-landing-body main.wp-block-group,
body.asm-register-landing-body .is-layout-constrained,
body.asm-register-landing-body .is-layout-flow,
body.asm-register-landing-body .entry-content,
body.asm-register-landing-body .wp-block-post-content,
body.asm-register-landing-body .wp-block-group,
body.asm-register-landing-body .site-main,
body.asm-register-landing-body main,
body.asm-register-landing-body article,
body.asm-register-landing-body .site-content,
body.asm-register-landing-body #content,
body.asm-register-landing-body #page {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
}

body.asm-register-landing-body .wp-block-post-title,
body.asm-register-landing-body .entry-header,
body.asm-register-landing-body .entry-title,
body.asm-register-landing-body h1.entry-title {
	display: none !important;
}

/* Break out of any constrained parent. */
body.asm-register-landing-body .asm-register-landing {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

/* --- Base -------------------------------------------------- */

.asm-register-landing {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #111827;
	background: #ffffff;
}

.asm-register-landing *,
.asm-register-landing *::before,
.asm-register-landing *::after {
	box-sizing: border-box;
}

.asm-register-landing a {
	text-decoration: none;
}

/* --- Header ------------------------------------------------ */

.asm-register-header {
	position: sticky;
	top: 0;
	z-index: 200;
	background: #ffffff;
	border-bottom: 1px solid #e5e7eb;
}

.asm-register-header-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.asm-register-logo-link {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	text-decoration: none;
}

.asm-register-logo-name {
	font-size: 20px;
	font-weight: 700;
	color: #111827;
	letter-spacing: -0.01em;
}

.asm-register-logo-sub {
	font-size: 11px;
	color: #6b7280;
	font-weight: 400;
}

.asm-register-nav {
	display: flex;
	align-items: center;
	gap: 4px;
}

.asm-register-nav-link {
	padding: 8px 14px;
	font-size: 14px;
	font-weight: 500;
	color: #374151;
	border-radius: 6px;
	transition: color 0.15s, background 0.15s;
}

.asm-register-nav-link:hover {
	color: #5b6cf9;
	background: #eef0ff;
}

.asm-register-nav-btn {
	margin-left: 4px;
	padding: 8px 18px;
	font-size: 14px;
	font-weight: 600;
	color: #ffffff;
	background: #5b6cf9;
	border-radius: 6px;
	transition: background 0.15s;
}

.asm-register-nav-btn:hover {
	background: #4f46e5;
	color: #ffffff;
}

/* --- Hero -------------------------------------------------- */

.asm-register-hero {
	background: #ffffff;
	padding: 72px 0 80px;
}

.asm-register-hero-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 64px;
	align-items: center;
}

.asm-register-hero-text {
	max-width: 580px;
}

.asm-register-headline {
	font-size: 48px;
	font-weight: 800;
	line-height: 1.1;
	color: #111827;
	letter-spacing: -0.02em;
	margin: 0 0 22px;
}

.asm-register-accent {
	color: #5b6cf9;
}

.asm-register-desc {
	font-size: 17px;
	color: #4b5563;
	line-height: 1.7;
	margin: 0 0 32px;
}

.asm-register-hero-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 28px;
}

.asm-register-btn-primary {
	display: inline-block;
	padding: 14px 28px;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	background: #5b6cf9;
	border-radius: 8px;
	transition: background 0.15s, transform 0.1s;
}

.asm-register-btn-primary:hover {
	background: #4f46e5;
	color: #ffffff;
	transform: translateY(-1px);
}

.asm-register-btn-outline {
	display: inline-block;
	padding: 14px 28px;
	font-size: 16px;
	font-weight: 600;
	color: #111827;
	background: transparent;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	transition: border-color 0.15s, color 0.15s;
}

.asm-register-btn-outline:hover {
	border-color: #5b6cf9;
	color: #5b6cf9;
}

.asm-register-trust {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}

.asm-register-trust-item {
	font-size: 13px;
	color: #6b7280;
}

/* --- Registration form card ------------------------------- */

.asm-register-form-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 32px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07);
}

.asm-register-form-title {
	font-size: 22px;
	font-weight: 700;
	color: #111827;
	margin: 0 0 24px;
	text-align: center;
}

.asm-register-field {
	margin-bottom: 16px;
}

.asm-register-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #374151;
	margin-bottom: 6px;
}

.asm-register-input {
	width: 100%;
	padding: 10px 14px;
	font-size: 15px;
	color: #111827;
	background: #ffffff;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	outline: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.asm-register-input:focus {
	border-color: #5b6cf9;
	box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}

.asm-register-input::placeholder {
	color: #9ca3af;
}

.asm-register-submit {
	display: block;
	width: 100%;
	padding: 13px 20px;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	background: #5b6cf9;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	margin-top: 8px;
	transition: background 0.15s, transform 0.1s;
}

.asm-register-submit:hover {
	background: #4f46e5;
	transform: translateY(-1px);
}

.asm-register-login-link {
	text-align: center;
	font-size: 13px;
	color: #6b7280;
	margin: 16px 0 0;
}

.asm-register-login-link a {
	color: #5b6cf9;
	font-weight: 500;
}

.asm-register-login-link a:hover {
	text-decoration: underline;
}

/* Flash messages inside landing form card */
.asm-register-form-card .asm-error,
.asm-register-form-card .asm-success {
	border-radius: 8px;
	margin-bottom: 16px;
}

/* --- Header badge + logo row ------------------------------- */

.asm-register-logo {
	display: flex;
	align-items: center;
	gap: 12px;
}

.asm-register-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #5b6cf9;
	background: #eef0ff;
	border: 1px solid #c7ccfb;
	border-radius: 20px;
	padding: 3px 10px;
}

/* --- Hero kicker + note ------------------------------------ */

.asm-register-kicker {
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	color: #5b6cf9;
	background: #eef0ff;
	border: 1px solid #c7ccfb;
	border-radius: 20px;
	padding: 5px 14px;
	margin-bottom: 20px;
}

.asm-register-hero-note {
	font-size: 13px;
	color: #6b7280;
	margin: 18px 0 0;
}

.asm-register-form-sub {
	font-size: 13px;
	color: #6b7280;
	text-align: center;
	line-height: 1.5;
	margin: 0 0 20px;
}

/* --- Product preview (decorative status card) -------------- */

.asm-register-preview-section {
	background: #f9fafb;
	padding: 56px 0;
	border-top: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
}

.asm-register-preview-inner {
	max-width: 680px;
	margin: 0 auto;
	padding: 0 24px;
}

.asm-register-preview-card {
	background: linear-gradient(180deg, #ffffff 0%, #f4f3ff 100%);
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 10px 40px rgba(99, 102, 241, 0.08);
}

.asm-register-preview-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-bottom: 16px;
	margin-bottom: 8px;
	border-bottom: 1px solid #eef0f2;
}

.asm-register-preview-title {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
}

.asm-register-preview-tag {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.asm-register-preview-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid #f3f4f6;
}

.asm-register-preview-row:last-child {
	border-bottom: none;
}

.asm-register-preview-step {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	font-weight: 500;
	color: #374151;
}

.asm-register-preview-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #eef2f7;
	color: #6b7280;
	font-size: 12px;
	font-weight: 700;
	flex: 0 0 auto;
}

.asm-register-preview-status {
	font-size: 12px;
	font-weight: 600;
	padding: 3px 10px;
	border-radius: 12px;
	white-space: nowrap;
}

.asm-register-preview-status--ok {
	color: #1e7e34;
	background: #e6f4ea;
	border: 1px solid #b7e1c1;
}

.asm-register-preview-status--wait {
	color: #8a6d0b;
	background: #fcf3cd;
	border: 1px solid #f0e0a0;
}

.asm-register-preview-status--idle {
	color: #6b7280;
	background: #f0f0f1;
	border: 1px solid #dcdcde;
}

/* --- Content sections (features + steps) ------------------- */

.asm-register-section {
	background: #ffffff;
	padding: 72px 0;
}

.asm-register-section-alt {
	background: #f9fafb;
	border-top: 1px solid #e5e7eb;
}

.asm-register-section-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
}

.asm-register-section-title {
	font-size: 32px;
	font-weight: 800;
	color: #111827;
	text-align: center;
	margin: 0 0 12px;
	letter-spacing: -0.01em;
}

.asm-register-section-sub {
	font-size: 16px;
	color: #6b7280;
	text-align: center;
	max-width: 640px;
	margin: 0 auto 44px;
	line-height: 1.6;
}

.asm-register-feature-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.asm-register-feature-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 24px;
	transition: box-shadow 0.15s, transform 0.15s;
}

.asm-register-feature-card:hover {
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
	transform: translateY(-2px);
}

.asm-register-feature-title {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	margin-bottom: 8px;
}

.asm-register-feature-text {
	font-size: 14px;
	color: #4b5563;
	line-height: 1.6;
	margin: 0;
}

.asm-register-steps {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.asm-register-step-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 24px;
}

.asm-register-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #5b6cf9;
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 14px;
}

.asm-register-step-title {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	margin-bottom: 8px;
}

.asm-register-step-text {
	font-size: 14px;
	color: #4b5563;
	line-height: 1.6;
	margin: 0;
}

/* --- Footer brand ------------------------------------------ */

.asm-register-footer-brand {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: 520px;
}

.asm-register-footer-name {
	font-size: 14px;
	font-weight: 700;
	color: #ffffff;
}

.asm-register-footer-tagline {
	font-size: 13px;
	color: #9ca3af;
	line-height: 1.5;
}

/* --- Final CTA block (no pricing) -------------------------- */

.asm-register-final-cta {
	background: #5b6cf9;
	padding: 80px 0;
}

.asm-register-cta-inner {
	max-width: 700px;
	margin: 0 auto;
	padding: 0 24px;
	text-align: center;
}

.asm-register-cta-title {
	font-size: 36px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 16px;
	letter-spacing: -0.01em;
}

.asm-register-cta-desc {
	font-size: 17px;
	color: rgba(255, 255, 255, 0.85);
	margin: 0 0 32px;
	line-height: 1.6;
}

.asm-register-cta-actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}

.asm-register-final-cta .asm-register-btn-primary {
	background: #ffffff;
	color: #5b6cf9;
	font-size: 16px;
	padding: 14px 36px;
}

.asm-register-final-cta .asm-register-btn-primary:hover {
	background: #eef0ff;
	color: #4f46e5;
}

.asm-register-cta-outline {
	display: inline-block;
	padding: 14px 36px;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	background: transparent;
	border: 2px solid rgba(255, 255, 255, 0.6);
	border-radius: 8px;
	transition: border-color 0.15s, background 0.15s;
}

.asm-register-cta-outline:hover {
	border-color: #ffffff;
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

/* --- Footer ------------------------------------------------ */

.asm-register-footer {
	background: #111827;
	padding: 28px 0;
}

.asm-register-footer-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
}

.asm-register-footer-copy {
	font-size: 13px;
	color: #9ca3af;
}

.asm-register-footer-links {
	display: flex;
	gap: 24px;
}

.asm-register-footer-link {
	font-size: 13px;
	color: #9ca3af;
	transition: color 0.15s;
}

.asm-register-footer-link:hover {
	color: #ffffff;
}

/* --- Responsive ------------------------------------------- */

@media (max-width: 1024px) {
	.asm-register-hero-inner {
		grid-template-columns: 1fr 380px;
		gap: 48px;
	}

	.asm-register-headline {
		font-size: 40px;
	}
}

@media (max-width: 860px) {
	.asm-register-hero-inner {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.asm-register-hero-text {
		max-width: 100%;
	}

	.asm-register-headline {
		font-size: 36px;
	}

	.asm-register-form-card {
		max-width: 480px;
	}

	.asm-register-feature-grid,
	.asm-register-steps {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.asm-register-header-inner {
		padding: 0 16px;
	}

	.asm-register-nav .asm-register-nav-link {
		display: none;
	}

	.asm-register-hero {
		padding: 40px 0 48px;
	}

	.asm-register-hero-inner {
		padding: 0 16px;
		gap: 32px;
	}

	.asm-register-hero-text {
		max-width: 100%;
	}

	.asm-register-headline {
		font-size: 30px;
	}

	.asm-register-desc {
		font-size: 15px;
	}

	.asm-register-hero-actions {
		flex-direction: column;
	}

	.asm-register-btn-primary,
	.asm-register-btn-outline {
		text-align: center;
		width: 100%;
	}

	.asm-register-form-card {
		padding: 24px 20px;
		max-width: 100%;
	}

	.asm-register-section {
		padding: 48px 0;
	}

	.asm-register-section-inner,
	.asm-register-preview-inner {
		padding: 0 16px;
	}

	.asm-register-section-title {
		font-size: 26px;
	}

	.asm-register-feature-grid,
	.asm-register-steps {
		grid-template-columns: 1fr;
	}

	.asm-register-final-cta {
		padding: 56px 0;
	}

	.asm-register-cta-title {
		font-size: 26px;
	}

	.asm-register-cta-desc {
		font-size: 15px;
	}

	.asm-register-cta-actions {
		flex-direction: column;
	}

	.asm-register-final-cta .asm-register-btn-primary,
	.asm-register-cta-outline {
		text-align: center;
		width: 100%;
	}

	.asm-register-footer-inner {
		flex-direction: column;
		align-items: flex-start;
		padding: 0 16px;
	}
}

/* ============================================================
   Login Landing Page — /login public SaaS page.

   Mirrors the register landing style. All rules scoped to
   body.asm-login-landing-body and .asm-login-landing so they
   never affect the cabinet or any other page.
   ============================================================ */

/* --- Kill theme chrome on /login -------------------------- */

body.asm-login-landing-body {
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
}

body.asm-login-landing-body header.wp-block-template-part,
body.asm-login-landing-body footer.wp-block-template-part,
body.asm-login-landing-body .wp-site-blocks > header,
body.asm-login-landing-body .wp-site-blocks > footer,
body.asm-login-landing-body .wp-block-site-title,
body.asm-login-landing-body .wp-block-navigation,
body.asm-login-landing-body .wp-block-page-list {
	display: none !important;
}

body.asm-login-landing-body .wp-site-blocks,
body.asm-login-landing-body main.wp-block-group,
body.asm-login-landing-body .is-layout-constrained,
body.asm-login-landing-body .is-layout-flow,
body.asm-login-landing-body .entry-content,
body.asm-login-landing-body .wp-block-post-content,
body.asm-login-landing-body .wp-block-group,
body.asm-login-landing-body .site-main,
body.asm-login-landing-body main,
body.asm-login-landing-body article,
body.asm-login-landing-body .site-content,
body.asm-login-landing-body #content,
body.asm-login-landing-body #page {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
}

body.asm-login-landing-body .wp-block-post-title,
body.asm-login-landing-body .entry-header,
body.asm-login-landing-body .entry-title,
body.asm-login-landing-body h1.entry-title {
	display: none !important;
}

body.asm-login-landing-body .asm-login-landing {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

/* --- Base -------------------------------------------------- */

.asm-login-landing {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #111827;
	background: #ffffff;
}

.asm-login-landing *,
.asm-login-landing *::before,
.asm-login-landing *::after {
	box-sizing: border-box;
}

.asm-login-landing a {
	text-decoration: none;
}

/* --- Header ------------------------------------------------ */

.asm-login-header {
	position: sticky;
	top: 0;
	z-index: 200;
	background: #ffffff;
	border-bottom: 1px solid #e5e7eb;
}

.asm-login-header-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.asm-login-logo-link {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	text-decoration: none;
}

.asm-login-logo-name {
	font-size: 20px;
	font-weight: 700;
	color: #111827;
	letter-spacing: -0.01em;
}

.asm-login-logo-sub {
	font-size: 11px;
	color: #6b7280;
	font-weight: 400;
}

.asm-login-nav {
	display: flex;
	align-items: center;
	gap: 4px;
}

.asm-login-nav-link {
	padding: 8px 14px;
	font-size: 14px;
	font-weight: 500;
	color: #374151;
	border-radius: 6px;
	transition: color 0.15s, background 0.15s;
}

.asm-login-nav-link:hover {
	color: #5b6cf9;
	background: #eef0ff;
}

.asm-login-nav-link-active {
	color: #5b6cf9;
	background: #eef0ff;
}

.asm-login-nav-btn {
	margin-left: 4px;
	padding: 8px 18px;
	font-size: 14px;
	font-weight: 600;
	color: #5b6cf9;
	background: transparent;
	border: 2px solid #5b6cf9;
	border-radius: 6px;
	transition: background 0.15s, color 0.15s;
}

.asm-login-nav-btn:hover {
	background: #5b6cf9;
	color: #ffffff;
}

/* --- Hero / login section ---------------------------------- */

.asm-login-hero {
	background: #ffffff;
	padding: 72px 0 80px;
	min-height: calc(100vh - 64px - 68px);
	display: flex;
	align-items: center;
}

.asm-login-hero-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 64px;
	align-items: center;
}

/* --- Left copy column ------------------------------------- */

.asm-login-copy {
	max-width: 520px;
}

.asm-login-headline {
	font-size: 44px;
	font-weight: 800;
	line-height: 1.12;
	color: #111827;
	letter-spacing: -0.02em;
	margin: 0 0 22px;
}

.asm-login-accent {
	color: #5b6cf9;
}

.asm-login-desc {
	font-size: 17px;
	color: #4b5563;
	line-height: 1.7;
	margin: 0 0 32px;
}

.asm-login-trust {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.asm-login-trust-item {
	font-size: 14px;
	color: #6b7280;
	display: flex;
	align-items: center;
	gap: 8px;
}

/* --- Login form card --------------------------------------- */

.asm-login-form-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 32px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07);
}

.asm-login-form-title {
	font-size: 22px;
	font-weight: 700;
	color: #111827;
	margin: 0 0 24px;
	text-align: center;
}

.asm-login-field {
	margin-bottom: 16px;
}

.asm-login-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #374151;
	margin-bottom: 6px;
}

.asm-login-input {
	width: 100%;
	padding: 10px 14px;
	font-size: 15px;
	color: #111827;
	background: #ffffff;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	outline: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.asm-login-input:focus {
	border-color: #5b6cf9;
	box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}

.asm-login-input::placeholder {
	color: #9ca3af;
}

.asm-login-submit {
	display: block;
	width: 100%;
	padding: 13px 20px;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	background: #5b6cf9;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	margin-top: 8px;
	transition: background 0.15s, transform 0.1s;
}

.asm-login-submit:hover {
	background: #4f46e5;
	transform: translateY(-1px);
}

.asm-login-register-link {
	text-align: center;
	font-size: 13px;
	color: #6b7280;
	margin: 16px 0 0;
}

.asm-login-register-link a {
	color: #5b6cf9;
	font-weight: 500;
}

.asm-login-register-link a:hover {
	text-decoration: underline;
}

/* Flash messages inside login form card */
.asm-login-form-card .asm-error,
.asm-login-form-card .asm-success {
	border-radius: 8px;
	margin-bottom: 16px;
}

/* --- Footer ------------------------------------------------ */

.asm-login-footer {
	background: #111827;
	padding: 28px 0;
}

.asm-login-footer-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
}

.asm-login-footer-copy {
	font-size: 13px;
	color: #9ca3af;
}

.asm-login-footer-links {
	display: flex;
	gap: 24px;
}

.asm-login-footer-link {
	font-size: 13px;
	color: #9ca3af;
	transition: color 0.15s;
}

.asm-login-footer-link:hover {
	color: #ffffff;
}

/* --- Responsive ------------------------------------------- */

@media (max-width: 1024px) {
	.asm-login-hero-inner {
		grid-template-columns: 1fr 380px;
		gap: 48px;
	}

	.asm-login-headline {
		font-size: 36px;
	}
}

@media (max-width: 860px) {
	.asm-login-hero {
		align-items: flex-start;
		padding: 48px 0 56px;
		min-height: auto;
	}

	.asm-login-hero-inner {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.asm-login-copy {
		max-width: 100%;
	}

	.asm-login-headline {
		font-size: 32px;
	}

	.asm-login-form-card {
		max-width: 480px;
	}
}

@media (max-width: 640px) {
	.asm-login-header-inner {
		padding: 0 16px;
	}

	.asm-login-nav .asm-login-nav-link {
		display: none;
	}

	.asm-login-hero {
		padding: 36px 0 44px;
	}

	.asm-login-hero-inner {
		padding: 0 16px;
		gap: 28px;
	}

	.asm-login-headline {
		font-size: 26px;
	}

	.asm-login-desc {
		font-size: 15px;
	}

	.asm-login-form-card {
		padding: 24px 20px;
		max-width: 100%;
	}

	.asm-login-footer-inner {
		flex-direction: column;
		align-items: flex-start;
		padding: 0 16px;
	}
}

/* ============================================================
   Wazzup channels table — scoped to .asm-app-shell
   ============================================================ */

.asm-app-shell .asm-channels-empty {
	color: #646970;
	font-size: 14px;
	line-height: 1.6;
	padding: 8px 0;
}

.asm-app-shell .asm-channels-form {
	margin: 0;
}

.asm-app-shell .asm-channels-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	overflow: hidden;
}

.asm-app-shell .asm-channels-table thead th {
	background: #f6f7f7;
	border-bottom: 1px solid #dcdcde;
	padding: 10px 14px;
	text-align: left;
	font-size: 12px;
	font-weight: 600;
	color: #3c434a;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.asm-app-shell .asm-channels-table tbody td {
	padding: 10px 14px;
	border-bottom: 1px solid #f0f0f1;
	vertical-align: middle;
	color: #1d2327;
}

.asm-app-shell .asm-channels-table tbody tr:last-child td {
	border-bottom: none;
}

.asm-app-shell .asm-channels-table tbody tr.asm-ch-row:hover td {
	background: #f6f7f7;
}

.asm-app-shell .asm-channels-table tbody tr.asm-ch-row-active td {
	background: #f0f6fc;
}

.asm-app-shell .asm-ch-col-select {
	width: 48px;
	text-align: center;
}

.asm-app-shell .asm-channel-radio {
	width: 18px;
	height: 18px;
	cursor: pointer;
	accent-color: #5b6cf9;
}

.asm-app-shell .asm-ch-badge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 3px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: #dcdcde;
	color: #3c434a;
}

.asm-app-shell .asm-ch-badge-whatsapp {
	background: #dcfce7;
	color: #14532d;
}

.asm-app-shell .asm-ch-badge-telegram {
	background: #dbeafe;
	color: #1e3a5f;
}

.asm-app-shell .asm-ch-badge-instagram {
	background: #fce7f3;
	color: #831843;
}

.asm-app-shell .asm-ch-state {
	font-size: 13px;
	color: #646970;
}

.asm-app-shell .asm-ch-state-active {
	color: #00a32a;
	font-weight: 600;
}

.asm-app-shell .asm-ch-state-inactive,
.asm-app-shell .asm-ch-state-disabled {
	color: #b32d2e;
}

.asm-app-shell .asm-card-secondary {
	opacity: 0.85;
	border-color: #dcdcde;
}

.asm-app-shell .asm-card-secondary .asm-card-title {
	font-size: 15px;
	color: #646970;
}

/* ============================================================
   Google Sheets Tools page — new UI blocks.
   All rules scoped to body.asm-cabinet-body so they only
   affect the cabinet and never bleed into the rest of the site.
   ============================================================ */

/* Page header */
body.asm-cabinet-body .asm-tools-page-header {
	margin: 0 0 16px !important;
}

body.asm-cabinet-body .asm-tools-page-header h2 {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 4px !important;
	padding: 0 !important;
	border: none !important;
	line-height: 1.4 !important;
}

body.asm-cabinet-body .asm-tools-page-header p {
	font-size: 13px !important;
	color: #646970 !important;
	margin: 0 !important;
	line-height: 1.5 !important;
}

/* Help card */
body.asm-cabinet-body .asm-tools-help-card {
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 16px !important;
	margin: 0 0 16px !important;
}

body.asm-cabinet-body .asm-tools-help-card h3 {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 10px !important;
	padding: 0 0 8px !important;
	border: none !important;
	border-bottom: 1px solid #f0f0f1 !important;
	line-height: 1.4 !important;
}

body.asm-cabinet-body .asm-tools-help-card ol {
	margin: 0 0 14px !important;
	padding-left: 22px !important;
}

body.asm-cabinet-body .asm-tools-help-card ol li {
	font-size: 13px !important;
	color: #2c3338 !important;
	line-height: 1.6 !important;
	margin-bottom: 2px !important;
	padding: 0 !important;
	list-style: decimal !important;
	font-weight: 400 !important;
}

/* Service account box */
body.asm-cabinet-body .asm-service-account-box {
	background: #f6f7f7 !important;
	border: 1px solid #dcdcde !important;
	border-left: 3px solid #5b6cf9 !important;
	padding: 10px 12px !important;
	margin: 0 !important;
}

body.asm-cabinet-body .asm-service-account-label {
	display: block !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #646970 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	line-height: 1.4 !important;
}

body.asm-cabinet-body .asm-service-account-row {
	display: flex !important;
	gap: 8px !important;
	align-items: center !important;
	flex-wrap: wrap !important;
}

body.asm-cabinet-body .asm-service-account-email {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
	font-size: 13px !important;
	color: #1d2327 !important;
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 3px !important;
	padding: 5px 8px !important;
	max-width: none !important;
	width: auto !important;
	flex: 1 1 auto !important;
	min-width: 240px !important;
	min-height: auto !important;
	line-height: 1.4 !important;
	cursor: text !important;
}

body.asm-cabinet-body .asm-copy-email-btn {
	flex: 0 0 auto !important;
	white-space: nowrap !important;
	cursor: pointer !important;
}

/* Usage card */
body.asm-cabinet-body .asm-tool-usage-card {
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-left: 4px solid #5b6cf9 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 16px !important;
	margin: 0 0 16px !important;
}

body.asm-cabinet-body .asm-tool-usage-card h3 {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 10px !important;
	padding: 0 0 8px !important;
	border: none !important;
	border-bottom: 1px solid #f0f0f1 !important;
	line-height: 1.4 !important;
}

body.asm-cabinet-body .asm-tool-usage-card p {
	font-size: 13px !important;
	color: #2c3338 !important;
	line-height: 1.6 !important;
	margin: 0 0 10px !important;
}

body.asm-cabinet-body .asm-tool-usage-card p:last-of-type {
	margin-bottom: 14px !important;
}

body.asm-cabinet-body .asm-tool-usage-card code {
	background: #f6f7f7 !important;
	border: 1px solid #dcdcde !important;
	padding: 1px 5px !important;
	border-radius: 3px !important;
	font-size: 12px !important;
	color: #1d2327 !important;
}

/* Empty state */
body.asm-cabinet-body .asm-tools-empty-state {
	background: #fff !important;
	border: 1px dashed #c3c4c7 !important;
	border-radius: 0 !important;
	padding: 28px 20px !important;
	text-align: center !important;
}

body.asm-cabinet-body .asm-tools-empty-icon {
	font-size: 28px !important;
	line-height: 1 !important;
	margin-bottom: 8px !important;
}

body.asm-cabinet-body .asm-tools-empty-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin-bottom: 4px !important;
}

body.asm-cabinet-body .asm-tools-empty-desc {
	font-size: 13px !important;
	color: #646970 !important;
}

/* Mobile — collapse service account row */
@media (max-width: 640px) {
	body.asm-cabinet-body .asm-service-account-row {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	body.asm-cabinet-body .asm-service-account-email {
		min-width: 0 !important;
		width: 100% !important;
	}

	body.asm-cabinet-body .asm-copy-email-btn {
		width: 100% !important;
		text-align: center !important;
	}
}

/* ============================================================
   Dashboard v2 — SaaS operations console.

   Scoped to body.asm-cabinet-body so it never affects the rest
   of the site. WordPress Admin inspired: light #f0f0f1 work area,
   white cards, thin #c3c4c7 / #dcdcde borders, green = ready,
   yellow/gray = needs setup, red = error only.
   ============================================================ */

body.asm-cabinet-body .asm-dashboard-v2 {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	max-width: 1180px !important;
}

body.asm-cabinet-body .asm-dashboard-v2 * {
	box-sizing: border-box !important;
}

/* ---------- Shared card ---------- */
body.asm-cabinet-body .asm-dashboard-card {
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 4px !important;
	padding: 18px 20px !important;
	box-shadow: none !important;
}

body.asm-cabinet-body .asm-dashboard-card-title {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 4px !important;
	line-height: 1.3 !important;
}

body.asm-cabinet-body .asm-dashboard-card-desc {
	font-size: 13px !important;
	color: #646970 !important;
	margin: 0 0 16px !important;
	line-height: 1.5 !important;
}

/* ---------- Status badges ---------- */
body.asm-cabinet-body .asm-dashboard-badge {
	display: inline-block !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	padding: 2px 9px !important;
	border-radius: 11px !important;
	border: 1px solid #dcdcde !important;
	background: #f0f0f1 !important;
	color: #50575e !important;
	white-space: nowrap !important;
}

body.asm-cabinet-body .asm-dashboard-badge strong {
	font-weight: 600 !important;
	color: inherit !important;
}

body.asm-cabinet-body .asm-dashboard-badge-ok {
	background: #edfaef !important;
	color: #08611c !important;
	border-color: #b8e0bb !important;
}

body.asm-cabinet-body .asm-dashboard-badge-warn {
	background: #fcf9e8 !important;
	color: #674c00 !important;
	border-color: #f0e6a8 !important;
}

body.asm-cabinet-body .asm-dashboard-badge-error {
	background: #fcf0f1 !important;
	color: #8a1f1f !important;
	border-color: #f1bcbc !important;
}

body.asm-cabinet-body .asm-dashboard-badge-neutral {
	background: #f0f0f1 !important;
	color: #50575e !important;
	border-color: #dcdcde !important;
}

/* ---------- Hero / status ---------- */
body.asm-cabinet-body .asm-dashboard-hero {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 24px !important;
	background: #fff !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 4px !important;
	padding: 24px !important;
}

body.asm-cabinet-body .asm-dashboard-hero-main {
	min-width: 0 !important;
	flex: 1 1 auto !important;
}

body.asm-cabinet-body .asm-dashboard-hero-title {
	font-size: 22px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 8px !important;
	line-height: 1.25 !important;
}

body.asm-cabinet-body .asm-dashboard-hero-sub {
	font-size: 14px !important;
	color: #50575e !important;
	line-height: 1.55 !important;
	margin: 0 0 18px !important;
	max-width: 640px !important;
}

body.asm-cabinet-body .asm-dashboard-hero-cta {
	margin: 0 !important;
}

body.asm-cabinet-body .asm-dashboard-badges {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
	flex: 0 0 auto !important;
	min-width: 220px !important;
}

/* ---------- Two-column layout ---------- */
body.asm-cabinet-body .asm-dashboard-columns {
	display: grid !important;
	grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) !important;
	gap: 16px !important;
	align-items: start !important;
}

body.asm-cabinet-body .asm-dashboard-col-main,
body.asm-cabinet-body .asm-dashboard-col-side {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	min-width: 0 !important;
}

/* ---------- Readiness checklist ---------- */
body.asm-cabinet-body .asm-dashboard-checklist {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

body.asm-cabinet-body .asm-dashboard-check-item {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
	padding: 12px !important;
	border: 1px solid #dcdcde !important;
	border-radius: 4px !important;
	background: #fff !important;
	margin: 0 !important;
}

body.asm-cabinet-body .asm-dashboard-check-icon {
	flex: 0 0 26px !important;
	width: 26px !important;
	height: 26px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50% !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	border: 1px solid #dcdcde !important;
	background: #f0f0f1 !important;
	color: #50575e !important;
}

body.asm-cabinet-body .asm-dashboard-check-icon-ok {
	background: #edfaef !important;
	color: #08611c !important;
	border-color: #b8e0bb !important;
}

body.asm-cabinet-body .asm-dashboard-check-icon-warn {
	background: #fcf9e8 !important;
	color: #674c00 !important;
	border-color: #f0e6a8 !important;
}

body.asm-cabinet-body .asm-dashboard-check-icon-error {
	background: #fcf0f1 !important;
	color: #8a1f1f !important;
	border-color: #f1bcbc !important;
}

body.asm-cabinet-body .asm-dashboard-check-content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

body.asm-cabinet-body .asm-dashboard-check-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin-bottom: 2px !important;
}

body.asm-cabinet-body .asm-dashboard-check-desc {
	font-size: 12.5px !important;
	color: #646970 !important;
	line-height: 1.45 !important;
	margin-bottom: 8px !important;
}

body.asm-cabinet-body .asm-dashboard-check-action {
	flex: 0 0 auto !important;
	display: flex !important;
	align-items: center !important;
}

/* ---------- Next step ---------- */
body.asm-cabinet-body .asm-dashboard-next-step {
	border-left: 3px solid #5b6cf9 !important;
}

body.asm-cabinet-body .asm-dashboard-next-step-body {
	background: #f6f7f7 !important;
	border: 1px solid #dcdcde !important;
	border-radius: 4px !important;
	padding: 14px !important;
}

body.asm-cabinet-body .asm-dashboard-next-step-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin-bottom: 4px !important;
}

body.asm-cabinet-body .asm-dashboard-next-step-text {
	font-size: 13px !important;
	color: #50575e !important;
	line-height: 1.5 !important;
	margin: 0 0 14px !important;
}

/* ---------- System state ---------- */
body.asm-cabinet-body .asm-dashboard-status-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 10px !important;
}

body.asm-cabinet-body .asm-dashboard-status-card {
	border: 1px solid #dcdcde !important;
	border-radius: 4px !important;
	padding: 12px !important;
	background: #fafafa !important;
	min-width: 0 !important;
}

body.asm-cabinet-body .asm-dashboard-status-card-title {
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.03em !important;
	color: #646970 !important;
	margin-bottom: 8px !important;
}

body.asm-cabinet-body .asm-dashboard-status-card-body {
	display: flex !important;
	flex-direction: column !important;
	gap: 5px !important;
	font-size: 13px !important;
	color: #1d2327 !important;
}

body.asm-cabinet-body .asm-dashboard-status-card-body > div {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	flex-wrap: wrap !important;
	word-break: break-word !important;
}

body.asm-cabinet-body .asm-dashboard-status-k {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #646970 !important;
}

body.asm-cabinet-body .asm-dashboard-status-card-body code {
	background: #fff !important;
	border: 1px solid #dcdcde !important;
	padding: 1px 6px !important;
	border-radius: 3px !important;
	font-size: 11.5px !important;
	color: #1d2327 !important;
	word-break: break-all !important;
}

body.asm-cabinet-body .asm-dashboard-status-note {
	font-size: 12px !important;
	color: #08611c !important;
	font-weight: 500 !important;
}

body.asm-cabinet-body .asm-dashboard-status-empty {
	font-size: 12.5px !important;
	color: #674c00 !important;
}

body.asm-cabinet-body .asm-dashboard-status-error {
	font-size: 12px !important;
	color: #8a1f1f !important;
	line-height: 1.45 !important;
	word-break: break-word !important;
}

/* ---------- Quick actions ---------- */
body.asm-cabinet-body .asm-dashboard-actions {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 12px !important;
}

body.asm-cabinet-body .asm-dashboard-action-card {
	display: flex !important;
	flex-direction: column !important;
	border: 1px solid #dcdcde !important;
	border-radius: 4px !important;
	padding: 14px !important;
	background: #fff !important;
	text-decoration: none !important;
	color: inherit !important;
	transition: border-color 0.12s ease, box-shadow 0.12s ease !important;
	min-width: 0 !important;
}

body.asm-cabinet-body .asm-dashboard-action-card:hover {
	border-color: #5b6cf9 !important;
	box-shadow: 0 1px 4px rgba(34, 113, 177, 0.12) !important;
}

body.asm-cabinet-body .asm-dashboard-action-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin-bottom: 6px !important;
}

body.asm-cabinet-body .asm-dashboard-action-text {
	font-size: 12.5px !important;
	color: #50575e !important;
	line-height: 1.45 !important;
	margin: 0 0 12px !important;
	flex: 1 1 auto !important;
}

body.asm-cabinet-body .asm-dashboard-action-cta {
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #5b6cf9 !important;
	margin-top: auto !important;
}

body.asm-cabinet-body .asm-dashboard-action-card:hover .asm-dashboard-action-cta {
	color: #4f46e5 !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
	body.asm-cabinet-body .asm-dashboard-columns {
		grid-template-columns: 1fr !important;
	}

	body.asm-cabinet-body .asm-dashboard-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 782px) {
	body.asm-cabinet-body .asm-dashboard-hero {
		flex-direction: column !important;
	}

	body.asm-cabinet-body .asm-dashboard-badges {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		min-width: 0 !important;
		width: 100% !important;
	}
}

@media (max-width: 600px) {
	body.asm-cabinet-body .asm-dashboard-status-grid,
	body.asm-cabinet-body .asm-dashboard-actions {
		grid-template-columns: 1fr !important;
	}

	body.asm-cabinet-body .asm-dashboard-check-item {
		flex-wrap: wrap !important;
	}

	body.asm-cabinet-body .asm-dashboard-check-action {
		width: 100% !important;
		padding-left: 38px !important;
	}

	body.asm-cabinet-body .asm-dashboard-check-action .asm-button-secondary {
		width: 100% !important;
		text-align: center !important;
	}
}

/* ============================================================
   Tools overview — status badge on tiles
   ============================================================ */

body.asm-cabinet-body .asm-tools-tile-status {
	display: inline-block !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	padding: 2px 8px !important;
	border-radius: 10px !important;
	margin-bottom: 6px !important;
	letter-spacing: 0.02em !important;
}

body.asm-cabinet-body .asm-tools-tile-status-ok {
	background: #d7fada !important;
	color: #166534 !important;
}

body.asm-cabinet-body .asm-tools-tile-status-neutral {
	background: #f0f0f1 !important;
	color: #646970 !important;
}

/* ============================================================
   Stop-List page
   ============================================================ */

body.asm-cabinet-body .asm-stop-list-page {
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
}

/* Help cards grid */
body.asm-cabinet-body .asm-stop-list-help-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
}

body.asm-cabinet-body .asm-stop-list-help-card {
	background: #fff !important;
	border: 1px solid #e2e4e7 !important;
	border-radius: 4px !important;
	padding: 20px 24px !important;
}

body.asm-cabinet-body .asm-stop-list-help-card h3 {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 10px !important;
}

body.asm-cabinet-body .asm-stop-list-help-card p,
body.asm-cabinet-body .asm-stop-list-help-card ol {
	font-size: 13px !important;
	color: #3c434a !important;
	line-height: 1.6 !important;
	margin: 0 0 10px !important;
}

body.asm-cabinet-body .asm-stop-list-help-card ol {
	padding-left: 18px !important;
}

body.asm-cabinet-body .asm-stop-list-help-card li {
	margin-bottom: 4px !important;
}

body.asm-cabinet-body .asm-stop-list-help-note {
	font-size: 12px !important;
	color: #646970 !important;
}

/* Warning block */
body.asm-cabinet-body .asm-stop-list-warning {
	background: #fff8e5 !important;
	border-left: 3px solid #dba617 !important;
	padding: 10px 14px !important;
	border-radius: 0 3px 3px 0 !important;
	font-size: 12px !important;
	color: #50400b !important;
	line-height: 1.5 !important;
}

/* Service account block */
body.asm-cabinet-body .asm-stop-list-service-account {
	background: #fff !important;
	border: 1px solid #e2e4e7 !important;
	border-radius: 4px !important;
	padding: 16px 20px !important;
}

body.asm-cabinet-body .asm-stop-list-sa-label {
	font-size: 13px !important;
	color: #3c434a !important;
	margin: 0 0 8px !important;
}

body.asm-cabinet-body .asm-stop-list-sa-row {
	display: flex !important;
	gap: 8px !important;
	align-items: center !important;
}

body.asm-cabinet-body .asm-stop-list-sa-input {
	flex: 1 !important;
	font-family: monospace !important;
	font-size: 12px !important;
	padding: 6px 10px !important;
	border: 1px solid #c3c4c7 !important;
	border-radius: 3px !important;
	background: #f6f7f7 !important;
	color: #1d2327 !important;
	min-width: 0 !important;
}

/* Form card */
body.asm-cabinet-body .asm-stop-list-form-card {
	background: #fff !important;
	border: 1px solid #e2e4e7 !important;
	border-radius: 4px !important;
	padding: 24px !important;
}

body.asm-cabinet-body .asm-stop-list-form-card h3 {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 20px !important;
}

body.asm-cabinet-body .asm-stop-list-form {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}

/* Checkbox field variant */
body.asm-cabinet-body .asm-field-checkbox {
	padding: 8px 0 !important;
}

body.asm-cabinet-body .asm-label-checkbox {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #1d2327 !important;
	cursor: pointer !important;
}

body.asm-cabinet-body .asm-label-checkbox input[type="checkbox"] {
	width: 15px !important;
	height: 15px !important;
	cursor: pointer !important;
}

body.asm-cabinet-body .asm-input-time {
	max-width: 140px !important;
}

/* Status card */
body.asm-cabinet-body .asm-stop-list-status-card {
	background: #fff !important;
	border: 1px solid #e2e4e7 !important;
	border-radius: 4px !important;
	padding: 24px !important;
}

body.asm-cabinet-body .asm-stop-list-status-card h3 {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 16px !important;
}

/* Meta grid */
body.asm-cabinet-body .asm-stop-list-meta-grid {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}

body.asm-cabinet-body .asm-stop-list-meta-row {
	display: flex !important;
	align-items: baseline !important;
	gap: 12px !important;
	padding: 7px 0 !important;
	border-bottom: 1px solid #f0f0f1 !important;
	font-size: 13px !important;
}

body.asm-cabinet-body .asm-stop-list-meta-row:last-child {
	border-bottom: none !important;
}

body.asm-cabinet-body .asm-stop-list-meta-key {
	color: #646970 !important;
	min-width: 180px !important;
	flex-shrink: 0 !important;
}

body.asm-cabinet-body .asm-stop-list-meta-val {
	color: #1d2327 !important;
	font-weight: 500 !important;
}

/* Status badges */
body.asm-cabinet-body .asm-stop-list-badge {
	display: inline-block !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	padding: 2px 8px !important;
	border-radius: 10px !important;
	letter-spacing: 0.02em !important;
}

body.asm-cabinet-body .asm-stop-list-badge-active {
	background: #d7fada !important;
	color: #166534 !important;
}

body.asm-cabinet-body .asm-stop-list-badge-inactive {
	background: #f0f0f1 !important;
	color: #646970 !important;
}

body.asm-cabinet-body .asm-stop-list-badge-success {
	background: #d7fada !important;
	color: #166534 !important;
}

body.asm-cabinet-body .asm-stop-list-badge-error {
	background: #fce8e8 !important;
	color: #8a1f1f !important;
}

/* Manual cleanup section */
body.asm-cabinet-body .asm-stop-list-clear-now-section {
	margin-top: 20px !important;
	padding-top: 16px !important;
	border-top: 1px solid #e2e4e7 !important;
}

body.asm-cabinet-body .asm-stop-list-clear-now-section h4 {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #1d2327 !important;
	margin: 0 0 10px !important;
}

body.asm-cabinet-body .asm-stop-list-manual-ok {
	font-size: 13px !important;
	color: #166534 !important;
	margin: 0 0 10px !important;
}

body.asm-cabinet-body .asm-stop-list-manual-running {
	font-style: italic !important;
	margin-bottom: 10px !important;
}

body.asm-cabinet-body .asm-stop-list-clear-form {
	margin-top: 10px !important;
}

body.asm-cabinet-body .asm-stop-list-clear-btn {
	margin-bottom: 6px !important;
}

body.asm-cabinet-body .asm-stop-list-clear-btn:disabled {
	opacity: 0.5 !important;
	cursor: not-allowed !important;
}

/* Responsive */
@media (max-width: 900px) {
	body.asm-cabinet-body .asm-stop-list-help-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 600px) {
	body.asm-cabinet-body .asm-stop-list-meta-key {
		min-width: 130px !important;
	}

	body.asm-cabinet-body .asm-stop-list-sa-row {
		flex-direction: column !important;
		align-items: stretch !important;
	}
}

/* ============================================================
   OctoAgent brand layer
   ------------------------------------------------------------
   Signature octo gradient (violet -> indigo -> cyan), the Octo
   mascot/scene, branded lockups and premium CTA surfaces.
   Loaded last so brand overrides win by source order.
   ============================================================ */

:root {
	--octo-violet: #7c6cff;
	--octo-indigo: #5b6cf9;
	--octo-cyan: #22d3ee;
	--octo-ink: #0f1230;
	--octo-grad: linear-gradient(135deg, #7c6cff 0%, #5b6cf9 52%, #22d3ee 120%);
	--octo-grad-soft: linear-gradient(135deg, #efeaff 0%, #e6f6ff 100%);
}

/* ---------- Octo mascot mark ---------- */
.asm-octo-mark { display: block; width: 100%; height: auto; }
.asm-octo-mark--logo { width: 38px; height: 38px; flex: 0 0 38px; }
.asm-octo-mark--side { width: 34px; height: 34px; flex: 0 0 34px; }
.asm-octo-mark--hero { width: 112px; height: 112px; filter: drop-shadow(0 14px 30px rgba(91, 108, 249, 0.45)); }
.asm-octo-mark--cta { width: 64px; height: 64px; margin: 0 auto 18px; filter: drop-shadow(0 10px 24px rgba(34, 211, 238, 0.35)); }
.asm-octo-mark--inline { width: 18px; height: 18px; flex: 0 0 18px; vertical-align: middle; }

/* ---------- Octo lockup (mark + wordmark) ---------- */
.asm-octo-lockup { display: inline-flex; align-items: center; gap: 11px; }
.asm-octo-lockup-text { display: flex; flex-direction: column; line-height: 1.05; }
.asm-octo-wordmark {
	font-size: 20px; font-weight: 800; letter-spacing: -0.02em; color: var(--octo-ink);
}
.asm-octo-wordmark-accent {
	background: var(--octo-grad);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: transparent;
}
.asm-octo-lockup-sub {
	font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #8a8fb5;
	margin-top: 3px;
}

/* ---------- Gradient CTAs (register + login) ---------- */
.asm-register-nav-btn,
.asm-register-btn-primary,
.asm-register-submit,
.asm-login-submit,
.asm-register-step-num {
	background: var(--octo-grad) !important;
	border: none !important;
	box-shadow: 0 8px 20px rgba(91, 108, 249, 0.28);
}
.asm-register-nav-btn:hover,
.asm-register-btn-primary:hover,
.asm-register-submit:hover,
.asm-login-submit:hover {
	background: var(--octo-grad) !important;
	color: #fff !important;
	filter: brightness(1.05);
	box-shadow: 0 12px 26px rgba(91, 108, 249, 0.38);
}
.asm-login-nav-btn {
	border: 2px solid transparent !important;
	background: var(--octo-grad-soft) !important;
	color: #4f46e5 !important;
}
.asm-login-nav-btn:hover { background: var(--octo-grad) !important; color: #fff !important; }

/* Gradient text accents in headlines */
.asm-register-accent, .asm-login-accent {
	background: var(--octo-grad);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: transparent;
}

/* Kicker pill */
.asm-register-kicker {
	background: var(--octo-grad-soft);
	border-color: #d7d2ff;
	color: #4f46e5;
}
.asm-register-badge {
	background: var(--octo-grad-soft);
	border-color: #d7d2ff;
	color: #4f46e5;
}

/* Soft tinted backgrounds */
.asm-register-preview-card { background: linear-gradient(180deg, #ffffff 0%, #f4f3ff 100%); box-shadow: 0 14px 50px rgba(91, 108, 249, 0.12); }
.asm-register-preview-section { background: #f7f7fc; }

/* Feature icon chip */
.asm-register-feature-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 12px; margin-bottom: 14px;
	font-size: 20px; color: #fff; background: var(--octo-grad);
	box-shadow: 0 8px 18px rgba(91, 108, 249, 0.28);
}
.asm-register-feature-card:hover { box-shadow: 0 14px 36px rgba(91, 108, 249, 0.14); border-color: #d7d2ff; }

/* Final CTA: premium dark-ink surface with octo glow */
.asm-register-final-cta {
	background:
		radial-gradient(1100px 360px at 50% -40%, rgba(124, 108, 255, 0.45), transparent 60%),
		radial-gradient(800px 300px at 85% 120%, rgba(34, 211, 238, 0.30), transparent 60%),
		var(--octo-ink) !important;
	text-align: center;
}
.asm-register-final-cta .asm-register-btn-primary {
	background: #fff !important; color: #4f46e5 !important; box-shadow: 0 10px 24px rgba(0,0,0,0.25);
}
.asm-register-cta-outline { border-color: rgba(255,255,255,0.55); }

/* Header logo link shouldn't inherit theme underline color */
.asm-register-logo-link, .asm-login-logo-link { text-decoration: none; }

/* ============================================================
   Octo scene — mascot coordinating channels & tools
   ============================================================ */
.asm-octo-scene-wrap {
	margin-top: 36px;
	max-width: 580px;
}
.asm-octo-scene {
	position: relative;
	width: 100%;
	max-width: 580px;
	aspect-ratio: 29 / 24;
}
@supports not (aspect-ratio: 1 / 1) {
	.asm-octo-scene { height: 440px; }
}
.asm-octo-scene-glow {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
	width: 50%; height: 60%; border-radius: 50%;
	background: radial-gradient(circle, rgba(124,108,255,0.28), rgba(34,211,238,0.10) 55%, transparent 72%);
	filter: blur(10px);
}
.asm-octo-scene-orbit {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
	border-radius: 50%; pointer-events: none;
}
.asm-octo-scene-orbit--1 { width: 50%; height: 46%; border: 1px dashed rgba(124,108,255,0.16); }
.asm-octo-scene-orbit--2 { width: 88%; height: 86%; border: 1px dashed rgba(124,108,255,0.10); }
.asm-octo-scene-core {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
	display: flex; align-items: center; justify-content: center; z-index: 3;
}
.asm-octo-scene-pulse {
	position: absolute; left: 50%; top: 50%;
	width: 112px; height: 112px; margin: -56px 0 0 -56px;
	border-radius: 50%; border: 1.5px solid rgba(124, 108, 255, 0.35);
	animation: asm-octo-pulse 3.4s ease-out infinite;
}
@keyframes asm-octo-pulse {
	0% { transform: scale(0.78); opacity: 0.8; }
	100% { transform: scale(1.95); opacity: 0; }
}

/* Each chip: wrapper centres on its anchor point; inner carries pill + float
   so the centring transform and the float transform never collide. */
.asm-octo-chip {
	position: absolute;
	transform: translate(-50%, -50%);
	z-index: 2;
}
.asm-octo-chip-inner {
	display: inline-flex; align-items: center; gap: 9px;
	padding: 7px 14px 7px 7px;
	background: #fff;
	border: 1px solid #eceaf6;
	border-radius: 999px;
	box-shadow: 0 10px 26px rgba(15, 18, 48, 0.10), 0 2px 6px rgba(15, 18, 48, 0.05);
	font-size: 13px; font-weight: 600; color: #2c2f4a; line-height: 1;
	white-space: nowrap;
	animation: asm-octo-float 6s ease-in-out infinite;
	animation-delay: calc(var(--asm-chip-i) * -0.7s);
}
.asm-octo-chip-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 25px; height: 25px; border-radius: 8px; flex: 0 0 25px;
	background: var(--asm-chip-c, var(--octo-indigo)); color: #fff;
}
.asm-octo-glyph { width: 15px; height: 15px; display: block; }
.asm-octo-chip-label { padding-right: 1px; }

/* Instagram badge keeps its signature gradient */
.asm-octo-chip--ig .asm-octo-chip-icon {
	background: linear-gradient(135deg, #f9ce34 0%, #ee2a7b 52%, #6228d7 100%);
}

/* Tools / knowledge — calmer, neutral treatment so they read apart from channels */
.asm-octo-chip--tool .asm-octo-chip-inner {
	background: #f7f6ff;
	border-color: #e4e0fb;
	color: #4338ca;
}
.asm-octo-chip--tool .asm-octo-chip-icon {
	background: #ffffff; color: var(--octo-indigo);
	box-shadow: inset 0 0 0 1.5px #e4e0fb;
}

@keyframes asm-octo-float {
	0%,100% { transform: translateY(0); }
	50% { transform: translateY(-7px); }
}

/* Anchor points (chip centres), as % of the scene box, around the core.
   Outer ring = channels, inner ring = tools. */
.asm-octo-chip--wa  { left: 16.5%; top: 14.5%; }
.asm-octo-chip--tg  { left: 50%;   top: 9.5%; }
.asm-octo-chip--ig  { left: 84.5%; top: 15.5%; }
.asm-octo-chip--vk  { left: 92%;   top: 50%; }
.asm-octo-chip--vb  { left: 85.5%; top: 84.5%; }
.asm-octo-chip--mx  { left: 51.5%; top: 91.5%; }
.asm-octo-chip--av  { left: 19%;   top: 84.5%; }
.asm-octo-chip--ci  { left: 8.5%;  top: 50%; }
.asm-octo-chip--crm { left: 26%;   top: 31.5%; }
.asm-octo-chip--gs  { left: 76%;   top: 31.5%; }
.asm-octo-chip--emb { left: 51%;   top: 73%; }

/* Legend — explains the two chip styles without re-listing every name */
.asm-octo-scene-legend {
	display: flex; flex-wrap: wrap; gap: 18px;
	margin-top: 16px;
}
.asm-octo-legend-item {
	display: inline-flex; align-items: center; gap: 8px;
	font-size: 12.5px; font-weight: 600; color: #6b7280;
}
.asm-octo-legend-item::before {
	content: ""; width: 12px; height: 12px; border-radius: 4px; flex: 0 0 12px;
}
.asm-octo-legend-item--channel::before { background: var(--octo-grad); }
.asm-octo-legend-item--tool::before {
	background: #fff; box-shadow: inset 0 0 0 1.6px var(--octo-indigo);
}

@media (prefers-reduced-motion: reduce) {
	.asm-octo-chip-inner, .asm-octo-scene-pulse { animation: none; }
}

/* Mobile: drop the orbit, lay the same chips out as a tidy centred cloud
   so the channel/tool story still lands on small screens. */
@media (max-width: 640px) {
	.asm-octo-scene-wrap { margin-top: 28px; }
	.asm-octo-scene {
		aspect-ratio: auto; height: auto;
		display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
		gap: 8px; padding: 4px 0;
	}
	.asm-octo-scene-glow, .asm-octo-scene-orbit, .asm-octo-scene-pulse { display: none; }
	.asm-octo-scene-core {
		position: static; transform: none; flex: 0 0 100%; margin-bottom: 6px;
	}
	.asm-octo-mark--hero { width: 80px; height: 80px; }
	.asm-octo-chip { position: static; transform: none; }
	.asm-octo-chip-inner { animation: none; }
	.asm-octo-scene-legend { justify-content: center; }
}

/* ============================================================
   Sidebar brand lockup (cabinet)
   ============================================================ */
.asm-sidebar-brand-lockup { display: flex; align-items: center; gap: 10px; }
.asm-sidebar-brand-text { display: flex; flex-direction: column; min-width: 0; }
.asm-sidebar-brand-title { font-size: 16px; font-weight: 800; color: #fff; letter-spacing: -0.01em; line-height: 1.1; }
.asm-sidebar-brand-accent {
	background: linear-gradient(135deg, #b9b0ff 0%, #8be9ff 100%);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: transparent;
}
.asm-sidebar-brand-sub {
	font-size: 11px; color: #9aa0b5; margin-top: 2px;
	overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 150px;
}

/* ============================================================
   Dashboard Octo accents
   ============================================================ */
.asm-dashboard-hero-kicker {
	display: inline-flex; align-items: center; gap: 7px;
	font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
	color: #4f46e5; background: var(--octo-grad-soft);
	border: 1px solid #ddd8ff; border-radius: 999px;
	padding: 4px 12px 4px 9px; margin-bottom: 12px;
}

/* ---------- Cabinet: Octo-branded surfaces ---------- */
body.asm-cabinet-body .asm-dashboard-hero {
	background:
		radial-gradient(520px 200px at 100% -60%, rgba(124,108,255,0.10), transparent 70%),
		linear-gradient(180deg, #ffffff 0%, #fbfaff 100%) !important;
	border-color: #d9d6f2 !important;
	border-left: 3px solid transparent !important;
	border-image: var(--octo-grad) 1 !important;
}

/* Sidebar active item carries the brand instead of wp-admin blue */
.asm-sidebar-item.is-active,
.asm-sidebar-item.is-active:hover {
	background: var(--octo-indigo);
	border-left-color: var(--octo-cyan);
}
.asm-sidebar-brand { border-bottom-color: #2c3350; }

/* Octo empty-state helper (used on cabinet pages) */
.asm-octo-empty {
	display: flex; align-items: flex-start; gap: 16px;
	padding: 20px; border: 1px dashed #d9d6f2; border-radius: 8px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfaff 100%);
}
.asm-octo-empty .asm-octo-mark { width: 44px; height: 44px; flex: 0 0 44px; }
.asm-octo-empty-title { font-size: 14px; font-weight: 700; color: #1d2327; margin: 2px 0 4px; }
.asm-octo-empty-text { font-size: 13px; color: #50575e; line-height: 1.5; margin: 0; }

@media (max-width: 782px) {
	body.asm-cabinet-body .asm-dashboard-hero { flex-direction: column !important; }
}

/* Hero columns: top-align so the mascot scene doesn't float the form */
.asm-register-hero-inner,
.asm-login-hero-inner { align-items: start; }
.asm-register-form-card,
.asm-login-form-card { position: sticky; top: 88px; }
@media (max-width: 860px) {
	.asm-register-form-card,
	.asm-login-form-card { position: static; }
}
/* Preview head lockup sits a touch smaller */
.asm-register-preview-title .asm-octo-mark--logo { width: 30px; height: 30px; flex-basis: 30px; }
.asm-register-preview-title .asm-octo-wordmark { font-size: 17px; }

/* ============================================================
   Dashboard: channels + tools overview block
   ============================================================ */
.asm-dashboard-channels-card { margin-top: 20px; }
.asm-dashboard-channels-groups {
	display: flex; flex-direction: column; gap: 18px;
	margin: 16px 0 12px;
}
.asm-dashboard-channels-group-title {
	font-size: 11px; font-weight: 700; color: #6b7280;
	text-transform: uppercase; letter-spacing: 0.06em;
	margin-bottom: 8px;
}
.asm-dashboard-channels-chips {
	display: flex; flex-wrap: wrap; gap: 6px;
}
.asm-dashboard-channel-chip {
	display: inline-flex; align-items: center;
	padding: 5px 13px;
	font-size: 12px; font-weight: 600; color: #374151;
	background: #f3f4f6; border: 1px solid #e5e7eb;
	border-radius: 999px; white-space: nowrap;
}
.asm-dashboard-channel-chip--wa  { color: #15803d; background: #f0fdf4; border-color: #bbf7d0; }
.asm-dashboard-channel-chip--tg  { color: #1d4ed8; background: #eff6ff; border-color: #bfdbfe; }
.asm-dashboard-channel-chip--ig  { color: #9d174d; background: #fdf2f8; border-color: #fbcfe8; }
.asm-dashboard-channel-chip--vk  { color: #1e40af; background: #eff6ff; border-color: #bfdbfe; }
.asm-dashboard-channel-chip--tool { color: #4f46e5; background: #f5f3ff; border-color: #ddd6fe; }
.asm-dashboard-channels-note {
	font-size: 12px; color: #6b7280; margin: 4px 0 0;
}
.asm-dashboard-channels-note a { color: #4f46e5; text-decoration: none; }
.asm-dashboard-channels-note a:hover { text-decoration: underline; }

/* ============================================================
   Tools page: channels section
   ============================================================ */
.asm-tools-section-header { margin: 0 0 16px; }
.asm-tools-section-heading {
	font-size: 16px; font-weight: 700; color: #1d2327;
	margin: 0 0 4px;
}
.asm-tools-channels-grid {
	display: flex; flex-wrap: wrap; gap: 8px;
	margin-bottom: 14px;
}
.asm-tools-channel-chip {
	display: inline-flex; align-items: center;
	padding: 7px 16px;
	font-size: 13px; font-weight: 600; color: #374151;
	background: #f3f4f6; border: 1px solid #e5e7eb;
	border-radius: 10px;
}
.asm-tools-channel-chip--wa  { color: #15803d; background: #f0fdf4; border-color: #bbf7d0; }
.asm-tools-channel-chip--tg  { color: #1d4ed8; background: #eff6ff; border-color: #bfdbfe; }
.asm-tools-channel-chip--ig  { color: #9d174d; background: #fdf2f8; border-color: #fbcfe8; }
.asm-tools-channel-chip--vk  { color: #1e40af; background: #eff6ff; border-color: #bfdbfe; }
.asm-tools-channels-cta { margin-bottom: 8px; }
