@chenchaolong/plugin-trade-compliance-workbench 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- :root{--tcw-primary: #1769c2;--tcw-primary-hover: #1259a6;--tcw-primary-soft: #eaf3ff;--tcw-canvas: #f5f7fa;--tcw-surface: #ffffff;--tcw-text: #172033;--tcw-muted: #69758a;--tcw-border: #dce3ec;--tcw-border-soft: #e9edf3;--tcw-danger: #c73737;--tcw-danger-soft: #fff1f1;--tcw-warning: #a86705;--tcw-success: #247c4c;--tcw-sidebar-width: 264px;--tcw-control-height: 36px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--tcw-text);background:var(--tcw-canvas);font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-size:14px;letter-spacing:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}.tcw-app-frame{display:grid;grid-template-columns:var(--tcw-sidebar-width) minmax(0,1fr);min-height:760px;background:var(--tcw-canvas)}.tcw-sidebar{position:sticky;top:0;align-self:start;min-height:760px;height:100vh;overflow-y:auto;border-right:1px solid var(--tcw-border);background:var(--tcw-surface)}.tcw-brand{display:flex;align-items:center;gap:12px;min-height:86px;padding:20px 24px;border-bottom:1px solid var(--tcw-border-soft)}.tcw-brand strong{font-size:18px;white-space:nowrap}.tcw-brand-mark{display:grid;flex:0 0 38px;width:38px;height:42px;place-items:center;color:#fff;background:var(--tcw-primary);font-size:17px;font-weight:700;clip-path:polygon(50% 0,100% 15%,92% 72%,50% 100%,8% 72%,0 15%)}.tcw-navigation{display:grid;gap:3px;padding:16px 10px}.tcw-nav-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;border-left:3px solid transparent}.tcw-nav-row:not(:has(.tcw-nav-toggle)){grid-template-columns:1fr}.tcw-nav-item{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:45px;padding:0 11px;border:0;color:#4d5b70;background:transparent;text-align:left}.tcw-nav-item i:first-child{color:#7b889b;font-size:17px;text-align:center}.tcw-nav-row:hover{background:#f5f8fc}.tcw-nav-row.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-nav-row.is-active .tcw-nav-item,.tcw-nav-row.is-active i{color:var(--tcw-primary)}.tcw-nav-toggle{display:grid;width:34px;min-height:45px;place-items:center;padding:0;border:0;color:#7b889b;background:transparent}.tcw-subnavigation{display:grid;gap:2px;padding:3px 10px 6px 51px}.tcw-subnavigation button{position:relative;min-height:30px;padding:6px 8px 6px 16px;border:0;color:var(--tcw-muted);background:transparent;font-size:12px;text-align:left}.tcw-subnavigation button:before{position:absolute;left:0;top:13px;width:5px;height:5px;border-radius:50%;background:#c3ccd8;content:""}.tcw-subnavigation button.is-current{color:var(--tcw-primary);font-weight:650}.tcw-subnavigation button.is-current:before{background:var(--tcw-primary)}.tcw-subnavigation button:disabled{cursor:not-allowed;opacity:.45}.tcw-main{min-width:0}.tcw-topbar{display:flex;align-items:center;justify-content:space-between;min-height:68px;margin:0 28px;border-bottom:1px solid var(--tcw-border)}.tcw-breadcrumbs{display:flex;align-items:center;gap:6px;min-width:0;color:var(--tcw-muted)}.tcw-breadcrumbs button{padding:3px 0;border:0;color:var(--tcw-muted);background:transparent}.tcw-breadcrumbs button:hover{color:var(--tcw-primary)}.tcw-breadcrumbs span[aria-current=page]{color:#49566a}.tcw-icon-button{display:inline-grid;width:34px;height:34px;place-items:center;border:1px solid transparent;border-radius:4px;color:#5d6b7f;background:transparent;font-size:20px}.tcw-icon-button:hover{border-color:var(--tcw-border);background:var(--tcw-surface)}.tcw-content{padding:28px}.tcw-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.tcw-page-heading h1{margin:0;font-size:28px;line-height:1.3}.tcw-page-heading p{margin:8px 0 0;color:var(--tcw-muted);line-height:1.6}.tcw-page-commands{display:flex;flex-wrap:nowrap;gap:10px;justify-content:flex-end;overflow-x:auto}.tcw-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tcw-control-height);padding:0 15px;border:1px solid var(--tcw-border);border-radius:4px;white-space:nowrap}.tcw-button--primary{border-color:var(--tcw-primary);color:#fff;background:var(--tcw-primary)}.tcw-button--primary:hover{border-color:var(--tcw-primary-hover);background:var(--tcw-primary-hover)}.tcw-button--secondary{color:#455266;background:var(--tcw-surface)}.tcw-button--secondary:hover{border-color:#aeb9c7;background:#f8fafc}.tcw-button--danger{border-color:var(--tcw-danger);color:#fff;background:var(--tcw-danger)}.tcw-filter-panel{margin-bottom:14px;padding:18px 20px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:14px 16px;align-items:end}.tcw-filter-control{display:grid;min-width:0;gap:7px}.tcw-filter-control>span{color:#344054;font-size:13px;font-weight:650}.tcw-filter-control input,.tcw-filter-control select,.tcw-form-field input,.tcw-form-field select,.tcw-form-field textarea{width:100%;height:var(--tcw-control-height);min-width:0;padding:0 11px;border:1px solid #cbd4e0;border-radius:4px;outline:none;color:var(--tcw-text);background:#fff}.tcw-filter-control input:focus,.tcw-filter-control select:focus,.tcw-form-field input:focus,.tcw-form-field select:focus,.tcw-form-field textarea:focus{border-color:var(--tcw-primary);box-shadow:0 0 0 2px #1769c21a}.tcw-filter-control--range>div{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);align-items:center;gap:6px}.tcw-filter-control--range em{color:var(--tcw-muted);font-style:normal}.tcw-filter-actions{display:flex;gap:8px}.tcw-notice{display:flex;align-items:flex-start;gap:9px;min-height:40px;margin-bottom:14px;padding:10px 13px;border:1px solid;border-radius:4px;line-height:1.5}.tcw-notice i{margin-top:1px;font-size:17px}.tcw-notice--info{border-color:#bcd6f2;color:#285c91;background:#f0f7ff}.tcw-notice--risk{border-color:#efbaba;color:#9e3030;background:var(--tcw-danger-soft)}.tcw-context-bar{display:flex;align-items:center;gap:18px;min-height:56px;margin-bottom:14px;padding:10px 16px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-context-bar span{min-width:0;overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap}.tcw-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:14px}.tcw-metric-grid article{display:grid;gap:5px;min-height:98px;padding:15px 17px;border:1px solid var(--tcw-border);border-left:3px solid var(--tcw-primary);border-radius:5px;background:var(--tcw-surface)}.tcw-metric-grid article span,.tcw-metric-grid article small{color:var(--tcw-muted)}.tcw-metric-grid article strong{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.tcw-sales-top{margin-bottom:14px;padding:14px 16px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-sales-top ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:10px 0 0;padding:0;list-style:none}.tcw-sales-top li{display:grid;min-width:0;gap:4px;padding-left:10px;border-left:2px solid var(--tcw-primary)}.tcw-sales-top li span{overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap}.tcw-sales-top li b{font-size:13px}.tcw-sales-top small{display:block;margin-top:9px;color:var(--tcw-muted)}.tcw-preflight-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.tcw-preflight-summary>div{padding:10px 12px;border:1px solid var(--tcw-border-soft);background:#f8fafc}.tcw-preflight-summary dt{color:var(--tcw-muted);font-size:12px}.tcw-preflight-summary dd{margin:5px 0 0;font-weight:700}.tcw-tag-list{display:flex;gap:5px}.tcw-tag{display:inline-flex;min-height:23px;align-items:center;padding:2px 7px;border:1px solid #b8c7d9;border-radius:3px;color:#40536b;background:#f5f8fb;font-size:12px;white-space:nowrap}.tcw-tag--warning{border-color:#e7c786;color:#94610d;background:#fff8e8}.tcw-tag--danger{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-excel-editor{position:fixed;inset:0;z-index:1200;display:grid;grid-template-rows:62px auto minmax(0,1fr);background:#fff}.tcw-excel-editor>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;border-bottom:1px solid var(--tcw-border)}.tcw-excel-editor>header>div{display:flex;gap:8px}.tcw-editor-error{padding:10px 16px;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-excel-editor-canvas{min-width:0;min-height:0}.tcw-grid-section{border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface);overflow:hidden}.tcw-table-scroll{width:100%;overflow-x:auto}.tcw-data-table{width:100%;min-width:920px;border-spacing:0;border-collapse:separate;font-size:13px}.tcw-data-table th,.tcw-data-table td{height:48px;padding:9px 13px;border-bottom:1px solid var(--tcw-border-soft);text-align:left;vertical-align:middle;white-space:nowrap}.tcw-data-table th{color:#435066;background:#f6f8fb;font-weight:650}.tcw-data-table tbody tr:hover td{background:#fafcff}.tcw-data-table tbody tr:last-child td{border-bottom:0}.tcw-data-table .action-column{position:sticky;right:0;z-index:2;background:var(--tcw-surface);box-shadow:-5px 0 9px #2030470f}.tcw-data-table th.action-column{z-index:3;background:#f6f8fb}.tcw-row-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:max-content;white-space:nowrap}.tcw-row-actions button{padding:2px 3px;border:0;color:var(--tcw-primary);background:transparent;white-space:nowrap}.tcw-row-actions button.is-danger{color:var(--tcw-danger)}.tcw-table-link{display:block;max-width:100%;overflow:hidden;padding:0;border:0;color:var(--tcw-primary);background:transparent;text-align:left;text-overflow:ellipsis;white-space:nowrap}.tcw-table-link:hover{text-decoration:underline}.tcw-ellipsis{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcw-align-center{text-align:center!important}.tcw-align-right{text-align:right!important}.tcw-empty-row td{height:180px;color:var(--tcw-muted);text-align:center}.tcw-pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:10px 14px;border-top:1px solid var(--tcw-border-soft);color:var(--tcw-muted)}.tcw-pagination>div{display:flex;align-items:center;gap:10px}.tcw-pagination button{min-height:30px;padding:0 10px;border:1px solid var(--tcw-border);border-radius:3px;color:#46546a;background:#fff}.tcw-pagination strong{color:#344054;font-weight:600}.tcw-modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#121c2b7a}.tcw-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(620px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:hidden;border-radius:6px;background:var(--tcw-surface);box-shadow:0 24px 70px #0f1c3040}.tcw-modal--wide{width:min(1120px,calc(100vw - 40px))}.tcw-modal--full{width:calc(100vw - 24px);height:calc(100vh - 24px);max-height:none}.tcw-modal>header,.tcw-modal>footer{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:12px 18px;border-bottom:1px solid var(--tcw-border)}.tcw-modal>footer{justify-content:flex-end;gap:9px;border-top:1px solid var(--tcw-border);border-bottom:0}.tcw-modal h2{margin:0;font-size:18px}.tcw-modal-body{min-height:0;padding:18px;overflow:auto}.tcw-field-grid{display:grid;gap:15px 16px}.tcw-field-grid--1{grid-template-columns:1fr}.tcw-field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tcw-field-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tcw-form-field{display:grid;gap:7px;min-width:0}.tcw-form-field>span{color:#344054;font-size:13px;font-weight:650}.tcw-form-field b{margin-right:3px;color:var(--tcw-danger)}.tcw-form-field textarea{height:auto;min-height:96px;padding:9px 11px;resize:vertical}.tcw-form-field small{color:var(--tcw-muted)}.tcw-form-field--full{grid-column:1 / -1}.tcw-review-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;min-height:520px}.tcw-review-split>section{min-width:0;padding:0 20px}.tcw-review-split>section:first-child{padding-left:0;border-right:1px solid var(--tcw-border)}.tcw-review-split>section:last-child{padding-right:0}.tcw-review-split h3{margin:0 0 14px;font-size:15px}.tcw-upload-zone{display:grid;min-height:220px;place-items:center;align-content:center;gap:9px;padding:30px;border:1px dashed #98abc1;border-radius:4px;color:#43546b;background:#f7faff;text-align:center}.tcw-upload-zone>i{color:var(--tcw-primary);font-size:38px}.tcw-upload-zone>span{color:var(--tcw-muted);font-size:12px}.tcw-upload-zone input{position:absolute;width:1px;height:1px;opacity:0}.tcw-upload-zone.is-disabled{opacity:.6;cursor:not-allowed}.tcw-confirm-message{display:flex;align-items:flex-start;gap:13px;padding:8px 2px;line-height:1.7}.tcw-confirm-message>i{color:var(--tcw-primary);font-size:27px}.tcw-confirm-message p{margin:2px 0 0}.tcw-confirm-message.is-danger>i{color:var(--tcw-danger)}.tcw-loading-blocker{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;gap:12px;background:#ffffffc7}.tcw-spinner{width:24px;height:24px;border:3px solid #cbd8e7;border-top-color:var(--tcw-primary);border-radius:50%;animation:tcw-spin .75s linear infinite}@keyframes tcw-spin{to{transform:rotate(360deg)}}.tcw-toast{position:fixed;z-index:1300;top:22px;right:24px;display:flex;align-items:center;gap:9px;max-width:min(420px,calc(100vw - 32px));padding:11px 14px;border:1px solid;border-radius:4px;background:#fff;box-shadow:0 8px 28px #14233729}.tcw-toast--success{border-color:#add6bf;color:var(--tcw-success);background:#f0faf4}.tcw-toast--info{border-color:#bcd6f2;color:#285c91;background:#f0f7ff}.tcw-toast--warning{border-color:#e7c786;color:var(--tcw-warning);background:#fff8e8}.tcw-toast--error{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-toast button{display:grid;place-items:center;padding:0;border:0;color:inherit;background:transparent}.tcw-page-placeholder{min-height:320px}.tcw-placeholder-body{min-height:240px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}@media(max-width:1180px){:root{--tcw-sidebar-width: 220px}.tcw-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.tcw-filter-actions{align-self:end}}@media(max-width:760px){.tcw-metric-grid,.tcw-sales-top ol{grid-template-columns:1fr 1fr}.tcw-context-bar{align-items:flex-start;flex-direction:column;gap:6px}.tcw-app-frame{grid-template-columns:72px minmax(0,1fr)}.tcw-sidebar{overflow-x:hidden}.tcw-brand{justify-content:center;padding:16px 8px}.tcw-brand strong,.tcw-nav-item span,.tcw-nav-toggle,.tcw-subnavigation{display:none}.tcw-navigation{padding-inline:7px}.tcw-nav-row{grid-template-columns:1fr}.tcw-nav-item{grid-template-columns:1fr;justify-items:center;padding:0}.tcw-topbar{margin-inline:14px}.tcw-content{padding:20px 14px}.tcw-page-heading{flex-direction:column}.tcw-page-commands{width:100%;justify-content:flex-start}.tcw-filter-grid,.tcw-field-grid--2,.tcw-field-grid--3,.tcw-review-split{grid-template-columns:1fr}.tcw-review-split>section{padding:18px 0}.tcw-review-split>section:first-child{padding-top:0;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-pagination{align-items:flex-start;flex-direction:column}.tcw-modal-backdrop{padding:6px}.tcw-modal,.tcw-modal--wide{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}}@media(max-width:420px){.tcw-filter-control--range>div{grid-template-columns:1fr}.tcw-filter-control--range em{text-align:center}.tcw-pagination>div{flex-wrap:wrap;max-width:100%}}.tcw-home-page{display:grid;gap:24px;min-width:0}.tcw-home-section{min-width:0;padding:22px;border:1px solid var(--tcw-border-soft);border-radius:6px;background:var(--tcw-surface)}.tcw-home-section-title{display:flex;align-items:center;gap:9px;margin:0 0 20px;font-size:20px;line-height:1.35}.tcw-home-section-title>i{color:var(--tcw-danger);font-size:25px;font-weight:400}.tcw-home-maintained-notice{margin:-3px 0 18px;padding:12px 15px;border-left:3px solid var(--tcw-danger);color:#6f3030;background:var(--tcw-danger-soft);line-height:1.65}.tcw-home-maintained-notice h2,.tcw-home-maintained-notice h3,.tcw-home-maintained-notice h4,.tcw-home-maintained-notice p,.tcw-home-maintained-notice ul,.tcw-home-maintained-notice ol{margin:0 0 7px}.tcw-home-maintained-notice>:last-child{margin-bottom:0}.tcw-home-risk-matrix{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #f0cdcd;background:snow}.tcw-home-risk-item{min-width:0;min-height:176px;padding:20px 22px;border-right:1px solid #f2dddd;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:nth-child(5n){border-right:0}.tcw-home-risk-item:nth-last-child(-n+5){border-bottom:0}.tcw-home-risk-heading{display:flex;align-items:center;gap:11px;color:var(--tcw-danger)}.tcw-home-risk-heading>i{flex:0 0 auto;font-size:31px}.tcw-home-risk-heading h3{min-width:0;margin:0;overflow-wrap:anywhere;font-size:15px;line-height:1.45}.tcw-home-risk-item>p{margin:17px 0 0;color:#3f4755;font-size:13px;line-height:1.8;overflow-wrap:anywhere}.tcw-home-workflow-heading{display:flex;align-items:baseline;gap:22px;margin-bottom:20px}.tcw-home-workflow-heading .tcw-home-section-title{margin:0}.tcw-home-workflow-heading>p{margin:0;color:var(--tcw-muted)}.tcw-home-workflow-scroll{min-width:0;overflow-x:auto;padding:2px 1px 8px}.tcw-home-workflow{display:flex;align-items:center;width:max-content;min-width:100%}.tcw-home-workflow-step{--tcw-home-tone: var(--tcw-primary);position:relative;display:grid;flex:0 0 168px;align-content:start;justify-items:center;min-width:168px;min-height:224px;padding:31px 13px 16px;border:1px solid var(--tcw-border);border-radius:5px;color:var(--tcw-home-tone);text-align:center}.tcw-home-workflow-step>i{margin:5px 0 15px;font-size:42px}.tcw-home-workflow-step h3{display:grid;justify-items:center;margin:0;font-size:14px;line-height:1.55}.tcw-home-step-title-line{display:block;max-width:100%;white-space:nowrap}.tcw-home-workflow-step p{margin:13px 0 0;color:#4b5565;font-size:12px;line-height:1.65;overflow-wrap:anywhere}.tcw-home-step-number{position:absolute;top:-13px;left:50%;display:grid;width:26px;height:26px;place-items:center;border:2px solid #fff;border-radius:50%;color:#fff;background:var(--tcw-home-tone);font-size:12px;transform:translate(-50%)}.tcw-home-workflow-step--green{--tcw-home-tone: #198754}.tcw-home-workflow-step--violet{--tcw-home-tone: #7150aa}.tcw-home-workflow-step--orange{--tcw-home-tone: #d86513}.tcw-home-workflow-connector{flex:0 0 28px;color:#536071;font-size:20px;text-align:center}@media(max-width:1280px){.tcw-home-risk-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.tcw-home-risk-item,.tcw-home-risk-item:nth-child(5n){border-right:1px solid #f2dddd;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:nth-child(2n){border-right:0}.tcw-home-risk-item:nth-last-child(-n+2){border-bottom:0}}@media(max-width:620px){.tcw-home-page{gap:16px}.tcw-home-section{padding:17px 14px}.tcw-home-risk-matrix{grid-template-columns:1fr}.tcw-home-risk-item,.tcw-home-risk-item:nth-child(2n),.tcw-home-risk-item:nth-child(5n),.tcw-home-risk-item:nth-last-child(-n+2){min-height:0;border-right:0;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:last-child{border-bottom:0}.tcw-home-workflow-heading{display:block}.tcw-home-workflow-heading>p{margin-top:7px}}.tcw-catalog-import-failure{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #efbaba;border-left:4px solid var(--tcw-danger);border-radius:5px;color:#8f2929;background:var(--tcw-danger-soft)}.tcw-catalog-import-failure p{margin:5px 0 0;line-height:1.6}.tcw-catalog-issue-toolbar{display:inline-flex;margin-bottom:14px;border:1px solid var(--tcw-border);border-radius:4px;overflow:hidden}.tcw-catalog-issue-toolbar button{min-width:88px;min-height:34px;padding:0 14px;border:0;border-right:1px solid var(--tcw-border);color:#455266;background:#fff}.tcw-catalog-issue-toolbar button:last-child{border-right:0}.tcw-catalog-issue-toolbar button.is-active{color:#fff;background:var(--tcw-primary)}.tcw-catalog-issue-toolbar button:disabled{cursor:not-allowed;opacity:.55}.tcw-catalog-issue-status{margin:0;padding:24px;color:var(--tcw-muted);text-align:center}.tcw-catalog-issue-error{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #efbaba;border-radius:4px;color:var(--tcw-danger);background:var(--tcw-danger-soft)}@media(max-width:620px){.tcw-catalog-import-failure{align-items:stretch;flex-direction:column}}.tcw-procurement-page{display:grid;gap:14px;min-width:0}.tcw-procurement-toolbar{display:flex;justify-content:flex-end;min-height:38px}.tcw-procurement-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.tcw-procurement-feedback{padding:11px 14px;border:1px solid #bcd6f2;border-radius:4px;color:#285c91;background:#f0f7ff}.tcw-procurement-link{padding:2px 0;border:0;color:var(--tcw-primary);background:transparent}.tcw-procurement-status{display:inline-flex;min-height:25px;align-items:center;padding:2px 8px;border-radius:3px;font-size:12px;font-weight:650}.tcw-procurement-status--success{color:#167849;background:#e8f7ef}.tcw-procurement-status--warning{color:#9b6300;background:#fff3d6}.tcw-procurement-status--danger{color:#b52b2b;background:#fdeaea}.tcw-procurement-status--muted{color:#526174;background:#edf1f5}.tcw-procurement-context{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:0;align-items:stretch;overflow:hidden;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-procurement-context>div:not(.tcw-procurement-context-actions){display:grid;align-content:center;gap:6px;min-height:78px;padding:14px 18px;border-right:1px solid var(--tcw-border-soft)}.tcw-procurement-context span{color:var(--tcw-muted);font-size:12px}.tcw-procurement-context strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.tcw-procurement-context-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:13px 16px}.tcw-procurement-metrics{display:grid;grid-template-columns:repeat(4,minmax(130px,.8fr)) minmax(260px,1.5fr);gap:12px}.tcw-procurement-metrics>div{display:grid;align-content:center;min-height:122px;padding:18px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-procurement-metrics>div>span{color:var(--tcw-muted);font-size:13px}.tcw-procurement-metrics>div>strong{margin-top:10px;font-size:24px;font-weight:700}.tcw-procurement-top ol{display:grid;gap:5px;margin:9px 0 0;padding:0;list-style:none;counter-reset:procurement-top}.tcw-procurement-top li{display:flex;justify-content:space-between;gap:12px;min-width:0;counter-increment:procurement-top}.tcw-procurement-top li:before{display:inline-grid;flex:0 0 18px;width:18px;height:18px;place-items:center;border-radius:50%;color:#fff;background:var(--tcw-primary);font-size:10px;content:counter(procurement-top)}.tcw-procurement-top li span{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--tcw-text);text-overflow:ellipsis;white-space:nowrap}.tcw-procurement-top li strong{flex:0 0 auto;font-size:12px}.tcw-procurement-top small{display:block;margin-top:16px;color:var(--tcw-muted)}.tcw-procurement-audit-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:18px;padding:13px 15px;border:1px solid var(--tcw-border-soft);background:#f8fafc}.tcw-procurement-source-label{display:inline-flex;margin-bottom:15px;padding:5px 9px;border:1px solid var(--tcw-border);border-radius:3px;color:var(--tcw-muted);background:#f8fafc;font-size:12px}.tcw-procurement-inline-field{display:grid;grid-template-columns:minmax(0,1fr) auto}.tcw-procurement-inline-field input{border-radius:4px 0 0 4px}.tcw-procurement-inline-field button{border-left:0;border-radius:0 4px 4px 0}.tcw-procurement-review-editor{display:grid;gap:20px}.tcw-procurement-review-section{min-width:0;padding-bottom:20px;border-bottom:1px solid var(--tcw-border)}.tcw-procurement-review-section:last-child{padding-bottom:0;border-bottom:0}.tcw-procurement-review-section>h3{margin:0 0 14px;font-size:16px}.tcw-procurement-review-lines{display:grid;gap:14px}.tcw-procurement-review-line{padding:15px;border:1px solid var(--tcw-border);border-radius:5px;background:#fbfcfe}.tcw-procurement-review-line h4{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:14px}.tcw-procurement-source{display:grid;grid-template-rows:auto minmax(420px,1fr);gap:12px;height:100%}.tcw-procurement-source iframe,.tcw-procurement-source pre{width:100%;min-height:520px;margin:0;border:1px solid var(--tcw-border);background:#f7f8fa}.tcw-procurement-source iframe{height:100%}.tcw-procurement-source pre{padding:18px;overflow:auto;white-space:pre-wrap}.tcw-procurement-checkbox{display:flex;align-items:center;gap:8px;min-height:var(--tcw-control-height)}.tcw-procurement-checkbox input{width:16px;height:16px}.tcw-procurement-delete-summary{display:grid;gap:8px;width:100%}.tcw-procurement-delete-summary>strong{font-size:15px}.tcw-procurement-delete-summary>span{color:#4d5b70}.tcw-procurement-delete-summary>b{margin-top:5px;padding:10px;color:#9e3030;background:var(--tcw-danger-soft);line-height:1.6}@media(max-width:1320px){.tcw-procurement-context{grid-template-columns:repeat(2,minmax(160px,1fr))}.tcw-procurement-context-actions{grid-column:1 / -1;border-top:1px solid var(--tcw-border-soft)}.tcw-procurement-metrics{grid-template-columns:repeat(2,minmax(160px,1fr))}.tcw-procurement-top{grid-column:1 / -1}}@media(max-width:760px){.tcw-procurement-toolbar{justify-content:flex-start}.tcw-procurement-context,.tcw-procurement-metrics{grid-template-columns:1fr}.tcw-procurement-context-actions,.tcw-procurement-top{grid-column:auto}.tcw-procurement-context-actions{align-items:stretch;flex-direction:column}.tcw-procurement-context>div:not(.tcw-procurement-context-actions){border-right:0;border-bottom:1px solid var(--tcw-border-soft)}.tcw-procurement-inline-field{grid-template-columns:1fr;gap:7px}.tcw-procurement-inline-field input,.tcw-procurement-inline-field button{border:1px solid var(--tcw-border);border-radius:4px}}.tcw-contract-page{min-width:0}.tcw-contract-page .tcw-modal--wide{width:min(1040px,calc(100vw - 64px));max-height:min(820px,calc(100vh - 64px))}.tcw-contract-toolbar{display:flex;justify-content:flex-end;margin-bottom:14px}.tcw-contract-customer-code{display:block;margin-top:3px;color:var(--tcw-muted);font-weight:400}.tcw-contract-import-status,.tcw-contract-page-error,.tcw-contract-dialog-error{margin:0 0 14px;padding:12px 14px;border:1px solid #bcd6f2;border-radius:4px;color:#285c91;background:#f0f7ff}.tcw-contract-page-error,.tcw-contract-dialog-error{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-contract-selected-file{margin:14px 0 0}.tcw-contract-review-header{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.8fr) auto auto;align-items:end;gap:12px;padding:12px 14px;border:1px solid var(--tcw-border);border-radius:5px;background:#f8fafc}.tcw-contract-summary-customer{display:grid;align-self:stretch;align-content:center;min-width:0;padding-right:12px;border-right:1px solid var(--tcw-border-soft)}.tcw-contract-summary-customer span,.tcw-contract-summary-customer small{color:var(--tcw-muted);font-size:12px}.tcw-contract-summary-customer strong{margin:5px 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcw-contract-customer-master{margin-top:14px;border:1px solid var(--tcw-border);border-radius:5px}.tcw-contract-customer-master summary{padding:13px 15px;cursor:pointer;font-weight:650}.tcw-contract-customer-master>.tcw-field-grid{padding:2px 15px 16px}.tcw-contract-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;margin-top:10px}.tcw-contract-review-layout{display:grid;grid-template-columns:156px minmax(320px,.95fr) minmax(360px,1.05fr);min-height:480px;border:1px solid var(--tcw-border);border-radius:5px;overflow:hidden}.tcw-contract-clause-tabs{padding:10px 0;border-right:1px solid var(--tcw-border);background:#f8fafc}.tcw-contract-clause-tabs button{display:grid;width:100%;min-height:58px;align-content:center;gap:3px;padding:8px 16px;border:0;border-left:3px solid transparent;color:#3e4b60;background:transparent;text-align:left}.tcw-contract-clause-tabs button.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-contract-clause-tabs small{color:var(--tcw-muted);font-size:11px;font-weight:400}.tcw-contract-clause-editor,.tcw-contract-source-preview{min-width:0;padding:18px}.tcw-contract-clause-editor{display:grid;align-content:start;gap:15px;border-right:1px solid var(--tcw-border)}.tcw-contract-clause-editor>h3,.tcw-contract-source-preview>h3{margin:0 0 2px;font-size:15px}.tcw-contract-clause-status{max-width:148px}.tcw-contract-analysis{padding:14px;border:1px solid var(--tcw-border);border-left:3px solid var(--tcw-primary);background:#f8fafc}.tcw-contract-analysis h4{margin:0 0 12px;font-size:14px}.tcw-contract-analysis dl{margin:12px 0 0}.tcw-contract-analysis dt{margin-top:10px;color:var(--tcw-muted);font-size:12px;font-weight:650}.tcw-contract-analysis dd{margin:4px 0 0;line-height:1.65;white-space:normal}.tcw-contract-source-preview{display:grid;grid-template-rows:auto minmax(0,1fr);background:#f3f5f8}.tcw-contract-source-preview iframe{width:100%;min-height:430px;border:1px solid var(--tcw-border);background:#fff}.tcw-contract-source-preview pre{min-height:430px;margin:0;padding:18px;overflow:auto;border:1px solid var(--tcw-border);background:#fff;font:inherit;line-height:1.7;white-space:pre-wrap}.tcw-contract-preview-unavailable{display:grid;min-height:430px;place-items:center;align-content:center;padding:30px;border:1px dashed #aab6c5;color:var(--tcw-muted);background:#fff;text-align:center}.tcw-contract-preview-unavailable i{font-size:38px}.tcw-contract-preview-unavailable p{margin:12px 0 5px;color:#46546a}.tcw-contract-risk,.tcw-contract-sanction{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid;border-radius:3px;font-size:12px;white-space:nowrap}.tcw-contract-risk--high,.tcw-contract-sanction--hit{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-contract-risk--medium,.tcw-contract-sanction--unchecked{border-color:#e7c786;color:#9b650e;background:#fff8e8}.tcw-contract-risk--low,.tcw-contract-sanction--clear{border-color:#add6bf;color:var(--tcw-success);background:#f0faf4}@media(max-width:1180px){.tcw-contract-review-header{grid-template-columns:minmax(150px,.6fr) minmax(0,1.4fr) auto auto}.tcw-contract-review-layout{grid-template-columns:150px minmax(340px,1fr)}.tcw-contract-source-preview{grid-column:1 / -1;border-top:1px solid var(--tcw-border)}}@media(max-width:760px){.tcw-contract-page .tcw-modal--wide{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}.tcw-contract-review-header{grid-template-columns:1fr;align-items:start}.tcw-contract-review-layout{grid-template-columns:1fr}.tcw-contract-clause-tabs{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-contract-clause-tabs button{flex:0 0 128px;border-bottom:3px solid transparent;border-left:0}.tcw-contract-clause-tabs button.is-active{border-bottom-color:var(--tcw-primary);border-left:0}.tcw-contract-clause-editor{border-right:0}.tcw-contract-source-preview{grid-column:auto}}.tcw-analytics-page{display:grid;min-width:0;gap:14px}.tcw-page-tabs{display:flex;min-height:42px;gap:24px;border-bottom:1px solid var(--tcw-border)}.tcw-page-tabs button{position:relative;padding:0 3px 10px;border:0;color:var(--tcw-muted);background:transparent;font-size:14px;font-weight:650}.tcw-page-tabs button[aria-selected=true]{color:var(--tcw-primary)}.tcw-page-tabs button[aria-selected=true]:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--tcw-primary);content:""}.tcw-analytics-year{color:var(--tcw-muted);font-size:12px;font-weight:650}.tcw-analytics-toolbar{display:flex;min-width:0;min-height:36px;align-items:center;gap:14px}.tcw-analytics-toolbar>.tcw-button{margin-left:auto}.tcw-segmented-control{display:inline-flex;flex:0 0 auto;overflow:hidden;border:1px solid var(--tcw-border);border-radius:4px}.tcw-segmented-control button{min-width:90px;min-height:34px;padding:0 13px;border:0;border-right:1px solid var(--tcw-border);color:#4b586b;background:#fff}.tcw-segmented-control button:last-child{border-right:0}.tcw-segmented-control button[aria-pressed=true]{color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-analytics-switches{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.tcw-toggle{display:inline-flex;min-height:32px;align-items:center;gap:7px;color:#46546a;font-size:13px}.tcw-toggle input{width:16px;height:16px;margin:0;accent-color:var(--tcw-primary)}.tcw-inline-loading{display:flex;min-height:42px;align-items:center;justify-content:center;gap:9px;border:1px solid #bcd6f2;color:#285c91;background:#f0f7ff}.tcw-analytics-page .tcw-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px;min-width:0;margin-bottom:0;overflow-x:auto}.tcw-analytics-page .tcw-metric-grid article{display:grid;min-width:145px;min-height:88px;align-content:center;gap:8px;padding:13px 15px;border:1px solid var(--tcw-border);border-left:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-analytics-page .tcw-metric-grid span{color:var(--tcw-muted);font-size:12px}.tcw-analytics-page .tcw-metric-grid strong{min-width:0;overflow:hidden;color:#202b3c;font-size:19px;text-overflow:ellipsis;white-space:nowrap}.tcw-analytics-page .tcw-sales-top{display:grid;min-width:0;gap:10px;margin-bottom:0;padding:13px 15px;border:0;border-top:1px solid var(--tcw-border);border-bottom:1px solid var(--tcw-border);border-radius:0;background:#fbfcfe}.tcw-analytics-page .tcw-sales-top>strong{font-size:13px}.tcw-analytics-page .tcw-sales-top ol{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:0;margin:0;padding:0;overflow-x:auto;list-style:none;counter-reset:analytics-top}.tcw-analytics-page .tcw-sales-top li{display:grid;min-width:150px;grid-template-columns:22px minmax(0,1fr);gap:2px 7px;padding:4px 13px;border-left:0;border-right:1px solid var(--tcw-border-soft);counter-increment:analytics-top}.tcw-analytics-page .tcw-sales-top li:before{grid-row:1 / 3;align-self:center;color:var(--tcw-primary);font-weight:700;content:counter(analytics-top)}.tcw-analytics-page .tcw-sales-top li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.tcw-analytics-page .tcw-sales-top li b{color:#263448;font-size:12px;font-weight:650}.tcw-analytics-page .tcw-sales-top small{color:var(--tcw-muted)}.tcw-settings-page{display:grid;min-width:0;grid-template-columns:238px minmax(0,1fr);min-height:580px;border:1px solid var(--tcw-border);background:var(--tcw-surface)}.tcw-settings-navigation{padding:8px 0;border-right:1px solid var(--tcw-border);background:#f8fafc}.tcw-settings-navigation button{display:grid;width:100%;min-height:54px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:8px 14px;border:0;border-left:3px solid transparent;color:#3e4b60;background:transparent;text-align:left}.tcw-settings-navigation button:hover{background:#f0f3f7}.tcw-settings-navigation button.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-settings-navigation i{font-size:17px}.tcw-settings-navigation span{min-width:0;overflow-wrap:anywhere}.tcw-settings-navigation small{display:block;margin-top:3px;overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400}.tcw-settings-content{min-width:0;padding:18px 20px 24px}.tcw-settings-panel{display:grid;min-width:0;gap:15px}.tcw-settings-panel>header{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--tcw-border)}.tcw-settings-panel>header>div:first-child{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.tcw-settings-panel h2{margin:0;font-size:17px}.tcw-settings-panel header small{color:var(--tcw-muted);font-size:11px}.tcw-rich-toolbar{display:flex;min-height:36px;align-items:center;gap:3px;padding:3px;border:1px solid var(--tcw-border);border-bottom:0;background:#f7f9fb}.tcw-risk-editor{min-height:300px;padding:15px 17px;overflow:auto;border:1px solid var(--tcw-border);outline:none;line-height:1.7}.tcw-risk-editor:focus{border-color:var(--tcw-primary);box-shadow:0 0 0 2px var(--tcw-primary-soft)}.tcw-risk-editor h1,.tcw-risk-editor h2,.tcw-risk-editor h3,.tcw-risk-editor h4{margin:12px 0 7px;font-size:17px}.tcw-risk-editor p,.tcw-risk-editor ul,.tcw-risk-editor ol{margin:7px 0}.tcw-field-error{display:block;margin-top:5px;color:var(--tcw-danger)}@media(max-width:900px){.tcw-analytics-page .tcw-metric-grid{grid-template-columns:repeat(3,minmax(145px,1fr))}.tcw-settings-page{grid-template-columns:190px minmax(0,1fr)}}@media(max-width:680px){.tcw-analytics-toolbar{align-items:flex-start;flex-direction:column}.tcw-analytics-toolbar>.tcw-button{margin-left:0}.tcw-analytics-page .tcw-metric-grid{grid-template-columns:repeat(2,minmax(145px,1fr))}.tcw-settings-page{grid-template-columns:1fr}.tcw-settings-navigation{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-settings-navigation button{flex:0 0 155px;border-bottom:2px solid transparent;border-left:0}.tcw-settings-navigation button.is-active{border-bottom-color:var(--tcw-primary);border-left:0}.tcw-settings-content{padding:15px}.tcw-settings-panel>header{align-items:flex-start;flex-direction:column}.tcw-settings-panel .tcw-page-commands{width:100%;flex-wrap:wrap}}
1
+ :root{--tcw-primary: #1769c2;--tcw-primary-hover: #1259a6;--tcw-primary-soft: #eaf3ff;--tcw-canvas: #f5f7fa;--tcw-surface: #ffffff;--tcw-text: #172033;--tcw-muted: #69758a;--tcw-border: #dce3ec;--tcw-border-soft: #e9edf3;--tcw-danger: #c73737;--tcw-danger-soft: #fff1f1;--tcw-warning: #a86705;--tcw-success: #247c4c;--tcw-sidebar-width: 224px;--tcw-control-height: 36px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--tcw-text);background:var(--tcw-canvas);font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-size:14px;letter-spacing:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}.tcw-app-frame{display:grid;grid-template-columns:var(--tcw-sidebar-width) minmax(0,1fr);min-height:760px;background:var(--tcw-canvas)}.tcw-sidebar{position:sticky;top:0;align-self:start;min-height:760px;height:100vh;overflow-y:auto;border-right:1px solid var(--tcw-border);background:var(--tcw-surface)}.tcw-brand{display:flex;align-items:center;gap:10px;min-height:72px;padding:14px 17px;border-bottom:1px solid var(--tcw-border-soft)}.tcw-brand strong{font-size:16px;white-space:nowrap}.tcw-brand-mark{display:grid;flex:0 0 38px;width:38px;height:42px;place-items:center;color:#fff;background:var(--tcw-primary);font-size:17px;font-weight:700;clip-path:polygon(50% 0,100% 15%,92% 72%,50% 100%,8% 72%,0 15%)}.tcw-navigation{display:grid;gap:2px;padding:12px 8px}.tcw-nav-row{display:grid;grid-template-columns:1fr;border-left:3px solid transparent}.tcw-nav-item{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:42px;padding:0 9px;border:0;color:#4d5b70;background:transparent;text-align:left}.tcw-nav-item i:first-child{color:#7b889b;font-size:17px;text-align:center}.tcw-nav-row:hover{background:#f5f8fc}.tcw-nav-row.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-nav-row.is-active .tcw-nav-item,.tcw-nav-row.is-active i{color:var(--tcw-primary)}.tcw-main{min-width:0}.tcw-topbar{display:flex;align-items:center;justify-content:space-between;min-height:58px;margin:0 18px;border-bottom:1px solid var(--tcw-border)}.tcw-breadcrumbs{display:flex;align-items:center;gap:6px;min-width:0;color:var(--tcw-muted)}.tcw-breadcrumbs button{padding:3px 0;border:0;color:var(--tcw-muted);background:transparent}.tcw-breadcrumbs button:hover{color:var(--tcw-primary)}.tcw-breadcrumbs span[aria-current=page]{color:#49566a}.tcw-icon-button{display:inline-grid;width:34px;height:34px;place-items:center;border:1px solid transparent;border-radius:4px;color:#5d6b7f;background:transparent;font-size:20px}.tcw-icon-button:hover{border-color:var(--tcw-border);background:var(--tcw-surface)}.tcw-content{padding:18px}.tcw-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.tcw-page-heading h1{margin:0;font-size:22px;line-height:1.3}.tcw-page-heading p{margin:5px 0 0;color:var(--tcw-muted);line-height:1.5}.tcw-page-commands{display:flex;flex-wrap:nowrap;gap:8px;justify-content:flex-end;overflow-x:auto}.tcw-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tcw-control-height);padding:0 15px;border:1px solid var(--tcw-border);border-radius:4px;white-space:nowrap}.tcw-button--primary{border-color:var(--tcw-primary);color:#fff;background:var(--tcw-primary)}.tcw-button--primary:hover{border-color:var(--tcw-primary-hover);background:var(--tcw-primary-hover)}.tcw-button--secondary{color:#455266;background:var(--tcw-surface)}.tcw-button--secondary:hover{border-color:#aeb9c7;background:#f8fafc}.tcw-button--danger{border-color:var(--tcw-danger);color:#fff;background:var(--tcw-danger)}.tcw-filter-panel{margin-bottom:10px;padding:12px 14px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:10px 12px;align-items:end}.tcw-filter-control{display:grid;min-width:0;gap:5px}.tcw-filter-control>span{color:#344054;font-size:13px;font-weight:650}.tcw-filter-control input,.tcw-filter-control select,.tcw-form-field input,.tcw-form-field select,.tcw-form-field textarea{width:100%;height:var(--tcw-control-height);min-width:0;padding:0 11px;border:1px solid #cbd4e0;border-radius:4px;outline:none;color:var(--tcw-text);background:#fff}.tcw-filter-control input:focus,.tcw-filter-control select:focus,.tcw-form-field input:focus,.tcw-form-field select:focus,.tcw-form-field textarea:focus{border-color:var(--tcw-primary);box-shadow:0 0 0 2px #1769c21a}.tcw-filter-control--range>div{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);align-items:center;gap:6px}.tcw-filter-control--range em{color:var(--tcw-muted);font-style:normal}.tcw-filter-actions{display:flex;gap:8px}.tcw-notice{display:flex;align-items:flex-start;gap:9px;min-height:40px;margin-bottom:14px;padding:10px 13px;border:1px solid;border-radius:4px;line-height:1.5}.tcw-notice i{margin-top:1px;font-size:17px}.tcw-notice--info{border-color:#bcd6f2;color:#285c91;background:#f0f7ff}.tcw-notice--risk{border-color:#efbaba;color:#9e3030;background:var(--tcw-danger-soft)}.tcw-context-bar{display:flex;align-items:center;gap:14px;min-height:48px;margin-bottom:10px;padding:8px 12px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-context-bar span{min-width:0;overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap}.tcw-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-bottom:10px}.tcw-metric-grid article{display:grid;align-content:center;gap:4px;min-height:82px;padding:11px 14px;border:1px solid var(--tcw-border);border-left:3px solid var(--tcw-primary);border-radius:5px;background:var(--tcw-surface)}.tcw-metric-grid article span,.tcw-metric-grid article small{color:var(--tcw-muted)}.tcw-metric-grid article strong{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.tcw-sales-top{margin-bottom:10px;padding:11px 13px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-sales-top ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:10px 0 0;padding:0;list-style:none}.tcw-sales-top li{display:grid;min-width:0;gap:4px;padding-left:10px;border-left:2px solid var(--tcw-primary)}.tcw-sales-top li span{overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap}.tcw-sales-top li b{font-size:13px}.tcw-sales-top small{display:block;margin-top:9px;color:var(--tcw-muted)}.tcw-preflight-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.tcw-preflight-summary>div{padding:10px 12px;border:1px solid var(--tcw-border-soft);background:#f8fafc}.tcw-preflight-summary dt{color:var(--tcw-muted);font-size:12px}.tcw-preflight-summary dd{margin:5px 0 0;font-weight:700}.tcw-tag-list{display:flex;gap:5px}.tcw-tag{display:inline-flex;min-height:23px;align-items:center;padding:2px 7px;border:1px solid #b8c7d9;border-radius:3px;color:#40536b;background:#f5f8fb;font-size:12px;white-space:nowrap}.tcw-tag--warning{border-color:#e7c786;color:#94610d;background:#fff8e8}.tcw-tag--danger{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-excel-editor{position:fixed;inset:0;z-index:1200;display:flex;flex-direction:column;background:#fff}.tcw-excel-editor>header{display:flex;flex:0 0 62px;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;border-bottom:1px solid var(--tcw-border)}.tcw-excel-editor>header>div{display:flex;gap:8px}.tcw-editor-error{padding:10px 16px;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-excel-editor-canvas{flex:1 1 0;min-width:0;min-height:0}.tcw-grid-section{border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface);overflow:hidden}.tcw-table-scroll{width:100%;overflow-x:auto}.tcw-data-table{width:100%;min-width:920px;border-spacing:0;border-collapse:separate;font-size:13px}.tcw-data-table th,.tcw-data-table td{height:44px;padding:7px 11px;border-bottom:1px solid var(--tcw-border-soft);text-align:left;vertical-align:middle;white-space:nowrap}.tcw-data-table th{color:#435066;background:#f6f8fb;font-weight:650}.tcw-data-table tbody tr:hover td{background:#fafcff}.tcw-data-table tbody tr:last-child td{border-bottom:0}.tcw-data-table .action-column{position:sticky;right:0;z-index:2;background:var(--tcw-surface);box-shadow:-5px 0 9px #2030470f}.tcw-data-table th.action-column{z-index:3;background:#f6f8fb}.tcw-row-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:max-content;white-space:nowrap}.tcw-row-actions button{padding:2px 3px;border:0;color:var(--tcw-primary);background:transparent;white-space:nowrap}.tcw-row-actions button.is-danger{color:var(--tcw-danger)}.tcw-table-link{display:block;max-width:100%;overflow:hidden;padding:0;border:0;color:var(--tcw-primary);background:transparent;text-align:left;text-overflow:ellipsis;white-space:nowrap}.tcw-table-link:hover{text-decoration:underline}.tcw-ellipsis{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcw-align-center{text-align:center!important}.tcw-align-right{text-align:right!important}.tcw-empty-row td{height:180px;color:var(--tcw-muted);text-align:center}.tcw-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:6px 10px;border-top:1px solid var(--tcw-border-soft);color:var(--tcw-muted)}.tcw-pagination>div{display:flex;align-items:center;gap:7px}.tcw-pagination button{min-height:28px;padding:0 8px;border:1px solid var(--tcw-border);border-radius:3px;color:#46546a;background:#fff}.tcw-pagination strong{color:#344054;font-weight:600}.tcw-modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#121c2b7a}.tcw-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(620px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:hidden;border-radius:6px;background:var(--tcw-surface);box-shadow:0 24px 70px #0f1c3040}.tcw-modal--wide{width:min(1120px,calc(100vw - 40px))}.tcw-modal--full{width:calc(100vw - 24px);height:calc(100vh - 24px);max-height:none}.tcw-modal>header,.tcw-modal>footer{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:12px 18px;border-bottom:1px solid var(--tcw-border)}.tcw-modal>footer{justify-content:flex-end;gap:9px;border-top:1px solid var(--tcw-border);border-bottom:0}.tcw-modal h2{margin:0;font-size:18px}.tcw-modal-body{min-height:0;padding:18px;overflow:auto}.tcw-field-grid{display:grid;gap:15px 16px}.tcw-field-grid--1{grid-template-columns:1fr}.tcw-field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tcw-field-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tcw-form-field{display:grid;gap:7px;min-width:0}.tcw-form-field>span{color:#344054;font-size:13px;font-weight:650}.tcw-form-field b{margin-right:3px;color:var(--tcw-danger)}.tcw-form-field textarea{height:auto;min-height:96px;padding:9px 11px;resize:vertical}.tcw-form-field small{color:var(--tcw-muted)}.tcw-form-field--full{grid-column:1 / -1}.tcw-review-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;min-height:520px}.tcw-review-split>section{min-width:0;padding:0 20px}.tcw-review-split>section:first-child{padding-left:0;border-right:1px solid var(--tcw-border)}.tcw-review-split>section:last-child{padding-right:0}.tcw-review-split h3{margin:0 0 14px;font-size:15px}.tcw-upload-zone{display:grid;min-height:220px;place-items:center;align-content:center;gap:9px;padding:30px;border:1px dashed #98abc1;border-radius:4px;color:#43546b;background:#f7faff;text-align:center}.tcw-upload-zone>i{color:var(--tcw-primary);font-size:38px}.tcw-upload-zone>span{color:var(--tcw-muted);font-size:12px}.tcw-upload-zone input{position:absolute;width:1px;height:1px;opacity:0}.tcw-upload-zone.is-disabled{opacity:.6;cursor:not-allowed}.tcw-confirm-message{display:flex;align-items:flex-start;gap:13px;padding:8px 2px;line-height:1.7}.tcw-confirm-message>i{color:var(--tcw-primary);font-size:27px}.tcw-confirm-message p{margin:2px 0 0}.tcw-confirm-message.is-danger>i{color:var(--tcw-danger)}.tcw-loading-blocker{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;gap:12px;background:#ffffffc7}.tcw-spinner{width:24px;height:24px;border:3px solid #cbd8e7;border-top-color:var(--tcw-primary);border-radius:50%;animation:tcw-spin .75s linear infinite}@keyframes tcw-spin{to{transform:rotate(360deg)}}.tcw-toast{position:fixed;z-index:1300;top:22px;right:24px;display:flex;align-items:center;gap:9px;max-width:min(420px,calc(100vw - 32px));padding:11px 14px;border:1px solid;border-radius:4px;background:#fff;box-shadow:0 8px 28px #14233729}.tcw-toast--success{border-color:#add6bf;color:var(--tcw-success);background:#f0faf4}.tcw-toast--info{border-color:#bcd6f2;color:#285c91;background:#f0f7ff}.tcw-toast--warning{border-color:#e7c786;color:var(--tcw-warning);background:#fff8e8}.tcw-toast--error{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-toast button{display:grid;place-items:center;padding:0;border:0;color:inherit;background:transparent}.tcw-page-placeholder{min-height:320px}.tcw-placeholder-body{min-height:240px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}@media(max-width:1180px){.tcw-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.tcw-filter-actions{align-self:end}}@media(max-width:900px){.tcw-metric-grid,.tcw-sales-top ol{grid-template-columns:1fr 1fr}.tcw-context-bar{align-items:flex-start;flex-direction:column;gap:6px}.tcw-app-frame{grid-template-columns:72px minmax(0,1fr)}.tcw-sidebar{overflow-x:hidden}.tcw-brand{justify-content:center;padding:16px 8px}.tcw-brand strong,.tcw-nav-item span{display:none}.tcw-navigation{padding-inline:7px}.tcw-nav-row{grid-template-columns:1fr}.tcw-nav-item{grid-template-columns:1fr;justify-items:center;padding:0}.tcw-topbar{margin-inline:14px}.tcw-content{padding:16px 14px}.tcw-page-heading{flex-direction:column}.tcw-page-commands{width:100%;justify-content:flex-start}.tcw-filter-grid,.tcw-field-grid--2,.tcw-field-grid--3,.tcw-review-split{grid-template-columns:1fr}.tcw-review-split>section{padding:18px 0}.tcw-review-split>section:first-child{padding-top:0;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-pagination{align-items:flex-start;flex-direction:column}.tcw-modal-backdrop{padding:6px}.tcw-modal,.tcw-modal--wide{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}}@media(max-width:420px){.tcw-filter-control--range>div{grid-template-columns:1fr}.tcw-filter-control--range em{text-align:center}.tcw-pagination>div{flex-wrap:wrap;max-width:100%}}.tcw-home-page{display:grid;gap:16px;min-width:0}.tcw-home-section{min-width:0;padding:16px;border:1px solid var(--tcw-border-soft);border-radius:6px;background:var(--tcw-surface)}.tcw-home-section-title{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:18px;line-height:1.35}.tcw-home-section-title>i{color:var(--tcw-danger);font-size:25px;font-weight:400}.tcw-home-maintained-notice{margin:-2px 0 14px;padding:10px 12px;border-left:3px solid var(--tcw-danger);color:#6f3030;background:var(--tcw-danger-soft);line-height:1.6}.tcw-home-maintained-notice h2,.tcw-home-maintained-notice h3,.tcw-home-maintained-notice h4,.tcw-home-maintained-notice p,.tcw-home-maintained-notice ul,.tcw-home-maintained-notice ol{margin:0 0 7px}.tcw-home-maintained-notice>:last-child{margin-bottom:0}.tcw-home-risk-matrix{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #f0cdcd;background:snow}.tcw-home-risk-item{min-width:0;min-height:150px;padding:16px 18px;border-right:1px solid #f2dddd;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:nth-child(5n){border-right:0}.tcw-home-risk-item:nth-last-child(-n+5){border-bottom:0}.tcw-home-risk-heading{display:flex;align-items:center;gap:11px;color:var(--tcw-danger)}.tcw-home-risk-heading>i{flex:0 0 auto;font-size:31px}.tcw-home-risk-heading h3{min-width:0;margin:0;overflow-wrap:anywhere;font-size:15px;line-height:1.45}.tcw-home-risk-item>p{margin:12px 0 0;color:#3f4755;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.tcw-home-workflow-heading{display:flex;align-items:baseline;gap:18px;margin-bottom:14px}.tcw-home-workflow-heading .tcw-home-section-title{margin:0}.tcw-home-workflow-heading>p{margin:0;color:var(--tcw-muted)}.tcw-home-workflow-scroll{min-width:0;overflow-x:auto;padding:2px 1px 8px}.tcw-home-workflow{display:flex;align-items:center;width:max-content;min-width:100%}.tcw-home-workflow-step{--tcw-home-tone: var(--tcw-primary);position:relative;display:grid;flex:0 0 160px;align-content:start;justify-items:center;min-width:160px;min-height:204px;padding:27px 12px 14px;border:1px solid var(--tcw-border);border-radius:5px;color:var(--tcw-home-tone);text-align:center}.tcw-home-workflow-step>i{margin:5px 0 15px;font-size:42px}.tcw-home-workflow-step h3{display:grid;justify-items:center;margin:0;font-size:14px;line-height:1.55}.tcw-home-step-title-line{display:block;max-width:100%;white-space:nowrap}.tcw-home-workflow-step p{margin:13px 0 0;color:#4b5565;font-size:12px;line-height:1.65;overflow-wrap:anywhere}.tcw-home-step-number{position:absolute;top:-13px;left:50%;display:grid;width:26px;height:26px;place-items:center;border:2px solid #fff;border-radius:50%;color:#fff;background:var(--tcw-home-tone);font-size:12px;transform:translate(-50%)}.tcw-home-workflow-step--green{--tcw-home-tone: #198754}.tcw-home-workflow-step--violet{--tcw-home-tone: #7150aa}.tcw-home-workflow-step--orange{--tcw-home-tone: #d86513}.tcw-home-workflow-connector{flex:0 0 28px;color:#536071;font-size:20px;text-align:center}@media(max-width:1280px){.tcw-home-risk-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.tcw-home-risk-item,.tcw-home-risk-item:nth-child(5n){border-right:1px solid #f2dddd;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:nth-child(2n){border-right:0}.tcw-home-risk-item:nth-last-child(-n+2){border-bottom:0}}@media(max-width:620px){.tcw-home-page{gap:16px}.tcw-home-section{padding:17px 14px}.tcw-home-risk-matrix{grid-template-columns:1fr}.tcw-home-risk-item,.tcw-home-risk-item:nth-child(2n),.tcw-home-risk-item:nth-child(5n),.tcw-home-risk-item:nth-last-child(-n+2){min-height:0;border-right:0;border-bottom:1px solid #f2dddd}.tcw-home-risk-item:last-child{border-bottom:0}.tcw-home-workflow-heading{display:block}.tcw-home-workflow-heading>p{margin-top:7px}}.tcw-catalog-import-failure{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #efbaba;border-left:4px solid var(--tcw-danger);border-radius:5px;color:#8f2929;background:var(--tcw-danger-soft)}.tcw-catalog-import-failure p{margin:5px 0 0;line-height:1.6}.tcw-catalog-issue-toolbar{display:inline-flex;margin-bottom:14px;border:1px solid var(--tcw-border);border-radius:4px;overflow:hidden}.tcw-catalog-issue-toolbar button{min-width:88px;min-height:34px;padding:0 14px;border:0;border-right:1px solid var(--tcw-border);color:#455266;background:#fff}.tcw-catalog-issue-toolbar button:last-child{border-right:0}.tcw-catalog-issue-toolbar button.is-active{color:#fff;background:var(--tcw-primary)}.tcw-catalog-issue-toolbar button:disabled{cursor:not-allowed;opacity:.55}.tcw-catalog-issue-status{margin:0;padding:24px;color:var(--tcw-muted);text-align:center}.tcw-catalog-issue-error{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #efbaba;border-radius:4px;color:var(--tcw-danger);background:var(--tcw-danger-soft)}@media(max-width:620px){.tcw-catalog-import-failure{align-items:stretch;flex-direction:column}}.tcw-procurement-page{display:grid;gap:10px;min-width:0}.tcw-procurement-toolbar{display:flex;justify-content:flex-end;min-height:36px}.tcw-procurement-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.tcw-procurement-feedback{padding:11px 14px;border:1px solid #bcd6f2;border-radius:4px;color:#285c91;background:#f0f7ff}.tcw-procurement-link{padding:2px 0;border:0;color:var(--tcw-primary);background:transparent}.tcw-procurement-status{display:inline-flex;min-height:25px;align-items:center;padding:2px 8px;border-radius:3px;font-size:12px;font-weight:650}.tcw-procurement-status--success{color:#167849;background:#e8f7ef}.tcw-procurement-status--warning{color:#9b6300;background:#fff3d6}.tcw-procurement-status--danger{color:#b52b2b;background:#fdeaea}.tcw-procurement-status--muted{color:#526174;background:#edf1f5}.tcw-procurement-context{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:0;align-items:stretch;overflow:hidden;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-procurement-context>div:not(.tcw-procurement-context-actions){display:grid;align-content:center;gap:5px;min-height:68px;padding:10px 14px;border-right:1px solid var(--tcw-border-soft)}.tcw-procurement-context span{color:var(--tcw-muted);font-size:12px}.tcw-procurement-context strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.tcw-procurement-context-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 12px}.tcw-procurement-metrics{display:grid;grid-template-columns:repeat(4,minmax(130px,.8fr)) minmax(260px,1.5fr);gap:10px}.tcw-procurement-metrics>div{display:grid;align-content:center;min-height:88px;padding:12px 14px;border:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-procurement-metrics>div>span{color:var(--tcw-muted);font-size:13px}.tcw-procurement-metrics>div>strong{margin-top:6px;font-size:21px;font-weight:700}.tcw-procurement-top ol{display:grid;gap:5px;margin:9px 0 0;padding:0;list-style:none;counter-reset:procurement-top}.tcw-procurement-top li{display:flex;justify-content:space-between;gap:12px;min-width:0;counter-increment:procurement-top}.tcw-procurement-top li:before{display:inline-grid;flex:0 0 18px;width:18px;height:18px;place-items:center;border-radius:50%;color:#fff;background:var(--tcw-primary);font-size:10px;content:counter(procurement-top)}.tcw-procurement-top li span{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--tcw-text);text-overflow:ellipsis;white-space:nowrap}.tcw-procurement-top li strong{flex:0 0 auto;font-size:12px}.tcw-procurement-top small{display:block;margin-top:16px;color:var(--tcw-muted)}.tcw-procurement-audit-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:18px;padding:13px 15px;border:1px solid var(--tcw-border-soft);background:#f8fafc}.tcw-procurement-source-label{display:inline-flex;margin-bottom:15px;padding:5px 9px;border:1px solid var(--tcw-border);border-radius:3px;color:var(--tcw-muted);background:#f8fafc;font-size:12px}.tcw-procurement-inline-field{display:grid;grid-template-columns:minmax(0,1fr) auto}.tcw-procurement-inline-field input{border-radius:4px 0 0 4px}.tcw-procurement-inline-field button{border-left:0;border-radius:0 4px 4px 0}.tcw-procurement-review-editor{display:grid;gap:20px}.tcw-procurement-review-section{min-width:0;padding-bottom:20px;border-bottom:1px solid var(--tcw-border)}.tcw-procurement-review-section:last-child{padding-bottom:0;border-bottom:0}.tcw-procurement-review-section>h3{margin:0 0 14px;font-size:16px}.tcw-procurement-review-lines{display:grid;gap:14px}.tcw-procurement-review-line{padding:15px;border:1px solid var(--tcw-border);border-radius:5px;background:#fbfcfe}.tcw-procurement-review-line h4{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:14px}.tcw-procurement-source{display:grid;grid-template-rows:auto minmax(420px,1fr);gap:12px;height:100%}.tcw-procurement-source iframe,.tcw-procurement-source pre{width:100%;min-height:520px;margin:0;border:1px solid var(--tcw-border);background:#f7f8fa}.tcw-procurement-source iframe{height:100%}.tcw-procurement-source pre{padding:18px;overflow:auto;white-space:pre-wrap}.tcw-procurement-checkbox{display:flex;align-items:center;gap:8px;min-height:var(--tcw-control-height)}.tcw-procurement-checkbox input{width:16px;height:16px}.tcw-procurement-delete-summary{display:grid;gap:8px;width:100%}.tcw-procurement-delete-summary>strong{font-size:15px}.tcw-procurement-delete-summary>span{color:#4d5b70}.tcw-procurement-delete-summary>b{margin-top:5px;padding:10px;color:#9e3030;background:var(--tcw-danger-soft);line-height:1.6}@media(max-width:1320px){.tcw-procurement-context{grid-template-columns:repeat(2,minmax(160px,1fr))}.tcw-procurement-context-actions{grid-column:1 / -1;border-top:1px solid var(--tcw-border-soft)}.tcw-procurement-metrics{grid-template-columns:repeat(2,minmax(160px,1fr))}.tcw-procurement-top{grid-column:1 / -1}}@media(max-width:760px){.tcw-procurement-toolbar{justify-content:flex-start}.tcw-procurement-context,.tcw-procurement-metrics{grid-template-columns:1fr}.tcw-procurement-context-actions,.tcw-procurement-top{grid-column:auto}.tcw-procurement-context-actions{align-items:stretch;flex-direction:column}.tcw-procurement-context>div:not(.tcw-procurement-context-actions){border-right:0;border-bottom:1px solid var(--tcw-border-soft)}.tcw-procurement-inline-field{grid-template-columns:1fr;gap:7px}.tcw-procurement-inline-field input,.tcw-procurement-inline-field button{border:1px solid var(--tcw-border);border-radius:4px}}.tcw-contract-page{min-width:0}.tcw-contract-page .tcw-modal--wide{width:min(1040px,calc(100vw - 64px));max-height:min(820px,calc(100vh - 64px))}.tcw-contract-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.tcw-contract-customer-code{display:block;margin-top:3px;color:var(--tcw-muted);font-weight:400}.tcw-contract-import-status,.tcw-contract-page-error,.tcw-contract-dialog-error{margin:0 0 14px;padding:12px 14px;border:1px solid #bcd6f2;border-radius:4px;color:#285c91;background:#f0f7ff}.tcw-contract-page-error,.tcw-contract-dialog-error{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-contract-selected-file{margin:14px 0 0}.tcw-contract-review-header{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.8fr) auto auto;align-items:end;gap:12px;padding:12px 14px;border:1px solid var(--tcw-border);border-radius:5px;background:#f8fafc}.tcw-contract-summary-customer{display:grid;align-self:stretch;align-content:center;min-width:0;padding-right:12px;border-right:1px solid var(--tcw-border-soft)}.tcw-contract-summary-customer span,.tcw-contract-summary-customer small{color:var(--tcw-muted);font-size:12px}.tcw-contract-summary-customer strong{margin:5px 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcw-contract-customer-master{margin-top:14px;border:1px solid var(--tcw-border);border-radius:5px}.tcw-contract-customer-master summary{padding:13px 15px;cursor:pointer;font-weight:650}.tcw-contract-customer-master>.tcw-field-grid{padding:2px 15px 16px}.tcw-contract-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;margin-top:10px}.tcw-contract-review-layout{display:grid;grid-template-columns:156px minmax(320px,.95fr) minmax(360px,1.05fr);min-height:480px;border:1px solid var(--tcw-border);border-radius:5px;overflow:hidden}.tcw-contract-clause-tabs{padding:10px 0;border-right:1px solid var(--tcw-border);background:#f8fafc}.tcw-contract-clause-tabs button{display:grid;width:100%;min-height:58px;align-content:center;gap:3px;padding:8px 16px;border:0;border-left:3px solid transparent;color:#3e4b60;background:transparent;text-align:left}.tcw-contract-clause-tabs button.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-contract-clause-tabs small{color:var(--tcw-muted);font-size:11px;font-weight:400}.tcw-contract-clause-editor,.tcw-contract-source-preview{min-width:0;padding:18px}.tcw-contract-clause-editor{display:grid;align-content:start;gap:15px;border-right:1px solid var(--tcw-border)}.tcw-contract-clause-editor>h3,.tcw-contract-source-preview>h3{margin:0 0 2px;font-size:15px}.tcw-contract-clause-status{max-width:148px}.tcw-contract-analysis{padding:14px;border:1px solid var(--tcw-border);border-left:3px solid var(--tcw-primary);background:#f8fafc}.tcw-contract-analysis h4{margin:0 0 12px;font-size:14px}.tcw-contract-analysis dl{margin:12px 0 0}.tcw-contract-analysis dt{margin-top:10px;color:var(--tcw-muted);font-size:12px;font-weight:650}.tcw-contract-analysis dd{margin:4px 0 0;line-height:1.65;white-space:normal}.tcw-contract-source-preview{display:grid;grid-template-rows:auto minmax(0,1fr);background:#f3f5f8}.tcw-contract-source-preview iframe{width:100%;min-height:430px;border:1px solid var(--tcw-border);background:#fff}.tcw-contract-source-preview pre{min-height:430px;margin:0;padding:18px;overflow:auto;border:1px solid var(--tcw-border);background:#fff;font:inherit;line-height:1.7;white-space:pre-wrap}.tcw-contract-preview-unavailable{display:grid;min-height:430px;place-items:center;align-content:center;padding:30px;border:1px dashed #aab6c5;color:var(--tcw-muted);background:#fff;text-align:center}.tcw-contract-preview-unavailable i{font-size:38px}.tcw-contract-preview-unavailable p{margin:12px 0 5px;color:#46546a}.tcw-contract-risk,.tcw-contract-sanction{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid;border-radius:3px;font-size:12px;white-space:nowrap}.tcw-contract-risk--high,.tcw-contract-sanction--hit{border-color:#efbaba;color:var(--tcw-danger);background:var(--tcw-danger-soft)}.tcw-contract-risk--medium,.tcw-contract-sanction--unchecked{border-color:#e7c786;color:#9b650e;background:#fff8e8}.tcw-contract-risk--low,.tcw-contract-sanction--clear{border-color:#add6bf;color:var(--tcw-success);background:#f0faf4}@media(max-width:1180px){.tcw-contract-review-header{grid-template-columns:minmax(150px,.6fr) minmax(0,1.4fr) auto auto}.tcw-contract-review-layout{grid-template-columns:150px minmax(340px,1fr)}.tcw-contract-source-preview{grid-column:1 / -1;border-top:1px solid var(--tcw-border)}}@media(max-width:760px){.tcw-contract-page .tcw-modal--wide{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}.tcw-contract-review-header{grid-template-columns:1fr;align-items:start}.tcw-contract-review-layout{grid-template-columns:1fr}.tcw-contract-clause-tabs{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-contract-clause-tabs button{flex:0 0 128px;border-bottom:3px solid transparent;border-left:0}.tcw-contract-clause-tabs button.is-active{border-bottom-color:var(--tcw-primary);border-left:0}.tcw-contract-clause-editor{border-right:0}.tcw-contract-source-preview{grid-column:auto}}.tcw-analytics-page{display:grid;min-width:0;gap:10px}.tcw-page-tabs{display:flex;min-height:38px;gap:20px;border-bottom:1px solid var(--tcw-border)}.tcw-page-tabs button{position:relative;padding:0 3px 10px;border:0;color:var(--tcw-muted);background:transparent;font-size:14px;font-weight:650}.tcw-page-tabs button[aria-selected=true]{color:var(--tcw-primary)}.tcw-page-tabs button[aria-selected=true]:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--tcw-primary);content:""}.tcw-analytics-year{color:var(--tcw-muted);font-size:12px;font-weight:650}.tcw-analytics-toolbar{display:flex;min-width:0;min-height:36px;align-items:center;gap:14px}.tcw-analytics-toolbar>.tcw-button{margin-left:auto}.tcw-segmented-control{display:inline-flex;flex:0 0 auto;overflow:hidden;border:1px solid var(--tcw-border);border-radius:4px}.tcw-segmented-control button{min-width:90px;min-height:34px;padding:0 13px;border:0;border-right:1px solid var(--tcw-border);color:#4b586b;background:#fff}.tcw-segmented-control button:last-child{border-right:0}.tcw-segmented-control button[aria-pressed=true]{color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-analytics-switches{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.tcw-toggle{display:inline-flex;min-height:32px;align-items:center;gap:7px;color:#46546a;font-size:13px}.tcw-toggle input{width:16px;height:16px;margin:0;accent-color:var(--tcw-primary)}.tcw-inline-loading{display:flex;min-height:42px;align-items:center;justify-content:center;gap:9px;border:1px solid #bcd6f2;color:#285c91;background:#f0f7ff}.tcw-analytics-page .tcw-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px;min-width:0;margin-bottom:0;overflow-x:auto}.tcw-analytics-page .tcw-metric-grid article{display:grid;min-width:145px;min-height:82px;align-content:center;gap:6px;padding:10px 13px;border:1px solid var(--tcw-border);border-left:1px solid var(--tcw-border);border-radius:5px;background:var(--tcw-surface)}.tcw-analytics-page .tcw-metric-grid span{color:var(--tcw-muted);font-size:12px}.tcw-analytics-page .tcw-metric-grid strong{min-width:0;overflow:hidden;color:#202b3c;font-size:19px;text-overflow:ellipsis;white-space:nowrap}.tcw-analytics-page .tcw-sales-top{display:grid;min-width:0;gap:10px;margin-bottom:0;padding:13px 15px;border:0;border-top:1px solid var(--tcw-border);border-bottom:1px solid var(--tcw-border);border-radius:0;background:#fbfcfe}.tcw-analytics-page .tcw-sales-top>strong{font-size:13px}.tcw-analytics-page .tcw-sales-top ol{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:0;margin:0;padding:0;overflow-x:auto;list-style:none;counter-reset:analytics-top}.tcw-analytics-page .tcw-sales-top li{display:grid;min-width:150px;grid-template-columns:22px minmax(0,1fr);gap:2px 7px;padding:4px 13px;border-left:0;border-right:1px solid var(--tcw-border-soft);counter-increment:analytics-top}.tcw-analytics-page .tcw-sales-top li:before{grid-row:1 / 3;align-self:center;color:var(--tcw-primary);font-weight:700;content:counter(analytics-top)}.tcw-analytics-page .tcw-sales-top li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.tcw-analytics-page .tcw-sales-top li b{color:#263448;font-size:12px;font-weight:650}.tcw-analytics-page .tcw-sales-top small{color:var(--tcw-muted)}.tcw-settings-page{display:grid;min-width:0;grid-template-columns:238px minmax(0,1fr);min-height:580px;border:1px solid var(--tcw-border);background:var(--tcw-surface)}.tcw-settings-navigation{padding:8px 0;border-right:1px solid var(--tcw-border);background:#f8fafc}.tcw-settings-navigation button{display:grid;width:100%;min-height:54px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:8px 14px;border:0;border-left:3px solid transparent;color:#3e4b60;background:transparent;text-align:left}.tcw-settings-navigation button:hover{background:#f0f3f7}.tcw-settings-navigation button.is-active{border-left-color:var(--tcw-primary);color:var(--tcw-primary);background:var(--tcw-primary-soft);font-weight:650}.tcw-settings-navigation i{font-size:17px}.tcw-settings-navigation span{min-width:0;overflow-wrap:anywhere}.tcw-settings-navigation small{display:block;margin-top:3px;overflow:hidden;color:var(--tcw-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400}.tcw-settings-content{min-width:0;padding:16px 18px 20px}.tcw-settings-panel{display:grid;min-width:0;gap:12px}.tcw-settings-panel>header{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--tcw-border)}.tcw-settings-panel>header>div:first-child{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.tcw-settings-panel h2{margin:0;font-size:17px}.tcw-settings-panel header small{color:var(--tcw-muted);font-size:11px}.tcw-rich-toolbar{display:flex;min-height:36px;align-items:center;gap:3px;padding:3px;border:1px solid var(--tcw-border);border-bottom:0;background:#f7f9fb}.tcw-risk-editor{min-height:300px;padding:15px 17px;overflow:auto;border:1px solid var(--tcw-border);outline:none;line-height:1.7}.tcw-risk-editor:focus{border-color:var(--tcw-primary);box-shadow:0 0 0 2px var(--tcw-primary-soft)}.tcw-risk-editor h1,.tcw-risk-editor h2,.tcw-risk-editor h3,.tcw-risk-editor h4{margin:12px 0 7px;font-size:17px}.tcw-risk-editor p,.tcw-risk-editor ul,.tcw-risk-editor ol{margin:7px 0}.tcw-field-error{display:block;margin-top:5px;color:var(--tcw-danger)}@media(max-width:900px){.tcw-analytics-page .tcw-metric-grid{grid-template-columns:repeat(3,minmax(145px,1fr))}.tcw-settings-page{grid-template-columns:190px minmax(0,1fr)}}@media(max-width:680px){.tcw-analytics-toolbar{align-items:flex-start;flex-direction:column}.tcw-analytics-toolbar>.tcw-button{margin-left:0}.tcw-analytics-page .tcw-metric-grid{grid-template-columns:repeat(2,minmax(145px,1fr))}.tcw-settings-page{grid-template-columns:1fr}.tcw-settings-navigation{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--tcw-border)}.tcw-settings-navigation button{flex:0 0 155px;border-bottom:2px solid transparent;border-left:0}.tcw-settings-navigation button.is-active{border-bottom-color:var(--tcw-primary);border-left:0}.tcw-settings-content{padding:15px}.tcw-settings-panel>header{align-items:flex-start;flex-direction:column}.tcw-settings-panel .tcw-page-commands{width:100%;flex-wrap:wrap}}