@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#172033;background:#f4f7fb;font-synthesis:none;--blue: #2463eb;--line: #e3e8f1;--muted: #687386}*{box-sizing:border-box}body{margin:0;min-width:1100px}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 11px;color:#344054;cursor:pointer;display:inline-flex;align-items:center;gap:7px}button:hover{background:#f7f9fc}button.primary{background:var(--blue);border-color:var(--blue);color:#fff}button:disabled{opacity:.55;cursor:wait}input,select,textarea{border:1px solid #d7deea;border-radius:7px;padding:9px 11px;outline:none;background:#fff}input:focus,select:focus,textarea:focus{border-color:#6e9bfa;box-shadow:0 0 0 3px #2463eb18}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);height:100vh}.sidebar{background:#111a2c;color:#cbd5e6;padding:20px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 22px;position:relative}.brand-logo-wrap{display:flex;align-items:center;justify-content:center;flex:none;border-radius:12px;transition:transform .2s ease}.brand-logo-wrap:hover{transform:scale(1.05)}.brand-logo-wrap svg{display:block;filter:drop-shadow(0 4px 12px rgba(37,99,235,.35))}.brand-text{display:flex;flex-direction:column;min-width:0}.brand-text strong{color:#fff;font-size:15px;font-weight:700;line-height:1.2;letter-spacing:-.01em}.brand-text small{color:#75829a;font-size:11px;font-weight:500;margin-top:1px;white-space:nowrap}.login-mark{width:auto;height:auto;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:0;margin-bottom:12px}.login-mark svg{filter:drop-shadow(0 8px 24px rgba(37,99,235,.45))}.account small{color:#75829a;margin-top:2px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{color:#adb8ca;text-decoration:none;padding:10px 11px;border-radius:7px;display:flex;gap:10px;align-items:center;font-size:14px}.sidebar-action{width:100%;margin-top:8px;padding:10px 11px;border-color:#ffffff14;background:#2463eb24;color:#c9d8f8;justify-content:flex-start;font-size:14px}.sidebar-action:hover{background:#2463eb3d;color:#fff}.admin-import-action{margin-top:0;background:transparent;border-color:transparent;color:#adb8ca}.admin-import-action:hover{background:#ffffff12}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff12}.sidebar nav a.active{box-shadow:inset 3px 0 #4b83f5}.nav-label{font-size:10px;letter-spacing:.1em;color:#68758b;margin:24px 11px 6px}.account{margin-top:auto;border-top:1px solid #ffffff12;padding:16px 8px 0;display:flex;align-items:center;justify-content:space-between}.sidebar-language{margin-top:auto;padding:14px 8px 0;border-top:1px solid #ffffff12;display:grid;gap:6px}.sidebar-language label{color:#75829a;font-size:11px;font-weight:600}.sidebar-language select{width:100%;padding:7px 9px;color:#d9e2f0;background:#18243a;border-color:#ffffff1c;font-size:12px}.sidebar-language select:focus{border-color:#4b83f5}.sidebar-language+.account{margin-top:10px}.account>div{display:flex;flex-direction:column;overflow:hidden}.account strong{font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account button{background:transparent;border:0;color:#8995aa;padding:5px}.content{padding:16px 20px;min-width:0;overflow:hidden;display:flex;flex-direction:column}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px;min-height:54px}.page-head h1{margin:5px 0 0;font-size:24px;letter-spacing:-.02em}.sheet-page-head{min-height:30px;margin-bottom:8px;align-items:center}.sheet-page-head h1{margin:0;font-size:20px}.sheet-page-head .live-pill{padding:5px 9px;font-size:11px}.sheet-head-actions{display:flex;align-items:center;gap:8px}.period-rollover-button{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-color:#bfd0e8;background:#fff;color:#31577f;font-size:11px}.period-rollover-button:hover{border-color:#78a0db;background:#f5f8ff;color:var(--blue)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em;color:#6d7b91}.live-pill{font-size:12px;background:#eaf9ef;color:#24894a;padding:7px 10px;border-radius:999px}.live-pill i{width:7px;height:7px;border-radius:50%;background:#2eb85c;display:inline-block;margin-right:6px}.grid-card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 2px 8px #15213b0a;overflow:visible;display:flex;flex-direction:column;flex:1;min-height:0}.grid-toolbar{min-height:44px;padding:5px 9px;border-bottom:1px solid var(--line);display:flex;gap:6px;align-items:center;position:relative;z-index:20;white-space:nowrap}.grid-toolbar button{font-size:12px;padding:6px 9px;flex-shrink:0;gap:6px}.grid-toolbar button.active{border-color:#7da1f7;color:var(--blue);background:#eff5ff}.toolbar-icon-group{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff;flex-shrink:0}.toolbar-icon-group button{border:0!important;border-radius:0!important;padding:0 8px!important;height:31px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#475569}.toolbar-icon-group button:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.toolbar-icon-group button:disabled{opacity:.45;cursor:not-allowed}.toolbar-icon-group button+button{border-left:1px solid var(--line)!important}.toolbar-icon-group button.btn-delete:hover:not(:disabled){background:#fef2f2;color:#dc2626}.btn-filter-reset{display:inline-flex;align-items:center;gap:5px;border-color:#fca5a5!important;background:#fef2f2!important;color:#dc2626!important;font-weight:500;flex-shrink:0}.btn-filter-reset:hover{background:#fee2e2!important;border-color:#f87171!important}.grid-status{color:var(--muted);font-size:12px;white-space:nowrap}.grid-summary{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:0}.selection-stats{display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid #d9e4f8;border-radius:7px;background:#f4f8ff;color:#52647e;font-size:11px;font-variant-numeric:tabular-nums;flex-shrink:0}.selection-stats span+span{padding-left:8px;border-left:1px solid #d6e1f3}.selection-stats strong{color:#174ea6;font-weight:700}.toolbar-divider{width:1px;height:22px;background:var(--line);margin:0 1px;flex-shrink:0}.quick-scroll{display:flex;gap:3px;flex-shrink:0}.quick-scroll button{padding:0;width:30px;height:31px;display:inline-flex;align-items:center;justify-content:center}.view-anchor{position:relative}.view-popover{position:fixed;z-index:1000;width:360px;max-height:calc(100vh - 80px);overflow-y:auto;padding:12px;background:#fff;border:1px solid #d8e0ec;border-radius:10px;box-shadow:0 14px 38px #17233f26}.view-popover-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.view-popover-head>div{display:flex;flex-direction:column;gap:2px}.view-popover-head strong{font-size:13px}.view-popover-head small{font-size:10px;color:var(--muted)}.view-popover-head>button{border:0;padding:0 5px;font-size:18px}.view-setting{min-height:38px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0f5}.view-setting>div{display:flex;align-items:center;gap:6px;font-size:11px}.view-setting button{width:26px;height:25px;padding:0;justify-content:center}.view-setting output{min-width:48px;text-align:center;font-size:11px;color:#26364d;font-variant-numeric:tabular-nums}.column-visibility{padding-top:10px;border-top:1px solid #edf0f5}.column-visibility-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.column-visibility-head>div{display:flex;align-items:center;gap:6px}.column-visibility-head strong{font-size:12px}.column-visibility-head span{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.column-visibility-head button{width:auto;height:24px;padding:0 7px;font-size:10px}.column-search{height:31px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #dbe2ed;border-radius:7px;color:#8090a8;background:#fafbfd}.column-search:focus-within{border-color:#8aaaf0;box-shadow:0 0 0 2px #e8efff;background:#fff}.column-search input{min-width:0;width:100%;padding:0;border:0;outline:0;background:transparent;font-size:11px}.column-list{max-height:220px;overflow-y:auto;margin-top:7px;padding:3px;border:1px solid #edf0f5;border-radius:7px;scrollbar-width:thin}.column-list label{min-height:30px;display:flex;align-items:center;gap:8px;padding:5px 7px;border-radius:5px;cursor:pointer;white-space:normal}.column-list label:hover{background:#f2f6fd}.column-list input{width:14px;height:14px;flex:0 0 auto;accent-color:var(--blue)}.column-list span{overflow:hidden;color:#2d3a4e;font-size:11px;line-height:1.25;text-overflow:ellipsis}.column-list-empty{padding:16px 8px;color:var(--muted);font-size:11px;text-align:center}.view-popover p{margin:8px 0 0;padding:8px 9px;border-radius:6px;background:#f5f7fa;color:#748197;font-size:10px;line-height:1.4;white-space:normal}.obp-grid{height:100%;min-height:400px;--ag-font-family: Inter;--ag-font-size: 12px;--ag-row-height: 31px;--ag-header-height: 36px;--ag-border-color: #dbe2ee;--ag-header-background-color: #f8fafc;--ag-odd-row-background-color: #fbfcfe;--ag-selected-row-background-color: #eaf1ff;--ag-cell-horizontal-border: solid 1px #dbe2ee;--ag-header-column-separator-display: block;--ag-header-column-separator-color: #cbd5e1;--ag-header-column-separator-height: 100%}.obp-grid .ag-header-cell{border-right:1px solid #cbd5e1!important}.obp-grid .ag-cell{border-right:1px solid #e0e6f0!important}.obp-grid .ag-row .ag-cell:after{content:"";position:absolute;z-index:3;left:0;right:0;bottom:0;height:7px;cursor:row-resize;border-bottom:2px solid transparent}.obp-grid .ag-row:hover .ag-cell:after{border-bottom-color:#8aa9e8}.resizing-grid-row,.resizing-grid-row *{cursor:row-resize!important;-webkit-user-select:none!important;user-select:none!important}.obp-grid .ag-header-cell-resize{width:9px;right:-4px;cursor:col-resize!important}.obp-grid .ag-header-cell-resize:after{content:"";position:absolute;top:5px;bottom:5px;left:4px;width:2px;border-radius:2px;background:#9bb2df;opacity:.65}.obp-grid .ag-header-cell:hover .ag-header-cell-resize:after,.obp-grid .ag-header-cell-resize:hover:after{opacity:1;background:var(--blue)}.ag-root-wrapper{border:0!important;border-radius:0 0 11px 11px!important}.long-cell{white-space:normal;overflow:hidden;text-overflow:clip}.wrapped-cell{white-space:pre-wrap!important;overflow:hidden;line-height:1.35;padding-top:5px;padding-bottom:5px;overflow-wrap:anywhere}.status-cell{font-weight:600}.filter-anchor{position:relative}.filter-popover{position:absolute;z-index:20;top:39px;left:0;width:330px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 35px #1f2e4d25;padding:12px;display:flex;flex-direction:column;gap:9px}.filter-head{display:flex;justify-content:space-between;align-items:center}.filter-head button{border:0;font-size:20px;padding:0}.filter-values{height:245px;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:6px}.filter-values label,.check-all{display:flex;gap:7px;align-items:center;padding:5px;font-size:12px}.filter-values label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-actions,.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.dialog-overlay{position:fixed;inset:0;background:#11182766;z-index:50}.dialog{position:fixed;z-index:51;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;padding:22px;width:460px;box-shadow:0 25px 60px #0004}.dialog h2{margin:0 0 8px}.dialog p{color:var(--muted);font-size:13px;line-height:1.5}.server-value{background:#f7f9fc;border:1px solid var(--line);padding:10px;border-radius:7px;margin:16px 0}.server-value small{color:var(--muted)}.paste-dialog{width:min(1180px,calc(100vw - 32px));height:min(820px,calc(100vh - 32px));padding:0;overflow:hidden;display:flex;flex-direction:column}.paste-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 15px;border-bottom:1px solid var(--line)}.paste-dialog-head>div{display:flex;align-items:flex-start;gap:11px}.paste-dialog-head>div>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#eaf1ff;color:var(--blue)}.paste-dialog-head h2{margin:0 0 3px;font-size:19px}.paste-dialog-head p{margin:0;font-size:11px}.paste-dialog-head>button{padding:6px;border:0}.excel-paste-surface{margin:auto 20px;min-height:290px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;border:2px dashed #b8c9e9;border-radius:12px;background:#f7faff;color:#52627b;outline:none}.excel-paste-surface:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2768e71a}.excel-paste-surface>svg{color:var(--blue)}.excel-paste-surface strong{font-size:20px;color:var(--ink)}.excel-paste-surface span{font-size:12px}.paste-shortcut{display:flex;align-items:center;gap:7px;margin-top:5px}.paste-shortcut kbd{display:inline-grid;min-width:38px;height:30px;padding:0 8px;place-items:center;border:1px solid #bdc8d9;border-bottom-width:2px;border-radius:6px;background:#fff;color:#27344a;font:600 12px inherit}.paste-shortcut b{color:#8a96a8}.paste-loaded-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px 8px}.paste-loaded-bar>div{display:flex;align-items:center;gap:9px}.paste-loaded-bar>div>svg{color:var(--blue)}.paste-loaded-bar span{display:flex;flex-direction:column;gap:2px}.paste-loaded-bar small{color:var(--muted)}.paste-loaded-bar button{padding:7px 10px}.paste-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 20px 10px}.paste-options label{display:grid;gap:5px;color:#536078;font-size:11px}.paste-options select{min-width:0;height:36px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)}.paste-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:1px 20px 7px;font-size:11px}.paste-summary span{color:var(--muted);text-align:right}.paste-preview{flex:1 1 auto;min-height:180px;margin:0 20px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;scrollbar-width:thin}.paste-preview table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.paste-preview th,.paste-preview td{min-width:145px;max-width:240px;height:34px;padding:6px 9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.paste-preview th{position:sticky;top:0;z-index:1;background:#f3f6fa;color:#344158;font-weight:600}.paste-preview .paste-row-number{left:0;z-index:2;min-width:48px;width:48px;max-width:48px;text-align:center;background:#f7f9fc;color:#8290a4}.paste-preview tbody .paste-row-number{position:sticky}.paste-preview .unmapped{background:#fff4f1;color:#a94635}.paste-preview td span{color:#a1aaba;font-style:italic}.paste-preview-limit{margin:5px 20px 0;color:var(--muted);font-size:10px}.paste-warning{margin:9px 20px 0;padding:8px 10px;border:1px solid #efd59d;border-radius:7px;background:#fff8e8;color:#805d16;font-size:11px}.paste-dialog>.error-banner{margin:9px 20px 0}.paste-actions{padding:14px 20px 18px;border-top:1px solid var(--line);margin-top:12px}@media(max-width:680px){.paste-options{grid-template-columns:1fr}}.export-dialog{width:520px;padding:0;overflow:hidden}.export-dialog-title{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 15px;border-bottom:1px solid var(--line)}.export-dialog-title>div{display:flex;align-items:center;gap:11px}.export-dialog-title>div>span{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:#eaf1ff;color:var(--blue)}.export-dialog-title h2{margin:0 0 3px;font-size:18px}.export-dialog-title p{margin:0;font-size:11px}.export-dialog-title>button{padding:6px;border:0}.export-select-bar{display:flex;align-items:center;justify-content:space-between;padding:11px 20px 7px}.export-select-bar strong{font-size:11px;color:#56647a}.export-select-bar button{padding:5px 8px;border:0;color:var(--blue);font-size:11px}.export-sheet-list{max-height:330px;overflow-y:auto;padding:3px 14px 10px;scrollbar-width:thin}.export-sheet-list>button{width:100%;min-height:50px;margin:3px 0;padding:8px 10px;border-color:#e5eaf2;justify-content:flex-start;text-align:left}.export-sheet-list>button.selected{border-color:#8fb0f7;background:#f1f6ff}.export-check{width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #cad3e1;border-radius:5px;color:#fff}.export-sheet-list>button.selected .export-check{border-color:var(--blue);background:var(--blue)}.export-sheet-list>button>span:last-child{min-width:0;display:flex;flex-direction:column;gap:3px}.export-sheet-list strong{color:#26344a;font-size:12px}.export-sheet-list small{color:#8290a4;font-size:10px;text-transform:capitalize}.export-state{padding:35px;color:var(--muted);text-align:center;font-size:12px}.export-note{margin:0 20px 14px;padding:9px 10px;border-radius:7px;background:#f4f7fb;color:#68778c;font-size:10px}.export-error{margin:0 20px 10px;color:#b42318;font-size:11px}.export-dialog .dialog-actions{padding:14px 20px;border-top:1px solid var(--line);background:#fafbfd}.export-dialog .dialog-actions .primary{min-width:170px;justify-content:center}.review-import-dialog{width:min(760px,calc(100vw - 36px));max-height:calc(100vh - 36px);padding:0;overflow:hidden;display:flex;flex-direction:column}.review-import-body{min-height:0;padding:18px 20px;overflow-y:auto}.review-dropzone{min-height:210px;border:1.5px dashed #b9c7db;border-radius:11px;background:#f8faff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#678;transition:border-color .15s,background .15s,transform .15s}.review-dropzone.dragging{border-color:var(--blue);background:#edf4ff;transform:scale(.997)}.review-dropzone>svg{color:var(--blue)}.review-dropzone>strong{color:#25344b;font-size:14px}.review-dropzone>span{font-size:11px;color:#8592a5}.review-dropzone>div{display:flex;gap:8px;margin-top:8px}.review-dropzone button{gap:6px;background:#fff}.review-file-summary{margin-top:13px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff}.review-file-summary>div{display:inline-flex;gap:8px;align-items:baseline}.review-file-summary>div span{color:var(--muted);font-size:11px}.review-file-summary>button{float:right;padding:3px 7px;border:0;color:#b42318;font-size:11px}.review-file-summary ul{clear:both;list-style:none;margin:9px 0 0;padding:0;display:grid;gap:5px}.review-file-summary li{display:flex;align-items:center;gap:7px;min-width:0;color:#536177;font-size:11px}.review-file-summary li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-file-summary .more-files{padding-left:21px;color:var(--muted)}.review-import-note{margin-top:12px;padding:10px 11px;border-radius:8px;background:#f4f7fb;color:#68778c;font-size:10px;line-height:1.45}.review-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.review-stats>div{padding:11px;border:1px solid #e4e9f1;border-radius:9px;background:#fafbfd;display:flex;flex-direction:column;gap:4px}.review-stats strong{color:#1d4ed8;font-size:20px}.review-stats span{color:#718096;font-size:10px}.review-preview-meta{margin:12px 0;color:#68778c;font-size:11px}.review-warning{display:flex;gap:9px;align-items:flex-start;margin-bottom:11px;padding:10px 11px;border:1px solid #f1d69d;border-radius:8px;background:#fff9eb;color:#8a5a08}.review-warning>div{display:flex;flex-direction:column;gap:3px}.review-warning strong{font-size:11px}.review-warning span{font-size:10px;line-height:1.4}.review-preview-list{max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;scrollbar-width:thin}.review-preview-list>div{display:grid;grid-template-columns:90px 1fr minmax(120px,.55fr);gap:9px;align-items:center;padding:8px 10px;border-bottom:1px solid #edf0f5}.review-preview-list>div:last-child{border-bottom:0}.review-preview-list strong{color:#25344b;font-size:11px}.review-preview-list span{color:#536177;font-size:10px}.review-preview-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8995a7;font-size:9px}.review-details{margin-top:8px;border:1px solid var(--line);border-radius:7px;padding:8px 10px;color:#536177;font-size:10px}.review-details summary{cursor:pointer;font-weight:600}.review-details p{margin:7px 0 0;color:#68778c;font-size:10px;overflow-wrap:anywhere}.review-import-result{padding:42px 25px;text-align:center}.review-import-result>svg{color:#16a34a}.review-import-result h3{margin:10px 0 5px;color:#24334a}.review-import-result p{margin:0}.review-import-result small{display:block;margin-top:9px;color:#7b8799}.review-import-error{margin-top:0;padding:0 20px 10px}.review-import-dialog>.dialog-actions{flex:none;padding:14px 20px;border-top:1px solid var(--line);background:#fafbfd}.review-import-dialog>.dialog-actions .primary{min-width:190px;justify-content:center}@media(max-width:700px){.review-stats{grid-template-columns:repeat(2,1fr)}.review-preview-list>div{grid-template-columns:80px 1fr}.review-preview-list small{grid-column:2}}.login-page{height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#e5edff,#f5f7fb 45%)}.login-card{width:370px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px;box-shadow:0 20px 60px #23355b18;display:flex;flex-direction:column;gap:15px}.login-card .login-mark{margin:auto}.login-card h1{text-align:center;margin:2px 0 -10px}.login-card>p{text-align:center;color:var(--muted);margin:0 0 7px}.login-card label{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:6px}.login-card button{justify-content:center;padding:10px}.error-banner{padding:10px 12px;border-radius:7px;background:#fff0f0;color:#b42318;font-size:13px}.page-state{display:grid;place-items:center;height:100%;color:var(--muted)}.spinner{width:28px;height:28px;border:3px solid #dbe3f1;border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dataset-select{min-width:260px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;overflow:auto}.panel h2{font-size:15px;margin:0 0 14px}.excel-analytics-page{min-height:0;display:flex;flex:1;flex-direction:column;gap:12px}.analytics-head{flex:none;margin-bottom:0}.analytics-head h1{margin-bottom:3px}.analytics-head p{display:flex;align-items:center;gap:5px;margin:0;color:var(--muted);font-size:11px}.analytics-head-actions{display:flex;align-items:center;gap:8px}.analytics-head-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 12px;border-color:#bfd0e8;background:#fff;color:#31577f;font-size:11px;font-weight:600}.analytics-head-actions>button:hover:not(:disabled){border-color:#78a0db;background:#f5f8ff;color:var(--blue)}.analytics-head-actions>button:disabled{cursor:wait;opacity:.65}.analytics-warning{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #f0ca78;border-radius:8px;background:#fff8e8;color:#805b13;font-size:12px}.excel-status-summary{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:8px}.excel-status-card{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dfe5ee;border-top:4px solid #8d99aa;border-radius:8px;background:#fff}.excel-status-card>div{min-width:0;display:flex;flex-direction:column;gap:2px}.excel-status-card strong{font-size:11px;line-height:1.25}.excel-status-card small{color:#7c8798;font-size:9px}.excel-status-card output{flex:none;font-size:21px;font-weight:700;font-variant-numeric:tabular-nums}.excel-status-card.approved,.excel-status-card.signed{border-top-color:#38a169;background:#f5fcf7}.excel-status-card.checking{border-top-color:#e3ad25;background:#fffbef}.excel-status-card.comments{border-top-color:#e3674f;background:#fff8f6}.excel-status-card.hold{border-top-color:#8868cf;background:#faf8ff}.excel-status-card.submitted{border-top-color:#3478d4;background:#f6f9ff}.excel-status-card.unsigned{border-top-color:#83a94b;background:#f9fcef}.excel-matrix-panel{min-height:360px;display:flex;flex:1;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff}.excel-matrix-panel>header{flex:none;min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.excel-matrix-panel h2{margin:0;font-size:14px}.excel-matrix-panel p{margin:3px 0 0;color:var(--muted);font-size:10px}.analytics-matrix-tools{position:relative;display:flex;align-items:center;gap:8px}.analytics-matrix-tools>span{padding:5px 8px;border-radius:999px;background:#f0f3f8;color:#667386;font-size:10px;white-space:nowrap}.analytics-work-filter{position:relative}.analytics-work-filter>button{min-width:154px;min-height:32px;display:inline-flex;align-items:center;justify-content:space-between;gap:7px;padding:0 9px;border-color:#d6deea;background:#fff;color:#43536a;font-size:10px}.analytics-work-filter>button.active{border-color:#8fb2ed;background:#eef5ff;color:#235ebc}.analytics-work-filter>button span{flex:1;text-align:left}.analytics-work-filter-popover{position:absolute;z-index:30;top:calc(100% + 6px);right:0;width:min(420px,calc(100vw - 48px));overflow:hidden;border:1px solid #d5deeb;border-radius:10px;background:#fff;box-shadow:0 18px 46px #1e2f4c33}.analytics-work-filter-head{display:flex;align-items:center;justify-content:space-between;padding:11px 12px 8px}.analytics-work-filter-head strong{font-size:12px}.analytics-work-filter-head button,.analytics-work-filter-search button{width:26px;height:26px;padding:0;border:0;background:transparent;color:#748196}.analytics-work-filter-search{position:relative;display:block;margin:0 12px 9px}.analytics-work-filter-search>svg{position:absolute;z-index:1;top:9px;left:9px;color:#8290a4}.analytics-work-filter-search input{width:100%;height:33px;padding:0 34px 0 30px;font-size:11px}.analytics-work-filter-search button{position:absolute;top:4px;right:4px}.analytics-work-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px;border-block:1px solid #edf1f6;background:#f8fafc;color:#6d798c;font-size:9px}.analytics-work-filter-summary button{padding:3px 5px;border:0;background:transparent;color:#2864c5;font-size:10px}.analytics-work-filter-summary button:disabled{color:#aab2bf}.analytics-work-filter-options{max-height:330px;overflow:auto;padding:5px 0;scrollbar-gutter:stable}.analytics-work-filter-options label{min-height:34px;display:flex;align-items:center;gap:9px;padding:5px 12px;cursor:pointer}.analytics-work-filter-options label:hover{background:#f3f7fd}.analytics-work-filter-options input{flex:none;width:14px;height:14px;margin:0;accent-color:var(--blue)}.analytics-work-filter-options span{min-width:0;overflow:hidden;color:#28374d;font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.analytics-work-filter-options p{margin:0;padding:18px 12px;color:var(--muted);font-size:11px;text-align:center}.excel-matrix-scroll{min-height:0;flex:1;overflow:auto}.excel-matrix{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.excel-matrix th{position:sticky;z-index:5;top:0;height:62px;min-width:112px;padding:7px 8px;border-right:1px solid #dce2eb;border-bottom:1px solid #cfd7e3;background:#eef2f6;color:#324056;font-size:9px;line-height:1.22;text-align:center;vertical-align:middle;white-space:normal}.excel-matrix td{height:44px;padding:6px 8px;border-right:1px solid #edf0f4;text-align:right;font-size:10px;font-variant-numeric:tabular-nums}.excel-matrix .work-col{position:sticky;z-index:3;left:0;width:330px;min-width:330px;max-width:330px;background:#fff;text-align:left}.excel-matrix th.work-col{z-index:7;background:#dfe7f3;text-align:center}.excel-matrix .unit-col{position:sticky;z-index:3;left:330px;width:64px;min-width:64px;background:#fff;text-align:center}.excel-matrix th.unit-col{z-index:7;background:#dfe7f3}.excel-matrix .work-col strong{display:block;line-height:1.25}.excel-matrix .work-col small{display:block;margin-top:3px;color:#8490a2;font-size:9px;line-height:1.2}.excel-matrix .work-col em{display:inline-block;margin-top:3px;padding:2px 5px;border-radius:4px;background:#eaf1ff;color:#3564aa;font-size:8px;font-style:normal}.excel-matrix td.zero{color:#b2bac5}.excel-matrix tr:hover td{background-color:#f7faff}.excel-matrix th.metric-total{background:#e9edf2}.excel-matrix th.metric-signed{background:#dff3e4}.excel-matrix th.metric-unsigned{background:#edf4d9}.excel-matrix th.metric-daily{background:#dceeff}.excel-matrix th.metric-comments{background:#fde6df}.excel-matrix th.metric-checking{background:#fff0bf}.excel-matrix th.metric-muted{background:#edf0f3}.excel-matrix th.metric-hold{background:#ebe3fa}.excel-matrix th.metric-repeat{background:#dfe9f7}.excel-matrix th.metric-weekly{background:#dcecff;color:#204f91}.excel-matrix th.metric-weekly small{display:block;margin-top:3px;color:#5f7697;font-size:8px;font-weight:600}@media(max-width:1280px){.excel-status-summary{grid-template-columns:repeat(3,minmax(150px,1fr))}}.inline-form{display:flex;gap:8px;margin-bottom:14px}.inline-form input{min-width:220px}.users-form input{min-width:150px}.reference-list{display:flex;flex-direction:column;gap:24px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chips>span{background:#f1f5fa;border:1px solid #e3e9f1;border-radius:999px;padding:6px 8px 6px 11px;font-size:12px}.chips button{border:0;background:transparent;padding:0 3px;margin-left:5px;color:#8b96a8}.chips>span>span{display:inline-flex;align-items:center;gap:6px}.chips>span>span small{padding:2px 5px;border-radius:4px;background:#dfe9f8;color:#3f608d;font-size:9px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#6c788b;font-weight:600;background:#f8fafc}th,td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}td strong,td small{display:block}td small{color:var(--muted);margin-top:3px}.badge{padding:4px 7px;border-radius:999px;background:#edf1f7;font-size:10px;font-weight:600}.badge.ok{background:#e8f8ed;color:#218849}.badge.danger{background:#ffebeb;color:#b42318}.row-actions{display:flex;justify-content:flex-end;gap:6px}.row-actions button{font-size:11px;padding:6px}.audit-table{flex:1}.truncate{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell{transition:grid-template-columns .18s ease}.shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{transition:padding .18s ease}.brand{position:relative}.sidebar-toggle{margin-left:auto;background:transparent;border:0;color:#8995aa;padding:6px}.sidebar-toggle:hover{background:#ffffff12;color:#fff}.sidebar-collapsed .sidebar{padding-inline:10px}.sidebar-collapsed .brand{padding-inline:7px;justify-content:center}.sidebar-collapsed .brand-logo-wrap svg{width:34px;height:34px}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-label,.sidebar-collapsed nav a span,.sidebar-collapsed .sidebar-action span,.sidebar-collapsed .account>div{display:none}.sidebar-collapsed .sidebar-language{padding-inline:0}.sidebar-collapsed .sidebar-language label{display:none}.sidebar-collapsed .sidebar-language select{padding-inline:4px;font-size:10px}.sidebar-collapsed .sidebar-toggle{position:absolute;top:45px;left:9px;width:36px;justify-content:center;background:#1b263a}.sidebar-collapsed nav{margin-top:31px}.sidebar-collapsed nav a{justify-content:center;padding:11px}.sidebar-collapsed .sidebar-action{justify-content:center;padding:11px}.sidebar-collapsed .account{justify-content:center;padding-inline:0}.sidebar-collapsed .account button{padding:9px}.excel-header{width:100%;height:100%;display:flex;align-items:stretch;min-width:0}.excel-header-title{min-width:0;flex:1;height:100%;padding:4px 5px;border:0;border-radius:0;background:transparent;font-size:inherit;line-height:1.22;font-weight:600;justify-content:flex-start;align-items:center;overflow:hidden;text-align:left}.excel-header-title span{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.header-sort-icon{flex:none}.excel-filter-trigger{width:25px;height:26px;padding:0;justify-content:center;border:0;border-radius:4px;background:transparent;color:#8a96a8;opacity:.68}.excel-filter-trigger:hover,.excel-filter-trigger.active{opacity:1;color:var(--blue);background:#e8f0ff}.column-filter-popover{position:fixed;z-index:80;width:376px;max-height:540px;background:#fff;border:1px solid #d4dce9;border-radius:11px;box-shadow:0 18px 48px #17233f2b;display:flex;flex-direction:column;overflow:hidden}.column-filter-head{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 14px 9px}.column-filter-head>div{display:flex;min-width:0;flex-direction:column;gap:2px}.column-filter-head small{font-size:9px;letter-spacing:.09em;color:#8693a6}.column-filter-head strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-filter-head button{border:0;padding:3px}.filter-sort-section{display:flex;flex-direction:column;gap:2px;padding:0 12px 8px;border-bottom:1px solid #eef1f5;margin-bottom:8px}.filter-sort-btn{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:5px 8px;border-radius:5px;font-size:11px;color:#28384f;text-align:left;cursor:pointer}.filter-sort-btn:hover{background:#eef4fe;color:var(--blue)}.filter-sort-btn.active{background:#e2edfe;color:var(--blue);font-weight:600}.filter-sort-reset{color:#75839a;font-size:10px;margin-top:2px}.filter-sort-reset:hover{background:#fdf2f2;color:#b42318}.excel-header-title{cursor:pointer}.excel-header-title:hover{background:#f0f4fa}.filter-search{margin:0 12px 8px;position:relative}.filter-search svg{position:absolute;left:10px;top:10px;color:#8a96a8}.filter-search input{width:100%;padding-inline:31px}.filter-search-clear{position:absolute;right:5px;top:5px;width:26px;height:26px;padding:0;justify-content:center;border:0;background:transparent;color:#75839a}.filter-search-clear:hover{background:#eef2f7}.filter-usage-hint{display:flex;justify-content:space-between;gap:8px;padding:0 13px 8px;color:#7a879a;font-size:9px}.filter-selection-bar{min-height:34px;padding:5px 12px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eef1f5;background:#f8fafc;color:#6e7b8e;font-size:10px}.filter-selection-bar strong{color:#28384f}.filter-selection-bar>div{display:flex;gap:3px}.filter-selection-bar button{border:0;background:transparent;color:#315fae;padding:4px 6px;font-size:10px}.filter-selection-bar button:hover{background:#eaf1fd}.filter-selection-bar button:disabled{color:#a1abba;background:transparent}.filter-select-visible{display:flex;align-items:center;gap:8px;color:#33445d;cursor:pointer}.column-filter-values{height:330px;overflow:auto;border-block:1px solid var(--line);padding:6px 0;scrollbar-gutter:stable}.column-filter-values input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--blue)}.filter-value-row{display:flex;align-items:stretch;min-height:35px;padding:2px 8px 2px 14px;font-size:12px}.filter-value-row:hover{background:#f6f8fb}.filter-value-checkbox{display:flex;align-items:center;flex:none;width:24px;cursor:pointer}.filter-value-label{display:flex;align-items:center;min-width:0;flex:1;border:0;border-radius:5px;padding:4px 6px;background:transparent;text-align:left}.filter-value-label span{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#223047}.filter-value-label small{flex:none;margin-left:9px;color:#7c8ba0;font-size:9px;opacity:.62}.filter-value-label:hover{background:#e9f1ff}.filter-value-label:hover small{color:#245fc9;opacity:1}.blank-value{border-top:1px solid #edf0f4;margin-top:5px;color:#6e7b8e}.filter-error{color:#b42318}.column-filter-values details summary{list-style:none;display:flex;align-items:center;gap:7px;padding:8px 12px;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.column-filter-values details summary::-webkit-details-marker{display:none}.column-filter-values details summary>svg{transition:transform .12s}.column-filter-values details[open]>summary>svg{transform:rotate(90deg)}.date-year{border-bottom:1px solid #edf0f4}.date-year:last-child{border-bottom:0}.date-year>summary:hover{background:#f5f8fc}.date-year summary small{margin-left:auto;min-width:25px;padding:2px 6px;border-radius:999px;background:#eef2f7;color:#748197;text-align:center;font-size:9px}.date-year-content{padding:1px 8px 8px 28px}.date-month{border-radius:6px}.date-month>summary{padding:7px 8px;border-radius:6px}.date-month>summary:hover{background:#f5f7fa}.date-month-leaf{min-height:34px;padding:7px 8px 7px 28px;display:flex;align-items:center;gap:8px;border-radius:6px;font-size:12px}.date-month-leaf:hover{background:#f5f7fa}.date-month-leaf small{margin-left:auto;color:#8995a7}.date-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:3px 7px 10px 36px}.date-days-grid button{height:28px;padding:0;justify-content:center;border-color:#dfe5ee;border-radius:6px;font-size:10px;font-variant-numeric:tabular-nums}.date-days-grid button.selected{background:#e8f0ff;border-color:#9bb8f4;color:#1f58c7;font-weight:600}.filter-message{padding:12px;color:var(--muted);font-size:11px}.filter-draft-summary{padding:7px 12px 0;color:#5d6b80;font-size:10px}.column-filter-actions{display:flex;justify-content:space-between;gap:7px;padding:9px 12px}.column-filter-actions button{font-size:12px;padding:7px 9px}.range-editor{margin-left:2px;display:flex;align-items:center;height:31px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#f8fafc;flex-shrink:0}.range-editor>span{min-width:46px;padding:0 6px;color:#657187;font-size:10px;text-align:center}.range-editor input{width:80px;height:31px;border-block:0;border-radius:0;box-shadow:none!important;font-size:11.5px}.range-editor button{height:31px;border-block:0;border-right:0;border-radius:0;padding:0 8px;font-size:11px}.ag-cell.range-selected{background:#dce9ff!important;box-shadow:inset 0 0 0 1px #82a9f8}.ag-cell-focus.range-selected{box-shadow:inset 0 0 0 2px #2463eb!important}.cell-rich-text{white-space:pre-wrap}.struck-text{text-decoration-line:line-through!important;text-decoration-style:solid!important;text-decoration-color:#111827!important;text-decoration-thickness:2px!important;text-decoration-skip-ink:none}.strict-date-editor,.strict-numeric-editor{width:100%;height:100%;border:2px solid var(--blue);border-radius:0;font-variant-numeric:tabular-nums;padding:0 4px}.date-history-editor,.rich-text-cell-editor{width:min(620px,80vw);max-height:min(620px,75vh);padding:14px;border:1px solid #d5ddea;border-radius:10px;background:#fff;box-shadow:0 18px 45px #17233f33}.date-history-editor>small,.rich-text-preview>small,.rich-text-warning{display:block;margin-bottom:7px;color:#657187;font-size:11px}.date-history-editor textarea{width:100%;min-height:150px;resize:vertical;font-variant-numeric:tabular-nums;line-height:1.55}.rich-text-cell-editor textarea{width:100%;min-height:210px;max-height:360px;resize:vertical;line-height:1.5}.rich-text-preview{margin-bottom:10px;padding:11px 12px;border:1px solid #dbe4f2;border-radius:7px;background:#f7f9fc}.rich-text-preview>div{max-height:190px;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;color:#18243a}.rich-text-warning{margin:7px 0 0;color:#936018}.reference-summary{color:var(--muted);font-size:12px}.reference-summary strong{color:#27364f}.references-page{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-right:4px}.reference-directory{display:flex;flex-direction:column;flex:1;min-height:0;padding:0;overflow:hidden}.reference-tabs{flex:none;display:flex;gap:3px;padding:10px 12px 0;background:#f8fafc;border-bottom:1px solid var(--line)}.reference-tabs button{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:7px 7px 0 0;background:transparent;padding:10px 14px;color:#67758a;font-weight:500;cursor:pointer;transition:all .15s ease}.reference-tabs button:hover{color:#24344d;background:#f1f4f9}.reference-tabs button.active{background:#fff;color:var(--blue);box-shadow:0 -1px 0 var(--line),1px 0 0 var(--line),-1px 0 0 var(--line);font-weight:600}.reference-tabs button b{font-size:10px;background:#e9eef6;color:#607087;border-radius:999px;padding:2px 7px}.reference-tabs button.active b{background:#e5efff;color:var(--blue)}.directory-head{flex:none;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:16px 20px}.directory-title-row{display:flex;align-items:center;gap:10px;margin-bottom:5px}.directory-title-row h2{font-size:18px;margin:0;color:#172033}.directory-count-badge{font-size:11px;font-weight:600;background:#eef2f7;color:#516177;padding:3px 8px;border-radius:12px}.directory-head p,.lookup-title p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.5}.directory-tools{display:flex;gap:8px;align-items:center}.directory-search-label{position:relative;display:flex;align-items:center}.directory-search-label svg{position:absolute;left:10px;color:#8a96a8;pointer-events:none}.directory-search-label input{width:270px;padding-left:32px;padding-right:28px;height:36px;font-size:12px}.search-clear-btn{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;background:transparent;color:#8a96a8;border-radius:50%;cursor:pointer}.search-clear-btn:hover{background:#e2e8f0;color:#334155}.contact-table-wrap{flex:1;min-height:0;max-height:none;overflow:auto;border-top:1px solid var(--line)}.contact-table{min-width:900px;width:100%;border-collapse:collapse}.contact-table th{position:sticky;top:0;z-index:2;background:#f8fafc;box-shadow:0 1px 0 var(--line);padding:11px 16px;font-size:11.5px;font-weight:600;color:#55647a;text-align:left}.contact-table-actions-th{width:90px}.contact-table td{padding:11px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.contact-table tbody tr{transition:background-color .1s ease}.contact-table tbody tr:hover{background:#f7faff}.contact-table td:first-child{min-width:170px}.contact-table td:nth-child(2){min-width:200px}.contact-table td a{display:inline-flex;align-items:center;gap:6px;color:#245dc4;text-decoration:none}.contact-table td a:hover{text-decoration:underline}.badge-group{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:600;white-space:nowrap}.badge-group.checker{background:#edf5ff;color:#1e5bb8;border:1px solid #c9dfff}.badge-group.cc7{background:#f0fdf4;color:#1b7340;border:1px solid #bcead0}.missing-value{color:#9aa5b5;font-style:italic}.empty-table{text-align:center;color:var(--muted);padding:40px!important}.danger-button{color:#b42318}.lookup-section{margin-top:17px;overflow:auto}.registry-directory-content{flex:1;min-height:0;overflow-y:auto;padding:18px}.registry-directory-content .lookup-section{overflow:visible}.registry-directory-content .lookup-section:first-child{margin-top:0}.lookup-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.lookup-title form{display:flex;gap:7px}.lookup-title form input{width:220px}.lookup-title form .uom-input{width:88px}.lookup-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:12px;padding-bottom:5px}.lookup-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:14px}.lookup-card header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:11px}.lookup-card h3{font-size:12px;margin:0}.lookup-card header span{font-size:10px;background:#edf2f8;border-radius:999px;padding:3px 7px;color:#68778c}.lookup-card-actions{display:flex;align-items:center;gap:6px}.lookup-card-actions button{display:inline-flex;align-items:center;gap:4px;border:1px solid #d9e2ef;background:#fff;color:#35577e;padding:4px 7px;font-size:10px;border-radius:6px}.lookup-card-actions button:hover{border-color:#8aace0;color:var(--blue);background:#f6f9ff}.reporting-period-section{overflow:visible}.period-chips{display:flex;flex-wrap:wrap;gap:8px}.period-chips>span{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#34445b;font-size:11px}.period-chips>span.current{border-color:#9bbcf2;background:#f3f7ff;color:#1f57ad}.period-chips small{padding:2px 6px;border-radius:999px;background:#dfeaff;color:#245dc4;font-size:9px}.period-dialog-note{margin:0 0 14px;padding:9px 11px;border-radius:7px;background:#f6f8fb;color:var(--muted);font-size:10px;line-height:1.5}.contact-dialog{width:570px}.dialog-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.dialog-title small{color:var(--blue);font-size:10px;letter-spacing:.08em}.dialog-title h2{margin:4px 0 0}.dialog-title>button{border:0}.contact-dialog>label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:600;margin-bottom:11px}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-form-row label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:600}.contact-dialog .active-check{flex-direction:row;align-items:center;margin:14px 0}.active-check input{width:15px;height:15px;margin:0}.contact-dialog .dialog-actions{margin-top:15px}.reference-value-dialog{width:500px}.reference-value-dialog>label{display:flex;flex-direction:column;gap:5px;margin-bottom:11px;font-size:11px;font-weight:600}.reference-value-dialog .active-check{flex-direction:row;align-items:center;margin:14px 0}.rollover-dialog{width:min(1050px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;padding:20px 22px}.rollover-dialog .dialog-title{margin-bottom:14px}.rollover-dialog .dialog-title h2{font-size:19px}.rollover-dialog .dialog-title [data-radix-dialog-description]{margin:5px 0 0;color:var(--muted);font-size:10px}.rollover-loading{min-height:190px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:12px}.rollover-success{display:flex;align-items:center;gap:8px;margin-bottom:13px;padding:10px 12px;border:1px solid #b7dfc2;border-radius:8px;background:#f1fbf4;color:#236b39;font-size:11px}.rollover-route{display:grid;grid-template-columns:max-content 24px max-content 1fr;align-items:center;gap:8px;padding:12px 14px;border:1px solid #dce4ef;border-radius:9px 9px 0 0;background:#f8fafc}.rollover-route strong{font-size:14px;color:#24344b}.rollover-route svg{color:var(--blue)}.rollover-route small{justify-self:end;color:var(--muted);font-size:10px}.rollover-window{padding:8px 14px;border:1px solid #dce4ef;border-top:0;border-radius:0 0 9px 9px;color:#66758b;font-size:10px}.rollover-window strong{color:#34465f}.rollover-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.rollover-stats>span{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid #e0e6ef;border-radius:8px;background:#fff}.rollover-stats>span.move{border-color:#9ebcf0;background:#f3f7ff}.rollover-stats small{color:var(--muted);font-size:9px}.rollover-stats strong{color:#26374e;font-size:18px}.rollover-stats .move strong{color:var(--blue)}.rollover-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:9px 0 12px}.rollover-reasons span{display:flex;align-items:center;gap:7px;min-width:0;color:#65748a;font-size:10px}.rollover-reasons b{flex:none;min-width:28px;color:#2e4058;font-size:11px}.rollover-warning{display:flex;gap:9px;margin-bottom:12px;padding:10px 12px;border:1px solid #f0d394;border-radius:8px;background:#fff9eb;color:#795b19;font-size:10px}.rollover-warning svg{flex:none}.rollover-warning div{display:flex;flex-wrap:wrap;gap:5px 15px}.rollover-warning strong{width:100%}.rollover-preview-head{display:flex;justify-content:space-between;align-items:center;margin:10px 0 7px}.rollover-preview-head strong{font-size:11px}.rollover-preview-head span{color:var(--muted);font-size:9px}.rollover-table-wrap{max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:8px}.rollover-table-wrap table{width:100%;min-width:850px;border-collapse:collapse;font-size:10px}.rollover-table-wrap th{position:sticky;top:0;z-index:1;padding:7px 9px;background:#f5f7fa;color:#66758a;text-align:left}.rollover-table-wrap td{padding:7px 9px;border-top:1px solid #edf0f5;color:#34445a}.rollover-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.rollover-rollback{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:14px;padding:11px 12px;border:1px solid #ead5d5;border-radius:8px;background:snow}.rollover-rollback>div{display:flex;flex-direction:column;gap:3px}.rollover-rollback strong{color:#743636;font-size:11px}.rollover-rollback span{color:#896767;font-size:9px}.rollover-rollback button{display:inline-flex;align-items:center;gap:5px;flex:none;border-color:#dfb7b7;color:#9a3d3d;background:#fff}.create-record-dialog{width:min(920px,calc(100vw - 48px));max-height:calc(100vh - 48px);padding:0;overflow:hidden}.create-record-dialog>form{max-height:calc(100vh - 48px);display:flex;flex-direction:column}.create-record-dialog .dialog-title{flex:none;margin:0;padding:18px 22px 11px}.create-record-dialog .dialog-title h2{margin:3px 0 0;color:#172033;font-size:19px}.create-record-description{margin:0;padding:0 22px 13px;font-size:11px}.create-defaults{flex:none;display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:8px;padding:10px 22px;border-block:1px solid #e5eaf2;background:#f8fafc}.create-defaults span{min-width:0;display:flex;flex-direction:column;gap:3px;padding:7px 9px;border:1px solid #e2e8f1;border-radius:7px;background:#fff}.create-defaults small{color:#7d899a;font-size:9px}.create-defaults strong{display:flex;align-items:center;gap:5px;color:#27364c;font-size:11px;overflow:hidden;text-overflow:ellipsis}.create-defaults span:last-child strong{color:#337047}.create-form-scroll{min-height:0;overflow-y:auto;padding:14px 22px 5px;scrollbar-width:thin}.create-form-scroll fieldset{margin:0 0 12px;padding:12px;border:1px solid #e1e7f0;border-radius:9px}.create-form-scroll legend{padding:0 6px;color:#53647c;font-size:10px;font-weight:700}.create-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.create-form-grid label{min-width:0;display:flex;flex-direction:column;gap:5px;color:#526178;font-size:10px;font-weight:600}.create-form-grid label>span{display:flex;gap:3px}.create-form-grid label>span b{color:#d14c40}.create-form-grid input,.create-form-grid select{width:100%;min-width:0;height:36px;font-size:11px}.create-form-grid input[readonly]{background:#f3f6fa;color:#66758b}.reference-select{position:relative;display:block!important}.reference-select select{padding:0 32px 0 10px;border:1px solid var(--line);border-radius:6px;outline:none;background:#fff;color:#172033;appearance:none;cursor:pointer;text-overflow:ellipsis}.reference-select select:focus{border-color:var(--blue);box-shadow:0 0 0 2px #2a67ee1f}.reference-select select:invalid,.reference-select select option[value=""]{color:#8894a5}.reference-select select option{color:#172033}.reference-select>svg{position:absolute;top:50%;right:10px;translate:0 -50%;color:#6f7e92;pointer-events:none}.reference-combobox{display:block!important;position:relative;min-width:0}.reference-combobox-input{position:relative;display:block!important}.reference-combobox-input>svg{position:absolute;z-index:1;top:50%;left:10px;translate:0 -50%;color:#718096;pointer-events:none}.reference-combobox-input input{padding:0 34px 0 32px;border:1px solid var(--line);border-radius:6px;outline:none;background:#fff;color:#172033}.reference-combobox-input input:focus{border-color:var(--blue);box-shadow:0 0 0 2px #2a67ee1f}.reference-combobox-input>button{position:absolute;right:3px;top:3px;width:30px;height:30px;padding:0;justify-content:center;border:0;background:transparent;color:#64748b}.reference-combobox-input>button:hover{background:#eef3fa}.reference-combobox.invalid input{border-color:#dc746d;background:snow}.reference-combobox-menu{z-index:10020;width:min(max(var(--radix-popover-trigger-width),420px),calc(100vw - 16px));max-height:min(320px,var(--radix-popover-content-available-height));overflow-y:auto;overscroll-behavior:contain;padding:6px;border:1px solid #cfd8e6;border-radius:9px;background:#fff;box-shadow:0 14px 36px #14233c33;scrollbar-gutter:stable}.reference-combobox-menu>button{display:block;width:100%;min-height:34px;height:auto;padding:7px 9px;border:0;border-radius:6px;background:transparent;color:#172033;font-size:11px;line-height:1.35;text-align:left;white-space:normal;overflow-wrap:anywhere}.reference-combobox-menu>button:hover,.reference-combobox-menu>button.active{background:#edf4ff;color:#174ea6}.reference-combobox-menu>button.selected{background:#e4efff;color:#174ea6;font-weight:600}.reference-combobox-empty,.reference-combobox-limit{padding:10px;color:#7b8798;font-size:10px;text-align:center}.reference-combobox-limit{border-top:1px solid #edf0f4}.create-form-grid label small{color:#bd342b;font-size:9px;font-weight:500}.create-form-grid .field-invalid input,.create-form-grid .field-invalid select{border-color:#dc746d;background:snow}.create-record-dialog .dialog-actions{flex:none;margin-top:6px;padding:12px 22px 16px;border-top:1px solid #e8ecf2;background:#fff}.create-record-loading{min-height:260px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:12px}.create-record-dialog .error-banner{margin:12px 22px}.audit-page-wrapper{display:flex;flex-direction:column;gap:12px;min-height:0;flex:1}.audit-head-sub{color:var(--muted);font-size:11.5px;margin:3px 0 0}.audit-head-actions{display:flex;align-items:center;gap:12px}.audit-live-status{display:flex;align-items:center;gap:6px;font-size:11px;color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;padding:4px 10px;border-radius:999px;font-weight:500;-webkit-user-select:none;user-select:none}.audit-live-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 2px #22c55e40;animation:auditPulse 2s infinite ease-in-out}@keyframes auditPulse{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.15);opacity:1}to{transform:scale(.95);opacity:.8}}.audit-refresh-btn{font-size:11.5px;padding:6px 11px}.audit-refresh-btn .spin{animation:auditSpin 1s linear infinite}@keyframes auditSpin{to{transform:rotate(360deg)}}.audit-toolbar-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 14px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.audit-search-box{position:relative;flex:1;min-width:280px;max-width:440px;display:flex;align-items:center}.audit-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.audit-search-input{width:100%;padding:6px 30px 6px 32px;font-size:11.5px;border:1px solid #d7deea;border-radius:6px;outline:none;background:#fcfdfe;transition:border-color .15s,box-shadow .15s}.audit-search-input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 2px #2463eb1f}.audit-search-clear{position:absolute;right:6px;background:transparent;border:0;color:#94a3b8;cursor:pointer;padding:3px;display:flex;align-items:center;justify-content:center;border-radius:4px}.audit-search-clear:hover{color:#475569;background:#f1f5f9}.audit-filters-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.audit-select-wrap{display:flex;align-items:center;gap:5px;font-size:11px;color:#64748b}.audit-select-wrap label{white-space:nowrap}.audit-select-wrap select{font-size:11px;padding:5px 8px;border:1px solid #d7deea;border-radius:5px;background:#fff;color:#1e293b;cursor:pointer;max-width:170px}.audit-reset-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:5px;padding:5px 8px;cursor:pointer;font-weight:500}.audit-reset-btn:hover{background:#fee2e2;border-color:#fca5a5}.audit-stats-bar{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#64748b;padding:0 2px}.audit-stats-total{color:#94a3b8}.audit-fetching-hint{color:var(--blue);font-size:10.5px;font-weight:500}.audit-table-panel{padding:0;overflow:hidden;border-radius:8px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.audit-table-scroll{overflow:auto;max-height:calc(100vh - 240px)}.audit-grid-table{width:100%;border-collapse:collapse;font-size:11.5px}.audit-grid-table th{position:sticky;top:0;z-index:2;background:#f8fafc;border-bottom:1px solid var(--line);padding:9px 11px;font-weight:600;color:#475569;font-size:11px;text-align:left}.audit-th-content{display:inline-flex;align-items:center;gap:5px}.audit-grid-table td{padding:8px 11px;border-bottom:1px solid #edf1f7;vertical-align:middle}.audit-row:hover td{background:#f8fafd}.audit-empty-row{text-align:center;padding:40px!important;color:var(--muted)}.audit-text-link{background:transparent;border:0;color:var(--blue);cursor:pointer;text-decoration:underline;padding:0;display:inline}.audit-time-cell{white-space:nowrap}.audit-time-main{font-weight:600;font-variant-numeric:tabular-nums;color:#1e293b;font-size:11.5px}.audit-date-sub{font-size:9.5px;color:#94a3b8;margin-top:1px}.audit-user-cell{min-width:130px}.audit-user-box{display:flex;align-items:center;gap:7px}.audit-user-avatar{width:24px;height:24px;border-radius:50%;background:#e0e7ff;color:#4338ca;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:10px;flex:none}.audit-user-text{display:flex;flex-direction:column;line-height:1.2;min-width:0}.audit-user-name{font-size:11.5px;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-user-handle{font-size:9.5px;color:#64748b}.audit-action-cell{white-space:nowrap}.audit-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2.5px 7px;border-radius:5px;letter-spacing:.01em}.audit-badge-update{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.audit-badge-create{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.audit-badge-sync{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff}.audit-badge-delete{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.audit-badge-batch{background:#f0fdfa;color:#0f766e;border:1px solid #99f6e4}.audit-badge-rollover{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.audit-badge-export{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}.audit-badge-default{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.audit-entity-cell{min-width:200px}.audit-record-block{display:flex;flex-direction:column;gap:2px}.audit-obp-num-row{display:flex;align-items:center;gap:6px}.audit-obp-number{font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;color:#0f172a}.audit-obp-missing{font-weight:500;color:#64748b;font-size:11px}.audit-obp-meta-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:2px}.audit-tag{display:inline-flex;align-items:center;padding:1px 5px;border-radius:4px;font-size:9.5px;font-weight:500}.audit-tag-row{background:#f1f5f9;color:#475569}.audit-tag-contractor{background:#e0f2fe;color:#0369a1;font-weight:600}.audit-tag-work{background:#f8fafc;color:#64748b;border:1px solid #edf1f7;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-other-entity{display:flex;flex-direction:column;gap:2px}.audit-entity-type-name{font-weight:600;font-size:11px;color:#1e293b}.audit-entity-id{color:#94a3b8;font-family:monospace;font-size:9.5px}.audit-field-cell{min-width:120px}.audit-field-name{font-weight:500;color:#1e293b;font-size:11.5px}.audit-multi-fields-pill{background:#f3e8ff;color:#6b21a8;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:600;display:inline-block}.audit-diff-cell{min-width:220px}.audit-single-diff{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.audit-val-bubble{display:inline-block;padding:2.5px 7px;border-radius:4px;font-size:11px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-val-bubble.old{background:#fef2f2;color:#991b1b;text-decoration:line-through}.audit-val-bubble.old.empty{text-decoration:none;font-style:italic;background:#f8fafc;color:#94a3b8}.audit-val-bubble.new{background:#f0fdf4;color:#166534;font-weight:600}.audit-val-bubble.new.empty{font-style:italic;font-weight:400;background:#f8fafc;color:#94a3b8}.audit-diff-arrow-icon{color:#94a3b8;flex:none}.audit-multi-diff-block{display:flex;flex-direction:column;gap:4px}.audit-diff-toggle-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:5px;padding:3px 8px;font-size:10.5px;color:#475569;cursor:pointer}.audit-diff-toggle-btn:hover{background:#edf2f7;color:#1e293b}.audit-diff-list{display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;margin-top:3px}.audit-diff-row{display:flex;align-items:center;gap:6px;font-size:10.5px}.audit-diff-label{font-weight:500;color:#475569;min-width:100px}.audit-deleted-indicator{color:#b91c1c;font-weight:500;font-size:11px}.audit-created-indicator{color:#15803d;font-weight:500;font-size:11px}.audit-action-col{text-align:center}.audit-info-btn{width:26px;height:26px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;padding:0;transition:all .15s}.audit-info-btn:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.audit-load-more{display:flex;justify-content:center;gap:10px;padding:10px;border-top:1px solid #edf1f7;background:#f8fafc}.audit-load-more-btn{font-size:11.5px;font-weight:500}.audit-load-all-btn{font-size:11.5px;color:#64748b}.audit-modal-backdrop{position:fixed;inset:0;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px}.audit-modal-dialog{background:#fff;border-radius:10px;width:min(680px,95vw);max-height:88vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;overflow:hidden}.audit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.audit-modal-title-wrap h2{margin:2px 0 0;font-size:15px}.audit-modal-badge{font-size:9.5px;font-weight:700;color:#64748b;letter-spacing:.05em}.audit-modal-close{border:0;background:transparent;cursor:pointer;color:#64748b;padding:4px;border-radius:4px}.audit-modal-close:hover{background:#f1f5f9;color:#1e293b}.audit-modal-body{padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.audit-modal-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.audit-meta-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 10px}.audit-meta-label{display:block;font-size:9.5px;color:#64748b;margin-bottom:2px}.audit-meta-value{font-size:11.5px;color:#1e293b}.audit-meta-sub{color:#64748b;font-weight:400}.audit-modal-record-section h3,.audit-modal-changes-section h3{font-size:12px;margin:0 0 7px;color:#334155}.audit-modal-record-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px}.audit-record-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11.5px}.audit-sub-label{display:block;font-size:9.5px;color:#64748b;margin-bottom:2px}.audit-copyable-val{display:flex;align-items:center;gap:5px}.audit-copy-mini{border:0;background:transparent;padding:2px;cursor:pointer;color:#64748b;border-radius:3px}.audit-copy-mini:hover{background:#e2e8f0;color:#1e293b}.audit-work-full{font-size:10.5px;color:#334155;white-space:pre-line}.audit-modal-diff-table-wrap{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.audit-modal-diff-table{width:100%;border-collapse:collapse;font-size:11px}.audit-modal-diff-table th{background:#f8fafc;padding:7px 10px;border-bottom:1px solid #e2e8f0;font-weight:600;color:#475569;text-align:left}.audit-modal-diff-table td{padding:7px 10px;border-bottom:1px solid #f1f5f9}.audit-tech-field{color:#94a3b8;font-family:monospace;font-size:9.5px;margin-left:4px}.audit-modal-single-diff-card{border:1px solid #e2e8f0;border-radius:6px;padding:12px;background:#f8fafc}.audit-modal-field-title{font-size:12px;margin-bottom:10px;color:#1e293b}.audit-modal-val-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.audit-compare-col{display:flex;flex-direction:column;gap:4px}.audit-compare-heading{font-size:10px;font-weight:600;color:#64748b}.audit-compare-box{padding:9px 11px;border-radius:6px;font-size:11.5px;min-height:38px;word-break:break-word;white-space:pre-wrap}.audit-compare-col.old .audit-compare-box{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.audit-compare-col.new .audit-compare-box{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;font-weight:500}.audit-empty-text{color:#94a3b8;font-style:italic}.audit-compare-divider{color:#94a3b8;display:flex;align-items:center;justify-content:center}.audit-tech-details{margin-top:4px;font-size:10.5px;color:#64748b}.audit-tech-details summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.audit-tech-content{margin-top:6px;padding:8px 10px;background:#f1f5f9;border-radius:6px;display:flex;flex-direction:column;gap:4px}.audit-tech-content code{font-family:monospace;font-size:10px;color:#334155;background:#e2e8f0;padding:1px 4px;border-radius:3px}.audit-modal-footer{display:flex;justify-content:flex-end;padding:10px 18px;border-top:1px solid var(--line);background:#f8fafc}.audit-modal-btn-close{padding:6px 14px;font-size:11.5px}.audit-obp-short-badge{font-weight:700;font-size:11.5px;color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;padding:1.5px 6px;display:inline-block;letter-spacing:.02em}.audit-obp-full-sub{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9.5px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px;display:block;margin-top:1px}.audit-highlight-short{font-size:13px;font-weight:700;color:#1d4ed8}.users-page-wrapper{display:flex;flex-direction:column;height:100%;min-height:0;gap:14px;position:relative}.users-page-head{margin-bottom:0}.users-head-sub{margin:4px 0 0;color:var(--muted);font-size:11.5px}.users-head-actions{display:flex;align-items:center;gap:9px}.users-refresh-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:12px;border:1px solid var(--line);background:#fff;border-radius:7px;color:#334155;cursor:pointer;transition:all .15s ease}.users-refresh-btn:hover{background:#f8fafc;border-color:#cbd5e1}.users-add-btn{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;padding:8px 14px}.users-toast{position:absolute;top:10px;right:15px;z-index:100;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:12px;font-weight:500;box-shadow:0 10px 25px #0000001f;animation:usersToastSlide .25s ease-out}@keyframes usersToastSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.users-toast.success{background:#065f46;color:#ecfdf5;border:1px solid #059669}.users-toast.error{background:#991b1b;color:#fef2f2;border:1px solid #dc2626}.users-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:12px;flex:none}.users-stat-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important;padding:12px 16px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:10px!important;text-align:left!important;cursor:pointer!important;transition:all .15s ease!important;min-height:68px!important;box-shadow:0 1px 3px #00000005!important}.users-stat-card:hover{border-color:#cbd5e1!important;background:#f8fafc!important;transform:translateY(-1px);box-shadow:0 4px 12px #0000000d!important}.users-stat-card.active{border-color:var(--blue)!important;background:#f0f7ff!important;box-shadow:0 0 0 1.5px var(--blue)!important}.users-stat-icon-wrap{width:40px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none}.users-stat-icon-wrap.all{background:#eff6ff;color:#2563eb}.users-stat-icon-wrap.admin{background:#f5f3ff;color:#7c3aed}.users-stat-icon-wrap.writer{background:#f0fdf4;color:#059669}.users-stat-icon-wrap.reader{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.users-stat-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.users-stat-label{font-size:11px;color:#64748b;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-stat-value-row{display:flex;align-items:baseline;gap:8px}.users-stat-number{font-size:20px;font-weight:700;color:#172033;line-height:1;font-variant-numeric:tabular-nums}.users-stat-badge{font-size:11px;color:#64748b;white-space:nowrap}.users-stat-badge.all{color:#059669}.users-stat-badge.admin{color:#7c3aed}.users-stat-badge.writer{color:#0284c7}.users-stat-badge.reader{color:#64748b}.users-filter-reset-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:6px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.users-filter-reset-pill:hover{background:#dbeafe}.users-toolbar-panel{flex:none;display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:9px}.users-search-box{position:relative;display:flex;align-items:center;flex:1;max-width:360px}.users-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.users-search-box input{width:100%;height:35px;padding-left:32px;padding-right:28px;font-size:12px;border:1px solid var(--line);border-radius:7px}.users-search-clear{position:absolute;right:6px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#94a3b8;cursor:pointer;border-radius:50%;padding:0}.users-search-clear:hover{background:#e2e8f0;color:#334155}.users-filter-tabs{display:flex;gap:4px;padding:3px;background:#f1f5f9;border-radius:7px}.users-filter-tabs button{padding:5px 10px;font-size:11.5px;border:0;background:transparent;color:#64748b;border-radius:5px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:500;transition:all .15s ease}.users-filter-tabs button:hover{color:#1e293b}.users-filter-tabs button.active{background:#fff;color:var(--blue);box-shadow:0 1px 3px #00000014;font-weight:600}.users-filter-tabs button b{font-size:10px;background:#e2e8f0;color:#475569;padding:1px 6px;border-radius:999px}.users-filter-tabs button.active b{background:#dbeafe;color:#1d4ed8}.users-status-select{height:35px;padding:0 10px;font-size:11.5px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#334155;cursor:pointer}.users-count-summary{margin-left:auto;font-size:11.5px;color:var(--muted)}.users-count-summary strong{color:#1e293b}.users-table-card{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.users-table-scroll{flex:1;min-height:0;overflow:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{position:sticky;top:0;z-index:2;background:#f8fafc;box-shadow:0 1px 0 var(--line);padding:11px 16px;font-size:11.5px;font-weight:600;color:#55647a;text-align:left}.users-table td{padding:11px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.users-table tbody tr{transition:background-color .1s ease}.users-table tbody tr:hover{background:#f8fbff}.users-table tr.row-blocked{opacity:.72;background:snow}.user-cell{display:flex;align-items:center;gap:11px}.user-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px;letter-spacing:.04em;flex:none;box-shadow:0 2px 5px #0000001a}.user-names{display:flex;flex-direction:column;min-width:0}.user-display-name-row{display:flex;align-items:center;gap:6px}.user-display-name-row strong{font-size:13px;color:#172033}.user-current-pill{font-size:9.5px;font-weight:700;background:#dbeafe;color:#1d4ed8;padding:1.5px 6px;border-radius:999px;letter-spacing:.03em}.user-username{font-size:11.5px;color:#64748b;margin-top:1px}.user-role-cell{display:inline-flex}.user-role-badge{position:relative;display:inline-flex;align-items:center;padding:4px 8px;border-radius:7px;border:1px solid transparent;transition:all .15s ease}.user-role-badge select{border:0;background:transparent;font-size:11.5px;font-weight:600;color:inherit;cursor:pointer;outline:none;padding:0 16px 0 6px;appearance:none}.user-role-badge select:disabled{cursor:not-allowed;padding-right:0}.role-select-chevron{position:absolute;right:6px;pointer-events:none;opacity:.7}.user-role-admin{background:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}.user-role-writer{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.user-role-reader{background:#f8fafc;color:#475569;border-color:#e2e8f0}.user-status-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600}.user-status-badge.active{background:#ecfdf5;color:#047857}.user-status-badge.blocked{background:#fef2f2;color:#b91c1c}.user-status-dot{width:6px;height:6px;border-radius:50%}.user-status-dot.active{background:#10b981;box-shadow:0 0 0 2px #d1fae5}.user-status-dot.blocked{background:#ef4444}.user-datetime-cell{display:flex;flex-direction:column;gap:2px}.user-date{font-size:12px;color:#1e293b;font-weight:500}.user-time{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;color:#94a3b8}.user-created-date{font-size:11.5px;color:#64748b}.user-never-entered{font-size:11.5px;color:#94a3b8;font-style:italic}.user-actions-group{display:flex;align-items:center;justify-content:flex-end;gap:6px}.user-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:6px;border:1px solid var(--line);background:#fff;font-size:11px;font-weight:500;color:#334155;cursor:pointer;transition:all .15s ease}.user-action-btn:hover:not(:disabled){border-color:#cbd5e1;background:#f8fafc}.user-action-btn:disabled{opacity:.45;cursor:not-allowed}.user-action-btn.key:hover{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff}.user-action-btn.block:hover:not(:disabled){border-color:#fca5a5;color:#b91c1c;background:#fef2f2}.user-action-btn.unblock:hover:not(:disabled){border-color:#86efac;color:#15803d;background:#f0fdf4}.user-action-btn.delete{padding:5px 7px;color:#94a3b8}.user-action-btn.delete:hover:not(:disabled){border-color:#fca5a5;color:#b91c1c;background:#fef2f2}.users-empty-row{padding:60px 20px!important;text-align:center}.users-empty-state{display:flex;flex-direction:column;align-items:center;gap:6px;color:#94a3b8}.users-empty-state p{margin:6px 0 0;font-size:14px;font-weight:600;color:#475569}.users-empty-state small{font-size:12px}.users-create-dialog{width:min(580px,calc(100vw - 32px))}.users-reset-dialog{width:min(500px,calc(100vw - 32px))}.users-confirm-dialog{width:min(440px,calc(100vw - 32px))}.users-dialog-fields{display:flex;flex-direction:column;gap:14px;margin:14px 0 10px}.users-dialog-fields label{display:flex;flex-direction:column;gap:5px;font-size:11.5px;font-weight:600;color:#334155}.required-star{color:#e11d48}.field-hint{font-size:10px;font-weight:400;color:#64748b;margin-top:2px}.pass-len-ok{color:#059669;font-weight:500}.input-with-prefix{position:relative;display:flex;align-items:center}.input-with-prefix i{position:absolute;left:10px;font-style:normal;color:#94a3b8;font-weight:600}.input-with-prefix input{width:100%;padding-left:26px}.role-selection-group{display:flex;flex-direction:column;gap:7px;font-size:11.5px;font-weight:600;color:#334155}.role-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.role-option-card{display:flex;flex-direction:column;gap:4px;padding:10px 11px;border-radius:8px;border:1px solid var(--line);background:#fff;cursor:pointer;transition:all .15s ease}.role-option-card:hover{border-color:#93c5fd;background:#f8fbff}.role-option-card.selected{border-color:var(--blue);background:#f0f7ff;box-shadow:0 0 0 1px var(--blue)}.role-option-head{display:flex;align-items:center;gap:6px}.role-option-head strong{font-size:11.5px}.role-check-icon{margin-left:auto;color:var(--blue)}.role-option-card p{margin:0;font-size:9.5px;font-weight:400;color:#64748b;line-height:1.35}.password-label-row{display:flex;justify-content:space-between;align-items:center}.pass-actions-top{display:flex;gap:6px}.generate-pass-btn,.copy-pass-btn{border:0;background:#eff6ff;color:#2563eb;padding:3px 8px;border-radius:5px;font-size:10.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.generate-pass-btn:hover,.copy-pass-btn:hover{background:#dbeafe}.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap input{width:100%;padding-right:34px}.toggle-pass-btn{position:absolute;right:6px;border:0;background:transparent;color:#94a3b8;cursor:pointer;padding:4px}.toggle-pass-btn:hover{color:#334155}.reset-user-target-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;border:1px solid var(--line);background:#f8fafc;margin-bottom:6px}.reset-user-target-card strong{font-size:13px;display:block}.reset-user-target-card small{font-size:11px;color:var(--muted)}.reset-notice-box{display:flex;align-items:flex-start;gap:8px;padding:9px 12px;border-radius:7px;background:#fffbeb;border:1px solid #fef3c7;color:#92400e;font-size:11px;line-height:1.45}.reset-notice-box svg{flex:none;margin-top:1px}.confirm-body{display:flex;gap:14px;padding:16px 0}.confirm-icon-box{width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:none}.confirm-icon-box.warning{background:#fff7ed;color:#ea580c}.confirm-icon-box.success{background:#ecfdf5;color:#059669}.confirm-icon-box.danger{background:#fef2f2;color:#dc2626}.confirm-body p{margin:0 0 6px;font-size:13px;color:#172033;line-height:1.4}.confirm-body small{display:block;font-size:11px;color:var(--muted);line-height:1.45}.audit-badge-user{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.audit-badge-reset{display:inline-flex;padding:3px 8px;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:500}.audit-modal-entity-card{border-radius:10px;overflow:hidden;border:1px solid var(--line)}.audit-modal-entity-card.delete{background:#fef2f2;border-color:#fecaca}.audit-modal-entity-card.delete .audit-entity-card-header{background:#fee2e2;color:#b91c1c}.audit-modal-entity-card.create{background:#f0fdf4;border-color:#bbf7d0}.audit-modal-entity-card.create .audit-entity-card-header{background:#dcfce7;color:#15803d}.audit-modal-entity-card.user{background:#eff6ff;border-color:#bfdbfe}.audit-modal-entity-card.user .audit-entity-card-header{background:#dbeafe;color:#1d4ed8}.audit-entity-card-header{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600}.audit-entity-card-body{padding:16px;display:flex;flex-direction:column;gap:8px}.audit-entity-meta-row{display:flex;align-items:baseline;gap:10px;font-size:14px}.audit-entity-label{color:#64748b;font-size:13px}.audit-entity-name{color:#172033;font-size:15px;font-weight:700}.audit-entity-desc{margin:0;font-size:12px;color:#64748b;line-height:1.4}.grid-quick-search{position:relative;display:inline-flex;align-items:center;gap:5px;height:31px;padding:0 7px;background:#f8fafc;border:1px solid #dce3ed;border-radius:7px;transition:all .15s ease;flex-shrink:0}.grid-quick-search:hover{border-color:#cbd5e1;background:#fff}.grid-quick-search:focus-within{border-color:#7da1f7;background:#fff;box-shadow:0 0 0 2.5px #3b82f61f}.quick-search-icon{color:#8b99ad;flex-shrink:0}.quick-search-input{width:110px;height:100%;border:0!important;outline:0!important;padding:0!important;background:transparent!important;font-size:11.5px;color:#1e293b;box-shadow:none!important;transition:width .2s ease}.grid-quick-search:focus-within .quick-search-input,.quick-search-input:not(:placeholder-shown){width:150px}.quick-search-input::placeholder{color:#94a3b8;font-size:11px}.quick-search-count{display:inline-flex;align-items:center;justify-content:center;height:19px;padding:0 6px;border-radius:999px;background:#eaf1ff;color:#1d4ed8;font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.quick-search-count.zero{background:#fee2e2;color:#b91c1c}.quick-search-clear{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:transparent;color:#8b99ad;cursor:pointer;transition:all .15s ease}.quick-search-clear:hover{background:#e2e8f0;color:#334155}.grid-context-menu{position:fixed;z-index:9999;min-width:230px;max-width:320px;background:#fff;border:1px solid #dbe2ee;border-radius:9px;box-shadow:0 10px 30px #0f172a26,0 2px 6px #0f172a0f;padding:5px 0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-user-select:none;user-select:none;animation:contextMenuFadeIn .12s ease-out}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.grid-context-menu-header{padding:6px 12px;border-bottom:1px solid #edf2f7;display:flex;flex-direction:column;gap:2px}.grid-context-menu-field{font-size:11.5px;font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-context-menu-scope{font-size:10px;color:#64748b;font-variant-numeric:tabular-nums}.grid-context-menu-item{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:9px;padding:6px 12px;border:0;border-radius:0;background:transparent;color:#334155;font-size:12px;text-align:left;cursor:pointer;transition:background .1s ease,color .1s ease}.grid-context-menu-item:hover{background:#f1f5f9;color:#0f172a}.grid-context-menu-item.danger{color:#dc2626}.grid-context-menu-item.danger:hover{background:#fef2f2;color:#b91c1c}.grid-context-menu-icon{flex-shrink:0;color:#64748b}.grid-context-menu-item:hover .grid-context-menu-icon{color:#1e293b}.grid-context-menu-item.danger .grid-context-menu-icon{color:#dc2626}.grid-context-menu-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-context-menu-label strong{color:#0f172a;font-weight:600}.grid-context-menu-kbd{font-size:10px;color:#94a3b8;font-family:inherit;margin-left:auto;padding:2px 5px;border:1px solid #e2e8f0;border-radius:4px;background:#f8fafc;line-height:1}.grid-context-menu-divider{height:1px;background:#e2e8f0;margin:4px 0}.grid-formula-bar{display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--line);min-height:34px;padding:3px 8px;gap:8px;position:relative;z-index:10;transition:min-height .15s ease}.grid-formula-bar.expanded{min-height:108px;align-items:flex-start;padding-top:6px;padding-bottom:6px}.formula-bar-label{display:flex;align-items:center;gap:6px;flex-shrink:0;height:28px;padding:0 8px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;-webkit-user-select:none;user-select:none;font-size:11px}.formula-fx{font-weight:700;font-style:italic;font-family:Georgia,Times New Roman,serif;color:#64748b;font-size:13px;letter-spacing:-.5px}.formula-cell-ref{font-weight:600;color:#334155;white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis}.formula-bar-content{flex:1;min-width:0;display:flex;align-items:center}.grid-formula-bar.expanded .formula-bar-content{align-self:stretch;height:100%}.formula-input{width:100%;height:28px;border:1px solid transparent;border-radius:5px;padding:0 8px;font-size:12px;font-family:inherit;color:#0f172a;background:transparent;outline:none;transition:border-color .15s,background-color .15s}.formula-input:focus{border-color:#93c5fd;background:#fff;box-shadow:0 0 0 2px #3b82f61a}.formula-input:read-only:focus{border-color:#cbd5e1;box-shadow:none}.formula-textarea{width:100%;height:96px;resize:none;border:1px solid #cbd5e1;border-radius:6px;padding:6px 8px;font-size:12px;line-height:1.45;font-family:inherit;color:#0f172a;background:#fff;outline:none;overflow-y:auto}.formula-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.formula-bar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.grid-formula-bar.expanded .formula-bar-actions{align-self:flex-start;padding-top:2px}.formula-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:#64748b;cursor:pointer;transition:all .15s}.formula-action-btn:hover:not(:disabled){background:#f1f5f9;color:#0f172a;border-color:#e2e8f0}.formula-action-btn.active{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.formula-action-btn:disabled{opacity:.35;cursor:not-allowed}.formula-btn-save{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 9px;font-size:11px;font-weight:600;border:1px solid #16a34a;border-radius:5px;background:#16a34a;color:#fff;cursor:pointer;transition:background .15s}.formula-btn-save:hover{background:#15803d}.formula-btn-cancel{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid #e2e8f0;border-radius:5px;background:#fff;color:#64748b;cursor:pointer;transition:all .15s}.formula-btn-cancel:hover{background:#f1f5f9;color:#ef4444}.quick-look-backdrop{position:fixed;inset:0;z-index:2000;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:16px;animation:qlFadeIn .15s ease-out}@keyframes qlFadeIn{0%{opacity:0}to{opacity:1}}.quick-look-dialog{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 45px #0f172a38;width:100%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:qlSlideUp .15s ease-out}@keyframes qlSlideUp{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.quick-look-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #f1f5f9;background:#f8fafc}.quick-look-title-group{display:flex;align-items:center;gap:12px}.quick-look-icon-box{width:36px;height:36px;border-radius:8px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.quick-look-title{margin:0;font-size:15px;font-weight:700;color:#0f172a}.quick-look-subtitle{font-size:12px;color:#64748b;display:flex;align-items:center;gap:6px;margin-top:2px}.quick-look-dot{color:#cbd5e1}.quick-look-header-actions{display:flex;align-items:center;gap:10px}.quick-look-nav-group{display:inline-flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.quick-look-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;background:transparent;color:#475569;cursor:pointer;transition:background .12s}.quick-look-nav-btn:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.quick-look-nav-btn:disabled{opacity:.3;cursor:not-allowed}.quick-look-nav-info{font-size:11px;font-weight:600;color:#64748b;padding:0 6px;border-left:1px solid #f1f5f9;border-right:1px solid #f1f5f9}.quick-look-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer;transition:all .12s}.quick-look-close-btn:hover{background:#fee2e2;color:#ef4444}.quick-look-body{padding:18px;flex:1;min-height:180px;max-height:calc(85vh - 140px);overflow-y:auto;display:flex;flex-direction:column}.quick-look-content-view{flex:1}.quick-look-text-content{font-size:13.5px;line-height:1.65;color:#1e293b;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;min-height:120px;-webkit-user-select:text;user-select:text}.quick-look-empty{color:#94a3b8;font-style:italic;font-size:13px;padding:24px;text-align:center}.quick-look-textarea{width:100%;flex:1;min-height:180px;resize:vertical;border:1px solid #3b82f6;border-radius:8px;padding:14px 16px;font-size:13.5px;line-height:1.6;font-family:inherit;color:#0f172a;outline:none;box-shadow:0 0 0 3px #3b82f626}.quick-look-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid #f1f5f9;background:#f8fafc;gap:12px;flex-wrap:wrap}.quick-look-stats{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.quick-look-badge-editable{display:inline-flex;align-items:center;padding:2px 7px;border-radius:4px;background:#ecfdf5;color:#059669;font-size:11px;font-weight:600}.quick-look-footer-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.quick-look-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:12px;font-weight:500;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#334155;cursor:pointer;transition:all .15s}.quick-look-btn:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.quick-look-btn.copied{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.quick-look-btn.btn-primary{background:#2563eb;color:#fff;border-color:#2563eb}.quick-look-btn.btn-primary:hover{background:#1d4ed8}.quick-look-btn.btn-success{background:#16a34a;color:#fff;border-color:#16a34a}.quick-look-btn.btn-success:hover{background:#15803d}.quick-look-btn:disabled{opacity:.4;cursor:not-allowed}.cell-text-container{display:block;width:100%;overflow:hidden;text-overflow:clip;white-space:pre-wrap;word-break:break-word}.ag-custom-text-editor{width:100%;height:100%;min-height:32px;box-sizing:border-box;border:2px solid #2563eb;outline:none;padding:4px 6px;font-family:inherit;font-size:13px;line-height:1.35;resize:none;background:#fff;color:#0f172a;white-space:pre-wrap;word-break:break-word;box-shadow:0 0 0 2px #2563eb40;border-radius:3px;z-index:10}.rich-text-editor-footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px;gap:12px}.rich-text-hint{font-size:11px;color:#64748b;-webkit-user-select:none;user-select:none}.view-reset-section{border-top:1px solid var(--line);padding-top:10px;margin-top:6px}.view-reset-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;color:#475569;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.view-reset-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca}
