/* AI Websites Engine console theme (approved design, design/console-v1).
   Loaded after Filament's own stylesheet by the HEAD_END render hook in
   ConsolePanelProvider. Tokens and values come from design/system/base.css
   and design/DESIGN-SYSTEM.md; nothing here is invented.
   Elevation is a 1px border. Shadows only on floating layers.
   Every number is tabular. Mono is for machine values only.
   Light only: the panel's dark mode is off (DESIGN-SYSTEM.md 9, step 1.5). */

/* ---------- Fonts, served from this host (no CDN) ---------- */
@font-face{font-family:"Inter";src:url("../../fonts/aiw/Inter-latin.woff2") format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("../../fonts/aiw/GeistMono-latin.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}

/* ---------- Tokens ---------- */
:root{
  --canvas:#F7F6F4; --surface:#FFFFFF; --subtle:#F1EFEC; --muted:#E9E6E2;
  --bd-sub:#E6E3DE; --bd:#D9D5CF; --bd-str:#BDB8B0;
  --t3:#8A847B; --t2:#5F5A52; --t1:#1F1D1A;
  --ink:#14213D; --ink-h:#1D2E52;
  --acc:#2A4A7F; --acc5:#3B5F99; --acc1:#E8EDF5; --acc0:#F3F6FA;
  --ok:#2E6B45; --ok-bg:#EAF4EE; --ok-bd:#BFDCC9;
  --warn:#8A5A0B; --warn-bg:#FBF3E3; --warn-bd:#EAD3A4;
  --danger:#A8272F; --danger-bg:#FBECEC; --danger-bd:#EDC2C4;
  --info:#2A4A7F; --info-bg:#EEF2F8; --info-bd:#C9D5E8;
  --neutral:#5F5A52; --neutral-bg:#F1EFEC; --neutral-bd:#D9D5CF;
  --d1:#F3F6FA; --d2:#DCE4F0; --d3:#B7C8E0; --d4:#7F9CC6; --d5:#3B5F99; --d6:#2A4A7F;
  --sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px; --s8:32px; --s10:40px; --s12:48px;
  --r-s:6px; --r-m:8px; --r-l:12px;
  --sh-float:0 8px 24px rgba(20,33,61,.12),0 1px 3px rgba(20,33,61,.08);
  --sh-modal:0 24px 64px rgba(20,33,61,.20),0 2px 8px rgba(20,33,61,.10);
  --focus:0 0 0 2px var(--surface),0 0 0 4px var(--acc5);
  --side-w:240px; --top-h:48px; --panel-w:420px; --row-h:40px;

  /* Filament's own knobs, set to the design's */
  --font-family:var(--sans);
  --mono-font-family:var(--mono);
  --sidebar-width:240px;
  --topbar-height:48px;
  --radius-sm:4px; --radius-md:6px; --radius-lg:6px; --radius-xl:8px; --radius-2xl:12px;
  --default-font-family:var(--sans);
  --default-mono-font-family:var(--mono);
  --font-mono:var(--mono);
  --text-sm:14px; --text-sm--line-height:20px;
  --text-xs:12px; --text-xs--line-height:16px;
}

/* ---------- Body ---------- */
html,body.fi-body{background:var(--canvas)}
.fi-body{background:var(--canvas);color:var(--t1);font-family:var(--sans);font-size:14px;line-height:20px;
  font-optical-sizing:auto;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.fi-body *{font-variant-numeric:tabular-nums}
.fi-body code,.fi-body kbd,.fi-body pre,.fi-body samp,.fi-body .font-mono{font-family:var(--mono)}

/* ---------- Elevation: 1px borders, never a shadow on a surface ---------- */
.fi-section,.fi-ta-ctn,.fi-wi-stats-overview-stat,.fi-wi-chart,.fi-input-wrp,.fi-tabs,.fi-topbar,.fi-sidebar,.fi-sidebar.fi-sidebar-open,
.fi-sidebar-header,.fi-btn,.fi-fieldset,.fi-fo-repeater-item,.fi-fo-builder-item,.fi-in-entry-wrp,.fi-ta-record,.fi-wi-widget,.fi-simple-main,
.fi-pagination-items,.fi-fo-field-wrp .fi-input-wrp,.fi-select-input,.fi-ta-empty-state-icon-bg,.fi-fo-wizard,.fi-fo-tabs,.fi-ta-content-grid .fi-ta-record{
  --tw-shadow:0 0 #0000 !important;--tw-shadow-colored:0 0 #0000;
}
.fi-section:not(.fi-section-not-contained):not(.fi-aside),.fi-ta-ctn,.fi-wi-stats-overview-stat,.fi-tabs:not(.fi-contained),
.fi-fo-wizard,.fi-fo-tabs:not(.fi-contained),.fi-simple-main,.fi-fo-repeater-item,.fi-fo-builder-item{
  --tw-ring-color:var(--bd-sub) !important;border-radius:var(--r-m);background:var(--surface);
}

/* ---------- Floating layers keep a shadow ---------- */
.fi-dropdown-panel{border-radius:var(--r-m);--tw-ring-color:var(--bd) !important;box-shadow:0 0 0 1px var(--bd),var(--sh-float) !important}
.fi-modal-window{border-radius:var(--r-l) !important;box-shadow:0 0 0 1px var(--bd),var(--sh-modal) !important}
.fi-modal-slide-over-window,.fi-modal.fi-modal-slide-over .fi-modal-window{border-radius:0 !important}
.fi-modal-close-overlay{background:rgba(20,33,61,.32) !important}
.fi-no-notification{border-radius:var(--r-m) !important;box-shadow:0 0 0 1px var(--bd),var(--sh-float) !important}

/* ---------- Type ---------- */
.fi-header-heading{font-size:20px !important;line-height:28px !important;font-weight:600 !important;letter-spacing:-.005em !important;color:var(--ink) !important}
.fi-header-subheading{font-size:13px;line-height:18px;color:var(--t2);margin-top:2px}
.fi-section-header-heading,.fi-wi-widget .fi-section-header-heading{font-size:14px;line-height:20px;font-weight:600;color:var(--ink)}
.fi-section-header-description{font-size:12px;line-height:16px;color:var(--t3);font-weight:500}
.fi-section-header{padding:12px 16px !important;min-height:48px}
.fi-section:not(.fi-section-not-contained):not(.fi-aside)>.fi-section-header{border-bottom:1px solid var(--bd-sub)}
.fi-section:not(.fi-section-not-contained):not(.fi-divided)>.fi-section-content-ctn>.fi-section-content{padding:16px !important}
.fi-section-content-ctn{border-color:var(--bd-sub) !important}
.fi-modal-heading{font-size:16px;line-height:24px;font-weight:600;color:var(--ink)}
.fi-modal-description{font-size:13px;color:var(--t2)}
.fi-link{color:var(--acc) !important}
.fi-link:hover{text-decoration:underline;text-underline-offset:2px}
.fi-link .fi-icon{color:var(--acc) !important}

/* ---------- Page frame ---------- */
.fi-main{padding:24px !important}
.fi-page>.fi-page-header-main-ctn,.fi-page-header-main-ctn{row-gap:20px !important;padding-block:0 !important}
.fi-header{gap:16px;align-items:flex-end}
.fi-page-main{gap:24px}
.fi-sc-has-gap,.fi-grid.fi-sc-has-gap{gap:16px}

/* ---------- Breadcrumb (also the top bar's, see shell) ---------- */
.fi-breadcrumbs-item-label{font-size:14px;color:var(--t2);font-weight:400}
.fi-breadcrumbs-item:last-child .fi-breadcrumbs-item-label{color:var(--t1);font-weight:500}
.fi-breadcrumbs-item-separator{color:var(--bd-str) !important;width:14px;height:14px}

/* ---------- Buttons: 32px, radius 6, ink primary, no arrows ---------- */
.fi-btn{min-height:32px;padding:0 12px !important;border-radius:var(--r-s) !important;font-size:14px;font-weight:500;line-height:1;gap:6px}
.fi-btn.fi-size-sm,.fi-btn.fi-size-xs{min-height:28px;padding:0 10px !important;font-size:13px}
.fi-btn.fi-size-lg,.fi-btn.fi-size-xl{min-height:36px}
.fi-btn>.fi-icon{width:16px;height:16px}
.fi-btn.fi-color-primary:not(.fi-outlined){background:var(--ink) !important;color:#fff !important}
.fi-btn.fi-color-primary:not(.fi-outlined):hover{background:var(--ink-h) !important}
.fi-btn.fi-color-primary:not(.fi-outlined)>.fi-icon{color:#fff !important}
.fi-btn.fi-color-danger:not(.fi-outlined){background:var(--danger) !important;color:#fff !important}
.fi-btn.fi-color-danger:not(.fi-outlined):hover{background:#8F1F26 !important}
.fi-btn.fi-color-success:not(.fi-outlined){background:var(--ok) !important;color:#fff !important}
.fi-btn.fi-color-warning:not(.fi-outlined){background:var(--surface) !important;color:var(--warn) !important;box-shadow:inset 0 0 0 1px var(--warn-bd) !important}
.fi-btn.fi-color-gray,.fi-btn:not(.fi-color),.fi-btn.fi-outlined{background:var(--surface) !important;color:var(--t1) !important;box-shadow:inset 0 0 0 1px var(--bd) !important}
.fi-btn.fi-color-gray:hover,.fi-btn:not(.fi-color):hover,.fi-btn.fi-outlined:hover{background:var(--subtle) !important;box-shadow:inset 0 0 0 1px var(--bd-str) !important}
.fi-btn.fi-outlined.fi-color-danger{color:var(--danger) !important;box-shadow:inset 0 0 0 1px var(--danger-bd) !important}
.fi-btn.fi-outlined.fi-color-danger:hover{background:var(--danger-bg) !important}
.fi-btn:focus-visible,.fi-icon-btn:focus-visible,.fi-link:focus-visible{outline:none !important;box-shadow:var(--focus) !important}
.fi-btn[disabled],.fi-btn.fi-disabled{background:var(--subtle) !important;color:var(--t3) !important;box-shadow:inset 0 0 0 1px var(--bd-sub) !important;opacity:1}
.fi-icon-btn{border-radius:var(--r-s) !important;color:var(--t2)}
.fi-icon-btn:hover{background:var(--subtle) !important;color:var(--t1)}
.fi-icon-btn .fi-icon{color:inherit}
.fi-ac-btn-group .fi-btn{border-radius:0 !important}

/* ---------- Inputs: 32px, radius 6, 1px --bd, focus is a 3px --acc1 halo ---------- */
.fi-input-wrp{border-radius:var(--r-s) !important;background:var(--surface);--tw-ring-color:var(--bd) !important;min-height:32px}
.fi-input-wrp:hover{--tw-ring-color:var(--bd-str) !important}
.fi-input-wrp:not(.fi-disabled):focus-within{--tw-ring-color:var(--acc5) !important;box-shadow:0 0 0 1px var(--acc5),0 0 0 4px var(--acc1) !important}
.fi-input-wrp.fi-invalid{--tw-ring-color:var(--danger) !important}
.fi-input-wrp.fi-disabled{background:var(--subtle)}
.fi-input,.fi-select-input,.fi-input-wrp input,.fi-input-wrp select,.fi-input-wrp textarea{font-size:14px !important;color:var(--t1)}
.fi-input{padding-block:6px !important}
.fi-input::placeholder{color:var(--t3) !important}
.fi-fo-field-label-content,.fi-fo-field-wrp-label span{font-size:13px;line-height:18px;font-weight:500;color:var(--t1)}
.fi-fo-field-wrp-helper-text,.fi-fo-field-wrp-hint{font-size:12px;line-height:16px;color:var(--t3)}
.fi-fo-field-wrp-error-message{font-size:12px;line-height:16px;color:var(--danger)}
.fi-checkbox-input,.fi-fo-checkbox-list-option .fi-checkbox-input,.fi-ta-record-checkbox,.fi-ta-page-checkbox{border-radius:4px !important;--tw-ring-color:var(--bd-str) !important}
.fi-checkbox-input:checked,.fi-ta-record-checkbox:checked,.fi-ta-page-checkbox:checked{background-color:var(--ink) !important}
.fi-fo-toggle.fi-toggle-on,.fi-toggle.fi-toggle-on{background:var(--ink) !important}
.fi-input-wrp-prefix,.fi-input-wrp-suffix{color:var(--t3)}

/* ---------- Badges: radius 6, 22px, a 1px status border ---------- */
.fi-badge{border-radius:var(--r-s) !important;min-height:22px;padding:0 8px !important;font-size:12px !important;line-height:1 !important;font-weight:500;gap:5px;
  background:var(--neutral-bg) !important;color:var(--neutral) !important;--tw-ring-color:var(--neutral-bd) !important}
.fi-badge .fi-icon{width:13px;height:13px;color:currentColor !important}
.fi-badge.fi-color-success{background:var(--ok-bg) !important;color:var(--ok) !important;--tw-ring-color:var(--ok-bd) !important}
.fi-badge.fi-color-warning{background:var(--warn-bg) !important;color:var(--warn) !important;--tw-ring-color:var(--warn-bd) !important}
.fi-badge.fi-color-danger{background:var(--danger-bg) !important;color:var(--danger) !important;--tw-ring-color:var(--danger-bd) !important}
.fi-badge.fi-color-info,.fi-badge.fi-color-primary{background:var(--info-bg) !important;color:var(--info) !important;--tw-ring-color:var(--info-bd) !important}

/* ---------- Tables: 40px rows, sticky subtle header, 1px rules ---------- */
.fi-ta-ctn{overflow:hidden}
.fi-ta-header-ctn,.fi-ta-header{border-color:var(--bd-sub) !important}
.fi-ta-header-toolbar{padding:8px 12px !important;gap:8px;border-color:var(--bd-sub) !important}
.fi-ta-table{font-size:14px}
.fi-ta-table>thead{position:sticky;top:0;z-index:2}
.fi-ta-table>thead>tr{background:var(--subtle) !important}
.fi-ta-header-cell,.fi-ta-table>thead th{height:36px;padding-block:0 !important;padding-inline:10px !important;background:var(--subtle) !important;font-size:12px !important;line-height:16px !important;font-weight:500 !important;color:var(--t2) !important;white-space:nowrap}
.fi-ta-header-cell:first-of-type,.fi-ta-cell:first-of-type{padding-inline-start:16px !important}
.fi-ta-header-cell:last-of-type,.fi-ta-cell:last-of-type{padding-inline-end:16px !important}
.fi-ta-header-cell-sort-btn,.fi-ta-header-cell button{font-size:12px !important;font-weight:500 !important;color:var(--t2) !important}
.fi-ta-header-cell.fi-ta-header-cell-sorted,.fi-ta-header-cell[aria-sort]:not([aria-sort=none]){color:var(--t1) !important}
.fi-ta-header-cell .fi-icon{width:12px;height:12px;color:var(--t3)}
.fi-ta-table>tbody,.fi-ta-table>thead,.fi-ta-table{--tw-divide-color:var(--bd-sub)}
.fi-ta-table :is(tbody,thead)>tr,.fi-ta-table>tbody>tr{border-color:var(--bd-sub) !important}
.fi-ta-table>:not(:last-child),.fi-ta-table>tbody>:not(:last-child){border-color:var(--bd-sub) !important}
.fi-ta-row{height:var(--row-h)}
.fi-ta-row:hover>td{background:var(--canvas)}
.fi-ta-row.fi-selected>td,.fi-ta-row.fi-ta-row-selected>td{background:var(--acc0) !important}
.fi-ta-row.fi-selected>td:first-child{box-shadow:inset 2px 0 0 var(--acc)}
.fi-ta-cell{padding-block:0 !important;font-size:14px;height:var(--row-h)}
.fi-ta-cell>*,.fi-ta-cell .fi-ta-col,.fi-ta-cell .fi-ta-text,.fi-ta-cell>a{padding-block:8px !important}
.fi-ta-text{padding-inline:10px !important;font-size:14px}
.fi-ta-text-item-label,.fi-ta-text-item{font-size:14px;line-height:20px;color:var(--t1)}
.fi-ta-text-description,.fi-ta-col-description,.fi-ta-text .fi-ta-text-description{font-size:12px !important;line-height:16px !important;color:var(--t3) !important}
.fi-ta-cell.fi-align-end,.fi-ta-header-cell.fi-align-end,.fi-ta-text.fi-align-end{text-align:right;font-variant-numeric:tabular-nums}
.fi-ta-group-header{background:var(--subtle) !important;height:32px;font-size:12px;font-weight:500;color:var(--t2)}
.fi-ta-footer,.fi-ta-ctn .fi-pagination{padding:8px 12px !important;border-color:var(--bd-sub) !important;font-size:13px;color:var(--t2)}
.fi-ta-selection-indicator{background:var(--acc0) !important;border-color:var(--info-bd) !important;color:var(--acc);padding:8px 12px !important;font-size:13px}
.fi-ta-empty-state{padding:40px 24px !important}
.fi-ta-empty-state-heading{font-size:16px !important;line-height:24px;font-weight:600;color:var(--ink) !important}
.fi-ta-empty-state-description{font-size:13px !important;color:var(--t2) !important}
.fi-ta-empty-state-icon-bg{background:var(--subtle) !important;border:1px solid var(--bd-sub);border-radius:var(--r-m) !important}
.fi-ta-empty-state-icon-bg .fi-icon{color:var(--t2) !important}
.fi-pagination-item-btn{border-radius:var(--r-s)}
.fi-pagination-item.fi-active .fi-pagination-item-btn,.fi-pagination-item-btn.fi-active{background:var(--acc1) !important;color:var(--acc) !important}
.fi-pagination-items{--tw-ring-color:var(--bd) !important;border-radius:var(--r-s) !important}

/* filters as chips above the table */
.fi-ta-filter-indicators{padding:8px 12px !important;gap:6px !important;border-color:var(--bd-sub) !important;background:var(--surface)}
.fi-ta-filter-indicators .fi-badge{background:var(--acc1) !important;color:var(--acc) !important;--tw-ring-color:var(--info-bd) !important;min-height:28px;font-size:13px !important}
.fi-ta-filters-above-content-ctn{padding:12px !important;border-color:var(--bd-sub) !important}

/* ---------- Tabs (saved views): underline, ink when on ---------- */
.fi-tabs:not(.fi-contained){padding:0 12px !important;gap:2px !important;height:40px;align-items:stretch;border:1px solid var(--bd-sub);box-shadow:none !important}
.fi-tabs.fi-contained{padding:0 12px !important;gap:2px !important;border-color:var(--bd-sub) !important}
.fi-tabs-item{border-radius:0 !important;background:transparent !important;height:40px;padding:0 10px !important;border-bottom:2px solid transparent;margin-bottom:-1px;
  font-size:13px !important;font-weight:500 !important;color:var(--t2) !important;gap:6px}
.fi-tabs-item:hover{color:var(--t1) !important}
.fi-tabs-item.fi-active{color:var(--ink) !important;border-bottom-color:var(--ink)}
.fi-tabs-item .fi-tabs-item-label{color:inherit !important}
.fi-tabs-item .fi-icon{width:14px;height:14px;color:inherit !important}
.fi-tabs-item .fi-badge{min-height:18px;height:18px;border-radius:9px !important;padding:0 6px !important;background:var(--subtle) !important;color:var(--t2) !important;--tw-ring-color:transparent !important}
.fi-tabs-item.fi-active .fi-badge{background:var(--ink) !important;color:#fff !important}

/* ---------- Stats widgets (KPI tile) ---------- */
.fi-wi-stats-overview-stat{padding:16px !important;border-radius:var(--r-m) !important}
.fi-wi-stats-overview-stat-label{font-size:13px !important;font-weight:500;color:var(--t2) !important}
.fi-wi-stats-overview-stat-value{font-size:24px !important;line-height:32px !important;font-weight:600 !important;color:var(--ink) !important;margin-top:4px}
.fi-wi-stats-overview-stat-description{font-size:12px !important;color:var(--t2) !important}
.fi-wi-stats-overview-stat-chart svg path,.fi-wi-stats-overview-stat-chart canvas{opacity:1}

/* ---------- Infolists / key-value ---------- */
.fi-in-entry-label,.fi-in-entry-wrp-label{font-size:12px !important;font-weight:500 !important;color:var(--t3) !important}
.fi-in-text-item,.fi-in-text{font-size:13px;color:var(--t1)}

/* ---------- Notifications (toasts) ---------- */
.fi-no-notification-title{font-size:13px;font-weight:600;color:var(--t1)}
.fi-no-notification-body{font-size:13px;color:var(--t2)}

/* ---------- Simple pages (sign in) ---------- */
.fi-simple-layout{background:var(--canvas)}
.fi-simple-main{border:1px solid var(--bd-sub);--tw-ring-color:transparent !important;border-radius:var(--r-l) !important}
.fi-simple-header-heading{font-size:20px !important;font-weight:600 !important;color:var(--ink) !important}

/* ---------- Things the design bans ---------- */
.fi-body [class*="bg-gradient"]{background-image:none !important}

/* ---------- Shell colours (the layout itself is in the shell section below) ---------- */
.fi-topbar{background:var(--surface) !important;--tw-ring-color:transparent !important;box-shadow:none !important;border-bottom:1px solid var(--bd-sub);min-height:var(--top-h) !important;height:var(--top-h)}
.fi-sidebar,.fi-sidebar.fi-sidebar-open{background:var(--surface) !important;--tw-ring-color:transparent !important;box-shadow:none !important}
@media (min-width:64rem){.fi-sidebar.fi-main-sidebar{border-right:1px solid var(--bd-sub)}}
.fi-sidebar-nav{padding:8px 8px 16px !important;row-gap:12px !important}
.fi-sidebar-group{row-gap:0 !important}
.fi-sidebar-group-btn{padding:4px 8px !important;min-height:24px}
.fi-sidebar-group-label{font-size:12px !important;line-height:16px !important;font-weight:500 !important;color:var(--t3) !important;text-transform:none !important;letter-spacing:0 !important}
.fi-sidebar-group-items{row-gap:0 !important}
.fi-sidebar-item-btn{height:32px;padding:0 8px !important;border-radius:var(--r-s) !important;gap:10px !important;background:transparent}
.fi-sidebar-item-btn:hover{background:var(--subtle) !important}
.fi-sidebar-item-btn>.fi-icon,.fi-sidebar-item-icon{width:16px !important;height:16px !important;color:var(--t3) !important}
.fi-sidebar-item-label{font-size:14px !important;font-weight:400 !important;color:var(--t2) !important}
.fi-sidebar-item-btn:hover .fi-sidebar-item-label{color:var(--t1) !important}
.fi-sidebar-item.fi-active>.fi-sidebar-item-btn{background:var(--acc1) !important}
.fi-sidebar-item.fi-active>.fi-sidebar-item-btn .fi-sidebar-item-label{color:var(--acc) !important;font-weight:500 !important}
.fi-sidebar-item.fi-active>.fi-sidebar-item-btn>.fi-icon{color:var(--acc) !important}
.fi-sidebar-item-badge-ctn .fi-badge{min-width:20px;min-height:20px;height:20px;padding:0 6px !important;border-radius:10px !important;background:var(--subtle) !important;color:var(--t2) !important;--tw-ring-color:transparent !important}
.fi-sidebar-item-badge-ctn .fi-badge.fi-color-danger,.fi-sidebar-item-badge-ctn .fi-badge.fi-color-primary{background:var(--ink) !important;color:#fff !important}
.fi-sidebar-item-badge-ctn .fi-badge.fi-color-warning{background:var(--warn-bg) !important;color:var(--warn) !important}
.fi-sidebar-group-collapse-btn{width:20px !important;height:20px !important;color:var(--t3)}
.fi-user-menu-trigger .fi-avatar,.fi-avatar{width:28px;height:28px}
.fi-fo-field .fi-sc-text,.fi-fo-field-content-col>.fi-sc-text{font-size:12px !important;line-height:16px !important;color:var(--t3) !important}
.fi-fo-field-label-required-mark{color:var(--danger) !important}

/* ---------- Shell: the inverted L (sidebar full height, top bar beside it) ---------- */
.aiw .crumb{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--t2);min-width:0;white-space:nowrap}
.aiw .crumb a{color:var(--t2)}
.aiw .crumb .sep{color:var(--bd-str)}
.aiw .crumb .here{color:var(--t1);font-weight:500}
.aiw .cmdk{margin-left:auto;display:flex;align-items:center;gap:8px;width:320px;height:32px;padding:0 6px 0 10px;border:1px solid var(--bd);border-radius:var(--r-s);background:var(--canvas);color:var(--t3);font-size:13px;cursor:pointer}
.aiw .cmdk:hover{border-color:var(--bd-str)}
.aiw .cmdk svg{width:15px;height:15px}
.aiw .cmdk .kbd{margin-left:auto}
.aiw .health{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--ok-bd);background:var(--ok-bg);color:var(--ok);border-radius:var(--r-s);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}
.aiw span.health{cursor:default}
.aiw .health.warn{border-color:var(--warn-bd);background:var(--warn-bg);color:var(--warn)}
.aiw .health svg{width:14px;height:14px}
.aiw-palette-root{display:flex;align-items:center;margin-left:auto}
.aiw .aiw-palette-scrim{display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 0}
.aiw .aiw-palette{width:640px;max-width:100%}
.aiw .pal-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;color:var(--t1);box-shadow:none}
.aiw .aiw-pal-list{max-height:400px;overflow:auto;border-right:0}
.aiw .pal-item{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}
.aiw .pal-foot a{color:var(--t2)}
.aiw .tag.aiw-brand-env{height:20px;font-size:11px;padding:0 6px}
.aiw-brand{white-space:nowrap}

.fi-topbar{gap:12px !important;padding:0 16px 0 24px !important;align-items:center}
.fi-topbar-start{gap:12px;min-width:0}
.fi-topbar-end{display:none}
.fi-header .fi-breadcrumbs{display:none}
.fi-sidebar-header{background:var(--surface) !important;--tw-ring-color:transparent !important;box-shadow:none !important;border-bottom:1px solid var(--bd-sub);height:var(--top-h) !important;padding:0 16px !important;justify-content:flex-start !important}
.fi-sidebar-header .fi-logo{height:auto !important}

@media (min-width:64rem){
  .fi-body-has-topbar .fi-topbar-ctn{margin-inline-start:var(--sidebar-width)}
  .fi-body-has-topbar .fi-layout{margin-top:-48px}
  .fi-body-has-topbar .fi-main-ctn{padding-top:48px;min-height:100dvh !important;box-sizing:border-box}
  .fi-body-has-topbar .fi-sidebar.fi-main-sidebar{top:0 !important;height:100dvh !important;z-index:29}
  .fi-body-has-topbar .fi-sidebar-header{display:flex !important}
  .fi-topbar-start>a,.fi-topbar-start>.fi-logo{display:none !important}
  .fi-topbar-open-sidebar-btn,.fi-topbar-close-sidebar-btn{display:none !important}
}
@media (max-width:63.99rem){
  .aiw .cmdk{width:auto}
  .aiw .cmdk>span:not(.kbd){display:none}
  .aiw-crumb{display:none}
}

/* the person at the foot of the rail (design: .side-foot) */
.fi-sidebar-footer,.fi-sidebar .fi-user-menu{border-top:1px solid var(--bd-sub)}
.fi-sidebar .fi-user-menu-trigger{width:100%;padding:12px 16px !important;gap:10px;border-radius:0 !important;justify-content:flex-start}
.fi-sidebar .fi-user-menu-trigger:hover{background:var(--subtle)}
.fi-sidebar .fi-user-menu-trigger .fi-avatar{width:32px;height:32px}
.fi-sidebar .fi-user-menu-trigger-text,.fi-sidebar .fi-user-menu-trigger span{font-size:14px;font-weight:500;color:var(--t1)}
.aiw-settings-link{padding:0 !important;margin-top:4px;border-top:1px solid var(--bd-sub);padding-top:8px !important}

/* ---------- Settings page ---------- */
.aiw-settings{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.aiw .aiw-settings-nav{position:sticky;top:calc(var(--top-h) + 16px);height:auto;border:1px solid var(--bd-sub);border-radius:var(--r-m);padding:8px}
.aiw .aiw-settings-nav .nav-label{font-size:12px;line-height:16px;font-weight:500;color:var(--t3);padding:4px 10px}
.aiw .aiw-settings-nav .nav-label:not(:first-child){margin-top:12px}
.aiw .aiw-settings-row{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--t1)}
.aiw .aiw-settings-row:hover{background:var(--canvas);text-decoration:none}
.aiw .aiw-settings-body .form-section:first-of-type{padding-top:16px}
/* the rail's rhythm, as in the design: 32px items, a 12px gap above each labelled group */
.fi-sidebar-nav{row-gap:0 !important;padding-top:8px !important}
.fi-sidebar-nav-groups{row-gap:12px !important;display:flex;flex-direction:column}
.fi-sidebar-group-btn{padding:4px 8px !important;min-height:0 !important;height:24px}
.fi-sidebar-group-collapse-btn{display:none !important}
.aiw .crumb a.here{color:var(--t1)}
.fi-sidebar-nav-groups{row-gap:4px !important}
.fi-sidebar-nav{padding-bottom:8px !important}
.aiw-settings-link{margin-top:8px !important}
.fi-sidebar-item-badge-ctn .fi-badge{display:inline-flex !important;align-items:center;justify-content:center;line-height:20px !important}
.fi-sidebar-item-badge-ctn .fi-badge-label-ctn,.fi-sidebar-item-badge-ctn .fi-badge-label{line-height:20px !important;display:block}
/* ---------- Overview ---------- */
.fi-page-dashboard .fi-header-heading{font-size:20px !important}
.aiw .needs .n-top svg{flex:none}
.aiw .kpi .k-label{white-space:nowrap}
.aiw .seg a{cursor:pointer}
.aiw .seg a:hover{text-decoration:none;color:var(--t1)}
.aiw .aiw-waiting>summary::-webkit-details-marker{display:none}
.aiw .aiw-waiting[open] .aiw-waiting-caret{transform:rotate(90deg)}
.aiw .aiw-waiting:not([open])>summary{border-bottom:0}

/* ---------- Full-bleed screens (Approvals, editor): no page padding, no Filament header ---------- */
.fi-main:has(.aiw-bleed){padding:0 !important;max-width:none !important}
.fi-page:has(.aiw-bleed) .fi-header{display:none !important}
.fi-page:has(.aiw-bleed) .fi-page-header-main-ctn{row-gap:0 !important;padding:0 !important}
.fi-page:has(.aiw-bleed) .fi-page-main,.fi-page:has(.aiw-bleed) .fi-page-content{gap:0 !important}
.aiw .aiw-sev-list{list-style:disc;padding-left:18px;margin-top:2px}
.aiw .aiw-prose p{margin:0 0 10px}
.aiw .aiw-prose h2{font-size:17px;line-height:24px;margin:16px 0 8px}
.aiw .aiw-prose h3{font-size:15px;margin:12px 0 6px}
.aiw .aiw-prose ul{list-style:disc;padding-left:20px;margin:0 0 10px}
.aiw .aiw-prose ol{list-style:decimal;padding-left:20px;margin:0 0 10px}
.aiw .aiw-prose a{text-decoration:underline}
[x-cloak]{display:none !important}

/* ---------- Approvals (design: modules/approvals.html) ---------- */
.aiw-approvals .split.list-detail{height:calc(100vh - var(--top-h))}
.aiw .ap-list{border-right:1px solid var(--bd-sub);background:var(--surface);display:flex;flex-direction:column;min-height:0}
.aiw .ap-row{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:10px;padding:10px 16px;border-bottom:1px solid var(--bd-sub);cursor:pointer}
.aiw .ap-row:hover{background:var(--canvas)}
.aiw .ap-row.sel{background:var(--acc0);box-shadow:inset 2px 0 0 var(--acc)}
.aiw .ap-row .t{font-size:14px;font-weight:500;color:var(--t1);line-height:20px}
.aiw .ap-row .m{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;color:var(--t2);flex-wrap:wrap}
.aiw .ap-row .r{display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:12px;color:var(--t3)}
.aiw .aiw-tick{width:16px;height:16px;margin-top:2px;accent-color:var(--ink)}
.aiw .ap-group{display:flex;align-items:center;gap:8px;padding:0 16px;height:32px;background:var(--subtle);border-bottom:1px solid var(--bd-sub);font-size:12px;font-weight:500;color:var(--t2);position:sticky;top:0;z-index:1}
.aiw .ev-pane{display:flex;flex-direction:column;min-width:0;overflow:auto;background:var(--canvas)}
.aiw .ev-head{padding:16px 24px;background:var(--surface);border-bottom:1px solid var(--bd-sub);position:sticky;top:0;z-index:3}
.aiw .ev-body{padding:20px 24px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start;flex:1}
.aiw .mock-site{padding:20px 28px;font-size:14px;line-height:22px;color:var(--t1);background:var(--surface)}
.aiw .mock-site .ms-nav{display:flex;gap:16px;align-items:center;font-size:12px;color:var(--t2);padding-bottom:12px;border-bottom:1px solid var(--bd-sub);margin-bottom:16px}
.aiw .mock-site .ms-logo{font-weight:600;color:var(--ink);font-size:13px;margin-right:auto}
.aiw .mock-site h1{font-size:22px;line-height:30px;margin-bottom:8px}
.aiw .mock-site p{margin-bottom:10px;color:var(--t2)}
.aiw .chk{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:8px;padding:10px 16px;border-bottom:1px solid var(--bd-sub);font-size:13px;line-height:18px;align-items:start}
.aiw .chk:last-child{border-bottom:0}
.aiw .chk>svg{width:16px;height:16px;margin-top:1px}
.aiw .chk .q{margin-top:6px;padding:6px 8px;background:var(--canvas);border:1px solid var(--bd-sub);border-radius:6px;color:var(--t1)}
.aiw .keys{display:flex;align-items:center;gap:16px;padding:8px 24px;border-top:1px solid var(--bd-sub);background:var(--surface);font-size:12px;color:var(--t2);position:sticky;bottom:0;z-index:3}
.aiw .keys span{display:inline-flex;align-items:center;gap:6px}

/* ---------- Record pages (team, site, campaign): header block then tabs ---------- */
.aiw .rec-head{background:var(--surface);border-bottom:1px solid var(--bd-sub);padding:20px 24px 0}
.aiw .rec-head .tabs .tab{text-decoration:none}
.aiw .perm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aiw .perm ul{display:flex;flex-direction:column}
.aiw .perm li{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--bd-sub);font-size:13px}
.aiw .perm li:last-child{border-bottom:0}
.aiw .perm li>svg{width:14px;height:14px;color:var(--t3)}
.aiw .node{cursor:default}
.aiw .tbl .tag{margin-right:2px}
.aiw .fi-ac-action,.aiw .fi-btn{white-space:nowrap}

/* Filament sets its own --topbar-height on the body; the design's is 48 everywhere. */
.fi-body{--topbar-height:48px !important}

/* ---------- Saved views above a resource table: underline tabs fused to the table (design: .views) ---------- */
.fi-sc-tabs>.fi-tabs:not(.fi-contained){justify-content:flex-start !important;width:100%;max-width:none !important;margin:0 !important;border-radius:var(--r-m) var(--r-m) 0 0 !important;overflow-x:auto}
.fi-grid-col:has(> .fi-sc-component > .fi-sc-tabs){margin-bottom:-17px;position:relative;z-index:1}
.fi-grid-col:has(> .fi-sc-component > .fi-sc-tabs)+.fi-grid-col .fi-ta-ctn{border-top-left-radius:0 !important;border-top-right-radius:0 !important}
.fi-sc-tabs .fi-tabs-item{height:40px}
.fi-ta-cell>*,.fi-ta-cell .fi-ta-col,.fi-ta-cell .fi-ta-text,.fi-ta-cell>a{padding-block:6px !important}
.fi-ta-cell .fi-ta-text-item-label{line-height:20px}
.fi-ta-record-checkbox,.fi-ta-page-checkbox{width:16px;height:16px}
.fi-ta-actions .fi-icon-btn,.fi-ta-cell .fi-dropdown-trigger .fi-icon-btn{width:28px;height:28px}
.fi-tabs-item .fi-badge{display:inline-flex !important;align-items:center;justify-content:center;line-height:18px !important;min-width:20px}
.fi-tabs-item .fi-badge .fi-badge-label-ctn,.fi-tabs-item .fi-badge .fi-badge-label{line-height:18px !important;display:block}
.fi-ta-content{overflow-x:auto}

/* ---------- Leads: the "how they found us" chain ---------- */
.aiw .chain{display:flex;flex-direction:column;gap:0}
.aiw .chain .step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;position:relative;padding-bottom:12px}
.aiw .chain .step:not(:last-child)::after{content:"";position:absolute;left:13px;top:28px;bottom:0;border-left:1.5px solid var(--bd)}
.aiw .chain .ico{width:28px;height:28px;border-radius:6px;border:1px solid var(--info-bd);background:var(--acc0);color:var(--acc);display:grid;place-items:center}
.aiw .chain .ico svg{width:14px;height:14px}
.aiw section>h3{font-size:13px;line-height:18px;color:var(--t2);font-weight:500;margin-bottom:8px}

/* ---------- Job page ---------- */
.aiw-job-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.aiw-job-col{display:flex;flex-direction:column;gap:16px;min-width:0}
@media (max-width:63.99rem){.aiw-job-grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- Reports: an archived report reads as a document (design: report-network-review) ---------- */
.aiw .aiw-report>summary::-webkit-details-marker{display:none}
.aiw .aiw-report[open]>summary{background:var(--acc0)}
.aiw .aiw-report-doc{white-space:pre-line;max-width:680px;padding:4px 16px 20px 44px;font-size:15px;line-height:24px;color:var(--t1)}
.aiw .cal.grid{gap:0;display:grid}
.aiw .cal .dn{margin:0}

/* ------------------------------------------------ the editor (P5, modules/editor.html) */
.fi-main:has(.aiw-ed){padding:0 !important;max-width:none !important}
.fi-page:has(.aiw-ed) .fi-header{display:none}
.fi-page:has(.aiw-ed) .fi-page-content,.fi-page:has(.aiw-ed) .fi-page-main{gap:0;row-gap:0}
.aiw .aiw-ed{margin:0}
.aiw .ed-bar{display:flex;align-items:center;gap:12px;height:52px;padding:0 16px 0 24px;background:var(--surface);border-bottom:1px solid var(--bd-sub)}
.aiw .ed{display:grid;grid-template-columns:220px minmax(0,1fr) 340px;height:calc(100vh - 48px - 52px)}
.aiw .ed-out{background:var(--surface);border-right:1px solid var(--bd-sub);overflow:auto;padding:12px 8px}
.aiw .ed-out .nav-label{font-size:12px;line-height:16px;font-weight:500;color:var(--t3);padding:4px 8px}
.aiw .ed-out a{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px;border-radius:6px;font-size:13px;color:var(--t2);min-width:0}
.aiw .ed-out a svg{width:14px;height:14px;flex:none}
.aiw .ed-out a:hover{background:var(--subtle);text-decoration:none}
.aiw .ed-out a.on{background:var(--acc1);color:var(--acc);font-weight:500}
.aiw .ed-out a.h3{padding-left:22px}
.aiw .ed-out a .n{margin-left:auto;font-size:12px;display:inline-flex}
.aiw .ed-doc{overflow:auto;background:var(--surface);padding:40px 40px 120px}
.aiw .ed-doc .doc{position:relative;max-width:720px;margin:0 auto}
.aiw .ed-title{display:block;width:100%;border:0;outline:0;resize:none;overflow:hidden;padding:0;margin:0 0 16px;background:transparent;font:600 28px/36px Inter,system-ui,sans-serif;letter-spacing:-.01em;color:var(--ink)}
.aiw .ed-wrap{position:relative}
.aiw .ed-back,.aiw .ed-text{font:400 16px/26px Inter,system-ui,sans-serif;letter-spacing:0;padding:0;margin:0;border:0;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;tab-size:4}
.aiw .ed-back{position:absolute;inset:0;color:transparent;pointer-events:none}
.aiw .ed-back mark{color:transparent;background:transparent;border-radius:2px}
.aiw .ed-back mark.flag{padding:0;cursor:default}
.aiw .ed-back mark.flag.bad{border-color:var(--danger);background:var(--danger-bg)}
.aiw .ed-back mark.flag.access{border-color:var(--t3);background:var(--subtle)}
.aiw .ed-text{position:relative;display:block;width:100%;min-height:360px;resize:none;overflow:hidden;background:transparent;color:var(--ink);caret-color:var(--ink);outline:0}
.aiw .ed-chk{background:var(--canvas);border-left:1px solid var(--bd-sub);overflow:auto;display:flex;flex-direction:column}
.aiw .chk-sec{border-bottom:1px solid var(--bd-sub);padding:12px 16px;background:var(--surface)}
.aiw .chk-sec h3{font-size:13px;line-height:20px;display:flex;align-items:center;gap:8px;margin:0}
.aiw .chk-sec h3 svg{width:15px;height:15px}
.aiw .chk-sec h3 .r{margin-left:auto;font-weight:500;font-size:12px;color:var(--t2)}
.aiw .fl{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;padding:8px 0;font-size:13px;line-height:18px;border-top:1px dashed var(--bd-sub);color:var(--t1)}
.aiw a.fl:hover{text-decoration:none;background:var(--subtle)}
.aiw .chk-sec h3 + .fl{border-top:0;margin-top:4px}
.aiw .fl svg{width:14px;height:14px;margin-top:2px}
.aiw .fl.on{background:var(--acc0);margin:0 -16px;padding:8px 16px;border-top-color:transparent;box-shadow:inset 2px 0 0 var(--acc)}
.aiw .fl.off{opacity:.5}
.aiw .pop{position:absolute;width:380px;padding:12px;z-index:5}
.aiw .pop .sug{margin-top:8px;padding:8px 10px;border:1px solid var(--ok-bd);background:var(--ok-bg);border-radius:6px;font-size:14px;line-height:22px}
.aiw .ring{width:44px;height:44px;flex:none}
.aiw .ed-angle{position:relative}
.aiw .ed-angle summary{list-style:none}
.aiw .ed-angle summary::-webkit-details-marker{display:none}
.aiw .ed-angle .menu{position:absolute;top:36px;left:0;z-index:20}
.aiw .c-bad{color:var(--danger)}
