
/* One scroll owner per visible workspace; action dialogs above project details. */
body:has(.nvx-project-register-status){height:100dvh!important;overflow:hidden!important}
body #root .crm-app:has(.nvx-project-register-status){height:100dvh!important;min-height:0!important;overflow:hidden!important}
body #root .workspace:has(.nvx-project-register-status){height:100dvh!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
body #root .workspace:has(.nvx-project-register-status)>.topbar{flex:0 0 auto!important}
body #root .workspace-scroll:has(.nvx-project-register-status){display:block!important;flex:1 1 auto!important;height:auto!important;max-height:none!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain;scroll-behavior:auto!important;-webkit-overflow-scrolling:touch}
body #root .module-workspace.module-register-workspace:has(>.nvx-project-register-status){display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}
body #root .detail-backdrop:has(.nvx-project-nav){z-index:110!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden!important;animation:none!important}
body #root .record-detail-modal:has(.nvx-project-nav){overflow-y:auto!important;overscroll-behavior-y:contain;scroll-behavior:auto!important;-webkit-overflow-scrolling:touch;animation:none!important}
body #root .modal-layer-front{z-index:150!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow-y:auto!important;overscroll-behavior-y:contain;animation:none!important}
body #root .modal-layer-front>[role=dialog]{max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
body #root .record-detail-modal:has(.nvx-project-nav) button{touch-action:manipulation;transition:background-color .12s,color .12s,border-color .12s!important;transform:none!important}
.nvx-update-history{max-width:1180px;margin:0 auto;color:#1d3847}.nvx-update-history>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.nvx-update-history h2{font-size:27px;margin:5px 0 10px}.nvx-update-history header p:not(.eyebrow){color:#617682;font-size:14px;line-height:1.5}.nvx-update-history button,.nvx-update-history select,.nvx-update-history input{font:inherit;border:1px solid #cfdee5;border-radius:8px;background:white;color:#214958;min-height:42px;padding:9px 12px;max-width:100%}.nvx-update-history button{cursor:pointer;font-weight:600;font-size:13px}.nvx-update-history button:disabled{opacity:.6;cursor:wait}.nvx-history-summary{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.nvx-history-summary>span{padding:12px 18px;border:1px solid #dce7e9;border-radius:10px;background:white;font-size:13px}.nvx-history-summary strong{font-size:21px;margin-right:5px;color:#0872d5}.nvx-history-filters{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr)) minmax(140px,1fr) minmax(190px,1.4fr) minmax(140px,1fr) auto;gap:12px;align-items:end;padding:18px;background:white;border:1px solid #dce7e9;border-radius:12px}.nvx-history-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;min-width:0}.nvx-history-meta{font-size:12px;color:#627582;line-height:1.6}.nvx-history-date{font-size:17px;margin:26px 0 12px;padding-left:12px;border-left:3px solid #0872d5}.nvx-history-card{padding:22px;margin-bottom:14px;border:1px solid #dce7e9;background:#fff;border-radius:14px;overflow-wrap:anywhere}.nvx-history-card-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}.nvx-history-card-top>span:last-child{margin-left:auto;color:#627582}.nvx-history-kind{padding:5px 9px;border-radius:6px;background:#eaf3fc;color:#0872d5;font-weight:600}.nvx-history-kind.stage{background:#eaf0fb;color:#305d8d}.nvx-history-card h4{font-size:17px;margin:16px 0 9px}.nvx-history-work{white-space:pre-wrap;line-height:1.7;font-size:14px}.nvx-history-progress{font-size:13px;color:#0872d5;font-weight:600}.nvx-history-note{padding:12px 14px;margin:10px 0;background:#f4f8fa;border-radius:8px;font-size:13px}.nvx-history-note.issue{background:#fff7eb}.nvx-history-note p{white-space:pre-wrap;line-height:1.6;margin:5px 0 0}.nvx-history-files{padding:12px 0;border-top:1px solid #edf1f3}.nvx-history-files summary{cursor:pointer;font-weight:600;font-size:13px}.nvx-history-files a{display:block;margin:10px 0;color:#0872d5;line-height:1.5;font-size:13px;overflow-wrap:anywhere}.nvx-history-card footer{margin-top:14px;padding-top:12px;border-top:1px solid #edf1f3;font-size:11px;color:#738590;line-height:1.5}.nvx-history-empty{padding:32px;border:1px dashed #c7d8df;border-radius:12px;text-align:center;background:white}.nvx-history-more{width:100%;margin:14px 0}
@media(max-width:1100px){.nvx-history-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.nvx-update-history>header{flex-direction:column;gap:10px}.nvx-update-history>header button{width:100%}.nvx-update-history h2{font-size:23px}.nvx-history-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}.nvx-history-filters select,.nvx-history-filters input{min-width:0;width:100%;font-size:12px}.nvx-history-summary{gap:8px}.nvx-history-summary>span{flex:1 1 90px;padding:10px;font-size:11px}.nvx-history-card{padding:16px}.nvx-history-card-top>span:last-child{margin-left:0;flex-basis:100%}.nvx-history-work{font-size:13px}.nvx-history-card h4{font-size:16px}}

/* Card register uses the workspace scroll surface, without nested wheel trapping. */
body .module-workspace:has(.nvx-project-register-status) .register-table-wrap{overflow:visible!important;overscroll-behavior:auto!important;max-height:none!important}

.action-modal label.nvx-cancel-confirm{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:12px 0!important}.action-modal .nvx-cancel-confirm input[type=checkbox]{width:20px!important;height:20px!important;min-height:20px!important;max-width:20px!important;flex:0 0 20px!important;margin:0!important}
