/* Native Claims + existing Calculator only. Legacy workspaces keep their layout. */
/* Desktop startup critical: begin */
html body.dark.ff-logo-shell[data-ff-desktop-startup] #hubHeaderShell:not(.demo-onboarding) :is(.ff-home-tabs,.hub-utility-link,.ff-calculator-launcher,#hubCalcContainer,[data-utility],#demoCheckinShortcut,#open-ipad){display:none!important}
html body[data-ff-desktop-startup="pending"] .ff-logo-home-scene{display:none!important}
/* Desktop startup critical: end */
.ff-desktop-startup{position:fixed;left:24px;bottom:48px;z-index:20;display:flex;gap:12px;align-items:center;max-width:calc(100vw - 48px);padding:10px 14px;border:1px solid #525b68;border-radius:8px;background:#1b222b;color:#dfe7f1;font:14px/1.5 system-ui}
.ff-desktop-startup a{color:#c3dbf5;text-underline-offset:3px;min-height:32px;display:inline-flex;align-items:center}
body[data-ff-desktop-startup=ready] #ffDesktopStartup{display:none}
#ffWindowHost{position:fixed;inset:0;pointer-events:none;z-index:99982}
html body.ff-logo-shell .ff-native-window{
  position:fixed!important;inset:auto!important;left:var(--ff-window-x)!important;top:var(--ff-window-y)!important;
  width:var(--ff-window-width)!important;height:var(--ff-window-height)!important;max-width:none!important;max-height:none!important;
  display:flex;flex-direction:column;min-width:0;min-height:0;box-sizing:border-box;pointer-events:auto;
  border:1px solid #62676f;border-radius:12px;background:#111418;color:#eef1f5;box-shadow:0 18px 44px #0009;
  animation:none!important;transition:none!important;transform:none!important;filter:none!important;opacity:1!important;
}
html body.ff-logo-shell .ff-native-window[hidden]{display:none!important}
html body.ff-logo-shell .ff-native-window[data-focused=true]{border-color:#ce9156;box-shadow:0 18px 44px #000b,0 0 0 1px #ce915644}
html body.ff-logo-shell .ff-native-window>.ff-window-titlebar{
  position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto;
  min-width:0!important;min-height:48px!important;margin:0!important;padding:6px 10px!important;border:0!important;border-bottom:1px solid #4b5058!important;
  border-radius:11px 11px 0 0!important;background:linear-gradient(#30353d,#20252c)!important;color:#eef1f5!important;
  touch-action:none;cursor:move;user-select:none;
}
.ff-window-titlebar>:first-child{flex:1;min-width:0}
.ff-window-controls{display:flex;gap:5px;flex:0 0 auto}
html body.ff-logo-shell .ff-native-window .ff-window-controls button,
html body.ff-logo-shell .ff-native-window>.ff-window-titlebar :is(.ff-workspace-close,#hubCalcCloseButton){
  display:inline-flex!important;justify-content:center;align-items:center;width:36px!important;min-width:36px!important;max-width:none!important;min-height:36px!important;flex:0 0 36px!important;padding:0!important;
  border:1px solid #636b75!important;border-radius:6px!important;background:#303842!important;color:#fff!important;font:22px/1 system-ui!important;
}
html body.dark.ff-logo-shell .ff-native-window>:is(#ffMainWorkspace,#hubCalcContainer){
  position:relative!important;inset:auto!important;transform:none!important;z-index:0!important;margin:0!important;flex:1 1 auto!important;min-height:0!important;min-width:0!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;align-self:stretch!important;
  width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;padding:12px!important;overflow:auto!important;
  border:0!important;border-radius:0 0 11px 11px!important;box-shadow:none!important;box-sizing:border-box!important;
  background:#111418!important;scrollbar-color:#c48548 #20252b;
}
html body.ff-logo-shell .ff-native-window>.ff-window-body[hidden]{display:none!important}
html body.dark.ff-logo-shell .ff-native-window>#hubCalcContainer{display:flex!important;flex-direction:column!important;padding:0!important;overflow:hidden!important}
html body.ff-logo-shell .ff-native-window #hubCalcContainer>summary{display:none!important}
html body.ff-logo-shell .ff-native-window #hubCalcContainer>.hub-utility-popover{
  display:block!important;position:relative!important;inset:auto!important;z-index:auto!important;transform:none!important;width:100%!important;height:calc(var(--ff-window-height) - var(--ff-window-chrome-height,48px) - 2px)!important;
  max-width:none!important;max-height:none!important;overflow:auto!important;margin:0!important;border:0!important;box-shadow:none!important;padding:0!important;
  background:#111418!important;container:ff-calculator / inline-size;
}
@container ff-calculator (max-width:1000px){html body.dark.ff-logo-shell #ffCalculatorWindow #hubCalcContainer #hubCalcRepairPanel .hub-calc-repair-grid{grid-template-columns:minmax(0,1fr)!important}}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize{position:absolute!important;z-index:80;display:block!important;border:0!important;padding:0!important;min-height:0!important;min-width:0!important;max-width:none!important;max-height:none!important;background:transparent!important;border-radius:0!important;touch-action:none}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=n],html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=s]{left:12px;right:12px;height:7px!important;cursor:ns-resize}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=n]{top:-3px}html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=s]{bottom:-3px}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=e],html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=w]{top:12px;bottom:12px;width:7px!important;cursor:ew-resize}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=e]{right:-3px}html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=w]{left:-3px}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=ne],html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=nw],html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=se],html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=sw]{width:13px!important;height:13px!important}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=ne]{right:-3px;top:-3px;cursor:nesw-resize}html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=nw]{left:-3px;top:-3px;cursor:nwse-resize}
html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=se]{right:-3px;bottom:-3px;cursor:nwse-resize}html body.dark.ff-logo-shell .ff-native-window>button.ff-window-resize[data-edge=sw]{left:-3px;bottom:-3px;cursor:nesw-resize}
html body.dark.ff-logo-shell .ff-native-window[data-maximized=true]>button.ff-window-resize{display:none!important}
.ff-native-window :is(.ff-window-resize,.ff-window-titlebar,.ff-window-controls button):focus-visible{outline:2px solid #e1a15f!important;outline-offset:-2px}
@media(max-width:600px){html body.ff-logo-shell .ff-native-window>.ff-window-titlebar{gap:5px!important}html body.ff-logo-shell .ff-native-window #ffMainWorkspaceTitle{font-size:18px!important}}

/* Adapt the real Claims status row to its window, not only the viewport.
   Keep containment off the workspace itself: legacy fixed tools live there. */
html body.dark.ff-logo-shell .ff-native-window #ffMainWorkspace>.claims-workspace{container:ff-claims / inline-size}
@container ff-claims (max-width:900px){
 html body.dark.ff-logo-shell .ff-native-window #ffMainWorkspace .claims-status-nav{flex-wrap:wrap!important}
 html body.dark.ff-logo-shell .ff-native-window #ffMainWorkspace .claims-status-nav>*{flex-basis:145px!important}
}
@media(max-width:600px){
 html body.dark.ff-logo-shell .ff-native-window .ff-window-controls button,
 html body.dark.ff-logo-shell .ff-native-window>.ff-window-titlebar :is(.ff-workspace-close,#hubCalcCloseButton){width:44px!important;min-width:44px!important;max-width:none!important;min-height:44px!important;flex-basis:44px!important}
}
/* Existing viewport breakpoints must also follow a resized Calculator window. */
@container ff-calculator (max-width:1000px){
 html body.dark.ff-logo-shell #ffCalculatorWindow #hubCalcContainer :is(.hub-calc-repair-main,.hub-calc-trade-panel-grid){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;height:auto!important;min-width:0!important;overflow:visible!important}
 html body.dark.ff-logo-shell #ffCalculatorWindow #hubCalcContainer .hub-calc-workbench-head{flex-wrap:wrap!important;min-width:0!important}
}
@container ff-calculator (max-width:520px){
 html body.dark.ff-logo-shell #ffCalculatorWindow #hubCalcContainer :is(.hub-calc-five,.hub-calc-three,.hub-calc-two,.hub-calc-quote-controls,.hub-calc-scanbar,.hub-calc-item,.hub-calc-item.addon){grid-template-columns:minmax(0,1fr)!important;min-width:0!important}
 html body.dark.ff-logo-shell #ffCalculatorWindow #hubCalcContainer .wide{grid-column:auto!important}
}

/* Other native tools live in isolated documents; iframe nodes never move after src. */
/* Persistent names on the warranty screen, including non-placeholder file inputs. */
.zagg-audit-field-label{display:block!important;margin:10px 0 6px!important;font:700 13px/1.4 system-ui!important;color:#dce3eb!important;text-align:left!important}
.ff-embedded-body{padding:0!important;overflow:hidden!important}
.ff-embedded-body>iframe{display:block;width:100%;height:100%;border:0;background:#111418;flex:1;min-height:0}
html body.ff-logo-shell .ff-native-window>.ff-embedded-body{position:relative!important;inset:auto!important;z-index:0!important;flex:1 1 auto!important;min-width:0!important;min-height:0!important;height:auto!important;width:100%!important;overflow:hidden!important;padding:0!important;border-radius:0 0 11px 11px}
html body.dark.ff-logo-shell.ff-embedded-workspace{margin:0!important;padding:0!important;height:100dvh!important;overflow:hidden!important;background:#111418!important;background-image:none!important}
html body.ff-embedded-workspace :is(#hubHeaderShell,.ff-logo-home-scene,.ff-dev-environment,.ff-home-footer,.ff-main-workspace-head){display:none!important}
html body.dark.ff-logo-shell.ff-embedded-workspace #ffMainWorkspace{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;max-height:none!important;max-width:none!important;margin:0!important;box-shadow:none!important;border:0!important;border-radius:0!important;overflow:auto!important;box-sizing:border-box!important}
html body.ff-embedded-workspace :is(.ff-utility-document,.ff-utility-page){margin:0!important;max-width:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body.ff-embedded-workspace .ff-private-intro h1{font-size:22px!important}
html body.ff-embedded-workspace .ff-document-toolbar{display:none!important}

html body.ff-logo-shell .ff-native-window[data-occluded=true]{visibility:hidden!important;pointer-events:none!important}
html body.ff-logo-shell .ff-native-window>.ff-window-titlebar>strong{font:750 19px/1.2 system-ui;color:#eef1f5}
html body.ff-embedded-workspace .ff-utility-page{height:100dvh!important;overflow:auto!important;box-sizing:border-box!important;padding:16px!important}

/* These IDs have existing high-specificity native rules; scope overrides explicitly. */
html body.dark.ff-logo-shell.ff-embedded-workspace #hubHeaderShell,
html body.dark.ff-logo-shell.ff-embedded-workspace .ff-logo-home-scene,
html body.dark.ff-logo-shell.ff-embedded-workspace .ff-main-workspace-head,
html body.dark.ff-logo-shell.ff-embedded-workspace .ff-document-toolbar{display:none!important}
html body.dark.ff-logo-shell.ff-embedded-workspace #ffMainWorkspace.ff-centered-workspace{position:fixed!important;inset:0!important;left:0!important;top:0!important;right:0!important;bottom:0!important;width:100%!important;height:100dvh!important;max-height:none!important;max-width:none!important;margin:0!important;overflow:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body.dark.ff-logo-shell .ff-native-window>.ff-window-titlebar>button.ff-window-close{width:36px!important;min-width:36px!important;max-width:none!important;min-height:36px!important;padding:0!important;border:1px solid #636b75!important;border-radius:6px!important;background:#303438!important;color:#fff!important;font:22px/1 system-ui!important}
@media(max-width:600px){html body.dark.ff-logo-shell .ff-native-window>.ff-window-titlebar>button.ff-window-close{width:44px!important;min-width:44px!important;min-height:44px!important}}

/* One outer titlebar; child owns feature content only. */
html body.dark.ff-logo-shell.ff-embedded-workspace #ffMainWorkspace>.ff-main-workspace-head{display:none!important}

#ffWindowHost[data-revalidating=true]{visibility:hidden!important}
.ff-window-session-notice{position:fixed;top:110px;left:20px;right:20px;padding:20px;background:#25272b;color:#f4ddc1;border:1px solid #ce9156;z-index:100055}

.ff-window-freshness{padding:12px;margin:8px;border:1px solid #bc8654;border-radius:8px;background:#302923;color:#f3dfc9;font:13px/1.5 system-ui}.ff-window-freshness button{margin:6px;white-space:normal!important}

/* Every Hub utility uses the same chrome and stays independent of Claims. */
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>:is(#systemUtilityPanel,#claimsToolsFloatingPanel,#communicationsToolsFloatingPanel,#ffServerUtilityPanel){
 position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;
 width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;min-height:0!important;min-width:0!important;
 flex:1 1 auto!important;margin:0!important;padding:0!important;overflow:auto!important;z-index:auto!important;border:0!important;border-radius:0 0 11px 11px!important;box-shadow:none!important;box-sizing:border-box!important;
}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar :is(.ff-window-close,.ff-window-controls button){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px!important;
 padding:0!important;margin:0!important;border:1px solid #636b75!important;border-radius:6px!important;background:#303438!important;color:#fff!important;font:22px/1 system-ui!important;
}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar{min-height:56px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar :is(button,a):hover{background:#424a54!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar :is(button,a):focus-visible{outline:3px solid #9ccaff!important;outline-offset:1px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar>div:first-child>span{display:none!important}
html body.dark.ff-logo-shell.ff-embedded-utility> :not([data-ff-embedded-utility]){display:none!important}
html body.dark.ff-logo-shell.ff-embedded-utility>[data-ff-embedded-utility]{
 display:block!important;position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;transform:none!important;
 width:100%!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;overflow:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important;
}
html body.dark.ff-logo-shell.ff-embedded-utility>[data-ff-embedded-utility]>.hub-floating-utility-head{display:none!important}
.ff-embedded-tool-launcher{display:flex;justify-content:flex-end;padding:8px 12px}
.ff-embedded-tool-launcher button{min-height:44px!important;white-space:normal!important}
html body.dark.ff-logo-shell.ff-embedded-utility>:is(#systemUtilityPanel,#communicationsToolsFloatingPanel)[data-ff-embedded-utility]{
 display:block!important;position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;transform:none!important;
 width:100%!important;height:100dvh!important;max-width:none!important;max-height:none!important;padding:12px!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:auto!important;background:#111418!important;
}
html body.dark.ff-logo-shell.ff-embedded-utility>:is(#systemUtilityPanel,#communicationsToolsFloatingPanel)[data-ff-embedded-utility]>:is(.hub-floating-utility-head,.communications-tools-floating-head){display:none!important}


/* Settings first-open skeleton: static, scoped, no request/progress simulation. */
.ff-settings-loading{position:absolute;z-index:1;inset:0;overflow:auto;padding:24px;box-sizing:border-box;background:#111418;color:#dce3eb;container-type:inline-size;container-name:ff-settings-loading}
.ff-settings-loading>p{margin:0 0 20px;font:500 14px/1.5 system-ui;max-width:60ch;text-align:left}
.ff-settings-skeleton{display:grid;gap:24px;pointer-events:none}
.ff-settings-skeleton-tabs{display:flex;flex-wrap:wrap;gap:8px}
.ff-settings-skeleton-section{display:grid;gap:20px;padding:20px;border:1px solid #343b44;border-radius:10px;background:#191d22}
.ff-settings-skeleton-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ff-settings-skeleton-field{display:grid;gap:10px;min-width:0}
.ff-settings-placeholder{display:block;border-radius:4px;background:#303842;animation:none;transition:none}
.ff-settings-placeholder.tab{width:min(144px,100%);height:44px;border-radius:6px}
.ff-settings-placeholder.heading{width:36%;height:18px}
.ff-settings-placeholder.label{width:45%;height:12px}
.ff-settings-placeholder.input{width:100%;height:40px;border-radius:6px}
@container ff-settings-loading (max-width:600px){
 .ff-settings-placeholder.tab{width:min(132px,100%)}
 .ff-settings-skeleton-fields{grid-template-columns:minmax(0,1fr)}
}

/* Comms first-open only; no simulated records, counts or decorative motion. */
.ff-comms-loading{position:absolute;z-index:1;inset:0;overflow:auto;padding:24px;box-sizing:border-box;background:#111418;color:#dce3eb;container-type:inline-size;container-name:ff-comms-loading}
.ff-comms-loading>p{margin:0 0 20px;font:500 14px/1.5 system-ui;max-width:60ch;text-align:left}
.ff-comms-skeleton{display:grid;gap:20px;pointer-events:none;min-width:0}
.ff-comms-skeleton-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ff-comms-skeleton-rows{display:grid;gap:12px;padding:16px;border:1px solid #343b44;border-radius:10px;background:#191d22;min-width:0}
.ff-comms-placeholder{display:block;min-width:0;border-radius:4px;background:#303842;animation:none;transition:none}
.ff-comms-placeholder.heading{width:45%;height:22px}
.ff-comms-placeholder.control{height:44px;border-radius:6px}
.ff-comms-placeholder.row{height:36px}
.ff-comms-skeleton-section{display:grid;gap:12px;min-width:0}
.ff-comms-placeholder.description{width:100%;height:14px}
.ff-comms-placeholder.description.short{width:68%}
.ff-comms-placeholder.content{height:64px}
/* Match the real landing navigation, without inventing queue rows or inventory. */
.ff-comms-loading[data-ff-skeleton-layout="website"] .ff-comms-skeleton-toolbar,
.ff-comms-loading[data-ff-skeleton-layout="inventory"] .ff-comms-skeleton-toolbar{display:flex;flex-wrap:wrap;gap:8px}
.ff-comms-loading[data-ff-skeleton-layout="website"] .ff-comms-placeholder.control,
.ff-comms-loading[data-ff-skeleton-layout="inventory"] .ff-comms-placeholder.control{width:min(144px,100%);max-width:100%}
@container ff-comms-loading (max-width:520px){
 .ff-comms-skeleton-toolbar{grid-template-columns:minmax(0,1fr)}
 .ff-comms-skeleton-rows{padding:12px}
}

/* Packet batch: restrained shared chrome; operational table density is unchanged. */
:root{--ff-ui-gap:12px;--ff-ui-section-gap:20px;--ff-ui-radius:10px;--ff-ui-control-radius:6px;--ff-ui-line:#414a54;--ff-ui-focus:#9ccaff}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window{border-color:var(--ff-ui-line)!important;border-radius:12px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar{background:#252c34!important;background-image:none!important;border-bottom:1px solid var(--ff-ui-line)!important;box-shadow:none!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar :is(button,a){border-color:#52606e!important;border-radius:var(--ff-ui-control-radius)!important}
[data-ff-control-icon]{display:inline-block;flex:0 0 20px;vertical-align:middle;pointer-events:none}
#hubHeaderShell .ff-control-with-icon{display:inline-flex!important;align-items:center!important;justify-content:center;gap:8px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar button{display:inline-flex!important;align-items:center!important;justify-content:center!important}
html body.dark.ff-logo-shell :is(.ff-window-body,.ff-embedded-workspace) :is(button,input,select,textarea,a[href],summary):focus-visible,
html body.dark.ff-logo-shell.ff-embedded-workspace :is(button,input,select,textarea,a[href],summary):focus-visible{outline:3px solid var(--ff-ui-focus)!important;outline-offset:2px!important}
html body.dark.ff-logo-shell :is(.ff-window-body,.ff-embedded-workspace) :is(button:disabled,[aria-disabled="true"]){cursor:not-allowed!important}
html body.dark.ff-logo-shell.ff-embedded-workspace :is(.content-card,.section-panel,.communication-preview,.communication-template-card){border-color:var(--ff-ui-line)!important;border-radius:var(--ff-ui-radius)!important}
html body.dark.ff-logo-shell.ff-embedded-workspace :is(.form-grid,.communication-placeholder-grid,.communication-template-grid){gap:var(--ff-ui-gap)!important}
html body.dark.ff-logo-shell.ff-embedded-workspace :is(.communication-preview-box,.communication-help,.zagg-info-body ol,.zagg-audit-card>.small){text-align:left!important;line-height:1.55!important;overflow-wrap:anywhere!important}
html body.dark.ff-logo-shell.ff-embedded-workspace .communication-preview-box{max-width:75ch!important;white-space:pre-wrap!important;border-radius:var(--ff-ui-control-radius)!important}
html body.dark.ff-logo-shell #ffMainWorkspace :is(.ff-tool-nav a[aria-current="page"],.ff-tool-nav a.active){box-shadow:inset 0 -3px 0 #b4d9ee!important;text-decoration:underline!important;text-underline-offset:4px!important}
.ff-field-error{margin:6px 0 12px!important;padding:8px 12px!important;border-left:3px solid #ffb5b5!important;background:#302329!important;color:#ffd4d4!important;border-radius:0 6px 6px 0!important;font:500 13px/1.5 system-ui!important;text-align:left!important;overflow-wrap:anywhere!important}
html body.dark.ff-logo-shell :is(input,select,textarea)[aria-invalid="true"]{border-color:#ffb5b5!important;box-shadow:0 0 0 1px #ffb5b5!important}
@media(prefers-reduced-motion:no-preference){#hubHeaderShell :is(a,button,summary),.ff-window-titlebar button{transition:background-color 120ms ease,border-color 120ms ease!important}}
@media(prefers-reduced-motion:reduce){#hubHeaderShell :is(a,button,summary),.ff-window-titlebar button{transition:none!important}}

/* Session-local recovery only; no app content or private state is copied here. */
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray{position:fixed;left:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:100050;max-width:calc(100vw - 108px);pointer-events:auto;color:#eef1f5;font:500 13px/1.4 system-ui}
html body.dark.ff-logo-shell #ffWindowTray>summary{display:flex!important;align-items:center;gap:8px;min-height:44px;box-sizing:border-box;padding:8px 12px;border:1px solid #52606e;border-radius:6px;background:#202832;cursor:pointer;list-style:none;user-select:none}
#ffWindowTray>summary::-webkit-details-marker{display:none}
#ffWindowTray>summary svg{flex:0 0 20px}
.ff-window-tray-count{min-width:20px;text-align:center;border:1px solid #758393;border-radius:4px;font-weight:700}
html body.dark.ff-logo-shell #ffWindowTray>ul{position:absolute;left:0;bottom:calc(100% + 8px);display:grid;gap:6px;width:min(420px,calc(100vw - 24px));max-height:min(55dvh,420px);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;list-style:none;margin:0;padding:8px;border:1px solid #52606e;border-radius:10px;background:#171d24;box-shadow:0 12px 32px #0009}
#ffWindowTray:not([open])>ul{display:none!important}
#ffWindowTray li{margin:0;padding:0;min-width:0}
html body.dark.ff-logo-shell #ffWindowTray li>button{display:flex!important;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;box-sizing:border-box;padding:10px 12px;border:1px solid #414a54;border-radius:6px;background:#202832;color:#eef1f5;font:500 13px/1.4 system-ui;text-align:left;cursor:pointer;white-space:normal}
.ff-window-tray-name{min-width:0;overflow-wrap:anywhere}
.ff-window-tray-state{flex:0 0 auto;color:#c5d1df;font-size:12px}
html body.dark.ff-logo-shell #ffWindowTray button[aria-current=true]{border-color:#9ccaff;box-shadow:inset 3px 0 #9ccaff}
html body.dark.ff-logo-shell #ffWindowTray :is(button,summary):hover{background:#2c3744}
html body.dark.ff-logo-shell #ffWindowTray :is(button,summary):focus-visible{outline:3px solid #9ccaff;outline-offset:2px}

/* Permission-derived shortcuts share the retained window host and its auth gate. */
html body.dark.ff-logo-shell #ffWindowHost #ffDesktopShortcuts{position:fixed;inset:var(--ff-workspace-top,104px) 12px 84px;z-index:0;display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0;pointer-events:none}
#ffDesktopShortcutsHelp{margin:0;color:#c3cbd4;font:400 12px/1.5 system-ui;text-shadow:0 1px 3px #000;pointer-events:none}
#ffDesktopShortcuts .ff-desktop-grid{position:relative;flex:1;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;pointer-events:auto}
#ffDesktopShortcuts .ff-desktop-canvas{position:relative;width:100%;pointer-events:none}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;box-sizing:border-box;width:96px;height:88px;min-height:44px;margin:0;padding:8px 4px;border:1px solid transparent;border-radius:8px;background:transparent;color:#f2f5f9;font:600 13px/1.3 system-ui;text-align:center;text-shadow:0 1px 3px #000;white-space:normal;overflow-wrap:anywhere;cursor:pointer;pointer-events:auto;touch-action:none;user-select:none}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut svg{display:block;width:32px;height:32px;flex:0 0 32px;pointer-events:none}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut:hover{border-color:#52606e;background:#202832e6}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut:focus-visible{outline:3px solid #9ccaff;outline-offset:-3px;border-color:#9ccaff;background:#202832e6}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut[data-dragging=true]{z-index:2;border-color:#9ccaff;background:#2c3744;cursor:grabbing;box-shadow:0 6px 18px #0008}
#ffDesktopShortcuts .ff-desktop-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}

/* Desktop app controls replace their mirrored header launchers only after mount.
   The original nodes/handlers remain available to the permission-checked adapter. */
html body.dark.ff-logo-shell #hubHeaderShell[data-ff-desktop-launchers="ready"] :is(#hubLeftUtilityDock,#hubRightUtilityDock,.ff-home-tabs) [data-ff-shortcut-replaced="true"],
html body.dark.ff-logo-shell #hubHeaderShell[data-ff-desktop-launchers="ready"] :is(#hubLeftUtilityDock,#hubRightUtilityDock,.ff-home-tabs)[data-ff-shortcut-dock-empty="true"]{display:none!important}
html body.ff-logo-shell #hubHeaderShell[data-ff-desktop-launchers="ready"]{justify-content:flex-end!important}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut{width:88px!important;height:80px!important;padding:6px 3px!important;gap:4px!important;align-items:center!important;justify-content:center!important;border:1px solid transparent!important;background:transparent!important;box-shadow:none!important;font:600 13px/15px system-ui!important}
#ffDesktopShortcuts .ff-desktop-shortcut>span{display:block;min-height:30px;max-width:80px;line-height:15px}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut:is(:hover,:focus-visible,[data-dragging="true"]){border-color:#697a8c!important;background:#202832e6!important}
/* A compact switcher keeps the same retained window list and accessible name. */
html body.dark.ff-logo-shell #ffWindowTray>summary{gap:5px;padding:6px 9px;border-color:transparent;background:#202832b8;border-radius:12px}
#ffWindowTray .ff-window-tray-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#ffWindowTray .ff-window-tray-count{border:0;min-width:16px}
/* Pumpkin switcher reuses the existing seasonal vector artwork. */
html body.dark.ff-logo-shell #ffWindowTray>summary{position:relative;width:72px;min-width:72px;height:72px;min-height:72px;padding:4px;gap:0;justify-content:center;background:transparent;border:0;border-radius:0;box-shadow:none}
#ffWindowTray>summary svg{width:64px;height:64px;flex:0 0 64px}
#ffWindowTray .ff-window-tray-count{position:absolute;right:0;top:0;background:#202832;color:#eef1f5;border:1px solid #718296;border-radius:9px;min-width:18px;font-size:12px}

/* The seasonal pumpkin is now a control, not duplicated background decoration. */
html body.ff-logo-shell .ff-logo-home-scene>.ff-halloween-pumpkin{display:none!important}
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray{left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom))}
@media(max-width:680px){html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray{left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom))}}

/* Shared navigation/control icon rhythm inside the managed applications. */
html body.dark.ff-logo-shell #ffWindowHost .ff-control-with-icon:not(.ff-desktop-shortcut),html body.dark.ff-logo-shell.ff-embedded-workspace .ff-control-with-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-control-with-icon:not(.ff-desktop-shortcut)>[data-ff-control-icon],html body.dark.ff-logo-shell.ff-embedded-workspace .ff-control-with-icon>[data-ff-control-icon]{width:20px;height:20px;flex:0 0 20px;vertical-align:middle}

/* Content-sized tool/settings navigation; row widths do not stretch each button.
   Forms, data grids, status tiles, window chrome and desktop hit areas keep their
   owning geometry. Touch targets remain at least 44px high and labels can wrap. */
html body.dark.ff-logo-shell #ffMainWorkspace nav.ff-tool-nav,
html body.dark.ff-logo-shell #systemUtilityPanel .system-settings-tabs{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important}
html body.dark.ff-logo-shell #ffMainWorkspace nav.ff-tool-nav>a,
html body.dark.ff-logo-shell #systemUtilityPanel .system-settings-tabs .system-settings-tab{flex:0 1 auto!important;align-self:flex-start!important;width:auto!important;min-width:0!important;max-width:100%!important;min-height:44px!important;height:auto!important;margin:0!important;padding:8px 12px!important;box-sizing:border-box!important;font-size:13px!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere}
.ff-settings-sections{display:contents}
.ff-appearance-field-error{display:block;font-weight:600}
.ff-appearance-field-error[hidden]{display:none}
#ffDesktopShortcuts .ff-shortcut-destination{display:block;font:500 10px/12px system-ui;color:#c3cbd4}

/* Free shortcut placement follows the pointer; no position/transform easing or
   native ghost image competes with a drag. Only the active shortcut is promoted. */
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut{transition:background-color .12s,border-color .12s;cursor:grab;-webkit-user-drag:none}
html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut[data-dragging=true]{cursor:grabbing;will-change:transform;transition:none}
@media(prefers-reduced-motion:reduce){html body.dark.ff-logo-shell #ffDesktopShortcuts .ff-desktop-shortcut{transition:none}}

/* Desktop window chrome follows the compact CBD reference. Coarse pointers
   retain the larger targets; the titlebar remains the independent drag handle. */
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar{min-height:42px!important;padding:0 8px 0 12px!important;gap:8px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar .ff-window-controls{gap:5px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar :is(.ff-window-close,.ff-window-controls button){width:25px!important;min-width:25px!important;max-width:25px!important;height:24px!important;min-height:24px!important;flex:0 0 25px!important;padding:0!important;border-radius:3px!important;font:16px/1 Arial,sans-serif!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar :is(strong,#ffMainWorkspaceTitle){font-size:14px!important;line-height:1.25!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.dark.ff-logo-shell #ffWindowHost .ff-window-titlebar :is(.ff-window-controls button,.ff-window-close) svg{width:12px!important;height:12px!important;flex:0 0 12px!important}
@media(pointer:coarse){
 html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar{min-height:56px!important}
 html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar :is(.ff-window-close,.ff-window-controls button){width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;flex-basis:44px!important}
}
/* Reset the DETAILS container as well as SUMMARY: generic details styling was
   drawing a box behind the cutout pumpkin, including its hover/open states. */
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray>summary,
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray>summary:is(:hover,:active,:focus-visible){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important}
html body.dark.ff-logo-shell #ffWindowHost #ffWindowTray>summary:focus-visible svg{filter:drop-shadow(0 0 3px #9ccaff) drop-shadow(0 0 1px #9ccaff)}

/* Replaced Claims headers have stronger legacy fixed-dock rules. Only controls
   with a mounted desktop equivalent are suppressed; unknown launchers remain. */
html body.dark.ff-logo-shell #hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers="ready"] :is(#hubLeftUtilityDock,#hubRightUtilityDock,.ff-home-tabs) [data-ff-shortcut-replaced="true"],
html body.dark.ff-logo-shell #hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers="ready"] :is(#hubLeftUtilityDock,#hubRightUtilityDock,.ff-home-tabs)[data-ff-shortcut-dock-empty="true"]{display:none!important}
/* Claims loading follows the worksheet shape, with no fake records or timer. */
html body.dark.ff-logo-shell .ff-navigation-pending.ff-claims-loading{display:block!important;position:fixed!important;inset:var(--ff-workspace-top,80px) 16px auto!important;width:calc(100vw - 32px)!important;max-width:1400px!important;max-height:calc(100dvh - var(--ff-workspace-top,80px) - 16px)!important;margin:0 auto!important;padding:16px!important;overflow:auto!important;background:#151a1e!important;border:1px solid #46535e!important;border-radius:8px!important;box-sizing:border-box!important;min-height:min(360px,calc(100dvh - var(--ff-workspace-top,80px) - 16px))!important}
.ff-claims-loading>p{margin:0 0 16px;font:500 14px/1.5 Arial,sans-serif;color:#dce3eb}
.ff-claims-skeleton{display:grid;gap:0;pointer-events:none;min-width:0;max-width:100%}
.ff-claims-skeleton-tabs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:16px}
.ff-claims-skeleton-tabs>span{width:110px;max-width:25%;height:30px;border-radius:3px;background:#35434c}
.ff-claims-skeleton-value{height:32px;border:1px solid #bec6c1;background:#f3f5f4}
.ff-claims-skeleton-grid{display:grid;grid-template-columns:36px repeat(15,minmax(0,1fr));grid-auto-rows:28px;overflow:hidden;background:#fff;border-left:1px solid #c5cdc8;border-top:1px solid #c5cdc8}
.ff-claims-skeleton-grid>span{border-right:1px solid #d8dddf;border-bottom:1px solid #d8dddf;background:#f6f8f7}
.ff-claims-skeleton-grid>span:nth-child(-n+16){background:#87aeb6}
.ff-claims-skeleton-grid>span:nth-child(16n+1){background:#e8eeea}
html body.demo-app #ffWindowHost #contextUtilityPanel.ff-workbook-tools-panel{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;max-height:none!important;min-height:0!important;flex:1!important;overflow:auto!important;box-sizing:border-box!important}
html body.demo-app #contextUtilityPanel.ff-workbook-tools-panel>.hub-floating-utility-head{display:none!important}

/* Shared compact desktop commands. Cosmetic commands use existing launchers only. */
html body.dark.ff-logo-shell #ffDesktopMenu{position:fixed!important;top:max(10px,env(safe-area-inset-top))!important;left:76px!important;z-index:100052!important;display:flex!important;gap:2px!important;max-width:calc(100vw - 88px)!important;color:#edf1f5!important;font:500 13px/1.35 system-ui!important;pointer-events:auto!important}
#ffDesktopMenu details{position:relative!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
html body.dark.ff-logo-shell #ffDesktopMenu summary{display:flex!important;align-items:center!important;justify-content:center!important;list-style:none!important;min-height:30px!important;min-width:44px!important;margin:0!important;padding:0 10px!important;border:1px solid transparent!important;border-radius:4px!important;background:#20262de8!important;color:inherit!important;font:inherit!important;cursor:pointer!important;box-sizing:border-box!important}
#ffDesktopMenu summary::-webkit-details-marker{display:none!important}
html body.dark.ff-logo-shell #ffDesktopMenu details[open]>summary,html body.dark.ff-logo-shell #ffDesktopMenu summary:hover{background:#35414e!important;border-color:#6a7989!important}
html body.dark.ff-logo-shell #ffDesktopMenu [role=menu]{position:absolute!important;left:0!important;top:calc(100% + 4px)!important;display:grid!important;min-width:220px!important;max-width:min(340px,calc(100vw - 32px))!important;max-height:calc(100dvh - 76px)!important;overflow:auto!important;overscroll-behavior:contain!important;padding:5px!important;gap:2px!important;box-sizing:border-box!important;border:1px solid #657484!important;border-radius:5px!important;background:#20262d!important;box-shadow:0 10px 30px #0008!important}
html body.dark.ff-logo-shell #ffDesktopMenu [role=menuitem]{display:block!important;width:100%!important;min-height:32px!important;padding:6px 10px!important;margin:0!important;border:1px solid transparent!important;border-radius:3px!important;background:transparent!important;color:inherit!important;font:inherit!important;text-align:left!important;white-space:normal!important;box-sizing:border-box!important;cursor:pointer!important}
html body.dark.ff-logo-shell #ffDesktopMenu [role=menuitem]:is(:hover,:focus-visible){background:#354758!important;border-color:#8ab6df!important;outline:2px solid transparent!important}
html body.dark.ff-logo-shell #ffDesktopMenu :is(summary,[role=menuitem]):focus-visible{outline:2px solid #a5cfff!important;outline-offset:-2px!important}
html body.dark.ff-logo-shell #ffDesktopMenu [role=menuitem]:disabled{color:#9da8b5!important;background:transparent!important;border-color:transparent!important;cursor:default!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-desktop-help{padding:18px!important;color:#e7edf3!important;font:14px/1.6 system-ui!important;overflow:auto!important}
.ff-desktop-help h2{font-size:22px!important;margin:0 0 8px!important}.ff-desktop-help p{margin:0 0 16px!important}.ff-desktop-help dt{font-weight:700!important;margin-top:12px!important}.ff-desktop-help dd{margin:3px 0 0!important;color:#c4d0db!important}
@media(pointer:coarse){html body.dark.ff-logo-shell #ffDesktopMenu :is(summary,[role=menuitem]){min-height:44px!important}}
@media(max-width:420px){html body.dark.ff-logo-shell #ffDesktopMenu details:nth-child(2) [role=menu]{left:-46px!important}html body.dark.ff-logo-shell #ffDesktopMenu [role=menu]{min-width:180px!important}html body.dark.ff-logo-shell #ffDesktopMenu details:last-child [role=menu]{left:auto!important;right:0!important}}

/* Tab-local Sketchpad. No persistence, uploads or operational controls. */
html body.dark.ff-logo-shell #ffWindowHost .ff-sketchpad{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:10px!important;padding:12px!important;overflow:auto!important;min-height:0!important;background:#181e24!important;color:#e6edf4!important;box-sizing:border-box!important}
.ff-sketch-notice,.ff-sketch-status{margin:0!important;font:12px/1.5 system-ui!important;color:#c1cdd8!important}.ff-sketch-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.ff-sketch-palette{display:flex;gap:3px}
html body.dark.ff-logo-shell .ff-sketch-toolbar button{min-height:32px!important;padding:5px 9px!important;margin:0!important;border:1px solid #617080!important;border-radius:4px!important;background:#222c36!important;color:#edf3f8!important;font:500 13px/1.3 system-ui!important;cursor:pointer}
html body.dark.ff-logo-shell .ff-sketch-toolbar button[aria-pressed=true]{background:#354b5c!important;border-color:#b2d6f1!important;box-shadow:inset 0 -3px #a7dfbc!important}
html body.dark.ff-logo-shell .ff-sketch-toolbar button:disabled{opacity:.5!important;cursor:default!important}.ff-sketch-zoom{min-width:44px;text-align:center;font:13px/1.5 system-ui}.ff-sketch-palette button{border-bottom-color:var(--ff-ink-color)!important}
.ff-sketch-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,25%);gap:12px;flex:1;min-height:280px}.ff-sketch-area{position:relative;min-width:0;min-height:280px;overflow:hidden;border:1px solid #566676;border-radius:4px;background-color:#151b21;background-image:radial-gradient(#3d4a57 1px,transparent 1px);background-size:24px 24px}
.ff-sketch-area svg{display:block;width:100%;height:100%;min-height:280px;touch-action:none;user-select:none;outline-offset:-3px}.ff-sketch-area[data-mode=draw] svg{cursor:crosshair}.ff-sketch-area[data-mode=pan] svg{cursor:grab}.ff-sketch-notes{display:flex;flex-direction:column;gap:7px;min-width:0;font:600 13px/1.4 system-ui!important}
html body.dark.ff-logo-shell .ff-sketch-notes textarea{flex:1;width:100%!important;min-height:180px!important;resize:none!important;margin:0!important;padding:10px!important;box-sizing:border-box!important;background:#1c242c!important;color:#eef3f7!important;border:1px solid #617080!important;border-radius:4px!important;font:14px/1.5 system-ui!important}
html body.dark.ff-logo-shell .ff-sketchpad :is(button,textarea,svg):focus-visible{outline:2px solid #a5cfff!important;outline-offset:2px!important}
@media(max-width:620px){.ff-sketch-layout{grid-template-columns:minmax(0,1fr)}.ff-sketch-notes textarea{height:180px!important;flex:none!important}}
@media(pointer:coarse){html body.dark.ff-logo-shell .ff-sketch-toolbar button{min-height:44px!important;min-width:44px!important}}

/* Packet closeout: stacked drawing sections scroll as one document, without overlap. */
@media(max-width:620px){.ff-sketch-layout{flex:0 0 auto;grid-template-rows:280px auto;min-height:0}.ff-sketch-area{height:280px}.ff-sketch-notes{min-height:206px}.ff-sketch-status{flex:0 0 auto}}
/* The permission-projected desktop owns launching once ready, at every breakpoint. */
html body.dark.ff-logo-shell #hubHeaderShell[data-ff-desktop-launchers=ready] #ffMobileMenu{display:none!important}

/* Fixed desktop shell; scrolling belongs to the app document, never the wallpaper. */
html.ff-desktop-active,html.ff-desktop-active>body{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;overscroll-behavior:none!important;scrollbar-gutter:auto!important}
html.ff-desktop-active body{--ff-workspace-top:8px!important}
html.ff-desktop-active body #hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers=ready]{position:fixed!important;top:8px!important;left:12px!important;right:auto!important;width:auto!important;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;pointer-events:none!important;justify-content:flex-start!important;z-index:100052!important}
html.ff-desktop-active body #hubHeaderShell#hubHeaderShell #ffIdentityDock{pointer-events:auto!important;margin:0!important}
html.ff-desktop-active body #hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers=ready] #ffMobileMenu{display:none!important}
html.ff-desktop-active body #ffWindowHost #ffDesktopShortcuts{inset:8px 8px 80px!important;gap:0!important}
html.ff-desktop-active body #ffDesktopShortcuts .ff-desktop-grid{overflow:hidden!important}
html.ff-desktop-active body #ffDesktopShortcuts .ff-desktop-shortcut{display:grid!important;grid-template-rows:32px auto!important;align-content:center!important;justify-items:center!important;gap:6px!important;padding:6px!important;border-radius:20px!important}
html.ff-desktop-active body #ffDesktopShortcuts .ff-desktop-shortcut>svg{margin:0!important;align-self:center!important;justify-self:center!important}
html.ff-desktop-active body #ffDesktopShortcuts .ff-desktop-shortcut>span{min-height:0!important;max-width:76px!important;margin:0!important;justify-self:center!important;line-height:15px!important}
html body.dark.ff-logo-shell #ffDesktopMenu{top:10px!important;left:auto!important;right:12px!important;max-width:calc(100vw - 88px)!important}
html body.dark.ff-logo-shell #ffDesktopMenu>button{min-height:32px!important;padding:6px 14px!important;border:1px solid #586573!important;border-radius:999px!important;background:#20262de8!important;color:#edf1f5!important;font:500 13px/1.3 system-ui!important}
html body.dark.ff-logo-shell #ffDesktopMenu>button:focus-visible{outline:2px solid #a5cfff!important;outline-offset:2px!important}
.ff-sitemap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 18px}.ff-sitemap button{display:flex!important;align-items:center!important;gap:8px!important;text-align:left!important;min-height:40px!important;border-radius:14px!important;padding:8px 12px!important;background:#27313b!important;color:#edf2f7!important;border:1px solid #647383!important}
@media(pointer:coarse){html body.dark.ff-logo-shell #ffDesktopMenu>button,.ff-sitemap button{min-height:44px!important}}

html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:12px!important;background:#20262d!important;box-sizing:border-box!important;color:#edf1f5!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion .claims-status-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;margin:0 0 10px!important;width:100%!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion .claims-status-card{min-height:36px!important;height:auto!important;padding:6px 8px!important;border-radius:10px!important;white-space:normal!important;text-align:left!important;font-size:12px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion .claims-status-card .label{font-size:12px!important}.ff-claims-companion .claims-status-card :is(.count,.value){font-size:12px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion>.ff-worksheet-tools,html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion>#contextTools,html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion>#claimsToolsPanelToggle{display:inline-flex!important;width:auto!important;min-height:32px!important;margin:8px 0 0!important;padding:6px 10px!important;border-radius:10px!important}
.ff-claims-companion details{margin:0!important}.ff-claims-skeleton-grid{grid-template-columns:36px repeat(var(--ff-skeleton-columns,8),minmax(0,1fr))!important}
@media(pointer:coarse){html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion .claims-status-card{min-height:44px!important}}

html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion .claims-status-card{border-radius:10px!important;padding:6px 8px!important;min-height:36px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion-content>button{width:auto!important;margin:8px 0 0!important;min-height:32px!important;padding:6px 10px!important;border-radius:10px!important}

.ff-claims-skeleton-grid>span{background:#f6f8f7!important}.ff-claims-skeleton-grid>span[data-ff-header]{background:#87aeb6!important}.ff-claims-skeleton-grid>span[data-ff-row]{background:#e8eeea!important}
/* Native header positioning cannot turn the identity badge into an offscreen dock. */
html.ff-desktop-active body #hubHeaderShell#hubHeaderShell #ffIdentityDock#ffIdentityDock{position:fixed!important;inset:8px auto auto 12px!important;width:auto!important;min-width:44px!important;height:auto!important;display:flex!important;padding:0!important;transform:none!important}
html.ff-desktop-active body #ffIdentityDock#ffIdentityDock #ffWorkspaceMenu{position:relative!important;inset:auto!important;margin:0!important;padding:0!important;min-width:44px!important;transform:none!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion #claimsToolsPanelToggle{position:static!important;inset:auto!important;transform:none!important;display:inline-flex!important;margin:8px 0 0!important;width:auto!important;min-width:0!important}
html.ff-desktop-active body.dark.ff-logo-shell #hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers=ready] #hubRightUtilityDock > #ffMobileMenu{display:none!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion .claims-status-nav,html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion #claims-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:5px!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion .claims-status-card{width:100%!important;max-width:none!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;gap:4px!important;box-sizing:border-box!important}
/* Continuous rounded desktop surfaces; worksheet cells retain their straight grid. */
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window{border-radius:18px!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-titlebar{border-radius:17px 17px 0 0!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-native-window>.ff-window-body{border-radius:0 0 17px 17px!important}

.ff-tool-document-loading{padding:16px!important;background:#1b222a!important;color:#e2eaf2!important;position:absolute;inset:0;z-index:2;overflow:hidden}.ff-tool-document-loading>p{font:500 13px/1.5 system-ui}.ff-tool-document-skeleton{display:grid;gap:12px}.ff-tool-document-skeleton>span{display:block;border:1px solid #3d4c5b;border-radius:10px;background:#2b3541;height:100px}.ff-tool-document-skeleton>.heading{height:24px;width:45%}.ff-tool-document-skeleton>.toolbar{height:36px}

/* Desktop geometry must outrank page-specific generic icon/button rules. */
html.ff-desktop-active body.dark.ff-logo-shell #ffWindowHost #ffDesktopShortcuts .ff-desktop-canvas>.ff-desktop-shortcut{position:absolute!important;display:grid!important;width:88px!important;min-width:88px!important;max-width:88px!important;height:80px!important;min-height:80px!important;box-sizing:border-box!important;margin:0!important;flex:none!important}
html body.dark.ff-logo-shell .ff-navigation-pending.ff-claims-request{position:fixed!important;top:64px!important;left:16px!important;max-width:calc(100vw - 32px)!important;padding:12px 18px!important;border:1px solid #536170!important;border-radius:16px!important;background:#1b222a!important;z-index:100010!important;color:#eef2f6!important}
.ff-claims-request>p{margin:0!important;font:500 14px/1.4 system-ui!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-grid-only{padding:0!important;gap:0!important;background:#f7f9f8!important;overflow:auto!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-grid-only :is(.claims-workspace,.claims-status-panel,.insurance-view-panel,.claims-board,.claims-section,.claims-section-body,.claims-new-list,.claims-new-table-wrap){margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;max-width:none!important;background:transparent!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-grid-only :is(.claims-section-bar,.claims-new-list>summary,.ff-sheet-valuebar,.ff-sheet-footer){display:none!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-grid-only .claims-section-body{display:block!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-grid-only :is([hidden],[data-claims-filter-hidden="1"]){display:none!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion :is(.ff-claims-info,.ff-claims-actions,.ff-claims-payment){margin:8px 0 0!important;padding:0!important;border:1px solid #485563!important;border-radius:12px!important;background:#1b222a!important;min-width:0!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion :is(.ff-claims-info,.ff-claims-actions,.ff-claims-payment)>summary{padding:9px 10px!important;cursor:pointer!important;font:600 13px/1.4 system-ui!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion :is(.ff-claims-info-body,.ff-centered-utility-body,.hub-utility-popover,.hub-floating-utility-body,.assurant-payment-dialog-inner){position:static!important;inset:auto!important;transform:none!important;max-height:none!important;min-height:0!important;max-width:100%!important;width:100%!important;padding:10px!important;box-sizing:border-box!important;display:block!important;overflow:visible!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-companion :is(.ff-claims-context,.ff-claims-section-info){font:400 12px/1.5 system-ui!important;margin:0 0 8px!important;min-width:0!important}
.ff-claims-companion [hidden]{display:none!important}

/* Setup/source sections reuse the existing Settings document and back control. */
html body.dark.ff-logo-shell #systemUtilityPanel #ffServerUtilityPanel[data-ff-settings-child=true]{position:relative!important;inset:auto!important;transform:none!important;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;max-height:none!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:auto!important}
html body.dark.ff-logo-shell #systemUtilityPanel #ffServerUtilityPanel[hidden]{display:none!important}
html body.dark.ff-logo-shell #systemUtilityPanel #ffServerUtilityPanel[data-ff-settings-child=true]>.hub-floating-utility-head{display:flex!important;position:static!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-grid-only.ff-claims-grid-only{padding:0!important;margin:0!important;background:#fff!important;border:0!important;border-radius:0!important;display:block!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-grid-only .ff-workbook{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;max-height:none!important;background:#fff!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-grid-only :is(.ff-sheet-viewport,.claims-new-table-wrap,.claims-section-body){margin:0!important;padding:0!important;border-radius:0!important;max-height:none!important;background:#fff!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-companion .ff-claims-view-switches{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:5px!important;margin:0 0 10px!important}
html body.dark.ff-logo-shell #claimsToolsPanelToggle#claimsToolsPanelToggle#claimsToolsPanelToggle{display:none!important}
html body.dark.ff-logo-shell #hubHeaderShell#hubHeaderShell#hubHeaderShell[data-ff-desktop-launchers=ready]>[data-ff-shortcut-replaced=true]{display:none!important}
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost #ffWindow-claims>.ff-window-body{padding:0!important;flex:1 1 auto!important;min-height:0!important;background:#fff!important}

/* Complete words, never letter fragments. Keep the established 88x80 geometry. */
html.ff-desktop-active body.dark.ff-logo-shell #ffWindowHost #ffDesktopShortcuts .ff-desktop-canvas>.ff-desktop-shortcut{padding:5px 1px!important}
html.ff-desktop-active body.dark.ff-logo-shell #ffWindowHost #ffDesktopShortcuts .ff-desktop-shortcut>span{max-width:84px!important;width:84px!important;min-width:0!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;font-size:12px!important;line-height:14px!important;overflow:visible!important;text-overflow:clip!important}
.ff-shortcut-rename{position:fixed;z-index:100060;width:280px;max-width:calc(100vw - 16px);padding:12px;border:1px solid #748596;border-radius:14px;background:#1b232d;color:#edf2f7;box-shadow:0 12px 40px #0009;box-sizing:border-box;pointer-events:auto}
.ff-shortcut-rename label{display:grid;gap:6px;font:600 13px/1.4 system-ui}.ff-shortcut-rename input{width:100%;min-width:0;min-height:36px;box-sizing:border-box;padding:7px;background:#10161d;border:1px solid #708090;color:#edf2f7;font:13px/1.4 system-ui}.ff-shortcut-rename-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ff-shortcut-rename button{min-height:32px;padding:5px 9px;border:1px solid #708090;border-radius:8px;background:#273340;color:#edf2f7;font:12px/1.4 system-ui}.ff-shortcut-rename [role=alert]{font:12px/1.4 system-ui;color:#ffd4bb;margin:8px 0 0}.ff-shortcut-rename [role=alert]:empty{display:none}

/* Audited worksheet/window corrections. Sheets chain vertical wheel input to
   their enclosing app; horizontal scrolling stays native and contained. */
html body.dark.ff-logo-shell #ffWindowHost#ffWindowHost .ff-claims-grid-only .ff-sheet-viewport{overscroll-behavior-y:auto!important;overscroll-behavior-x:contain!important}
/* Actual windows own their full rectangle. Movable shell launchers remain
   reachable on uncovered desktop; they cannot intercept titlebar controls. */
html.ff-desktop-active body #ffWindowHost#ffWindowHost{z-index:100060!important}
html.ff-desktop-active body #ffWindowHost #ffDesktopShortcuts :is(.ff-desktop-grid,.ff-desktop-canvas){pointer-events:none!important}
html.ff-desktop-active body #ffWindowHost #ffDesktopShortcuts .ff-desktop-shortcut{pointer-events:auto!important}
html body.dark.ff-logo-shell #ffWindowHost .ff-claims-view-status{margin:0 0 10px;padding:10px;border:1px solid #657484;border-radius:8px;font:400 13px/1.5 system-ui;white-space:normal;overflow-wrap:anywhere}
html body.ff-embedded-workspace #ffMainWorkspace .ff-embedded-tool-launcher{position:static!important;display:flex!important;justify-content:flex-end;min-height:44px;margin:0 0 12px!important;padding:0!important}
html body.ff-embedded-workspace #ffMainWorkspace .ff-embedded-tool-launcher #communicationsToolsPanelToggle{position:static!important;inset:auto!important;transform:none!important;margin:0!important;float:none!important}
/* Settings responds to the actual pane width, not the browser viewport. */
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel{container-type:inline-size;container-name:ff-settings}
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel :is(.source-pane-title,.source-note,.source-scale-strip,.source-config-head,.source-field-grid label){white-space:normal!important;overflow-wrap:anywhere!important;min-width:0!important;line-height:1.5!important}
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .source-field-grid{display:grid!important;grid-template-columns:minmax(140px,1fr) minmax(200px,2fr) minmax(110px,1fr)!important;align-items:end!important;gap:12px!important}
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .source-field-grid-inventory{grid-template-columns:minmax(140px,1fr) minmax(200px,2fr) minmax(120px,1fr) minmax(110px,1fr)!important}
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .source-main-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .source-field-grid :is(input,select){width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
@container ff-settings (max-width:760px){html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel :is(.source-field-grid,.source-field-grid-inventory){grid-template-columns:repeat(2,minmax(0,1fr))!important}html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .source-scale-strip{display:grid!important;grid-template-columns:minmax(0,1fr)!important}}
@container ff-settings (max-width:440px){html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel :is(.source-field-grid,.source-field-grid-inventory){grid-template-columns:minmax(0,1fr)!important}}
html body.dark.ff-logo-shell #hubCalcContainer .hub-calc-discount-box{display:grid!important;gap:10px!important;height:auto!important;min-height:0!important}
html body.dark.ff-logo-shell #hubCalcContainer .hub-calc-discount-controls{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;height:auto!important;align-items:start!important}
html body.dark.ff-logo-shell #hubCalcContainer .hub-calc-discount-controls label{display:flex!important;flex-direction:column!important;gap:6px!important;height:auto!important;min-height:0!important;line-height:1.4!important}
html body.dark.ff-logo-shell #hubCalcContainer .hub-calc-discount-controls input{position:static!important;height:42px!important;min-height:42px!important;margin:0!important}
html body.dark.ff-logo-shell #hubCalcContainer .hub-calc-discount-box>.hub-calc-subtitle{position:static!important;margin:0!important;white-space:normal!important;line-height:1.5!important}

html body.dark.ff-logo-shell #systemUtilityPanel#systemUtilityPanel .repairq-sources-pane .small{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.5!important}
