/* SPDX-License-Identifier: GPL-3.0-or-later */
/*
 * Aiwend admin design system. Every rule is scoped under .aiwend-admin (the wrapper of Aiwend
 * screens only), so WordPress and other plugins are not restyled. System font stack; no external
 * fonts or icon requests.
 *
 * Tokens (edit here):
 *   --aw-bg #F6F7FB · --aw-surface #FFFFFF · --aw-text #17213B · --aw-text-2 #526078
 *   --aw-border #DCE2ED (decorative) · --aw-control #8A93A6 (form borders, 3.09:1 on white)
 *   --aw-primary #5746D9 (6.4:1 with white) · --aw-primary-hover #4433B8
 *   --aw-brand-gradient #2878F0 → #7547F5 · spacing 4/8/12/16/24/32 · radius 12 (cards) / 8 (controls)
 */
.aiwend-admin {
	--aw-bg: #f6f7fb;
	--aw-surface: #ffffff;
	--aw-text: #17213b;
	--aw-text-2: #526078;
	--aw-border: #dce2ed;
	--aw-control: #8a93a6;
	--aw-primary: #5746d9;
	--aw-primary-hover: #4433b8;
	--aw-primary-soft: #efedfd;
	--aw-brand-gradient: linear-gradient(135deg, #2878f0 0%, #7547f5 100%);
	--aw-success: #146c43;
	--aw-success-bg: #e8f5ee;
	--aw-warn: #8a4b00;
	--aw-warn-bg: #fff4e5;
	--aw-danger: #b42318;
	--aw-danger-bg: #fef3f2;
	--aw-info: #1f5bb5;
	--aw-info-bg: #eaf2fe;
	--aw-s1: 4px; --aw-s2: 8px; --aw-s3: 12px; --aw-s4: 16px; --aw-s5: 24px; --aw-s6: 32px;
	--aw-radius: 12px;
	--aw-radius-sm: 8px;
	--aw-shadow: 0 1px 2px rgba(23, 33, 59, .05), 0 4px 16px rgba(23, 33, 59, .05);
	--aw-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	max-width: 1200px;
	margin: var(--aw-s4) var(--aw-s5) var(--aw-s6) 0;
	color: var(--aw-text);
	font-family: var(--aw-font);
	font-size: 14px;
	line-height: 1.5;
}
#wpbody-content:has(> .aiwend-admin) { background: var(--aw-bg, #f6f7fb); }
.aiwend-admin *, .aiwend-admin *::before, .aiwend-admin *::after { box-sizing: border-box; }
.aiwend-admin a { color: var(--aw-primary); }
.aiwend-admin a:hover { color: var(--aw-primary-hover); }
.aiwend-admin :focus-visible { outline: 3px solid var(--aw-primary); outline-offset: 2px; box-shadow: none; }

/* Top bar: brand, internal navigation, real AI status */
.aiwend-admin .aw-topbar {
	display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s3) var(--aw-s5);
	padding: var(--aw-s3) var(--aw-s4); margin-bottom: var(--aw-s4);
	background: var(--aw-surface); border: 1px solid var(--aw-border); border-radius: var(--aw-radius); box-shadow: var(--aw-shadow);
}
.aiwend-admin .aw-brand { display: inline-flex; align-items: center; gap: var(--aw-s2); color: var(--aw-text); font-weight: 700; font-size: 18px; text-decoration: none; }
.aiwend-admin .aw-brand img { display: block; border-radius: 8px; }
.aiwend-admin .aw-nav ul { display: flex; flex-wrap: wrap; gap: var(--aw-s1); margin: 0; padding: 0; list-style: none; }
.aiwend-admin .aw-nav li { margin: 0; }
.aiwend-admin .aw-nav a {
	display: inline-flex; align-items: center; min-height: 36px; padding: 0 var(--aw-s3); border-radius: var(--aw-radius-sm);
	color: var(--aw-text-2); text-decoration: none; font-weight: 500;
}
.aiwend-admin .aw-nav a:hover { background: var(--aw-bg); color: var(--aw-text); }
.aiwend-admin .aw-nav a.is-current { background: var(--aw-primary-soft); color: var(--aw-primary-hover); font-weight: 600; }
.aiwend-admin .aw-pill {
	margin-left: auto; display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 var(--aw-s3);
	border-radius: 999px; font-size: 13px; font-weight: 600; text-decoration: none; border: 1px solid transparent;
}
.aiwend-admin .aw-pill--warn { background: var(--aw-warn-bg); color: var(--aw-warn); border-color: #f2c48d; }
.aiwend-admin .aw-pill--muted { background: var(--aw-bg); color: var(--aw-text-2); border-color: var(--aw-border); }

/* Page head */
.aiwend-admin .aw-pagehead { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--aw-s3); margin: var(--aw-s2) 0 var(--aw-s4); }
.aiwend-admin .aw-title { margin: 0; padding: 0; font-size: 26px; line-height: 1.25; font-weight: 700; color: var(--aw-text); }
.aiwend-admin .aw-subtitle { margin: var(--aw-s1) 0 0; color: var(--aw-text-2); font-size: 15px; }
.aiwend-admin .aw-pagehead__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); }
.aiwend-admin .aw-crumbs { margin: 0 0 var(--aw-s3); display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); }
.aiwend-admin .aw-crumbs a { display: inline-flex; align-items: center; min-height: 24px; }
.aiwend-admin .aw-sep { color: var(--aw-control); }
.aiwend-admin .wp-header-end { margin: 0; border: 0; }
.aiwend-admin .aw-notice { margin: 0 0 var(--aw-s4); }

/* Headings, text */
.aiwend-admin .aw-h2 { margin: 0 0 var(--aw-s2); font-size: 20px; line-height: 1.3; color: var(--aw-text); }
.aiwend-admin .aw-h3 { margin: 0 0 var(--aw-s3); font-size: 16px; line-height: 1.35; color: var(--aw-text); font-weight: 600; }
.aiwend-admin .aw-muted, .aiwend-admin .aw-desc { color: var(--aw-text-2); }
.aiwend-admin .aw-desc { display: block; font-size: 13px; margin-top: 2px; }
.aiwend-admin .aw-strong { font-weight: 600; text-decoration: none; }
.aiwend-admin .aw-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }

/* Cards and layout */
.aiwend-admin .aw-card {
	background: var(--aw-surface); border: 1px solid var(--aw-border); border-radius: var(--aw-radius);
	padding: var(--aw-s5); margin: 0 0 var(--aw-s4); box-shadow: var(--aw-shadow);
}
.aiwend-admin .aw-card--flush { padding: 0; overflow-x: auto; }
.aiwend-admin .aw-pad { padding: var(--aw-s4) var(--aw-s5) 0; }
.aiwend-admin .aw-narrow { max-width: 720px; }
.aiwend-admin .aw-grid { display: grid; gap: var(--aw-s4); }
.aiwend-admin .aw-grid > .aw-card { margin: 0; }
.aiwend-admin .aw-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: var(--aw-s4); }
.aiwend-admin .aw-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: var(--aw-s4); }
.aiwend-admin .aw-hero { position: relative; overflow: hidden; }
.aiwend-admin .aw-hero::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 4px; background: var(--aw-brand-gradient); }
.aiwend-admin .aw-empty { text-align: center; padding: var(--aw-s6) var(--aw-s5); }
.aiwend-admin .aw-empty-inline { padding: var(--aw-s4); border: 1px dashed var(--aw-control); border-radius: var(--aw-radius-sm); background: var(--aw-bg); }

/* Steps */
.aiwend-admin .aw-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--aw-s3); margin: var(--aw-s4) 0; padding: 0; list-style: none; }
.aiwend-admin .aw-step { display: flex; gap: var(--aw-s3); margin: 0; padding: var(--aw-s4); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); background: var(--aw-surface); }
.aiwend-admin .aw-step__num {
	flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%;
	background: var(--aw-bg); color: var(--aw-text-2); font-weight: 700; border: 1px solid var(--aw-border);
}
.aiwend-admin .aw-step__body { display: flex; flex-direction: column; gap: 2px; }
.aiwend-admin .aw-step__state { font-size: 12px; font-weight: 600; color: var(--aw-text-2); }
.aiwend-admin .aw-step__desc { font-size: 13px; color: var(--aw-text-2); }
.aiwend-admin .aw-step--done .aw-step__num { background: var(--aw-success-bg); color: var(--aw-success); border-color: #9fd3b6; }
.aiwend-admin .aw-step--done .aw-step__state { color: var(--aw-success); }
.aiwend-admin .aw-step--current { border-color: var(--aw-primary); box-shadow: 0 0 0 1px var(--aw-primary) inset; background: #fbfaff; }
.aiwend-admin .aw-step--current .aw-step__num { background: var(--aw-primary); color: #fff; border-color: var(--aw-primary); }
.aiwend-admin .aw-step--current .aw-step__state { color: var(--aw-primary-hover); }

/* Badges (always text, never colour alone) */
.aiwend-admin .aw-badge {
	display: inline-flex; align-items: center; min-height: 22px; padding: 0 var(--aw-s2); border-radius: 999px;
	font-size: 12px; font-weight: 600; line-height: 1.6; border: 1px solid transparent; white-space: nowrap; vertical-align: middle;
}
.aiwend-admin .aw-badge--neutral { background: var(--aw-bg); color: var(--aw-text-2); border-color: var(--aw-border); }
.aiwend-admin .aw-badge--success { background: var(--aw-success-bg); color: var(--aw-success); }
.aiwend-admin .aw-badge--warn { background: var(--aw-warn-bg); color: var(--aw-warn); }
.aiwend-admin .aw-badge--danger { background: var(--aw-danger-bg); color: var(--aw-danger); }
.aiwend-admin .aw-badge--info { background: var(--aw-info-bg); color: var(--aw-info); }
.aiwend-admin .aw-badge--brand { background: var(--aw-primary-soft); color: var(--aw-primary-hover); }

/* Callouts */
.aiwend-admin .aw-callout { margin: var(--aw-s3) 0; padding: var(--aw-s3) var(--aw-s4); border-radius: var(--aw-radius-sm); background: var(--aw-bg); border: 1px solid var(--aw-border); }
.aiwend-admin .aw-callout p { margin: 0 0 var(--aw-s1); }
.aiwend-admin .aw-callout p:last-child { margin-bottom: 0; }
.aiwend-admin .aw-callout ul { margin: var(--aw-s1) 0 0 var(--aw-s4); list-style: disc; }
.aiwend-admin .aw-callout--info { background: var(--aw-info-bg); border-color: #b9d3f8; }
.aiwend-admin .aw-callout--warn { background: var(--aw-warn-bg); border-color: #f2c48d; }

/* Forms */
.aiwend-admin .aw-field { margin: 0 0 var(--aw-s4); border: 0; padding: 0; }
.aiwend-admin .aw-field > label, .aiwend-admin .aw-field > legend, .aiwend-admin .aw-filter label { display: block; font-weight: 600; margin-bottom: var(--aw-s1); }
.aiwend-admin .aw-input, .aiwend-admin input.aw-input, .aiwend-admin textarea.aw-input, .aiwend-admin select.aw-input {
	width: 100%; max-width: 640px; min-height: 40px; padding: var(--aw-s2) var(--aw-s3);
	border: 1px solid var(--aw-control); border-radius: var(--aw-radius-sm); background: var(--aw-surface); color: var(--aw-text); font: inherit;
}
.aiwend-admin .aw-input:focus { border-color: var(--aw-primary); box-shadow: 0 0 0 1px var(--aw-primary); outline: 2px solid transparent; }
.aiwend-admin .aw-input--sm { width: auto; max-width: 160px; min-height: 32px; }
.aiwend-admin textarea.aw-input { min-height: 96px; resize: vertical; }
.aiwend-admin .aw-choices { border: 0; margin: 0 0 var(--aw-s4); padding: 0; display: grid; gap: var(--aw-s2); }
.aiwend-admin .aw-choice {
	display: flex; gap: var(--aw-s3); align-items: flex-start; padding: var(--aw-s3); margin: 0 0 var(--aw-s2);
	border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); cursor: pointer; background: var(--aw-surface);
}
.aiwend-admin .aw-choice:has(input:checked) { border-color: var(--aw-primary); background: #fbfaff; }
.aiwend-admin .aw-choice input { margin-top: 3px; }
.aiwend-admin .aw-swatches { display: flex; flex-wrap: wrap; gap: var(--aw-s2); }
.aiwend-admin .aw-swatch { display: inline-flex; align-items: center; gap: var(--aw-s2); min-height: 40px; padding: var(--aw-s1) var(--aw-s3) var(--aw-s1) var(--aw-s2); border: 1px solid var(--aw-border); border-radius: 999px; cursor: pointer; }
.aiwend-admin .aw-swatch:has(input:checked) { border-color: var(--aw-text); box-shadow: 0 0 0 1px var(--aw-text) inset; }
.aiwend-admin .aw-swatch input { margin: 0; }
.aiwend-admin .aw-swatch__chip { width: 20px; height: 20px; border-radius: 50%; display: inline-block; }
.aiwend-admin .aw-copy { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin-bottom: var(--aw-s3); }
.aiwend-admin .aw-copy .aw-input { max-width: 320px; }
.aiwend-admin .aw-copy__status { color: var(--aw-success); font-weight: 600; }
.aiwend-admin .aw-btn-lg { min-height: 40px !important; padding: 0 var(--aw-s4) !important; font-size: 14px !important; line-height: 38px !important; }
.aiwend-admin .button-primary { background: var(--aw-primary); border-color: var(--aw-primary); }
.aiwend-admin .button-primary:hover, .aiwend-admin .button-primary:focus { background: var(--aw-primary-hover); border-color: var(--aw-primary-hover); }
.aiwend-admin .button:not(.button-primary) { color: var(--aw-primary-hover); border-color: var(--aw-primary); }
.aiwend-admin .aw-btn-danger { color: var(--aw-danger) !important; border-color: var(--aw-danger) !important; }
.aiwend-admin .aw-dirty { color: var(--aw-warn); font-weight: 600; }

/* Tabs */
.aiwend-admin .aw-tabs ul { display: flex; flex-wrap: wrap; gap: var(--aw-s1); margin: 0 0 var(--aw-s4); padding: 0; list-style: none; border-bottom: 1px solid var(--aw-border); }
.aiwend-admin .aw-tabs li { margin: 0; }
.aiwend-admin .aw-tabs a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 var(--aw-s4); color: var(--aw-text-2); text-decoration: none; font-weight: 500; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.aiwend-admin .aw-tabs a:hover { color: var(--aw-text); }
.aiwend-admin .aw-tabs a.is-current { color: var(--aw-primary-hover); border-bottom-color: var(--aw-primary); font-weight: 600; }

/* Editor: form + live preview */
.aiwend-admin .aw-editor { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 400px); gap: var(--aw-s5); align-items: start; }
.aiwend-admin .aw-editor__preview { position: sticky; top: 44px; background: var(--aw-surface); border: 1px solid var(--aw-border); border-radius: var(--aw-radius); padding: var(--aw-s4); box-shadow: var(--aw-shadow); }
.aiwend-admin .aw-editor__preview .aiwend-chat { margin: var(--aw-s2) 0 0; max-width: none; box-shadow: none; }

/* Lists and tables */
.aiwend-admin .aw-list { margin: 0; padding: 0; list-style: none; }
.aiwend-admin .aw-list__item { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--aw-s3); padding: var(--aw-s3) 0; border-bottom: 1px solid var(--aw-border); margin: 0; }
.aiwend-admin .aw-list__item:last-child { border-bottom: 0; }
.aiwend-admin .aw-list__main { flex: 1 1 320px; }
.aiwend-admin .aw-table { width: 100%; border-collapse: collapse; }
.aiwend-admin .aw-table th, .aiwend-admin .aw-table td { padding: var(--aw-s3) var(--aw-s4); text-align: left; vertical-align: top; border-bottom: 1px solid var(--aw-border); }
.aiwend-admin .aw-table thead th { font-size: 12px; text-transform: uppercase; letter-spacing: .03em; color: var(--aw-text-2); background: var(--aw-bg); }
.aiwend-admin .aw-table tbody tr:last-child > * { border-bottom: 0; }
.aiwend-admin .aw-table--list tbody tr:hover { background: #fafbfd; }
.aiwend-admin .aw-actions { white-space: nowrap; text-align: right; }
.aiwend-admin .aw-actions form { display: inline; }
.aiwend-admin .aw-checklist { max-height: 280px; overflow-y: auto; margin: 0 0 var(--aw-s3); padding: var(--aw-s2); list-style: none; border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-checklist li { margin: 0; }
.aiwend-admin .aw-checklist label { display: flex; gap: var(--aw-s2); align-items: center; min-height: 36px; padding: 0 var(--aw-s2); border-radius: 6px; }
.aiwend-admin .aw-checklist label:hover { background: var(--aw-bg); }
.aiwend-admin .aw-features { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--aw-s2); }
.aiwend-admin .aw-health { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--aw-s3); }
.aiwend-admin .aw-reconcile { margin: var(--aw-s3) 0; padding: var(--aw-s3); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-reconcile form { margin-top: var(--aw-s2); }

/* Disclosure */
.aiwend-admin .aw-details > summary { cursor: pointer; display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); min-height: 32px; list-style-position: outside; }
.aiwend-admin .aw-details > summary .aw-h3 { margin: 0; }
.aiwend-admin details.aw-details[open] > summary { margin-bottom: var(--aw-s3); }
.aiwend-admin .aw-card details.aw-details { margin: 0 0 var(--aw-s3); padding: var(--aw-s3) var(--aw-s4); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-help { margin-top: var(--aw-s3); color: var(--aw-text-2); }
.aiwend-admin .aw-help summary { cursor: pointer; color: var(--aw-primary-hover); font-weight: 500; }
.aiwend-admin .aw-danger-zone { display: inline-block; vertical-align: top; text-align: left; white-space: normal; }
.aiwend-admin .aw-danger-zone summary { cursor: pointer; color: var(--aw-danger); padding: 4px 0; }
.aiwend-admin .aw-danger-zone form { display: block; max-width: 280px; margin-top: var(--aw-s2); padding: var(--aw-s3); border: 1px solid #f5b5ae; border-radius: var(--aw-radius-sm); background: var(--aw-danger-bg); }

/* Usage stats */
.aiwend-admin .aw-stat__label { margin: 0; font-size: 14px; font-weight: 600; color: var(--aw-text-2); }
.aiwend-admin .aw-stat__value { margin: var(--aw-s1) 0; font-size: 32px; line-height: 1.15; font-weight: 700; color: var(--aw-text); }

/* Responsive */
@media (max-width: 1100px) {
	.aiwend-admin .aw-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aiwend-admin .aw-editor { grid-template-columns: minmax(0, 1fr); }
	.aiwend-admin .aw-editor__preview { position: static; }
}
@media (max-width: 782px) {
	.aiwend-admin { margin: var(--aw-s3) var(--aw-s3) var(--aw-s5) 0; }
	.aiwend-admin .aw-grid--2, .aiwend-admin .aw-grid--3, .aiwend-admin .aw-steps { grid-template-columns: minmax(0, 1fr); }
	.aiwend-admin .aw-card { padding: var(--aw-s4); }
	.aiwend-admin .aw-pill { margin-left: 0; }
	.aiwend-admin .aw-title { font-size: 22px; }
	.aiwend-admin .aw-actions { white-space: normal; text-align: left; }
	.aiwend-admin .aw-table--list thead { display: none; }
	.aiwend-admin .aw-table--list tr, .aiwend-admin .aw-table--list td { display: block; }
	.aiwend-admin .aw-table--list td { border-bottom: 0; padding: var(--aw-s2) var(--aw-s4); }
	.aiwend-admin .aw-table--list tr { border-bottom: 1px solid var(--aw-border); padding: var(--aw-s2) 0; }
	.aiwend-admin .aw-table th, .aiwend-admin .aw-table td { padding: var(--aw-s2) var(--aw-s3); }
	.aiwend-admin .aw-danger-zone { display: block; margin-top: var(--aw-s2); }
	.aiwend-admin .aw-danger-zone form { max-width: 100%; }
	.aiwend-admin .aw-copy .aw-input { max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.aiwend-admin * { transition: none !important; animation: none !important; }
}
/* Conversations */
.aiwend-admin .aw-conv-filters { display: flex; flex-wrap: wrap; gap: var(--aw-s3) var(--aw-s4); align-items: flex-end; }
.aiwend-admin .aw-conv-filters .aw-filter { margin: 0; min-width: 160px; }
.aiwend-admin .aw-conv-filters .aw-filter:first-of-type { flex: 1 1 220px; }
.aiwend-admin .aw-transcript__msg { padding: var(--aw-s3) 0; border-bottom: 1px solid var(--aw-border); max-width: 900px; }
.aiwend-admin .aw-transcript__msg:last-of-type { border-bottom: 0; }
.aiwend-admin .aw-transcript__msg--visitor .aw-transcript__text { background: var(--aw-bg); border-radius: var(--aw-radius-sm); padding: var(--aw-s2) var(--aw-s3); }
.aiwend-admin .aw-transcript__meta { margin: 0 0 var(--aw-s1); }
.aiwend-admin .aw-transcript__text { margin: 0 0 var(--aw-s1); white-space: pre-wrap; overflow-wrap: anywhere; }
.aiwend-admin .aw-callout--warn { background: var(--aw-warn-bg); border-color: var(--aw-warn); color: var(--aw-text); }

/* Appearance editor groups */
.aiwend-admin .aw-group { margin-bottom: var(--aw-s4); }
.aiwend-admin .aw-group > .aw-h3 { margin-bottom: var(--aw-s3); }
.aiwend-admin .aw-group .aw-field { margin-bottom: var(--aw-s4); }
.aiwend-admin .aw-group .aw-field:last-child { margin-bottom: 0; }
.aiwend-admin .aw-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--aw-s4); }
.aiwend-admin .aw-avatars { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: var(--aw-s2); }
.aiwend-admin .aw-avatar-choice { display: flex; gap: var(--aw-s2); align-items: flex-start; padding: var(--aw-s3); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); cursor: pointer; background: var(--aw-surface); }
.aiwend-admin .aw-avatar-choice:has(input:checked) { border-color: var(--aw-primary); box-shadow: 0 0 0 1px var(--aw-primary); }
.aiwend-admin .aw-avatar-choice input { margin-top: 3px; }
.aiwend-admin .aw-avatar-choice__body { display: flex; flex-direction: column; }
.aiwend-admin .aw-avatar-picker { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s3); margin-top: var(--aw-s3); }
.aiwend-admin .aw-avatar-picker[hidden] { display: none; }
.aiwend-admin .aw-avatar-thumb { width: 48px; height: 48px; border-radius: 50%; overflow: hidden; background: var(--aw-bg); border: 1px solid var(--aw-border); flex: none; }
.aiwend-admin .aw-avatar-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (min-width: 1101px) { .aiwend-admin .aw-editor { grid-template-columns: minmax(0, 1fr) minmax(340px, 470px); } }

/* Editor preview panel */
.aiwend-admin .aw-pv__controls { display: flex; flex-wrap: wrap; gap: var(--aw-s2); margin: var(--aw-s3) 0; }
.aiwend-admin .aw-seg { display: inline-flex; border: 1px solid var(--aw-border); border-radius: 999px; padding: 2px; background: var(--aw-bg); }
.aiwend-admin .aw-seg[hidden] { display: none; }
.aiwend-admin .aw-seg label { position: relative; }
.aiwend-admin .aw-seg input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.aiwend-admin .aw-seg span { display: block; padding: 4px 10px; border-radius: 999px; font-size: 12px; line-height: 1.5; color: var(--aw-text-2); }
.aiwend-admin .aw-seg input:checked + span { background: var(--aw-primary); color: #fff; }
.aiwend-admin .aw-seg input:focus-visible + span { outline: 2px solid var(--aw-primary); outline-offset: 2px; }
.aiwend-admin .aw-pv__stage { position: relative; overflow: hidden; border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); background: #f4f5f8; }
.aiwend-admin .aw-pv__frame { display: block; border: 0; transform-origin: 0 0; background: #f4f5f8; }
.aiwend-admin .aw-pv__live { display: flex; gap: var(--aw-s2); align-items: flex-start; margin-top: var(--aw-s3); }
.aiwend-admin .aw-pv__live input { margin-top: 3px; }
@media (max-width: 782px) { .aiwend-admin .aw-grid-2 { grid-template-columns: minmax(0, 1fr); } }

/* AI connections (0.7) */
.aiwend-admin .aw-bullets { margin: var(--aw-s1) 0 var(--aw-s3) var(--aw-s5); padding: 0; list-style: disc; }
.aiwend-admin .aw-bullets li { margin: 0 0 var(--aw-s1); }
.aiwend-admin .aw-actionrow { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: var(--aw-s3) 0 0; }
.aiwend-admin .aw-actionrow form { display: inline; margin: 0; }
.aiwend-admin .aw-table-wrap { overflow-x: auto; margin: 0 0 var(--aw-s3); }
.aiwend-admin .aw-flow { display: flex; flex-wrap: wrap; gap: var(--aw-s2); margin: 0 0 var(--aw-s4); padding: 0; list-style: none; counter-reset: awflow; }
.aiwend-admin .aw-flow li { counter-increment: awflow; margin: 0; padding: 2px var(--aw-s3); border: 1px solid var(--aw-border); border-radius: 999px; font-size: 13px; color: var(--aw-text-2); }
.aiwend-admin .aw-flow li::before { content: counter(awflow) ". "; }
.aiwend-admin .aw-flow li.is-current { border-color: var(--aw-primary); color: var(--aw-primary-hover); font-weight: 600; }
.aiwend-admin .aw-provider-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: var(--aw-s3); }
.aiwend-admin .aw-provider { display: flex; gap: var(--aw-s2); align-items: flex-start; padding: var(--aw-s3); border: 1px solid var(--aw-control); border-radius: var(--aw-radius-sm); background: var(--aw-surface); }
.aiwend-admin .aw-provider > span { display: grid; gap: 2px; }
.aiwend-admin .aw-provider--choice { cursor: pointer; }
.aiwend-admin .aw-provider--choice:has(input:checked) { border-color: var(--aw-primary); box-shadow: 0 0 0 1px var(--aw-primary); background: #fbfaff; }
.aiwend-admin .aw-provider--choice input { margin-top: 3px; }
.aiwend-admin .aw-provider.is-disabled { display: block; border-style: dashed; border-color: var(--aw-border); background: var(--aw-bg); }
.aiwend-admin .aw-provider.is-disabled p { margin: var(--aw-s1) 0 0; }
.aiwend-admin article.aw-provider { display: block; }
.aiwend-admin article.aw-provider p { margin: var(--aw-s1) 0 0; }
.aiwend-admin .aw-provider-detail { margin: var(--aw-s4) 0; padding: var(--aw-s3) var(--aw-s4); border-left: 3px solid var(--aw-primary); background: var(--aw-bg); border-radius: 0 var(--aw-radius-sm) var(--aw-radius-sm) 0; }
.aiwend-admin .aw-provider-detail[hidden] { display: none; }
/* Forms: label above input, label/input/help grouped; two columns only when there is room. */
.aiwend-admin .aw-form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 0 var(--aw-s5); align-items: start; }
.aiwend-admin .aw-form-grid > .aw-field { min-width: 0; }
.aiwend-admin .aw-form-grid .aw-input { max-width: 100%; }
.aiwend-admin .aw-form-grid__full { grid-column: 1 / -1; }
.aiwend-admin .aw-form-grid[hidden] { display: none; }
.aiwend-admin .aw-indent { margin: 0 0 var(--aw-s2) var(--aw-s5); }
.aiwend-admin .aw-input--num { max-width: 12ch; }
.aiwend-admin .aw-facts { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: var(--aw-s2) var(--aw-s4); margin: 0 0 var(--aw-s3); }
.aiwend-admin .aw-facts dt { font-weight: 600; color: var(--aw-text-2); }
.aiwend-admin .aw-facts dd { margin: 0; overflow-wrap: anywhere; }
.aiwend-admin .aw-model-picker select.aw-input { min-height: 160px; }
.aiwend-admin .aw-model-picker .aw-input--sm { max-width: 100%; width: 100%; margin-bottom: var(--aw-s2); }
.aiwend-admin .aw-manage-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: var(--aw-s4); }
.aiwend-admin .aw-manage-item { padding: var(--aw-s3) var(--aw-s4); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-manage-item .aw-h3 { margin-top: 0; }
.aiwend-admin .aw-danger-link { color: var(--aw-danger); }
.aiwend-admin .button.aw-button-danger { border-color: var(--aw-danger); color: var(--aw-danger); background: var(--aw-surface); }
.aiwend-admin .button.aw-button-danger:hover, .aiwend-admin .button.aw-button-danger:focus { background: var(--aw-danger-bg); color: var(--aw-danger); border-color: var(--aw-danger); }
.aiwend-admin .aw-ai-status code, .aiwend-admin .aw-facts code { overflow-wrap: anywhere; }
.aiwend-admin code.aw-id, .aiwend-admin .aw-id { overflow-wrap: anywhere; word-break: break-all; }
@media (max-width: 960px) {
	.aiwend-admin .aw-topbar { flex-wrap: wrap; }
	.aiwend-admin .aw-nav { flex: 1 1 100%; order: 3; }
}
@media (max-width: 600px) {
	.aiwend-admin .aw-facts { grid-template-columns: minmax(0, 1fr); }
	.aiwend-admin .aw-facts dd { margin-bottom: var(--aw-s2); }
	.aiwend-admin .aw-indent { margin-left: 0; }
	.aiwend-admin .aw-nav a { min-height: 32px; padding: 0 var(--aw-s2); }
}
.aiwend-admin .aw-sectionhead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--aw-s2) var(--aw-s4); }
.aiwend-admin .aw-sectionhead .aw-h3 { margin: 0; }
.aiwend-admin .aw-inline-form { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0; }
.aiwend-admin .aw-inline-form label { font-weight: 600; }
/* Usage reconciliation: one record per block, fields stacked label-above-input. */
.aiwend-admin .aw-reconcile__title { margin: 0 0 var(--aw-s1); font-size: 14px; font-weight: 600; }
.aiwend-admin .aw-reconcile__meta .aw-badge { white-space: normal; max-width: 100%; border-radius: 12px; } /* a long origin label wraps instead of running off a 390px screen */
.aiwend-admin .aw-reconcile__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0 0 var(--aw-s3); }
.aiwend-admin .aw-reconcile__form .aw-field { margin-bottom: var(--aw-s2); }
.aiwend-admin .aw-hidden-form { display: none; }
/* Colours */
.aiwend-admin .aw-swatch__chip--custom { background: conic-gradient(#ef4444, #f59e0b, #22c55e, #06b6d4, #6366f1, #d946ef, #ef4444); }
.aiwend-admin .aw-hexfield { margin: var(--aw-s3) 0 0; min-width: 0; }
.aiwend-admin .aw-hexfield > label { display: block; font-weight: 600; margin-bottom: var(--aw-s1); }
.aiwend-admin .aw-hexfield__row { display: flex; align-items: center; gap: var(--aw-s2); }
.aiwend-admin .aw-input--hex { max-width: 11ch; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.aiwend-admin .aw-input--hex:invalid { border-color: var(--aw-danger); }
.aiwend-admin .aw-colorpick { width: 40px; height: 40px; padding: 2px; border: 1px solid var(--aw-control); border-radius: var(--aw-radius-sm); background: var(--aw-surface); cursor: pointer; flex: none; }
.aiwend-admin .aw-palette { margin-top: var(--aw-s4); }
.aiwend-admin .aw-palette__schemes { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: var(--aw-s4); }
.aiwend-admin .aw-palette__scheme { min-width: 0; margin: 0; padding: var(--aw-s3) var(--aw-s4); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-palette__scheme legend { padding: 0 var(--aw-s1); }
.aiwend-admin .aw-palette__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 0 var(--aw-s4); }
.aiwend-admin .aw-contrast:empty { display: none; }
.aiwend-admin .aw-contrast { margin: var(--aw-s3) 0; padding: var(--aw-s2) var(--aw-s3); border-radius: var(--aw-radius-sm); background: var(--aw-warn-bg); border: 1px solid #f2c48d; }
.aiwend-admin .aw-contrast__item { margin: var(--aw-s1) 0; }
.aiwend-admin .aw-contrast__item .button { margin-left: var(--aw-s1); }

/* Index panel (phase 77): readable at every width, visible keyboard focus, comfortable touch targets. */
.aiwend-admin #aw-index .aw-input { max-width: 22rem; width: 100%; }
.aiwend-admin #aw-index .aw-h4 { margin: var(--aw-s4) 0 var(--aw-s1); font-size: 14px; font-weight: 600; color: var(--aw-text); }
.aiwend-admin #aw-index .aw-why { margin: var(--aw-s2) 0 0; }
.aiwend-admin #aw-index .notice.inline { margin: var(--aw-s3) 0; }
.aiwend-admin #aw-index .button:focus-visible,
.aiwend-admin #aw-index select:focus-visible,
.aiwend-admin #aw-index input:focus-visible,
.aiwend-admin #aw-index summary:focus-visible { outline: 3px solid var(--aw-primary); outline-offset: 2px; }
.aiwend-admin #aw-index button[disabled] { cursor: not-allowed; }
@media (max-width: 782px) {
    .aiwend-admin #aw-index .button, .aiwend-admin #aw-index select, .aiwend-admin #aw-index .aw-input { min-height: 44px; }
    .aiwend-admin #aw-index .aw-choice { padding-block: var(--aw-s3); }
    .aiwend-admin #aw-index .aw-choice input[type="checkbox"] { width: 24px; height: 24px; flex: none; }
    .aiwend-admin #aw-index form .button { margin-top: var(--aw-s2); }
}

@media (max-width: 782px) {
    .aiwend-admin #aw-index summary { min-height: 44px; display: flex; align-items: center; }
}

.aiwend-admin .aw-bullets { margin: var(--aw-s2) 0 var(--aw-s3) var(--aw-s4); list-style: disc; }

/* ---- Phase 92: shared responsive and accessibility foundation ---- */
.aiwend-admin { overflow-wrap: break-word; }
.aiwend-admin img, .aiwend-admin video { max-width: 100%; height: auto; }
.aiwend-admin .aw-title, .aiwend-admin .aw-subtitle, .aiwend-admin .aw-desc { overflow-wrap: anywhere; }
.aiwend-admin .aw-input, .aiwend-admin input[type="file"] { max-width: 100%; }
.aiwend-admin .aw-pagehead__actions .button { min-height: 36px; display: inline-flex; align-items: center; }
.aiwend-admin .button { min-height: 32px; }
/* Text-style buttons ("Use the example", "Remove from assistant") are controls, not running text: at least 24 CSS pixels tall (WCAG 2.2 target size). */
.aiwend-admin .button-link { display: inline-flex; align-items: center; min-height: 24px; }
.aiwend-admin .button-link:focus-visible { outline: 3px solid var(--aw-primary); outline-offset: 2px; box-shadow: none; } /* WordPress core draws a 1.5px shadow here; match the 3px ring used everywhere else */
.aiwend-admin .aw-confirm { display: inline-flex; align-items: center; gap: var(--aw-s2); min-height: 32px; margin-right: var(--aw-s2); }
.aiwend-admin .aw-stat__value { overflow-wrap: anywhere; }
.aiwend-admin .aw-card--flush > .aw-table { min-width: 0; }

/* "More" menu for secondary row actions: expands in place so scrolling table wrappers never clip it */
.aiwend-admin details.aw-more { display: inline-block; vertical-align: top; text-align: left; white-space: normal; }
.aiwend-admin details.aw-more > summary { cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 6px; }
.aiwend-admin details.aw-more > summary::-webkit-details-marker { display: none; }
.aiwend-admin details.aw-more > summary::after { content: "▾"; font-size: 11px; }
.aiwend-admin details.aw-more[open] > summary::after { content: "▴"; }
.aiwend-admin .aw-more__panel { display: grid; gap: var(--aw-s3); width: min(340px, calc(100vw - 80px)); margin-top: var(--aw-s2); padding: var(--aw-s3); background: var(--aw-surface); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); box-shadow: var(--aw-shadow); }
.aiwend-admin .aw-more__group { margin: 0; padding-bottom: var(--aw-s3); border-bottom: 1px solid var(--aw-border); }
.aiwend-admin .aw-more__group:last-child { padding-bottom: 0; border-bottom: 0; }
.aiwend-admin .aw-more__group form { margin: 0; }
.aiwend-admin .aw-more__group .aw-desc { display: block; margin: var(--aw-s1) 0 var(--aw-s2); }
.aiwend-admin .aw-more__label { margin: 0 0 var(--aw-s1); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--aw-text-2); }
.aiwend-admin .aw-more__group--danger { margin: 0 calc(var(--aw-s1) * -1); padding: var(--aw-s3); border: 1px solid #f5b5ae; border-radius: var(--aw-radius-sm); background: var(--aw-danger-bg); }
.aiwend-admin .aw-more__group--danger .aw-more__label { color: var(--aw-danger); }

/* Usage: everyday controls first, explanations beside or below */
.aiwend-admin .aw-grid--limits { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); align-items: start; margin-bottom: var(--aw-s4); }
.aiwend-admin .aw-grid--limits .aw-input--num, .aiwend-admin .aw-grid--limits input[type="number"] { max-width: 16ch; }
.aiwend-admin .aw-stats .aw-stat__value { font-size: 28px; }
.aiwend-admin .aw-stats .aw-card { padding: var(--aw-s4) var(--aw-s5); }

@media (max-width: 1100px) {
	.aiwend-admin .aw-grid--limits { grid-template-columns: minmax(0, 1fr); }
	.aiwend-admin .aw-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 782px) {
	.aiwend-admin { margin-right: var(--aw-s3); }
	.aiwend-admin .aw-grid--3.aw-stats { grid-template-columns: minmax(0, 1fr); }
	.aiwend-admin .aw-grid--3.aw-stats .aw-card { padding: var(--aw-s3) var(--aw-s4); }
	.aiwend-admin .aw-grid--3.aw-stats .aw-stat__value { font-size: 24px; margin: 0; }
	/* Navigation and tabs: one scrollable row instead of several wrapped lines; touch-sized links */
	.aiwend-admin .aw-nav ul, .aiwend-admin .aw-tabs ul { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
	.aiwend-admin .aw-nav a, .aiwend-admin .aw-tabs a { min-height: 44px; white-space: nowrap; }
	.aiwend-admin .aw-pagehead__actions { width: 100%; }
	.aiwend-admin .aw-pagehead__actions .button { flex: 1 1 auto; justify-content: center; min-height: 44px; }
	.aiwend-admin .button, .aiwend-admin button.button, .aiwend-admin input.button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
	.aiwend-admin .aw-input, .aiwend-admin select.aw-input { min-height: 44px; font-size: 16px; }
	.aiwend-admin .aw-choice input[type="checkbox"], .aiwend-admin .aw-choice input[type="radio"], .aiwend-admin .aw-checklist input[type="checkbox"], .aiwend-admin .aw-confirm input { width: 22px; height: 22px; flex: none; }
	.aiwend-admin .aw-checklist label { min-height: 44px; }
	.aiwend-admin .aw-actions .button, .aiwend-admin .aw-actions details.aw-more { width: 100%; }
	.aiwend-admin .aw-actions .aw-more > summary { width: 100%; justify-content: center; }
	.aiwend-admin .aw-more__panel { width: 100%; }
	/* Dense tables become labelled rows (labels copied from the column headings by admin.js) */
	.aiwend-admin table.aw-table--stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
	.aiwend-admin table.aw-table--stack tr, .aiwend-admin table.aw-table--stack td, .aiwend-admin table.aw-table--stack th { display: block; }
	.aiwend-admin table.aw-table--stack tr { padding: var(--aw-s2) 0; border-bottom: 1px solid var(--aw-border); }
	.aiwend-admin table.aw-table--stack td, .aiwend-admin table.aw-table--stack th { border-bottom: 0; padding: var(--aw-s1) var(--aw-s3); text-align: left; }
	.aiwend-admin table.aw-table--stack tbody th { font-weight: 600; }
	.aiwend-admin table.aw-table--stack tbody tr:last-child { border-bottom: 0; }
	.aiwend-admin table.aw-table--stack td[data-label]::before, .aiwend-admin table.aw-table--list td[data-label]::before { content: attr(data-label); display: block; font-size: 12px; font-weight: 600; color: var(--aw-text-2); text-transform: uppercase; letter-spacing: .03em; }
	.aiwend-admin table.aw-table--list td.aw-cell-title { padding-top: var(--aw-s3); font-size: 15px; }
}
@media (max-width: 480px) {
	.aiwend-admin .aw-topbar { padding: var(--aw-s2) var(--aw-s3); }
	.aiwend-admin .aw-brand { font-size: 16px; }
	.aiwend-admin .aw-card { padding: var(--aw-s3); }
	.aiwend-admin .aw-title { font-size: 20px; }
	.aiwend-admin .aw-copy, .aiwend-admin .aw-inline-form { align-items: stretch; }
	.aiwend-admin .aw-copy .button, .aiwend-admin .aw-inline-form .button, .aiwend-admin .aw-actionrow .button { flex: 1 1 100%; }
}
@media (prefers-contrast: more) {
	.aiwend-admin { --aw-border: #8a93a6; --aw-text-2: #2d3a54; }
}
@media (forced-colors: active) {
	.aiwend-admin .aw-badge, .aiwend-admin .aw-pill, .aiwend-admin .aw-callout, .aiwend-admin .aw-card, .aiwend-admin .aw-more__panel, .aiwend-admin .aw-step { border: 1px solid CanvasText; }
	.aiwend-admin .aw-nav a.is-current, .aiwend-admin .aw-tabs a.is-current { border: 2px solid Highlight; forced-color-adjust: none; color: LinkText; background: Canvas; }
	.aiwend-admin :focus-visible { outline: 3px solid Highlight; }
	.aiwend-admin .aw-seg input:checked + span { outline: 2px solid Highlight; }
}

/* Phase 92: danger zones, pager, transcript sources, key help */
.aiwend-admin .aw-zone-title { margin: var(--aw-s5) 0 var(--aw-s3); padding-top: var(--aw-s4); border-top: 1px solid var(--aw-border); }
.aiwend-admin .aw-card--danger { border-color: #f5b5ae; border-left: 4px solid var(--aw-danger); }
.aiwend-admin .aw-card--danger .aw-h3 { color: var(--aw-danger); }
.aiwend-admin .aw-zone { margin-top: var(--aw-s4); padding: var(--aw-s3) var(--aw-s4); border-radius: var(--aw-radius-sm); }
.aiwend-admin .aw-zone--danger { border: 1px solid #f5b5ae; background: var(--aw-danger-bg); }
.aiwend-admin .aw-zone--danger .aw-h3 { color: var(--aw-danger); margin-bottom: var(--aw-s2); }
.aiwend-admin .aw-zone p:last-child { margin-bottom: 0; }
.aiwend-admin .aw-pager { display: flex; flex-wrap: wrap; gap: var(--aw-s2); margin: 0 0 var(--aw-s4); }
.aiwend-admin .aw-filter--actions { display: flex; flex-wrap: wrap; gap: var(--aw-s2); align-items: center; }
.aiwend-admin .aw-transcript__sources { margin: var(--aw-s2) 0 0; padding: var(--aw-s2) var(--aw-s3); border-left: 3px solid var(--aw-info); background: var(--aw-info-bg); border-radius: 0 var(--aw-radius-sm) var(--aw-radius-sm) 0; }
.aiwend-admin .aw-transcript__sourcehead { margin: 0 0 var(--aw-s1); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--aw-info); }
.aiwend-admin .aw-transcript__citations { margin: 0; padding-left: var(--aw-s5); overflow-wrap: anywhere; }
.aiwend-admin .aw-help-block { margin-top: var(--aw-s3); }
.aiwend-admin .aw-help-block > summary { cursor: pointer; font-weight: 500; color: var(--aw-primary-hover); min-height: 32px; }
@media (max-width: 782px) {
	.aiwend-admin .aw-conv-filters .aw-filter { flex: 1 1 100%; min-width: 0; }
	.aiwend-admin .aw-filter--actions .button { flex: 1 1 auto; }
	.aiwend-admin .aw-pager .button { flex: 1 1 100%; }
	.aiwend-admin .aw-transcript__msg { max-width: none; }
}
.aiwend-admin .aw-progress { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s3); margin: var(--aw-s2) 0; }
.aiwend-admin .aw-progress progress { flex: 1 1 160px; max-width: 320px; height: 10px; accent-color: var(--aw-primary); }
@media (max-width: 782px) {
	.aiwend-admin table.aw-table--list td.aw-actions::before, .aiwend-admin table.aw-table--list td.aw-cell-title::before { display: none; }
	.aiwend-admin table.aw-table--list td.aw-actions { padding-bottom: var(--aw-s3); }
}
.aiwend-admin .aw-topbar > * { min-width: 0; }
.aiwend-admin .aw-nav { max-width: 100%; }
@media (max-width: 782px) {
	.aiwend-admin .aw-topbar { overflow: hidden; }
	.aiwend-admin .aw-nav { flex: 1 1 100%; }
}
@media (min-width: 601px) and (max-width: 782px) {
	.aiwend-admin .aw-grid--3.aw-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.aiwend-admin .aw-grid--3.aw-stats .aw-stat__value { font-size: 22px; }
}

/* Phase 92 (continued): checklists, upload errors, health line, mobile save bar */
.aiwend-admin .aw-checktools { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0 0 var(--aw-s2); }
.aiwend-admin .aw-checktools[hidden] { display: none; }
.aiwend-admin .aw-field-error { display: block; color: var(--aw-danger); font-weight: 600; margin-top: var(--aw-s1); }
.aiwend-admin .aw-field-error:empty { display: none; }
.aiwend-admin input[aria-invalid="true"] { outline: 2px solid var(--aw-danger); outline-offset: 2px; }
.aiwend-admin .aw-healthline { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0 0 var(--aw-s3); }
.aiwend-admin .aw-health li { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--aw-s2); }
.aiwend-admin .aw-table--facts th[scope="row"] { width: 34%; font-weight: 600; color: var(--aw-text-2); }
.aiwend-admin .aw-table--facts td { overflow-wrap: anywhere; }
.aiwend-admin .aw-details > summary { min-height: 40px; }
@media (min-width: 1101px) {
	.aiwend-admin .aw-list__item { flex-wrap: nowrap; }
}
@media (max-width: 782px) {
	.aiwend-admin .aw-table--facts th[scope="row"] { width: auto; padding-bottom: 0; }
	.aiwend-admin .aw-list__item .button, .aiwend-admin .aw-list__item form { width: 100%; }
	/* Assistant editor: keep the save button reachable while scrolling a long form */
	.aiwend-admin .aw-pagehead:has(button[form="aw-editor-form"]) .aw-pagehead__actions {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 99; width: auto; margin: 0;
		padding: var(--aw-s2) var(--aw-s3); background: var(--aw-surface); border-top: 1px solid var(--aw-border); box-shadow: 0 -2px 12px rgba(23, 33, 59, .12);
	}
	.aiwend-admin .aw-pagehead:has(button[form="aw-editor-form"]) .aw-dirty { flex: 1 1 100%; text-align: center; }
	.aiwend-admin:has(button[form="aw-editor-form"]) { padding-bottom: 88px; }
}
@media (max-width: 782px) {
	/* Row blocks need block ancestors too, or content such as an open "More" panel can widen the whole table */
	.aiwend-admin table.aw-table--stack, .aiwend-admin table.aw-table--list, .aiwend-admin table.aw-table--stack tbody, .aiwend-admin table.aw-table--list tbody { display: block; width: 100%; }
	.aiwend-admin .aw-more__group input[type="file"] { width: 100%; }
}

/* Phase 92 quality gate: save bar must never hide fields, errors or the end of the form */
@media (max-width: 782px) {
	html:has(button[form="aw-editor-form"]) { scroll-padding-bottom: 120px; }
	.aiwend-admin:has(button[form="aw-editor-form"]) { padding-bottom: 120px; }
	/* While a field has focus (on-screen keyboard open) the bar steps aside instead of covering the field */
	.aiwend-admin:has(#aw-editor-form :is(input, textarea, select):focus) .aw-pagehead:has(button[form="aw-editor-form"]) .aw-pagehead__actions { transform: translateY(110%); }
}
@media (min-width: 783px) {
	/* Open "More" menu in the right-hand column: the panel opens leftwards inside the card instead of widening the table */
	.aiwend-admin td.aw-actions details.aw-more[open] > .aw-more__panel { margin-left: auto; max-width: min(340px, 60vw); }
}
@media (max-width: 782px) {
	.aiwend-admin .aw-brand { min-height: 44px; }
}

/* Guided setup (Phase 117): a stepper of links, one panel for the current step. Text states, never colour alone. */
.aiwend-admin .aw-steps--setup { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.aiwend-admin .aw-steps--setup .aw-step--locked { opacity: .75; }
.aiwend-admin .aw-step__title { font-weight: 600; }
.aiwend-admin .aw-step__title:focus-visible { outline: 3px solid var(--aw-primary); outline-offset: 2px; }
.aiwend-admin .aw-step[aria-current="step"] { box-shadow: 0 0 0 2px var(--aw-primary) inset; }
.aiwend-admin .aw-setup__panel { margin-top: var(--aw-s4); padding-top: var(--aw-s4); border-top: 1px solid var(--aw-border); }
.aiwend-admin .aw-setup__panel .aw-h4 { margin: var(--aw-s4) 0 var(--aw-s2); font-size: 14px; }
.aiwend-admin .aw-setup__nav { display: flex; flex-wrap: wrap; gap: var(--aw-s2); margin-top: var(--aw-s4); }
@media (max-width: 600px) {
	.aiwend-admin .aw-steps--setup { grid-template-columns: 1fr; gap: var(--aw-s2); }
	.aiwend-admin .aw-steps--setup .aw-step { padding: var(--aw-s3); }
	.aiwend-admin .aw-steps--setup .aw-step--done .aw-step__desc, .aiwend-admin .aw-steps--setup .aw-step--todo .aw-step__desc { display: none; }
}
.aiwend-admin .aw-step__title { display: inline-block; min-height: 24px; line-height: 24px; }
.aiwend-admin .aw-setup-return { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0 0 var(--aw-s4); padding: var(--aw-s3) var(--aw-s4); border: 1px solid var(--aw-border); border-radius: var(--aw-radius-sm); background: var(--aw-surface); }

/* Usage reports (Phase 118) */
.aiwend-admin .aw-usage-series th[scope="row"] { white-space: nowrap; }
.aiwend-admin .aw-usage-series td { font-variant-numeric: tabular-nums; }
.aiwend-admin .aw-glossary dt { margin-top: var(--aw-s3); font-weight: 600; }
.aiwend-admin .aw-glossary dd { margin: 2px 0 0; color: var(--aw-text-2); }
.aiwend-admin .aw-limit-warning { margin: 0 0 var(--aw-s3); }
.aiwend-admin .aw-usage-series td { vertical-align: top; }

/* Phase 130: searchable page/post picker for the widget placement rules. */
.aiwend-admin .aw-picker { display: block; margin: var(--aw-s3) 0; }
.aiwend-admin .aw-picker > label { display: block; font-weight: 600; margin-bottom: var(--aw-s1); }
.aiwend-admin .aw-picker input[type="search"] { width: 100%; max-width: 420px; }
.aiwend-admin .aw-picker__results, .aiwend-admin .aw-picker__chosen { list-style: none; margin: var(--aw-s2) 0; padding: 0; }
.aiwend-admin .aw-picker__results[hidden], .aiwend-admin .aw-picker input[type="search"][hidden] { display: none; }
.aiwend-admin .aw-picker__results li { margin: 0 0 var(--aw-s1); }
.aiwend-admin .aw-picker__option { max-width: 100%; white-space: normal; text-align: start; min-height: 32px; }
.aiwend-admin .aw-picker__chosen li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aw-s2); margin: 0 0 var(--aw-s1); padding: var(--aw-s1) var(--aw-s2); border: 1px solid var(--aw-border); border-radius: 8px; background: var(--aw-bg); width: fit-content; max-width: 100%; }
.aiwend-admin .aw-picker__chosen:empty { display: none; }
.aiwend-admin .aw-picker__remove { min-height: 24px; }
.aiwend-admin .aw-picker__remove:focus-visible, .aiwend-admin .aw-picker__option:focus-visible { outline: 2px solid var(--aw-primary); outline-offset: 2px; }
@media (max-width: 782px) { .aiwend-admin .aw-picker__remove, .aiwend-admin .aw-picker__option { min-height: 44px; } }

/* Support Aiwend: last item of the section navigation, set apart from the functional sections */
.aiwend-admin .aw-nav .aw-nav__support { margin-inline-start: auto; padding-inline-start: var(--aw-s3); border-inline-start: 1px solid var(--aw-border); }
.aiwend-admin .aw-nav__support a { display: inline-flex; align-items: center; gap: 6px; color: var(--aw-text-2); }
.aiwend-admin .aw-nav__support a:hover, .aiwend-admin .aw-nav__support a:focus { color: var(--aw-text); }
.aiwend-admin .aw-nav__icon { display: inline-flex; }
.aiwend-admin .aw-nav__icon svg { width: 16px; height: 16px; }
.aiwend-admin .aw-nav__support .aw-nav__icon:first-child { color: var(--aw-primary); }
.aiwend-admin .aw-nav__ext { opacity: .75; }
.aiwend-admin .aw-nav__ext svg { width: 14px; height: 14px; }
@media (forced-colors: active) {
	.aiwend-admin .aw-nav .aw-nav__support { border-inline-start: 1px solid CanvasText; }
}

/* Narrow screens: the section navigation scrolls sideways; edge shadows show that more sections (the last one is the optional Support link) are off screen */
@media (max-width: 782px) {
	.aiwend-admin .aw-nav ul {
		background:
			linear-gradient(to right, var(--aw-surface) 30%, transparent) left center / 24px 100% no-repeat local,
			linear-gradient(to left, var(--aw-surface) 30%, transparent) right center / 24px 100% no-repeat local,
			linear-gradient(to right, rgba(23, 33, 59, .18), transparent) left center / 10px 100% no-repeat scroll,
			linear-gradient(to left, rgba(23, 33, 59, .18), transparent) right center / 10px 100% no-repeat scroll;
	}
	.aiwend-admin .aw-nav .aw-nav__support { margin-inline-start: 0; }
}
