:root {
  --aegis-wp-blue: #2271b1;
  --aegis-wp-blue-dark: #135e96;
  --aegis-wp-ink: #1d2327;
  --aegis-wp-muted: #646970;
  --aegis-wp-faint: #8c8f94;
  --aegis-wp-border: #dcdcde;
  --aegis-wp-border-dark: #c3c4c7;
  --aegis-wp-surface: #fff;
  --aegis-wp-canvas: #f0f0f1;
  --aegis-wp-success: #008a20;
  --aegis-wp-warning: #996800;
  --aegis-wp-danger: #b32d2e;
  --aegis-wp-focus: 0 0 0 1px #2271b1, 0 0 0 3px rgba(34,113,177,.18);
  --aegis-shadow-card: 0 1px 2px rgba(23,23,26,.04), 0 1px 1px rgba(23,23,26,.03);
  --aegis-shadow-raised: 0 4px 14px rgba(23,23,26,.08), 0 1px 2px rgba(23,23,26,.05);
}

/* Native WordPress page frame. */
body.toplevel_page_aegis-user-guard #wpbody-content { background: var(--aegis-wp-canvas); }
.aegis-shell { max-width: 1200px; margin: 0 20px 40px 0; color: var(--aegis-wp-ink); font-family: inherit; font-size: 14px; line-height: 1.5; }
.aegis-shell *, .aegis-shell *::before, .aegis-shell *::after { box-sizing: border-box; }
.aegis-shell h1, .aegis-shell h2, .aegis-shell h3, .aegis-shell p { margin: 0; }
.aegis-shell h1, .aegis-shell h2, .aegis-shell h3, .aegis-shell strong { color: var(--aegis-wp-ink); }
.aegis-shell .button, .aegis-shell input, .aegis-shell select, .aegis-shell textarea { font-family: inherit; }

/* Replace the bespoke hero with the familiar WordPress page-header pattern. */
.aegis-hero { min-height: 0; margin: 0 0 24px; padding: 0 0 18px; border: 0; border-bottom: 1px solid var(--aegis-wp-border); border-radius: 0; color: var(--aegis-wp-ink); background: transparent; box-shadow: none; }
.aegis-hero__grid, .aegis-brand-lockup, .aegis-kicker { display: none; }
.aegis-hero__content { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 0; }
.aegis-hero h1 { max-width: 760px; color: var(--aegis-wp-ink); font-size: 23px; line-height: 1.3; letter-spacing: normal; font-weight: 400; }
.aegis-hero__copy { max-width: 760px; margin-top: 5px !important; color: var(--aegis-wp-muted); font-size: 13px; line-height: 1.5; }
.aegis-health { flex: 0 0 auto; }
.aegis-health__ring { display: flex; align-items: baseline; gap: 5px; width: auto; height: auto; border: 0; border-radius: 0; text-align: right; background: transparent; }
.aegis-health__ring strong { color: var(--aegis-wp-ink); font-size: 14px; line-height: 1.3; font-weight: 600; }
.aegis-health__ring span { color: var(--aegis-wp-muted); text-transform: none; font-size: 13px; font-weight: 400; letter-spacing: normal; }

/* Expressive policy overview cards. */
.aegis-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 24px; border: 0; background: transparent; overflow: visible; }
.aegis-metric { position: relative; display: flex; align-items: flex-start; gap: 13px; min-height: 104px; padding: 17px 18px; border: 1px solid var(--aegis-wp-border); border-radius: 8px; background: linear-gradient(145deg, #fff 0%, #fbfbfc 100%); box-shadow: var(--aegis-shadow-card); transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.aegis-metric:hover { border-color: var(--aegis-wp-border-dark); box-shadow: var(--aegis-shadow-raised); transform: translateY(-1px); }
.aegis-metric__icon { display: grid; flex: 0 0 38px; place-items: center; width: 38px; height: 38px; border: 1px solid transparent; border-radius: 10px; }
.aegis-metric__icon .dashicons { width: 19px; height: 19px; font-size: 19px; line-height: 1; }
.aegis-metric--users .aegis-metric__icon { border-color: #c8dff1; color: var(--aegis-wp-blue-dark); background: #eff7fd; }
.aegis-metric--paused .aegis-metric__icon { border-color: #ead9a5; color: var(--aegis-wp-warning); background: #fff8df; }
.aegis-metric--state .aegis-metric__icon { border-color: #b8dfc5; color: var(--aegis-wp-success); background: #f0f9f2; }
.aegis-metric__content { display: block; min-width: 0; }
.aegis-metric__label, .aegis-metric__meta { display: block; color: var(--aegis-wp-muted); font-size: 12px; line-height: 1.45; font-weight: 400; }
.aegis-metric__label { font-weight: 600; }
.aegis-metric strong { display: block; margin: 3px 0 1px; color: var(--aegis-wp-ink); font-size: 24px; line-height: 1.15; letter-spacing: normal; font-weight: 600; }
.aegis-metric--state strong { color: var(--aegis-wp-success); font-size: 20px; }
.aegis-metric__meta { color: var(--aegis-wp-faint); font-size: 12px; }

/* Native settings pages are vertical sections, not application dashboards. */
.aegis-grid { display: block; }
.aegis-panel { margin: 0 0 28px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.aegis-panel--policies, .aegis-panel--wide { padding: 0; }
.aegis-panel--policies { border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: var(--aegis-wp-surface); box-shadow: var(--aegis-shadow-card); overflow: hidden; }
.aegis-panel--policies .aegis-panel__heading { padding: 20px 20px 13px; }
.aegis-panel--side { padding: 0; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: var(--aegis-wp-surface); box-shadow: var(--aegis-shadow-card); }
.aegis-panel--side .aegis-panel__heading { padding: 20px 20px 13px; }
.aegis-panel__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin: 0; padding: 0 0 12px; border-bottom: 1px solid var(--aegis-wp-border); }
.aegis-eyebrow { margin-bottom: 3px !important; color: var(--aegis-wp-muted); text-transform: none; letter-spacing: normal; font-size: 12px; line-height: 1.4; font-weight: 600; }
.aegis-panel h2 { color: var(--aegis-wp-ink); font-size: 18px; line-height: 1.35; letter-spacing: normal; font-weight: 600; }
.aegis-section-intro { max-width: 780px; margin-top: 5px !important; color: var(--aegis-wp-muted); font-size: 13px; line-height: 1.5; }
.aegis-live-pill { align-self: center; padding: 0; border: 0; border-radius: 0; color: var(--aegis-wp-success); background: transparent; font-size: 12px; font-weight: 600; text-transform: none; letter-spacing: normal; }
.aegis-live-pill span { display: none; }

/* Policy controls use native checkboxes and WordPress-like form geometry. */
.aegis-policy-card { display: grid; grid-template-columns: 40px minmax(0, 1fr) 190px; align-items: center; gap: 18px; padding: 20px; border-top: 1px solid var(--aegis-wp-border); transition: background-color .15s ease; }
.aegis-policy-card:first-of-type { border-top: 0; padding-top: 20px; }
.aegis-policy-card:hover { background: #fbfbfc; }
.aegis-policy-icon { display: grid; place-items: center; align-self: flex-start; width: 40px; height: 40px; margin-top: 2px; border-radius: 10px; color: var(--aegis-wp-muted); background: #f6f7f7; transition: opacity .15s ease; }
.aegis-policy-icon .dashicons { display: inline-flex; align-items: center; justify-content: center; width: 19px; height: 19px; font-size: 19px; line-height: 1; }
.aegis-policy-icon--violet { color: #6d3fc0; background: #f2edfb; }
.aegis-policy-icon--orange { color: #9a5b00; background: #fef2df; }
.aegis-policy-icon--pink { color: #ad2d5e; background: #fdeaf1; }
.aegis-policy-copy { transition: opacity .15s ease; }
.aegis-policy-copy h3 { margin-bottom: 4px; color: var(--aegis-wp-ink); font-size: 14px; line-height: 1.4; font-weight: 600; }
.aegis-policy-copy p { max-width: 560px; color: var(--aegis-wp-muted); font-size: 13px; line-height: 1.55; }
.aegis-policy-card.is-off .aegis-policy-icon { opacity: .45; }
.aegis-policy-card.is-off .aegis-policy-copy { opacity: .55; }
.aegis-policy-card.is-off .aegis-policy-copy .aegis-policy-subrow { pointer-events: none; }
.aegis-toggle { position: relative; display: inline-flex; align-items: center; gap: 9px; margin-top: 12px; cursor: pointer; }
.aegis-toggle input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.aegis-toggle__track { display: inline-flex; flex: 0 0 auto; align-items: center; width: 36px; height: 20px; padding: 2px; border-radius: 999px; background: var(--aegis-wp-border-dark); transition: background-color .16s ease; }
.aegis-toggle__track span { width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(23,23,26,.3); transition: transform .16s ease; }
.aegis-toggle:hover .aegis-toggle__track { background: #97999e; }
.aegis-toggle input:checked + .aegis-toggle__track { background: var(--aegis-wp-blue); }
.aegis-toggle:hover input:checked + .aegis-toggle__track { background: var(--aegis-wp-blue-dark); }
.aegis-toggle input:checked + .aegis-toggle__track span { transform: translateX(16px); }
.aegis-toggle input:focus-visible + .aegis-toggle__track { box-shadow: var(--aegis-wp-focus); }
.aegis-toggle b { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 400; }
.aegis-policy-value input:focus, .aegis-mail-fields input:focus, .aegis-activity-search-input:focus, .aegis-directory-search-input:focus, .aegis-page-size-select:focus, .aegis-directory-page-size-select:focus { border-color: var(--aegis-wp-blue); box-shadow: var(--aegis-wp-focus); outline: 0; }
.aegis-policy-controls { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.aegis-policy-controls .aegis-toggle { margin-top: 0; }
.aegis-policy-stack { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; transition: opacity .15s ease; }
.aegis-policy-card.is-off .aegis-policy-stack { opacity: .4; pointer-events: none; }
.aegis-policy-stepper { display: inline-flex; align-items: stretch; overflow: hidden; border: 1px solid var(--aegis-wp-border-dark); border-radius: 6px; background: #fff; }
.aegis-policy-stepper input { width: 52px; height: 30px; margin: 0; padding: 0 0 0 10px; border: 0; color: var(--aegis-wp-ink); background: transparent; font-size: 13px; font-weight: 600; text-align: right; box-shadow: none; }
.aegis-policy-stepper input:focus { outline: 0; }
.aegis-policy-stepper:focus-within { border-color: var(--aegis-wp-blue); box-shadow: var(--aegis-wp-focus); }
.aegis-policy-stepper span { display: flex; align-items: center; padding: 0 9px 0 5px; color: var(--aegis-wp-muted); background: #f6f7f7; font-size: 11px; font-weight: 600; border-left: 1px solid var(--aegis-wp-border); }
.aegis-policy-note { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; transition: opacity .15s ease; }
.aegis-policy-card.is-off .aegis-policy-note { opacity: .4; }
.aegis-policy-note span { color: var(--aegis-wp-faint); font-size: 12px; font-weight: 400; }
.aegis-policy-note strong { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }
.aegis-policy-note strong a { color: var(--aegis-wp-blue); text-decoration: none; }
.aegis-policy-note strong a:hover { text-decoration: underline; }

/* Recently added account preview. */
.aegis-text-link { color: var(--aegis-wp-blue); font-size: 13px; font-weight: 400; text-decoration: none; }
.aegis-text-link:hover { color: var(--aegis-wp-blue-dark); text-decoration: underline; }
.aegis-user-row { display: flex; align-items: center; gap: 10px; padding: 13px 20px; border-top: 1px solid var(--aegis-wp-border); }
.aegis-avatar { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border: 1px solid var(--aegis-wp-border); border-radius: 2px; color: var(--aegis-wp-muted); background: #f6f7f7; font-size: 11px; font-weight: 600; }
.aegis-user-row__identity { display: flex; flex: 1; flex-direction: column; min-width: 0; gap: 1px; }
.aegis-user-row__identity strong { overflow: hidden; color: var(--aegis-wp-ink); font-size: 13px; line-height: 1.35; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.aegis-user-row__identity small { overflow: hidden; color: var(--aegis-wp-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.aegis-status, .aegis-admin-status { display: inline-flex; align-items: center; padding: 2px 6px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; color: var(--aegis-wp-muted); background: #f6f7f7; white-space: nowrap; font-size: 11px; font-weight: 600; }
.aegis-status-dot { display: none; }
.aegis-status--active, .aegis-admin-status.is-active { border-color: #b8dfc5; color: var(--aegis-wp-success); background: #f0f9f2; }
.aegis-status--warning { border-color: #e5c98e; color: var(--aegis-wp-warning); background: #fff8e5; }
.aegis-status--blocked, .aegis-admin-status.is-paused { border-color: #e6b7b7; color: var(--aegis-wp-danger); background: #fcf0f0; }
.aegis-side-footer { display: flex; align-items: center; gap: 8px; margin: 0 20px; padding: 13px 0 16px; border-top: 1px solid var(--aegis-wp-border); color: var(--aegis-wp-muted); font-size: 12px; line-height: 1.45; }
.aegis-mini-shield { display: grid; flex: 0 0 18px; place-items: center; width: 18px; height: 18px; border: 1px solid var(--aegis-wp-border); border-radius: 2px; color: var(--aegis-wp-success); background: #f6f7f7; font-size: 12px; font-weight: 600; }
.aegis-empty-state { padding: 18px 20px; color: var(--aegis-wp-muted); font-size: 13px; }

/* Standard WordPress form footer and notices. */
.aegis-form-footer { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin: 0 0 28px; padding: 16px 0 0; border-top: 1px solid var(--aegis-wp-border); }
.aegis-form-footer p { flex: 1 1 420px; color: var(--aegis-wp-muted); font-size: 13px; line-height: 1.5; }
.aegis-save-status { flex: 0 1 auto; min-width: 150px; color: var(--aegis-wp-muted); font-size: 13px; font-weight: 600; opacity: 1; transition: opacity .3s ease; }
.aegis-save-status.is-saving { color: var(--aegis-wp-blue); }.aegis-save-status.is-success { color: var(--aegis-wp-success); }.aegis-save-status.is-error { color: var(--aegis-wp-danger); }
.aegis-save-status.is-dismissing { opacity: 0; }
.aegis-save-button { min-height: 32px !important; margin: 0 !important; padding: 0 13px !important; border-radius: 3px !important; font-size: 13px !important; font-weight: 600 !important; }
.aegis-grid.is-saving { cursor: progress; }.aegis-footer-note { display: flex; justify-content: space-between; gap: 20px; margin-top: 18px; color: var(--aegis-wp-faint); font-size: 12px; }.aegis-shell .notice { margin: 0 0 16px; border-radius: 0; }.aegis-shell .notice p { padding: 2px 0; }

/* Email template and recipient settings. */
.aegis-mail-panel, .aegis-admin-directory, .aegis-activity-panel { padding: 20px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: var(--aegis-wp-surface); box-shadow: var(--aegis-shadow-card); }
.aegis-mail-panel .aegis-panel__heading, .aegis-admin-directory .aegis-panel__heading, .aegis-activity-panel .aegis-panel__heading { padding: 0 0 13px; }
.aegis-mail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; align-items: start; gap: 24px; margin-top: 18px; }
.aegis-mail-main { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.aegis-mail-subject, .aegis-editor-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.aegis-mail-subject > span, .aegis-editor-field > span { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }
.aegis-mail-subject input { width: 100%; min-height: 38px; padding: 0 12px; border: 1px solid var(--aegis-wp-border-dark); border-radius: 4px; color: var(--aegis-wp-ink); background: #fff; font-size: 14px; box-shadow: none; }
.aegis-editor-field .wp-editor-wrap { width: 100%; min-width: 0; }.aegis-editor-field .wp-editor-container, .aegis-editor-field .mce-tinymce, .aegis-editor-field .quicktags-toolbar { border-color: var(--aegis-wp-border-dark); border-radius: 3px; box-shadow: none; }.aegis-editor-field .mce-top-part::before { display: none; }.aegis-editor-field .mce-toolbar-grp, .aegis-editor-field .quicktags-toolbar { padding: 5px 6px; background: #f6f7f7; }.aegis-editor-field .mce-btn { border: 0; border-radius: 2px; background: transparent; box-shadow: none; }.aegis-editor-field .mce-btn:hover, .aegis-editor-field .mce-btn.mce-active { background: #e5f2fb; }.aegis-editor-field .mce-edit-area iframe, .aegis-editor-field textarea.wp-editor-area { min-height: 320px; }.aegis-editor-field textarea.wp-editor-area { padding: 12px; border: 0; font: inherit; font-size: 13px; line-height: 1.65; }.aegis-editor-field .wp-editor-container:focus-within, .aegis-editor-field .mce-tinymce:focus-within { border-color: var(--aegis-wp-blue); box-shadow: var(--aegis-wp-focus); }
.aegis-mail-sidebar { min-width: 0; }
.aegis-token-help { padding: 16px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: #f9fafb; color: var(--aegis-wp-muted); font-size: 12px; }
.aegis-token-help strong { display: block; color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }
.aegis-token-help > p { margin: 4px 0 0; line-height: 1.5; }
.aegis-token-list { display: flex; flex-direction: column; gap: 6px; margin-top: 14px; }
.aegis-token-button { display: flex; flex-direction: column; gap: 2px; align-items: flex-start; width: 100%; padding: 8px 10px; border: 1px solid var(--aegis-wp-border); border-radius: 4px; color: var(--aegis-wp-ink); background: #fff; font: inherit; text-align: left; cursor: pointer; transition: border-color .12s ease, background-color .12s ease; }
.aegis-token-button code { color: var(--aegis-wp-blue-dark); background: none; padding: 0; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 12px; font-weight: 600; }
.aegis-token-button span { color: var(--aegis-wp-muted); font-size: 11px; line-height: 1.4; }
.aegis-token-button:hover, .aegis-token-button:focus { border-color: var(--aegis-wp-blue); background: #f0f6fc; outline: 0; }
.aegis-token-button:focus-visible { box-shadow: var(--aegis-wp-focus); }
.aegis-reset-template { display: inline-flex !important; align-items: center; gap: 6px; min-height: 30px !important; padding: 0 10px !important; border-color: var(--aegis-wp-border-dark) !important; border-radius: 3px !important; color: var(--aegis-wp-muted) !important; background: #fff !important; box-shadow: none !important; font-size: 12px !important; font-weight: 500 !important; }
.aegis-reset-template:hover { border-color: #d0a927 !important; color: #9a5b00 !important; background: #fffaf0 !important; }
.aegis-reset-template:focus-visible { box-shadow: var(--aegis-wp-focus) !important; }
.aegis-reset-template .dashicons { display: inline-flex; align-items: center; justify-content: center; width: 14px; height: 14px; font-size: 14px; line-height: 1; }
.aegis-reset-template, .aegis-clear-log { min-height: 32px; border-radius: 3px !important; font-size: 13px !important; }.aegis-recipient-picker { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--aegis-wp-border); }.aegis-recipient-heading strong { display: block; color: var(--aegis-wp-ink); font-size: 14px; font-weight: 600; }.aegis-recipient-heading p { margin-top: 4px; color: var(--aegis-wp-muted); font-size: 13px; }.aegis-recipient-modes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }.aegis-recipient-option { display: flex; align-items: flex-start; gap: 8px; padding: 12px; border: 1px solid var(--aegis-wp-border); border-radius: 3px; background: #fff; cursor: pointer; }.aegis-recipient-option:has(input:checked) { border-color: var(--aegis-wp-blue); background: #f6fbff; }.aegis-recipient-option input { margin: 2px 0 0; }.aegis-recipient-option__copy { display: flex; flex-direction: column; gap: 2px; }.aegis-recipient-option__copy strong { color: var(--aegis-wp-ink); font-size: 13px; }.aegis-recipient-option__copy small { color: var(--aegis-wp-muted); font-size: 12px; line-height: 1.45; }.aegis-recipient-list { margin-top: 14px; }.aegis-recipient-list[hidden] { display: none; }.aegis-recipient-list__head { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin-bottom: 8px; }.aegis-recipient-list__label { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }.aegis-recipient-summary { color: var(--aegis-wp-success); font-size: 12px; }.aegis-recipient-summary.is-empty { color: var(--aegis-wp-warning); }.aegis-recipient-actions { display: flex; gap: 6px; margin-left: auto; }.aegis-recipient-actions .button { min-height: 28px; padding: 2px 8px; border-radius: 3px; font-size: 12px; }.aegis-recipient-list.has-error .aegis-recipient-checks { border-color: #dba617; box-shadow: 0 0 0 1px rgba(219,166,23,.22); }.aegis-recipient-list.has-error .aegis-recipient-list__label { color: var(--aegis-wp-warning); }.aegis-recipient-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px; max-height: 260px; overflow-y: auto; padding: 10px; border: 1px solid var(--aegis-wp-border); border-radius: 3px; background: #f6f7f7; }.aegis-recipient-check { display: flex; align-items: flex-start; gap: 8px; min-width: 0; padding: 8px 9px; border: 1px solid var(--aegis-wp-border); border-radius: 3px; background: #fff; cursor: pointer; }.aegis-recipient-check:hover { border-color: var(--aegis-wp-border-dark); }.aegis-recipient-check input { margin: 2px 0 0; }.aegis-recipient-check span { display: flex; flex-direction: column; gap: 1px; min-width: 0; }.aegis-recipient-check strong { overflow: hidden; color: var(--aegis-wp-ink); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.aegis-recipient-check small { overflow: hidden; color: var(--aegis-wp-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

/* Administrator directory table. */
.aegis-admin-count { align-self: center; padding: 0; border: 0; color: var(--aegis-wp-muted); background: transparent; font-size: 12px; font-weight: 400; white-space: nowrap; }.aegis-admin-table-wrap { overflow-x: auto; margin-top: 16px; border-top: 1px solid var(--aegis-wp-border); }.aegis-admin-table { width: 100%; min-width: 760px; border-collapse: collapse; background: #fff; }.aegis-admin-table th { padding: 10px 12px; border-bottom: 1px solid var(--aegis-wp-border-dark); color: var(--aegis-wp-muted); background: #f6f7f7; font-size: 11px; font-weight: 600; text-align: left; }.aegis-admin-table td { padding: 12px; border-bottom: 1px solid var(--aegis-wp-border); color: var(--aegis-wp-muted); font-size: 13px; vertical-align: middle; }.aegis-admin-table tbody tr { transition: background-color .12s ease; }.aegis-admin-table tbody tr:hover td { background: #f8f9fa; }.aegis-admin-table tr:last-child td { border-bottom: 0; }.aegis-admin-table td a:not(.aegis-admin-toggle) { color: var(--aegis-wp-blue); text-decoration: none; }.aegis-admin-table td a:not(.aegis-admin-toggle):hover { text-decoration: underline; }.aegis-admin-identity { display: flex; align-items: center; gap: 9px; min-width: 210px; }.aegis-admin-identity .aegis-avatar { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; }.aegis-avatar--profile { overflow: hidden; border-color: #c7d9e8; background: #eef6fc; box-shadow: 0 1px 2px rgba(23,23,26,.08); }.aegis-avatar--profile img { display: block; width: 100%; height: 100%; object-fit: cover; }.aegis-avatar--profile.is-placeholder { border-color: #c7d9e8; background: #eef6fc; }.aegis-admin-identity strong, .aegis-admin-identity small { display: block; }.aegis-admin-identity strong { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }.aegis-admin-identity small { margin-top: 2px; color: var(--aegis-wp-muted); font-size: 12px; }.aegis-admin-action { width: 145px; text-align: right; }.aegis-admin-toggle { min-height: 30px !important; padding: 3px 9px !important; border-radius: 3px !important; font-size: 12px !important; }.aegis-admin-current { color: var(--aegis-wp-muted); font-size: 12px; white-space: nowrap; }

/* Activity log. */
.aegis-activity-panel { margin-top: 28px; padding-bottom: 0; }.aegis-activity-controls, .aegis-directory-toolbar { display: flex; align-items: flex-end; gap: 14px; margin: 16px 0; padding: 12px 0; border-top: 1px solid var(--aegis-wp-border); border-bottom: 1px solid var(--aegis-wp-border); }.aegis-activity-search, .aegis-directory-search { display: block; flex: 1 1 auto; max-width: 560px; }.aegis-activity-search-input, .aegis-directory-search-input { display: block; width: 100%; min-height: 34px; margin: 0; padding: 0 9px; border: 1px solid var(--aegis-wp-border-dark); border-radius: 3px; color: var(--aegis-wp-ink); background: #fff; font-size: 13px; box-shadow: none; }.aegis-activity-page-size, .aegis-directory-page-size { display: flex; align-items: center; gap: 8px; min-height: 34px; color: var(--aegis-wp-muted); font-size: 12px; }.aegis-activity-page-size-select, .aegis-directory-page-size-select { min-width: 68px; height: 34px; margin: 0; padding: 0 22px 0 7px; border: 1px solid var(--aegis-wp-border-dark); border-radius: 3px; color: var(--aegis-wp-ink); background: #fff; font-size: 13px; box-shadow: none; }.aegis-activity-table-wrap { overflow-x: auto; margin: 0; border-top: 1px solid var(--aegis-wp-border); }.aegis-activity-table { width: 100%; min-width: 760px; border-collapse: collapse; table-layout: fixed; }.aegis-activity-table th { padding: 10px 12px; border-bottom: 1px solid var(--aegis-wp-border-dark); color: var(--aegis-wp-muted); background: #f6f7f7; text-align: left; font-size: 11px; font-weight: 600; }.aegis-activity-table td { padding: 12px; border-bottom: 1px solid var(--aegis-wp-border); color: var(--aegis-wp-muted); vertical-align: middle; font-size: 12px; line-height: 1.45; }.aegis-activity-table tbody tr { transition: background-color .12s ease; }.aegis-activity-table tbody tr:hover td { background: #f8f9fa; }.aegis-activity-table td:first-child { color: var(--aegis-wp-ink); }.aegis-activity-table td strong { font-size: 13px; font-weight: 600; }.aegis-event-dot { display: none; }.aegis-activity-table time { color: var(--aegis-wp-muted); font-size: 12px; white-space: nowrap; }.aegis-activity-footer, .aegis-directory-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 54px; padding: 11px 0 13px; }.aegis-activity-count, .aegis-directory-count { color: var(--aegis-wp-muted); font-size: 12px; }.aegis-activity-pagination, .aegis-directory-pagination { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 4px; }.aegis-page-button { min-width: 30px; height: 30px; margin: 0 !important; padding: 0 8px !important; border-radius: 3px !important; font-size: 12px !important; }.aegis-page-button.is-current { border-color: var(--aegis-wp-blue) !important; color: #fff !important; background: var(--aegis-wp-blue) !important; }.aegis-page-button:disabled { cursor: default; opacity: .55; }

/* Activity event badges and readable context. */
.aegis-event-badge { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 5px 9px; border: 1px solid transparent; border-radius: 6px; color: var(--aegis-wp-ink); background: #f6f7f7; font-size: 12px; line-height: 1.25; white-space: normal; }
.aegis-event-badge strong { color: inherit !important; font-size: 12px !important; font-weight: 600 !important; }
.aegis-event-badge__dot { flex: 0 0 7px; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px rgba(100,105,112,.12); }
.aegis-event-badge--success { border-color: #b8dfc5; color: #08752b; background: #f0f9f2; }
.aegis-event-badge--info { border-color: #b9d8ee; color: #135e96; background: #eff7fd; }
.aegis-event-badge--warning { border-color: #ead9a5; color: #795500; background: #fff8df; }
.aegis-event-badge--danger { border-color: #e6b7b7; color: #9f2526; background: #fcf0f0; }
.aegis-event-badge--critical { border-color: #dca4c5; color: #8a174f; background: #fff0f7; }
.aegis-event-badge--neutral { border-color: var(--aegis-wp-border); color: var(--aegis-wp-muted); background: #f6f7f7; }
.aegis-event-badge--priority-critical { box-shadow: inset 0 0 0 1px rgba(138,23,79,.08); }
.aegis-event-badge--priority-high { box-shadow: inset 0 0 0 1px rgba(121,85,0,.06); }
.aegis-activity-context { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.aegis-activity-context__summary { color: var(--aegis-wp-ink); font-size: 12px; line-height: 1.45; }
.aegis-activity-context__detail { color: var(--aegis-wp-muted); font-size: 11px; line-height: 1.45; }

/* Accessible, WordPress-shaped confirmation modal. */
@media (prefers-reduced-motion: no-preference) {
  .aegis-confirm-overlay { animation: aegis-overlay-in .14s ease-out; }
  .aegis-confirm-dialog { animation: aegis-dialog-in .16s cubic-bezier(.2, .9, .32, 1.1); }
}
@keyframes aegis-overlay-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes aegis-dialog-in { from { opacity: 0; transform: translateY(6px) scale(.97); } to { opacity: 1; transform: translateY(0) scale(1); } }
.aegis-confirm-overlay { position: fixed; z-index: 100000; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(23,23,26,.5); backdrop-filter: blur(1.5px); -webkit-backdrop-filter: blur(1.5px); }
.aegis-confirm-dialog { width: min(420px, 100%); overflow: hidden; border: 1px solid rgba(0,0,0,.08); border-radius: 12px; background: #fff; box-shadow: 0 24px 48px -12px rgba(23,23,26,.35), 0 4px 12px rgba(23,23,26,.1); color: var(--aegis-wp-ink); }
.aegis-confirm-dialog__body { padding: 24px 24px 20px; }
.aegis-confirm-dialog__head { display: flex; align-items: flex-start; gap: 14px; }
.aegis-confirm-icon { display: grid; flex: 0 0 auto; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: var(--aegis-wp-blue); background: #e5f2fb; }
.aegis-confirm-icon .dashicons { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; font-size: 20px; line-height: 1; }
.aegis-confirm-dialog.is-destructive .aegis-confirm-icon { color: var(--aegis-wp-danger); background: #fbeaea; }
.aegis-confirm-dialog h2 { margin-top: 7px; color: var(--aegis-wp-ink); font-size: 16px; line-height: 1.35; font-weight: 600; }
.aegis-confirm-dialog p { margin-top: 8px; color: var(--aegis-wp-muted); font-size: 13px; line-height: 1.55; }
.aegis-confirm-dialog p strong { color: var(--aegis-wp-ink); font-weight: 600; }
.aegis-confirm-dialog__actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--aegis-wp-border); }
.aegis-confirm-dialog__actions .button { min-height: 34px !important; padding: 4px 14px !important; border-radius: 6px !important; font-size: 13px !important; font-weight: 500 !important; transition: background-color .12s ease, border-color .12s ease; }
.aegis-confirm-cancel { border-color: var(--aegis-wp-border-dark) !important; color: var(--aegis-wp-ink) !important; background: #fff !important; }
.aegis-confirm-cancel:hover { background: #f6f7f7 !important; }
.aegis-confirm-approve { border-color: var(--aegis-wp-blue) !important; color: #fff !important; background: var(--aegis-wp-blue) !important; font-weight: 600 !important; }
.aegis-confirm-approve:hover { border-color: var(--aegis-wp-blue-dark) !important; background: var(--aegis-wp-blue-dark) !important; }
.aegis-confirm-dialog.is-destructive .aegis-confirm-approve { border-color: var(--aegis-wp-danger) !important; background: var(--aegis-wp-danger) !important; }
.aegis-confirm-dialog.is-destructive .aegis-confirm-approve:hover { border-color: #8a1f20 !important; background: #8a1f20 !important; }

@media (max-width: 900px) { .aegis-hero__content { align-items: flex-start; flex-direction: column; gap: 10px; }.aegis-health__ring { text-align: left; }.aegis-mail-fields { grid-template-columns: 1fr; } }
@media (max-width: 700px) { .aegis-shell { margin-right: 12px; }.aegis-metrics { grid-template-columns: 1fr; }.aegis-metric { border-right: 0; border-bottom: 1px solid var(--aegis-wp-border); }.aegis-metric:last-child { border-bottom: 0; }.aegis-panel__heading { align-items: flex-start; flex-direction: column; }.aegis-reset-template, .aegis-clear-log { width: 100%; }.aegis-policy-card { grid-template-columns: 34px minmax(0, 1fr); align-items: start; }.aegis-policy-controls { grid-column: 2; align-items: flex-start; padding-top: 10px; }.aegis-policy-stack, .aegis-policy-note { align-items: flex-start; }.aegis-activity-controls, .aegis-directory-toolbar { align-items: stretch; flex-direction: column; gap: 10px; }.aegis-activity-search, .aegis-directory-search { max-width: none; }.aegis-activity-page-size, .aegis-directory-page-size { justify-content: space-between; }.aegis-activity-footer, .aegis-directory-footer { align-items: flex-start; flex-direction: column; }.aegis-activity-pagination, .aegis-directory-pagination { justify-content: flex-start; width: 100%; }.aegis-recipient-modes { grid-template-columns: 1fr; }.aegis-recipient-actions { width: 100%; margin-left: 0; }.aegis-recipient-actions .button { flex: 1; } }
@media (max-width: 520px) { .aegis-confirm-overlay { padding: 14px; }.aegis-confirm-dialog__body { padding: 20px 18px 18px; }.aegis-confirm-dialog__actions { flex-direction: column-reverse; }.aegis-confirm-dialog__actions .button { width: 100%; justify-content: center; } }

/* Pending Administrator review queue. */
.aegis-pending-admin-panel { margin: 0 0 24px; border: 1px solid #dba617; border-radius: 6px; background: #fffdf5; box-shadow: var(--aegis-shadow-card); overflow: hidden; }
.aegis-pending-admin-panel__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 18px 20px 15px; border-bottom: 1px solid #ead9a5; }
.aegis-pending-admin-panel__header h2 { margin: 0; color: var(--aegis-wp-ink); font-size: 18px; font-weight: 600; }
.aegis-pending-admin-panel__header p:not(.aegis-eyebrow) { max-width: 760px; margin-top: 5px; color: #6b5b2a; font-size: 13px; line-height: 1.5; }
.aegis-pending-admin-panel__count { flex: 0 0 auto; padding: 3px 8px; border: 1px solid #dba617; border-radius: 3px; color: #704f00; background: #fff8df; font-size: 12px; font-weight: 600; white-space: nowrap; }
.aegis-pending-admin-list { background: #fff; }
.aegis-pending-admin-card { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto auto; align-items: center; gap: 13px; padding: 14px 20px; border-bottom: 1px solid var(--aegis-wp-border); }
.aegis-pending-admin-card:last-child { border-bottom: 0; }
.aegis-avatar--pending { color: #704f00; border-color: #ead9a5; background: #fff8df; }
.aegis-pending-admin-card__identity { display: flex; flex-direction: column; min-width: 0; gap: 2px; }
.aegis-pending-admin-card__identity strong { overflow: hidden; color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.aegis-pending-admin-card__identity small { overflow: hidden; color: var(--aegis-wp-muted); font-size: 12px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.aegis-pending-admin-card__status { padding: 3px 7px; border: 1px solid #e5c98e; border-radius: 3px; color: #704f00; background: #fff8df; font-size: 11px; font-weight: 600; white-space: nowrap; }
.aegis-pending-admin-card__actions { display: flex; align-items: center; gap: 6px; }
.aegis-pending-admin-card__actions .button { min-height: 30px; padding: 3px 9px; border-radius: 3px; font-size: 12px; }
.aegis-pending-grant { border-color: var(--aegis-wp-blue) !important; background: var(--aegis-wp-blue) !important; }
.aegis-pending-grant:hover { border-color: var(--aegis-wp-blue-dark) !important; background: var(--aegis-wp-blue-dark) !important; }
.aegis-pending-admin-panel.is-loading { opacity: .65; pointer-events: none; }

/* Pending-admin details view. */
.aegis-details-dialog { width: min(560px, 100%); }
.aegis-details-dialog__intro { margin-top: 6px !important; }
.aegis-details-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 20px 0 0; border: 1px solid var(--aegis-wp-border); background: #f6f7f7; }
.aegis-details-grid > div { min-width: 0; padding: 12px 14px; border-right: 1px solid var(--aegis-wp-border); border-bottom: 1px solid var(--aegis-wp-border); }
.aegis-details-grid > div:nth-child(2n) { border-right: 0; }
.aegis-details-grid > div:nth-last-child(-n+2) { border-bottom: 0; }
.aegis-details-grid dt { margin: 0 0 3px; color: var(--aegis-wp-muted); font-size: 11px; font-weight: 600; text-transform: uppercase; }
.aegis-details-grid dd { overflow-wrap: anywhere; margin: 0; color: var(--aegis-wp-ink); font-size: 13px; font-weight: 500; }
.aegis-details-grid dd a { color: var(--aegis-wp-blue); text-decoration: none; }
.aegis-details-grid dd a:hover { text-decoration: underline; }
.aegis-details-status { color: var(--aegis-wp-danger); font-weight: 600; }
.aegis-details-dialog__note { margin-top: 16px !important; padding: 11px 12px; border-left: 3px solid #dba617; background: #fffdf5; }
.aegis-details-profile { margin-left: auto !important; }

@media (max-width: 780px) {
  .aegis-pending-admin-card { grid-template-columns: 32px minmax(0, 1fr); }
  .aegis-pending-admin-card__status, .aegis-pending-admin-card__actions { grid-column: 2; justify-self: start; }
  .aegis-pending-admin-card__actions { width: 100%; }
  .aegis-pending-admin-card__actions .button { flex: 0 0 auto; }
}
@media (max-width: 520px) {
  .aegis-pending-admin-panel__header { flex-direction: column; gap: 8px; }
  .aegis-pending-admin-card__actions { flex-wrap: wrap; }
  .aegis-pending-admin-card__actions .button { flex: 1 1 120px; }
  .aegis-details-grid { grid-template-columns: 1fr; }
  .aegis-details-grid > div, .aegis-details-grid > div:nth-child(2n), .aegis-details-grid > div:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid var(--aegis-wp-border); }
  .aegis-details-grid > div:last-child { border-bottom: 0; }
}

/* Native-looking pending account state inside the main Administrator table. */
.aegis-admin-status.is-pending { border-color: #e5c98e; color: #704f00; background: #fff8df; }
.aegis-admin-pending-note { display: block; margin-top: 3px; color: #704f00; font-size: 11px; }
.aegis-admin-table .aegis-pending-row td { background: #fffdf5; }
.aegis-admin-table .aegis-pending-row .aegis-admin-toggle { border-color: #dba617; color: #704f00; background: #fff8df; }
.aegis-admin-table .aegis-pending-row .aegis-admin-toggle:hover { border-color: #996800; color: #704f00; background: #fff4cc; }

.aegis-admin-directory { margin-top: 0; }

/* Native WordPress-style settings tabs. */
.aegis-tab-nav { display: flex; align-items: flex-end; gap: 20px; margin: 0 0 18px; border-bottom: 1px solid var(--aegis-wp-border); overflow-x: auto; }
.aegis-tab-link { position: relative; min-height: 38px; margin: 0; padding: 0 0 10px; border: 0; color: var(--aegis-wp-muted); background: transparent; font-family: inherit; font-size: 13px; font-weight: 600; line-height: 1.3; white-space: nowrap; cursor: pointer; }
.aegis-tab-link:hover { color: var(--aegis-wp-ink); }
.aegis-tab-link:focus { color: var(--aegis-wp-ink); outline: 0; box-shadow: var(--aegis-wp-focus); }
.aegis-tab-link::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: transparent; content: ''; }
.aegis-tab-link.is-active { color: var(--aegis-wp-blue); }
.aegis-tab-link.is-active::after { background: var(--aegis-wp-blue); }
.aegis-tab-panels { min-width: 0; }
.aegis-tab-panel[hidden] { display: none; }
.aegis-tab-panel { min-width: 0; }
@media (max-width: 700px) { .aegis-tab-nav { gap: 16px; margin-bottom: 14px; }.aegis-tab-link { font-size: 12px; } }


/* Final settings-page tab treatment: one quiet WordPress-native navigation and one clear content surface. */
.aegis-shell .aegis-tab-nav {
  display: flex;
  align-items: flex-end;
  gap: 0;
  margin: 0 0 0;
  padding: 0;
  border-bottom: 1px solid var(--aegis-wp-border-dark);
  overflow-x: auto;
  scrollbar-width: thin;
}
.aegis-shell .aegis-tab-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  margin: 0 3px -1px 0;
  padding: 0 15px;
  border: 1px solid transparent;
  border-bottom: 0;
  border-radius: 6px 6px 0 0;
  color: var(--aegis-wp-muted);
  background: transparent;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  white-space: nowrap;
  cursor: pointer;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
.aegis-shell .aegis-tab-link .dashicons {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 7px;
  width: 16px;
  height: 16px;
  font-size: 16px;
  line-height: 1;
  color: var(--aegis-wp-faint);
  opacity: .85;
  transition: color .15s ease, opacity .15s ease;
}
.aegis-shell .aegis-tab-link:hover {
  color: var(--aegis-wp-ink);
  background: #f6f7f7;
}
.aegis-shell .aegis-tab-link:hover .dashicons {
  color: var(--aegis-wp-muted);
  opacity: 1;
}
.aegis-shell .aegis-tab-link:focus-visible {
  z-index: 1;
  color: var(--aegis-wp-ink);
  outline: 0;
  box-shadow: var(--aegis-wp-focus);
}
.aegis-shell .aegis-tab-link::after {
  right: 9px;
  bottom: 0;
  left: 9px;
  height: 3px;
  border-radius: 2px 2px 0 0;
  background: transparent;
  transition: background-color .15s ease;
}
.aegis-shell .aegis-tab-link.is-active {
  z-index: 1;
  border-color: var(--aegis-wp-border-dark);
  color: var(--aegis-wp-ink);
  background: #fff;
  box-shadow: 0 -2px 6px rgba(23,23,26,.03);
}
.aegis-shell .aegis-tab-link.is-active .dashicons {
  color: var(--aegis-wp-blue);
  opacity: 1;
}
.aegis-shell .aegis-tab-link.is-active::after {
  background: var(--aegis-wp-blue);
}
.aegis-shell .aegis-tab-panels {
  min-width: 0;
  margin: 0 0 24px;
}
.aegis-shell .aegis-tab-panel[hidden] {
  display: none !important;
}
.aegis-shell .aegis-tab-panel {
  min-width: 0;
  margin: 0;
  padding: 24px;
  border: 1px solid var(--aegis-wp-border-dark);
  border-top: 0;
  border-radius: 0 6px 6px 6px;
  background: #fff;
  box-shadow: var(--aegis-shadow-card);
}
.aegis-shell .aegis-tab-panel > .aegis-metrics {
  margin: 0 0 24px;
}
.aegis-shell .aegis-tab-panel > .aegis-panel {
  margin-bottom: 0;
}
.aegis-shell .aegis-tab-panel > .aegis-panel--side,
.aegis-shell .aegis-tab-panel > .aegis-mail-panel,
.aegis-shell .aegis-tab-panel > .aegis-admin-directory,
.aegis-shell .aegis-tab-panel > .aegis-activity-panel {
  border: 0;
  background: transparent;
  box-shadow: none;
}
.aegis-shell .aegis-tab-panel > .aegis-panel--side,
.aegis-shell .aegis-tab-panel > .aegis-mail-panel,
.aegis-shell .aegis-tab-panel > .aegis-admin-directory,
.aegis-shell .aegis-tab-panel > .aegis-activity-panel {
  padding: 0;
}
.aegis-shell .aegis-tab-panel > .aegis-panel--policies {
  border-color: var(--aegis-wp-border-dark);
}
.aegis-shell .aegis-tab-panel > .aegis-panel--policies .aegis-panel__heading,
.aegis-shell .aegis-tab-panel > .aegis-panel--side .aegis-panel__heading,
.aegis-shell .aegis-tab-panel > .aegis-mail-panel .aegis-panel__heading,
.aegis-shell .aegis-tab-panel > .aegis-admin-directory .aegis-panel__heading,
.aegis-shell .aegis-tab-panel > .aegis-activity-panel .aegis-panel__heading {
  padding-top: 8px;
}
.aegis-shell .aegis-form-footer {
  margin-top: 16px;
}
.aegis-shell .aegis-footer-note {
  margin-top: 8px;
}

/* Keep third-party admin notices out of Aegis’s own content surface. */
body.toplevel_page_aegis-user-guard #wpbody-content .aegis-shell .notice:not(.aegis-native-notice) {
  display: none !important;
}

@media (max-width: 700px) {
  .aegis-shell .aegis-tab-link {
    min-height: 40px;
    padding: 0 12px;
    font-size: 12px;
  }
  .aegis-shell .aegis-tab-panel {
    padding: 16px;
  }
}


/* Final page-frame correction: keep overflow inside table wrappers and keep the native WP footer in normal flow. */
html:has(body.toplevel_page_aegis-user-guard),
body.toplevel_page_aegis-user-guard {
  overflow-x: hidden;
}
body.toplevel_page_aegis-user-guard #wpcontent,
body.toplevel_page_aegis-user-guard #wpbody,
body.toplevel_page_aegis-user-guard #wpbody-content {
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
}
body.toplevel_page_aegis-user-guard #wpbody-content {
  padding-bottom: 34px;
}
body.toplevel_page_aegis-user-guard #wpfooter {
  position: relative;
  clear: both;
}
.aegis-shell {
  width: 100%;
  max-width: 1200px;
  min-width: 0;
  margin-right: 0;
  overflow: hidden;
}
.aegis-shell .aegis-tab-nav,
.aegis-shell .aegis-tab-panels,
.aegis-shell .aegis-tab-panel,
.aegis-shell .aegis-panel,
.aegis-shell .aegis-admin-table-wrap,
.aegis-shell .aegis-activity-table-wrap,
.aegis-shell .aegis-form-footer {
  min-width: 0;
  max-width: 100%;
}
.aegis-shell .aegis-admin-table-wrap,
.aegis-shell .aegis-activity-table-wrap,
.aegis-shell .aegis-recipient-checks {
  overflow-x: auto;
}


/* WordPress admin frame correction: the footer must not overlay the settings content or widen the document. */
body.toplevel_page_aegis-user-guard #wpfooter {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: auto !important;
  min-width: 0 !important;
  clear: both !important;
}
body.toplevel_page_aegis-user-guard #wpfooter #footer-thankyou {
  float: none;
}
body.toplevel_page_aegis-user-guard #wpfooter #footer-upgrade {
  float: right;
}
body.toplevel_page_aegis-user-guard .aegis-native-notices {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
body.toplevel_page_aegis-user-guard #wpbody-content .aegis-native-notices .notice,
body.toplevel_page_aegis-user-guard #wpbody-content .aegis-native-notice {
  display: block !important;
}


/* Final tab geometry correction. Keep the tablist one-dimensional and every panel sized by its own content. */
body.toplevel_page_aegis-user-guard #wpcontent,
body.toplevel_page_aegis-user-guard #wpbody,
body.toplevel_page_aegis-user-guard #wpbody-content,
body.toplevel_page_aegis-user-guard .wrap.aegis-shell {
  height: auto !important;
  min-height: 0 !important;
}
body.toplevel_page_aegis-user-guard #wpcontent,
body.toplevel_page_aegis-user-guard #wpbody-content {
  padding-bottom: 20px !important;
}
body.toplevel_page_aegis-user-guard #wpbody {
  overflow: visible !important;
}
body.toplevel_page_aegis-user-guard #wpbody-content {
  overflow-x: hidden !important;
  overflow-y: visible !important;
}
.aegis-shell {
  display: block !important;
  width: auto !important;
  max-width: 1200px !important;
  min-height: 0 !important;
  margin-bottom: 20px !important;
  overflow: visible !important;
}
.aegis-shell .aegis-tab-nav {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-end !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
}
.aegis-shell .aegis-tab-nav::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}
.aegis-shell .aegis-tab-link {
  flex: 0 0 auto !important;
  border-radius: 3px 3px 0 0 !important;
}
.aegis-shell .aegis-tab-panels {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 20px !important;
}
.aegis-shell .aegis-tab-panel {
  display: block;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 20px !important;
  overflow: visible !important;
}
.aegis-shell .aegis-tab-panel[hidden] {
  display: none !important;
}
.aegis-shell .aegis-tab-panel > * {
  max-width: 100%;
}
.aegis-shell .aegis-tab-panel > .aegis-panel,
.aegis-shell .aegis-tab-panel > .aegis-panel--policies,
.aegis-shell .aegis-tab-panel > .aegis-panel--side,
.aegis-shell .aegis-tab-panel > .aegis-mail-panel,
.aegis-shell .aegis-tab-panel > .aegis-admin-directory,
.aegis-shell .aegis-tab-panel > .aegis-activity-panel {
  height: auto !important;
  min-height: 0 !important;
  margin-bottom: 0 !important;
}
.aegis-shell .aegis-form-footer {
  height: auto !important;
  min-height: 0 !important;
  margin: 16px 0 0 !important;
  padding-bottom: 0 !important;
}
body.toplevel_page_aegis-user-guard #wpfooter {
  min-height: 0 !important;
  padding-bottom: 10px !important;
}


/* Persistent settings action bar: visible before every tab panel and aligned with WordPress admin controls. */
.aegis-shell .aegis-settings-savebar {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  width: 100%;
  min-height: 46px;
  margin: 0 0 16px !important;
  padding: 0 0 14px !important;
  border-top: 0 !important;
  border-bottom: 1px solid var(--aegis-wp-border) !important;
}
.aegis-shell .aegis-settings-savebar p {
  flex: 1 1 auto;
  margin: 0 !important;
  color: var(--aegis-wp-muted);
  font-size: 12px;
  line-height: 1.45;
}
.aegis-shell .aegis-settings-savebar .aegis-save-status {
  flex: 0 0 auto;
  min-width: 0;
  font-size: 12px;
}
.aegis-shell .aegis-settings-savebar .submit {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
}
.aegis-shell .aegis-settings-savebar .aegis-save-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 36px !important;
  padding: 0 16px !important;
  border-radius: 3px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
@media (max-width: 560px) {
  .aegis-shell .aegis-settings-savebar {
    align-items: stretch;
    flex-wrap: wrap;
    gap: 8px;
  }
  .aegis-shell .aegis-settings-savebar p {
    flex-basis: 100%;
  }
  .aegis-shell .aegis-settings-savebar .aegis-save-button {
    width: 100%;
  }
}


/* Per-tab save action: each panel ends with its own native WordPress-style footer. */
.aegis-shell .aegis-tab-panel .aegis-settings-savebar {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  width: 100%;
  min-height: 0;
  margin: 24px 0 0 !important;
  padding: 16px 0 0 !important;
  border-top: 1px solid var(--aegis-wp-border) !important;
  border-bottom: 0 !important;
}
.aegis-shell .aegis-tab-panel .aegis-settings-savebar > p:first-child {
  flex: 1 1 auto;
  margin: 0 auto 0 0 !important;
}
.aegis-shell .aegis-tab-panel .aegis-settings-savebar .aegis-save-status {
  flex: 0 1 auto;
}
.aegis-shell .aegis-tab-panel .aegis-settings-savebar .submit {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
}
@media (max-width: 560px) {
  .aegis-shell .aegis-tab-panel .aegis-settings-savebar {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .aegis-shell .aegis-tab-panel .aegis-settings-savebar > p:first-child {
    flex-basis: 100%;
  }
  .aegis-shell .aegis-tab-panel .aegis-settings-savebar .submit,
  .aegis-shell .aegis-tab-panel .aegis-settings-savebar .aegis-save-button {
    width: 100%;
  }
}

/* Panel heading action clusters (export buttons alongside counts/titles). */
.aegis-panel-heading-actions { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.aegis-export-button { display: inline-flex !important; align-items: center; gap: 6px; min-height: 30px !important; padding: 0 10px !important; border-radius: 3px !important; font-size: 12px !important; }
.aegis-export-button .dashicons { display: inline-flex; align-items: center; justify-content: center; width: 15px; height: 15px; font-size: 15px; line-height: 1; }

/* Password complexity sub-options row. */
.aegis-policy-subrow { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 9px; }
.aegis-policy-subrow label { display: inline-flex; align-items: center; gap: 5px; color: var(--aegis-wp-muted); font-size: 12px; font-weight: 400; }
.aegis-policy-subrow input { margin: 0; }

/* Compact multi-action button group in the Administrator directory. */
.aegis-admin-action-group { display: inline-flex; align-items: center; gap: 5px; }
.aegis-admin-action-group .button { box-sizing: border-box !important; display: inline-flex !important; align-items: center; justify-content: center; height: 28px !important; min-height: 0 !important; margin: 0 !important; padding: 0 9px !important; border-radius: 3px !important; font-size: 12px !important; line-height: 1 !important; }
.aegis-admin-action-group a.button:not(.aegis-admin-toggle) { width: 28px !important; padding: 0 !important; }
.aegis-admin-action-group .dashicons { display: inline-flex; align-items: center; justify-content: center; width: 15px; height: 15px; font-size: 15px; line-height: 1; }
.aegis-session-count { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 20px; padding: 0 6px; border: 1px solid var(--aegis-wp-border); border-radius: 999px; color: var(--aegis-wp-muted); background: #f6f7f7; font-size: 11px; font-weight: 600; }

/* IP allow / block list. */
.aegis-ip-panel { padding: 20px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: var(--aegis-wp-surface); box-shadow: var(--aegis-shadow-card); }
.aegis-tab-panels--standalone { margin-top: 20px; }
.aegis-ip-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; margin-top: 18px; padding: 16px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: #f9fafb; }
.aegis-ip-field { display: flex; flex-direction: column; gap: 6px; flex: 1 1 180px; min-width: 0; }
.aegis-ip-field span { color: var(--aegis-wp-ink); font-size: 12px; font-weight: 600; }
.aegis-ip-field input, .aegis-ip-field select { min-height: 32px; padding: 0 8px; border: 1px solid var(--aegis-wp-border-dark); border-radius: 3px; color: var(--aegis-wp-ink); background: #fff; font-size: 13px; }
.aegis-ip-field input:focus, .aegis-ip-field select:focus { border-color: var(--aegis-wp-blue); box-shadow: var(--aegis-wp-focus); outline: 0; }
.aegis-ip-form .button { flex: 0 0 auto; min-height: 32px; }
.aegis-ip-table-wrap { margin-top: 18px; }
.aegis-ip-table code { font-size: 12px; }

/* Security hardening checklist. */
.aegis-checklist-panel { padding: 20px; border: 1px solid var(--aegis-wp-border); border-radius: 6px; background: var(--aegis-wp-surface); box-shadow: var(--aegis-shadow-card); }
.aegis-checklist-score { display: flex; flex: 0 0 auto; flex-direction: column; align-items: center; gap: 6px; }
.aegis-checklist-score__label { color: var(--aegis-wp-muted); font-size: 12px; font-weight: 600; }
.aegis-score-ring { position: relative; width: 64px; height: 64px; }
.aegis-score-ring__svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.aegis-score-ring__track { fill: none; stroke: var(--aegis-wp-border); stroke-width: 6; }
.aegis-score-ring__fill { fill: none; stroke-width: 6; stroke-linecap: round; stroke-dasharray: 175.93; stroke-dashoffset: calc(175.93 - (175.93 * var(--pct, 0)) / 100); stroke: hsl(calc(var(--pct, 0) * 1.2), 72%, 42%); transition: stroke-dashoffset .7s cubic-bezier(.4, 0, .2, 1), stroke .4s ease; }
.aegis-score-ring__value { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; white-space: nowrap; color: var(--aegis-wp-ink); font-size: 17px; font-weight: 700; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.aegis-score-ring__value small { margin-left: 1px; color: var(--aegis-wp-muted); font-size: 10px; font-weight: 600; }
.aegis-checklist-list { display: flex; flex-direction: column; gap: 0; margin: 18px 0 0; padding: 0; list-style: none; }
.aegis-checklist-item { display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: start; gap: 14px; padding: 16px 4px; border-top: 1px solid var(--aegis-wp-border); transition: background-color .12s ease; }
.aegis-checklist-item:first-child { border-top: 0; padding-top: 0; }
.aegis-checklist-item:hover { background: #fbfbfc; }
.aegis-checklist-icon { display: grid; place-items: center; width: 26px; height: 26px; margin-top: 1px; border-radius: 50%; font-size: 14px; font-weight: 700; }
.aegis-checklist-item.is-pass .aegis-checklist-icon { color: var(--aegis-wp-success); background: #e9f7ec; }
.aegis-checklist-item.is-fail .aegis-checklist-icon { color: var(--aegis-wp-warning); background: #fff2df; }
.aegis-checklist-copy { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.aegis-checklist-row { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }
.aegis-checklist-row strong { color: var(--aegis-wp-ink); font-size: 13px; font-weight: 600; }
.aegis-checklist-badge { display: inline-flex; align-items: center; padding: 2px 9px; border-radius: 6px; font-size: 11px; font-weight: 600; letter-spacing: .01em; white-space: nowrap; }
.aegis-checklist-badge--pass { color: var(--aegis-wp-success); background: #e9f7ec; }
.aegis-checklist-badge--toggle { color: #135e96; background: #e5f2fb; }
.aegis-checklist-badge--link { color: #9a5b00; background: #fff2df; }
.aegis-checklist-badge--manual { color: var(--aegis-wp-muted); background: #f1f1f2; }
.aegis-checklist-desc { color: var(--aegis-wp-muted); font-size: 12px; line-height: 1.5; }
.aegis-checklist-hint { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 6px; padding: 10px 12px; border: 1px solid #f3dcb0; border-radius: 6px; background: #fffaf0; }
.aegis-checklist-hint-icon { flex: 0 0 auto; font-size: 13px; line-height: 1; }
.aegis-checklist-hint-text { flex: 1 1 220px; min-width: 0; color: #6b5119; font-size: 12px; line-height: 1.5; }
.aegis-checklist-fix-action { flex: 0 0 auto; display: inline-flex !important; align-items: center; gap: 8px; min-height: 26px !important; padding: 0 10px !important; border-color: #135e96 !important; border-radius: 3px !important; color: #135e96 !important; background: #fff !important; font-size: 12px !important; font-weight: 600 !important; }
.aegis-checklist-fix-action__arrow { display: inline-flex; }
.aegis-checklist-fix-action:hover { background: #e5f2fb !important; }
.aegis-checklist-item.is-fail:has(.aegis-checklist-badge--toggle) .aegis-checklist-hint { border-color: #b7d9f2; background: #f0f6fc; }
.aegis-checklist-item.is-fail:has(.aegis-checklist-badge--toggle) .aegis-checklist-hint-text { color: #135e96; }

@media (max-width: 700px) {
  .aegis-panel-heading-actions { flex-wrap: wrap; }
  .aegis-ip-form { flex-direction: column; align-items: stretch; }
  .aegis-ip-field { flex: 1 1 auto; }
  .aegis-checklist-item { grid-template-columns: 22px minmax(0, 1fr); }
}

/* Two-factor setup status text on the user profile screen. */
.aegis-2fa-status { color: var(--aegis-wp-muted); font-size: 13px; }
.aegis-2fa-status.is-error { color: var(--aegis-wp-danger); }

/* Custom tooltip: a small "why this button exists" hint, not a bare title attribute.
   Positioned via JS as position:fixed (see admin.js) so it can never widen a
   scrollable ancestor (a table wrapper, etc.) the way an absolutely-positioned
   bubble anchored to the trigger itself would. */
.aegis-tooltip { position: fixed; z-index: 100010; display: flex; align-items: center; gap: 5px; max-width: 260px; padding: 6px 10px; border-radius: 6px; background: #1d2327; color: #fff; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 11.5px; font-weight: 500; line-height: 1.4; white-space: nowrap; box-shadow: 0 4px 12px rgba(23,23,26,.22); opacity: 0; pointer-events: none; transform: translateY(3px); transition: opacity .12s ease, transform .12s ease; }
.aegis-tooltip.is-visible { opacity: 1; transform: translateY(0); }
.aegis-tooltip .dashicons { flex: 0 0 auto; width: 13px; height: 13px; font-size: 13px; color: #f4c66b; }
.aegis-tooltip::after { content: ''; position: absolute; bottom: -5px; left: var(--aegis-tooltip-arrow, 50%); width: 8px; height: 8px; margin-left: -4px; border-radius: 1px; background: #1d2327; transform: rotate(45deg); }
.aegis-tooltip.is-below::after { bottom: auto; top: -5px; }
