/* Bounded Hub transitions and reusable Inventory tool layout. */
/* Route-rendered, table-sized floating workspaces share the centered utility
   language. No transform/filter/contain here: existing fixed utilities must keep
   their viewport containing block. Page controllers still initialize once. */
html body .wrap.hub-content-wrap.ff-centered-workspace{
  position:fixed!important;inset:var(--ff-workspace-top,104px) 24px 20px!important;
  width:auto!important;max-width:1800px!important;min-width:0!important;height:max-content!important;
  max-height:calc(100vh - var(--ff-workspace-top,104px) - 20px)!important;
  max-height:calc(100dvh - var(--ff-workspace-top,104px) - 20px)!important;
  margin:0 auto!important;padding:0 16px 20px!important;box-sizing:border-box!important;
  overflow:auto!important;overscroll-behavior:contain;z-index:99980!important;
  background:#101113!important;border:1px solid #3e4146!important;border-radius:14px!important;
  box-shadow:0 22px 70px rgba(0,0,0,.55)!important;
}
html body #ffMainWorkspace > .ff-main-workspace-head{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:16px!important;min-width:0!important;margin:0 -16px 12px!important;padding:12px 16px!important;
  position:sticky!important;top:0!important;z-index:30!important;
  border-bottom:1px solid #3e4146!important;border-radius:13px 13px 0 0!important;
  background:#191c20!important;color:#f2f3f5!important;
}
html body #ffMainWorkspaceTitle{
  margin:0!important;min-width:0!important;font-size:clamp(20px,2.2vw,26px)!important;
  line-height:1.25!important;overflow-wrap:anywhere!important;color:inherit!important;
}
html body #ffMainWorkspace .ff-workspace-close{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 44px!important;width:44px!important;min-height:44px!important;padding:0!important;
  border:1px solid #4a4d52!important;border-radius:8px!important;background:#27292d!important;
  color:#fff!important;font:24px/1 Arial,sans-serif!important;text-decoration:none!important;
}
html body #ffMainWorkspace :is(.ff-workspace-close,#ffMainWorkspaceTitle):focus-visible{
  outline:3px solid #9ccaff!important;outline-offset:3px!important;
}
html body #ffMainWorkspace > .content-card{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
@media(max-width:700px){
  html body .wrap.hub-content-wrap.ff-centered-workspace{
    inset-inline:10px!important;padding-inline:10px!important;
  }
  html body #ffMainWorkspace > .ff-main-workspace-head{margin-inline:-10px!important;padding-inline:10px!important}
}

:root {
  --ff-tool-space: 8px;
  --ff-tool-pad: 12px;
  --ff-tool-border: #59616a;
  --ff-tool-muted: #b7bdc5;
}
@keyframes ff-view-open {
  from { filter: blur(2px); opacity: .8; }
  to { filter: none; opacity: 1; }
}
body .wrap > .content-card { animation: ff-view-open 180ms ease-out; }
@media (prefers-reduced-motion: reduce) {
  body .wrap > .content-card { animation: none; }
}
body .ff-tool-nav {
  display: flex; flex-wrap: wrap; gap: var(--ff-tool-space);
  margin: 0 0 var(--ff-tool-pad); padding: var(--ff-tool-space);
  border: 1px solid var(--ff-tool-border); border-radius: 6px;
  background: #111315;
}
body .ff-tool-nav a {
  display: flex; align-items: center; justify-content: center;
  flex: 1 1 140px; min-width: 0; min-height: 36px; box-sizing: border-box;
  padding: 8px 12px; border: 1px solid #59616a; border-radius: 4px;
  background: #17191c; color: #f4f5f7; text-decoration: none;
  font-size: 13px; font-weight: 700; text-align: center;
}
body .ff-tool-nav a:hover { background: #23292e; }
body .ff-tool-nav a[aria-current=page] { border-color: #87aeb6; background: #18272d; }
body .ff-tool-nav a:focus-visible { outline: 2px solid #87aeb6; outline-offset: 2px; }
body.dark .content-card.ff-tool-view {
  min-width: 0!important; padding: var(--ff-tool-pad)!important;
  border: 1px solid var(--ff-tool-border)!important; border-radius: 6px!important;
}
body.dark .ff-tool-view > :is(.claims-header-row,.rma-page-head) {
  gap: var(--ff-tool-pad)!important; flex-wrap: wrap!important;
  margin-bottom: var(--ff-tool-pad)!important;
}
body.dark .ff-tool-view :is(.button-row,.claims-top-actions,.rma-scan-actions,.zagg-audit-controls) {
  display: flex!important; gap: var(--ff-tool-space)!important;
  flex-wrap: wrap!important; align-items: center!important;
}
body.dark .ff-tool-view :is(.age-category-grid,.age-status-grid,.rma-summary-grid,.zagg-audit-top,.zagg-audit-summary) {
  gap: var(--ff-tool-space)!important;
}
body.dark .ff-tool-view :is(.zagg-audit-panel,.rma-scan-panel,.rma-section,.zagg-info-card,.zagg-rma-card,.zagg-bundle-card) {
  min-width: 0!important; border-color: var(--ff-tool-border)!important; border-radius: 6px!important;
}
body.dark .ff-tool-view :is(.zagg-audit-panel,.rma-scan-panel) { padding: var(--ff-tool-pad)!important; }
body.dark .ff-tool-view :is(.age-source-line,.age-category-meta,.age-category-panel-meta,.age-section-meta,.rma-source-strip) {
  color: var(--ff-tool-muted)!important;
}
body.dark .ff-tool-view .btn { min-height: 34px!important; max-width: 100%!important; white-space: normal!important; }
body.dark .ff-tool-view :is(.zagg-audit-panel,.rma-scan-panel) input:not([type=checkbox]) {
  box-sizing: border-box!important; max-width: 100%!important; min-width: 0!important;
  border: 1px solid #737d88!important;
}
body.dark .ff-tool-view :is(.btn,input):disabled {
  opacity: 1!important; color: #a9afb8!important; background: #24272b!important;
  border-color: #555d66!important; cursor: not-allowed!important;
}
@media (max-width: 850px) {
  body.dark .ff-tool-view .age-category-grid { grid-template-columns: repeat(2,minmax(0,1fr))!important; }
  body.dark .ff-tool-view .age-status-grid { grid-template-columns: repeat(3,minmax(0,1fr))!important; }
}
@media (max-width: 560px) {
  body.dark .ff-tool-view .age-status-grid { grid-template-columns: repeat(2,minmax(0,1fr))!important; }
  body.dark .ff-tool-view :is(.age-category-summary,.age-status-card) {
    min-width: 0!important; height: auto!important; overflow-wrap: anywhere!important;
  }
  body.dark .ff-tool-view :is(.age-category-meta,.age-category-panel-head,.age-section-head,.age-family-section > summary) {
    flex-wrap: wrap!important; gap: var(--ff-tool-space)!important;
  }
  body.dark .ff-tool-view :is(.btn,.age-section-tab,.rma-supplier-chip) { min-height: 40px!important; }
  body .ff-tool-nav a { min-height: 40px; flex-basis: 100%; }
}
body.dark .ff-tool-view .ff-age-maker { margin: 16px 0; min-width: 0; }
body.dark .ff-tool-view .ff-age-maker-title {
  color: #e7edf2!important; font-size: 14px!important; font-weight: 700!important;
  border-bottom: 1px solid var(--ff-tool-border); padding: 8px 0!important; margin: 0 0 8px!important;
}
/* Navigation, not the sheet, caused the shared phone-width page overflow. */
@media (max-width: 560px) {
  body.dark .wrap > .tabs { flex-wrap: wrap!important; height: auto!important; gap: 8px!important; }
  body.dark .wrap > .tabs a { min-height: 40px!important; box-sizing: border-box!important; }
}
/* Start the transition when the existing prepaint gate reveals the page. */
html.ff-canonical-prepaint body .wrap > .content-card { animation: none; }

/* Shared Settings/navigation sizing; business routes and private gates unchanged. */
body #hubLeftUtilityDock > :is(a,button){position:static!important;inset:auto!important;min-height:44px!important;height:auto!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;padding:8px 12px!important}
body #hubLeftUtilityDock{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important;max-width:calc(100vw - 24px)!important}
body .tabs a,body .ff-tool-nav a{min-height:44px!important}
body .card.content-card.spectre-profile-access-card{margin:12px auto!important;padding:12px!important;border-radius:6px!important;min-height:0!important;height:auto!important;background:#15181c!important;border:1px solid var(--ff-tool-border)!important}
body .card.content-card.spectre-profile-access-card .spectre-profile-login-form :is(input,button){min-height:44px!important;height:auto!important}
body #systemUtilityPanel .system-settings-tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
body #systemUtilityPanel .system-settings-tab{min-height:44px!important;display:inline-flex!important;align-items:center!important;white-space:normal!important;text-decoration:none!important}

/* Shared Hub language: quiet navigation, clear selection, and comfortable controls.
   These rules deliberately stop at the shell and existing tool navigation; workflow
   controls retain the semantics and density that their owning feature requires. */
:root{--ff-shell-gap:8px;--ff-shell-radius:9px;--ff-shell-border:#434b55;--ff-shell-muted:#b7bdc5;--ff-shell-selected:#182c34;--ff-shell-selected-line:#8dbdca}
body.dark .wrap > .tabs{display:flex!important;align-items:stretch!important;justify-content:center!important;gap:var(--ff-shell-gap)!important;margin:12px auto 14px!important;padding:6px!important;max-width:1240px!important;border:1px solid var(--ff-shell-border)!important;border-radius:var(--ff-shell-radius)!important;background:#101317!important}
body.dark .wrap > .tabs a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:9px 14px!important;border:1px solid transparent!important;border-radius:7px!important;color:var(--ff-shell-muted)!important;font-size:13px!important;font-weight:750!important;line-height:1.2!important;text-align:center!important;text-decoration:none!important;white-space:normal!important}
body.dark .wrap > .tabs a:hover{transform:none!important;background:#1b2026!important;border-color:#4b5661!important;color:#fff!important;box-shadow:none!important}
body.dark .wrap > .tabs a.active{background:var(--ff-shell-selected)!important;border-color:var(--ff-shell-selected-line)!important;box-shadow:inset 0 -2px 0 var(--ff-shell-selected-line)!important;color:#fff!important}
body.dark .wrap > .tabs a:focus-visible,body.dark #hubLeftUtilityDock > :is(a,button):focus-visible,body.dark #systemUtilityPanel .system-settings-tab:focus-visible{outline:3px solid #9ccaff!important;outline-offset:2px!important}
body.dark .wrap > .content-card{margin-top:0!important;border-radius:var(--ff-shell-radius)!important;padding:clamp(14px,2vw,22px)!important}
body.dark .wrap > .content-card>:is(h1,h2):first-child{margin-top:0!important;margin-bottom:6px!important;line-height:1.2!important}
body.dark #hubLeftUtilityDock > :is(a,button),body.dark #systemUtilityPanel .system-settings-tab{border-radius:7px!important}
body.dark #hubLeftUtilityDock > :is(a,button):disabled,body.dark #systemUtilityPanel .system-settings-tab[aria-disabled=true]{background:#24272b!important;border-color:#555d66!important;color:#a9afb8!important;cursor:not-allowed!important;opacity:1!important}
@media (max-width:700px){body.dark .wrap > .tabs{margin:10px 12px 12px!important;gap:6px!important}body.dark .wrap > .tabs a{flex:1 1 calc(50% - 3px)!important;min-width:0!important}body.dark .wrap > .content-card{padding:14px!important}}
@media (max-width:420px){body.dark .wrap > .tabs a{flex-basis:100%!important}}

/* Shared centered utility surface. Calculator is the existing reference;
   Claims Tools opts in here. Other utilities keep their current presentation.
   Both are non-modal popovers: no dimming backdrop or outside-click action. */
html body.dark #hubRightUtilityDock #hubCalcContainer[open] > .ff-centered-utility,
html body.dark :is(#claimsToolsFloatingPanel,#ffServerUtilityPanel).ff-centered-utility{
  position:fixed!important;left:50%!important;right:auto!important;
  bottom:auto!important;transform:translateX(-50%)!important;
  width:min(1080px,calc(100vw - 36px))!important;max-width:1080px!important;
  min-width:0!important;box-sizing:border-box!important;
  background:#101113!important;border:1px solid #3e4146!important;
  border-radius:14px!important;box-shadow:0 22px 70px rgba(0,0,0,.72)!important;
}
html body.dark :is(#claimsToolsFloatingPanel,#ffServerUtilityPanel).ff-centered-utility{
  padding:0!important;max-height:calc(100vh - 104px)!important;
  overflow:auto!important;z-index:100005!important;
}
html body.dark :is(#claimsToolsFloatingPanel,#ffServerUtilityPanel) > .hub-floating-utility-head{
  position:sticky!important;top:0!important;z-index:30!important;
  margin:0!important;border-radius:13px 13px 0 0!important;
}
body .ff-centered-utility > .ff-centered-utility-body{padding:10px;min-width:0}
body #ffServerUtilityPanel[hidden]{display:none!important}
body #ffServerUtilityPanel .ff-utility-error{padding:10px;color:#f2f4f6}
html body.dark #ffServerUtilityPanel .hub-floating-close{
  flex:0 0 auto;width:30px!important;min-width:30px!important;padding:0!important;
  border:1px solid #4a4d52!important;background:#27292d!important;color:#fff!important;
  border-radius:8px!important;font-size:18px!important;line-height:26px!important;
}
html body.dark #claimsToolsClose.hub-floating-close{
  width:30px!important;height:30px!important;border-radius:8px!important;
  border:1px solid #4a4d52!important;background:#27292d!important;
  font-size:18px!important;line-height:26px!important;
}
html body.dark #claimsToolsClose.hub-floating-close:hover{background:#35383d!important}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(a,button,[aria-disabled=true]),
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form > button,
html body.dark #hubHeaderShell #hubRightUtilityDock > details > summary,
html body.dark .ff-centered-utility :is(button[type],a[href]).ff-utility-choice,
html body.dark .ff-utility-page.ff-server-page[data-ff-utility-page] :is(button[type],a[href]).ff-utility-choice{
  min-height:34px!important;height:auto!important;max-width:100%!important;
  padding:7px 13px!important;border:1px solid #3e4957!important;
  border-radius:11px!important;background:#19222c!important;color:#f5f7fa!important;
  font:750 11px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif!important;
  white-space:normal!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
html body.dark .ff-centered-utility :is(button[type],a[href]).ff-utility-choice:hover,
html body.dark .ff-centered-utility :is(button[type],a[href]).ff-utility-choice.active,
html body.dark .ff-utility-page.ff-server-page[data-ff-utility-page] :is(button[type],a[href]).ff-utility-choice:hover{
  background:#222d39!important;border-color:#566578!important;
}
body.dark .ff-centered-utility :is(.ff-utility-choice,.hub-floating-close):focus-visible{
  outline:3px solid #9ccaff!important;outline-offset:2px!important;
}
@media(max-width:900px){
  html body.dark :is(#claimsToolsFloatingPanel,#ffServerUtilityPanel).ff-centered-utility{
    max-height:calc(100vh - 136px)!important;
    max-height:calc(100dvh - 136px)!important;
  }
  html body.dark .ff-centered-utility :is(button[type],a[href]).ff-utility-choice,
  html body.dark .ff-utility-page.ff-server-page[data-ff-utility-page] :is(button[type],a[href]).ff-utility-choice{min-height:44px!important}
}
/* The two guarded utility pages share the accepted desktop/mobile anchor. */
html body.dark #ffServerUtilityPanel{top:46px!important}
@media(max-width:900px){html body.dark #ffServerUtilityPanel{top:120px!important}}
html body.dark .ff-utility-page.ff-server-page[data-ff-utility-page] :is(button[type],a[href]).ff-utility-choice:disabled{
  background:#24272b!important;border-color:#555d66!important;color:#a9afb8!important;
  opacity:1!important;cursor:not-allowed!important;
}

/* Workspace header only: preserve dock grouping, link order and all actions.
   Shared graphite appearance above also covers nested sign-out forms. */
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock){
  height:auto!important;gap:8px!important;align-items:flex-start!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(a,button,[aria-disabled=true]),
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form > button,
html body.dark #hubHeaderShell #hubRightUtilityDock > details > summary{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;width:auto!important;min-width:0!important;max-width:100%!important;
  min-height:44px!important;height:auto!important;max-height:none!important;
  padding:8px 12px!important;line-height:1.2!important;text-align:center!important;
  white-space:normal!important;text-decoration:none!important;cursor:pointer!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form{
  min-width:0!important;max-width:100%!important;display:flex!important;
}
html body.dark #hubHeaderShell #hubRightUtilityDock > #hubCalcContainer{
  width:auto!important;min-width:0!important;height:auto!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(a,button):hover,
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form > button:hover,
html body.dark #hubHeaderShell #hubRightUtilityDock > details > summary:hover{
  background:#222d39!important;border-color:#566578!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(.active,[aria-expanded=true],[aria-current=page]),
html body.dark #hubHeaderShell #hubRightUtilityDock > details[open] > summary{
  background:#222d39!important;border-color:#8dbdca!important;color:#fff!important;
  box-shadow:inset 0 -2px 0 #8dbdca!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(:disabled,[aria-disabled=true]),
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form > button:disabled{
  background:#24272b!important;border-color:#555d66!important;color:#a9afb8!important;
  opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;
}
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > :is(a,button):focus-visible,
html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > form > button:focus-visible,
html body.dark #hubHeaderShell #hubRightUtilityDock > details > summary:focus-visible{
  outline:3px solid #9ccaff!important;outline-offset:2px!important;
}
@media(max-width:1200px){
  /* Keep the logo at the top center; let both utility groups contribute height
     below it instead of absolute rows painting across the logo or main tabs. */
  html body.dark #hubHeaderShell{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px 16px!important;
  }
  html body.dark #hubHeaderShell > .hub-main-hero{grid-column:1 / -1!important}
  html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock){
    position:relative!important;inset:auto!important;max-width:100%!important;
    min-width:0!important;flex-wrap:wrap!important;
  }
  html body.dark #hubHeaderShell :is(#hubLeftUtilityDock,#hubRightUtilityDock) > *{
    flex:0 1 auto!important;min-width:0!important;max-width:100%!important;
  }
}

/* Native, keyboard-accessible environment disclosure; restrictions stay in policy. */
.ff-dev-environment{position:relative;display:table;margin:6px 12px;color:#f5ce87;font:700 12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ff-dev-environment>summary{display:list-item;cursor:pointer;padding:3px 8px;border:1px solid #806a36;border-radius:6px;background:#242018;color:#f5ce87;list-style-position:inside;min-height:0}
.ff-dev-environment>summary:focus-visible{outline:3px solid #9ccaff;outline-offset:2px}
.ff-dev-environment-details{position:absolute;left:0;top:100%;z-index:120000;width:min(420px,calc(100vw - 24px));padding:12px;border:1px solid #806a36;border-radius:6px;background:#17191c;color:#f2f3f5;font-weight:400;box-sizing:border-box}
.ff-dev-environment-details p{margin:6px 0 0;line-height:1.5}

/* Compact natural-width navigation and bounded Check-In list editors. */
html body.dark .wrap > .tabs{width:fit-content!important;max-width:calc(100% - 24px)!important;flex-wrap:wrap!important;box-sizing:border-box!important}
html body.dark .wrap > .tabs a{flex:0 1 auto!important;min-width:0!important;max-width:100%!important}
html body.dark :is(#ff21ReferralsView,#ff21DevicesView) .sheet-wrap{height:auto!important;min-height:0!important;max-height:55vh!important;background:#121416!important}
html body.dark :is(#ff21ReferralsView,#ff21DevicesView) .sheet-empty{padding:10px;color:#bcc5ce}
@media(max-width:700px){html body.dark .wrap > .tabs{margin-inline:auto!important}html body.dark .wrap > .tabs a{flex:0 1 auto!important}}

/* One compact account disclosure; identity and CSRF logout stay canonical. */
#hubLeftUtilityDock .ff-account-menu{position:relative}
#hubLeftUtilityDock .ff-account-menu>summary{box-sizing:border-box;display:flex;align-items:center;justify-content:center;list-style:none;width:44px;min-height:44px;cursor:pointer;border:1px solid #454b53;border-radius:9px;background:#1b2026;color:#e4e8ee}
#hubLeftUtilityDock .ff-account-menu>summary::-webkit-details-marker{display:none}
#hubLeftUtilityDock .ff-account-menu>summary:focus-visible{outline:2px solid #86c5d6;outline-offset:3px}
#hubLeftUtilityDock .ff-account-content{position:absolute;left:0;top:calc(100% + 7px);z-index:160;min-width:210px;max-width:min(320px,85vw);padding:14px;border:1px solid #50565e;border-radius:9px;background:#1b2026;box-shadow:0 10px 30px #0008}
#hubLeftUtilityDock .ff-account-content p{margin:0 0 12px;overflow-wrap:anywhere;color:#dce1e7}

/* Named Claims timing views remain legible without relying on color alone. */
html body.dark.tab-claims .claims-workspace .claims-status-card[data-claims-filter="new"]{background:#183243!important;border-color:#639cba!important;border-left:5px solid #84c4e6!important}
html body.dark.tab-claims .claims-workspace .claims-status-card[data-claims-filter="previous"]{background:#3b2d21!important;border-color:#b68b59!important;border-left:5px solid #e8b477!important}
html body.dark.tab-claims .claims-workspace .claims-status-card[data-claims-filter="expected"]{background:#19372f!important;border-color:#669f89!important;border-left:5px solid #91cfb7!important}
html body.dark.tab-claims .claims-workspace .claims-status-card:focus-visible{outline:2px solid #eef3f7!important;outline-offset:3px}
html body.dark.tab-claims .claims-workspace .claims-evidence-missing{font-size:15px!important;line-height:1.3!important}
html body.dark #ff28Comms .ff28-template-tile:focus-visible{outline:2px solid #a6d3df!important;outline-offset:2px}

/* Logo Home and route-rendered workspaces share one viewport scene. Utilities
   remain outside the owning workspace; no new route interception or backdrop. */
html body.dark.ff-logo-shell #ffMainWorkspace{max-width:1440px!important}
html body.dark.ff-logo-shell.tab-website #ffMainWorkspace{max-width:1080px!important}
html body.dark.ff-logo-shell #ffServerUtilityPanel{
  inset:var(--ff-workspace-top,130px) 24px 20px!important;transform:none!important;
  width:auto!important;max-width:1080px!important;height:max-content!important;margin:0 auto!important;
  max-height:calc(100vh - var(--ff-workspace-top,130px) - 20px)!important;
  max-height:calc(100dvh - var(--ff-workspace-top,130px) - 20px)!important;
}
html body.dark .ff-private-compact{max-width:none!important;padding:16px!important}
.ff-private-compact :is(h1,h2,h3,p){margin:0 0 10px;overflow-wrap:anywhere}
.ff-private-compact h1{font-size:22px}.ff-private-compact h2{font-size:18px}
.ff-private-intro,.ff-private-action-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ff-private-intro p,.ff-private-details{color:#b8c0cb;font-size:14px;line-height:1.5}
.ff-private-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px;border-bottom:1px solid #434951;padding-bottom:10px}
html body.dark .ff-private-tabs button{min-height:44px!important;padding:9px 16px!important}
html body.dark .ff-private-tabs button[aria-selected=true]{border-color:#8dbdca!important;background:#24333a!important;box-shadow:inset 0 -2px 0 #8dbdca!important}
.ff-private-action-card{padding:16px;border:1px solid #454b54;border-radius:10px;background:#171b20;margin-bottom:14px}
.ff-private-readiness{border:1px solid #59616c;border-radius:20px;padding:4px 10px;color:#dbe1e9;background:#252a31;font-size:13px}
.ff-private-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ff-private-actions form{margin:0}.ff-private-actions>.held{flex-basis:100%;color:#bcc4ce;font-size:14px}
.ff-private-actions>p:has(a){margin:0}
.ff-private-details{margin-top:12px;border-top:1px solid #363d45;padding-top:10px}
.ff-private-details>summary{cursor:pointer;min-height:36px;display:list-item;list-style-position:inside}
.ff-private-details>summary:focus-visible,.ff-private-tabs button:focus-visible{outline:3px solid #9ccaff;outline-offset:3px}
.ff-private-compact [hidden]{display:none!important}
@media(max-width:700px){html body.dark.ff-logo-shell #ffServerUtilityPanel{inset-inline:10px!important}.ff-private-compact{padding:12px!important}.ff-private-actions form{flex:1 1 180px}.ff-private-actions button{width:100%}}

/* Common popup top edge follows measured global controls. Horizontal centering
   uses inline margins only; no vertical auto margin or translateY centering. */
html body.dark.ff-logo-shell :is(.ff-centered-utility,#claimsToolsFloatingPanel,#communicationsToolsFloatingPanel,#systemUtilityPanel,.hub-floating-utility-panel,dialog[open]){
  position:fixed!important;box-sizing:border-box!important;top:var(--ff-workspace-top,140px)!important;bottom:auto!important;
  left:50%!important;right:auto!important;transform:translateX(-50%)!important;
  margin:0!important;max-width:calc(100vw - 20px)!important;
  max-height:calc(100dvh - var(--ff-workspace-top,140px) - 20px)!important;overflow:auto!important;
}
html body.dark.ff-logo-shell #ffServerUtilityPanel{left:24px!important;right:24px!important;transform:none!important;bottom:20px!important;margin:0 auto!important}
html body.dark.ff-logo-shell :is(.age-category-grid,.age-status-grid,.claims-status-nav,.ff-tool-nav,.ff-private-tabs,.rma-summary-grid,.zagg-audit-summary,.ff28-parent-grid,.ff28-status-grid){justify-content:center!important;margin-inline:auto!important}
html body.dark.ff-logo-shell .age-category-grid{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:fit-content!important;max-width:100%!important;margin:12px auto!important}
html body.dark.ff-logo-shell .age-category-grid>.age-category-summary{flex:0 1 170px!important;width:170px!important;max-width:100%!important;min-width:120px!important;box-sizing:border-box!important}
html body.dark.ff-logo-shell :is(.age-status-grid,.claims-status-nav,.rma-summary-grid,.zagg-audit-summary){width:fit-content!important;max-width:100%!important;grid-auto-flow:row!important}
@media(max-width:700px){html body.dark.ff-logo-shell #ffServerUtilityPanel{left:10px!important;right:10px!important}.age-category-grid>.age-category-summary{flex-basis:145px!important}}
