:root{
  --admin-bg:#f4f7fb;
  --panel:#ffffff;
  --panel-soft:#f8fafc;
  --ink:#172433;
  --muted:#637487;
  --line:#dce4ec;
  --accent:#f58220;
  --accent-dark:#d8660f;
  --blue:#2563eb;
  --danger:#b42318;
  --ok:#047857;
  --shadow:0 18px 50px rgba(15,23,42,.08);
}

html[data-product-ui="admin"]{
  --admin-bg:#f4f7fb;
  --panel:#ffffff;
  --panel-soft:#f8fafc;
  --ink:#172433;
  --text:#172433;
  --muted:#637487;
  --line:#dce4ec;
  --border:#dce4ec;
  --accent:#5b21b6;
  --accent-dark:#4c1d95;
  --theme-accent:#5b21b6;
  --theme-accent-contrast:#ffffff;
  color-scheme:light;
}
html[data-product-ui="admin"] body.admin-fresh{
  background:var(--admin-bg)!important;
  color:var(--ink)!important;
}
html[data-product-ui="admin"] .admin-shell{
  background:var(--admin-bg)!important;
  color:var(--ink)!important;
}
html[data-product-ui="admin"] .admin-main,
html[data-product-ui="admin"] .admin-view{
  background:var(--admin-bg)!important;
  color:var(--ink)!important;
}
html[data-product-ui="admin"] .panel,
html[data-product-ui="admin"] .stat,
html[data-product-ui="admin"] .workspace-main,
html[data-product-ui="admin"] .workspace-side,
html[data-product-ui="admin"] .settings-section{
  background:var(--panel)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
html[data-product-ui="admin"] input,
html[data-product-ui="admin"] select,
html[data-product-ui="admin"] textarea{
  background:#fff!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}

.ticket-workspace .ticket-admin-list{display:grid;gap:8px}
.ticket-admin-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--panel);min-width:0}
.notification-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;align-items:start}
.notification-template-card{border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);padding:12px;display:grid;gap:8px;min-width:0}
.notification-template-card label{font-weight:800;display:flex;gap:8px;align-items:center}
.notification-template-card small{color:var(--muted)}
.notification-template-card textarea{min-height:86px;resize:vertical}
.ticket-admin-card strong,.ticket-admin-card span,.ticket-admin-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}
.ticket-admin-card span,.ticket-admin-card small{color:var(--muted);margin-top:3px}
.ticket-admin-card b{border:1px solid var(--line);border-radius:999px;padding:4px 8px;text-transform:uppercase;font-size:.7rem}
.ticket-admin-card.status-open{border-left:4px solid #22c55e}
.ticket-admin-card.status-pending{border-left:4px solid #f59e0b}
.ticket-admin-card.status-resolved,.ticket-admin-card.status-closed{border-left:4px solid #64748b}
.ticket-comment-list{display:grid;gap:10px;margin-top:10px}
.compact-ticket-form{display:grid;gap:10px}
.ticket-admin-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ticket-requester-strip{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}
.ticket-requester-strip span{border:1px solid var(--line);border-radius:8px;padding:5px 7px;color:var(--muted);font-size:.8rem;min-width:0;overflow:hidden;text-overflow:ellipsis}
.conversation-item{border:1px solid var(--line);border-radius:8px;padding:8px;background:rgba(255,255,255,.035)}
.conversation-item.internal{border-style:dashed;opacity:.86}
.conversation-item.system-event{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
.conversation-item b,.conversation-item small{display:block}
.conversation-item small{color:var(--muted);margin-top:2px}
.conversation-item p{margin:.45rem 0 0;white-space:pre-wrap}
.ticket-workspace.admin-ticket-popout{position:fixed;z-index:1600;inset:14px;background:var(--admin-bg);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px rgba(15,23,42,.28);padding:14px;overflow:auto}
.ticket-workspace.admin-ticket-popout .workspace-main{min-width:0}
.ticket-workspace.admin-ticket-popout .workspace-side{position:sticky;top:0;align-self:start;max-height:calc(100vh - 56px);overflow:auto}
@media(max-width:900px){.ticket-workspace.admin-ticket-popout{inset:0;border-radius:0}.ticket-workspace.admin-ticket-popout .workspace-side{position:static;max-height:none}.ticket-admin-edit-grid{grid-template-columns:1fr}.ticket-admin-card{grid-template-columns:minmax(0,1fr) auto}}
*{box-sizing:border-box}
body.admin-fresh{
  margin:0;
  min-height:100vh;
  background:var(--admin-bg);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.admin-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
  background:var(--admin-bg);
}
.admin-side{
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  background:#0b1622;
  color:#fff;
  overflow:hidden;
}
.admin-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:16px;
  color:#fff;
  text-decoration:none;
  font-weight:900;
}
.admin-brand img{width:42px;height:42px;object-fit:contain}
.admin-session{display:none}
.admin-mark{
  display:grid;
  gap:4px;
  padding:12px;
  border:1px solid rgba(248,113,113,.45);
  border-radius:14px;
  background:rgba(127,29,29,.28);
}
.admin-mark span{
  color:#fecaca;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.admin-mark strong{
  overflow:hidden;
  color:#fff;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-search{
  position:sticky;
  top:0;
  z-index:5;
  display:grid;
  gap:6px;
  padding:8px;
  background:#0b1622;
}
.admin-search label,
.nav-group>span{
  color:#91a4b7;
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
}
.admin-search input{
  width:100%;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff;
}
.admin-side nav{
  display:grid;
  gap:10px;
  overflow:auto;
  padding-right:4px;
}
.workspace-side{
  align-self:start;
  position:sticky;
  top:18px;
  max-height:calc(100vh - 36px);
  overflow:auto;
}
.workspace-side .editor-pane{
  position:sticky;
  top:0;
}
.nav-group{
  display:grid;
  gap:5px;
  padding:8px;
  border-radius:16px;
  background:rgba(255,255,255,.045);
}
.nav-group>span{padding:4px 8px}
.nav-group a{
  display:grid;
  gap:2px;
  padding:10px 11px;
  border-radius:12px;
  color:#d4e0ea;
  text-decoration:none;
}
.nav-group a strong{font-size:.92rem}
.nav-group a small{
  color:#8da0b1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nav-group a:hover,
.nav-group a.active{
  color:#fff;
  background:linear-gradient(135deg,rgba(245,130,32,.24),rgba(37,99,235,.16));
}
.nav-group a.active small{color:#ffd0a0}
.admin-side>.btn,
.btn.full{width:100%;justify-content:center}
.admin-main{
  min-width:0;
  padding:26px clamp(22px,4vw,56px);
}
.admin-view{
  width:100%;
  max-width:1500px;
  margin:0 auto;
}
.page-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:0 0 22px;
}
.page-head span{
  color:var(--accent-dark);
  font-size:.74rem;
  font-weight:900;
  text-transform:uppercase;
}
.page-head h1{
  margin:4px 0 8px;
  color:#102033;
  font-size:clamp(2rem,3.5vw,3.35rem);
  line-height:1;
}
.page-head p{
  max-width:820px;
  margin:0;
  color:var(--muted);
  font-size:1rem;
  line-height:1.45;
}
.page-actions,.actions,.row-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
button,.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}
button:hover,.btn:hover{border-color:#b8c5d2;background:#f8fafc}
button.primary,.btn.primary{
  border-color:transparent;
  background:linear-gradient(135deg,var(--accent),#ffad4f);
  color:#fff;
}
button.danger,.btn.danger{
  border-color:rgba(180,35,24,.24);
  background:#fff1f0;
  color:var(--danger);
}
button[disabled]{opacity:.45;cursor:not-allowed}
.metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 20px;
}
.metric{
  display:grid;
  gap:5px;
  min-width:0;
  padding:18px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:var(--shadow);
}
.metric strong{
  color:#102033;
  font-size:2rem;
  line-height:1;
}
.metric span{
  color:var(--muted);
  font-size:.76rem;
  font-weight:900;
  text-transform:uppercase;
}
.workspace{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:18px;
  align-items:start;
}
.workspace-main,.workspace-side{
  display:grid;
  gap:18px;
}
.panel{
  min-width:0;
  padding:18px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:var(--panel);
  box-shadow:var(--shadow);
}
.panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
}
.panel h2,.panel-head h2{
  margin:0;
  color:#102033;
  font-size:1.12rem;
}
.action-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.action-grid.large{grid-template-columns:repeat(2,minmax(0,1fr))}
.action-card{
  display:grid;
  gap:5px;
  min-height:88px;
  padding:16px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:var(--panel-soft);
  color:inherit;
  text-decoration:none;
}
.action-card:hover{
  border-color:rgba(245,130,32,.35);
  background:#fff8f0;
}
.action-card strong{color:#102033}
.action-card span{color:var(--muted);line-height:1.35}
.records,.check-list{
  display:grid;
  gap:9px;
}
.records a,.check-list div,.brand-list div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border:1px solid rgba(15,23,42,.07);
  border-radius:12px;
  background:var(--panel-soft);
  color:inherit;
  text-decoration:none;
}
.records span,.check-list span,.brand-list span{color:var(--muted)}
.media-grid,.media-browser{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.media-browser{grid-template-columns:repeat(4,minmax(0,1fr))}
.media-card{
  display:grid;
  gap:8px;
}
.media-tile{
  display:grid;
  gap:5px;
  min-width:0;
  color:inherit;
  text-decoration:none;
}
.media-tile img,.media-tile>span{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
  background:#eef3f7;
}
.media-tile>span{display:grid;place-items:center;color:var(--muted)}
.media-tile small{
  overflow:hidden;
  color:var(--muted);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.split{
  display:grid;
  grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);
  gap:18px;
  align-items:start;
}
.record-list{
  display:grid;
  gap:10px;
}
.record-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
  background:var(--panel-soft);
}
.record-row div:first-child{
  display:grid;
  gap:4px;
  min-width:0;
}
.record-row strong{color:#102033}
.record-row span{
  overflow:hidden;
  color:var(--muted);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.people-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
}
.people-toolbar input{max-width:520px}
.directory-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.directory-card{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-width:0;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:#fff;
}
.directory-card.group{background:var(--panel-soft)}
.directory-card img,
.user-row img,
.profile-head img{
  width:54px;
  height:54px;
  border:2px solid #fff;
  border-radius:999px;
  object-fit:cover;
  box-shadow:0 8px 22px rgba(15,23,42,.12);
}
.directory-card div,
.user-main{
  display:grid;
  gap:3px;
  min-width:0;
}
.directory-card strong,
.user-row strong{
  overflow:hidden;
  color:#102033;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.directory-card span,
.directory-card small,
.user-main span,
.user-main small{
  overflow:hidden;
  color:var(--muted);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.bulk-editor{
  display:grid;
  grid-template-columns:minmax(170px,1fr) 190px minmax(260px,1.5fr) 170px minmax(230px,auto);
  gap:12px;
  align-items:end;
}
.bulk-editor>div:first-child{
  display:grid;
  gap:4px;
}
.role-pills{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.role-pills label{
  display:inline-flex;
  align-items:center;
  gap:7px;
  width:auto;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  font-size:.86rem;
  font-weight:800;
}
.role-pills input{
  width:auto;
  min-height:0;
}
.bulk-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.bulk-actions button{min-height:42px}
.user-list{
  display:grid;
  gap:10px;
}
.user-row{
  display:grid;
  grid-template-columns:34px 54px minmax(220px,1fr) minmax(150px,.8fr) 76px auto;
  gap:12px;
  align-items:center;
  min-width:0;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:#fff;
}
.bulk-check{
  display:grid;
  place-items:center;
  width:34px;
}
.bulk-check input{
  width:18px;
  height:18px;
  min-height:0;
}
.role-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.role-badges span{
  padding:5px 8px;
  border-radius:999px;
  background:#eef3f7;
  color:#334155;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.ok{color:var(--ok)}
.bad{color:var(--danger)}
.warn{color:#f59e0b}
.profile-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:var(--panel-soft);
}
.profile-head h2,
.profile-head p{margin:0}
.profile-head p{
  color:var(--muted);
  overflow-wrap:anywhere;
}
.user-editor fieldset{
  display:grid;
  gap:10px;
  margin:0;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
}
.user-editor legend{
  padding:0 6px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
}
.editor-pane{
  position:sticky;
  top:20px;
}
.editor-form,.settings-layout{
  display:grid;
  gap:14px;
}
label{
  display:grid;
  gap:6px;
  color:#344456;
  font-weight:800;
}
input,select,textarea{
  width:100%;
  min-height:42px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font:inherit;
}
textarea{min-height:130px;resize:vertical}
.grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.toggle-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.toggle-row label{
  display:flex;
  align-items:center;
  width:auto;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--panel-soft);
}
.toggle-row input{width:auto;min-height:0}
.settings-section{
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.settings-section summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 18px;
  cursor:pointer;
  list-style:none;
}
.settings-section summary::-webkit-details-marker{display:none}
.settings-section summary span{
  color:var(--accent-dark);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.settings-section>*:not(summary){
  margin:0 18px 16px;
}
.auth-methods{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.radio-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-soft);
}
.segmented{
  display:flex;
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
}
.segmented label{
  display:flex;
  align-items:center;
  gap:6px;
  width:auto;
  padding:8px 10px;
  border-radius:999px;
}
.segmented input{width:auto;min-height:0}
.save-bar{
  position:sticky;
  bottom:16px;
  z-index:5;
  display:flex;
  justify-content:flex-end;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px);
  box-shadow:var(--shadow);
}
.table-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px;
}
.table-tools input{max-width:360px}
.table-wrap{
  overflow:auto;
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
}
table{
  width:100%;
  border-collapse:collapse;
  font-size:.92rem;
}
th,td{
  padding:10px 12px;
  border-bottom:1px solid rgba(15,23,42,.07);
  text-align:left;
  vertical-align:top;
}
th{
  position:sticky;
  top:0;
  background:#f8fafc;
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.pager{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:12px 0 0;
}
.server-pager span{
  color:var(--muted);
  font-size:.9rem;
  text-align:center;
}
.avatar-zoom{
  border:0;
  padding:0;
  background:transparent;
  cursor:zoom-in;
}
.admin-avatar-dialog{
  width:min(720px,96vw);
  display:grid;
  place-items:center;
}
.admin-avatar-full{
  width:auto;
  max-width:100%;
  max-height:76vh;
  object-fit:contain;
  border-radius:16px;
  box-shadow:var(--shadow);
}
.empty{color:var(--muted)}
.notice,.toast{
  padding:12px 14px;
  border:1px solid rgba(4,120,87,.22);
  border-radius:12px;
  background:#ecfdf5;
  color:#065f46;
}
.notice.err,.toast.err{
  border-color:rgba(180,35,24,.22);
  background:#fff1f0;
  color:var(--danger);
}
.toast-host{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:1000;
  display:grid;
  gap:10px;
  width:min(420px,calc(100vw - 40px));
}
.progress{
  height:12px;
  border-radius:999px;
  background:#e7edf3;
  overflow:hidden;
}
.progress>div{
  height:100%;
  width:0;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),var(--blue));
}
.changelog,pre{
  max-height:520px;
  overflow:auto;
  padding:14px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
  background:#0b1622;
  color:#d7e3ee;
  white-space:pre-wrap;
}
.template-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}
.template-grid p{grid-column:1/-1;margin:0}
.variables-form{
  display:grid;
  gap:14px;
}
.variable-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.variable-grid label span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
code{
  padding:2px 6px;
  border-radius:7px;
  background:#eef3f7;
  color:#334155;
  font-size:.78rem;
}
.panel-subhead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.panel-subhead h3{margin:0;color:#102033}
.custom-variable-rows{
  display:grid;
  gap:10px;
}
.variable-row{
  display:grid;
  grid-template-columns:minmax(160px,.7fr) minmax(220px,1fr) auto;
  gap:10px;
  align-items:end;
  padding:10px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:var(--panel-soft);
}
.visual-page-form{gap:16px}
.visual-editor{
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
}
.visual-toolbar{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  padding:9px;
  border-bottom:1px solid var(--line);
  background:#f8fafc;
}
.visual-toolbar strong{margin-right:auto;color:#102033}
.visual-toolbar button{
  min-height:32px;
  padding:6px 9px;
  border-radius:8px;
  font-size:.78rem;
}
.visual-surface{
  min-height:360px;
  padding:22px;
  outline:none;
  background:#fff;
}
.visual-surface:focus{box-shadow:inset 0 0 0 2px rgba(245,130,32,.38)}
.site-preview{color:#172433;line-height:1.55}
.site-preview h1{margin:0 0 16px;color:#102033;font-size:2.4rem;line-height:1.05}
.site-preview h2{margin:22px 0 10px;color:#102033;font-size:1.55rem}
.site-preview h3{margin:18px 0 8px;color:#102033}
.site-preview p{color:#3d4b5c}
.site-preview img{
  max-width:100%;
  height:auto;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(15,23,42,.12);
  cursor:pointer;
}
.site-preview img.selected-image{outline:3px solid var(--accent);outline-offset:3px}
.image-picker{
  display:grid;
  gap:8px;
}
.image-picker>label{
  color:#344456;
  font-weight:800;
}
.image-picker details{position:relative}
.image-picker summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) 56px;
  gap:10px;
  align-items:center;
  min-height:58px;
  padding:8px 10px 8px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  list-style:none;
}
.image-picker summary::-webkit-details-marker{display:none}
.image-picker summary span{
  overflow:hidden;
  color:var(--ink);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.image-thumb{
  width:48px;
  height:40px;
  justify-self:end;
  border:1px solid rgba(15,23,42,.1);
  border-radius:8px;
  object-fit:contain;
  background:#f8fafc;
}
.empty-thumb{
  display:grid;
  place-items:center;
  color:var(--muted);
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
}
.image-choice-list{
  position:absolute;
  z-index:20;
  top:calc(100% + 6px);
  left:0;
  right:0;
  display:grid;
  gap:4px;
  max-height:340px;
  overflow:auto;
  padding:8px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:var(--shadow);
}
.image-choice-list button{
  display:grid;
  grid-template-columns:minmax(0,1fr) 60px;
  justify-content:stretch;
  width:100%;
  min-height:56px;
  padding:8px 10px;
  text-align:left;
}
.image-choice-list button.selected{
  border-color:rgba(245,130,32,.5);
  background:#fff8f0;
}
.image-choice-list button span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.site-preview .feature-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  align-items:center;
  margin:12px 0 26px;
}
.site-preview .grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.site-preview .card{
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f8fafc;
}
.glossary-form{gap:12px}
.glossary-row{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#f8fafc;
}
.license-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:0 0 18px;
  padding:22px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:22px;
  background:linear-gradient(135deg,#102033,#17324d);
  color:#fff;
  box-shadow:var(--shadow);
}
.license-hero h2{
  margin:6px 0 8px;
  font-size:2rem;
  letter-spacing:0;
}
.license-hero p{
  max-width:780px;
  margin:0;
  color:#d8e6f2;
}
.license-hero.expired,
.license-hero.over_limit{background:linear-gradient(135deg,#7f1d1d,#b42318)}
.license-hero.grace,
.license-hero.limit_reached{background:linear-gradient(135deg,#713f12,#b45309)}
.eyebrow{
  color:#9ed5ff;
  font-size:.75rem;
  font-weight:900;
  text-transform:uppercase;
}
.license-ring{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:150px;
  height:150px;
  border:10px solid rgba(255,255,255,.18);
  border-radius:999px;
  text-align:center;
  background:rgba(255,255,255,.08);
}
.license-ring strong{
  display:block;
  font-size:2.25rem;
  line-height:1;
}
.license-ring span{font-size:.78rem;color:#d8e6f2}
.license-metrics .metric strong{font-size:1.2rem}
.license-form textarea,
.license-result textarea{
  min-height:130px;
}
.form-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
.muted{color:var(--muted)}
.license-result{
  display:grid;
  gap:10px;
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(4,120,87,.22);
  border-radius:16px;
  background:#ecfdf5;
}
.license-result h3,
.license-result p{margin:0}
.feature-toolbar{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin:0 0 12px;
  color:var(--muted);
  font-weight:800;
}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.feature-card{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.feature-card span{
  justify-self:start;
  padding:5px 8px;
  border-radius:999px;
  font-size:.7rem;
  font-weight:900;
  text-transform:uppercase;
}
.feature-card.allowed span{
  background:#dcfce7;
  color:#166534;
}
.feature-card.locked{
  background:#f8fafc;
  color:#64748b;
}
.feature-card.locked span{
  background:#fee2e2;
  color:#991b1b;
}
.feature-card h3{
  margin:0;
  color:#102033;
  font-size:1rem;
}
.feature-card p{margin:0;color:var(--muted)}
.license-upload{
  display:grid;
  gap:12px;
}
.check-list.compact div{
  grid-template-columns:1fr;
  gap:4px;
}
.check-list.compact span{
  overflow-wrap:anywhere;
}
.workflow-policy-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:12px;
}
.workflow-policy-card{
  display:grid;
  gap:10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--panel-soft);
  padding:12px;
  min-width:0;
}
.workflow-policy-card strong,
.workflow-policy-card span{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}
.workflow-policy-card span{
  color:var(--muted);
  font-size:.86rem;
}
.workflow-policy-card label{
  min-width:0;
}
.workflow-policy-card select,
.workflow-policy-card input[type="number"]{
  width:100%;
}
.workflow-admin-shell .workspace-side{
  align-self:start;
}
.validation-panel{
  margin-top:14px;
}
.login-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:22px;
  background:var(--admin-bg);
}
.login-card{
  width:min(560px,100%);
  padding:28px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow);
}
.login-card img{height:64px;width:auto}
.login-form{display:grid;gap:12px;margin-top:18px}
.divider{height:1px;background:var(--line);margin:20px 0}
@media(max-width:1180px){
  .admin-shell{grid-template-columns:1fr}
  .admin-side{position:static;height:auto}
  .admin-side nav{max-height:none}
  .workspace,.split{grid-template-columns:1fr}
  .workspace-side{position:static;max-height:none;overflow:visible}
  .editor-pane{position:static}
  .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bulk-editor{grid-template-columns:1fr 1fr}
  .user-row{grid-template-columns:34px 54px minmax(0,1fr);align-items:start}
  .user-row .role-badges,
  .user-row b,
  .user-row button{grid-column:3}
  .media-browser{grid-template-columns:repeat(2,minmax(0,1fr))}
  .template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .variable-grid,.variable-row{grid-template-columns:1fr}
  .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-preview .feature-split,
  .site-preview .grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .admin-main{padding:18px}
  .page-head{align-items:flex-start;flex-direction:column}
  .metrics,.action-grid,.grid-2,.auth-methods{grid-template-columns:1fr}
  .media-grid,.media-browser{grid-template-columns:1fr}
  .template-grid{grid-template-columns:1fr}
  .people-toolbar{align-items:stretch;flex-direction:column}
  .directory-grid,.bulk-editor{grid-template-columns:1fr}
  .user-row{grid-template-columns:34px minmax(0,1fr)}
  .user-row img{display:none}
  .user-row .role-badges,
  .user-row b,
  .user-row button{grid-column:2}
  .license-hero{align-items:flex-start;flex-direction:column}
  .license-ring{width:128px;height:128px}
  .feature-grid{grid-template-columns:1fr}
  .record-row,.radio-card{align-items:flex-start;flex-direction:column}
}


/* v193 content editor save reliability and homepage module editor */
.save-status { display:inline-flex; align-items:center; min-height:2.2rem; margin-left:.85rem; font-weight:700; color:#667085; }
.save-status.ok { color:#047857; }
.save-status.err { color:#b42318; }
.save-status.working { color:#b45309; }
.sticky-editor-save { position:sticky; bottom:0; z-index:20; background:rgba(255,255,255,.96); border-top:1px solid rgba(15,23,42,.10); padding:14px 12px; margin:18px -12px -12px; backdrop-filter:blur(10px); }
.module-editor { margin-bottom:14px; }
.module-editor textarea, .homepage-modules-form textarea { min-height:92px; font-family:inherit; }
.module-card-row { border:1px solid rgba(15,23,42,.10); border-radius:16px; padding:12px; margin:10px 0; background:rgba(248,250,252,.72); }
.grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.notice.warn { background:#fffbeb; border:1px solid #fed7aa; color:#92400e; border-radius:14px; padding:12px 14px; margin:10px 0 16px; }
.notice.warn a { color:#9a3412; font-weight:800; text-decoration:underline; }
@media (max-width: 900px){ .grid-3 { grid-template-columns:1fr; } }

/* v194 content plumbing rewrite */
.home-module-row { border-color: rgba(245,130,32,.38); background: linear-gradient(90deg, rgba(245,130,32,.12), rgba(255,255,255,.03)); }
.save-status.working { color: #8a5a00; font-weight: 700; }
.save-status.ok { color: #116329; font-weight: 700; }
.save-status.err { color: #9b1c1c; font-weight: 700; white-space: pre-wrap; }


/* v195 visual page builder and public-like editing shell */
.page-builder-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.page-builder-tabs button{border:1px solid var(--line,#d8e0ea);background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}.page-builder-tabs button.active,.page-builder-tabs button:hover{background:#ff8a1c;color:#07111d;border-color:#ff8a1c}.page-builder-panel .notice{margin-bottom:16px}.module-editor-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.75fr);gap:18px;align-items:start}.module-live-preview{position:sticky;top:90px;border:1px solid rgba(255,138,28,.28);border-radius:22px;padding:20px;background:linear-gradient(135deg,#07131f,#0c2131);color:#f8fbff;box-shadow:0 18px 45px rgba(0,0,0,.18)}.module-live-preview h3{margin:8px 0 10px;font-size:24px}.module-live-preview p{color:#cfe0ee}.module-preview-image img{width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.12);margin-top:10px}.module-preview-cards{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.module-preview-cards span{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);border-radius:999px;padding:7px 10px;font-size:12px}.page-visual-layout{display:grid;grid-template-columns:minmax(520px,1fr) minmax(360px,.65fr);gap:20px;align-items:start}.page-visual-preview{position:sticky;top:88px}.admin-public-frame{border-radius:28px;background:#020910;color:#eef6ff;padding:18px;border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 80px rgba(0,0,0,.22);overflow:hidden}.public-shell-note{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#ffbd79;margin:0 0 10px}.admin-public-frame .section{padding:24px 0;margin:0}.admin-public-frame .panel{background:rgba(7,22,34,.92);border:1px solid rgba(125,170,202,.24);border-radius:22px;padding:24px}.admin-public-frame h1{font-size:30px;line-height:1.15;margin:8px 0 18px;color:#fff}.admin-public-frame .eyebrow{display:inline-flex;border:1px solid rgba(255,138,28,.45);border-radius:999px;color:#ffbd79;text-transform:uppercase;letter-spacing:.14em;font-size:11px;padding:7px 12px}.admin-public-frame p,.admin-public-frame li{color:#d9e7f3;line-height:1.65}.admin-public-frame img{max-width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.13)}.admin-public-body h2,.admin-public-body h3{color:#fff}.visual-surface.site-preview{min-height:360px}.image-picker summary .image-thumb,.image-choice-list .image-thumb{object-fit:cover}
@media(max-width:1200px){.page-visual-layout,.module-editor-grid{grid-template-columns:1fr}.page-visual-preview,.module-live-preview{position:relative;top:auto}}


/* v196 consolidated visual page builder */
.visual-builder-shell { display:grid; gap:18px; }
.builder-jump-card { position:sticky; top:0; z-index:25; background:rgba(248,250,252,.96); border:1px solid rgba(15,23,42,.08); border-radius:18px; padding:12px 14px; box-shadow:0 10px 32px rgba(15,23,42,.08); backdrop-filter:blur(12px); }
.builder-jump-card > strong { display:block; margin:0 0 8px; color:#0f172a; }
.page-builder-tabs { margin:0; }
.page-builder-tabs a { display:inline-flex; align-items:center; border:1px solid var(--line,#d8e0ea); background:#fff; border-radius:999px; padding:8px 12px; font-weight:800; color:#1f2937; text-decoration:none; }
.page-builder-tabs a.active, .page-builder-tabs a:hover { background:#ff8a1c; color:#07111d; border-color:#ff8a1c; }
.builder-content-section { scroll-margin-top:92px; }
.builder-content-section .panel-head { margin-bottom:8px; }
.builder-accordion { display:grid; gap:10px; }
.builder-item { scroll-margin-top:110px; border:1px solid rgba(15,23,42,.10); border-radius:18px; background:#fff; overflow:hidden; box-shadow:0 10px 28px rgba(15,23,42,.04); }
.builder-item > summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 16px; cursor:pointer; list-style:none; }
.builder-item > summary::-webkit-details-marker { display:none; }
.builder-item > summary strong { color:#0f172a; }
.builder-item > summary span { color:#667085; font-weight:700; }
.builder-item[open] > summary { border-bottom:1px solid rgba(15,23,42,.08); background:linear-gradient(90deg,rgba(255,138,28,.10),rgba(248,250,252,.8)); }
.compact-content-form, .compact-home-form { padding:16px; }
.compact-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.compact-help { margin:0 0 12px; }
.advanced-fields { border:1px dashed rgba(15,23,42,.18); border-radius:14px; padding:10px 12px; margin:12px 0; background:rgba(248,250,252,.62); }
.advanced-fields > summary { cursor:pointer; font-weight:800; color:#344054; }
.section-save-row { display:flex; justify-content:flex-end; align-items:center; gap:12px; margin-top:14px; padding-top:12px; border-top:1px solid rgba(15,23,42,.08); }
.section-save-row .save-status { margin-left:0; margin-right:auto; }
.global-save { position:sticky; bottom:0; z-index:20; background:rgba(255,255,255,.97); padding:13px 0 0; backdrop-filter:blur(10px); }
.compact-home-form .module-editor { margin-bottom:10px; }
.compact-home-form .module-editor-grid { grid-template-columns:minmax(0,1fr) minmax(240px,.45fr); gap:14px; }
.compact-home-form .module-live-preview { top:80px; padding:15px; border-radius:18px; }
.compact-home-form .module-live-preview h3 { font-size:20px; }
.compact-content-form .visual-surface.site-preview { min-height:240px; }
.compact-content-form .image-choice-list, .compact-home-form .image-choice-list { max-height:320px; overflow:auto; }
@media(max-width:1100px){ .compact-grid,.compact-home-form .module-editor-grid { grid-template-columns:1fr; } .builder-jump-card { position:relative; top:auto; } }


/* v197 visual builder anchor stability and cleanup */
.builder-jump-card.compact { padding: 12px 14px; margin-bottom: 14px; }
.page-builder-tabs.compact { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; max-height: 132px; overflow: auto; padding-right: 4px; }
.page-builder-tabs.compact button { border: 1px solid var(--line); background: var(--panel); color: var(--text); border-radius: 999px; padding: 7px 11px; font-weight: 700; cursor: pointer; }
.page-builder-tabs.compact button:hover,
.page-builder-tabs.compact button.active { border-color: rgba(255,143,31,.55); background: rgba(255,143,31,.12); color: var(--text); }
.visual-builder-shell .builder-content-section { scroll-margin-top: 22px; }
.visual-builder-shell details.builder-item { scroll-margin-top: 22px; }
.visual-builder-shell .section-save-row { justify-content: flex-end; }
.visual-builder-shell .section-save-row .save-status { margin-right: auto; }


/* v198 visual builder rebuild */
.visual-builder-shell { display: grid; gap: 1.25rem; }
.visual-builder-nav { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem; border: 1px solid rgba(15,23,42,.10); border-radius: 18px; background: rgba(255,255,255,.96); box-shadow: 0 16px 42px rgba(15,23,42,.08); }
.visual-builder-nav strong { display:block; font-size: 1rem; color: #0f172a; }
.visual-builder-nav span { display:block; color:#64748b; font-size:.9rem; margin-top:.2rem; }
.builder-mode-tabs { display:flex; gap:.5rem; flex-wrap:wrap; justify-content:flex-end; }
.builder-mode-tabs button { border:1px solid #dbe3ef; background:#fff; color:#0f172a; border-radius:999px; padding:.65rem 1rem; font-weight:800; cursor:pointer; }
.builder-mode-tabs button.active, .builder-mode-tabs button:hover { background:#fff7ed; border-color:#fdba74; color:#9a3412; }
.builder-jump-card, .page-builder-tabs { display:none !important; }
.clean-section { padding: 1.25rem; }
.clean-section .panel-head { align-items:flex-start; border-bottom:1px solid #e5edf7; padding-bottom:.9rem; margin-bottom:1rem; }
.clean-section .panel-head p { margin:.25rem 0 0; color:#64748b; }
.clean-accordion { display:grid; gap:.75rem; }
.clean-builder-item { border:1px solid #dbe3ef; border-radius:18px; overflow:hidden; background:#fff; box-shadow: 0 10px 24px rgba(15,23,42,.04); }
.clean-builder-item > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.1rem; cursor:pointer; list-style:none; background:linear-gradient(90deg,#ffffff,#f8fafc); }
.clean-builder-item > summary::-webkit-details-marker { display:none; }
.clean-builder-item > summary strong { color:#0f172a; font-size:1rem; }
.clean-builder-item > summary span { color:#64748b; font-size:.92rem; text-align:right; max-width:45%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.clean-builder-item[open] > summary { border-bottom:1px solid #e5edf7; background:#fff7ed; }
.saved-flash { outline: 3px solid rgba(34,197,94,.24); }
.clean-builder-form { padding:1.1rem; display:grid; gap:1rem; }
.builder-form-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap:1rem; align-items:end; }
.clean-builder-form textarea { min-height: 92px; }
.clean-builder-form .visual-editor { border:1px solid #dbe3ef; border-radius:16px; overflow:hidden; background:#fff; }
.clean-builder-form .visual-toolbar { background:#f8fafc; border-bottom:1px solid #e5edf7; padding:.65rem; display:flex; gap:.45rem; flex-wrap:wrap; }
.clean-builder-form .visual-surface { min-height:260px; padding:1.1rem; line-height:1.65; color:#0f172a; background:#fff; }
.clean-builder-form .visual-surface:focus { outline: 3px solid rgba(245,130,32,.18); }
.section-save-row { display:flex; align-items:center; justify-content:flex-end; gap:.9rem; padding-top:.75rem; margin-top:.25rem; border-top:1px solid #e5edf7; }
.section-save-row .primary { min-width: 160px; }
.homepage-modules-form .module-live-preview, .page-visual-preview, .admin-public-frame, .public-shell-note { display:none !important; }
.module-card-row { border:1px solid #e5edf7; border-radius:14px; padding:.75rem; background:#f8fafc; }
.module-card-row summary { cursor:pointer; }
.card-editor-stack { display:grid; gap:.7rem; }
.check-card.small { min-height: 46px; display:flex; align-items:center; justify-content:space-between; }
.image-picker details { max-width:100%; }
@media (max-width: 900px) {
  .visual-builder-nav { position:static; align-items:flex-start; flex-direction:column; }
  .builder-mode-tabs { justify-content:flex-start; }
  .clean-builder-item > summary { align-items:flex-start; flex-direction:column; }
  .clean-builder-item > summary span { max-width:100%; text-align:left; white-space:normal; }
}


/* v200 Public Site Builder cleanup */
.visual-builder-shell { display: grid; gap: 1.4rem; }
.compact-builder-nav, .visual-builder-nav { position: sticky; top: 0; z-index: 7; background: rgba(248,250,252,.96); backdrop-filter: blur(10px); border: 1px solid rgba(148,163,184,.28); border-radius: 18px; padding: 1rem; box-shadow: 0 10px 35px rgba(15,23,42,.08); }
.visual-builder-nav .builder-mode-tabs { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .75rem; }
.visual-builder-nav .builder-mode-tabs button { min-width: 92px; padding: .65rem .85rem; border-radius: 999px; color: #0f172a; background: #fff; border: 1px solid rgba(148,163,184,.42); }
.visual-builder-nav .builder-mode-tabs button.active, .visual-builder-nav .builder-mode-tabs button:hover { background: #fff7ed; border-color: #fb923c; color: #9a3412; }
.clean-section > .panel-head { align-items: start; }
.clean-accordion { display: grid; gap: .85rem; }
details.clean-builder-item { background: #fff; border: 1px solid rgba(148,163,184,.30); border-radius: 16px; overflow: hidden; }
details.clean-builder-item > summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 1.15rem; background: linear-gradient(90deg,#fff,#f8fafc); }
details.clean-builder-item > summary::-webkit-details-marker { display: none; }
details.clean-builder-item > summary strong { color: #0f172a; }
details.clean-builder-item > summary span { color: #64748b; font-size: .95rem; }
.clean-builder-form { padding: 1rem 1.15rem 1.25rem; display: grid; gap: 1rem; }
.builder-form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.visual-editor .visual-surface { min-height: 240px; max-height: 520px; overflow: auto; background: #fff; color: #0f172a; }
.visual-editor .visual-toolbar { gap: .45rem; flex-wrap: wrap; }
.section-save-row { display: flex; justify-content: flex-end; align-items: center; gap: .75rem; padding-top: .75rem; border-top: 1px solid rgba(148,163,184,.22); }
.save-status { min-height: 1.2rem; font-weight: 700; }
.save-status.working { color: #92400e; }
.save-status.ok { color: #166534; }
.save-status.err { color: #991b1b; }

/* v201 public builder and admin search cleanup */
.admin-search { position: relative; }
.admin-search-results {
  margin-top: 8px;
  display: grid;
  gap: 6px;
  max-height: 320px;
  overflow: auto;
  padding: 6px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 14px;
  background: rgba(8, 17, 30, .96);
  box-shadow: 0 18px 38px rgba(0,0,0,.35);
}
.admin-search-results a {
  display: block;
  padding: 9px 10px;
  border-radius: 12px;
  color: #e5edf7;
  text-decoration: none;
  border: 1px solid transparent;
}
.admin-search-results a:hover,
.admin-search-results a:focus {
  border-color: rgba(245, 130, 32, .45);
  background: rgba(245, 130, 32, .12);
}
.admin-search-results strong { display: block; font-size: 13px; }
.admin-search-results small { display: block; margin-top: 3px; color: #a9bad0; line-height: 1.35; }
.admin-search-results p { margin: 8px 10px; color: #a9bad0; font-size: 13px; }
.clean-builder-form .section-save-row {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding-top: 16px;
}
.clean-builder-form .save-status.ok { color: #15803d; }
.clean-builder-form .save-status.err { color: #b91c1c; }
.clean-builder-form .save-status.working { color: #92400e; }
.saved-flash { outline: 2px solid rgba(22, 163, 74, .35); outline-offset: 2px; }

/* v203 admin directory experience */
.admin-directory-panel .section-head{margin-bottom:14px}
.admin-directory-controls{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,260px) minmax(130px,180px);gap:12px;align-items:center;margin-bottom:16px}
.admin-org-chart{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:none;overflow:visible;padding-right:0}
.admin-directory-card{min-height:82px;background:#fff;color:#0d2033;border:1px solid #dbe5ee;box-shadow:0 10px 24px rgba(15,35,55,.06)}
.admin-directory-card:hover,.admin-directory-card:focus{border-color:rgba(255,138,0,.55);background:#fff7ed;transform:translateY(-1px)}
.admin-directory-card small{color:#607387;line-height:1.45}
.admin-directory-card .org-card-more{color:#0b79a5}
.admin-directory-card .avatar,.admin-directory-card .avatar-initials{width:48px;height:48px;min-width:48px;border-radius:999px;object-fit:cover}
.admin-directory-card .org-avatar-wrap{width:48px;height:48px;min-width:48px;position:relative;display:inline-grid;place-items:center}
.admin-directory-modal .directory-related-list{display:grid;gap:10px;margin-top:10px}
.admin-directory-modal .directory-related-card{width:100%}
.admin-directory-modal .info-grid a{color:#aee6ff}
@media(max-width:900px){.admin-directory-controls{grid-template-columns:1fr}.admin-org-chart{grid-template-columns:1fr}}

/* v204: theme-aware admin directory */
.admin-directory-panel{
  --directory-brand:var(--brand, var(--accent));
  --directory-brand2:var(--brand2, var(--accent-dark));
  --directory-text:var(--ink);
  --directory-muted:var(--muted);
  --directory-surface:#ffffff;
  --directory-surface-soft:color-mix(in srgb, var(--directory-brand) 7%, #ffffff);
  --directory-line:color-mix(in srgb, var(--directory-brand) 20%, var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--directory-brand) 4%,#fff),#fff 62%);
  border-color:var(--directory-line);
}
.admin-directory-panel .section-head h2,
.admin-directory-panel .section-head p,
.admin-directory-panel .department-panel,
.admin-directory-panel .empty{color:var(--directory-text)}
.admin-directory-panel .muted{color:var(--directory-muted)}
.admin-directory-controls input,
.admin-directory-controls select{
  border-color:var(--directory-line);
  background:color-mix(in srgb, var(--directory-brand) 4%, #fff);
  color:var(--directory-text);
}
.admin-directory-card{
  background:var(--directory-surface);
  color:var(--directory-text);
  border-color:var(--directory-line);
  box-shadow:0 12px 28px color-mix(in srgb,var(--directory-brand) 11%,transparent);
}
.admin-directory-card:hover,
.admin-directory-card:focus{
  border-color:color-mix(in srgb,var(--directory-brand) 58%,var(--directory-line));
  background:var(--directory-surface-soft);
  box-shadow:0 18px 38px color-mix(in srgb,var(--directory-brand) 18%,transparent);
}
.admin-directory-card.group{background:color-mix(in srgb,var(--directory-brand) 6%,#fff)}
.admin-directory-card strong{color:var(--directory-text)}
.admin-directory-card small{color:var(--directory-muted)}
.admin-directory-card .org-card-more{color:color-mix(in srgb,var(--directory-brand) 76%,#0b79a5)}
.admin-directory-card .avatar,
.admin-directory-card .avatar-initials{
  border-color:color-mix(in srgb,var(--directory-brand) 22%,#fff);
  box-shadow:0 10px 24px color-mix(in srgb,var(--directory-brand) 18%,transparent);
}
.admin-directory-card .avatar-initials,
.admin-directory-modal .avatar-initials{
  background:linear-gradient(135deg,color-mix(in srgb,var(--directory-brand) 82%,#fff),color-mix(in srgb,var(--directory-brand2) 72%,#fff));
  color:color-mix(in srgb,var(--directory-text) 90%,#fff);
}
.admin-directory-modal{
  --directory-brand:var(--brand, var(--accent));
  --directory-brand2:var(--brand2, var(--accent-dark));
  --directory-text:var(--ink);
  --directory-muted:var(--muted);
  background:linear-gradient(145deg,color-mix(in srgb,var(--directory-brand) 7%,#fff),#fff 72%);
  border-color:color-mix(in srgb,var(--directory-brand) 22%,#dbe5ee);
  color:var(--directory-text);
  box-shadow:0 30px 90px color-mix(in srgb,var(--directory-brand) 22%,rgba(15,23,42,.30));
}
.admin-directory-modal .eyebrow{
  border-color:color-mix(in srgb,var(--directory-brand) 38%,transparent);
  background:color-mix(in srgb,var(--directory-brand) 13%,#fff);
  color:color-mix(in srgb,var(--directory-brand) 70%,#172433);
}
.admin-directory-modal .muted,
.admin-directory-modal small,
.admin-directory-modal .directory-modal-count{color:var(--directory-muted)}
.admin-directory-modal h2,
.admin-directory-modal h3,
.admin-directory-modal b,
.admin-directory-modal strong{color:var(--directory-text)}
.admin-directory-modal .info-grid div,
.admin-directory-modal .directory-related-card,
.admin-directory-modal .directory-org-chain{
  background:color-mix(in srgb,var(--directory-brand) 6%,#fff);
  border-color:color-mix(in srgb,var(--directory-brand) 18%,#dbe5ee);
}
.admin-directory-modal .info-grid strong{color:color-mix(in srgb,var(--directory-brand) 75%,#172433)}
.admin-directory-modal .info-grid span,
.admin-directory-modal .info-grid a{color:var(--directory-text)}
.admin-directory-modal .org-card-more,
.admin-directory-modal .directory-org-chain em{color:color-mix(in srgb,var(--directory-brand) 78%,#0b79a5)}
.admin-directory-modal .modal-close,
.admin-directory-modal .modal-nav{
  border-color:color-mix(in srgb,var(--directory-brand) 32%,transparent);
  background:color-mix(in srgb,var(--directory-brand) 12%,#fff);
  color:var(--directory-text);
}
html[data-theme="healthcare"] .admin-directory-panel,
html[data-theme="professional"] .admin-directory-panel,
html[data-theme="nonprofit"] .admin-directory-panel,
html[data-theme="dental"] .admin-directory-panel,
html[data-theme="blue-silver"] .admin-directory-panel,
html[data-theme="forest"] .admin-directory-panel,
html[data-theme="plum"] .admin-directory-panel{
  --directory-text:#172433;
  --directory-muted:#52657a;
  --directory-surface:#ffffff;
}
html[data-theme="legal"] .admin-directory-panel,
html[data-theme="legal"] .admin-directory-modal{
  --directory-text:#f8fafc;
  --directory-muted:#cbd5e1;
  --directory-surface:rgba(16,24,39,.92);
  --directory-surface-soft:color-mix(in srgb,var(--brand) 16%,rgba(16,24,39,.92));
  --directory-line:rgba(214,168,93,.28);
}
html[data-theme="legal"] .admin-directory-panel{
  background:linear-gradient(180deg,rgba(16,24,39,.94),rgba(9,13,22,.92));
}
html[data-theme="legal"] .admin-directory-controls input,
html[data-theme="legal"] .admin-directory-controls select{
  background:rgba(9,13,22,.72);
  color:var(--directory-text);
}
html[data-theme="legal"] .admin-directory-card,
html[data-theme="legal"] .admin-directory-card.group{
  background:rgba(16,24,39,.88);
}
html[data-theme="legal"] .admin-directory-card:hover,
html[data-theme="legal"] .admin-directory-card:focus{
  background:rgba(214,168,93,.13);
}
html[data-theme="legal"] .admin-directory-card strong,
html[data-theme="legal"] .admin-directory-modal h2,
html[data-theme="legal"] .admin-directory-modal h3,
html[data-theme="legal"] .admin-directory-modal b,
html[data-theme="legal"] .admin-directory-modal strong{color:#f8fafc}
html[data-theme="legal"] .admin-directory-card small,
html[data-theme="legal"] .admin-directory-modal .muted,
html[data-theme="legal"] .admin-directory-modal small,
html[data-theme="legal"] .admin-directory-modal .directory-modal-count{color:#cbd5e1}
html[data-theme="legal"] .admin-directory-modal{
  background:linear-gradient(145deg,rgba(16,24,39,.98),rgba(9,13,22,.98));
  border-color:rgba(214,168,93,.30);
}
html[data-theme="legal"] .admin-directory-modal .info-grid div,
html[data-theme="legal"] .admin-directory-modal .directory-related-card,
html[data-theme="legal"] .admin-directory-modal .directory-org-chain{
  background:rgba(255,255,255,.055);
  border-color:rgba(214,168,93,.22);
}
html[data-theme="legal"] .admin-directory-modal .info-grid span,
html[data-theme="legal"] .admin-directory-modal .info-grid a{color:#f8fafc}

/* v205: visual builders for Employee Portal and Handbook */
.builder-clean-shell {
  display: grid;
  gap: 1.25rem;
}
.builder-tabs.compact-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
  padding: .75rem;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 22px;
  box-shadow: 0 18px 45px rgba(15,23,42,.08);
  position: sticky;
  top: .75rem;
  z-index: 4;
  backdrop-filter: blur(14px);
}
.builder-tabs.compact-tabs button {
  border: 1px solid rgba(148,163,184,.34);
  background: #fff;
  border-radius: 999px;
  padding: .72rem 1.1rem;
  font-weight: 800;
  cursor: pointer;
}
.builder-tabs.compact-tabs button.active {
  border-color: rgba(249,115,22,.55);
  color: #9a3412;
  background: linear-gradient(135deg, rgba(255,247,237,.98), rgba(255,255,255,.95));
  box-shadow: 0 14px 35px rgba(249,115,22,.14);
}
.builder-accordion-list {
  display: grid;
  gap: .9rem;
}
.builder-card-form {
  display: grid;
  gap: 1rem;
  padding: 1rem;
}
.builder-preview-strip {
  display: grid;
  gap: .75rem;
  padding: .85rem;
  background: linear-gradient(135deg, rgba(248,250,252,.95), rgba(255,247,237,.9));
  border: 1px dashed rgba(148,163,184,.42);
  border-radius: 18px;
}
.portal-preview-card,
.handbook-preview-card {
  display: flex;
  gap: .9rem;
  align-items: center;
  padding: 1rem;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(148,163,184,.25);
  box-shadow: 0 14px 36px rgba(15,23,42,.08);
}
.portal-preview-card strong,
.handbook-preview-card strong {
  display: block;
  color: #0f172a;
  font-size: 1rem;
}
.portal-preview-card span,
.handbook-preview-card span {
  display: block;
  color: #475569;
  line-height: 1.45;
}
.portal-preview-card .mini-icon {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(249,115,22,.18), rgba(59,130,246,.16));
  color: #9a3412;
  font-weight: 900;
  letter-spacing: .04em;
  flex: 0 0 auto;
}
.handbook-preview-card {
  display: block;
}
.handbook-preview-card strong {
  margin-bottom: .35rem;
}
.portal-builder .builder-content-section,
.handbook-builder .builder-content-section {
  overflow: visible;
}
.portal-builder-overview{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.portal-builder-overview article{
  border:1px solid var(--admin-border,rgba(148,163,184,.24));
  border-radius:18px;
  padding:16px;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(248,250,252,.72));
  box-shadow:0 14px 38px rgba(15,23,42,.08);
}
.portal-builder-overview span,
.portal-builder-overview small{
  display:block;
  color:var(--admin-muted,#64748b);
  font-weight:800;
}
.portal-builder-overview strong{
  display:block;
  margin:.2rem 0;
  color:var(--admin-text,#0f172a);
  font-size:1.55rem;
  line-height:1;
}
.portal-builder-empty{
  display:grid;
  gap:.55rem;
  justify-items:start;
  padding:1.25rem;
  border:1px dashed var(--admin-border,rgba(148,163,184,.35));
  border-radius:18px;
  background:rgba(248,250,252,.72);
}
.portal-builder-empty strong{color:var(--admin-text,#0f172a)}
.portal-builder-empty p{margin:0;color:var(--admin-muted,#64748b)}
.portal-link-item summary,
.handbook-section-item summary,
.glossary-item summary {
  min-height: 4.25rem;
}
.portal-link-item[open],
.handbook-section-item[open],
.glossary-item[open] {
  box-shadow: 0 22px 60px rgba(15,23,42,.10);
}
.ghost-danger {
  background: rgba(254,242,242,.8) !important;
  color: #991b1b !important;
  border: 1px solid rgba(248,113,113,.35) !important;
}
.handbook-builder .visual-surface.site-preview {
  min-height: 240px;
  max-height: 560px;
  overflow: auto;
}
.portal-settings-form .portal-preview-card {
  max-width: 560px;
}
@media (max-width: 900px) {
  .builder-tabs.compact-tabs { position: static; }
  .portal-builder-overview { grid-template-columns: 1fr; }
  .portal-preview-card { align-items: flex-start; }
}


/* v206 customer directory */
/* Public UI now labels this feature as Client Directory. */
.customer-directory-card .customer-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.customer-directory-card .customer-tags em{font-style:normal;font-size:.72rem;font-weight:900;border:1px solid var(--admin-border,rgba(148,163,184,.25));border-radius:999px;padding:3px 7px;color:var(--admin-muted,#64748b);background:rgba(255,255,255,.08)}
.customer-directory-modal .customer-modal-tags{margin-top:10px}
.customer-form textarea{min-height:120px}
.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.form-grid.four{grid-template-columns:1fr}}


/* v207 client directory polish */
.compact-client-form{
  display:grid;
  gap:12px;
}
.client-editor-hero{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid var(--admin-border, rgba(148,163,184,.25));
  border-radius:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.48));
  box-shadow:0 14px 40px rgba(15,23,42,.08);
}
.client-editor-avatar{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-weight:950;
  letter-spacing:.06em;
  color:var(--theme-accent-contrast,#fff);
  background:var(--theme-accent, var(--admin-accent,#f97316));
  box-shadow:0 10px 24px rgba(15,23,42,.16);
  flex:0 0 auto;
}
.client-editor-title{
  min-width:0;
  display:grid;
  gap:2px;
  flex:1 1 auto;
}
.client-editor-title strong{
  color:var(--admin-text,#0f172a);
  font-size:1.02rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.client-editor-title span{
  color:var(--admin-muted,#64748b);
  font-size:.86rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.client-active-toggle{
  width:auto !important;
  margin:0 !important;
  padding:8px 10px !important;
  border:1px solid var(--admin-border, rgba(148,163,184,.28));
  border-radius:999px;
  background:rgba(255,255,255,.7);
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  font-weight:900;
  color:var(--admin-text,#0f172a);
}
.client-editor-group{
  border:1px solid var(--admin-border, rgba(148,163,184,.25));
  border-radius:18px;
  background:rgba(255,255,255,.72);
  overflow:hidden;
}
.client-editor-group summary{
  cursor:pointer;
  list-style:none;
  padding:11px 14px;
  font-weight:950;
  color:var(--admin-text,#0f172a);
  background:linear-gradient(90deg, rgba(248,250,252,.95), rgba(255,255,255,.62));
  border-bottom:1px solid transparent;
}
.client-editor-group summary::-webkit-details-marker{display:none}
.client-editor-group[open] summary{
  border-bottom-color:var(--admin-border, rgba(148,163,184,.20));
}
.client-editor-group summary::before{
  content:'>';
  display:inline-block;
  margin-right:8px;
  transform:rotate(0deg);
  color:var(--theme-accent, var(--admin-accent,#f97316));
  font-weight:950;
}
.client-editor-group[open] summary::before{transform:rotate(90deg)}
.client-editor-group > .form-grid,
.client-editor-group > label{
  margin:12px 14px;
}
.compact-grid{gap:10px !important}
.compact-client-form label{
  font-size:.82rem;
  gap:5px;
}
.compact-client-form input,
.compact-client-form select,
.compact-client-form textarea{
  min-height:40px;
}
.compact-client-form textarea{min-height:92px}
.client-editor-actions{
  position:sticky;
  bottom:0;
  justify-content:flex-end;
  padding:12px;
  border:1px solid var(--admin-border, rgba(148,163,184,.18));
  border-radius:18px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(16px);
  box-shadow:0 -14px 34px rgba(15,23,42,.08);
}
@media(max-width:760px){
  .client-editor-hero{align-items:flex-start;flex-wrap:wrap}
  .client-active-toggle{width:100% !important;justify-content:center}
}

/* v208 client directory collapse and bulk actions */
.client-directory-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
  gap:12px;
}
.client-card-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
}
.client-directory-card{
  position:relative;
  min-width:0;
  padding:0;
  overflow:hidden;
}
.client-directory-card .customer-card-open{
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  padding:12px 14px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  width:100%;
  cursor:pointer;
}
.client-card-main{min-width:0}
.client-card-main strong,
.client-card-main small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.client-directory-card .customer-card-open:focus-visible{
  outline:2px solid var(--theme-accent, var(--admin-accent,#f97316));
  outline-offset:-2px;
  border-radius:16px;
}
.client-select-check{
  width:30px !important;
  height:30px;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  place-items:center;
  border:1px solid var(--admin-border, rgba(148,163,184,.28));
  border-radius:12px;
  background:rgba(255,255,255,.78);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  cursor:pointer;
}
.client-select-check input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.client-select-check span{
  width:18px;
  height:18px;
  border-radius:6px;
  border:1px solid var(--admin-border, rgba(148,163,184,.5));
  background:rgba(255,255,255,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
.client-select-check:has(input:focus-visible){outline:2px solid var(--theme-accent, var(--admin-accent,#f97316));outline-offset:2px}
.client-select-check input:checked + span{
  background:var(--theme-accent, var(--admin-accent,#f97316));
  border-color:var(--theme-accent, var(--admin-accent,#f97316));
  position:relative;
}
.client-select-check input:checked + span::after{
  content:'\\2713';
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--theme-accent-contrast,#fff);
  font-weight:950;
  font-size:.78rem;
}
.client-bulk-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:10px 0;
  padding:8px 10px;
  border:1px solid var(--admin-border, rgba(148,163,184,.2));
  border-radius:16px;
  background:linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.52));
}
.client-bulk-toolbar strong{
  margin-right:auto;
  color:var(--admin-text,#0f172a);
  font-size:.95rem;
}
.client-bulk-toolbar button{min-height:36px;padding:8px 12px}
.client-bulk-edit,
.client-editor-panel,
.client-import-panel{
  overflow:hidden;
}
.client-bulk-edit{
  border:1px solid var(--admin-border, rgba(148,163,184,.24));
  border-radius:16px;
  background:rgba(255,255,255,.62);
  margin:10px 0 14px;
}
.client-bulk-edit summary,
.client-editor-panel > summary,
.client-import-panel > summary{
  cursor:pointer;
  list-style:none;
  padding:12px 14px;
  font-weight:950;
  color:var(--admin-text,#0f172a);
  display:flex;
  align-items:center;
  gap:10px;
}
.client-bulk-edit summary::-webkit-details-marker,
.client-editor-panel > summary::-webkit-details-marker,
.client-import-panel > summary::-webkit-details-marker{display:none}
.client-bulk-edit summary::before,
.client-editor-panel > summary::before,
.client-import-panel > summary::before{
  content:'>';
  color:var(--theme-accent, var(--admin-accent,#f97316));
  font-weight:950;
  transition:transform .15s ease;
}
.client-bulk-edit[open] summary::before,
.client-editor-panel[open] > summary::before,
.client-import-panel[open] > summary::before{transform:rotate(90deg)}
.client-bulk-edit summary small,
.client-editor-panel > summary small,
.client-import-panel > summary small{
  color:var(--admin-muted,#64748b);
  font-size:.82rem;
  font-weight:800;
  margin-left:auto;
}
.client-editor-panel > summary span,
.client-import-panel > summary span{font-size:1.08rem}
.client-editor-panel #customerEditor,
.client-import-body{
  padding:0 16px 16px;
}
.client-bulk-form{
  padding:0 12px 12px;
}
.compact-client-bulk-form .compact-help{
  margin:0 0 10px;
  font-size:.86rem;
}
.client-bulk-grid{
  display:grid;
  grid-template-columns:repeat(6, minmax(130px,1fr));
  gap:10px;
  align-items:end;
}
.client-bulk-grid label{
  font-size:.8rem;
  gap:4px;
}
.client-bulk-grid input,
.client-bulk-grid select{
  min-height:38px;
}
.compact-bulk-actions{
  justify-content:flex-end;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid var(--admin-border, rgba(148,163,184,.18));
}
.client-import-panel textarea{min-height:120px}
@media(max-width:1100px){
  .client-bulk-grid{grid-template-columns:repeat(3, minmax(150px,1fr))}
}
@media(max-width:760px){
  .client-directory-grid{grid-template-columns:1fr}
  .client-card-row{grid-template-columns:30px minmax(0,1fr)}
  .client-directory-card .customer-card-open{grid-template-columns:auto 1fr;padding:12px}
  .client-directory-card .org-card-more{display:none}
  .client-editor-panel > summary,
  .client-import-panel > summary,
  .client-bulk-edit summary{align-items:flex-start;flex-direction:column}
  .client-editor-panel > summary small,
  .client-import-panel > summary small,
  .client-bulk-edit summary small{margin-left:0}
  .client-bulk-grid{grid-template-columns:1fr}
  .client-bulk-toolbar strong{width:100%;margin-right:0}
}



.client-directory-filters select { min-width: 12rem; }
.client-state-badge { display:inline-flex; align-items:center; width:max-content; margin-top:.35rem; padding:.18rem .55rem; border-radius:999px; font-size:.72rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.client-state-badge.disabled { color:#991b1b; background:#fee2e2; border:1px solid #fecaca; }

/* v211 employee scheduling */
.schedule-week-board{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:12px;overflow:auto;padding-bottom:6px}.schedule-day{min-height:170px;border:1px solid var(--admin-border,#dde5ef);border-radius:18px;background:color-mix(in srgb,var(--admin-card,#fff) 92%,var(--admin-accent,#f58220) 8%);padding:12px}.schedule-day h3{margin:0 0 10px;font-size:.95rem}.schedule-shift-card{border:1px solid color-mix(in srgb,var(--admin-border,#d8e0ea) 70%,var(--admin-accent,#f58220));border-radius:14px;background:var(--admin-card,#fff);padding:10px;margin:8px 0;display:grid;gap:3px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.schedule-shift-card span,.schedule-shift-card small{color:var(--admin-muted,#64748b)}.ghost-mini{font-size:.75rem;padding:4px 8px;justify-self:start}.schedule-form.compact-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.schedule-form .wide{grid-column:1/-1}.timeoff-row{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--admin-border,#e2e8f0);border-radius:16px;padding:12px;margin:8px 0;background:var(--admin-card,#fff)}.timeoff-row div{display:grid;gap:3px}.timeoff-row span,.timeoff-row small{color:var(--admin-muted,#64748b)}@media(max-width:1100px){.schedule-week-board{grid-template-columns:repeat(2,minmax(220px,1fr))}.schedule-form.compact-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.schedule-week-board,.schedule-form.compact-grid{grid-template-columns:1fr}}

/* v217 scheduling admin polish */
.schedule-admin-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.schedule-admin-controls label{min-width:240px}.schedule-settings-panel summary,.schedule-admin-panel summary{cursor:pointer}.timeoff-row.expanded{align-items:flex-start}.timeoff-admin-edit{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;min-width:min(760px,60vw)}.timeoff-admin-edit .wide{grid-column:1/-1}.timeoff-admin-edit button{align-self:end}.schedule-form.compact-grid label.wide{grid-column:1/-1}@media(max-width:1000px){.timeoff-admin-edit{grid-template-columns:1fr 1fr;min-width:0}.schedule-admin-controls label{min-width:180px}}@media(max-width:700px){.timeoff-admin-edit{grid-template-columns:1fr}.schedule-admin-controls{display:grid}.schedule-admin-controls label{min-width:0}}

/* v220 scheduling search polish */
.schedule-person-search-wrap{position:relative;display:grid;gap:6px}.schedule-search-results{display:grid;gap:6px;margin-top:6px;max-height:260px;overflow:auto}.schedule-search-result{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--admin-border,#d8e0ea);border-radius:14px;padding:8px 10px;background:var(--admin-card,#fff);color:var(--admin-text,#0f172a);box-shadow:0 6px 18px rgba(15,23,42,.05)}.schedule-search-result:hover{border-color:var(--admin-accent,#f58220);transform:translateY(-1px)}.schedule-search-result span:not(.schedule-search-avatar){display:grid;gap:1px}.schedule-search-result small{color:var(--admin-muted,#64748b)}.schedule-search-avatar{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;overflow:hidden;flex:0 0 auto;background:var(--admin-accent,#f58220);color:#fff;font-weight:800}.schedule-search-avatar img{width:100%;height:100%;object-fit:cover;display:block}.schedule-search-empty{border:1px dashed var(--admin-border,#d8e0ea);border-radius:12px;padding:8px 10px;color:var(--admin-muted,#64748b)}

/* v231 client ownership polish */
.client-state-badge.active { color:#166534; background:#dcfce7; border:1px solid #bbf7d0; }
.client-owner-line{display:flex;align-items:center;gap:7px;margin-top:5px;min-width:0;color:var(--admin-muted,#64748b);font-size:.78rem;font-weight:800}
.client-owner-line > span:last-child{display:grid;gap:1px;min-width:0}
.client-owner-line b,.client-owner-line small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.15}
.client-owner-line small{font-weight:700;color:var(--admin-muted,#64748b)}
.client-owner-avatar{width:28px;height:28px;border-radius:999px;overflow:hidden;display:grid;place-items:center;flex:0 0 auto;background:var(--admin-accent,#f58220);color:#fff;font-weight:900;font-size:.72rem;border:1px solid rgba(255,255,255,.65)}
.client-owner-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.client-owner-avatar .owner-initials{display:grid;place-items:center;width:100%;height:100%}
.wide-owner-field{grid-column:span 1;min-width:0}
.client-owner-picker{display:grid;gap:8px;position:relative}
.client-owner-selected{min-height:44px;border:1px solid var(--admin-border,rgba(148,163,184,.28));border-radius:14px;background:rgba(255,255,255,.72);display:flex;align-items:center;gap:10px;padding:7px 9px;min-width:0}
.client-owner-selected > span:not(.client-owner-avatar){display:grid;gap:1px;min-width:0}
.client-owner-selected b,.client-owner-selected small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.client-owner-selected small{color:var(--admin-muted,#64748b);font-weight:700}
.client-owner-selected button{margin-left:auto;min-height:32px;padding:6px 10px}
.client-owner-results{position:absolute;z-index:50;left:0;right:0;top:100%;display:grid;gap:6px;max-height:280px;overflow:auto;padding:8px;border:1px solid var(--admin-border,rgba(148,163,184,.32));border-radius:16px;background:var(--admin-card,#fff);box-shadow:0 18px 40px rgba(15,23,42,.16)}
.client-owner-results button{display:flex;align-items:center;gap:10px;width:100%;border:1px solid var(--admin-border,rgba(148,163,184,.24));border-radius:14px;background:rgba(255,255,255,.76);padding:8px 10px;text-align:left;color:inherit}
.client-owner-results button:hover{border-color:var(--admin-accent,#f58220);transform:translateY(-1px)}
.client-owner-results button > span:not(.client-owner-avatar){display:grid;gap:1px;min-width:0}
.client-owner-results small{color:var(--admin-muted,#64748b)}

/* v233 client bulk ownership polish */
.client-bulk-owner-field{grid-column:span 2;min-width:260px;align-self:stretch}
.client-bulk-owner-field .client-owner-picker > label{font-size:.8rem;gap:4px}
.client-bulk-owner-field .client-owner-selected{background:rgba(255,255,255,.64)}
@media(max-width:1100px){.client-bulk-owner-field{grid-column:1/-1}}
@media(max-width:760px){.client-bulk-owner-field{min-width:0}}

.user-row.removed-sync{opacity:.88;border-color:rgba(245,158,11,.35)}

/* v241 dynamic admin search target highlight */
.admin-search-hit {
  outline: 3px solid rgba(245, 130, 32, .55);
  box-shadow: 0 0 0 6px rgba(245, 130, 32, .14), var(--shadow);
  transition: outline-color .2s ease, box-shadow .2s ease;
}

/* v242 sticky admin search and profile client edit repair */
@media (min-width: 901px){
  .admin-side{padding-top:92px;}
  .admin-brand{margin-top:0;}
  .admin-search{
    position:fixed;
    top:14px;
    left:18px;
    width:284px;
    z-index:1200;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    box-shadow:0 18px 42px rgba(0,0,0,.22);
  }
  .admin-search-results{max-height:calc(100vh - 94px);overflow:auto;}
}
@media (max-width: 900px){
  .admin-side{padding-top:18px;}
  .admin-search{position:relative;top:auto;left:auto;width:auto;z-index:10;}
}


/* v243 admin search placement refinement */
@media (min-width: 901px){
  .admin-side{padding-top:18px;}
  .admin-brand{position:relative;top:auto;margin-top:0;margin-bottom:4px;}
  .admin-search{
    position:sticky;
    top:0;
    left:auto;
    width:auto;
    z-index:40;
    margin:0 0 10px 0;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    box-shadow:0 14px 34px rgba(0,0,0,.18);
  }
  .admin-search-results{max-height:calc(100vh - 180px);overflow:auto;}
}

.image-variable-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.image-variable-field{
  display:grid;
  gap:8px;
  padding:12px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:var(--panel-soft);
}
.image-variable-field>span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.image-variable-control{
  display:grid;
  grid-template-columns:minmax(260px,1fr) 132px;
  align-items:center;
  gap:12px;
}
.image-variable-preview{
  display:grid;
  gap:5px;
  justify-items:center;
  min-width:0;
}
.image-variable-preview img,.image-variable-preview span{
  width:124px;
  height:74px;
  object-fit:contain;
  border:1px solid rgba(15,23,42,.12);
  border-radius:12px;
  background:#eef3f7;
}
.image-variable-preview span{
  display:grid;
  place-items:center;
  color:var(--muted);
  font-size:.8rem;
}
.image-variable-preview.missing img{display:none}
.image-variable-preview.missing::before{
  content:'No preview';
  display:grid;
  place-items:center;
  width:124px;
  height:74px;
  border:1px dashed rgba(15,23,42,.18);
  border-radius:12px;
  color:var(--muted);
  background:#f8fafc;
  font-size:.8rem;
}
.image-variable-preview small{
  max-width:124px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
}
@media (max-width:720px){
  .image-variable-control{grid-template-columns:1fr}
  .image-variable-preview{justify-items:start}
}

/* v254 visual image picker for Website Studio variables */
.image-picker-wrap{
  position:relative;
  min-width:0;
}
.image-picker-button{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:12px;
  background:#fff;
  color:var(--text);
  font-weight:800;
  text-align:left;
  box-shadow:0 8px 22px rgba(15,23,42,.05);
}
.image-picker-button-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.image-picker-caret{
  color:var(--muted);
  flex:0 0 auto;
}
.image-picker-menu{
  position:absolute;
  z-index:80;
  top:calc(100% + 8px);
  left:0;
  right:0;
  max-height:420px;
  overflow:auto;
  padding:10px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:16px;
  background:#fff;
  box-shadow:0 22px 60px rgba(15,23,42,.24);
}
.image-picker-help{
  margin:0 0 8px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:700;
}
.image-picker-option{
  width:100%;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:10px;
  row-gap:2px;
  align-items:center;
  margin:0 0 8px;
  padding:8px;
  border:1px solid rgba(15,23,42,.1);
  border-radius:14px;
  background:#f8fafc;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.image-picker-option:hover,
.image-picker-option:focus-visible{
  border-color:rgba(249,115,22,.55);
  background:#fff7ed;
  outline:none;
}
.image-picker-option.selected{
  border-color:rgba(249,115,22,.75);
  background:#fff7ed;
  box-shadow:0 0 0 2px rgba(249,115,22,.12) inset;
}
.image-picker-thumb{
  grid-row:1 / span 2;
  display:grid;
  place-items:center;
  width:92px;
  height:58px;
  border:1px solid rgba(15,23,42,.12);
  border-radius:12px;
  background:#eaf0f5;
  overflow:hidden;
}
.image-picker-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.image-picker-option.missing .image-picker-thumb img{display:none}
.image-picker-option.missing .image-picker-thumb::before{
  content:'No preview';
  color:var(--muted);
  font-size:.72rem;
  text-align:center;
}
.image-picker-none{
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
}
.image-picker-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:900;
}
.image-picker-option small{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
  font-size:.75rem;
}
@media (max-width:720px){
  .image-picker-menu{position:static;margin-top:8px;max-height:340px;}
  .image-picker-option{grid-template-columns:78px minmax(0,1fr);}
  .image-picker-thumb{width:78px;height:52px;}
}


/* v255 admin contrast guard: admin controls stay readable regardless of selected public theme. */
.admin-shell{
  --admin-bg:#f4f7fb;
  --admin-panel:#ffffff;
  --admin-panel-soft:#f8fafc;
  --admin-text:#0f172a;
  --admin-heading:#102033;
  --admin-muted:#475569;
  --admin-subtle:#64748b;
  --admin-border:#cbd5e1;
  --admin-border-soft:#e2e8f0;
  --admin-accent:#f58220;
  --admin-accent-dark:#9a3412;
}
.admin-main,.admin-view{color:var(--admin-text)}
.admin-view,.admin-view p,.admin-view li,.admin-view td,.admin-view th,.admin-view span{color:inherit}
.page-head h1,.panel-head h1,.panel-head h2,.panel-head h3,.admin-view h1,.admin-view h2,.admin-view h3,.admin-view h4,.metric strong,.record-row strong,.action-card strong,.builder-jump-card>strong,.visual-builder-nav strong,details.clean-builder-item>summary strong,.clean-builder-item>summary strong{color:var(--admin-heading)!important}
.page-head p,.panel-head p,.admin-view .muted,.metric span,.record-row span,.record-row small,.action-card span,.visual-builder-nav span,details.clean-builder-item>summary span,.clean-builder-item>summary span,.brand-list span,.records span,.check-list span{color:var(--admin-muted)!important}
.editor-pane,.panel,.metric,.record-row,.action-card,.clean-section,.clean-builder-item,details.clean-builder-item,.visual-builder-nav,.compact-builder-nav,.visual-surface,.module-card-row,.image-picker,.media-tile,.brand-list li,.records li,.check-list li,.settings-layout,.editor-form,.admin-directory-panel,.admin-directory-card,.customer-directory-card{
  color:var(--admin-text);
}
.admin-view label,.editor-form label,.settings-layout label,.clean-builder-form label,.compact-client-form label{color:#334155!important}
.admin-view input:not([type="checkbox"]):not([type="radio"]),
.admin-view select,
.admin-view textarea,
.admin-search-results input:not([type="checkbox"]):not([type="radio"]){
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:var(--admin-border)!important;
  caret-color:#0f172a;
}
.admin-view input::placeholder,
.admin-view textarea::placeholder{color:#64748b!important;opacity:1!important}
.admin-view select option{background:#ffffff;color:#0f172a}
.admin-view input:disabled,
.admin-view select:disabled,
.admin-view textarea:disabled{background:#f1f5f9!important;color:#475569!important;opacity:1!important}
.admin-view button:not(.primary):not(.danger),
.admin-view .btn:not(.primary):not(.danger){background:#ffffff;color:#0f172a;border-color:var(--admin-border)}
.admin-view button:not(.primary):not(.danger):hover,
.admin-view .btn:not(.primary):not(.danger):hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}
.admin-view button.primary,.admin-view .btn.primary{color:#ffffff!important;background:linear-gradient(135deg,var(--admin-accent),#ffad4f)!important;border-color:transparent!important}
.page-builder-tabs.compact button,.builder-mode-tabs button,.visual-builder-nav .builder-mode-tabs button{background:#ffffff!important;color:#0f172a!important;border-color:var(--admin-border)!important}
.page-builder-tabs.compact button.active,.page-builder-tabs.compact button:hover,.builder-mode-tabs button.active,.builder-mode-tabs button:hover,.visual-builder-nav .builder-mode-tabs button.active,.visual-builder-nav .builder-mode-tabs button:hover{background:#fff7ed!important;color:#9a3412!important;border-color:#fb923c!important}
.image-choice-list,.admin-search-results{background:#ffffff;color:#0f172a;border-color:var(--admin-border)}
.image-choice-list button{background:#ffffff!important;color:#0f172a!important;border-color:var(--admin-border-soft)!important}
.image-choice-list button span{color:#0f172a!important}
.image-choice-list button.selected{background:#fff7ed!important;border-color:#fb923c!important}
.clean-builder-form .visual-surface,.visual-editor .visual-surface,.site-preview{background:#ffffff!important;color:#0f172a!important}
.clean-builder-form .visual-surface p,.visual-editor .visual-surface p,.site-preview p,.site-preview li{color:#334155!important}
.clean-builder-form .visual-surface h1,.clean-builder-form .visual-surface h2,.clean-builder-form .visual-surface h3,.visual-editor .visual-surface h1,.visual-editor .visual-surface h2,.visual-editor .visual-surface h3,.site-preview h1,.site-preview h2,.site-preview h3{color:#0f172a!important}
.admin-public-frame,.module-live-preview{color:#f8fafc!important}
.admin-public-frame p,.admin-public-frame li,.module-live-preview p{color:#d9e7f3!important}
.admin-public-frame h1,.admin-public-frame h2,.admin-public-frame h3,.module-live-preview h3{color:#ffffff!important}
.admin-side .btn.ghost{background:rgba(255,255,255,.06)!important;color:#ffffff!important;border-color:rgba(255,255,255,.16)!important}
.admin-side .btn.ghost:hover{background:rgba(255,255,255,.12)!important;color:#ffffff!important}

/* v256 Wix-style visual builder polish */
.visual-builder-with-preview{
  grid-template-columns:minmax(0,1fr) minmax(420px,.48fr);
  align-items:start;
}
.visual-builder-with-preview>.visual-builder-nav{
  grid-column:1 / -1;
}
.visual-live-preview-panel{
  position:sticky;
  top:86px;
  grid-column:2;
  grid-row:2 / span 4;
  padding:0!important;
  overflow:hidden;
  background:#ffffff!important;
  border:1px solid rgba(148,163,184,.35)!important;
  box-shadow:0 22px 60px rgba(15,23,42,.16)!important;
}
.visual-builder-with-preview>#home-modules,
.visual-builder-with-preview>#pages-builder,
.visual-builder-with-preview>#services-builder,
.visual-builder-with-preview>#faq-builder{
  grid-column:1;
}
.visual-preview-topbar{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  padding:18px;
  border-bottom:1px solid rgba(148,163,184,.25);
  background:linear-gradient(180deg,#ffffff,#f8fafc)!important;
}
.visual-preview-topbar .eyebrow{
  display:inline-flex;
  margin-bottom:6px;
  color:#9a3412!important;
  border:1px solid #fed7aa;
  background:#fff7ed;
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.visual-preview-topbar h2{
  margin:0;
  font-size:18px;
  line-height:1.2;
  color:#0f172a!important;
}
.visual-preview-topbar p{
  margin:6px 0 0;
  color:#475569!important;
  line-height:1.45;
}
.visual-preview-controls{
  display:grid;
  gap:10px;
}
.visual-preview-controls select,
.visual-preview-controls button,
.visual-preview-controls .btn{
  min-height:38px;
}
.preview-device-tabs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  padding:4px;
  border:1px solid rgba(148,163,184,.35);
  border-radius:14px;
  background:#f8fafc;
}
.preview-device-tabs button{
  border:0!important;
  background:transparent!important;
  color:#334155!important;
  border-radius:10px!important;
  font-weight:850;
  padding:8px 9px!important;
}
.preview-device-tabs button.active{
  background:#0f172a!important;
  color:#ffffff!important;
}
.visual-preview-stage{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  min-height:620px;
  padding:14px;
  background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 12px,#e2e8f0 12px,#e2e8f0 24px)!important;
  overflow:auto;
}
.visual-preview-stage iframe{
  width:100%;
  height:600px;
  border:1px solid rgba(15,23,42,.22);
  border-radius:18px;
  background:#fff;
  box-shadow:0 20px 55px rgba(15,23,42,.20);
}
.visual-preview-stage.tablet iframe{max-width:820px;width:82%;}
.visual-preview-stage.mobile iframe{max-width:390px;width:390px;height:700px;border-radius:28px;}
.visual-preview-hint{
  margin:0;
  padding:12px 16px 16px;
  color:#475569!important;
  background:#fff!important;
  border-top:1px solid rgba(148,163,184,.25);
}
.clean-builder-item>summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(90px,max-content);
  gap:8px 12px;
  align-items:center;
}
.clean-builder-item>summary strong,
.clean-builder-item>summary span{grid-column:1;}
.clean-builder-item>summary .mini-preview-btn{
  grid-column:2;
  grid-row:1 / span 2;
  justify-self:end;
  min-height:34px;
  padding:7px 11px!important;
  border-radius:999px!important;
  color:#0f172a!important;
  background:#fff7ed!important;
  border:1px solid #fdba74!important;
  font-weight:900;
}
.clean-builder-item>summary .mini-preview-btn:hover{
  color:#ffffff!important;
  background:#f97316!important;
  border-color:#f97316!important;
}
.visual-builder-with-preview .visual-editor,
.visual-builder-with-preview .visual-surface{
  border-radius:18px!important;
}
.visual-builder-with-preview .visual-surface{
  min-height:260px;
  background:#ffffff!important;
  color:#111827!important;
  border:1px solid rgba(148,163,184,.35)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.visual-builder-with-preview .visual-surface:focus{
  outline:3px solid rgba(249,115,22,.22);
  border-color:#fb923c!important;
}
.visual-builder-with-preview .image-picker summary,
.visual-builder-with-preview .image-picker-button{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:rgba(148,163,184,.45)!important;
}
.visual-builder-with-preview .image-choice-list,
.visual-builder-with-preview .image-picker-menu{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:rgba(148,163,184,.45)!important;
  box-shadow:0 20px 55px rgba(15,23,42,.18)!important;
}
.visual-builder-with-preview .image-choice-list button,
.visual-builder-with-preview .image-picker-option{
  color:#0f172a!important;
  background:#ffffff!important;
}
.visual-builder-with-preview .image-choice-list button:hover,
.visual-builder-with-preview .image-choice-list button.selected,
.visual-builder-with-preview .image-picker-option:hover,
.visual-builder-with-preview .image-picker-option.selected{
  background:#fff7ed!important;
  color:#9a3412!important;
}
@media(max-width:1380px){
  .visual-builder-with-preview{grid-template-columns:1fr;}
  .visual-live-preview-panel,
  .visual-builder-with-preview>#home-modules,
  .visual-builder-with-preview>#pages-builder,
  .visual-builder-with-preview>#services-builder,
  .visual-builder-with-preview>#faq-builder{grid-column:1;}
  .visual-live-preview-panel{position:relative;top:auto;grid-row:auto;}
}
@media(max-width:720px){
  .clean-builder-item>summary{grid-template-columns:1fr;}
  .clean-builder-item>summary .mini-preview-btn{grid-column:1;grid-row:auto;justify-self:start;}
  .visual-preview-stage.mobile iframe{width:100%;}
}

/* v257: inline same-window visual builder */
.inline-visual-preview-panel{
  background:linear-gradient(135deg,#f8fafc,#eef4fb)!important;
  border:1px solid #d7e2ee!important;
  color:#0f172a!important;
}
.inline-visual-preview-panel .visual-preview-topbar h2,
.inline-visual-preview-panel .visual-preview-topbar p{color:#0f172a!important}
.inline-stage{
  min-height:520px;
  background:#dbe5ef!important;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  overflow:auto;
  padding:18px!important;
}
.inline-stage.tablet .inline-visual-browser{max-width:820px;width:82%}
.inline-stage.mobile .inline-visual-browser{max-width:390px;width:390px}
.inline-visual-browser{
  width:100%;
  max-width:1180px;
  min-height:520px;
  border-radius:26px;
  overflow:hidden;
  background:#06111d;
  color:#f8fafc;
  border:1px solid rgba(15,23,42,.18);
  box-shadow:0 28px 90px rgba(15,23,42,.24);
}
.inline-visual-address{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 16px;
  background:#f8fafc;
  color:#334155;
  border-bottom:1px solid #d7e2ee;
}
.inline-visual-address .dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;display:inline-block}
.inline-visual-address strong{margin-left:8px;font-size:12px;font-weight:800;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inline-visual-page{padding:24px;background:radial-gradient(circle at top left,rgba(255,138,28,.18),transparent 32%),linear-gradient(135deg,#071522,#0d2235);min-height:500px}
.inline-visual-section{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(260px,.65fr);
  gap:24px;
  padding:34px;
  margin:0 0 18px;
  border-radius:28px;
  border:1px solid rgba(148,163,184,.24);
  background:rgba(7,18,31,.86);
  color:#f8fafc;
  box-shadow:0 18px 55px rgba(0,0,0,.22);
}
.inline-visual-section.hero{min-height:390px;align-items:center;background:linear-gradient(135deg,rgba(7,20,34,.96),rgba(10,38,58,.9))}
.inline-visual-section.page{grid-template-columns:1fr}
.inline-visual-section-tools{
  position:absolute;
  top:14px;
  right:14px;
  display:flex;
  gap:8px;
  align-items:center;
  z-index:3;
}
.inline-visual-section-tools span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:999px;
  padding:5px 9px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);
  color:#dbeafe;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.inline-visual-section-tools button,
.inline-visual-mini-card,
.inline-visual-image-picker{cursor:pointer}
.inline-visual-section-tools button{
  border:1px solid rgba(255,138,28,.45);
  background:rgba(255,138,28,.16);
  color:#fed7aa;
  border-radius:999px;
  padding:6px 10px;
  font-weight:900;
}
.inline-eyebrow{margin:0 0 12px;color:#ffbd79!important;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900}
.inline-eyebrow.muted{color:#94a3b8!important;text-transform:none;letter-spacing:0}
.inline-visual-copy h1{margin:0 0 14px;color:#fff!important;font-size:clamp(30px,4vw,58px);line-height:1.04;font-weight:950}
.inline-visual-text{margin:0;color:#d9e7f3!important;font-size:17px;line-height:1.68;max-width:760px}
.inline-visual-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.inline-pill{display:inline-flex;border-radius:999px;background:#ff8a1c;color:#07111d!important;padding:10px 15px;font-weight:900}
.inline-pill.secondary{background:rgba(255,255,255,.08);color:#f8fafc!important;border:1px solid rgba(255,255,255,.18)}
[contenteditable][data-inline-edit-target]{outline:2px dashed transparent;outline-offset:5px;border-radius:8px;transition:outline-color .15s ease,background .15s ease}
[contenteditable][data-inline-edit-target]:hover{outline-color:rgba(255,138,28,.55);background:rgba(255,138,28,.08)}
[contenteditable][data-inline-edit-target]:focus{outline-color:#ff8a1c;background:rgba(255,138,28,.14)}
.inline-visual-media{display:flex;align-items:center;justify-content:center}
.inline-visual-image-picker{
  width:100%;
  border:1px dashed rgba(255,138,28,.55);
  border-radius:22px;
  background:rgba(255,255,255,.06);
  color:#f8fafc;
  padding:12px;
  display:grid;
  gap:10px;
  text-align:center;
  font-weight:900;
}
.inline-visual-image-picker:hover{background:rgba(255,138,28,.12);border-color:#ff8a1c}
.inline-visual-image{width:100%;height:230px;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:#07111d;color:#cbd5e1;display:grid;place-items:center}
.inline-visual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.inline-visual-mini-card{
  text-align:left;
  border:1px solid rgba(148,163,184,.24);
  border-radius:20px;
  padding:18px;
  background:rgba(255,255,255,.06);
  color:#f8fafc;
  min-height:160px;
}
.inline-visual-mini-card:hover{border-color:rgba(255,138,28,.62);background:rgba(255,138,28,.11)}
.inline-visual-mini-card span{display:block;color:#ffbd79;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;margin-bottom:10px}
.inline-visual-mini-card strong{display:block;color:#fff;font-size:20px;margin-bottom:8px}
.inline-visual-mini-card p{color:#d9e7f3!important;line-height:1.55;margin:0}
.inline-page-body{color:#e2e8f0;line-height:1.7}.inline-page-body h2,.inline-page-body h3{color:#fff}.inline-page-body p,.inline-page-body li{color:#d9e7f3!important}
.builder-focus-pulse{animation:builderFocusPulse 1.2s ease both}
@keyframes builderFocusPulse{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 4px rgba(255,138,28,.32),0 18px 45px rgba(15,23,42,.16)}}
@media(max-width:980px){.inline-visual-section{grid-template-columns:1fr;padding:26px 18px}.inline-stage{padding:10px!important}.inline-visual-page{padding:14px}.inline-visual-section-tools{position:static;margin-bottom:12px}.inline-visual-copy h1{font-size:32px}}


/* v258: inverted visual builder, preview-first workspace */
.visual-builder-inverted{
  display:grid!important;
  grid-template-columns:minmax(720px,1fr) minmax(292px,360px)!important;
  grid-template-areas:"preview rail"!important;
  gap:18px!important;
  align-items:start!important;
}
.visual-builder-inverted>.visual-live-preview-panel{
  grid-area:preview!important;
  grid-column:auto!important;
  grid-row:auto!important;
  position:relative!important;
  top:auto!important;
  min-width:0!important;
}
.visual-builder-inverted>.builder-control-rail{
  grid-area:rail!important;
  min-width:0!important;
  position:sticky!important;
  top:74px!important;
  max-height:calc(100vh - 92px)!important;
  overflow:auto!important;
  display:grid!important;
  gap:12px!important;
  padding:0 2px 10px!important;
  scrollbar-width:thin;
}
.visual-builder-inverted .builder-control-nav,
.visual-builder-inverted .builder-control-rail>.panel{
  position:relative!important;
  top:auto!important;
  border-radius:16px!important;
  padding:12px!important;
  box-shadow:0 10px 28px rgba(15,23,42,.08)!important;
}
.visual-builder-inverted .builder-control-nav{
  z-index:2!important;
}
.visual-builder-inverted .visual-builder-nav{
  align-items:stretch!important;
  flex-direction:column!important;
  gap:8px!important;
}
.visual-builder-inverted .visual-builder-nav strong{font-size:.95rem!important}
.visual-builder-inverted .visual-builder-nav span{font-size:.78rem!important;line-height:1.35!important}
.visual-builder-inverted .visual-builder-nav .builder-mode-tabs{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
  margin-top:6px!important;
}
.visual-builder-inverted .visual-builder-nav .builder-mode-tabs button{
  min-width:0!important;
  padding:8px 9px!important;
  font-size:12px!important;
}
.visual-builder-inverted .visual-preview-topbar{
  grid-template-columns:minmax(0,1fr) minmax(360px,auto)!important;
  align-items:start!important;
  gap:14px!important;
  padding:14px 16px!important;
}
.visual-builder-inverted .visual-preview-topbar h2{font-size:20px!important}
.visual-builder-inverted .visual-preview-topbar p{font-size:13px!important;max-width:740px!important}
.visual-builder-inverted .visual-preview-controls{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) auto auto!important;
  align-items:center!important;
  gap:8px!important;
}
.visual-builder-inverted .preview-device-tabs{
  min-width:240px!important;
}
.visual-builder-inverted .visual-preview-stage{
  min-height:calc(100vh - 250px)!important;
  padding:18px!important;
}
.visual-builder-inverted .inline-visual-browser{
  max-width:1480px!important;
  min-height:calc(100vh - 290px)!important;
}
.visual-builder-inverted .inline-visual-page{
  min-height:calc(100vh - 345px)!important;
}
.visual-builder-inverted .inline-visual-section.hero{
  min-height:520px!important;
}
.visual-builder-inverted .builder-control-rail .panel-head{
  gap:4px!important;
  margin-bottom:8px!important;
}
.visual-builder-inverted .builder-control-rail .panel-head h2{
  font-size:16px!important;
  margin:0!important;
}
.visual-builder-inverted .builder-control-rail .panel-head p,
.visual-builder-inverted .builder-control-rail .compact-help{
  font-size:12px!important;
  line-height:1.35!important;
}
.visual-builder-inverted .builder-control-rail details.clean-builder-item>summary,
.visual-builder-inverted .builder-control-rail details.module-editor>summary{
  padding:10px 11px!important;
  border-radius:14px!important;
}
.visual-builder-inverted .builder-control-rail details.clean-builder-item>summary strong,
.visual-builder-inverted .builder-control-rail details.module-editor>summary strong{
  font-size:13px!important;
}
.visual-builder-inverted .builder-control-rail details.clean-builder-item>summary span,
.visual-builder-inverted .builder-control-rail details.module-editor>summary span{
  font-size:11px!important;
}
.visual-builder-inverted .builder-control-rail .clean-builder-form,
.visual-builder-inverted .builder-control-rail .compact-content-form{
  padding:10px!important;
}
.visual-builder-inverted .builder-control-rail .builder-form-grid{
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.visual-builder-inverted .builder-control-rail input,
.visual-builder-inverted .builder-control-rail select,
.visual-builder-inverted .builder-control-rail textarea{
  font-size:13px!important;
}
.visual-builder-inverted .builder-control-rail .mini-preview-btn{
  font-size:11px!important;
  padding:6px 8px!important;
}
.visual-builder-inverted .builder-control-rail .visual-surface{
  min-height:180px!important;
}
.visual-builder-inverted .builder-control-rail .global-save{
  position:sticky!important;
  bottom:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),#ffffff)!important;
  border-top:1px solid rgba(148,163,184,.25)!important;
  padding-top:10px!important;
}
@media(max-width:1280px){
  .visual-builder-inverted{
    grid-template-columns:1fr!important;
    grid-template-areas:"preview" "rail"!important;
  }
  .visual-builder-inverted>.builder-control-rail{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .visual-builder-inverted .visual-preview-topbar,
  .visual-builder-inverted .visual-preview-controls{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  .visual-builder-inverted .visual-preview-stage{min-height:620px!important;padding:10px!important}
  .visual-builder-inverted .inline-stage.mobile .inline-visual-browser{width:100%!important;max-width:100%!important}
}

/* v259: canvas-first polish for the visual builder */
.visual-builder-inverted.is-rail-minimized{
  grid-template-columns:minmax(760px,1fr) 82px!important;
}
.visual-builder-inverted.is-rail-open{
  grid-template-columns:minmax(720px,1fr) minmax(320px,390px)!important;
}
.builder-canvas-panel{
  overflow:hidden!important;
}
.canvas-topbar{
  border-bottom:1px solid rgba(148,163,184,.24)!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
}
.canvas-title-block h2{
  font-size:22px!important;
  letter-spacing:-.03em!important;
}
.canvas-controls{
  grid-template-columns:minmax(190px,1fr) auto auto auto auto!important;
}
.canvas-controls button,
.canvas-controls .btn,
.canvas-controls select{
  min-height:38px!important;
}
.canvas-quick-nav{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px 14px;
  background:#f8fafc;
  border-bottom:1px solid rgba(148,163,184,.22);
}
.canvas-quick-nav strong{
  color:#334155;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.canvas-quick-nav button{
  border:1px solid #d7e2ee;
  background:#ffffff;
  color:#0f172a;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:850;
  box-shadow:0 6px 14px rgba(15,23,42,.05);
}
.canvas-quick-nav button:hover{
  border-color:#ff8a1c;
  background:#fff7ed;
}
.visual-builder-inverted .inline-stage{
  padding:12px!important;
  background:linear-gradient(135deg,#d9e5f0,#eef4fb)!important;
}
.visual-builder-inverted .inline-visual-browser{
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
.visual-builder-inverted .inline-visual-address{
  min-height:42px!important;
}
.visual-builder-inverted .inline-visual-section{
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease;
}
.visual-builder-inverted .inline-visual-section:hover,
.visual-builder-inverted .inline-visual-mini-card:hover{
  transform:translateY(-1px);
  box-shadow:0 22px 64px rgba(0,0,0,.28),0 0 0 2px rgba(255,138,28,.18);
}
.inline-selected-editable{
  outline:3px solid rgba(255,138,28,.85)!important;
  outline-offset:5px!important;
  box-shadow:0 0 0 7px rgba(255,138,28,.16)!important;
}
.inline-visual-section.inline-selected-editable,
.inline-visual-mini-card.inline-selected-editable{
  border-color:rgba(255,138,28,.82)!important;
}
[contenteditable][data-inline-edit-target]::selection{
  background:rgba(255,138,28,.45);
  color:#fff;
}
.inline-visual-image-picker span::after{
  content:' - click to swap';
  color:#ffbd79;
  font-weight:700;
}
.canvas-floating-bar{
  position:sticky;
  bottom:0;
  z-index:8;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 14px;
  background:rgba(248,250,252,.94);
  border-top:1px solid rgba(148,163,184,.28);
  backdrop-filter:blur(12px);
  color:#0f172a;
}
.canvas-floating-bar span{
  font-size:13px;
  font-weight:800;
  color:#334155;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.canvas-floating-bar button{
  min-height:36px;
  white-space:nowrap;
}
#builderCanvasSave.has-unsaved{
  box-shadow:0 0 0 4px rgba(255,138,28,.22)!important;
}
.visual-builder-inverted.is-rail-minimized>.builder-control-rail{
  overflow:hidden!important;
  max-height:calc(100vh - 92px)!important;
  padding:0!important;
  border-radius:18px!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail .panel,
.visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-control-nav{
  padding:8px!important;
  overflow:hidden!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-control-nav>div:first-child strong{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  display:block;
  margin:auto;
  color:#0f172a!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-control-nav>div:first-child span,
.visual-builder-inverted.is-rail-minimized .builder-control-rail .panel-head p,
.visual-builder-inverted.is-rail-minimized .builder-control-rail .compact-help,
.visual-builder-inverted.is-rail-minimized .builder-control-rail .clean-builder-form,
.visual-builder-inverted.is-rail-minimized .builder-control-rail form,
.visual-builder-inverted.is-rail-minimized .builder-control-rail details,
.visual-builder-inverted.is-rail-minimized .builder-control-rail .panel-head h2{
  display:none!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-mode-tabs{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-mode-tabs button{
  min-width:0!important;
  padding:8px 4px!important;
  font-size:10px!important;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  min-height:70px!important;
}
.visual-builder-inverted.is-rail-minimized .builder-control-rail>.panel{
  min-height:38px!important;
}
.visual-builder-inverted.is-rail-open>.builder-control-rail{
  box-shadow:0 20px 60px rgba(15,23,42,.16)!important;
}
.builder-control-rail details[open]{
  border-color:rgba(255,138,28,.45)!important;
}
@media(max-width:1380px){
  .visual-builder-inverted.is-rail-minimized,
  .visual-builder-inverted.is-rail-open{
    grid-template-columns:1fr!important;
    grid-template-areas:"preview" "rail"!important;
  }
  .visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-control-nav>div:first-child strong,
  .visual-builder-inverted.is-rail-minimized .builder-control-rail .builder-mode-tabs button{
    writing-mode:horizontal-tb;
    transform:none;
    min-height:auto!important;
  }
  .visual-builder-inverted.is-rail-minimized .builder-control-rail .panel-head h2,
  .visual-builder-inverted.is-rail-minimized .builder-control-rail details,
  .visual-builder-inverted.is-rail-minimized .builder-control-rail form{
    display:block!important;
  }
  .visual-builder-inverted.is-rail-minimized .builder-control-rail .clean-builder-form{
    display:block!important;
  }
}
@media(max-width:860px){
  .canvas-controls{grid-template-columns:1fr!important}
  .canvas-floating-bar{align-items:stretch;flex-direction:column}
  .canvas-floating-bar span{white-space:normal}
  .canvas-quick-nav{overflow:auto;flex-wrap:nowrap}
  .canvas-quick-nav button{white-space:nowrap}
}


/* v260: realistic responsive device preview behavior for the inline visual builder */
.visual-builder-inverted .inline-stage.desktop{
  align-items:flex-start!important;
}
.visual-builder-inverted .inline-stage.tablet{
  align-items:flex-start!important;
  padding:18px!important;
}
.visual-builder-inverted .inline-stage.mobile{
  align-items:flex-start!important;
  padding:18px 10px!important;
  overflow:auto!important;
}
.inline-visual-address em{
  margin-left:auto;
  font-style:normal;
  font-size:11px;
  line-height:1;
  border-radius:999px;
  padding:5px 8px;
  background:#e2e8f0;
  color:#334155;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.inline-stage.tablet .inline-visual-browser{
  width:min(820px,100%)!important;
  max-width:820px!important;
}
.inline-stage.tablet .inline-visual-page{
  padding:18px!important;
}
.inline-stage.tablet .inline-visual-section{
  grid-template-columns:minmax(0,1fr) minmax(220px,.58fr)!important;
  gap:18px!important;
  padding:28px!important;
  border-radius:24px!important;
}
.inline-stage.tablet .inline-visual-section.hero{
  min-height:420px!important;
}
.inline-stage.tablet .inline-visual-copy h1{
  font-size:clamp(30px,5vw,44px)!important;
}
.inline-stage.tablet .inline-visual-text{
  font-size:16px!important;
  line-height:1.58!important;
}
.inline-stage.tablet .inline-visual-image{
  height:205px!important;
}
.inline-stage.tablet .inline-visual-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.inline-stage.mobile .inline-visual-browser{
  width:min(390px,100%)!important;
  max-width:390px!important;
  min-width:0!important;
  min-height:720px!important;
  border-radius:30px!important;
}
.inline-stage.mobile .inline-visual-address{
  min-height:44px!important;
  padding:10px 12px!important;
  gap:6px!important;
}
.inline-stage.mobile .inline-visual-address .dot{
  width:8px!important;
  height:8px!important;
}
.inline-stage.mobile .inline-visual-address strong{
  max-width:170px!important;
  font-size:11px!important;
}
.inline-stage.mobile .inline-visual-address em{
  font-size:10px!important;
  padding:4px 7px!important;
}
.inline-stage.mobile .inline-visual-page{
  padding:12px!important;
  min-height:675px!important;
}
.inline-stage.mobile .inline-visual-section{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  padding:18px 14px!important;
  margin-bottom:14px!important;
  border-radius:22px!important;
}
.inline-stage.mobile .inline-visual-section.hero{
  min-height:auto!important;
  align-items:stretch!important;
}
.inline-stage.mobile .inline-visual-section-tools{
  position:static!important;
  order:-2!important;
  justify-content:space-between!important;
  width:100%!important;
  margin:0 0 6px!important;
}
.inline-stage.mobile .inline-visual-section-tools span,
.inline-stage.mobile .inline-visual-section-tools button{
  font-size:10px!important;
  min-height:26px!important;
  padding:5px 8px!important;
}
.inline-stage.mobile .inline-eyebrow{
  font-size:10px!important;
  letter-spacing:.1em!important;
  margin-bottom:8px!important;
}
.inline-stage.mobile .inline-visual-copy h1{
  font-size:28px!important;
  line-height:1.08!important;
  margin-bottom:10px!important;
}
.inline-stage.mobile .inline-visual-text{
  font-size:15px!important;
  line-height:1.52!important;
  max-width:none!important;
}
.inline-stage.mobile .inline-visual-actions{
  gap:8px!important;
  margin-top:14px!important;
}
.inline-stage.mobile .inline-pill{
  width:100%!important;
  justify-content:center!important;
  padding:9px 12px!important;
  font-size:13px!important;
}
.inline-stage.mobile .inline-visual-media{
  order:-1!important;
  width:100%!important;
}
.inline-stage.mobile .inline-visual-image-picker{
  border-radius:18px!important;
  padding:10px!important;
  font-size:12px!important;
}
.inline-stage.mobile .inline-visual-image{
  height:165px!important;
  border-radius:14px!important;
}
.inline-stage.mobile .inline-visual-grid{
  grid-template-columns:1fr!important;
  gap:12px!important;
}
.inline-stage.mobile .inline-visual-mini-card{
  min-height:auto!important;
  padding:14px!important;
  border-radius:18px!important;
}
.inline-stage.mobile .inline-visual-mini-card strong{
  font-size:17px!important;
}
.inline-stage.mobile .inline-visual-mini-card p,
.inline-stage.mobile .inline-page-body,
.inline-stage.mobile .inline-page-body p,
.inline-stage.mobile .inline-page-body li{
  font-size:14px!important;
  line-height:1.5!important;
}
.inline-stage.mobile [contenteditable][data-inline-edit-target]{
  outline-offset:3px!important;
}
.visual-builder-inverted .inline-stage.mobile .inline-visual-section:hover,
.visual-builder-inverted .inline-stage.mobile .inline-visual-mini-card:hover{
  transform:none!important;
}
@media(max-width:760px){
  .visual-builder-inverted .inline-stage.tablet .inline-visual-browser,
  .visual-builder-inverted .inline-stage.mobile .inline-visual-browser{
    width:100%!important;
    max-width:100%!important;
  }
}

/* v261 sticky canvas save dock: keep save action visible at the bottom of the admin screen. */
.visual-builder-inverted .builder-canvas-panel{
  padding-bottom:92px;
}
.visual-builder-inverted .canvas-floating-bar{
  position:fixed!important;
  left:344px;
  right:24px;
  bottom:18px;
  z-index:10000;
  border:1px solid rgba(148,163,184,.35);
  border-radius:18px;
  box-shadow:0 18px 50px rgba(15,23,42,.18);
}
.visual-builder-inverted .canvas-floating-bar::before{
  content:'Canvas actions';
  color:#64748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.visual-builder-inverted .canvas-floating-bar #builderCanvasSave{
  min-width:180px;
  font-weight:900;
}
.visual-builder-inverted .canvas-floating-bar #builderCanvasSave.has-unsaved::after{
  content:'*';
  display:inline-block;
  margin-left:4px;
}
@media(max-width:1093px){
  .visual-builder-inverted .canvas-floating-bar{
    left:18px;
    right:18px;
    bottom:14px;
  }
}
@media(max-width:720px){
  .visual-builder-inverted .builder-canvas-panel{
    padding-bottom:150px;
  }
  .visual-builder-inverted .canvas-floating-bar{
    align-items:stretch;
    flex-direction:column;
    left:12px;
    right:12px;
    bottom:10px;
  }
  .visual-builder-inverted .canvas-floating-bar span{
    white-space:normal;
  }
  .visual-builder-inverted .canvas-floating-bar #builderCanvasSave{
    width:100%;
  }
}

/* v262: active template and theme rendering for the visual page builder canvas. */
.inline-visual-browser{
  --v-bg:#06111d;
  --v-bg2:#0d2235;
  --v-panel:rgba(7,18,31,.86);
  --v-panel2:rgba(255,255,255,.06);
  --v-text:#f8fafc;
  --v-muted:#d9e7f3;
  --v-brand:#ff8a1c;
  --v-brand2:#ffbd79;
  --v-accent:#38bdf8;
  --v-border:rgba(148,163,184,.24);
  --v-shadow:0 18px 55px rgba(0,0,0,.22);
}
.inline-visual-browser.theme-blue-silver{--v-bg:#07111f;--v-bg2:#101f35;--v-panel:rgba(13,27,47,.88);--v-panel2:rgba(203,213,225,.08);--v-text:#f4f8fb;--v-muted:#cbd5e1;--v-brand:#7dd3fc;--v-brand2:#cbd5e1;--v-accent:#2563eb;--v-border:rgba(185,200,216,.24)}
.inline-visual-browser.theme-forest{--v-bg:#03100c;--v-bg2:#0a1d16;--v-panel:rgba(11,31,24,.9);--v-panel2:rgba(240,179,95,.08);--v-text:#f4fbf7;--v-muted:#cfe4da;--v-brand:#f0b35f;--v-brand2:#c0843f;--v-accent:#2f9e75;--v-border:rgba(183,206,195,.24)}
.inline-visual-browser.theme-plum{--v-bg:#120719;--v-bg2:#20102f;--v-panel:rgba(27,16,39,.9);--v-panel2:rgba(245,199,107,.08);--v-text:#fbf7ff;--v-muted:#dfd0ea;--v-brand:#f5c76b;--v-brand2:#f59e0b;--v-accent:#a78bfa;--v-border:rgba(207,189,220,.28)}
.inline-visual-browser.theme-legal{--v-bg:#090d16;--v-bg2:#101827;--v-panel:rgba(16,24,39,.92);--v-panel2:rgba(214,168,93,.08);--v-text:#f8fafc;--v-muted:#d8c7aa;--v-brand:#d6a85d;--v-brand2:#f3d08a;--v-accent:#8b5e34;--v-border:rgba(214,168,93,.26)}
.inline-visual-browser.theme-healthcare,.inline-visual-browser.theme-professional,.inline-visual-browser.theme-nonprofit,.inline-visual-browser.theme-dental{
  --v-bg:#f8fafc;--v-bg2:#eef4fb;--v-panel:rgba(255,255,255,.94);--v-panel2:rgba(255,255,255,.78);--v-text:#0f172a;--v-muted:#475569;--v-border:rgba(15,23,42,.14);--v-shadow:0 18px 44px rgba(15,23,42,.12)
}
.inline-visual-browser.theme-healthcare{--v-brand:#0ea5a4;--v-brand2:#38bdf8;--v-accent:#0f766e}
.inline-visual-browser.theme-professional{--v-brand:#2563eb;--v-brand2:#64748b;--v-accent:#0f172a}
.inline-visual-browser.theme-nonprofit{--v-brand:#c2410c;--v-brand2:#f59e0b;--v-accent:#166534}
.inline-visual-browser.theme-dental{--v-brand:#0891b2;--v-brand2:#67e8f9;--v-accent:#0369a1}
.inline-visual-browser{background:var(--v-bg)!important;color:var(--v-text)!important;border-color:var(--v-border)!important}
.inline-visual-public-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:color-mix(in srgb,var(--v-panel) 88%,transparent);border-bottom:1px solid var(--v-border);color:var(--v-text)}
.inline-brand-mark{display:flex;align-items:center;gap:10px;min-width:0}.inline-brand-mark img{width:38px;height:38px;object-fit:contain}.inline-brand-mark span{width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--v-brand),var(--v-accent))}.inline-brand-mark strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--v-text)!important}.inline-template-badge{border:1px solid var(--v-border);background:var(--v-panel2);color:var(--v-muted);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.inline-visual-browser .inline-visual-page{background:radial-gradient(circle at top left,color-mix(in srgb,var(--v-brand) 18%,transparent),transparent 32%),linear-gradient(135deg,var(--v-bg),var(--v-bg2))!important;color:var(--v-text)!important}
.inline-visual-browser[style*="--visual-hero-image"] .inline-visual-page{background:linear-gradient(135deg,color-mix(in srgb,var(--v-bg) 82%,transparent),color-mix(in srgb,var(--v-bg2) 88%,transparent)),var(--visual-hero-image) center/cover no-repeat!important}
.inline-visual-browser .inline-visual-section{background:var(--v-panel)!important;color:var(--v-text)!important;border-color:var(--v-border)!important;box-shadow:var(--v-shadow)!important}
.inline-visual-browser .inline-visual-section.hero{background:linear-gradient(135deg,color-mix(in srgb,var(--v-panel) 94%,var(--v-brand) 6%),color-mix(in srgb,var(--v-panel) 90%,var(--v-accent) 10%))!important}
.inline-visual-browser .inline-eyebrow,.inline-visual-browser .inline-visual-mini-card span{color:var(--v-brand2)!important}.inline-visual-browser .inline-eyebrow.muted{color:var(--v-muted)!important}.inline-visual-browser .inline-visual-copy h1,.inline-visual-browser .inline-visual-mini-card strong,.inline-visual-browser .inline-page-body h2,.inline-visual-browser .inline-page-body h3{color:var(--v-text)!important}.inline-visual-browser .inline-visual-text,.inline-visual-browser .inline-visual-mini-card p,.inline-visual-browser .inline-page-body,.inline-visual-browser .inline-page-body p,.inline-visual-browser .inline-page-body li{color:var(--v-muted)!important}.inline-visual-browser .inline-pill{background:linear-gradient(135deg,var(--v-brand),var(--v-brand2))!important;color:#08111f!important}.inline-visual-browser.theme-healthcare .inline-pill,.inline-visual-browser.theme-professional .inline-pill,.inline-visual-browser.theme-nonprofit .inline-pill,.inline-visual-browser.theme-dental .inline-pill{color:#ffffff!important}.inline-visual-browser .inline-pill.secondary{background:var(--v-panel2)!important;color:var(--v-text)!important;border:1px solid var(--v-border)!important}.inline-visual-browser .inline-visual-image-picker{border-color:color-mix(in srgb,var(--v-brand) 70%,var(--v-border))!important;background:var(--v-panel2)!important;color:var(--v-text)!important}.inline-visual-browser .inline-visual-mini-card{background:var(--v-panel2)!important;color:var(--v-text)!important;border-color:var(--v-border)!important}.inline-visual-browser .inline-visual-section-tools span{background:var(--v-panel2)!important;border-color:var(--v-border)!important;color:var(--v-muted)!important}.inline-visual-browser .inline-visual-section-tools button{background:color-mix(in srgb,var(--v-brand) 16%,transparent)!important;border-color:color-mix(in srgb,var(--v-brand) 55%,var(--v-border))!important;color:var(--v-brand2)!important}
.inline-visual-browser.theme-healthcare .inline-visual-address,.inline-visual-browser.theme-professional .inline-visual-address,.inline-visual-browser.theme-nonprofit .inline-visual-address,.inline-visual-browser.theme-dental .inline-visual-address{background:#ffffff;color:#334155;border-color:#d7e2ee}.inline-visual-browser.theme-healthcare .inline-visual-address strong,.inline-visual-browser.theme-professional .inline-visual-address strong,.inline-visual-browser.theme-nonprofit .inline-visual-address strong,.inline-visual-browser.theme-dental .inline-visual-address strong{color:#0f172a!important}
.inline-stage.mobile .inline-visual-public-header{display:grid!important;gap:8px!important;padding:12px!important}.inline-stage.mobile .inline-template-badge{white-space:normal!important;line-height:1.25!important}.inline-stage.mobile .inline-brand-mark img,.inline-stage.mobile .inline-brand-mark span{width:32px;height:32px}.inline-stage.mobile .inline-brand-mark strong{font-size:13px!important}

/* v263: admin scheduling contrast guard. */
.admin-shell .portal-schedule-day,
.admin-shell .portal-shift,
.admin-shell .schedule-shift-card,
.admin-shell .schedule-day-head,
.admin-shell .schedule-team-picker,
.admin-shell .schedule-person-card,
.admin-shell .timeoff-review-card,
.admin-shell .mini-timeoff{
  color:var(--admin-text, var(--surface-text, #f8fafc))!important;
}
.admin-shell .portal-shift .shift-main strong,
.admin-shell .portal-shift .shift-main .shift-time,
.admin-shell .schedule-day-head h3,
.admin-shell .schedule-person-card strong,
.admin-shell .timeoff-review-summary strong{
  color:var(--admin-text, var(--surface-text, #f8fafc))!important;
}
.admin-shell .portal-shift .shift-main small,
.admin-shell .schedule-day-head span,
.admin-shell .schedule-person-card small,
.admin-shell .timeoff-review-card span,
.admin-shell .timeoff-review-card small{
  color:var(--admin-muted, var(--surface-muted, #cbd5e1))!important;
}


/* v265: admin portal contrast safety layer.
   The public theme can be dark or light, but the admin workspace must remain readable. */
.admin-shell{
  --admin-bg:#f4f7fb;
  --admin-panel:#ffffff;
  --admin-panel-soft:#f8fafc;
  --admin-card:#ffffff;
  --admin-text:#0f172a;
  --admin-heading:#102033;
  --admin-muted:#475569;
  --admin-subtle:#64748b;
  --admin-border:#cbd5e1;
  --admin-border-soft:#e2e8f0;
  --admin-warning-bg:#fff7ed;
  --admin-warning-border:#fdba74;
  --admin-danger-bg:#fff1f0;
  --admin-danger-text:#991b1b;
}
body.admin-fresh,
.admin-shell,
.admin-main,
.admin-view{
  background:var(--admin-bg)!important;
  color:var(--admin-text)!important;
}
.admin-view .panel,
.admin-view .metric,
.admin-view .record-row,
.admin-view .action-card,
.admin-view .settings-section,
.admin-view .editor-pane,
.admin-view .editor-form,
.admin-view .settings-layout,
.admin-view .table-wrap,
.admin-view .records a,
.admin-view .check-list div,
.admin-view .brand-list div,
.admin-view .clean-section,
.admin-view .clean-builder-item,
.admin-view details.clean-builder-item,
.admin-view .visual-builder-nav,
.admin-view .compact-builder-nav,
.admin-view .admin-directory-panel,
.admin-view .admin-directory-card,
.admin-view .customer-directory-card{
  background:var(--admin-panel)!important;
  color:var(--admin-text)!important;
  border-color:var(--admin-border-soft)!important;
}
.admin-view .panel *,
.admin-view .metric *,
.admin-view .record-row *,
.admin-view .action-card *,
.admin-view .settings-section *,
.admin-view .editor-form *,
.admin-view .settings-layout *,
.admin-view .table-wrap *,
.admin-view .records *,
.admin-view .check-list *,
.admin-view .brand-list *{
  opacity:1;
}
.admin-view h1,
.admin-view h2,
.admin-view h3,
.admin-view h4,
.admin-view h5,
.admin-view h6,
.admin-view strong,
.admin-view b,
.admin-view label,
.admin-view .page-head h1,
.admin-view .panel-head h2,
.admin-view .metric strong,
.admin-view .record-row strong,
.admin-view .action-card strong{
  color:var(--admin-heading)!important;
}
.admin-view p,
.admin-view li,
.admin-view span,
.admin-view small,
.admin-view .muted,
.admin-view .empty,
.admin-view .page-head p,
.admin-view .panel-head p,
.admin-view .metric span,
.admin-view .record-row span,
.admin-view .record-row small,
.admin-view .action-card span{
  color:var(--admin-muted)!important;
}
.admin-view a:not(.btn):not(.admin-brand){
  color:#1d4ed8!important;
}
.admin-view input:not([type="checkbox"]):not([type="radio"]),
.admin-view select,
.admin-view textarea{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:var(--admin-border)!important;
  box-shadow:none;
}
.admin-view input::placeholder,
.admin-view textarea::placeholder{
  color:#64748b!important;
  opacity:1!important;
}
.admin-view input[type="checkbox"],
.admin-view input[type="radio"]{
  width:auto;
  min-height:0;
  accent-color:var(--admin-accent,#f58220);
}
.admin-view input:disabled,
.admin-view select:disabled,
.admin-view textarea:disabled,
.admin-view button:disabled,
.admin-view .btn[aria-disabled="true"]{
  opacity:.72!important;
  color:#64748b!important;
}
.admin-view .table-tools{
  color:var(--admin-text)!important;
}
.admin-view .table-tools span,
.admin-view .pager span{
  color:var(--admin-heading)!important;
  font-weight:800;
}
.admin-view .table-wrap{
  overflow:auto;
  background:#ffffff!important;
  border:1px solid var(--admin-border-soft)!important;
  box-shadow:0 12px 34px rgba(15,23,42,.05);
}
.admin-view table{
  background:#ffffff!important;
  color:#0f172a!important;
}
.admin-view thead,
.admin-view tbody,
.admin-view tr,
.admin-view th,
.admin-view td{
  color:#0f172a!important;
  opacity:1!important;
}
.admin-view th{
  background:#f1f5f9!important;
  color:#334155!important;
  border-bottom:1px solid var(--admin-border)!important;
}
.admin-view td{
  background:#ffffff!important;
  color:#0f172a!important;
  border-bottom:1px solid var(--admin-border-soft)!important;
}
.admin-view tbody tr:nth-child(even) td{
  background:#f8fafc!important;
}
.admin-view tbody tr:hover td{
  background:#fff7ed!important;
  color:#0f172a!important;
}
.admin-view td *,
.admin-view th *{
  color:inherit!important;
  opacity:1!important;
}
.admin-view .pager button,
.admin-view .table-tools input{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:var(--admin-border)!important;
}
.admin-view .notice,
.admin-view .toast{
  background:#ecfdf5!important;
  color:#065f46!important;
  border-color:rgba(4,120,87,.28)!important;
}
.admin-view .notice *{color:inherit!important}
.admin-view .notice.err,
.admin-view .toast.err,
.admin-view .danger-zone .notice.err{
  background:var(--admin-danger-bg)!important;
  color:var(--admin-danger-text)!important;
  border-color:rgba(220,38,38,.26)!important;
}
.admin-view .danger-zone{
  color:var(--admin-text)!important;
}
.admin-view .check-card,
.admin-view label.check-card,
.admin-view .danger-zone .check-card{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:58px;
  padding:12px 14px!important;
  border:1px solid var(--admin-warning-border)!important;
  border-radius:14px!important;
  background:var(--admin-warning-bg)!important;
  color:#7c2d12!important;
  font-weight:900!important;
  line-height:1.35!important;
}
.admin-view .check-card *,
.admin-view label.check-card *{
  color:inherit!important;
  opacity:1!important;
}
.admin-view .check-card input[type="checkbox"]{
  flex:0 0 auto;
  width:20px!important;
  height:20px!important;
  margin:0 0 0 12px!important;
}
.admin-view .bad{color:#b42318!important;font-weight:900}
.admin-view .ok{color:#047857!important;font-weight:900}
.admin-side,
.admin-side *,
.admin-search,
.admin-search *,
.nav-group,
.nav-group *{
  opacity:1;
}
.admin-side .admin-brand,
.admin-side .admin-brand *,
.admin-side .admin-mark strong,
.admin-side .nav-group a strong{
  color:#ffffff!important;
}
.admin-side .nav-group a small,
.admin-side .nav-group>span,
.admin-side .admin-search label{
  color:#a9bbcc!important;
}
.admin-side .nav-group a.active small{
  color:#ffd0a0!important;
}

/* alpha0.7.v270-admin-command-center */
.admin-main{
  padding-top:18px;
}
.admin-command-bar{
  position:sticky;
  top:0;
  z-index:70;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  margin:-2px auto 22px;
  padding:12px;
  max-width:1500px;
  border:1px solid #d7e2ee;
  border-radius:20px;
  background:rgba(255,255,255,.96);
  color:#0f172a;
  box-shadow:0 18px 42px rgba(15,23,42,.12);
  backdrop-filter:blur(14px);
}
.admin-command-left{
  display:flex;
  min-width:0;
  align-items:center;
  gap:12px;
}
.admin-route-pill{
  flex:0 0 auto;
  padding:9px 12px;
  border-radius:999px;
  background:#0f172a;
  color:#fff;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.admin-command-search{
  display:grid;
  min-width:240px;
  flex:1;
  gap:4px;
  color:#475569;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.admin-command-search input{
  width:100%;
  min-height:44px;
  padding:10px 14px;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#f8fafc;
  color:#0f172a;
  font-size:.95rem;
  font-weight:750;
  outline:none;
}
.admin-command-search input:focus{
  border-color:#f58220;
  box-shadow:0 0 0 4px rgba(245,130,32,.16);
  background:#fff;
}
.admin-command-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.admin-command-results{
  position:absolute;
  left:12px;
  right:12px;
  top:calc(100% + 8px);
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:8px;
  max-height:min(560px,calc(100vh - 120px));
  overflow:auto;
  padding:10px;
  border:1px solid #d7e2ee;
  border-radius:18px;
  background:#ffffff;
  box-shadow:0 24px 60px rgba(15,23,42,.22);
}
.admin-command-results a{
  display:block;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#f8fafc;
  color:#0f172a;
  text-decoration:none;
}
.admin-command-results a:hover,
.admin-command-results a:focus{
  border-color:#f58220;
  background:#fff7ed;
}
.admin-command-results strong{display:block;font-size:.92rem;color:#0f172a}
.admin-command-results small{display:block;margin-top:4px;color:#475569;line-height:1.35}
.admin-command-results p{grid-column:1/-1;margin:0;padding:12px;color:#475569}
.admin-side .admin-search{
  position:sticky!important;
  top:0!important;
  z-index:50;
  margin:-2px 0 2px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  box-shadow:0 14px 28px rgba(0,0,0,.18);
}
.admin-side nav{
  scrollbar-gutter:stable;
}
.admin-cockpit-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:16px;
  margin:0 0 22px;
}
.admin-focus-card{
  display:grid;
  align-content:start;
  gap:10px;
  min-height:190px;
  padding:20px;
  border:1px solid #dbe5ee;
  border-radius:24px;
  background:#fff;
  color:#0f172a;
  box-shadow:0 16px 36px rgba(15,23,42,.08);
}
.admin-focus-card.primary{
  background:linear-gradient(135deg,#fffaf5,#ffffff);
  color:#0f172a;
  border-color:#ffd7ad;
  box-shadow:0 16px 36px rgba(245,130,32,.12);
}
.admin-focus-card span{
  color:#f58220;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.admin-focus-card.primary span{color:#c45a00}
.admin-focus-card h2{margin:0;font-size:1.35rem;line-height:1.1;color:inherit}
.admin-focus-card p{margin:0;color:#52657a;line-height:1.45}
.admin-focus-card.primary p{color:#52657a}
.mini-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.mini-actions a{
  padding:8px 10px;
  border-radius:999px;
  background:#edf2f7;
  color:#0f172a;
  font-weight:850;
  text-decoration:none;
  font-size:.82rem;
}
.mini-actions a:hover{background:#fff7ed;color:#9a4a06}
.admin-search-hit{
  outline:3px solid rgba(245,130,32,.72)!important;
  outline-offset:4px!important;
  box-shadow:0 0 0 8px rgba(245,130,32,.14)!important;
}
@media (max-width:1100px){
  .admin-command-bar{grid-template-columns:1fr;position:sticky;top:0}
  .admin-command-left{align-items:stretch;flex-direction:column}
  .admin-command-actions{justify-content:flex-start}
  .admin-cockpit-grid{grid-template-columns:1fr}
}
@media (max-width:700px){
  .admin-main{padding:14px}
  .admin-command-results{grid-template-columns:1fr;left:6px;right:6px}
  .admin-route-pill{width:max-content}
}


/* alpha0.7.v271-admin-search-directory-polish */
/* The command bar is the single admin-wide search surface. Hide the older left-rail search when older markup is present. */
.admin-side .admin-search{
  display:none!important;
}
.admin-command-bar{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:#cbd5e1!important;
}
.admin-command-bar *,
.admin-command-left *,
.admin-command-actions *{
  opacity:1!important;
}
.admin-command-search,
.admin-command-search span{
  color:#334155!important;
}
.admin-command-search input,
#adminGlobalSearch{
  background:#ffffff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border-color:#94a3b8!important;
  caret-color:#0f172a!important;
  text-shadow:none!important;
  opacity:1!important;
}
.admin-command-search input::placeholder,
#adminGlobalSearch::placeholder{
  color:#475569!important;
  -webkit-text-fill-color:#475569!important;
  opacity:1!important;
}
.admin-command-search input:focus,
#adminGlobalSearch:focus{
  background:#ffffff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border-color:#f58220!important;
  box-shadow:0 0 0 4px rgba(245,130,32,.20)!important;
}
.admin-command-results,
.admin-command-results a{
  background:#ffffff!important;
  color:#0f172a!important;
}
.admin-command-results strong{color:#0f172a!important}
.admin-command-results small,.admin-command-results p{color:#475569!important}

/* Directory polish: remove redundant View labels and make cards/modals use clean readable surfaces. */
.admin-directory-card .org-card-more,
.directory-related-card .org-card-more{
  display:none!important;
}
.admin-directory-card,
.admin-directory-card.group,
.admin-view .admin-directory-card,
.directory-related-card{
  background:#ffffff!important;
  color:#0f172a!important;
  border:1px solid #dbe5ee!important;
  box-shadow:0 12px 28px rgba(15,35,55,.07)!important;
}
.admin-directory-card:hover,
.admin-directory-card:focus,
.directory-related-card:hover,
.directory-related-card:focus{
  background:#fffaf4!important;
  border-color:rgba(245,130,32,.45)!important;
  box-shadow:0 18px 38px rgba(15,35,55,.11)!important;
}
.admin-directory-card strong,
.directory-related-card strong{
  color:#0f172a!important;
}
.admin-directory-card small,
.directory-related-card small{
  color:#334155!important;
}
.admin-directory-card{
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:14px!important;
}
.admin-directory-modal{
  background:linear-gradient(145deg,#ffffff,#fffaf5 78%)!important;
  color:#0f172a!important;
  border-color:#ead8c5!important;
}
.admin-directory-modal h2,
.admin-directory-modal h3,
.admin-directory-modal b,
.admin-directory-modal strong{
  color:#0f172a!important;
}
.admin-directory-modal .muted,
.admin-directory-modal small,
.admin-directory-modal .directory-modal-count{
  color:#475569!important;
}
.admin-directory-modal .info-grid div,
.admin-directory-modal .directory-related-card,
.admin-directory-modal .directory-org-chain{
  background:#fffaf5!important;
  color:#0f172a!important;
  border-color:#ead8c5!important;
}
.admin-directory-modal .info-grid strong,
.admin-directory-modal .directory-org-chain span{
  color:#c26a16!important;
}
.admin-directory-modal .info-grid span,
.admin-directory-modal .info-grid a,
.admin-directory-modal .directory-org-chain b{
  color:#0f172a!important;
}
.admin-directory-modal .directory-org-chain button{
  background:#ffffff!important;
  color:#0f172a!important;
  border:1px solid #ead8c5!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
}
.admin-directory-modal .directory-org-chain button b{
  color:#0f172a!important;
}
.admin-directory-modal .directory-org-chain em{
  color:#c26a16!important;
}
html[data-theme="legal"] .admin-directory-panel,
html[data-theme="legal"] .admin-directory-modal{
  --directory-text:#0f172a!important;
  --directory-muted:#475569!important;
  --directory-surface:#ffffff!important;
}
html[data-theme="legal"] .admin-directory-panel{
  background:#ffffff!important;
  color:#0f172a!important;
}
html[data-theme="legal"] .admin-directory-card,
html[data-theme="legal"] .admin-directory-card.group,
html[data-theme="legal"] .admin-directory-modal .directory-related-card{
  background:#ffffff!important;
  color:#0f172a!important;
  border-color:#dbe5ee!important;
}
html[data-theme="legal"] .admin-directory-card strong,
html[data-theme="legal"] .admin-directory-modal h2,
html[data-theme="legal"] .admin-directory-modal h3,
html[data-theme="legal"] .admin-directory-modal b,
html[data-theme="legal"] .admin-directory-modal strong{
  color:#0f172a!important;
}
html[data-theme="legal"] .admin-directory-card small,
html[data-theme="legal"] .admin-directory-modal .muted,
html[data-theme="legal"] .admin-directory-modal small,
html[data-theme="legal"] .admin-directory-modal .directory-modal-count{
  color:#475569!important;
}
html[data-theme="legal"] .admin-directory-modal .info-grid span,
html[data-theme="legal"] .admin-directory-modal .info-grid a{
  color:#0f172a!important;
}


/* alpha0.7.v272-command-search-navigation-fix */
.admin-command-actions .btn,
.admin-command-actions .btn.ghost,
.admin-command-actions a.btn,
.admin-command-actions a.btn.ghost{
  background:#ffffff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border:1px solid #cbd5e1!important;
  opacity:1!important;
  text-shadow:none!important;
  filter:none!important;
}
.admin-command-actions .btn:hover,
.admin-command-actions .btn.ghost:hover,
.admin-command-actions .btn:focus,
.admin-command-actions .btn.ghost:focus{
  background:#f8fafc!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border-color:#f58220!important;
  box-shadow:0 0 0 4px rgba(245,130,32,.14)!important;
}
.admin-command-actions .btn.primary,
.admin-command-actions a.btn.primary{
  background:linear-gradient(135deg,#f58220,#ffad4f)!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  border-color:transparent!important;
  box-shadow:0 12px 24px rgba(245,130,32,.22)!important;
}
.admin-command-results a{
  cursor:pointer!important;
}
.admin-command-results a:active{
  transform:translateY(1px);
}
.admin-search-hit{
  scroll-margin-top:112px!important;
}

/* v274: public navigation visibility manager */
.nav-visibility-manager .panel-head p {
  max-width: 70ch;
}
.nav-visibility-list {
  display: grid;
  gap: 10px;
}
.nav-visibility-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 16px;
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}
.nav-visibility-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: #f58220;
}
.nav-visibility-main {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.nav-visibility-main strong {
  color: #0f172a;
  font-weight: 800;
}
.nav-visibility-main small {
  color: #475569;
  font-size: 0.82rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.nav-visibility-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 74px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: rgba(22, 163, 74, 0.12);
  color: #166534;
}
.nav-visibility-row.is-hidden {
  background: #f8fafc;
  border-style: dashed;
  opacity: 0.74;
}
.nav-visibility-row.is-hidden .nav-visibility-state {
  background: rgba(100, 116, 139, 0.16);
  color: #334155;
}
.nav-visibility-row:hover,
.nav-visibility-row:focus-within {
  border-color: rgba(245, 130, 32, 0.55);
  box-shadow: 0 12px 28px rgba(245, 130, 32, 0.13);
}
@media (max-width: 720px) {
  .nav-visibility-row {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .nav-visibility-state {
    grid-column: 2;
    justify-self: start;
  }
}

/* License enforcement UI fixes */
.admin-view .license-hero,
.admin-view .license-hero *,
.license-hero,
.license-hero *{
  color:#ffffff!important;
  opacity:1!important;
}
.license-hero.ok{
  background:linear-gradient(135deg,#064e3b,#047857)!important;
}
.license-hero.warning,
.license-hero.seat_warning,
.license-hero.expiration_warning,
.license-hero.limit_reached,
.license-hero.grace{
  background:linear-gradient(135deg,#713f12,#d97706)!important;
}
.license-hero.critical,
.license-hero.expired,
.license-hero.over_limit{
  background:linear-gradient(135deg,#7f1d1d,#dc2626)!important;
}
.license-hero h2{
  color:#ffffff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.28);
}
.license-hero p,
.license-hero .eyebrow,
.license-hero .license-ring span{
  color:#eef7ff!important;
}
.license-health-copy{
  margin-top:10px!important;
  font-weight:850;
}
.license-health-copy.ok{color:#dcfce7!important}
.license-lock-banner{
  display:block;
  width:100%;
  margin:0 0 14px!important;
  background:#fff1f0!important;
  color:#991b1b!important;
  border:1px solid rgba(220,38,38,.32)!important;
}
.license-lock-banner *{color:inherit!important}
.license-locked-fields{
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}
.license-locked-fields.is-locked{
  padding:12px;
  border:1px dashed rgba(220,38,38,.32);
  border-radius:14px;
  background:#f8fafc;
  filter:grayscale(.15);
}
.license-locked-fields.is-locked input,
.license-locked-fields.is-locked select,
.license-locked-fields.is-locked textarea,
.license-option-locked input,
.license-option-locked select,
.license-option-locked textarea{
  cursor:not-allowed!important;
}
.license-section-locked summary{
  background:#fff7f7;
}
.license-option-locked{
  align-items:flex-start;
  display:grid;
  grid-template-columns:1fr auto;
}
.license-option-locked .license-lock-banner{
  grid-column:1 / -1;
  margin:8px 0 0!important;
  padding:9px 10px;
}

/* v279 licensing request polish */
.license-request-features {
  border: 1px solid rgba(148, 163, 184, .32);
  border-radius: 18px;
  padding: 14px;
  background: rgba(248, 250, 252, .78);
}
.license-request-features legend {
  padding: 0 8px;
  font-weight: 800;
  color: #0f172a;
}
.feature-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}
.feature-check-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid rgba(203, 213, 225, .85);
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
}
.feature-check-grid input { width: auto; min-width: 16px; }
.empty.compact { margin: 8px 0 0; font-size: .85rem; }

/* v285 licensed feature upgrade cards */
.license-upgrade-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  width:100%;
  margin:8px 0 14px;
  padding:18px 20px;
  border:1px solid rgba(220,38,38,.22);
  border-radius:20px;
  background:linear-gradient(135deg,#fff7f7,#ffffff);
  box-shadow:0 14px 34px rgba(15,23,42,.08);
  color:#0f172a;
}
.license-upgrade-card h3{
  margin:2px 0 6px;
  color:#7f1d1d!important;
  font-size:1.05rem;
}
.license-upgrade-card p{
  margin:0;
  color:#334155!important;
  line-height:1.5;
}
.upgrade-eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:4px 9px;
  border-radius:999px;
  background:#fee2e2;
  color:#991b1b!important;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.upgrade-tier{
  display:grid;
  gap:3px;
  justify-items:end;
  min-width:130px;
  padding:12px 14px;
  border-radius:16px;
  background:#ffffff;
  border:1px solid rgba(148,163,184,.28);
}
.upgrade-tier span{color:#64748b!important;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.upgrade-tier strong{color:#0f172a!important;font-size:1rem}
.license-section-upgrade summary{background:#fff7f7}
.license-option-upgrade{
  display:block!important;
  border-color:rgba(220,38,38,.22)!important;
  background:#fffafa!important;
}
.license-option-upgrade > strong{display:block;margin-bottom:8px;color:#0f172a!important}
@media (max-width: 760px){
  .license-upgrade-card{grid-template-columns:1fr}
  .upgrade-tier{justify-items:start;min-width:0}
}

/* v286 maintenance break-glass password reset collapse polish */
.maintenance-breakglass-reset summary {
  cursor: pointer;
}
.maintenance-breakglass-reset summary span {
  font-weight: 800;
}
.maintenance-breakglass-reset summary small {
  color: var(--muted);
}
.maintenance-breakglass-reset[open] summary {
  margin-bottom: 1rem;
}

/* v287: keep sticky admin chrome from covering edit panels */
:root{
  --admin-command-height: 92px;
  --admin-sticky-clearance: 112px;
  --admin-bottom-clearance: 24px;
}
.admin-command-bar{
  top: 0!important;
  z-index: 80!important;
}
.admin-view .workspace-side,
.admin-view .editor-pane{
  scroll-margin-top: var(--admin-sticky-clearance)!important;
}
@media (min-width: 901px){
  .admin-view .workspace-side{
    position: sticky!important;
    top: var(--admin-sticky-clearance)!important;
    max-height: calc(100vh - var(--admin-sticky-clearance) - var(--admin-bottom-clearance))!important;
    overflow: auto!important;
  }
  .admin-view .workspace-side .editor-pane,
  .admin-view .editor-pane{
    position: relative!important;
    top: auto!important;
  }
  .visual-builder-inverted>.builder-control-rail{
    top: var(--admin-sticky-clearance)!important;
    max-height: calc(100vh - var(--admin-sticky-clearance) - var(--admin-bottom-clearance))!important;
  }
}
@media (max-width: 900px){
  .admin-command-bar{
    position: sticky!important;
    top: 0!important;
  }
  .admin-view .workspace-side,
  .admin-view .editor-pane,
  .visual-builder-inverted>.builder-control-rail{
    position: static!important;
    top: auto!important;
    max-height: none!important;
    overflow: visible!important;
  }
}

/* v287: keep the visual builder save dock inside the canvas column instead of over the edit rail */
.visual-builder-inverted .builder-canvas-panel{
  padding-bottom: 0!important;
  overflow: hidden!important;
}
.visual-builder-inverted .canvas-floating-bar{
  position: sticky!important;
  left: auto!important;
  right: auto!important;
  bottom: 0!important;
  z-index: 30!important;
  width: 100%!important;
  margin: 0!important;
  border-radius: 0 0 18px 18px!important;
  box-shadow: 0 -10px 30px rgba(15,23,42,.10)!important;
}
.visual-builder-inverted .canvas-floating-bar::before{
  flex: 0 0 auto;
}
.visual-builder-inverted.is-rail-open>.builder-control-rail,
.visual-builder-inverted.is-rail-minimized>.builder-control-rail{
  z-index: 20!important;
}
.visual-builder-inverted .builder-control-rail .global-save{
  z-index: 22!important;
}
@media (max-width: 720px){
  .visual-builder-inverted .canvas-floating-bar{
    left: auto!important;
    right: auto!important;
    bottom: 0!important;
    border-radius: 0 0 18px 18px!important;
  }
}

/* v289 renewal lock: expired licenses preserve runtime services but freeze technical settings. */
.renewal-lock-notice{margin:1rem 0 1.25rem;border-color:#fecaca;background:#fff1f2;color:#7f1d1d}
.renewal-lock-notice a{font-weight:800;color:#991b1b;text-decoration:underline}
.renewal-locked-form{position:relative}
.renewal-locked-form input:disabled,.renewal-locked-form select:disabled,.renewal-locked-form textarea:disabled,.renewal-locked-form button:disabled{cursor:not-allowed;opacity:.68;background:#f3f4f6!important;color:#64748b!important;border-color:#cbd5e1!important}
.renewal-locked-form .settings-section{box-shadow:inset 0 0 0 1px rgba(220,38,38,.08)}

/* v290 settings test controls */
.settings-test-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(148, 163, 184, .28);
}
.settings-test-row label {
  margin: 0;
  min-width: min(320px, 100%);
}
.settings-test-row .secondary {
  white-space: nowrap;
}
.inline-test-status {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  font-size: .86rem;
  font-weight: 800;
  color: #475569;
}
.inline-test-status.ok { color: #047857; }
.inline-test-status.err { color: #b91c1c; }
.inline-test-status.working { color: #b45309; }
.test-mail-row input[type="email"] {
  min-width: min(360px, 100%);
}

/* v292: /admin/#homepage live iframe preview and same-origin frame policy are aligned. */
.live-site-preview-shell{
  width:100%!important;
  max-width:1480px!important;
  min-height:calc(100vh - 290px)!important;
  background:#ffffff!important;
  border:1px solid rgba(148,163,184,.35)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
.live-site-preview-address{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  border-radius:0!important;
  margin:0!important;
}
.live-site-preview-frame{
  display:block!important;
  width:100%!important;
  height:calc(100vh - 345px)!important;
  min-height:620px!important;
  border:0!important;
  border-radius:0!important;
  background:#ffffff!important;
  box-shadow:none!important;
}
.inline-stage.tablet .live-site-preview-shell,
.visual-preview-stage.tablet .live-site-preview-shell{
  max-width:820px!important;
  width:82%!important;
}
.inline-stage.mobile .live-site-preview-shell,
.visual-preview-stage.mobile .live-site-preview-shell{
  max-width:390px!important;
  width:390px!important;
  border-radius:28px!important;
}
.inline-stage.mobile .live-site-preview-frame,
.visual-preview-stage.mobile .live-site-preview-frame{
  height:700px!important;
  min-height:700px!important;
}
.visual-builder-inverted .live-site-preview-shell{
  max-width:1480px!important;
  min-height:calc(100vh - 290px)!important;
}
.visual-builder-inverted .visual-preview-stage iframe.live-site-preview-frame{
  width:100%!important;
  max-width:none!important;
}
@media(max-width:720px){
  .inline-stage.tablet .live-site-preview-shell,
  .inline-stage.mobile .live-site-preview-shell,
  .visual-preview-stage.tablet .live-site-preview-shell,
  .visual-preview-stage.mobile .live-site-preview-shell{
    width:100%!important;
    max-width:100%!important;
  }
  .live-site-preview-frame{
    height:680px!important;
    min-height:680px!important;
  }
}

/* v294: live visual builder image replacement */
.live-image-picker-popover {
  position: sticky;
  bottom: 76px;
  z-index: 30;
  width: min(680px, calc(100% - 24px));
  margin: -8px 12px 12px auto;
  padding: 16px;
  border: 1px solid rgba(255, 138, 42, .28);
  border-radius: 18px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 20px 60px rgba(15, 23, 42, .22);
}
.live-image-picker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}
.live-image-picker-head button {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  padding: 0;
  font-size: 22px;
  line-height: 1;
}
.live-image-picker-popover p {
  margin: 0 0 12px;
  color: #475569;
  font-size: 13px;
}
.live-image-choice-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 10px;
  max-height: 340px;
  overflow: auto;
  padding-right: 4px;
}
.live-image-choice {
  display: grid;
  gap: 7px;
  text-align: left;
  padding: 10px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  background: #ffffff;
  color: #0f172a;
}
.live-image-choice:hover,
.live-image-choice.selected {
  border-color: #ff8a2a;
  box-shadow: 0 0 0 3px rgba(255, 138, 42, .16);
}
.live-image-choice .image-thumb {
  width: 100%;
  height: 86px;
  object-fit: cover;
  border-radius: 10px;
  background: #eef2f7;
}
.live-image-choice strong {
  font-size: 13px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.live-image-choice small {
  color: #64748b;
  font-size: 11px;
  overflow-wrap: anywhere;
}

/* v295: expanded live visual editor workspace */
body.builder-popout-active {
  overflow: hidden !important;
}
.visual-builder-inverted.builder-popout-open {
  position: fixed !important;
  inset: 12px !important;
  z-index: 10000 !important;
  width: auto !important;
  height: calc(100vh - 24px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 12px !important;
  padding: 12px !important;
  margin: 0 !important;
  border: 1px solid rgba(148, 163, 184, .45) !important;
  border-radius: 24px !important;
  background: linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(226, 232, 240, .98)) !important;
  box-shadow: 0 30px 100px rgba(2, 6, 23, .42) !important;
  overflow: hidden !important;
}
.visual-builder-inverted.builder-popout-open::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: rgba(2, 6, 23, .58);
  backdrop-filter: blur(8px);
}
.visual-builder-inverted.builder-popout-open > .visual-live-preview-panel,
.visual-builder-inverted.builder-popout-open > .builder-control-rail {
  min-height: 0 !important;
  height: 100% !important;
  overflow: auto !important;
}
.visual-builder-inverted.builder-popout-open > .visual-live-preview-panel {
  display: flex !important;
  flex-direction: column !important;
  padding: 14px !important;
}
.visual-builder-inverted.builder-popout-open > .builder-control-rail {
  display: block !important;
  width: auto !important;
  max-width: 380px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
}
.visual-builder-inverted.builder-popout-open .visual-preview-topbar {
  flex: 0 0 auto !important;
  padding-bottom: 10px !important;
}
.visual-builder-inverted.builder-popout-open .canvas-title-block p {
  max-width: 920px !important;
}
.visual-builder-inverted.builder-popout-open .visual-preview-stage {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 10px !important;
  overflow: auto !important;
}
.visual-builder-inverted.builder-popout-open .live-site-preview-shell {
  min-height: 100% !important;
  height: 100% !important;
  max-width: none !important;
}
.visual-builder-inverted.builder-popout-open .live-site-preview-frame {
  height: calc(100vh - 238px) !important;
  min-height: 560px !important;
}
.visual-builder-inverted.builder-popout-open .canvas-floating-bar {
  position: sticky !important;
  bottom: 0 !important;
  margin-top: 10px !important;
  z-index: 35 !important;
}
.visual-builder-inverted.builder-popout-open .live-image-picker-popover {
  position: absolute !important;
  right: 24px !important;
  bottom: 82px !important;
  width: min(720px, calc(100% - 48px)) !important;
  max-height: min(620px, calc(100vh - 170px)) !important;
  overflow: auto !important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized {
  grid-template-columns: minmax(0, 1fr) 72px !important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized > .builder-control-rail {
  max-width: 72px !important;
}
#builderPopoutToggle[aria-expanded="true"] {
  background: #0f172a !important;
  color: #ffffff !important;
  border-color: #0f172a !important;
}
@media(max-width: 980px) {
  .visual-builder-inverted.builder-popout-open {
    inset: 6px !important;
    height: calc(100vh - 12px) !important;
    grid-template-columns: 1fr !important;
  }
  .visual-builder-inverted.builder-popout-open > .builder-control-rail {
    display: none !important;
  }
  .visual-builder-inverted.builder-popout-open .live-site-preview-frame {
    height: calc(100vh - 260px) !important;
  }
}

/* v296: click-to-change live preview icons and cleaner expanded edit rail */
.live-icon-picker-popover .live-image-picker-head strong::before{
  content:'* ';
  color:#0284c7;
}
.live-icon-choice-list{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:10px;
}
.live-icon-choice{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  gap:4px 10px;
  width:100%;
  text-align:left;
  border:1px solid rgba(148,163,184,.32);
  border-radius:16px;
  padding:10px;
  background:#ffffff;
  color:#0f172a;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.live-icon-choice:hover,
.live-icon-choice.selected{
  border-color:#38bdf8;
  background:#f0f9ff;
  box-shadow:0 0 0 4px rgba(56,189,248,.14),0 14px 30px rgba(15,23,42,.10);
}
.live-icon-choice span{
  grid-row:1 / span 2;
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#082f49,#0f172a);
  border:1px solid rgba(56,189,248,.32);
  overflow:hidden;
}
.live-icon-choice img{
  max-width:30px;
  max-height:30px;
  display:block;
}
.live-icon-choice strong{
  font-size:12px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.live-icon-choice small{
  font-size:10px;
  color:#64748b;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.visual-builder-inverted.builder-popout-open{
  grid-template-columns:minmax(0,1fr) minmax(330px,360px)!important;
}
.visual-builder-inverted.builder-popout-open > .builder-control-rail{
  position:sticky!important;
  top:0!important;
  align-self:start!important;
  height:calc(100vh - 48px)!important;
  max-height:calc(100vh - 48px)!important;
  overflow:auto!important;
  padding:0 2px 12px!important;
  border-radius:22px!important;
}
.visual-builder-inverted.builder-popout-open .builder-control-nav,
.visual-builder-inverted.builder-popout-open .builder-control-rail>.panel{
  border:1px solid rgba(148,163,184,.28)!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 18px 45px rgba(15,23,42,.12)!important;
}
.visual-builder-inverted.builder-popout-open .builder-control-nav{
  position:sticky!important;
  top:0!important;
  z-index:8!important;
  padding:12px!important;
}
.visual-builder-inverted.builder-popout-open .visual-builder-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.visual-builder-inverted.builder-popout-open .visual-builder-nav strong{
  font-size:14px!important;
  letter-spacing:.01em!important;
}
.visual-builder-inverted.builder-popout-open .visual-builder-nav span{
  font-size:12px!important;
  color:#475569!important;
}
.visual-builder-inverted.builder-popout-open .visual-builder-nav .builder-mode-tabs{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.visual-builder-inverted.builder-popout-open .visual-builder-nav .builder-mode-tabs button{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  min-height:38px!important;
  padding:9px 10px!important;
  font-size:12px!important;
  border-radius:999px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized{
  grid-template-columns:minmax(0,1fr) 56px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized > .builder-control-rail{
  max-width:56px!important;
  width:56px!important;
  overflow:visible!important;
  padding:0!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .panel,
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail details,
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail form,
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .compact-help,
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .panel-head,
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .clean-builder-form{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-control-nav{
  padding:8px 6px!important;
  border-radius:18px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-control-nav>div:first-child strong{
  writing-mode:vertical-rl!important;
  transform:rotate(180deg)!important;
  margin:0 auto 10px!important;
  font-size:12px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-control-nav>div:first-child span{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-mode-tabs{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-mode-tabs button{
  min-height:44px!important;
  width:44px!important;
  padding:0!important;
  overflow:hidden!important;
  text-indent:-999px!important;
  position:relative!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized .builder-control-rail .builder-mode-tabs button::after{
  content:attr(data-short-label);
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  text-indent:0;
  font-size:11px;
  font-weight:900;
}
.visual-builder-inverted.builder-popout-open .live-icon-picker-popover{
  position:absolute!important;
  right:24px!important;
  bottom:82px!important;
  width:min(780px, calc(100% - 48px))!important;
  max-height:min(620px, calc(100vh - 170px))!important;
  overflow:auto!important;
}
@media(max-width:980px){
  .visual-builder-inverted.builder-popout-open{grid-template-columns:1fr!important;}
  .visual-builder-inverted.builder-popout-open > .builder-control-rail{display:none!important;}
}

/* v298: polished live visual editor workspace */
.visual-builder-inverted .visual-preview-topbar{
  border-bottom:1px solid rgba(148,163,184,.18)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.92))!important;
}
.visual-builder-inverted .canvas-title-block{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
}
.visual-builder-inverted .canvas-title-block .eyebrow{
  margin:0!important;
  flex:0 0 auto!important;
}
.visual-builder-inverted .canvas-title-block h2{
  margin:0!important;
  font-size:20px!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
}
.visual-builder-inverted .canvas-title-block p{
  display:none!important;
}
.visual-builder-inverted .visual-preview-controls{
  grid-template-columns:minmax(210px,1fr) auto auto auto!important;
  justify-content:end!important;
}
.visual-builder-inverted .visual-preview-controls select,
.visual-builder-inverted .visual-preview-controls button,
.visual-builder-inverted .visual-preview-controls .btn{
  min-height:40px!important;
  border-radius:12px!important;
  font-weight:800!important;
}
.visual-builder-inverted .preview-device-tabs{
  min-width:248px!important;
  padding:4px!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.26)!important;
}
.visual-builder-inverted .preview-device-tabs button{
  min-height:32px!important;
  border-radius:10px!important;
}
.visual-builder-inverted .canvas-quick-nav{
  padding:10px 16px!important;
  gap:8px!important;
  align-items:center!important;
}
.visual-builder-inverted .canvas-quick-nav strong{
  font-size:11px!important;
  letter-spacing:.11em!important;
  color:#64748b!important;
}
.visual-builder-inverted .canvas-quick-nav button{
  border-radius:999px!important;
  padding:9px 14px!important;
  box-shadow:0 8px 18px rgba(15,23,42,.05)!important;
}
.visual-builder-inverted .builder-control-rail{
  top:86px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.visual-builder-inverted .builder-control-nav,
.visual-builder-inverted .builder-control-rail>.panel{
  border:1px solid rgba(148,163,184,.24)!important;
  background:rgba(255,255,255,.96)!important;
}
.visual-builder-inverted .visual-builder-nav{
  gap:10px!important;
}
.visual-builder-inverted .visual-builder-nav strong{
  font-size:15px!important;
  letter-spacing:-.01em!important;
}
.visual-builder-inverted .visual-builder-nav span{
  color:#475569!important;
}
.visual-builder-inverted .builder-mode-tabs button{
  border-radius:999px!important;
}
.visual-builder-inverted.builder-popout-open{
  grid-template-columns:minmax(0,1fr) minmax(340px,370px)!important;
  gap:14px!important;
}
.visual-builder-inverted.builder-popout-open > .builder-control-rail{
  position:sticky!important;
  top:0!important;
  right:0!important;
  align-self:start!important;
  height:calc(100vh - 48px)!important;
  max-height:calc(100vh - 48px)!important;
  overflow:auto!important;
  padding:0 2px 12px!important;
  border-radius:22px!important;
}
.visual-builder-inverted.builder-popout-open .builder-control-nav{
  position:sticky!important;
  top:0!important;
  z-index:20!important;
  border-radius:20px!important;
  backdrop-filter:blur(12px)!important;
}
.visual-builder-inverted.builder-popout-open .visual-preview-topbar{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(520px,auto)!important;
  gap:14px!important;
  align-items:center!important;
  padding:12px 14px!important;
}
.visual-builder-inverted.builder-popout-open .visual-preview-controls{
  grid-template-columns:minmax(220px,1fr) auto auto auto!important;
}
.visual-builder-inverted.builder-popout-open .live-site-preview-frame{
  height:calc(100vh - 224px)!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized{
  grid-template-columns:minmax(0,1fr) 58px!important;
}
.visual-builder-inverted.builder-popout-open.is-rail-minimized > .builder-control-rail{
  position:sticky!important;
  top:0!important;
  height:auto!important;
  max-height:calc(100vh - 48px)!important;
}
@media(max-width:1200px){
  .visual-builder-inverted .visual-preview-topbar,
  .visual-builder-inverted.builder-popout-open .visual-preview-topbar{
    grid-template-columns:1fr!important;
  }
  .visual-builder-inverted .visual-preview-controls,
  .visual-builder-inverted.builder-popout-open .visual-preview-controls{
    grid-template-columns:1fr!important;
  }
  .visual-builder-inverted .preview-device-tabs{min-width:0!important;}
}

/* v299: explicit database and template snapshot save feedback */
.visual-builder-inverted .canvas-floating-bar #builderSelectionStatus{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.visual-builder-inverted .canvas-floating-bar #builderCanvasSave.is-saving{
  opacity:.78;
  cursor:progress;
}
.visual-builder-inverted .clean-builder-form [data-public-builder-save].has-unsaved,
.visual-builder-inverted .canvas-floating-bar #builderCanvasSave.has-unsaved{
  outline:2px solid rgba(255,138,28,.45);
  outline-offset:2px;
}

/* v300: draggable public navigation order */
.nav-visibility-row {
  grid-template-columns: auto auto minmax(0, 1fr) auto;
}
.nav-drag-handle {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 10px;
  background: #f8fafc;
  color: #64748b;
  cursor: grab;
  font-weight: 900;
  line-height: 1;
}
.nav-drag-handle:active { cursor: grabbing; }
.nav-visible-toggle { display: inline-flex; align-items: center; justify-content: center; }
.nav-visibility-row.is-dragging {
  opacity: .58;
  transform: scale(.99);
  border-color: rgba(245, 130, 32, .85);
  box-shadow: 0 16px 36px rgba(245, 130, 32, .20);
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (max-width: 720px) {
  .nav-visibility-row { grid-template-columns: auto auto minmax(0, 1fr); }
  .nav-visibility-state { grid-column: 3; justify-self: start; }
}

/* v302: custom template/theme pack upload catalog */
.pack-catalog-wrap{align-items:start;margin-top:18px}.pack-catalog-grid{display:grid;gap:12px}.pack-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.035)}.pack-card.custom{border-color:rgba(245,130,32,.32)}.pack-card strong{display:block}.pack-card small{display:block;color:var(--muted);font-weight:700;margin-top:2px}.pack-card p{margin:8px 0 0;color:var(--muted)}.pack-card img{width:92px;height:64px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.pack-card .danger.small{grid-column:1 / -1;justify-self:start;padding:8px 12px}.compact-help code{padding:2px 5px;border-radius:6px;background:rgba(0,0,0,.22);border:1px solid var(--line)}@media(max-width:800px){.pack-card{grid-template-columns:1fr}.pack-card img{width:100%;height:auto}}
.module-builder-actions{margin:0 0 14px;align-items:center}.builder-module-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.builder-module-actions .mini-preview-btn{min-height:30px}.builder-module-actions .icon-btn{width:34px;min-width:34px;padding:6px 0}.builder-module-actions .danger-soft{border-color:rgba(248,113,113,.45);color:#fecaca;background:rgba(127,29,29,.22)}.module-editor[draggable="true"]>summary{cursor:grab}.module-editor.dragging{opacity:.55;outline:2px dashed var(--accent,#f58220);outline-offset:4px}.visual-builder-inverted .builder-control-rail .module-builder-actions .muted{color:var(--admin-muted)!important}@media(max-width:900px){.builder-module-actions{justify-content:flex-start}.clean-builder-item>summary .builder-module-actions{grid-column:1}}
.starter-pack-downloads{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 16px;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035)}.starter-pack-downloads .muted{color:var(--muted);font-size:.92rem;line-height:1.35}.starter-pack-downloads .button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap}@media(max-width:800px){.starter-pack-downloads{align-items:stretch}.starter-pack-downloads .button{width:100%}}

/* v305 template/theme pack file editor */
.pack-file-picker{align-items:end;margin:10px 0 12px}
.code-editor{width:100%;min-height:360px;font-family:Consolas,Monaco,'Courier New',monospace;font-size:.88rem;line-height:1.5;tab-size:2;white-space:pre;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:16px;padding:14px;resize:vertical}
[data-pack-asset-status]{color:var(--muted);font-weight:700}
.pack-card small{display:block;word-break:break-word}
.pack-card img{max-height:120px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}

/* v333: Data Studio and cache maintenance cockpit */
.data-studio-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}
.data-collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.data-collection-card{display:grid;gap:6px;text-decoration:none;color:inherit;padding:18px;border:1px solid var(--admin-border,rgba(148,163,184,.25));border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,250,252,.78));box-shadow:0 14px 36px rgba(15,23,42,.08);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.data-collection-card:hover{transform:translateY(-2px);border-color:rgba(249,115,22,.38);box-shadow:0 20px 48px rgba(15,23,42,.12)}
.data-collection-card span,.data-collection-card small{color:var(--admin-muted,#64748b);font-weight:800}
.data-collection-card strong{font-size:2rem;line-height:1;color:var(--admin-text,#0f172a)}
.data-ops-panel{display:grid;gap:14px}
.data-readiness-list{margin:0;padding-left:18px;color:var(--admin-muted,#64748b);font-weight:700}
.data-readiness-list li{margin:8px 0}
.maintenance-cache-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.maintenance-cache-metrics div{padding:12px;border:1px solid var(--admin-border,rgba(148,163,184,.25));border-radius:14px;background:rgba(248,250,252,.74)}
.maintenance-cache-metrics strong{display:block;font-size:1.45rem;color:var(--admin-text,#0f172a);line-height:1}
.maintenance-cache-metrics span{display:block;margin-top:4px;color:var(--admin-muted,#64748b);font-weight:800;font-size:.86rem}
@media(max-width:1100px){.data-studio-layout{grid-template-columns:1fr}.data-collection-grid{grid-template-columns:1fr}.maintenance-cache-metrics{grid-template-columns:1fr}}

/* v338: paired expanded panes for the visual builder workspace */
.visual-builder-inverted{
  transition:grid-template-columns .34s cubic-bezier(.2,.8,.2,1), gap .34s cubic-bezier(.2,.8,.2,1), box-shadow .34s ease, transform .34s ease!important;
}
.visual-builder-inverted>.visual-live-preview-panel,
.visual-builder-inverted>.builder-control-rail{
  transition:flex-basis .34s cubic-bezier(.2,.8,.2,1), max-width .34s cubic-bezier(.2,.8,.2,1), opacity .22s ease, transform .34s cubic-bezier(.2,.8,.2,1), filter .34s ease!important;
}
.visual-builder-inverted .visual-preview-controls button.active,
.visual-builder-inverted .visual-preview-controls #builderPopoutToggle.active,
.visual-builder-inverted .visual-preview-controls #builderRailToggle.active{
  background:#0f172a!important;
  color:#fff!important;
  border-color:#0f172a!important;
  box-shadow:0 10px 24px rgba(15,23,42,.20)!important;
}
.visual-builder-inverted.builder-popout-open.is-preview-expanded{
  grid-template-columns:minmax(0,1fr)!important;
}
.visual-builder-inverted.builder-popout-open.is-preview-expanded>.visual-live-preview-panel{
  transform:translateX(0)!important;
  filter:none!important;
}
.visual-builder-inverted.builder-popout-open.is-preview-expanded>.builder-control-rail{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded{
  grid-template-columns:74px minmax(0,1fr)!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded>.visual-live-preview-panel{
  min-width:0!important;
  overflow:hidden!important;
  padding:8px!important;
  opacity:.92!important;
  filter:saturate(.88)!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded>.builder-control-rail{
  max-width:none!important;
  width:auto!important;
  height:calc(100vh - 48px)!important;
  max-height:calc(100vh - 48px)!important;
  overflow:auto!important;
  padding:0 2px 12px!important;
  transform:translateX(0)!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .canvas-quick-nav,
.visual-builder-inverted.builder-popout-open.is-controls-expanded .visual-preview-stage,
.visual-builder-inverted.builder-popout-open.is-controls-expanded .canvas-floating-bar{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .visual-preview-topbar{
  display:grid!important;
  grid-template-columns:1fr!important;
  height:100%!important;
  min-height:0!important;
  padding:10px 6px!important;
  place-items:center!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.96)!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .canvas-title-block{
  writing-mode:vertical-rl!important;
  transform:rotate(180deg)!important;
  gap:8px!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .canvas-title-block .eyebrow{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .canvas-title-block h2{
  font-size:13px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .visual-preview-controls{
  display:none!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-nav{
  position:sticky!important;
  top:0!important;
  z-index:22!important;
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) auto minmax(420px,auto)!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 18px 48px rgba(15,23,42,.14)!important;
}
.builder-control-header-actions{
  display:none;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
}
.builder-control-header-actions button{
  border:1px solid rgba(148,163,184,.42);
  border-radius:999px;
  background:#fff;
  color:#0f172a;
  font-weight:900;
  min-height:38px;
  padding:9px 14px;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(15,23,42,.06);
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}
.builder-control-header-actions button:hover,
.builder-control-header-actions button.active{
  transform:translateY(-1px);
  background:#0f172a;
  color:#fff;
  border-color:#0f172a;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-header-actions{
  display:flex!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .visual-builder-nav .builder-mode-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-rail>.panel{
  box-shadow:0 16px 44px rgba(15,23,42,.10)!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-form-grid{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
}
.visual-builder-inverted.builder-popout-open.is-controls-expanded .visual-surface{
  min-height:320px!important;
}
@media(max-width:980px){
  .visual-builder-inverted.builder-popout-open.is-controls-expanded,
  .visual-builder-inverted.builder-popout-open.is-preview-expanded{
    grid-template-columns:1fr!important;
  }
  .visual-builder-inverted.builder-popout-open.is-controls-expanded>.visual-live-preview-panel{
    display:none!important;
  }
  .visual-builder-inverted.builder-popout-open.is-controls-expanded>.builder-control-rail{
    display:flex!important;
    height:calc(100vh - 24px)!important;
    max-height:calc(100vh - 24px)!important;
  }
  .visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-nav{
    grid-template-columns:1fr!important;
  }
  .visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-header-actions{
    justify-content:stretch!important;
  }
  .visual-builder-inverted.builder-popout-open.is-controls-expanded .builder-control-header-actions button{
    flex:1 1 160px!important;
  }
}


.customer-directory-card .avatar-initials,
.customer-directory-modal .avatar-initials,
.client-editor-avatar.avatar-initials{background:linear-gradient(135deg,rgba(255,138,0,.22),rgba(69,195,245,.16));border:1px solid var(--border);color:var(--text);display:grid;place-items:center;font-weight:900}
.customer-directory-card img.avatar,
.customer-directory-modal img.avatar,
img.client-editor-avatar{object-fit:cover;background:transparent;color:transparent}

/* v409 chat database and moderation controls */
.chat-admin-review-grid {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(260px, 1.1fr);
  gap: 16px;
  align-items: start;
}
.chat-admin-review-grid h3,
.chat-admin-history h3 {
  margin: 0 0 8px;
}
.chat-admin-review-grid .admin-list.compact {
  display: grid;
  gap: 8px;
  max-height: 360px;
  overflow: auto;
}
.chat-admin-review-grid .list-row {
  width: 100%;
  display: grid;
  gap: 3px;
  text-align: left;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 14px;
  padding: 10px 12px;
  background: rgba(15, 23, 42, .72);
  color: #e5edf6;
}
.chat-admin-review-grid .list-row:hover,
.chat-admin-review-grid .list-row:focus-visible {
  border-color: rgba(245, 130, 32, .7);
  box-shadow: 0 0 0 3px rgba(245, 130, 32, .14);
}
.chat-admin-review-grid .list-row span {
  color: #aebdcb;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.chat-admin-history {
  margin-top: 16px;
  border-top: 1px solid rgba(148, 163, 184, .22);
  padding-top: 16px;
}
.chat-admin-message-list {
  display: grid;
  gap: 10px;
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}
.chat-admin-message {
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: 14px;
  background: rgba(2, 6, 23, .38);
  padding: 10px 12px;
}
.chat-admin-message header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #dbeafe;
  font-size: 12px;
}
.chat-admin-message p {
  margin: 8px 0 4px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.chat-admin-message blockquote {
  margin: 8px 0;
  padding: 8px 10px;
  border-left: 3px solid #f58220;
  background: rgba(245, 130, 32, .12);
  border-radius: 10px;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.chat-admin-message footer,
.chat-admin-message small {
  display: block;
  color: #aebdcb;
  font-size: 12px;
  margin-top: 6px;
}
.danger-text { color: #fecaca; }
@media (max-width: 900px) {
  .chat-admin-review-grid { grid-template-columns: 1fr; }
}

/* v415: HR/legal chat review reads like a conversation and shows media inline. */
.chat-admin-message-list.conversation-view {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-height: 640px;
  overflow: auto;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 18px;
  background: rgba(2, 6, 23, .28);
}
.chat-admin-message-list.conversation-view .chat-admin-message {
  border: 0;
  background: transparent;
  padding: 0;
  display: flex;
  width: 100%;
}
.chat-admin-message-list.conversation-view .chat-admin-message.left { justify-content: flex-start; }
.chat-admin-message-list.conversation-view .chat-admin-message.right { justify-content: flex-end; }
.chat-admin-bubble {
  max-width: min(72%, 620px);
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 18px;
  padding: 10px 12px;
  background: rgba(36, 59, 75, .92);
  color: #e5edf6;
  box-shadow: 0 10px 22px rgba(0,0,0,.16);
}
.chat-admin-message.right .chat-admin-bubble {
  background: linear-gradient(135deg, rgba(245, 130, 32, .96), rgba(205, 129, 38, .92));
  border-color: rgba(251, 146, 60, .45);
  color: #fff7ed;
}
.chat-admin-message.deleted .chat-admin-bubble {
  border-color: rgba(248,113,113,.4);
  box-shadow: inset 0 0 0 1px rgba(248,113,113,.08), 0 10px 22px rgba(0,0,0,.16);
}
.chat-admin-bubble header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
  font-size: 12px;
  color: inherit;
  opacity: .9;
}
.chat-admin-bubble p { margin: 8px 0 4px; white-space: pre-wrap; overflow-wrap: anywhere; }
.chat-admin-bubble blockquote {
  margin: 8px 0;
  padding: 8px 10px;
  border-left: 3px solid rgba(255,255,255,.75);
  background: rgba(2, 6, 23, .24);
  border-radius: 10px;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.chat-admin-attachment {
  display: grid;
  gap: 6px;
  margin-top: 8px;
  padding: 8px;
  border-radius: 12px;
  background: rgba(2, 6, 23, .24);
  overflow-wrap: anywhere;
}
.chat-admin-attachment a { color: inherit; font-weight: 800; }
.chat-admin-attachment span { font-size: 12px; opacity: .82; }
.chat-admin-media-link { display: block; }
.chat-admin-media {
  display: block;
  width: auto;
  max-width: min(360px, 100%);
  max-height: 320px;
  border-radius: 12px;
  object-fit: contain;
  background: rgba(0,0,0,.18);
}
.chat-admin-audio { width: min(360px, 100%); }
.chat-admin-bubble footer { margin-top: 8px; font-size: 13px; opacity: .9; }
@media (max-width: 900px) {
  .chat-admin-bubble { max-width: 92%; }
  .chat-admin-media { max-width: 100%; }
}

/* v419: consolidated admin navigation, Payroll Center, and module database posture */

.finance-table{overflow:auto;border:1px solid rgba(125,211,252,.18);border-radius:14px}
.finance-table table{width:100%;border-collapse:collapse}
.finance-table th,.finance-table td{padding:10px 12px;border-bottom:1px solid rgba(125,211,252,.12);text-align:left;vertical-align:middle}
.finance-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#bfe8ff}
.finance-table td{color:#eef7ff}
.finance-status{border-color:rgba(125,211,252,.35);background:#102a39;color:#dff6ff}
.finance-status.status-paid,.finance-status.status-approved{border-color:#22c55e;background:rgba(34,197,94,.15);color:#bbf7d0}
.finance-status.status-overdue,.finance-status.status-rejected,.finance-status.status-void{border-color:#fb7185;background:rgba(251,113,133,.15);color:#fecdd3}
.finance-status.status-pending_approval,.finance-status.status-scheduled_for_payment,.finance-status.status-partially_paid{border-color:#f59e0b;background:rgba(245,158,11,.16);color:#fde68a}
.finance-bars{display:grid;gap:10px}
.finance-bars div{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:10px}
.finance-bars span{color:#d8ecff;font-weight:700}
.finance-bars b{display:block;height:12px;border-radius:999px;background:#27a9d7;min-width:6px}
.finance-bars strong{font-size:.9rem;color:#fff}
.finance-vendor-list button{width:100%;text-align:left}
.finance-drawer .admin-modal-card{max-height:88vh;overflow:auto}
.admin-fresh .admin-side nav .nav-group{margin-bottom:10px;}
.admin-fresh .admin-side nav .nav-group>span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.72;}
.payroll-settings-panel .check-card,
#payrollEncryptionForm .check-card{margin:6px 0;}
#payrollPermRows input{width:100%;min-width:160px;}
#payrollPermRows .check-card.compact{padding:6px 8px;margin:0;justify-content:flex-start;}
.module-database-list span{overflow-wrap:anywhere;}
.database-migration-panel summary h2{margin:0;}
.payroll-profile-grid{align-items:start;}
@media(max-width:900px){#payrollPermRows input{min-width:120px}.payroll-profile-grid{grid-template-columns:1fr!important}}

/* v424: admin-wide space optimization and compact visual-builder chrome */
.admin-main{
  padding:18px clamp(14px,2.2vw,34px)!important;
}
.admin-view{
  max-width:1740px!important;
}
.page-head{
  align-items:center!important;
  gap:14px!important;
  margin:0 0 14px!important;
  padding:0!important;
}
.page-head h1{
  margin:2px 0 3px!important;
  font-size:clamp(1.45rem,2.1vw,2.35rem)!important;
  line-height:1.05!important;
}
.page-head p{
  font-size:.92rem!important;
  line-height:1.35!important;
  max-width:920px!important;
}
.page-head span,
.panel-head span,
.visual-preview-topbar .eyebrow{
  font-size:.68rem!important;
  letter-spacing:.075em!important;
}
.metrics{
  gap:10px!important;
  margin:0 0 14px!important;
}
.metric{
  padding:13px 14px!important;
  border-radius:13px!important;
}
.metric strong{
  font-size:1.55rem!important;
}
.workspace{
  gap:14px!important;
  grid-template-columns:minmax(0,1fr) 360px!important;
}
.workspace-main,.workspace-side{
  gap:14px!important;
}
.panel{
  padding:14px!important;
  border-radius:14px!important;
}
.panel-head{
  align-items:center!important;
  gap:10px!important;
  margin:0 0 10px!important;
}
.panel h2,.panel-head h2{
  font-size:1rem!important;
}
.action-grid,.records,.check-list,.record-list{
  gap:8px!important;
}
.action-card{
  min-height:70px!important;
  padding:12px!important;
  border-radius:12px!important;
}
.record-row,.records a,.check-list div,.brand-list div{
  padding:9px 10px!important;
  border-radius:10px!important;
}
button,.btn{
  min-height:36px!important;
  padding:8px 12px!important;
  border-radius:10px!important;
}
input,select,textarea{
  min-height:36px;
}

/* Visual builder: keep the preview toolbar and jump nav dense on desktop. */
.visual-builder-inverted .visual-preview-topbar,
.visual-preview-topbar.canvas-topbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:10px 14px!important;
}
.visual-builder-inverted .canvas-title-block,
.canvas-title-block{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:max-content!important;
}
.visual-builder-inverted .canvas-title-block h2,
.canvas-title-block h2,
.visual-builder-inverted .visual-preview-topbar h2{
  font-size:18px!important;
  line-height:1.1!important;
  margin:0!important;
  white-space:nowrap!important;
}
.visual-builder-inverted .visual-preview-topbar .eyebrow,
.visual-preview-topbar .eyebrow{
  margin:0!important;
  padding:4px 8px!important;
  white-space:nowrap!important;
}
.visual-builder-inverted .visual-preview-controls,
.visual-preview-controls.canvas-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  min-width:0!important;
}
.visual-builder-inverted .visual-preview-controls select,
.visual-preview-controls.canvas-controls select{
  width:250px!important;
  max-width:28vw!important;
  min-height:34px!important;
}
.visual-builder-inverted .preview-device-tabs,
.preview-device-tabs{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  min-width:0!important;
  padding:3px!important;
  border-radius:12px!important;
}
.visual-builder-inverted .preview-device-tabs button,
.preview-device-tabs button{
  min-height:30px!important;
  padding:6px 9px!important;
  border-radius:9px!important;
  font-size:12px!important;
}
.visual-builder-inverted .visual-preview-controls button,
.visual-builder-inverted .visual-preview-controls .btn,
.visual-preview-controls.canvas-controls button,
.visual-preview-controls.canvas-controls .btn{
  min-height:34px!important;
  padding:7px 11px!important;
  white-space:nowrap!important;
}
.canvas-quick-nav{
  gap:6px!important;
  padding:7px 10px!important;
  min-height:42px!important;
}
.canvas-quick-nav button{
  padding:5px 9px!important;
  min-height:30px!important;
  font-size:12px!important;
}
.canvas-quick-nav strong{
  font-size:11px!important;
}
.visual-builder-inverted .visual-preview-stage,
.visual-preview-stage{
  padding:8px!important;
  min-height:calc(100vh - 185px)!important;
}
.visual-builder-inverted .inline-stage{
  padding:8px!important;
}
.visual-builder-inverted .inline-visual-browser,
.inline-visual-browser{
  border-radius:14px!important;
  min-height:calc(100vh - 222px)!important;
}
.visual-builder-inverted .inline-visual-address,
.inline-visual-address{
  min-height:34px!important;
  padding:6px 12px!important;
}
.canvas-floating-bar{
  padding:7px 10px!important;
}
.canvas-floating-bar button{
  min-height:32px!important;
}

/* Compact common admin form/list headers. */
.admin-view .editor-pane,
.admin-view .clean-section,
.admin-view .settings-layout,
.admin-view .admin-directory-panel,
.admin-view .customer-directory-card{
  border-radius:14px!important;
}
.admin-view .compact-builder-nav,
.admin-view .visual-builder-nav{
  padding:10px 12px!important;
  border-radius:14px!important;
}
.admin-view .builder-mode-tabs,
.admin-view .page-builder-tabs.compact{
  gap:6px!important;
  margin-top:6px!important;
}
.admin-view .builder-mode-tabs button,
.admin-view .page-builder-tabs.compact button{
  min-height:32px!important;
  padding:6px 10px!important;
}

@media(max-width:1180px){
  .workspace{grid-template-columns:1fr!important;}
  .visual-builder-inverted .visual-preview-topbar,
  .visual-preview-topbar.canvas-topbar{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .visual-builder-inverted .visual-preview-controls,
  .visual-preview-controls.canvas-controls{
    justify-content:flex-start!important;
  }
  .visual-builder-inverted .visual-preview-controls select,
  .visual-preview-controls.canvas-controls select{
    width:100%!important;
    max-width:none!important;
  }
}
@media(max-width:760px){
  .admin-main{padding:12px!important;}
  .page-head{align-items:flex-start!important;flex-direction:column!important;}
  .metrics{grid-template-columns:1fr!important;}
  .canvas-title-block{align-items:flex-start!important;flex-direction:column!important;gap:5px!important;}
  .visual-preview-controls.canvas-controls button,
  .visual-preview-controls.canvas-controls .btn,
  .preview-device-tabs,
  .preview-device-tabs button{width:100%!important;}
}

/* v459 Time Clock admin */
.exception-list{display:grid;gap:.6rem;margin-top:.75rem}.data-table.compact td,.data-table.compact th{padding:.45rem .55rem}.schedule-settings-panel small{display:block;color:var(--muted,#64748b);margin-top:.15rem}

.time-clock-open-exceptions{margin-top:.75rem}.time-clock-open-exceptions>summary{padding:.55rem .75rem}.time-clock-open-exceptions .table-wrap.compact-scroll{max-height:260px;overflow:auto;margin-top:.5rem}.time-clock-exceptions-table td,.time-clock-exceptions-table th{font-size:.86rem;line-height:1.25}.time-clock-exceptions-table td:nth-child(3){max-width:520px;white-space:normal}.panel.compact-panel{padding:.15rem}

/* v466 PTO accrual admin views */
.admin-pto-balances{border-color:rgba(34,197,94,.35);}
.admin-pto-balances summary small{color:#bbf7d0;}
.compact-table-wrap{max-height:320px;overflow:auto;border:1px solid rgba(148,163,184,.25);border-radius:12px;}
.compact-table{width:100%;border-collapse:collapse;}
.compact-table th,.compact-table td{padding:8px 10px;border-bottom:1px solid rgba(148,163,184,.18);text-align:left;}
.compact-table th{position:sticky;top:0;background:rgba(15,23,42,.95);z-index:1;}

/* v468 scheduling workflow panels */
.compact-panel .compact-scroll{max-height:320px;overflow:auto}
.schedule-admin-panel .data-table.compact td,.schedule-admin-panel .data-table.compact th{padding:.42rem .5rem}

/* v474 workforce scheduling control center */
.schedule-top-metrics{margin-bottom:18px}
.schedule-admin-panel .section-head{gap:20px;align-items:flex-start}
.schedule-admin-controls{background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:12px}
.schedule-admin-controls label{display:flex;flex-direction:column;gap:6px}
.schedule-week-board{margin-top:18px}
.schedule-day{display:flex;flex-direction:column;gap:8px;min-height:200px}
.schedule-day h3{position:sticky;top:0;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.2)}
.schedule-shift-card{margin:0;gap:5px}
.schedule-operations-center{display:grid;gap:18px}
.schedule-ops-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.schedule-ops-head h2{margin:0 0 6px}
.schedule-publish-box{min-width:280px;display:grid;gap:8px;border:1px solid rgba(148,163,184,.25);border-radius:16px;padding:12px;background:rgba(15,23,42,.2)}
.schedule-publish-box>div{display:flex;gap:8px;flex-wrap:wrap}
.schedule-status-pill{display:inline-flex;width:max-content;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:rgba(245,158,11,.14);color:#fbbf24}
.schedule-status-pill.published{background:rgba(34,197,94,.16);color:#4ade80}
.schedule-admin-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px}
.schedule-admin-kpis article{display:grid;gap:4px;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:12px;background:rgba(148,163,184,.06)}
.schedule-admin-kpis strong{font-size:1.45rem}.schedule-admin-kpis span{color:var(--muted,#64748b);font-size:.86rem}
.schedule-admin-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px;align-items:start}
.schedule-tool-card{border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:12px;background:rgba(148,163,184,.04)}
.schedule-tool-card.wide{grid-column:1/-1}.schedule-tool-card summary{cursor:pointer;font-weight:800;margin-bottom:10px}.schedule-tool-card summary small{display:block;font-weight:500;color:var(--muted,#64748b);margin-top:3px}
.schedule-mini-form{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:10px;margin:12px 0 16px}.schedule-mini-form label,.schedule-form.compact-grid label{display:flex;flex-direction:column;gap:6px;min-width:0}.schedule-mini-form .wide{grid-column:1/-1}.schedule-form-heading{margin:12px 0 0;padding:8px 0;border-bottom:1px solid rgba(148,163,184,.2);font-size:1rem}
.schedule-record-list{display:grid;gap:8px}.schedule-record-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid rgba(148,163,184,.18);border-radius:12px}.schedule-record-list article div{display:grid;gap:4px}.schedule-record-list article div:last-child{display:flex;gap:6px;align-items:center}.schedule-record-list small{color:var(--muted,#64748b)}
.schedule-row-actions{display:flex;gap:6px;white-space:nowrap}.schedule-correction-actions{display:flex!important;flex-wrap:wrap;justify-content:flex-end}.schedule-correction-actions input{min-width:180px}.punch-editor{margin:16px 0}.raw-punches{margin-top:14px}
@media(max-width:1100px){.schedule-admin-tool-grid{grid-template-columns:1fr}.schedule-ops-head{flex-direction:column}.schedule-publish-box{min-width:0;width:100%}.schedule-admin-kpis{grid-template-columns:repeat(2,minmax(130px,1fr))}}
@media(max-width:700px){.schedule-admin-kpis,.schedule-mini-form{grid-template-columns:1fr}.schedule-record-list article{align-items:flex-start;flex-direction:column}.schedule-correction-actions{justify-content:flex-start}}

/* v475 payroll administration command center */
.payroll-command-center{display:grid;gap:16px}.payroll-metrics{grid-template-columns:repeat(6,minmax(110px,1fr))}
.payroll-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px}.payroll-hero>div:first-child>span{color:var(--muted,#64748b);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.payroll-hero h2{margin:8px 0 5px;font-size:1.55rem}.payroll-hero p{margin:0;color:var(--muted,#64748b)}
.payroll-hero-stats{display:flex;gap:12px;align-items:stretch}.payroll-hero-stats>div{min-width:122px;display:grid;align-content:center;gap:7px;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:12px;background:rgba(148,163,184,.06)}.payroll-hero-stats strong{font-size:1.18rem}.payroll-hero-stats small{color:var(--muted,#64748b)}
.payroll-layout{display:grid;grid-template-columns:minmax(520px,1.55fr) minmax(360px,1fr);gap:16px;align-items:start}.payroll-layout main,.payroll-layout aside{display:grid;gap:16px}
.payroll-pill{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:800;line-height:1;letter-spacing:.05em;text-transform:uppercase;background:rgba(59,130,246,.14);color:#60a5fa}.payroll-pill.ok{background:rgba(34,197,94,.16);color:#4ade80}.payroll-pill.warn{background:rgba(245,158,11,.17);color:#fbbf24}.payroll-pill.danger{background:rgba(239,68,68,.15);color:#f87171}
.payroll-run-list{display:grid;gap:8px;margin-bottom:14px}.payroll-run-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:12px;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:9px 12px}.payroll-run-row.selected{border-color:rgba(59,130,246,.5);background:rgba(59,130,246,.07)}.payroll-run-row button{padding:0;background:transparent;border:0;text-align:left;display:grid;gap:4px;color:inherit}.payroll-run-row button strong{font-size:.94rem}.payroll-run-row button span{color:var(--muted,#64748b);font-size:.82rem}.payroll-run-row>b{font-size:.95rem}
.payroll-editor{margin-top:12px;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:12px}.payroll-editor summary{cursor:pointer;font-weight:800}.payroll-run-form{display:grid;gap:12px;margin-top:14px}.payroll-run-form label,.payroll-policy-form label{display:flex;flex-direction:column;gap:6px}.payroll-policy-form{display:grid;gap:12px}.payroll-policy-form h3{font-size:.93rem;margin:10px 0 0;padding-top:10px;border-top:1px solid rgba(148,163,184,.2)}.payroll-policy-form h3:first-child{margin-top:0;border-top:0;padding-top:0}
.payroll-checklist{display:grid;gap:9px;margin-top:14px}.payroll-checklist article{border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:11px;display:grid;gap:10px}.payroll-checklist article>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.payroll-checklist article>div small{margin-left:auto;color:var(--muted,#64748b)}.payroll-checklist form{display:grid;grid-template-columns:125px minmax(145px,1fr) minmax(160px,1.3fr) auto;gap:7px}
.payroll-cases{display:grid;gap:11px;margin-top:13px}.payroll-case{border:1px solid rgba(148,163,184,.2);border-radius:15px;padding:12px;display:grid;gap:10px}.payroll-case header>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.payroll-case h3{margin:0;font-size:1rem}.payroll-case header p{flex-basis:100%;color:var(--muted,#64748b);font-size:.84rem;margin:1px 0 0}.payroll-case-body{margin:0;font-size:.9rem}.payroll-case-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}.payroll-case-form .wide{grid-column:1/4}
.payroll-settings-panel .grid-2,.payroll-settings-panel .grid-3{align-items:end}.payroll-documents,.payroll-audit{max-height:260px;overflow:auto}.payroll-documents div,.payroll-audit div{gap:5px}.payroll-db-note{display:grid;gap:8px;margin-top:14px;border-top:1px solid rgba(148,163,184,.2);padding-top:12px}.payroll-db-note span{color:var(--muted,#64748b);font-size:.84rem}
@media(max-width:1280px){.payroll-layout{grid-template-columns:1fr}.payroll-metrics{grid-template-columns:repeat(3,minmax(130px,1fr))}}
@media(max-width:850px){.payroll-hero{align-items:flex-start;flex-direction:column}.payroll-hero-stats{width:100%;flex-wrap:wrap}.payroll-hero-stats>div{flex:1}.payroll-checklist form,.payroll-case-form{grid-template-columns:1fr}.payroll-case-form .wide{grid-column:auto}}
@media(max-width:650px){.payroll-metrics{grid-template-columns:1fr}.payroll-run-row{grid-template-columns:1fr}.payroll-hero-stats>div{min-width:100%}}

/* v478 schedule conflict drilldown and refresh controls */
.schedule-week-nav{
  display:flex;
  align-items:end;
  gap:.5rem;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.schedule-warning-panel{
  margin:1rem 0;
}
.schedule-warning-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:.65rem;
  margin:.75rem 0 1rem;
}
.schedule-warning-grid.nested{
  margin-top:.75rem;
}
.schedule-warning-card{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:.75rem;
  border:1px solid rgba(148,163,184,.25);
  border-left:4px solid #eab308;
  background:rgba(15,23,42,.72);
  border-radius:12px;
  padding:.75rem;
  cursor:pointer;
}
.schedule-warning-card.danger,
.schedule-warning-card.block{
  border-left-color:#ef4444;
}
.schedule-warning-card:hover,
.schedule-warning-card:focus{
  outline:2px solid rgba(59,130,246,.7);
  outline-offset:2px;
}
.schedule-warning-card p{
  margin:.25rem 0;
}
.schedule-warning-card small{
  color:#bae6fd;
}
.schedule-warning-more{
  border:1px dashed rgba(148,163,184,.35);
  border-radius:12px;
  padding:.75rem;
  background:rgba(15,23,42,.55);
}
.schedule-warning-more summary{
  cursor:pointer;
  font-weight:700;
  color:#bae6fd;
}
.schedule-conflict-table{
  margin-top:1rem;
}
.schedule-conflict-day-hit{
  outline:2px solid rgba(250,204,21,.65);
  outline-offset:3px;
}
.schedule-conflict-blink{
  animation:scheduleConflictBlink .75s ease-in-out 3;
  position:relative;
  z-index:2;
}
@keyframes scheduleConflictBlink{
  0%,100%{box-shadow:0 0 0 0 rgba(250,204,21,0); transform:scale(1);}
  35%{box-shadow:0 0 0 5px rgba(250,204,21,.95),0 0 20px rgba(250,204,21,.55); transform:scale(1.025);}
  70%{box-shadow:0 0 0 2px rgba(250,204,21,.55),0 0 12px rgba(250,204,21,.35);}
}


/* v486 Users & Roles labor profile tidy-up */
.bulk-editor{
  grid-template-columns:minmax(170px,.9fr) minmax(190px,.8fr) minmax(280px,1.2fr) minmax(170px,.8fr) minmax(260px,1fr);
}
.bulk-labor-editor{
  grid-column:1/-1;
  border:1px solid rgba(15,23,42,.09);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(248,250,252,.96), rgba(255,255,255,.96));
  padding:0;
  overflow:hidden;
}
.bulk-labor-editor summary,
.labor-profile-settings summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  padding:12px 14px;
  font-weight:900;
}
.bulk-labor-editor summary small,
.labor-profile-settings summary small{
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  text-transform:none;
}
.bulk-labor-mode{display:block;margin:0 14px 12px;max-width:340px}
.labor-profile-card{display:grid;gap:12px;padding:0 14px 14px}
.labor-profile-grid{display:grid;gap:10px}
.labor-profile-grid.core{grid-template-columns:repeat(4,minmax(135px,1fr))}
.labor-profile-grid.flags{grid-template-columns:repeat(3,minmax(135px,1fr))}
.labor-profile-card label{font-size:.84rem;font-weight:900;color:#0f172a}
.labor-profile-card input,.labor-profile-card select{margin-top:4px}
.labor-note{display:block}
.role-badges .labor-badge{background:#fff7ed;color:#9a3412;border:1px solid rgba(251,146,60,.28)}
.user-row .role-badges{max-height:58px;overflow:auto;padding-right:2px}
@media(max-width:1180px){
  .labor-profile-grid.core{grid-template-columns:repeat(2,minmax(150px,1fr))}
  .labor-profile-grid.flags{grid-template-columns:repeat(2,minmax(150px,1fr))}
}
@media(max-width:760px){
  .labor-profile-grid.core,.labor-profile-grid.flags{grid-template-columns:1fr}
  .bulk-labor-editor summary,.labor-profile-settings summary{align-items:flex-start;flex-direction:column}
}


/* v487 Users & Roles layout cleanup */
#bulkAccessForm.bulk-editor{
  display:grid!important;
  grid-template-columns:minmax(150px,.75fr) minmax(190px,.8fr) minmax(180px,.75fr) minmax(290px,1fr)!important;
  gap:12px!important;
  align-items:end!important;
}
#bulkAccessForm.bulk-editor > div:first-child{
  grid-column:1;
  grid-row:1;
  min-width:0;
}
#bulkAccessForm.bulk-editor > div:first-child .muted{
  display:block;
  max-width:210px;
  line-height:1.28;
}
#bulkAccessForm.bulk-editor > label:nth-of-type(1){
  grid-column:2;
  grid-row:1;
  min-width:0;
}
#bulkAccessForm.bulk-editor > label:nth-of-type(2){
  grid-column:3;
  grid-row:1;
  min-width:0;
}
#bulkAccessForm.bulk-editor > .bulk-actions{
  grid-column:4;
  grid-row:1;
  display:flex;
  justify-content:flex-end;
  align-items:end;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
}
#bulkAccessForm.bulk-editor > .role-pills{
  grid-column:1/-1;
  grid-row:2;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(132px,max-content));
  align-items:center;
  gap:8px;
  padding:4px 0 0;
}
#bulkAccessForm.bulk-editor > .role-pills label{
  justify-content:flex-start;
  margin:0;
  white-space:nowrap;
}
#bulkAccessForm.bulk-editor > .bulk-labor-editor{
  grid-column:1/-1;
  grid-row:3;
  margin-top:2px;
}
#bulkAccessForm .bulk-labor-mode{
  max-width:360px;
}
#bulkAccessForm .labor-profile-grid.core{
  grid-template-columns:repeat(4,minmax(150px,1fr));
}
#bulkAccessForm .labor-profile-grid.flags{
  grid-template-columns:repeat(6,minmax(130px,1fr));
}
.workspace-side,
.workspace-side .editor-pane,
.workspace-side .editor-form,
.workspace-side .subsettings,
.workspace-side .labor-profile-settings,
.workspace-side .labor-profile-card{
  min-width:0;
  max-width:100%;
  overflow-x:hidden;
}
.workspace-side .profile-head{
  grid-template-columns:54px minmax(0,1fr);
}
.workspace-side .profile-head div,
.workspace-side .profile-head h2,
.workspace-side .profile-head p{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.workspace-side .labor-profile-settings summary{
  align-items:flex-start;
  flex-direction:column;
  gap:4px;
}
.workspace-side .labor-profile-settings summary small{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.workspace-side .labor-profile-settings .compact-help{
  margin:0 0 10px;
  padding:0 12px;
  line-height:1.35;
}
.workspace-side .labor-profile-card{
  padding:0 12px 12px;
  gap:10px;
}
.workspace-side .labor-profile-grid.core,
.workspace-side .labor-profile-grid.flags{
  grid-template-columns:1fr!important;
  gap:8px;
}
.workspace-side .labor-profile-card label{
  min-width:0;
  width:100%;
}
.workspace-side .labor-profile-card input,
.workspace-side .labor-profile-card select{
  width:100%;
  min-width:0;
}
.workspace-side .user-editor fieldset{
  min-width:0;
}
.workspace-side .user-editor .role-pills{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
}
.workspace-side .user-editor .role-pills label{
  width:100%;
  justify-content:flex-start;
}
@media(max-width:1280px){
  #bulkAccessForm.bulk-editor{
    grid-template-columns:1fr 1fr!important;
  }
  #bulkAccessForm.bulk-editor > div:first-child,
  #bulkAccessForm.bulk-editor > label:nth-of-type(1),
  #bulkAccessForm.bulk-editor > label:nth-of-type(2),
  #bulkAccessForm.bulk-editor > .bulk-actions,
  #bulkAccessForm.bulk-editor > .role-pills,
  #bulkAccessForm.bulk-editor > .bulk-labor-editor{
    grid-column:auto;
    grid-row:auto;
  }
  #bulkAccessForm.bulk-editor > .role-pills,
  #bulkAccessForm.bulk-editor > .bulk-labor-editor{
    grid-column:1/-1;
  }
  #bulkAccessForm.bulk-editor > .bulk-actions{
    justify-content:flex-start;
  }
  #bulkAccessForm .labor-profile-grid.core,
  #bulkAccessForm .labor-profile-grid.flags{
    grid-template-columns:repeat(2,minmax(150px,1fr));
  }
}
@media(max-width:760px){
  #bulkAccessForm.bulk-editor{
    grid-template-columns:1fr!important;
  }
  #bulkAccessForm.bulk-editor > .role-pills{
    grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  }
  #bulkAccessForm .labor-profile-grid.core,
  #bulkAccessForm .labor-profile-grid.flags{
    grid-template-columns:1fr;
  }
}

/* v488 workforce profiles and filtered bulk operations */
.workforce-profile-card{gap:10px}
.labor-profile-primary{display:grid;grid-template-columns:minmax(190px,1.5fr) minmax(140px,.8fr);gap:10px}
.labor-profile-advanced{border:1px solid rgba(148,163,184,.24);border-radius:12px;background:rgba(248,250,252,.72);padding:0 10px 10px}
.labor-profile-advanced summary{cursor:pointer;padding:10px 0;font-size:.82rem;font-weight:850;color:var(--muted,#64748b)}
.labor-profile-advanced .labor-profile-grid{margin-top:8px}
#bulkAccessForm .workforce-profile-card{padding-top:4px}
#bulkAccessForm .bulk-actions button{white-space:nowrap}
#selectFilteredUsers{border-color:rgba(37,99,235,.34);background:rgba(37,99,235,.06);color:#1d4ed8}
.payroll-workforce-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 12px}
.payroll-workforce-kpis div{display:grid;gap:3px;border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:10px;background:rgba(148,163,184,.05)}
.payroll-workforce-kpis strong{font-size:1.3rem}.payroll-workforce-kpis span{font-size:.8rem;color:var(--muted,#64748b)}
.payroll-workforce-kpis .warn{border-color:rgba(245,158,11,.38);background:rgba(245,158,11,.08)}
.payroll-workforce-list{margin-bottom:12px;max-height:180px;overflow:auto}
.payroll-workforce-list div{gap:4px}
@media(max-width:1180px){
  .labor-profile-primary{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .labor-profile-primary,.payroll-workforce-kpis{grid-template-columns:1fr}
  #bulkAccessForm .bulk-actions button{width:100%}
}

/* v489 payroll operations, pay bands, and scoped access */
.payroll-job-list,.payroll-assignment-list{display:grid;gap:8px;margin:12px 0}
.payroll-job-row{display:grid;grid-template-columns:minmax(210px,1fr) auto auto;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:10px;background:rgba(148,163,184,.04);color:inherit}
.payroll-job-row strong,.payroll-assignment-row strong{font-size:.9rem}.payroll-job-row span,.payroll-assignment-row span{color:var(--muted,#64748b);font-size:.82rem}
.payroll-catalog-form,.payroll-assignment-form{margin-top:12px}
.payroll-assignment-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:10px;border:1px solid rgba(148,163,184,.18);border-radius:12px;padding:10px}
.payroll-import-panel textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem}
.payroll-report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 16px}
.payroll-report-kpis div{display:grid;gap:3px;border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:10px;background:rgba(148,163,184,.05)}
.payroll-report-kpis strong{font-size:1.3rem}.payroll-report-kpis span{font-size:.8rem;color:var(--muted,#64748b)}
.payroll-report-kpis .warn{border-color:rgba(245,158,11,.38);background:rgba(245,158,11,.08)}
.payroll-reports-panel h3{margin:15px 0 8px;font-size:.9rem}.payroll-report-exceptions{max-height:210px;overflow:auto}
.payroll-directory-mapping-panel .grid-2{align-items:end}
@media(max-width:760px){.payroll-job-row,.payroll-assignment-row,.payroll-report-kpis{grid-template-columns:1fr}}
/* v490 payroll timekeeping inputs and CSV setup */
.payroll-period-picker{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.payroll-period-picker label{display:grid;gap:5px;min-width:155px}
.payroll-input-table td strong,.payroll-input-table td small{display:block}
.payroll-input-table td small{margin-top:3px;color:var(--muted,#64748b);max-width:310px}
.payroll-bulk-card{border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:10px;margin-top:10px}
.payroll-bulk-card summary{font-weight:650;cursor:pointer;margin-bottom:8px}
.payroll-bulk-card[open] summary{margin-bottom:12px}

/* Payroll catalog inline editing and search refinements */
/* v504: searchable, paged payroll administration lists. */
.payroll-section-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin:.75rem 0 1rem;background:rgba(255,255,255,.94);backdrop-filter:blur(4px);padding:.5rem;border:1px solid #d9e3f0;border-radius:12px}
.payroll-section-toolbar input[type="search"]{flex:1 1 260px;min-width:220px;border:1px solid #b8c8dc;border-radius:10px;padding:.65rem .8rem;color:#0f2742;background:#fff}
.payroll-section-toolbar label{display:flex;align-items:center;gap:.4rem;color:#39516f;font-size:.82rem;font-weight:800;white-space:nowrap}
.payroll-section-toolbar select{min-width:70px;border:1px solid #b8c8dc;border-radius:9px;padding:.5rem .55rem;color:#0f2742;background:#fff}
.payroll-section-toolbar button{border:1px solid #b8c8dc;background:#fff;color:#14304d;border-radius:999px;padding:.5rem .75rem;font-weight:800}
.payroll-section-toolbar button:disabled{opacity:.45;cursor:not-allowed}
.payroll-section-toolbar span{white-space:nowrap;color:#39516f;font-size:.85rem;font-weight:700}
.payroll-bulk-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:.5rem 0 1rem;padding:.55rem .7rem;border:1px solid #dbe6f3;border-radius:12px;background:#f8fbff;color:#102a43}
.payroll-bulk-actions label{display:inline-flex;align-items:center;gap:.4rem;font-weight:700}
.payroll-job-list{display:grid;gap:.55rem}
.payroll-job-row{display:block;border:1px solid #bcd0e6;border-radius:12px;background:linear-gradient(180deg,#fff,#f7fbff);overflow:hidden}
.payroll-job-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.45rem .65rem}
.payroll-job-toggle{appearance:none;border:0;background:transparent;text-align:left;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center;width:100%;padding:.25rem;color:#0b2340;cursor:pointer}
.payroll-job-toggle strong{font-size:.95rem;line-height:1.15;color:#001b36}
.payroll-job-toggle span{font-size:.85rem;color:#2e4664;font-weight:700}
.payroll-select-box{display:flex;align-items:center;justify-content:center;margin:0}
.payroll-select-box input{width:1rem;height:1rem}
.payroll-job-inline-editor{border-top:1px solid #d6e3f0;background:#fff;padding:.9rem}
.payroll-job-inline-editor[hidden]{display:none!important}
.payroll-catalog-form{margin:0}
[data-payroll-filter-item][hidden]{display:none!important}
.payroll-input-table tr[data-payroll-admin-input-row][hidden],.payroll-input-table tr[data-payroll-admin-input-detail][hidden]{display:none!important}
.payroll-input-person{display:flex;flex-direction:row;align-items:center;gap:10px;text-align:left}
.payroll-input-person span{display:block;min-width:0}
.payroll-input-avatar{width:36px;height:36px;flex:0 0 36px;border-radius:999px;object-fit:cover}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width: 900px){.payroll-job-summary{grid-template-columns:auto 1fr}.payroll-job-summary .payroll-pill{grid-column:2}.payroll-job-toggle{grid-template-columns:1fr}}
@media (max-width: 700px){.payroll-section-toolbar input[type="search"]{flex-basis:100%}.payroll-section-toolbar span{order:4;width:100%}}

/* v517: keep longer role names inside their pill boundaries on bulk and user role editors. */
.role-pills label{
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  line-height:1.2;
}
.role-pills label input{
  flex:0 0 auto;
}
#bulkAccessForm.bulk-editor > .role-pills{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
}
#bulkAccessForm.bulk-editor > .role-pills label{
  width:100%;
  white-space:normal;
}
.workspace-side .user-editor .role-pills label{
  white-space:normal;
}


/* v520: Users & Roles polish. Keep payroll role mapping collapsed and tighten the right editor width. */
.collapsed-admin-panel > summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  cursor:pointer;
  list-style:none;
}
.collapsed-admin-panel > summary::-webkit-details-marker{display:none;}
.collapsed-admin-panel > summary::before{
  content:'▸';
  font-weight:900;
  color:var(--muted);
}
.collapsed-admin-panel[open] > summary::before{content:'▾';}
.collapsed-admin-panel > summary span{font-weight:900;color:var(--text);}
.collapsed-admin-panel > summary small{color:var(--muted);font-weight:800;text-align:right;}
.collapsed-admin-panel > form{margin-top:14px;}
@media (min-width:901px){
  .workspace.users-workspace{
    grid-template-columns:minmax(0,1fr) 320px!important;
  }
  .users-workspace .workspace-side{
    width:320px;
    max-width:320px;
  }
}
.users-workspace .workspace-side .editor-pane{
  padding:12px!important;
}
.users-workspace .workspace-side input,
.users-workspace .workspace-side select,
.users-workspace .workspace-side textarea{
  min-width:0;
}
.users-workspace .workspace-side .labor-profile-grid.core,
.users-workspace .workspace-side .labor-profile-grid.flags{
  grid-template-columns:1fr;
}

/* v552: admin-styled confirmation dialog for destructive mail queue actions */
.admin-confirm-backdrop{z-index:2147483000;background:rgba(2,8,23,.72);backdrop-filter:blur(8px)}
.admin-confirm-modal{width:min(560px,94vw);padding:26px;border-radius:24px;background:linear-gradient(145deg,var(--panel),var(--panel2));color:var(--text);border:1px solid var(--border);box-shadow:0 28px 90px rgba(0,0,0,.45)}
.admin-confirm-modal h2{margin:.35rem 0 .55rem;color:var(--text)}
.admin-confirm-modal .muted{color:var(--muted)!important;line-height:1.5}
.admin-confirm-modal .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;position:static;background:none;padding-top:0}
.mail-queue-tools{align-items:center;gap:10px;flex-wrap:wrap}.mail-queue-tools label{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:.9rem}.mail-queue-tools select{width:auto;min-width:76px}

/* v593: Users & Roles modal editor. Remove the cramped sticky right rail and use a wide landscape pop-out editor. */
.workspace.users-workspace{
  grid-template-columns:minmax(0,1fr)!important;
}
.users-workspace .workspace-main{
  width:100%;
}
.admin-user-editor-backdrop{
  align-items:center;
  justify-content:center;
  padding:24px 32px;
}
.admin-user-editor-modal{
  width:min(1180px,96vw)!important;
  max-height:90vh;
  overflow:auto!important;
  background:linear-gradient(145deg,#ffffff,#f7fbff)!important;
  color:#102033!important;
  border:1px solid rgba(15,23,42,.14)!important;
  box-shadow:0 30px 100px rgba(2,8,23,.42)!important;
  border-radius:24px!important;
  padding:24px 24px 0!important;
}
.admin-user-editor-modal .modal-close{
  position:sticky;
  top:0;
  margin-left:auto;
  z-index:5;
  background:#102033;
  color:#fff;
  border:1px solid rgba(15,23,42,.18);
  box-shadow:0 8px 24px rgba(2,8,23,.18);
}
.admin-user-editor-content,
.admin-user-editor-content .editor-form,
.admin-user-editor-content .subsettings,
.admin-user-editor-content .labor-profile-settings,
.admin-user-editor-content .labor-profile-card{
  min-width:0;
  max-width:100%;
}
.admin-user-editor-content .profile-head{
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  align-items:center;
  gap:14px;
  margin-top:-34px;
  padding-right:64px;
}
.admin-user-editor-content .profile-head img{
  width:64px;
  height:64px;
  border-radius:999px;
  object-fit:cover;
}
.admin-user-editor-content .profile-head h2,
.admin-user-editor-content .profile-head p{
  margin:0;
  color:#102033!important;
  overflow-wrap:anywhere;
}
.admin-user-editor-content .profile-head p,
.admin-user-editor-content .muted,
.admin-user-editor-content small{
  color:#54657a!important;
}
.admin-user-editor-content .form-grid.two,
.admin-user-editor-content .grid-2{
  grid-template-columns:repeat(2,minmax(220px,1fr));
}
.admin-user-editor-content .form-grid.three{
  grid-template-columns:repeat(3,minmax(180px,1fr));
}
.admin-user-editor-content .labor-profile-grid.core{
  grid-template-columns:repeat(3,minmax(180px,1fr));
}
.admin-user-editor-content .labor-profile-grid.flags{
  grid-template-columns:repeat(4,minmax(150px,1fr));
}
.admin-user-editor-content .role-pills{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:8px;
}
.admin-user-editor-content .role-pills label{
  width:100%;
  white-space:normal;
}
.admin-user-editor-content .check-list.compact{
  grid-template-columns:repeat(3,minmax(180px,1fr));
}
.admin-user-editor-content input,
.admin-user-editor-content select,
.admin-user-editor-content textarea{
  min-width:0;
  width:100%;
}
.admin-user-editor-content .form-actions{
  position:sticky;
  bottom:0;
  z-index:4;
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:10px;
  margin:18px -24px 0;
  padding:14px 24px max(14px, env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(247,251,255,.78),#f7fbff 42%);
  border-top:1px solid rgba(15,23,42,.10);
  border-radius:0 0 24px 24px;
  backdrop-filter:blur(8px);
}
@media (max-width:900px){
  .admin-user-editor-backdrop{align-items:flex-start;padding:12px;}
  .admin-user-editor-modal{width:100%!important;max-height:calc(100vh - 24px);padding:18px 18px 0!important;border-radius:18px!important;}
  .admin-user-editor-content .form-actions{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px;border-radius:0 0 18px 18px;}
  .admin-user-editor-content .profile-head{margin-top:-28px;grid-template-columns:52px minmax(0,1fr);padding-right:48px;}
  .admin-user-editor-content .profile-head img{width:52px;height:52px;}
  .admin-user-editor-content .form-grid.two,
  .admin-user-editor-content .form-grid.three,
  .admin-user-editor-content .grid-2,
  .admin-user-editor-content .labor-profile-grid.core,
  .admin-user-editor-content .labor-profile-grid.flags,
  .admin-user-editor-content .check-list.compact{grid-template-columns:1fr;}
}

/* v595: shared smart-table and operations queue polish */
.smart-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 14px}
.smart-table-toolbar input[type="search"]{min-width:260px;flex:1}
.smart-table-toolbar label{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--muted,#52637a);font-weight:700}
.smart-table-toolbar select{min-width:84px}
.smart-table-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px}
.status-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.055em;background:#e8eef7;color:#26364d;border:1px solid #cfd9e8}
.status-pill.ok{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.status-pill.info{background:#dbeafe;color:#1e40af;border-color:#bfdbfe}
.status-pill.warning{background:#fef3c7;color:#92400e;border-color:#fde68a}
.status-pill.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}
.action-center-panel .data-table td:nth-child(4){font-size:1.05rem}
.effective-access-viewer .check-list div span{overflow-wrap:anywhere}

/* v630: Messenger admin report links */
.chat-report-links{align-items:stretch}
.chat-report-links .btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;white-space:normal;text-align:center}
