/* Single owner of the page frame and shared components. */
html,body{height:100%;overflow:hidden;scrollbar-gutter:auto}
#bimflow-app{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}
#bimflow-app .bf-top{position:relative;top:auto;flex:0 0 auto}
#bimflow-app .bf-shell{position:relative;display:grid;grid-template-rows:minmax(0,1fr);flex:1 1 0;min-height:0;overflow:hidden}
#bimflow-app .bf-sidebar{min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}
#bimflow-app .bf-sidebar>:is(.bf-nav,.bf-sidebar-heading,.bf-sidebar-follows,.bf-sidefoot){flex-shrink:0}
/* Navigation order: preserve the original sidebar grid and content frame. */
#bimflow-app .bf-sidebar [data-nav]{position:relative;user-select:none;padding-right:28px}
#bimflow-app .bf-nav-grip{position:absolute;right:0;top:0;bottom:0;width:24px;display:flex;align-items:center;justify-content:center;color:var(--bf-muted);cursor:grab;touch-action:none;font-size:16px;opacity:0;visibility:hidden;pointer-events:none}
#bimflow-app [data-nav]:hover .bf-nav-grip,#bimflow-app [data-nav]:focus-visible .bf-nav-grip,#bimflow-app .bf-nav-dragging .bf-nav-grip{opacity:1;visibility:visible;pointer-events:auto}
@media(hover:none),(pointer:coarse){#bimflow-app .bf-nav-grip{opacity:.6;visibility:visible;pointer-events:auto}}
/* Keep the task handle in the tab order and grid while hiding mouse hit targets.
   Match the innermost card only; descendant hover must not reveal its ancestors. */
#bimflow-app .tk-drag-handle{opacity:0;pointer-events:none}
#bimflow-app :where(.tk-nested-card:hover:not(:has(.tk-nested-card:hover))>.tk-card-surface>.tk-row-summary>.tk-row-heading)>.tk-drag-handle,
#bimflow-app :where(.tk-nested-card:hover:not(:has(.tk-nested-card:hover))>.tk-card-surface>.tk-row-summary>.tk-row-heading)>.bf-ant-host>.tk-drag-handle,
#bimflow-app .tk-drag-handle:focus-visible,#bimflow-app .tk-drag-handle.tk-dragging{opacity:1;pointer-events:auto}
@media(hover:none),(pointer:coarse){#bimflow-app .tk-drag-handle{opacity:1;pointer-events:auto}}
#bimflow-app .tk-drag-handle:disabled{pointer-events:none;cursor:default}
#bimflow-app .bf-sidebar-collapsed .bf-nav{padding:10px 0;min-height:44px;justify-content:center;gap:0}
#bimflow-app .bf-sidebar-collapsed .bf-nav svg{width:24px;height:24px;flex:none}
#bimflow-app .bf-sidebar-collapsed .bf-sidebar{scrollbar-gutter:auto;scrollbar-width:none}
#bimflow-app .bf-sidebar-collapsed .bf-sidebar::-webkit-scrollbar{display:none}
#bimflow-app .bf-sidebar-collapsed .bf-sidebar-heading{display:none}
#bimflow-app .bf-sidebar-collapsed .bf-nav-grip{display:none}
#bimflow-app .bf-nav-dragging{opacity:.5}
#bimflow-app.bf-nav-sorting,#bimflow-app.bf-nav-sorting *{cursor:grabbing!important}
#bimflow-app [data-nav-drop="before"]{box-shadow:0 -3px 0 var(--bf-focus-ring)}
#bimflow-app [data-nav-drop="after"]{box-shadow:0 3px 0 var(--bf-focus-ring)}
#bimflow-app [data-nav-drop="horizontal-before"]{box-shadow:-3px 0 0 var(--bf-focus-ring)}
#bimflow-app [data-nav-drop="horizontal-after"]{box-shadow:3px 0 0 var(--bf-focus-ring)}
#bimflow-app .bf-nav-help{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:700px){
 #bimflow-app .bf-shell:not(.bf-sidebar-collapsed) .bf-sidebar [data-nav]{flex-direction:column;gap:4px;min-height:60px;padding:7px 16px 7px 4px}
 #bimflow-app .bf-sidebar .bf-nav-grip{width:14px;font-size:12px}
 html[lang="zh-CN"] #bimflow-app .bf-sidebar [data-nav] .bf-nav-text{white-space:nowrap;font-size:11px}
}
/* The collapse control belongs to the shell so short-sidebar scrolling cannot hide it. */
#bimflow-app .bf-shell .bf-sidebar-toggle{position:absolute;grid-column:1 / 2;grid-row:1 / 2;right:-10px;top:50%;transform:translateY(-50%);z-index:5;width:20px;height:96px;padding:0;border:1px solid var(--bf-line);border-radius:8px;background:var(--bf-side);color:var(--bf-muted);cursor:pointer}
#bimflow-app .bf-shell .bf-sidebar-toggle:hover,#bimflow-app .bf-shell .bf-sidebar-toggle:focus-visible{background:var(--bf-hover);color:var(--bf-primary);border-color:var(--bf-focus-ring)}
#bimflow-app .bf-shell .bf-sidebar-toggle>svg{width:18px;height:18px;pointer-events:none}
@media(max-width:700px){
 #bimflow-app .bf-shell .bf-sidebar-toggle{position:relative;grid-column:auto;grid-row:auto;right:auto;top:auto;transform:none;align-self:center;width:96px;height:44px;min-height:44px;margin:0;border-radius:8px}
 #bimflow-app .bf-shell .bf-sidebar-toggle>svg{transform:rotate(90deg)}
}
#bimflow-app .bf-main:focus-visible{outline-offset:-3px}
#bimflow-app .bf-main {
  width:100%; max-width:none; min-width:0; min-height:0; height:100%; margin:0; align-self:stretch;
  overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable;
  padding:var(--ui-page-y) var(--ui-page-x) var(--ui-section-gap);
}
@media(max-width:700px){
 #bimflow-app .bf-shell{display:flex;flex-direction:column}
 #bimflow-app .bf-sidebar{flex:0 0 auto;max-height:38dvh;overflow-y:auto;grid-auto-rows:minmax(44px,auto)}
 #bimflow-app .bf-shell.bf-sidebar-collapsed .bf-sidebar{grid-template-columns:repeat(auto-fit,minmax(44px,1fr))}
 #bimflow-app .bf-main{height:auto;flex:1 1 0}
}
#bimflow-app {font-family:var(--ui-font-family);font-size:var(--ui-font-body)}
#bimflow-app h1{font-size:var(--ui-font-title);font-weight:650;line-height:1.3;letter-spacing:-.6px;overflow-wrap:anywhere}
#bimflow-app h2{font-size:var(--ui-font-section);font-weight:600;line-height:1.5}
#bimflow-app h3{font-size:var(--ui-font-body);font-weight:600;line-height:1.5}
#bimflow-app .bf-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ui-space-4);margin-bottom:var(--ui-section-gap);min-width:0}
#bimflow-app .bf-heading-copy{min-width:0;flex:1}
#bimflow-app .bf-head h1{margin:0}
#bimflow-app .bf-head .bf-subtitle{margin-bottom:0}
#bimflow-app .bf-panelhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;flex-wrap:wrap}
#bimflow-app .bf-panelhead h2{margin:0;font-size:17px}
#bimflow-app .bf-panelbody{padding:0 16px 16px}
/* Settings use a local category rail; all controls keep the shared visual system. */
#bimflow-app .bf-settings-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--ui-space-5);align-items:start}
#bimflow-app .bf-settings-nav{display:flex;flex-direction:column;gap:var(--ui-space-2);padding:var(--ui-space-3);background:var(--bf-side);border-radius:var(--ui-radius-lg);position:sticky;top:0}
#bimflow-app .bf-settings-nav .bf-tab{display:flex;align-items:center;justify-content:flex-start;gap:var(--ui-space-3);text-align:left;white-space:normal;min-height:44px;border:0;border-radius:var(--ui-radius);padding:var(--ui-space-3);color:var(--bf-text);background:transparent;font:600 var(--ui-font-body) var(--ui-font-family)}
#bimflow-app .bf-settings-nav .bf-tab svg{flex-shrink:0}
#bimflow-app .bf-settings-categories{display:flex;flex-direction:column;gap:var(--ui-space-1);min-width:0}
#bimflow-app .bf-settings-group{color:var(--bf-muted);font-size:var(--ui-font-small);padding:var(--ui-space-3)}
#bimflow-app .bf-settings-search{min-width:0;width:100%;box-sizing:border-box}
#bimflow-app .bf-settings-search input{min-width:0;width:100%}
#bimflow-app .bf-setting-card{padding:var(--ui-space-2) var(--ui-space-4);margin-top:var(--ui-space-4)}
#bimflow-app .bf-setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-5);padding-block:var(--ui-space-4)}
#bimflow-app .bf-setting-row+.bf-setting-row{border-top:1px solid var(--bf-line)}
#bimflow-app .bf-setting-row .bf-grow{min-width:0;overflow-wrap:anywhere}
#bimflow-app .bf-setting-row p{margin:var(--ui-space-2) 0 0;line-height:1.6}
#bimflow-app .bf-setting-row>.bf-field{min-width:160px;margin:0}
#bimflow-app .bf-setting-row>.bf-button{flex-shrink:0}
#bimflow-app .bf-setting-card+.bf-mute{margin-top:var(--ui-space-3)}
#bimflow-app .bf-setting-row>.bf-actions{flex-wrap:wrap;justify-content:flex-end;min-width:160px}
#bimflow-app .bf-settings-nav .bf-tab.active{background:var(--bf-selected);color:var(--bf-selected-text)}
#bimflow-app .bf-settings-nav .bf-tab:hover{background:var(--bf-hover)}
#bimflow-app #configuration-content{min-width:0}
#bimflow-app .bf-settings-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--ui-space-4);flex-wrap:wrap}
#bimflow-app .bf-settings-heading h2{font-size:var(--ui-font-section);margin:0}
#bimflow-app .bf-settings-heading p{margin:var(--ui-space-2) 0}
#bimflow-app .bf-settings-form{padding:var(--ui-space-4)}
#bimflow-app :is(.bf-settings-form,.bf-modal) fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:var(--ui-space-4)}
#bimflow-app .bf-settings-form details{margin-top:var(--ui-space-2)}
#bimflow-app .bf-settings-form summary{cursor:pointer;padding-block:var(--ui-space-3)}
#bimflow-app .bf-settings-form details .bf-field{margin-block:var(--ui-space-3)}
#bimflow-app .bf-modal{box-sizing:border-box;width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:var(--ui-space-5);border:1px solid var(--bf-line);border-radius:var(--ui-radius-lg);background:var(--bf-panel);color:var(--bf-text);overflow:auto;font-family:var(--ui-font-family);box-shadow:var(--ui-shadow)}
#bimflow-app .bf-modal::backdrop{background:#0009}
#bimflow-app .bf-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-4);margin-bottom:var(--ui-space-5)}
#bimflow-app .bf-modal-header h2{font-size:var(--ui-font-section);margin:0}
#bimflow-app .bf-modal .bf-field{display:flex;flex-direction:column;gap:var(--ui-space-2);min-width:0}
#bimflow-app .bf-key-row{display:flex;gap:var(--ui-space-2);align-items:center;flex-wrap:wrap}
#bimflow-app .bf-key-row input{flex:1;min-width:120px;width:0}
#bimflow-app .bf-modal .bf-formactions{display:flex;justify-content:flex-end}
#bimflow-app #configuration-content .bf-rowitem{flex-wrap:wrap;gap:var(--ui-space-3)}
#bimflow-app #configuration-content .bf-rowitem .bf-grow{min-width:0;overflow-wrap:anywhere}
#configuration-content .bf-allowlist-remove{opacity:0;pointer-events:none}
#configuration-content .bf-allowlist-member:hover .bf-allowlist-remove,
#configuration-content .bf-allowlist-member:focus-within .bf-allowlist-remove{opacity:1;pointer-events:auto}
@media(hover:none),(pointer:coarse){#configuration-content .bf-allowlist-remove{opacity:1;pointer-events:auto}}

@media(max-width:900px){#bimflow-app .bf-settings-layout{grid-template-columns:minmax(0,1fr);gap:var(--ui-space-4)}#bimflow-app .bf-settings-nav{position:static}#bimflow-app .bf-settings-categories{flex-direction:row;overflow-x:auto}#bimflow-app .bf-settings-group{display:none}#bimflow-app .bf-settings-nav .bf-tab{flex-shrink:0;white-space:nowrap}#bimflow-app .bf-setting-row{flex-wrap:wrap;gap:var(--ui-space-3)}#bimflow-app .bf-setting-row>.bf-grow{flex-basis:100%}#bimflow-app .bf-setting-row>.bf-field{width:100%}#bimflow-app .bf-setting-row>.bf-actions{justify-content:flex-start}}
@media(max-width:620px){#bimflow-app .bf-modal{padding:var(--ui-space-4)}#bimflow-app .bf-key-row input{flex-basis:100%;width:100%}#bimflow-app .bf-modal .bf-button{min-height:44px}}
#bimflow-app .bf-panelbody>.bf-tablewrap{margin-inline:-16px}
#bimflow-app .bf-sectiontitle{font-size:14px;font-weight:600;margin:20px 0 12px}
#bimflow-app .bf-rowitem{padding-block:12px}
#bimflow-app .bf-toolbar[data-ui-filter-group]{padding:12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--bf-panel)}
#bimflow-app .bf-overlay{align-items:flex-start}
#bimflow-app .bf-drawer{min-height:100dvh;height:auto;padding:24px;overflow:visible;flex-shrink:0}
#bimflow-app .bf-drawertop{margin:0 0 16px;font-size:12px;padding-bottom:12px;border-bottom:1px solid var(--ui-border)}
#bimflow-app .bf-drawer>h2{margin:0 0 8px}
#bimflow-app .bf-drawer>.bf-tabs{margin-top:16px}
#bimflow-app .bf-form{gap:16px}
#bimflow-app .bf-formactions{padding-top:16px;gap:8px}
#bimflow-app .bf-formactions .bf-button{min-width:72px}
@media(max-width:620px){#bimflow-app .bf-drawer{padding:16px}#bimflow-app .bf-field :is(input,select,textarea){font-size:16px}#bimflow-app .bf-formactions{flex-wrap:wrap}#bimflow-app .bf-formactions .bf-button{min-height:44px}}
#bimflow-app .bf-detail,#bimflow-app .rc-editor{width:100%;max-width:none;margin:0;padding:0}
#bimflow-app .bf-detail{background:transparent;border:0;border-radius:0;overflow:visible;height:auto;min-height:0}
#bimflow-app .bf-detail>h1{margin:var(--ui-space-4) 0 var(--ui-space-2)}
#bimflow-app .bf-detail .bf-detail-back{margin:0 0 12px}
#bimflow-app .bf-record-head{min-width:0;margin-bottom:16px}
#bimflow-app .bf-record-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0}
#bimflow-app .bf-record-title :is(h1,h2){margin:0;font-size:24px;line-height:1.4;overflow-wrap:anywhere}
#bimflow-app .bf-record-head .bf-subtitle{margin:6px 0 0}
#bimflow-app .bf-detail>.bf-tabs{margin-top:0;margin-bottom:20px}
@media(max-width:620px){#bimflow-app .bf-record-title :is(h1,h2){font-size:20px}#bimflow-app .bf-detail .bf-detail-back{margin-bottom:12px}}
#bimflow-app .bf-head .bf-subtitle{margin-top:var(--ui-space-2);line-height:1.7}
#bimflow-app .bf-head-actions{display:flex;align-items:center;gap:var(--ui-space-2);flex-wrap:wrap;justify-content:flex-end}
#bimflow-app .bf-button:not(.ant-btn){display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-space-2);min-height:var(--ui-control-height);padding:var(--ui-space-2) var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--bf-panel);color:var(--bf-text);font-size:var(--ui-font-body);line-height:1.4;white-space:nowrap}
#bimflow-app .bf-button:not(.ant-btn):hover{background:var(--bf-hover)}
#bimflow-app .bf-button:not(.ant-btn).primary{background:var(--bf-primary);border-color:var(--bf-primary);color:var(--bf-on-primary)}
#bimflow-app .bf-button:not(.ant-btn).primary:hover{background:var(--ui-blue-hover)}
#bimflow-app .bf-button:not(.ant-btn).small{min-height:var(--ui-control-compact);padding:4px 8px;font-size:var(--ui-font-small)}
#bimflow-app .bf-button:not(.ant-btn):disabled{opacity:.5;cursor:not-allowed}
#bimflow-app .bf-button>svg,#bimflow-app .bf-tab>svg,#bimflow-app .bf-search>svg{width:var(--ui-icon-size);height:var(--ui-icon-size);flex-shrink:0}
#bimflow-app :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:3px}
#bimflow-app .bf-tabs{display:flex;align-items:stretch;gap:var(--ui-space-1);width:fit-content;max-width:100%;padding:5px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-segment-surface);margin-bottom:var(--ui-section-gap);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-padding-inline:6px;overscroll-behavior-inline:contain}
#bimflow-app .bf-tab{display:flex;align-items:center;justify-content:center;gap:var(--ui-space-2);padding:8px 16px;border:1px solid transparent;border-radius:var(--ui-radius);color:var(--bf-text);background:transparent;font-size:var(--ui-font-body);font-weight:600;line-height:1.4;white-space:nowrap;flex-shrink:0;min-height:var(--ui-segment-height)}
#bimflow-app .bf-tab:hover{background:var(--bf-panel)}
#bimflow-app .bf-tab.active{color:var(--bf-selected-text);background:var(--bf-selected);border-color:var(--bf-selected-border);box-shadow:var(--ui-shadow)}
#bimflow-app .bf-tab:disabled{opacity:.5;cursor:not-allowed}
#bimflow-app .bf-toolbar{display:flex;gap:var(--ui-space-3);align-items:center;margin-bottom:var(--ui-section-gap);flex-wrap:wrap;min-width:0}
#bimflow-app .bf-search{display:flex;align-items:center;gap:var(--ui-space-2);padding:0 var(--ui-space-3);background:var(--bf-panel);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);min-width:130px;max-width:320px;flex:1;min-height:var(--ui-control-height);color:var(--bf-muted)}
#bimflow-app .bf-search input{border:0;outline:none;background:transparent;min-width:0;width:100%;font-size:var(--ui-font-body);padding:8px 0;line-height:1.4}
#bimflow-app .bf-search:focus-within{outline:2px solid var(--bf-focus-ring);outline-offset:2px}
#bimflow-app :is(.bf-toolbar,.rc-toolbar,.bf-intel-toolbar,.sd-controls,.pf-filters) select{min-height:var(--ui-control-height);padding:8px 10px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--bf-panel);font-size:var(--ui-font-body);max-width:100%}
#bimflow-app .bf-field :is(input,select,textarea){border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--bf-panel);padding:8px 10px;min-height:var(--ui-control-height);font-size:var(--ui-font-body)}
#bimflow-app .bf-panel{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--bf-panel);min-width:0;overflow:hidden}
#bimflow-app :is(.bf-kpi,.bf-membercard,.bf-taskcard,.rc-category,.rc-family-card){border-radius:var(--ui-radius-lg);border-color:var(--ui-border);background:var(--bf-panel)}
#bimflow-app :is(.bf-membercard,.bf-taskcard,.rc-family-card):hover{box-shadow:var(--ui-shadow)}
#bimflow-app .bf-membercard.bf-membercard-profile{display:flex;flex-direction:column;align-items:stretch;gap:var(--ui-space-3);text-align:left;white-space:normal}
#bimflow-app .bf-membercard.bf-membercard-profile::after{display:none}
#bimflow-app .bf-tablewrap{max-width:100%;overflow:auto;overscroll-behavior-inline:contain}
#bimflow-app .bf-table{font-size:var(--ui-font-body)}
#bimflow-app .bf-table :is(th,td){padding:12px 16px}
#bimflow-app .bf-table tbody tr:hover{background:var(--bf-hover)}
#bimflow-app .bf-table th{font-size:var(--ui-font-small);line-height:1.5}
#bimflow-app .bf-empty{padding:32px 16px;text-align:center;color:var(--bf-muted);font-size:var(--ui-font-body);line-height:1.7}
#bimflow-app .bf-empty .bf-button{margin-top:var(--ui-space-3)}
#bimflow-app .bf-membergrid>.bf-empty{grid-column:1/-1}
#bimflow-app .bf-notice{display:flex;align-items:center;gap:var(--ui-space-2);background:var(--bf-softorange);border-radius:var(--ui-radius);color:var(--bf-orange);padding:12px 16px;font-size:var(--ui-font-body);margin-bottom:var(--ui-section-gap);line-height:1.6}
#bimflow-app .bf-notice.neutral{background:var(--bf-secondary-soft);color:var(--bf-link)}
#bimflow-app .bf-notice button{color:inherit;font-weight:500;white-space:nowrap}
#bimflow-app .bf-intel-status{font-size:var(--ui-font-small);line-height:1.7}
#bimflow-app .bf-toast{border-radius:var(--ui-radius);padding:12px 16px;font-size:var(--ui-font-body)}
@media(max-width:900px){#bimflow-app .bf-head{flex-wrap:wrap}#bimflow-app .bf-head-actions{justify-content:flex-start}}
@media(max-width:620px){
 #bimflow-app :is(.bf-toolbar,.rc-toolbar,.bf-intel-toolbar,.sd-controls,.pf-filters) :is(input:not([type="checkbox"]):not([type="radio"]),select){font-size:16px}
 #bimflow-app :is(.bf-toolbar,.pf-filters) select,#bimflow-app :is(.bf-toolbar,.pf-filters)>.bf-button,#bimflow-app .bf-toolbar>.bf-textbutton,#bimflow-app .pf-filters>.pf-text,#bimflow-app .bf-intel-archive,#bimflow-app .bf-checkline{min-height:44px}
 #bimflow-app .bf-toolbar>.bf-textbutton{padding:6px 8px}
 #bimflow-app .pf-filters>.pf-text{font-size:14px}
 #bimflow-app :is(.bf-toolbar,.pf-filters) :is(.bf-search,.pf-search){min-height:44px}
 #bimflow-app .bf-head-actions{width:100%}
 #bimflow-app :is(.bf-toolbar,.rc-toolbar,.bf-intel-toolbar) .bf-search{flex-basis:100%;width:100%;max-width:none;min-width:0}
 #bimflow-app .bf-toolbar>.bf-button{max-width:100%}
 #bimflow-app .bf-notice{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){#bimflow-app *,#bimflow-app *:before,#bimflow-app *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* YANTRON identity and preference controls. Original logo is never recolored. */
html{background:light-dark(#f8f7f5,#000000);color-scheme:light dark}
#bimflow-app .bf-logo{flex-shrink:0;padding:8px 10px;background:transparent}
#bimflow-app .bf-logo img{display:block;width:166px;height:auto;max-width:100%;object-fit:contain}
#bimflow-app .bf-top{min-height:64px;height:auto;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
#bimflow-app .bf-preferences{display:flex;gap:12px;align-items:center}
#bimflow-app .bf-switcher{display:inline-flex;align-items:stretch;gap:3px;padding:3px;border:1px solid var(--bf-line);background:var(--bf-side);border-radius:var(--ui-radius)}
#bimflow-app .bf-switcher:not([data-ant-surface]) button{display:flex;gap:6px;align-items:center;justify-content:center;min-height:36px;padding:0 11px;border:1px solid transparent;border-radius:var(--ui-radius-sm);font-size:12px;font-weight:600;color:var(--bf-muted);white-space:nowrap}
#bimflow-app .bf-switcher:not([data-ant-surface]) button:hover{background:var(--bf-hover);color:var(--bf-text)}
#bimflow-app .bf-switcher:not([data-ant-surface]) button[aria-pressed="true"]{background:var(--bf-primary);color:var(--bf-on-primary);box-shadow:0 1px 3px #0002}
#bimflow-app .bf-switcher:not([data-ant-surface]) button:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:2px}
#bimflow-app .bf-switcher svg{width:15px;height:15px}
#bimflow-app .bf-language{flex:none}
#bimflow-app .bf-language button{min-width:64px}
#bimflow-app .bf-theme-controls{display:inline-flex;align-items:center;gap:6px;min-width:0}
#bimflow-app .bf-top{z-index:40;overflow:visible}
#bimflow-app .bf-accent-picker{position:relative;flex:none}
#bimflow-app .bf-accent-picker>summary{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border:1px solid var(--bf-line);border-radius:var(--ui-radius);background:var(--bf-side);color:var(--bf-muted);font-size:12px;font-weight:600;white-space:nowrap;list-style:none;cursor:pointer}
#bimflow-app .bf-accent-picker>summary::-webkit-details-marker{display:none}
#bimflow-app .bf-accent-picker>summary:hover,#bimflow-app .bf-accent-picker[open]>summary{background:var(--bf-hover);color:var(--bf-text);border-color:var(--bf-primary)}
#bimflow-app .bf-accent-picker>summary:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:2px}
#bimflow-app .bf-accent-swatch{display:inline-block;width:14px;height:14px;flex:none;border:2px solid var(--bf-panel);border-radius:50%;background:var(--bf-accent-swatch,var(--bf-primary));box-shadow:0 0 0 1px var(--bf-line)}
#bimflow-app .bf-accent-options{position:absolute;z-index:30;top:calc(100% + 6px);right:0;width:min(220px,calc(100vw - 24px));display:grid;gap:3px;padding:6px;border:1px solid var(--bf-line);border-radius:var(--ui-radius);background:var(--bf-panel);box-shadow:0 12px 32px #0003}
#bimflow-app .bf-accent-options button{display:flex;align-items:center;gap:9px;min-height:40px;padding:7px 9px;border:1px solid transparent;border-radius:var(--ui-radius-sm);background:transparent;color:var(--bf-text);font-size:12px;text-align:left}
#bimflow-app .bf-accent-options button:hover{background:var(--bf-hover)}
#bimflow-app .bf-accent-options button[aria-pressed="true"]{border-color:var(--bf-selected-border);background:var(--bf-selected);color:var(--bf-selected-text);font-weight:650}
#bimflow-app .bf-accent-options button:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:1px}
#bimflow-app .bf-accent-options .bf-theme-reset{margin-top:3px;border-top:1px solid var(--bf-line);border-radius:0 0 var(--ui-radius-sm) var(--ui-radius-sm);color:var(--bf-muted)}
#bimflow-app .bf-account-controls{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0}
#bimflow-app .bf-account-entry{display:flex;max-width:min(20em,100%);min-width:0;text-decoration:none}
#bimflow-app .bf-account-entry [data-account-label]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#bimflow-app input,#bimflow-app select,#bimflow-app textarea{background-color:var(--bf-panel)}
@media(max-width:760px){#bimflow-app .bf-topnote{display:none}#bimflow-app .bf-preferences{gap:8px}#bimflow-app .bf-logo img{width:142px}}
@media(max-width:620px){#bimflow-app .bf-top{padding:8px 12px;gap:8px}#bimflow-app .bf-preferences{order:4;flex-basis:100%;justify-content:space-between;flex-wrap:wrap}#bimflow-app .bf-switcher:not([data-ant-surface]) button{min-height:42px;padding:0 12px}#bimflow-app .bf-accent-picker>summary{min-height:42px}#bimflow-app .bf-logo img{width:138px}}

/* Shared numeric hierarchy: full numbers, tabular figures, units on the baseline. */
#bimflow-app{--ui-metric-size:28px;--ui-metric-weight:650}
#bimflow-app .bf-kpi-value{font-size:var(--ui-metric-size);font-weight:var(--ui-metric-weight);font-variant-numeric:tabular-nums;letter-spacing:-.4px;line-height:1.3;color:var(--bf-text)}
#bimflow-app .bf-kpi{container-type:inline-size}
#bimflow-app .bf-kpi .bf-kpi-value{font-size:clamp(18px,10cqi,var(--ui-metric-size));min-width:0;overflow-wrap:normal}
#bimflow-app .bf-number{display:inline-flex;align-items:baseline;gap:.24em;max-width:100%;font-variant-numeric:tabular-nums}
#bimflow-app .bf-number-value{white-space:nowrap;min-width:0}
#bimflow-app .bf-number-unit{font-size:.5em;letter-spacing:0;font-weight:500;color:var(--bf-muted);flex-shrink:0}
#bimflow-app .bf-number-divider{font-size:.6em;padding:0 .4em;color:var(--bf-muted)}
#bimflow-app .bf-number[data-number-status="denied"]{font-size:16px}
#bimflow-app :is(.bf-count,.mk-amount,.rc-capacity,.schedule-load,.rv-plan-progress,.bf-inline-label){font-variant-numeric:tabular-nums}
#bimflow-app .rv-metrics strong{display:flex;align-items:baseline;flex-wrap:wrap}
#bimflow-app .mk-amount{overflow-wrap:anywhere}
@media(max-width:620px){#bimflow-app{--ui-metric-size:24px}#bimflow-app .bf-kpi .bf-kpi-value{font-size:clamp(18px,10cqi,var(--ui-metric-size))}}

#bimflow-app .bf-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
#bimflow-app .bf-workspace .bf-w{background:var(--bf-primary);color:var(--bf-on-primary)}

#bimflow-app .bf-nav-text{min-width:0;overflow-wrap:anywhere;white-space:normal}
#bimflow-app .bf-field :is(input,textarea)::placeholder{color:var(--bf-muted);opacity:1}
@media(max-width:700px){html[lang=en] #bimflow-app .bf-shell:not(.bf-sidebar-collapsed) .bf-sidebar{grid-template-columns:repeat(3,minmax(0,1fr))}html[lang=en] #bimflow-app .bf-shell:not(.bf-sidebar-collapsed) .bf-nav{flex-direction:column;gap:4px;min-height:60px;padding:7px 4px}html[lang=en] #bimflow-app .bf-nav-text{overflow-wrap:normal;word-break:normal;text-align:center}}

/* Summary cards: the single visual owner for center, report and inventory totals. */
#bimflow-app .bf-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:0 0 var(--ui-section-gap)}
#bimflow-app .bf-kpi{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--bf-panel);text-align:left;color:var(--bf-text)}
#bimflow-app .bf-kpitop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;color:var(--bf-muted)}
#bimflow-app .bf-kpi-icon{display:inline-flex;align-items:center;flex-shrink:0;color:var(--bf-muted)}
#bimflow-app .bf-kpi-icon svg{width:16px;height:16px}
#bimflow-app .bf-kpi .bf-kpi-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:0;margin:8px 0 3px;font-weight:var(--ui-metric-weight);line-height:1.3;letter-spacing:-.4px;color:var(--bf-text)}
#bimflow-app .bf-kpi-note{display:block;margin-top:auto;font-size:12px;line-height:1.5;color:var(--bf-muted)}
#bimflow-app button.bf-kpi-action{border:1px solid var(--ui-border);background:var(--bf-panel);cursor:pointer}
#bimflow-app .bf-kpi-action:hover{border-color:var(--bf-primary)}
#bimflow-app .bf-kpi-action[aria-pressed=true]{border-color:var(--bf-selected-border);box-shadow:inset 0 0 0 1px var(--bf-selected-border)}
#bimflow-app .bf-kpi-action:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:3px}
@media(max-width:620px){#bimflow-app .bf-kpi{padding:16px}}

/* Map selection is a UI state, separate from business stage and starred status. */
#bimflow-app .bf-map-marker{transform:scale(1);transform-origin:50% 100%;transition:transform 180ms ease-out,background-color 180ms ease-out,color 180ms ease-out,opacity 180ms ease-out,outline-color 180ms ease-out;outline:3px solid transparent;outline-offset:3px;background:var(--bf-muted);color:var(--bf-panel);border:2px solid var(--bf-panel);opacity:.78;box-shadow:0 2px 6px #0003}
#bimflow-app .bf-map-marker:after{transition:border-top-color 180ms ease-out;border-top-color:var(--bf-muted)}
#bimflow-app .bf-map-marker.selected{background:var(--bf-primary);color:var(--bf-on-primary);border-color:var(--bf-panel);opacity:1;outline:3px solid var(--bf-focus-ring);outline-offset:3px;transform:scale(1.2);transform-origin:50% 100%}
#bimflow-app .bf-map-marker.selected:after{border-top-color:var(--bf-primary)}
#bimflow-app .bf-map-reset{position:absolute;top:60px;right:16px;z-index:2;width:44px;height:44px;min-height:44px;padding:0;justify-content:center;background:var(--bf-panel);color:var(--bf-text);border:1px solid var(--bf-line);box-shadow:0 2px 6px #0003}
#bimflow-app .bf-map-reset:hover{background:var(--bf-hover)}
#bimflow-app .bf-map-preview-enter{animation:bf-map-preview-enter 180ms ease-out}
@keyframes bf-map-preview-enter{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#bimflow-app .bf-map-marker,#bimflow-app .bf-map-marker:after{transition:none}#bimflow-app .bf-map-preview-enter{animation:none}}
#bimflow-app :is(.pf-project.selected,.mk-card.mk-selected){border-color:var(--bf-selected-border);background:var(--bf-selected);box-shadow:inset 3px 0 var(--bf-selected-border)}
#bimflow-app .bf-map-key{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--bf-muted)}
#bimflow-app .bf-map-key span{display:inline-flex;align-items:center;gap:6px}
#bimflow-app .bf-map-key i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--bf-muted)}
#bimflow-app .bf-map-key i.selected{background:var(--bf-primary);outline:1px solid var(--bf-focus-ring);outline-offset:2px}

/* Authentication entry: shared shell exception, a focused card before workspace navigation. */
body.bf-login-document{margin:0}
#bimflow-app.bf-login-shell{height:100dvh;min-height:0;grid-template-rows:auto minmax(0,1fr)}
#bimflow-app.bf-login-shell .bf-top{flex-wrap:wrap;gap:var(--ui-space-4);height:auto;min-height:72px;padding-block:var(--ui-space-3)}
#bimflow-app.bf-login-shell .bf-preferences{display:flex!important;flex-wrap:wrap;gap:var(--ui-space-2)}
#bimflow-app.bf-login-shell .bf-switcher:not([data-ant-surface]) button{min-height:44px;min-width:44px}
#bimflow-app.bf-login-shell .bf-switcher:not([data-ant-surface]) button[aria-pressed="true"]{color:light-dark(#171717,#fff)}
#bimflow-app .bf-login-main{display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:var(--ui-space-6);padding-block:48px}
#bimflow-app .bf-login-card{width:min(100%,480px);flex-shrink:0;padding:40px;box-shadow:var(--ui-shadow);border-radius:var(--ui-radius-lg)}
#bimflow-app .bf-login-eyebrow{font-size:var(--ui-font-small);font-weight:700;letter-spacing:.12em;color:var(--bf-primary)}
#bimflow-app .bf-login-card h1{font-size:28px;line-height:1.4;letter-spacing:-.025em;margin:var(--ui-space-3) 0}
#bimflow-app .bf-login-intro{font-size:16px;line-height:1.6;color:var(--bf-muted);margin:0 0 var(--ui-space-6)}
#bimflow-app .bf-login-tenant{border-left:3px solid var(--bf-primary);padding-left:var(--ui-space-4);margin-bottom:var(--ui-space-5)}
#bimflow-app .bf-login-tenant span{font-size:var(--ui-font-small);color:var(--bf-muted)}
#bimflow-app .bf-login-tenant p{font-size:16px;line-height:1.6;margin:var(--ui-space-2) 0 0;overflow-wrap:anywhere}
#bimflow-app .bf-login-submit{display:flex;width:100%;height:48px;min-height:48px;justify-content:center;gap:var(--ui-space-4);color:var(--bf-on-primary);font-size:16px;white-space:normal;text-align:center}
#bimflow-app .bf-button.bf-login-submit.primary{color:var(--bf-on-primary)}
#bimflow-app .bf-login-note,#bimflow-app .bf-login-footer{font-size:var(--ui-font-small);line-height:1.6;color:var(--bf-muted)}
#bimflow-app .bf-login-note{margin:var(--ui-space-3) 0 var(--ui-space-5)}
#bimflow-app .bf-login-status{display:flex;align-items:flex-start;gap:var(--ui-space-2);margin:0 0 var(--ui-space-3);color:var(--bf-muted);line-height:1.6;font-size:14px}
#bimflow-app .bf-login-status-icon{flex:none;width:16px;height:16px;margin-top:3px;border:2px solid currentColor;border-radius:50%;box-sizing:border-box}
#bimflow-app .bf-login-status.is-loading .bf-login-status-icon{border-color:color-mix(in srgb,var(--bf-primary) 30%,transparent);border-top-color:var(--bf-primary);animation:bf-login-spin .8s linear infinite}
#bimflow-app .bf-login-status.is-info{color:var(--bf-muted)}
#bimflow-app .bf-login-status.is-info .bf-login-status-icon{border-color:var(--bf-primary);box-shadow:inset 0 0 0 3px var(--bf-panel)}
#bimflow-app .bf-login-status.is-cancelled{color:var(--bf-muted)}
#bimflow-app .bf-login-status.is-cancelled .bf-login-status-icon{border-color:var(--bf-muted)}
#bimflow-app .bf-login-status.is-warning{color:var(--bf-text)}
#bimflow-app .bf-login-status.is-warning .bf-login-status-icon{border-color:var(--bf-orange)}
#bimflow-app .bf-login-status.is-error{color:var(--bf-red)}
#bimflow-app .bf-login-status.is-error .bf-login-status-icon{border-color:var(--bf-red)}
#bimflow-app .bf-login-status:empty{display:none}
#bimflow-app .bf-login-privacy{border-top:1px solid var(--bf-line);padding-top:var(--ui-space-3);font-size:14px;color:var(--bf-muted)}
#bimflow-app .bf-login-privacy summary{cursor:pointer;min-height:44px;align-content:center}
#bimflow-app .bf-login-privacy p{line-height:1.7;margin:var(--ui-space-2) 0 0}
@keyframes bf-login-spin{to{rotate:360deg}}
html[data-erp-session="checking"] #bimflow-app:not(.bf-login-shell){visibility:hidden}
@media(max-width:620px){#bimflow-app .bf-login-card{padding:var(--ui-space-5)}#bimflow-app .bf-login-card h1{font-size:24px}#bimflow-app .bf-login-main{padding-block:var(--ui-space-5)}#bimflow-app.bf-login-shell .bf-top{justify-content:center;gap:var(--ui-space-3);padding-block:var(--ui-space-2)}#bimflow-app.bf-login-shell .bf-spacer{display:none}#bimflow-app.bf-login-shell .bf-preferences{justify-content:center}#bimflow-app .bf-login-status{min-height:0}}
@media(prefers-reduced-motion:reduce){#bimflow-app .bf-login-status.is-loading .bf-login-status-icon{animation:none}}
#bimflow-app [hidden]{display:none!important}
/* Personnel presentation shares card semantics and never changes record scope. */
#bimflow-app .bf-avatar{position:relative;overflow:hidden}
#bimflow-app .bf-avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
#bimflow-app .bf-avatar[data-avatar-style=compact]{width:28px;height:28px;font-size:11px}
#bimflow-app .bf-avatar[data-avatar-style=list]{width:40px;height:40px;font-size:16px}
#bimflow-app .bf-avatar[data-avatar-style=profile]{width:64px;height:64px;font-size:22px}
#bimflow-app .bf-avatar[data-avatar-style=bubble]{width:100%;height:100%;font-size:24px}
#bimflow-app .bf-avatar-button{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:inherit;padding:4px;border-radius:50%;cursor:pointer;vertical-align:middle}
#bimflow-app .bf-avatar-button:hover{background:var(--bf-hover)}
#bimflow-app .bf-avatar-button:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:1px}
#bimflow-app .bf-avatar-tooltip{position:fixed;z-index:1000;pointer-events:none;max-width:min(320px,calc(100vw - 16px));padding:6px 10px;border:1px solid var(--bf-line);border-radius:6px;background:var(--bf-text);color:var(--bf-panel);font-size:12px;line-height:1.5;overflow-wrap:anywhere;box-shadow:0 3px 12px #0003}
#bimflow-app .bf-people-toolbar{gap:var(--ui-space-2)}
#bimflow-app .bf-people-toolbar .bf-search{flex:1 1 240px;max-width:300px;min-width:0}
#bimflow-app .bf-people-mode{margin-left:auto;max-width:100%}
#bimflow-app .bf-people-toolbar select:disabled{opacity:.5;cursor:not-allowed}
#bimflow-app .bf-memberlist{min-width:0;max-width:100%}
#bimflow-app .bf-memberlist[data-people-view=rows]{overflow-x:auto;padding-bottom:var(--ui-space-2)}
#bimflow-app .bf-memberlist[data-people-view=rows]>:is(.bf-memberhead,.bf-membergrid){min-width:760px}
#bimflow-app .bf-memberhead,#bimflow-app .bf-membergrid[data-people-view=rows] .bf-membercard{display:grid;grid-template-columns:40px minmax(100px,.9fr) minmax(100px,1fr) minmax(130px,1.3fr) minmax(90px,.8fr) 38px;align-items:center;gap:var(--ui-space-4);padding:var(--ui-space-2) var(--ui-space-4)}
#bimflow-app .bf-memberlist[data-people-layout=compact][data-people-view=rows]>:is(.bf-memberhead,.bf-membergrid){min-width:360px}
#bimflow-app .bf-memberlist[data-people-layout=compact]>.bf-memberhead,#bimflow-app .bf-membergrid[data-people-layout=compact][data-people-view=rows] .bf-membercard{grid-template-columns:40px minmax(80px,.8fr) minmax(100px,1.2fr) 38px}
#bimflow-app .bf-memberhead{border:1px solid transparent;color:var(--bf-muted);font-size:var(--ui-font-small);font-weight:600}
#bimflow-app .bf-membergrid[data-people-view=rows]{grid-template-columns:minmax(0,1fr);gap:var(--ui-space-2);padding-top:var(--ui-space-1)}
#bimflow-app .bf-membergrid[data-people-view=rows] .bf-membercard{height:auto;min-height:58px;justify-content:normal;text-align:left;white-space:normal;overflow:visible}
#bimflow-app .bf-membergrid[data-people-view=rows] .bf-membertop{display:contents}
#bimflow-app .bf-membergrid[data-people-view=rows] .bf-avatar{width:40px;height:40px;font-size:16px;margin:0;align-self:center;position:relative;top:0;border:1px solid var(--bf-line)}
#bimflow-app .bf-membergrid[data-people-view=rows] .bf-membertop>div{min-width:0;overflow-wrap:anywhere}
#bimflow-app .bf-membergrid[data-people-view=rows] h3{margin:0}
#bimflow-app .bf-membergrid[data-people-view=rows] .bf-membercard::after{display:none}
#bimflow-app .bf-memberfield{display:flex;flex-direction:column;gap:var(--ui-space-1);min-width:0;overflow-wrap:anywhere;font-size:var(--ui-font-body)}
#bimflow-app .bf-memberfield>small{color:var(--bf-muted);font-size:var(--ui-font-small);font-weight:400}
#bimflow-app .bf-memberaction{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--bf-line);border-radius:var(--ui-radius-sm);color:var(--bf-primary)}
#bimflow-app .bf-memberaction svg{width:18px;height:18px}
#bimflow-app .bf-membergrid[data-people-view=bubbles]{display:grid;grid-template-columns:repeat(auto-fill,clamp(56px,6vw,72px));grid-auto-rows:clamp(56px,6vw,72px);justify-content:center;align-content:start;gap:22px 14px;min-height:0;padding:18px;isolation:isolate;border:1px solid var(--bf-line);border-radius:var(--ui-radius-lg);background:var(--bf-hover);overflow:hidden}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard{position:relative;left:auto;top:auto;width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:50%;padding:0;border:0;touch-action:auto;user-select:none;cursor:pointer;transition:none;box-shadow:none;overflow:visible}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard:focus-visible{outline-offset:-4px;z-index:1}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard>:not(.bf-membertop,.bf-ant-label),#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-ant-label>:not(.bf-membertop),#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard::after,#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membertop small,#bimflow-app .bf-membergrid[data-people-view=bubbles] h3>span{display:none}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membertop{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:center;gap:0;margin:0;width:100%;height:100%;min-width:0}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membertop>div{position:absolute;top:calc(100% + 4px);left:0;width:100%;visibility:hidden;pointer-events:none;background:transparent;border:0;padding:0;box-shadow:none;text-align:center;box-sizing:border-box}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard:is(:hover,:focus){z-index:2}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-membercard:is(:hover,:focus) .bf-membertop>div{visibility:visible}
#bimflow-app .bf-membergrid[data-people-view=bubbles] h3{font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;margin:0;text-align:center;color:var(--bf-text);-webkit-text-stroke:3px var(--bf-panel);paint-order:stroke fill}
#bimflow-app .bf-membergrid[data-people-view=bubbles] .bf-avatar{width:100%;height:100%;font-size:24px;max-width:100%;margin:0;flex-shrink:0;border-radius:50%}
#bimflow-app .bf-membergrid[data-people-view=bubbles]>.bf-empty{position:relative;padding:var(--ui-space-4)}
@media(max-width:620px){#bimflow-app .bf-people-toolbar .bf-search{max-width:none;flex-basis:100%}#bimflow-app .bf-people-mode{margin-left:0}#bimflow-app .bf-membergrid[data-people-view=bubbles]{gap:18px 10px;padding:12px}}

/* Shared five-star rating: native radios retain keyboard navigation. */
#bimflow-app .bf-rating{border:0;padding:0;margin:0;min-width:0}
#bimflow-app .bf-rating legend{font-size:13px;margin-bottom:6px}
#bimflow-app .bf-rating-stars{display:flex;gap:4px}
#bimflow-app .bf-rating-stars>label,#bimflow-app .bf-rating-stars>span{position:relative;display:grid;place-items:center;width:44px;height:44px;font-size:27px;color:var(--bf-muted);cursor:pointer}
#bimflow-app .bf-rating-stars .is-filled{color:var(--bf-primary)}
#bimflow-app .bf-rating-stars input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
#bimflow-app .bf-rating-stars label:has(input:focus-visible){outline:2px solid var(--bf-focus-ring);outline-offset:2px;border-radius:4px}
#bimflow-app .bf-rating:disabled .bf-rating-stars label,#bimflow-app .bf-rating-stars>span{cursor:default}
#bimflow-app .bf-rating-value{font-size:12px;color:var(--bf-muted)}
/* Header sync reuses the icon button and announces its state without a text label. */
#bimflow-app .bf-sync-button{position:relative;flex:none;width:38px;height:38px}
#bimflow-app .bf-sync-button .bf-sync-icon{width:20px;height:20px;transform-origin:center}
#bimflow-app .bf-sync-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#bimflow-app .bf-sync-button.is-syncing .bf-sync-icon{animation:bf-sync-spin 1.2s linear infinite}
@keyframes bf-sync-spin{to{transform:rotate(360deg)}}
@media(max-width:620px){#bimflow-app .bf-sync-button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){#bimflow-app .bf-sync-button.is-syncing .bf-sync-icon{animation:none}#bimflow-app .bf-sync-button.is-syncing{color:var(--bf-primary);background:var(--bf-hover)}}
/* Shared rich description and compact attachment presentation. */
#bimflow-app .bf-description-editor{border:1px solid var(--bf-line);border-radius:var(--ui-radius);background:var(--bf-panel);overflow:hidden}
#bimflow-app .bf-description-editor:focus-within{border-color:var(--bf-focus-ring)}
#bimflow-app .bf-description-input{min-height:148px;padding:14px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap;outline-offset:-3px}
#bimflow-app .bf-description-input p,#bimflow-app .bf-description-input div{margin:0}
#bimflow-app .bf-description-input blockquote{border-left:3px solid var(--bf-line);margin:8px 0;padding-left:12px;color:var(--bf-muted)}
#bimflow-app .bf-description-tools{display:flex;flex-wrap:wrap;gap:2px;padding:6px 8px;border-top:1px solid var(--bf-line)}
#bimflow-app .bf-description-tools .bf-iconbutton{min-width:36px;min-height:36px;border:0;background:transparent}
#bimflow-app .bf-attachments{margin-top:24px;min-width:0}
#bimflow-app .bf-attachments-heading{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:8px;color:var(--bf-muted);font-size:14px}
#bimflow-app .bf-attachments-heading>svg,#bimflow-app .bf-attachment-picker>svg,#bimflow-app .bf-attachment-empty>svg{width:20px;height:20px;flex:0 0 20px}
#bimflow-app .bf-attachments-heading>span{display:flex;flex-wrap:wrap;gap:4px}
#bimflow-app .bf-attachment-download-all{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:0}
#bimflow-app .bf-attachment-download-all svg{width:16px;height:16px}
#bimflow-app .bf-attachment-download-all:disabled{opacity:.6;cursor:wait}
#bimflow-app .bf-attachment-list{display:grid;gap:8px;margin-left:32px;max-width:384px}
#bimflow-app .bf-attachment-card{position:relative;min-width:0;border:1px solid var(--bf-line);border-radius:var(--ui-radius-lg);background:var(--bf-panel)}
#bimflow-app .bf-attachment-main{display:flex;align-items:center;gap:16px;min-width:0;width:100%;min-height:88px;padding:16px;border:0;border-radius:inherit;background:transparent;text-align:left;color:var(--bf-text);text-decoration:none;font:inherit;cursor:pointer}
#bimflow-app .bf-attachment-file{flex:0 0 40px;width:40px;height:48px;color:var(--bf-orange)}
#bimflow-app .bf-attachment-file svg{width:100%;height:100%}
#bimflow-app .bf-attachment-info{display:flex;flex:1;min-width:0;flex-direction:column;gap:8px}
#bimflow-app .bf-attachment-info strong{font-size:14px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#bimflow-app .bf-attachment-info small{color:var(--bf-muted);font-size:12px}
#bimflow-app .bf-attachment-actions{position:absolute;right:8px;bottom:8px;display:flex;gap:8px;padding-left:8px;background:var(--bf-panel);opacity:0;pointer-events:none;border-radius:var(--ui-radius-sm)}
#bimflow-app .bf-attachment-card:hover .bf-attachment-actions,#bimflow-app .bf-attachment-card:focus-within .bf-attachment-actions{opacity:1;pointer-events:auto}
#bimflow-app .bf-attachment-picker,#bimflow-app .bf-attachment-empty{position:relative;display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--bf-muted);cursor:pointer}
#bimflow-app .has-files .bf-attachment-picker{margin-left:32px;gap:0;color:var(--bf-primary)}
#bimflow-app .bf-attachment-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
#bimflow-app .bf-attachment-picker:focus-within{outline:2px solid var(--bf-focus-ring);outline-offset:2px}
#bimflow-app .bf-attachment-help{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(hover:none),(max-width:620px){#bimflow-app .bf-attachment-actions{position:static;justify-content:flex-end;padding:0 12px;opacity:1;pointer-events:auto}#bimflow-app .bf-attachment-download-all{min-height:44px}#bimflow-app .bf-attachment-main{padding:12px;gap:12px;min-height:76px}}

#bimflow-app .bf-preference-status{position:fixed;right:16px;bottom:16px;z-index:10000;max-width:calc(100vw - 32px);padding:12px 16px;background:var(--bf-panel);color:var(--bf-text);border:1px solid var(--bf-line);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow);display:flex;align-items:center;gap:12px}
#bimflow-app .bf-preference-status[hidden]{display:none}
@media(max-width:620px){#bimflow-app .bf-description-tools .bf-iconbutton{min-width:44px;min-height:44px}#bimflow-app .bf-attachment-actions .bf-textbutton{min-height:44px}}

/* Shared detail view/edit lifecycle. */
.bf-inline-field{min-width:0}.bf-inline-value{display:block;width:100%;min-height:38px;padding:8px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--bf-text);font:inherit;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;cursor:pointer}.bf-inline-value.is-readonly{cursor:default}.bf-inline-value:not(.is-readonly):hover{background:var(--bf-hover);border-color:var(--bf-line)}.bf-inline-value:focus-visible{outline:2px solid var(--bf-orange);outline-offset:2px}.bf-inline-value .bd-reference-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.bf-inline-editor{min-width:0;width:100%}form.bf-inline-field>.bf-inline-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}form.bf-inline-field>.bf-inline-value,form.bf-inline-field>.bf-inline-editor{grid-column:1/-1}.bf-inline-field.is-editing{border-radius:6px}.bf-description-editor.bf-inline-field:not(.is-editing){border-color:transparent;background:transparent}.bf-inline-field [role=alert]{grid-column:1/-1;color:var(--bf-red)}@media(max-width:620px){.bf-inline-value{min-height:44px}form.bf-inline-field>.bf-inline-editor{grid-template-columns:1fr}}

/* Shared binary switch; the button remains a 44px keyboard/touch target. */
#bimflow-app .bf-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}
#bimflow-app .bf-toggle:not(.ant-switch)>span{display:block;width:36px;height:20px;padding:2px;border-radius:12px;background:var(--bf-muted)}
#bimflow-app .bf-toggle:not(.ant-switch)>span::after{content:'';display:block;width:16px;height:16px;border-radius:50%;background:var(--bf-panel);transition:transform .15s}
#bimflow-app .bf-toggle:not(.ant-switch)[aria-checked=true]>span{background:var(--bf-primary)}
#bimflow-app .bf-toggle:not(.ant-switch)[aria-checked=true]>span::after{transform:translateX(16px)}
#bimflow-app .bf-toggle:focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:2px}
#bimflow-app .bf-toggle:disabled{cursor:default;opacity:.6}
@media(prefers-reduced-motion:reduce){#bimflow-app .bf-toggle:not(.ant-switch)>span::after{transition:none}}

/* Account management is rendered inside the configuration content pane. */
.bf-settings-account .ac-stack{display:grid;gap:var(--ui-section-gap)}
.bf-settings-account .ac-profile{display:flex;gap:var(--ui-space-4);align-items:center;flex-wrap:wrap}
.bf-settings-account .ac-avatar{width:64px;height:64px;object-fit:cover;border-radius:var(--ui-radius-lg)}
.bf-settings-account .ac-identity{overflow-wrap:anywhere;min-width:0}
.bf-settings-account .ac-form{display:flex;gap:var(--ui-space-3);align-items:end;flex-wrap:wrap}
.bf-settings-account .ac-form .bf-field{flex:1;min-width:180px;display:grid;gap:var(--ui-space-2)}
.bf-settings-account .ac-form input,.bf-settings-account .ac-form select{width:100%;min-width:0}
.bf-settings-account .ac-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--ui-space-4)}
.bf-settings-account .ac-projects .bf-panelbody{display:grid;gap:var(--ui-space-3)}
.bf-settings-account .ac-projects h2{overflow-wrap:anywhere}
.bf-settings-account .ac-members{gap:var(--ui-space-3);margin-top:var(--ui-space-4)}
.bf-settings-account .ac-members:not(.bf-actions){display:grid}
.bf-settings-account .ac-danger{margin-top:var(--ui-section-gap);padding-top:var(--ui-space-4);border-top:1px solid var(--ui-border)}
.bf-settings-account .ac-status{margin-bottom:var(--ui-space-4)}
.bf-settings-account .ac-status:empty{display:none}
.bf-settings-account .ac-member{display:flex;justify-content:space-between;align-items:center;gap:var(--ui-space-3);flex-wrap:wrap}
@media(max-width:620px){.bf-settings-account .ac-form .bf-field{min-width:100%}}

/* Opt-in single-line identity and summary rows; other personnel layouts retain their columns. */
#bimflow-app .bf-memberlist[data-people-layout=summary][data-people-view=rows]>:is(.bf-memberhead,.bf-membergrid){min-width:0}
#bimflow-app .bf-memberlist[data-people-layout=summary]>.bf-memberhead,#bimflow-app .bf-membergrid[data-people-layout=summary][data-people-view=rows] .bf-membercard{grid-template-columns:40px minmax(80px,160px) minmax(0,1fr);gap:var(--ui-space-3)}
#bimflow-app .bf-membergrid[data-people-layout=summary][data-people-view=rows] h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:620px){#bimflow-app .bf-memberlist[data-people-layout=summary]>.bf-memberhead,#bimflow-app .bf-membergrid[data-people-layout=summary][data-people-view=rows] .bf-membercard{grid-template-columns:40px minmax(64px,.8fr) minmax(0,1.2fr);gap:var(--ui-space-2)}}
#bimflow-app .bf-translation-controls{display:flex;gap:4px;align-items:center}
#bimflow-app .bf-drawertop:has(.bf-translation-controls){flex-wrap:wrap;gap:8px}
#bimflow-app .bf-drawertop>.bf-translation-controls{margin-left:auto}
#bimflow-app[data-ai-translated] .bf-person{max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}
#bimflow-app[data-ai-translated] .bf-person>span:not(.bf-avatar){min-width:0}
#bimflow-app .bf-translation-controls button{width:36px;height:36px;padding:0;flex-shrink:0}
html[lang] #bimflow-app[data-ai-translated] .bf-sidebar [data-nav] .bf-nav-text{white-space:normal;overflow-wrap:anywhere}

#bimflow-app .bf-translation-status{max-width:calc(100vw - 32px);white-space:normal;overflow-wrap:anywhere;pointer-events:none}
@media(max-width:620px){#bimflow-app .bf-translation-controls button{width:42px;height:42px}}

/* Session-only permission test control; wraps within the shared header. */
[data-permission-test-host]{display:inline-flex;align-items:center;flex-shrink:0}
[data-permission-test-host]:empty{display:none}
[data-permission-test-host] select{max-width:180px;min-height:38px;background:var(--bf-surface);color:var(--bf-text);border:1px solid var(--bf-border);border-radius:var(--bf-radius,8px);}
@media(max-width:620px){[data-permission-test-host]{max-width:100%;}[data-permission-test-host] select{min-height:44px;max-width:160px;}.bf-top:has([data-permission-test]){flex-wrap:wrap;}}

/* Ant Design controls; business geometry remains under the shared UI owner. */
.bf-ant-host { display:contents; }
.bf-ant-source { position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%)!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important; }
.bf-ant-slot { display:inline-flex;min-width:0;max-width:100%;vertical-align:middle; }
.bf-ant-upload{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;max-width:100%}
.bf-ant-upload>[role=status]{min-width:0;overflow-wrap:anywhere}
#bimflow-app .bf-attachment-picker:has(.bf-ant-upload)>span:not(.bf-ant-host),#bimflow-app .bf-attachment-picker:has(.bf-ant-upload)>svg{display:none}
.bf-ant-select { min-width:120px;max-width:100%; }
.bf-field .bf-ant-slot,.bf-field .bf-ant-select,.bf-settings-form .bf-ant-slot,.bf-settings-form .bf-ant-select { width:100%; }
#bimflow-app .ant-btn { font-family:inherit;box-shadow:none; }
#bimflow-app :is(.bf-nav,.tk-drag-handle).ant-btn { transition-property:color,background-color,border-color,box-shadow; }
#bimflow-app .ant-input { color:var(--bf-text);background:var(--bf-panel); }
#bimflow-app .ant-checkbox-wrapper,#bimflow-app .ant-radio-wrapper { color:inherit; }
#bimflow-app .bf-ant-host .ant-btn[hidden] { display:none; }
.ant-select-dropdown { z-index:2100; }
@media(max-width:620px){.bf-ant-slot{max-width:100%;}.ant-btn,.ant-select{min-height:42px;}}

.bf-ant-label{display:contents}
#bimflow-app .tk-row-name.ant-btn{justify-content:flex-start}
#bimflow-app .bf-nav.ant-btn{justify-content:flex-start;gap:8px;height:auto;min-height:44px}
#bimflow-app .bf-sidebar-collapsed .bf-nav.ant-btn{justify-content:center;gap:0}
#bimflow-app .bf-nav .bf-nav-text{flex:1}
@media(min-width:701px){html[lang="zh-CN"] #bimflow-app .bf-nav .bf-nav-text{white-space:nowrap}}
@media(min-width:701px){#bimflow-app .bf-nav.ant-btn{font-size:14px}#bimflow-app .bf-nav .bf-nav-text{overflow-wrap:normal}}
#bimflow-app .bf-shortcut.ant-btn{justify-content:flex-start}
#bimflow-app .pf-project.ant-btn{height:auto;min-height:44px;white-space:normal;justify-content:flex-start}
#bimflow-app .rv-report-row.ant-btn{height:auto;min-height:44px;white-space:normal}
#bimflow-app .rv-report-row>.bf-ant-label{display:contents}
#bimflow-app .rv-report-row>.bf-ant-label>span:not(.rv-report-icon):not(.bf-status):not(.rv-report-arrow){display:grid;gap:7px;min-width:0}
#bimflow-app .rv-report-row .bf-status{justify-self:start}
@media(max-width:900px){#bimflow-app .rv-report-row .bf-status{grid-column:3;grid-row:1}}
#bimflow-app .bf-shortcut>.bf-ant-label>span:last-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){#bimflow-app .bf-nav.ant-btn{justify-content:center}#bimflow-app .bf-nav .bf-nav-text{flex:none}}
#bimflow-app .sd-table .sd-member>.bf-ant-label>span:not(.bf-avatar){min-width:0;overflow:hidden;text-overflow:ellipsis}
.tk-participant-stack>.bf-ant-host+.bf-ant-host>.bf-avatar-button{margin-left:-8.4px}
.tk-participant-stack>.bf-ant-host>.bf-avatar-button{z-index:var(--tk-avatar-layer,0)}
.tk-participant-stack>.bf-ant-host>.bf-avatar-button:is(:hover,:focus-visible){z-index:calc(var(--tk-avatar-layer,0) + 1000)}
.tk-row-summary .tk-participant-stack>.bf-ant-host>.bf-avatar-button{margin-left:-8.4px}
#bimflow-app .ant-select .ant-select-input{background:transparent;border:0;border-radius:0;padding:0;min-height:0;outline:0;box-shadow:none}
#bimflow-app .ant-checkbox-input,#bimflow-app .ant-radio-input{background:transparent;padding:0;min-height:0}

.bf-ant-slot:has(>.ant-slider){display:block;width:100%;flex:1;min-width:0}
.bf-ant-slot>.ant-slider{width:calc(100% - 12px)}

#bimflow-app .ant-checkbox-wrapper,#bimflow-app .ant-radio-wrapper{display:inline-flex;padding:0;border:0;background:transparent;margin:0;min-height:0;gap:0;flex:none}
#bimflow-app .tk-owner-choice .ant-radio-wrapper{position:absolute;inset:0;opacity:0;width:100%;height:100%}
#bimflow-app .tk-owner-choice:has(input:checked)>span:last-child{color:var(--bf-primary)}

#bimflow-app .tk-comment-composer>.bf-ant-host>.bf-button{width:44px;min-height:44px;flex-shrink:0;padding:0;border-color:transparent;background:transparent;color:var(--bf-muted)}
#bimflow-app .tk-comment-composer:has(textarea:valid)>.bf-ant-host>.bf-button{color:var(--bf-primary)}

#bimflow-app .bf-toggle.ant-switch{height:24px;width:44px;min-width:44px;background:var(--bf-muted);border-radius:12px}
#bimflow-app .bf-toggle.ant-switch-checked{background:var(--bf-primary)}

#bimflow-app .bf-ant-rate{white-space:nowrap;display:inline-flex;margin:0;gap:0;vertical-align:middle}
#bimflow-app .bf-ant-rate:not(.bf-ant-rate-display) .ant-rate-star{margin:0;width:44px;height:44px;display:grid;place-items:center}
#bimflow-app .bf-ant-rate:not(.bf-ant-rate-display) .ant-rate-star>div{width:44px;height:44px;display:grid;place-items:center}
#bimflow-app .bf-ant-rate-display{font-size:16px;pointer-events:none}
#bimflow-app .bf-ant-rate-display .ant-rate-star{margin-inline-end:2px}
#bimflow-app .bf-ant-rate :focus-visible{outline:2px solid var(--bf-focus-ring);outline-offset:-2px;border-radius:4px}
#bimflow-app .ant-checkbox-wrapper:has(input:disabled),#bimflow-app .ant-radio-wrapper:has(input:disabled){cursor:not-allowed;opacity:.6}

/* Ant Design surfaces. Native content slots preserve business state and event delegation. */
.bf-ant-native{display:contents}
.bf-ant-surface{min-width:0}
#bimflow-app>.bf-ant-surface-layout{display:flex;flex:1;min-height:0}
#bimflow-app .bf-ant-layout{width:100%;min-height:0}
#bimflow-app .bf-ant-card .bf-panel,#bimflow-app .bf-ant-collapse .bf-panel{border:0;border-radius:0;background:transparent;overflow:visible;margin:0}
#bimflow-app .bf-ant-card .bf-panelhead{padding:4px 0 16px;border-bottom:1px solid var(--bf-line)}
#bimflow-app .bf-ant-card .bf-panelbody{padding:16px 0 0}
#bimflow-app .bf-ant-card .bf-panelbody>.bf-tablewrap{margin-inline:0}
#bimflow-app .bf-ant-surface-card{margin-bottom:16px}
#bimflow-app .bf-ant-surface-collapse{margin-bottom:16px}
#bimflow-app .bf-ant-collapse details>summary{display:none}
#bimflow-app .bf-ant-surface-tabs{display:block;width:fit-content;max-width:100%;padding:5px;background:var(--ui-segment-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);overflow:visible}
#bimflow-app .bf-ant-surface-tabs .bf-tab{padding:0;border:0;min-height:32px;background:transparent;color:inherit;box-shadow:none;font-weight:400;border-radius:0}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-nav{margin-bottom:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-padding-inline:6px;overscroll-behavior-inline:contain}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-nav-list{gap:var(--ui-space-1)}
#bimflow-app .bf-ant-surface-tabs :is(.ant-tabs-tab,.ant-tabs-tab+.ant-tabs-tab){margin:0!important;padding:0!important;border-radius:var(--ui-radius);min-height:42px;display:flex;align-items:center;flex-shrink:0}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-tab-btn{display:flex;align-items:center;justify-content:center;gap:var(--ui-space-2);min-height:42px;padding:8px 16px;color:var(--bf-text);font-weight:600;white-space:nowrap;border-radius:inherit}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-tab:hover{background:var(--bf-hover)}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-tab-active{background:var(--bf-primary);box-shadow:var(--ui-shadow)}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-tab-active :is(.ant-tabs-tab-btn,.ant-tabs-tab-btn button){color:var(--bf-on-primary)}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-ink-bar{display:none}
#bimflow-app .bf-ant-surface-tabs .ant-tabs-content-holder{display:none}
#bimflow-app .bf-ant-surface-segmented{border:0;padding:0;background:transparent}
#bimflow-app .bf-ant-surface-segmented button{pointer-events:none;border:0;background:transparent;color:inherit;box-shadow:none}
#bimflow-app .bf-ant-surface-segmented .ant-segmented{max-width:100%}
#bimflow-app .bf-ant-surface-alert:not(.bf-ant-toast-host){margin-bottom:16px}
#bimflow-app .bf-ant-tag .bf-badge,#bimflow-app .bf-ant-tag .bf-tag{display:contents;padding:0;background:none;color:inherit;border:0;font:inherit}
#bimflow-app .bf-ant-surface-tag{display:inline-flex;vertical-align:middle}
#bimflow-app .bf-ant-tag{margin:0}
#bimflow-app .bf-ant-empty .bf-empty{padding:0;background:none;border:0}
#bimflow-app .bf-ant-surface-progress{display:block;width:100%}
.bf-ant-inline-progress{display:block;flex:1;min-width:0}
#bimflow-app .tk-row-progress>.bf-ant-surface-progress{width:54px;min-width:0;flex:0 0 54px}
@media(max-width:620px){#bimflow-app .tk-row-progress>.bf-ant-surface-progress{width:18px;flex-basis:18px}}
#bimflow-app .bf-ant-progress{margin:0}
#bimflow-app .bf-ant-statistic .bf-kpi-value{font:inherit;color:inherit}
#bimflow-app .bf-ant-table .bf-table th{font-size:14px;font-weight:600;background:var(--bf-hover)}
#bimflow-app .bf-ant-table .bf-table :is(th,td){padding:12px 16px;line-height:1.5715;border-bottom:1px solid var(--bf-line)}
#bimflow-app .bf-ant-table .bf-table{width:100%;border-collapse:separate;border-spacing:0}
#bimflow-app .bf-ant-modal .bf-modal{position:static;margin:0;width:100%;max-height:none;padding:0;border:0;background:transparent;color:inherit;box-shadow:none;overflow:visible}
#bimflow-app .bf-ant-modal .ant-modal-content{padding:0;max-height:calc(100dvh - 32px);overflow:hidden;background:var(--bf-panel);color:var(--bf-text)}
#bimflow-app .bf-ant-modal .ant-modal-body{max-height:calc(100dvh - 32px);overflow:auto;padding:0}
#bimflow-app .bf-ant-drawer .bf-overlay{position:static;display:block;padding:2px 4px;width:100%;height:100%;overflow:auto;background:transparent}
#bimflow-app .bf-ant-drawer .bf-drawer{width:100%;max-width:none;min-height:0;padding:0;border:0;box-shadow:none;background:transparent}
#bimflow-app .bf-ant-toast-host{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:2000;max-width:calc(100vw - 32px)}
#bimflow-app .bf-ant-notice .bf-notice{padding:0;border:0;background:transparent;color:inherit;margin:0}
#bimflow-app .bf-ant-card .bf-intel-card{padding:0;border:0;border-radius:0;background:transparent;margin:0;box-shadow:none}
#bimflow-app .bf-ant-message .bf-toast{position:static;transform:none;padding:0;background:transparent;color:inherit;box-shadow:none;max-width:none;min-width:0}
@media(max-width:620px){#bimflow-app .bf-ant-surface-tabs :is(.ant-tabs-tab,.ant-tabs-tab+.ant-tabs-tab),#bimflow-app .bf-ant-surface-tabs .ant-tabs-tab-btn{min-height:44px}#bimflow-app .bf-ant-drawer .ant-drawer-body{padding:16px!important}}

#bimflow-app .anticon svg{width:1em;height:1em}
#bimflow-app .bf-ant-surface-segmented button{padding:0;min-height:24px;font-weight:400;line-height:24px}
@media(max-width:620px){#bimflow-app .bf-ant-surface-segmented button{min-height:36px;line-height:36px}}
