/* IPA R164 Unified Global Filter R3 RC5 – topbar 58px stays fixed. */
:root{--ipa-uf-bg:#0d2037;--ipa-uf-ink:#eaf3ff;--ipa-uf-line:rgba(145,180,221,.28)}
#ipa-auth-user-dock .ipa-uf-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:34px;padding:6px 12px;margin-left:auto;border:1px solid rgba(135,183,235,.38);border-radius:11px;color:#eaf3ff;background:linear-gradient(135deg,#173958,#0c233c);font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer;box-sizing:border-box}
#ipa-auth-user-dock .ipa-uf-trigger:hover,#ipa-auth-user-dock .ipa-uf-trigger[aria-expanded="true"]{border-color:#6cb5f0;background:#16446b}
#ipa-auth-user-dock .ipa-uf-trigger>small{display:inline-block;padding:4px 7px;border-radius:999px;color:#a9d9ff;background:rgba(97,161,221,.12);font-size:9px;font-weight:700}
.ipa-uf-panel{position:fixed;z-index:200003;top:calc(var(--ipa-global-utility-h,58px) + 8px);right:20px;width:min(500px,calc(100vw - 32px));max-height:calc(100dvh - var(--ipa-global-utility-h,58px) - 18px);overflow:auto;padding:17px;border:1px solid var(--ipa-uf-line);border-radius:16px;background:var(--ipa-uf-bg);color:var(--ipa-uf-ink);box-shadow:0 20px 60px rgba(1,11,30,.40);box-sizing:border-box}
.ipa-uf-panel[hidden],.ipa-uf-panel [hidden]{display:none!important}
.ipa-uf-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;gap:12px}.ipa-uf-head strong{display:block;font-size:15px;font-weight:850}.ipa-uf-head small{display:block;margin-top:4px;font-size:11px;color:#a2bdd7}.ipa-uf-head button{border:1px solid #415b76;color:#dceafa;background:#1d3652;border-radius:9px;width:32px;height:32px}
.ipa-uf-grid,.ipa-uf-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.ipa-uf-grid label,.ipa-uf-dates label{display:flex;flex-direction:column;gap:6px;min-width:0;color:#a8c9e7;font-size:10px;font-weight:800;letter-spacing:.02em}.ipa-uf-grid select,.ipa-uf-dates input{width:100%;min-width:0;min-height:41px;padding:7px 10px;border:1px solid #426380;border-radius:10px;color:#f0f7ff;background:#132d49;font-size:12px;outline:none;box-sizing:border-box}.ipa-uf-grid select:focus-visible,.ipa-uf-dates input:focus-visible{outline:2px solid #62b1ee;outline-offset:2px}.ipa-uf-grid option{color:#11263d;background:#fff}.ipa-uf-dates{margin-top:12px}.ipa-uf-info{margin-top:14px;color:#aabfd6;line-height:1.55;font-size:10px}.ipa-uf-error{color:#fca5a5;font-size:11px;margin-top:4px}.ipa-uf-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}.ipa-uf-actions button{min-height:38px;padding:7px 14px;border-radius:10px;font-size:11px;font-weight:800}.ipa-uf-actions button:first-child{background:#20364c;color:#d5e6f8;border:1px solid #416381}.ipa-uf-actions button:last-child{background:#1477d4;color:white;border:1px solid #3194ed}
/* The native owner + class controls remain operational but their main-hero duplicates disappear when unified button is ready. */
html.ipa-uf-ready .ipa-premium-header-r30 .ipa-owner-report-badge,html.ipa-uf-ready .ipa-premium-header-r30 .ipa-unitclass-report-badge{display:none!important}
/* Native panel action lanes move below the photo without altering hero dimensions. */
.ipa-uf-local-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;min-height:0;margin-top:10px;padding:8px 12px;border:1px solid #d4e3ef;border-radius:13px;background:#f7fafd;color:#24405b;box-sizing:border-box}
html.dark .ipa-uf-local-toolbar{background:#12253d;color:#e6f1ff;border-color:#375271}
.ipa-uf-local-toolbar .ipa-r30-action-zone{position:static!important;inset:auto!important;transform:none!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;width:auto!important;max-width:100%!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important;backdrop-filter:none!important}
.ipa-uf-local-toolbar .prod-actions{position:static!important;inset:auto!important;transform:none!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;padding:0!important;margin:0!important;width:auto!important;min-width:0!important;max-width:100%!important}
.ipa-uf-local-toolbar .prod-filters{position:static!important;inset:auto!important;transform:none!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:9px!important;width:auto!important;max-width:100%!important;margin:0 auto 0 0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.ipa-uf-local-toolbar .prod-filter{min-width:0!important;position:static!important;flex:0 1 auto!important;padding:2px 4px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.ipa-uf-local-toolbar .prod-filter:first-child[data-ipa-uf-site-managed="true"]{display:none!important}/* Site now controlled in topbar; native control is kept in DOM and by native API. */
.ipa-uf-local-toolbar .prod-filter label{color:#5f7790!important;font-size:9px!important}html.dark .ipa-uf-local-toolbar .prod-filter label{color:#aac4dc!important}
.ipa-uf-local-toolbar .prod-filter :is(select,input){max-width:160px!important;width:100%!important;min-height:36px!important;border-radius:9px!important}
@media(min-width:768px) and (max-width:1250px){#ipa-auth-user-dock .ipa-uf-trigger>small{display:none}}
@media(max-width:767px){#ipa-auth-user-dock .ipa-uf-trigger{display:none!important}.ipa-uf-panel{top:10px;right:8px;left:8px;width:auto;max-height:calc(100dvh - 20px)}.ipa-uf-local-toolbar{padding:9px;justify-content:flex-start}.ipa-uf-local-toolbar .prod-filters{width:100%!important;justify-content:flex-start!important;gap:5px!important}.ipa-uf-local-toolbar .prod-actions{justify-content:flex-start!important}.ipa-uf-local-toolbar .prod-filter :is(select,input){max-width:136px!important}}
@media(max-width:359px){.ipa-uf-grid{grid-template-columns:1fr}.ipa-uf-panel{padding:12px}.ipa-uf-local-toolbar .prod-filter :is(select,input){max-width:115px!important}}
@media(prefers-reduced-motion:reduce){.ipa-uf-panel *,#ipa-auth-user-dock .ipa-uf-trigger{transition:none!important}}
/* The old main dashboard owner/class fields remain mounted for their original state controller. */
html.ipa-uf-ready #main-header #ownership-scope-control,
html.ipa-uf-ready #main-header #unitclass-scope-control{display:none!important}

/* RC2: Scope badges were still visible: base index uses #desktop-track + display:inline-flex!important.
   Keep native elements mounted (data/render/export adapters depend on them), hide only once
   every matching scope setter, including Maintenance, is available in the unified popover.
   Higher specificity than legacy 6.57 and maintenance R47 injected important rules. */
html.ipa-uf-scopes-ready body #desktop-track .ipa-owner-report-badge,
html.ipa-uf-scopes-ready body #desktop-track .ipa-unitclass-report-badge,
html.ipa-uf-scopes-ready body #desktop-track .ipa-maint-report-badge,
html.ipa-uf-scopes-ready body #main-header #ownership-scope-control,
html.ipa-uf-scopes-ready body #main-header #unitclass-scope-control,
html.ipa-uf-scopes-ready body #main-header #maintenance-scope-control{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
  width:0!important;min-width:0!important;max-width:0!important;
  height:0!important;min-height:0!important;max-height:0!important;
  padding:0!important;margin:0!important;border:0!important;flex:0 0 0!important;
}
/* Keep per-panel search, priority, status, Shift, Date BD and specialist filters in place. */

/* RC3: Native Tyre and Production controls stay mounted for render/export, but no duplicate filter lanes. */
html.ipa-uf-tyre-integrated #tyre-management-page .tyre-head{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:'title' 'actions'!important;
  row-gap:12px!important;
}
html.ipa-uf-tyre-integrated #tyre-management-page .tyre-head .tyre-filters{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
  position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;
}
html.ipa-uf-production-integrated #production-manpower-page .prod-operation-toolbar{display:none!important}
/* Only panel-specific controls use the global popover; native controls still exist in the panel. */
.ipa-uf-panel #ipa-uf-period-label[hidden],.ipa-uf-panel #ipa-uf-tyre-period-label[hidden],
.ipa-uf-panel #ipa-uf-prod-shift-label[hidden],.ipa-uf-panel #ipa-uf-prod-dates[hidden]{display:none!important}

/* RC6: preserve checkbox dropdown scroll on small screens. */
.ipa-uf-multi-menu{max-height:min(305px,calc(100dvh - 140px));overflow-y:auto;overscroll-behavior:contain}
/* RC5: keyboard-accessible multi-scope controls inside global filter. */
.ipa-uf-multi-field{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0}
.ipa-uf-multi-caption{color:#a8c9e7;font-size:10px;font-weight:800;letter-spacing:.02em}
.ipa-uf-multi-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;min-height:41px;padding:7px 10px;border:1px solid #426380;border-radius:10px;color:#f0f7ff;background:#132d49;font-size:12px;font-weight:750;text-align:left;cursor:pointer}
.ipa-uf-multi-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ipa-uf-multi-trigger>i{flex:none;font-size:10px}
.ipa-uf-multi-trigger:focus-visible{outline:2px solid #62b1ee;outline-offset:2px}
.ipa-uf-multi-menu{position:absolute;z-index:6;top:calc(100% + 5px);left:0;right:0;min-width:min(230px,calc(100vw - 44px));padding:6px;border:1px solid #527696;border-radius:11px;background:#0c1d32;box-shadow:0 16px 32px rgba(0,0,0,.42)}
.ipa-uf-multi-menu[hidden]{display:none!important}
.ipa-uf-multi-option{display:flex;flex-direction:row!important;align-items:center;gap:9px;padding:10px 8px;border-radius:7px;font-size:11px!important;font-weight:750!important;letter-spacing:0!important;white-space:normal;cursor:pointer;color:#e6f2ff!important}
.ipa-uf-multi-option:hover,.ipa-uf-multi-option:focus-within{background:#1a3958}
.ipa-uf-multi-option input{width:16px;height:16px;min-width:16px;accent-color:#2d8af2;cursor:pointer}
@media(max-width:359px){.ipa-uf-multi-menu{min-width:0}}

/* R174 header lifecycle polish: preserve one operational trigger during cross-panel transitions. */
@media(min-width:768px){
 #ipa-auth-user-dock #ipa-uf-trigger{display:inline-flex!important;visibility:visible!important;opacity:1!important;flex:0 0 auto!important;position:relative!important;}
}
@media(min-width:768px) and (max-width:1380px){
 #ipa-auth-user-dock #ipa-uf-button-text{display:none!important}
 #ipa-auth-user-dock #ipa-uf-trigger{min-width:52px;padding-inline:8px!important;}
}
/* Non-destructive stabilization: the original filter inputs remain in the DOM. */
