/* R6.16.83 full-site interaction + visual closure.  Keep this file last in head. */
:root{--r61683-gap:12px;--r61683-soft:#f6f8fc;--r61683-border:#e1e6ef;--r61683-text:#172033}
html,body{max-width:100%;overflow-x:hidden}
.cui-wrapper,.cui-main,.container,.page-shell,.content-shell,main{min-width:0;max-width:100%}
.card,.panel,.section-card,form,fieldset,label{min-width:0}
input,select,textarea{max-width:100%;min-width:0}
img{max-width:100%;height:auto}
.actions,.toolbar,.filter-row,.form-actions,.page-actions,.r61623-template-actions{flex-wrap:wrap;min-width:0}
.table-wrap,.table-responsive,[data-table-scroll]{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
.table-wrap[data-r61683-wide]:not(.is-at-end)::after,.table-responsive[data-r61683-wide]:not(.is-at-end)::after{content:'横向滚动查看更多 →';position:sticky;right:8px;bottom:6px;float:right;margin-top:-30px;padding:5px 9px;border:1px solid #dfe5ef;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 4px 12px rgba(20,35,65,.08);font-size:11px;color:#65718a;pointer-events:none;z-index:6}
/* Side bar geometry.  v070 full nav is 232px, collapsed is 76px. */
@media(min-width:821px){
 body.cui-app:not(.template-studio-page){--sidebar-width:232px}
 .cui-shell{width:100%;max-width:100%;min-width:0}
 .cui-wrapper{width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));min-width:0}
 .sidebar-collapsed body.cui-app:not(.template-studio-page){--sidebar-width:76px}
 .sidebar-collapsed body.cui-app:not(.template-studio-page) .cui-wrapper{margin-left:76px;width:calc(100% - 76px);max-width:calc(100% - 76px)}
}
/* Dense list/filter pages */
@media(max-width:1180px){
 .filter-grid,.search-filter-grid,.r61674-product-filter-grid,.customer-filter-grid,.supplier-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .filter-grid>* ,.search-filter-grid>*{min-width:0}
}
@media(max-width:760px){.filter-grid,.search-filter-grid,.r61674-product-filter-grid,.customer-filter-grid,.supplier-filter-grid{grid-template-columns:1fr!important}}
/* Customers / suppliers: keep identity visible and actions reachable */
#customerTable th:last-child,#customerTable td:last-child,.supplier-table th:last-child,.supplier-table td:last-child{position:sticky;right:0;background:inherit;z-index:2}
@media(max-width:1100px){
 .customer-list-page .table,.supplier-list-page .table{min-width:900px}
 .customer-list-page .table-wrap,.supplier-list-page .table-wrap{border-radius:12px}
}
/* Company / brand / logo */
@media(max-width:1100px){
 .brand-assets-layout,.brand-identity-grid,.company-profile-grid,.r61655-brand-grid{grid-template-columns:1fr!important}
 .brand-assets-layout>* ,.brand-identity-grid>* ,.company-profile-grid>*{min-width:0!important}
 .brand-assets-page .actions,.brand-assets-page .page-actions{justify-content:flex-start!important}
}
/* Organization / permission manager */
@media(max-width:1180px){
 .organization-layout,.permission-layout,.role-permission-grid,.r61638-permission-grid{grid-template-columns:1fr!important}
 .permission-summary,.permission-panel{position:static!important;max-width:100%!important}
}
/* Product tabs and context */
.product-tabs,.product-context-tabs,.r61674-product-tabs{max-width:100%;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
/* Document studio: preview must not push editor out of viewport */
@media(max-width:1280px){
 .document-studio-layout,.document-workspace,.r6159-studio-layout{grid-template-columns:1fr!important}
 .document-preview-pane,.r6159-preview-pane{position:static!important;max-height:none!important;min-width:0!important}
}
/* Total template preview: paper itself may be wide, but page may not be */
.template-total-editor .paper-stage,.total-template-editor .paper-stage,.r6144-total-paper-wrap{max-width:100%;overflow:auto!important}
.template-total-editor .paper,.total-template-editor .paper,.r6144-total-paper{max-width:none;transform-origin:top left}
/* Template field usability */
.template-field-quick-filter{display:flex;gap:7px;align-items:center;padding:10px;margin:8px 0 10px;border:1px solid var(--r61683-border);border-radius:12px;background:#fff;position:sticky;top:0;z-index:4}
.template-field-quick-filter input{flex:1 1 200px;min-width:0;padding:9px 11px;border:1px solid #dfe4ee;border-radius:9px}
.template-field-quick-filter button{border:1px solid #dfe4ee;background:#fff;color:#536079;border-radius:999px;padding:7px 10px;cursor:pointer;white-space:nowrap}
.template-field-quick-filter button.is-active{border-color:#9aa0ff;background:#f0efff;color:#5148df}
.template-field-card.r61683-filtered-out{display:none!important}
@media(max-width:720px){.template-field-quick-filter{flex-wrap:wrap}.template-field-quick-filter input{flex-basis:100%}}
/* Traceability: show data, reveal mutation forms only on intent */
.r61683-trace-page .r61683-row-action{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.r61683-trace-page details.r61683-inline-action{min-width:140px}
.r61683-trace-page details.r61683-inline-action>summary{list-style:none;cursor:pointer;color:#4f46e5;font-weight:700;padding:6px 8px;border:1px solid #e2e5f1;border-radius:8px;background:#fff}
.r61683-trace-page details.r61683-inline-action>summary::-webkit-details-marker{display:none}
.r61683-trace-page details.r61683-inline-action[open]{min-width:230px}
.r61683-trace-page details.r61683-inline-action form{display:grid;gap:6px;margin-top:7px;padding:8px;border:1px solid #e3e7ef;border-radius:10px;background:#f8f9fd}
.r61683-trace-page .r61683-job-actions[hidden]{display:none!important}
.r61683-trace-page .v071-job-card{align-items:flex-start}
.r61683-trace-page .r61683-job-actions{grid-template-columns:repeat(3,minmax(100px,1fr));width:100%;margin-top:8px}
@media(max-width:1100px){.r61683-trace-page .r61683-job-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.r61683-trace-page .r61683-job-actions{grid-template-columns:1fr}}
/* Wide business tables retain context while scrolling */
.r61683-outsource-page .table-wrap table{min-width:1450px}
.r61683-outsource-page .table-wrap th:first-child,.r61683-outsource-page .table-wrap td:first-child{position:sticky;left:0;background:#fff;z-index:3}
.r61683-outsource-page .table-wrap th:nth-child(2),.r61683-outsource-page .table-wrap td:nth-child(2){position:sticky;left:72px;background:#fff;z-index:3}
.r61683-bom-advanced .table-wrap table,.bom-advanced-table{min-width:1550px}
.r61683-bom-advanced .table-wrap th:first-child,.r61683-bom-advanced .table-wrap td:first-child,.bom-advanced-table th:first-child,.bom-advanced-table td:first-child{position:sticky;left:0;background:#fff;z-index:3}
.r61683-bom-advanced .table-wrap thead th,.bom-advanced-table thead th{position:sticky;top:0;background:#f7f8fc;z-index:2}
/* Supplier advanced: long select options may not set page intrinsic width */
.r61659-supplier-page .supplier-batch-filter label{min-width:0}
.r61659-supplier-page .supplier-batch-filter :is(input,select){width:100%;max-width:100%;min-width:0}
.r61659-supplier-page .supplier-batch-table tr[hidden]{display:none!important}
@media(max-width:1100px){
 .r61659-supplier-page .supplier-batch-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .r61659-supplier-page .supplier-export-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;width:100%}
 .r61659-supplier-page .supplier-export-controls>label{min-width:0;width:100%}
 .r61659-supplier-page .supplier-export-controls>.r61625-export-reason,.r61659-supplier-page .supplier-export-controls>.r61651-selection-gate{grid-column:1/-1}
}
@media(min-width:761px) and (max-width:1280px){
 .r61659-supplier-page .supplier-batch-table tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;align-items:start;position:relative}
 .r61659-supplier-page .supplier-batch-table tr[hidden]{display:none!important}
 .r61659-supplier-page .supplier-batch-table td{width:auto!important;min-width:0!important}
 .r61659-supplier-page .supplier-batch-table td:first-child{position:absolute!important;width:auto!important}
 .r61659-supplier-page .supplier-batch-table td:last-child{grid-column:1/-1}
 .r61659-supplier-page .supplier-product-cell{min-width:0}
}
@media(max-width:760px){
 .r61659-supplier-page .supplier-batch-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .r61659-supplier-page .supplier-export-controls{grid-template-columns:1fr}
 .r61659-supplier-page .supplier-export-controls>*{grid-column:1!important}
}
/* Dialogs / drawers / dropdowns */
dialog,.modal,.drawer,.side-drawer,.bom-side-editor,[role=dialog]{max-width:min(94vw,980px)!important;max-height:90vh!important}
dialog[open],.modal.is-open,.drawer.is-open,.side-drawer.is-open,.bom-side-editor.is-open{overflow:auto}
.r61622-more>div,.dropdown-menu,.popover-menu{max-width:min(360px,calc(100vw - 24px));overflow-wrap:anywhere}
/* User management expanded forms */
@media(max-width:1100px){
 .user-management-details .form-grid,.user-admin-panel .form-grid,.staff-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .user-management-details,.user-admin-panel{max-height:72vh;overflow:auto}
}
@media(max-width:700px){.user-management-details .form-grid,.user-admin-panel .form-grid,.staff-admin-grid{grid-template-columns:1fr!important}}
.r61683-trace-page details.r61683-work-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:12px;cursor:pointer;background:#fff;font-weight:750}
.r61683-trace-page details.r61683-work-section>summary small{font-weight:500;color:#748096}
.r61683-trace-page details.r61683-work-section>.r61675-history-body{padding-top:8px}
/* R6.16.82 precise-fix dialog was centered in the whole viewport and could sit under the fixed sidebar. */
.r61682-precise-fix{z-index:1200!important;position:fixed!important;top:5vh!important;bottom:auto!important;margin:0!important}
@media(min-width:821px){
 .r61682-precise-fix{left:calc((100vw + var(--sidebar-width,232px))/2)!important;right:auto!important;transform:translateX(-50%);width:min(760px,calc(100vw - var(--sidebar-width,232px) - 32px))!important;max-width:calc(100vw - var(--sidebar-width,232px) - 32px)!important}
 .sidebar-collapsed body .r61682-precise-fix{left:calc((100vw + 76px)/2)!important;width:min(760px,calc(100vw - 108px))!important;max-width:calc(100vw - 108px)!important}
}
@media(max-width:820px){.r61682-precise-fix{left:50%!important;right:auto!important;transform:translateX(-50%);width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}}
