:root{--navy:#12253b;--navy-2:#1b3551;--ink:#203247;--muted:#718096;--line:#e4e9ef;--bg:#f3f6f9;--blue:#2878d0;--orange:#ef8c36;--green:#36a070;--purple:#8066c4;--shadow:0 8px 24px rgba(34,56,78,.08)}
.empty-state{padding:22px;color:#8a9bad;text-align:center;font-size:12px}.import-preview{padding-top:8px}.import-preview>p{padding:10px 0 2px;margin:0;color:#526b82}
.top-scroll{height:16px;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #e8edf2;background:#f8fafc}.top-scroll>div{height:1px}.project-table table,.task-modal table{table-layout:fixed;min-width:100%}.project-table th,.task-modal th{position:relative;min-width:80px}.project-table th{position:sticky;top:0;z-index:3;box-shadow:0 2px 0 #dce5ed}.project-table td,.task-modal td{white-space:normal!important;word-break:break-word;line-height:1.5;vertical-align:top}.project-table tbody tr{cursor:pointer}.project-table tbody tr:hover{background:#eef6fe}.column-resizer{position:absolute;top:0;right:-5px;width:11px;height:100%;cursor:col-resize;user-select:none;background:rgba(66,125,174,.16);border-left:2px solid #6d9bc2;border-right:2px solid #6d9bc2}.column-resizer:hover{background:rgba(239,140,54,.42);border-color:#d87929}.task-modal{width:min(94vw,1450px);max-height:88vh;padding:20px}.task-detail-scroll{max-height:68vh}.task-modal .modal-head p{margin:5px 0 12px;color:#7b8d9f;font-size:12px}.source-button{margin-top:8px;min-width:155px}.startup-sources{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0;padding:12px;border-top:1px solid #e5ebf0;border-bottom:1px solid #e5ebf0;text-align:left}.startup-sources b,.startup-sources .primary-button{grid-column:1/-1}.startup-sources small{align-self:center;color:#8b99a7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.startup-sources .outline-button{padding:7px 8px}.startup-sources .primary-button{margin-top:4px}.upload-panel .primary-button{margin-top:12px}
.project-link{color:#236eaf;font-weight:700;cursor:pointer}.plan-due{display:flex;justify-content:space-between;margin-top:13px;padding:10px 12px;border-radius:7px;background:#eef7ff;color:#55738e;font-size:12px}.project-detail-summary{display:grid;grid-template-columns:repeat(3,1fr) 2fr;gap:1px;margin:4px 0 12px;background:#e4eaf0;border:1px solid #e4eaf0}.project-detail-summary div{padding:10px 12px;background:#f8fafc}.project-detail-summary small,.project-detail-summary b{display:block}.project-detail-summary small{color:#8090a0;font-size:10px}.project-detail-summary b{margin-top:4px;font-size:12px;line-height:1.5}
.drill-card,.drill-year{cursor:pointer}.drill-card:hover{outline:2px solid #bdd9f2}.plan-entry{color:#3476ad;cursor:pointer}.middle-scroll{border-top:1px solid #e8edf2;border-bottom:1px solid #e8edf2}.drill-summary{grid-template-columns:repeat(2,1fr);max-width:520px}
.viewport-scroll{display:none;position:fixed;left:252px;right:20px;bottom:8px;height:18px;overflow-x:auto;overflow-y:hidden;z-index:12;border:1px solid #b9cad8;border-radius:5px;background:#eef4f8;box-shadow:0 3px 12px rgba(32,50,71,.18)}.viewport-scroll.show{display:block}.viewport-scroll>div{height:1px}.filter-panel{grid-template-columns:1.6fr 1.3fr repeat(3,1fr) auto}
.status-dashboard{grid-template-columns:repeat(4,1fr);margin-top:16px}.mini-ranking{padding:0 18px 16px}.mini-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #eef2f5;font-size:12px}.mini-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-row b{color:#c96b25;white-space:nowrap}.status-filter{grid-template-columns:2fr 1fr auto}.plan-table table{table-layout:fixed;min-width:100%}.plan-table th{position:relative}.plan-table td{white-space:normal!important;word-break:break-word;line-height:1.5;vertical-align:top}
.owner-bar-chart{display:grid;gap:10px;padding:2px 18px 18px}.owner-bar-row{display:grid;grid-template-columns:72px 1fr 78px;gap:9px;align-items:center;font-size:12px}.owner-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#40556b}.owner-bar-track{height:12px;border-radius:999px;background:#eef3f7;overflow:hidden}.owner-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#3d8ad4,#ef8c36)}.owner-bar-value{text-align:right;color:#c96b25;font-variant-numeric:tabular-nums;font-size:11px;white-space:nowrap}
.owner-bar-label{cursor:pointer;font-weight:700}.owner-bar-label:hover{color:#236eaf;text-decoration:underline}.status-detail-row>td{background:#f7fbff!important;padding:0!important}.status-detail-box{padding:12px 16px;border-left:3px solid #6da8dc}.status-detail-box table{width:100%;min-width:100%;table-layout:fixed;border-collapse:collapse;background:#fff}.status-detail-box th,.status-detail-box td{position:relative;padding:9px 10px!important;border-bottom:1px solid #edf1f4;white-space:normal!important;word-break:break-word}.status-detail-scroll{max-height:330px}.status-project-row .project-link,.status-project-row .plan-entry{cursor:pointer}
#unsigned-table .money,#unsigned-table th:nth-child(6),#unsigned-table th:nth-child(7){text-align:center}
.lead-modal-box{max-height:88vh;display:flex;flex-direction:column}.lead-modal-box #lead-form{overflow-y:auto;padding-right:6px}.lead-modal-box .form-actions{position:sticky;bottom:0;background:#fff;padding-top:12px;padding-bottom:2px;border-top:1px solid #edf1f4}
.todo-plan-entry{cursor:pointer;color:#3476ad}.todo-plan-entry:hover{background:#eef7ff}
.project-table thead th,.task-modal thead th,.status-detail-box thead th{position:sticky;top:0;z-index:5;background:#f8fafc;box-shadow:0 2px 0 #dce5ed}.status-detail-box thead th{z-index:4}
#project-table-scroll,#unfinished-scroll,#unsigned-scroll{max-height:calc(100vh - 285px);overflow:auto}.project-table thead th{position:sticky!important;top:0!important;z-index:30!important;background:#f8fafc!important}.project-table{overflow:hidden}
.status-detail-scroll{max-height:300px;overflow:auto}.status-detail-box thead th{position:sticky!important;top:0!important;z-index:25!important;background:#f8fafc!important}
.modal-backdrop{z-index:100!important}
#task-modal{z-index:120!important}
#plan-modal,#lead-modal{z-index:140!important}
.table-scroller thead th small,.task-modal thead th small{display:block;margin-top:4px;color:#9aa8b4;font-size:10px;line-height:1.25;font-weight:400;white-space:normal}
.detail-plan-entry,.dashboard-plan-entry,.drill-plan-entry{color:#3476ad;cursor:pointer}
.detail-plan-entry:hover,.dashboard-plan-entry:hover,.drill-plan-entry:hover{background:#e8f4ff;text-decoration:underline}
.project-table thead th small{display:block;margin-top:4px;color:#9aa8b4;font-size:10px;line-height:1.25;font-weight:400;white-space:normal}
.project-table tbody tr.project-list-row td,.project-table tbody tr.status-project-row td{background:#f7fbff}
.project-table tbody tr.project-list-row:nth-child(even) td,.project-table tbody tr.status-project-row:nth-child(even) td{background:#eef7ff}
.project-table tbody tr.project-list-row:hover td,.project-table tbody tr.status-project-row:hover td{background:#e5f2ff}
#project-table-scroll,#unfinished-scroll,#unsigned-scroll{height:clamp(520px,calc(100vh - 245px),780px)!important;max-height:none!important;overflow:auto}
#task-detail-table th,#task-detail-table td{text-align:left!important;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere;vertical-align:top}
#task-detail-table{border-collapse:collapse!important}
#task-detail-table th,#task-detail-table td{border:1px solid #dfe6ec!important}
#task-detail-table .money{text-align:left!important}
#task-detail-table.receivable-task-detail-table tbody td{background:#fffaf2}
#task-detail-table.status-task-detail-table tbody td{background:#f7fff8}
#task-detail-table tbody tr:nth-child(even) td{filter:brightness(.985)}
.project-table table,.plan-table table,.task-modal table{border-collapse:collapse!important}
.project-table th,.project-table td,.plan-table th,.plan-table td,.task-modal th,.task-modal td{border:1px solid #d7e0e8!important}
.project-table thead th,.plan-table thead th,.task-modal thead th{background:#eef4f8!important;color:#526b82!important;box-shadow:none!important}
.project-table tbody td,.plan-table tbody td,.task-modal tbody td{border-color:#d7e0e8!important}
.product-line-table table{table-layout:fixed;min-width:1050px}
.product-line-table th:nth-child(1){width:150px}.product-line-table th:nth-child(2){width:250px}.product-line-table th:nth-child(3){width:260px}.product-line-table th:nth-child(4){width:280px}.product-line-table th:nth-child(5){width:110px}.product-line-table th:nth-child(6){width:120px}
.product-line-table td{white-space:normal!important;word-break:break-word;line-height:1.55;vertical-align:top}
.product-line-modal-box{max-height:90vh;overflow-y:auto}
#product-line-modal{z-index:140!important}
.product-line-filter{grid-template-columns:minmax(260px,420px) 90px!important}
.product-line-table table{width:100%!important;min-width:100%!important;table-layout:fixed!important}
.product-line-table th:nth-child(1){width:13%!important}.product-line-table th:nth-child(2){width:20%!important}.product-line-table th:nth-child(3){width:24%!important}.product-line-table th:nth-child(4){width:26%!important}.product-line-table th:nth-child(5){width:9%!important}.product-line-table th:nth-child(6){width:8%!important}
.product-line-table th,.product-line-table td{white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere;line-height:1.55;vertical-align:top}
#product-lines-scroll{max-height:calc(100vh - 285px);min-height:420px;overflow:auto}
#product-lines-table thead th{position:sticky!important;top:0!important;z-index:20!important;background:#eef4f8!important}
.product-line-lead-entry{color:#236eaf;font-weight:700;cursor:pointer}.product-line-lead-entry:hover{background:#e8f4ff}
.db-modal{max-height:92vh!important;overflow-y:auto!important;overscroll-behavior:contain}
.db-modal .modal-logo,.db-modal>h2,.db-modal>.eyebrow{position:relative}
.db-options{max-height:230px;overflow-y:auto;padding-right:4px}
.startup-sources{grid-template-columns:minmax(150px,1fr) minmax(150px,1fr)!important;align-items:center}
.startup-sources .outline-button{min-height:36px;white-space:normal}
@media(max-height:760px){.db-modal{padding:18px!important}.db-modal>p:not(.eyebrow){margin-bottom:10px!important}.startup-sources{margin:8px 0!important;padding:9px!important}.db-options{max-height:160px}}
@media(max-width:640px){.db-modal{width:94vw!important}.startup-sources{grid-template-columns:1fr!important}.startup-sources b,.startup-sources .primary-button{grid-column:1!important}}
.nav-list{min-height:0;overflow-y:auto}.shutdown-button{margin-top:8px;border-color:rgba(239,140,54,.65);color:#ffd5ad}
.direction-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.direction-head button{padding:3px 6px;border:1px solid #cbd9e5;border-radius:4px;background:#fff;color:#3974a8;font-size:10px}.product-line-table thead select{width:100%;margin-top:7px;padding:5px;border:1px solid #cbd9e5;border-radius:5px;background:#fff;color:#526b82;font-size:10px}
.simple-module-filter{grid-template-columns:minmax(320px,620px) 90px!important}.module-data-table table{min-width:1250px!important;table-layout:fixed!important}.module-data-table th,.module-data-table td{white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere;line-height:1.55;vertical-align:top}.module-data-table thead th{position:sticky!important;top:0!important;z-index:20!important;background:#eef4f8!important}.module-data-table th:nth-child(1){width:170px}.module-data-table th:nth-child(2){width:210px}.module-data-table th:nth-child(3){width:130px}.module-data-table th:nth-child(4),.module-data-table th:nth-child(5),.module-data-table th:nth-child(6){width:230px}.module-data-table th:nth-last-child(2){width:110px}.module-data-table th:last-child{width:110px}#project-reviews-scroll,#help-requests-scroll{max-height:calc(100vh - 285px);min-height:420px;overflow:auto}.module-edit-entry{color:#236eaf;font-weight:700;cursor:pointer}.module-edit-entry:hover{background:#e8f4ff}.module-edit-modal{max-height:90vh;overflow-y:auto}.module-edit-modal textarea,.module-edit-modal input{width:100%;padding:9px;border:1px solid #dbe3eb;border-radius:6px}.module-edit-modal textarea{resize:vertical}
#project-reviews-table,#help-requests-table{min-width:1000px!important}#project-reviews-table th:nth-child(1){width:100px}#project-reviews-table th:nth-child(2){width:230px}#project-reviews-table th:nth-child(3){width:420px}#project-reviews-table th:nth-child(4){width:280px}#project-reviews-table th:nth-child(5){width:110px}#help-requests-table th:nth-child(1),#help-requests-table th:nth-child(2){width:350px}#help-requests-table th:nth-child(3){width:300px}#help-requests-table th:nth-child(4){width:110px}#help-requests-table th:nth-child(5){width:110px}
.research-subject-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:15px;margin-bottom:14px}.research-subject-list{max-height:330px;overflow:auto;padding:0 14px 14px}.research-subject{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 8px;border-top:1px solid #edf1f4;background:#fff;text-align:left}.research-subject:hover{background:#eef6fe}.research-subject b,.research-subject small{display:block}.research-subject b{font-size:12px}.research-subject small{margin-top:4px;color:#8a99a8;font-size:10px}.research-subject em{color:#cf6c24;font-style:normal;font-weight:700;font-size:11px}.research-filter{grid-template-columns:2fr 1fr auto!important}#market-research-table{min-width:1700px!important}#market-research-scroll{max-height:calc(100vh - 360px);min-height:380px;overflow:auto}.research-edit-modal{width:min(720px,92vw)!important}.research-edit-modal form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.research-edit-modal form>label:nth-of-type(3),.research-edit-modal form>label:nth-of-type(9),.research-edit-modal form>label:nth-of-type(10),.research-edit-modal form>label:nth-of-type(11),.research-edit-modal .research-links,.research-edit-modal .form-actions{grid-column:1/-1}.research-links{display:flex;gap:8px;margin-top:14px}.module-data-table a{color:#236eaf}@media(max-width:1000px){.research-subject-grid{grid-template-columns:1fr}}
#market-insight-table{min-width:3300px!important;table-layout:fixed!important}
#market-insight-scroll{height:clamp(520px,calc(100vh - 300px),780px);overflow:auto}
#market-insight-table thead th{position:sticky!important;top:0!important;z-index:25!important;background:#eef4f8!important}
#market-insight-table th,#market-insight-table td{white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere;vertical-align:top;line-height:1.55}
#market-insight-table th:nth-child(1){width:220px}#market-insight-table th:nth-child(2){width:140px}
#market-insight-table th:nth-child(3){width:300px}#market-insight-table th:nth-child(4){width:240px}
#market-insight-table th:nth-child(5),#market-insight-table th:nth-child(7){width:145px}
#market-insight-table th:nth-child(6){width:300px}
#market-insight-table th:nth-child(8),#market-insight-table th:nth-child(9),#market-insight-table th:nth-child(10),#market-insight-table th:nth-child(14){width:155px}
#market-insight-table th:nth-child(11){width:110px}#market-insight-table th:nth-child(12){width:320px}
#market-insight-table th:nth-child(13){width:650px}#market-insight-table th:nth-child(15){width:120px}
#market-insight-table .market-content{min-width:520px}
#market-insight-table .market-content summary{cursor:pointer;color:#405d78;line-height:1.65}
#market-insight-table .market-content details[open] summary{margin-bottom:9px;color:#236eaf}
#market-insight-table .market-content details div{padding:10px;border-radius:6px;background:#f7fafc;white-space:pre-wrap}
.analysis-tabs{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;margin:14px 0 16px;overflow-x:auto}.analysis-tab{padding:10px 12px;border:1px solid #d7e0e8;border-radius:7px;background:#fff;color:#587087;font-weight:700;white-space:nowrap}.analysis-tab:hover{border-color:#8eb9df;background:#f4f9fe}.analysis-tab.active{border-color:#2878c3;background:#2878c3;color:#fff}.analysis-section{margin:0 0 30px}.analysis-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 2px 10px}.analysis-section-head h3{margin:0;color:#263f58;font-size:17px}.analysis-section-head p{margin:5px 0 0;color:#7d8d9e;font-size:11px}.analysis-section-head>b{color:#cf6c24;font-size:13px}.analysis-section-filter{grid-template-columns:minmax(260px,2fr) minmax(130px,1fr) minmax(130px,1fr) 105px auto auto!important;margin-bottom:10px}
.api-key-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:end;margin:12px 0}.api-key-panel label span{display:block;margin-bottom:6px;color:#6d7f91;font-size:12px}.api-key-panel input{width:100%}.api-key-panel #zhiliao-key-status{color:#5f7184;font-size:12px;white-space:nowrap;padding-bottom:10px}
.toolbar-select{display:grid;gap:4px;color:#6d7f91;font-size:10px}.toolbar-select select{height:36px;min-width:96px;padding:0 9px;border:1px solid #d7e0e8;border-radius:7px;background:#fff;color:#526b82}
.filter-panel select:focus,.toolbar-select select:focus{border-color:#4d91ce;box-shadow:0 0 0 3px rgba(40,120,208,.12);outline:0}
.analysis-table{width:100%!important;min-width:100%!important;table-layout:fixed!important;font-size:11px}
.analysis-scroll{height:clamp(440px,calc(100vh - 250px),720px);overflow:auto}
.analysis-table thead th{position:sticky!important;top:0!important;z-index:25!important;background:#eef4f8!important}
.analysis-table th,.analysis-table td{padding:7px 6px!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere;vertical-align:top;line-height:1.45}
.analysis-table th:nth-child(1){width:15%}.analysis-table th:nth-child(2){width:20%}.analysis-table th:nth-child(3){width:11%}
.analysis-table th:nth-child(4){width:12%}.analysis-table th:nth-child(5){width:8%}.analysis-table th:nth-child(6){width:10%}
.analysis-table th:nth-child(7){width:8%}.analysis-table th:nth-child(8){width:8%}.analysis-table th:nth-child(9){width:4%}.analysis-table th:nth-child(10){width:4%}
.analysis-table thead th small{font-size:8px;line-height:1.15}
.analysis-data-table{overflow:hidden}
.analysis-table .analysis-content{min-width:0}
.analysis-table .analysis-content summary{cursor:pointer;color:#405d78;line-height:1.65}
.analysis-table .analysis-content details[open] summary{margin-bottom:9px;color:#236eaf}
.analysis-table .analysis-content details div{padding:10px;border-radius:6px;background:#f7fafc;white-space:pre-wrap}
#bid-follows-table{min-width:1900px!important;table-layout:fixed!important;border-collapse:collapse!important}
#bid-follows-scroll{height:clamp(420px,calc(100vh - 300px),680px);overflow:auto}
#bid-follows-table thead th{position:sticky!important;top:0!important;z-index:24!important;background:#eef4f8!important}
#bid-follows-table th,#bid-follows-table td{position:relative;padding:8px 9px!important;border:1px solid #d7e0e8!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere;vertical-align:top;line-height:1.5}
#bid-follows-table th:nth-child(1){width:170px}#bid-follows-table th:nth-child(2){width:210px}#bid-follows-table th:nth-child(3){width:300px}#bid-follows-table th:nth-child(4){width:190px}#bid-follows-table th:nth-child(5){width:135px}#bid-follows-table th:nth-child(6){width:190px}#bid-follows-table th:nth-child(7){width:135px}#bid-follows-table th:nth-child(8){width:120px}#bid-follows-table th:nth-child(9){width:145px}#bid-follows-table th:nth-child(10){width:110px}#bid-follows-table th:nth-child(11){width:300px}#bid-follows-table th:nth-child(12){width:150px}#bid-follows-table th:nth-child(13){width:110px}
.bid-follow-progress{width:100%;min-height:72px;padding:7px 8px;border:1px solid #cbd9e5;border-radius:6px;resize:vertical;color:#40556b;background:#fff}.bid-follow-progress:focus{border-color:#4d91ce;box-shadow:0 0 0 3px rgba(40,120,208,.12);outline:0}
.lead-filter{grid-template-columns:minmax(260px,1.7fr) 130px 150px 150px 86px!important}.lead-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:-4px 0 14px}.lead-summary div{padding:12px 16px;border:1px solid #e2e9f0;border-radius:9px;background:#fff;box-shadow:0 3px 12px rgba(34,56,78,.04)}.lead-summary small,.lead-summary b,.lead-summary span{display:block}.lead-summary small{color:#7b8d9f;font-size:11px}.lead-summary b{margin-top:4px;color:#263f58}.lead-summary span{margin-top:4px;color:#cf6c24;font-weight:700;font-size:12px}
#leads-table{min-width:1300px!important;table-layout:fixed!important}#leads-table th:nth-child(1){width:15%}#leads-table th:nth-child(2){width:17%}#leads-table th:nth-child(3){width:8%}#leads-table th:nth-child(4){width:8%}#leads-table th:nth-child(5){width:10%}#leads-table th:nth-child(6){width:24%}#leads-table th:nth-child(7){width:8%}#leads-table th:nth-child(8){width:10%}#leads-table th:nth-child(9){width:9%}.lead-progress-entry,.product-line-progress-entry,.product-line-plan-entry,.project-review-content-entry,.project-review-experience-entry,.help-current-entry,.help-requirement-entry,.help-optimization-entry{cursor:text;color:#315c80}.lead-progress-entry:hover,.product-line-progress-entry:hover,.product-line-plan-entry:hover,.project-review-content-entry:hover,.project-review-experience-entry:hover,.help-current-entry:hover,.help-requirement-entry:hover,.help-optimization-entry:hover{background:#e8f4ff}
.inline-editor{width:100%;min-height:58px;padding:7px 8px;border:1px solid #79aeda;border-radius:6px;background:#fff;color:#263f58;resize:vertical}.lead-stage-select,.help-level-select{width:100%;height:30px;border:1px solid #cbd9e5;border-radius:6px;background:#fff;color:#526b82}.lead-stage-select{border:2px solid #6da8dc;background:#eef7ff;color:#236eaf;font-weight:700}
.compact-head-select{width:100%;height:26px;margin-top:4px;padding:2px 6px;border:1px solid #cbd9e5;border-radius:5px;background:#fff;color:#526b82;font-size:10px}.product-line-table thead select.compact-head-select{margin-top:4px;padding:2px 6px}
.key-input-wrap{display:flex;align-items:center;gap:6px}.key-input-wrap input{flex:1}.key-input-wrap .icon-button{height:36px;padding:0 9px;border:1px solid #d7e0e8;border-radius:6px;background:#fff;white-space:nowrap}.api-key-panel{grid-template-columns:minmax(260px,1fr) auto auto minmax(160px,auto)!important}
.ai-key-panel{margin-bottom:14px}.ai-search-layout{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(460px,1.15fr);gap:15px}.ai-query-body{padding:0 20px 20px}.ai-query-body label{display:block;margin-bottom:14px}.ai-query-body label span{display:block;margin-bottom:6px;color:#6f8193;font-size:12px}.ai-query-body select,.ai-query-body textarea{width:100%;border:1px solid #dbe3eb;border-radius:7px;padding:9px;color:#40556b;background:#fff;outline-color:#7cb1e2}.ai-query-body textarea{min-height:330px;resize:vertical;line-height:1.6}.ai-input-tip{display:block;color:#8a99a8;font-size:11px}.ai-search-actions{margin-top:14px}.ai-result-panel{min-height:520px}.ai-result-content{height:calc(100vh - 255px);min-height:395px;overflow:auto;padding:18px 20px;border-top:1px solid #edf1f4;white-space:pre-wrap;word-break:break-word;line-height:1.75;color:#263f58;background:#fbfcfd}.ai-result-content .empty-state{white-space:normal}.nav-item[data-page="ai-search"] span{font-size:12px;font-weight:700}
.ai-query-body input{width:100%;border:1px solid #dbe3eb;border-radius:7px;padding:9px;color:#40556b;background:#fff;outline-color:#7cb1e2}.hidden-field{display:none!important}.nav-item[data-page="baidu-ai-search"] span{font-weight:700}
.baidu-feature-block{margin-top:16px}.baidu-feature-block .analysis-section-head{margin:0 0 10px}.ai-option-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:12px}.inline-check{display:flex!important;align-items:center;gap:8px;margin:2px 0 12px!important;color:#607289}.inline-check input{width:auto!important}.inline-check span{margin:0!important}.baidu-generated-answer{white-space:pre-wrap}.baidu-reference-section{margin-top:18px;border-top:1px solid #e2e9f0;padding-top:12px}.baidu-reference-section h4{margin:0 0 10px;color:#526b82;font-size:13px}.baidu-reference-list{display:grid;gap:10px}.baidu-reference-item{padding:11px 12px;border:1px solid #dde7ef;border-radius:8px;background:#fff}.baidu-reference-title{display:flex;align-items:flex-start;gap:8px;font-weight:700}.baidu-reference-title span{display:grid;place-items:center;flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:#e9f3fd;color:#2c77bf;font-size:11px}.baidu-reference-title a{color:#236eaf;text-decoration:none}.baidu-reference-title a:hover{text-decoration:underline}.baidu-reference-item p{margin:7px 0;color:#526b82;line-height:1.6}.baidu-reference-item small{display:block;color:#8b99a7}.baidu-web-result{height:calc(100vh - 255px);min-height:395px;overflow:auto;padding:18px 20px;border-top:1px solid #edf1f4;background:#fbfcfd}.baidu-web-layout .ai-query-body textarea{min-height:150px}
.baidu-thinking-box,.baidu-thinking-result{padding:12px 14px;margin-bottom:14px;border:1px solid #d8e8f7;border-radius:8px;background:#eef7ff;color:#405d78}.baidu-thinking-box h4{margin:0 0 8px}.baidu-thinking-box p{margin:0 0 7px;font-weight:700}.baidu-thinking-box small{color:#6e8397}.baidu-thinking-result summary{cursor:pointer;font-weight:700;color:#236eaf}.baidu-thinking-result div{margin-top:9px;line-height:1.65}.baidu-citation{display:inline-block;margin:0 2px;padding:0 4px;border-radius:4px;background:#e9f3fd;color:#236eaf!important;text-decoration:none;font-weight:700}.baidu-citation:hover{text-decoration:underline;background:#d7ebff}.baidu-generated-answer a{color:#236eaf}
.review-tabs{display:flex;gap:8px;margin:0 0 14px}.review-tab{padding:9px 17px;border:1px solid #d7e0e8;border-radius:7px;background:#fff;color:#587087;font-weight:700}.review-tab.active{border-color:#2878c3;background:#2878c3;color:#fff}.review-sub-toolbar{margin-top:0}.bid-review-filter{grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) 130px auto!important}.bid-review-table{overflow:hidden}.bid-review-table table{width:100%!important;min-width:100%!important;table-layout:fixed!important;border-collapse:collapse}.bid-review-table th,.bid-review-table td{padding:8px 7px!important;border:1px solid #d7e0e8!important;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere;vertical-align:top;font-size:11px}.bid-review-table thead th{position:sticky;top:0;z-index:20;background:#eef4f8!important;color:#526b82}.bid-review-table th:nth-child(1){width:8%}.bid-review-table th:nth-child(2){width:11%}.bid-review-table th:nth-child(3){width:13%}.bid-review-table th:nth-child(4){width:8%}.bid-review-table th:nth-child(5){width:8%}.bid-review-table th:nth-child(6){width:8%}.bid-review-table th:nth-child(7){width:17%}.bid-review-table th:nth-child(8){width:8%}.bid-review-table th:nth-child(9){width:13%}.bid-review-table th:nth-child(10){width:6%}#bid-reviews-scroll{height:clamp(520px,calc(100vh - 330px),760px);overflow-y:auto;overflow-x:hidden}.bid-review-content{position:relative;white-space:pre-wrap;line-height:1.55;cursor:zoom-out}.bid-review-content.collapsed{max-height:3.1em;overflow:hidden;cursor:zoom-in}.bid-review-content.collapsed:after{content:"双击展开";position:absolute;right:0;bottom:0;padding-left:18px;background:linear-gradient(90deg,rgba(255,255,255,0),#fff 24%);color:#2d78b9;font-size:9px}.bid-review-edit-entry,.bid-review-improvement-entry{cursor:text}.bid-review-edit-entry:hover,.bid-review-improvement-entry:hover{background:#e8f4ff}.bid-review-source{margin-top:10px}.bid-review-edit-modal{width:min(780px,92vw);max-height:90vh;overflow:auto}.bid-review-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.bid-review-form-grid .wide-field{grid-column:1/-1}
#project-reviews-table,#help-requests-table{width:100%!important;min-width:100%!important;table-layout:fixed!important}#project-reviews-table th:nth-child(1){width:10%!important}#project-reviews-table th:nth-child(2){width:20%!important}#project-reviews-table th:nth-child(3){width:34%!important}#project-reviews-table th:nth-child(4){width:26%!important}#project-reviews-table th:nth-child(5){width:10%!important}#help-requests-table th:nth-child(1){width:29%!important}#help-requests-table th:nth-child(2){width:28%!important}#help-requests-table th:nth-child(3){width:27%!important}#help-requests-table th:nth-child(4){width:8%!important}#help-requests-table th:nth-child(5){width:8%!important}#project-reviews-table td:nth-child(3),#help-requests-table td:nth-child(3){min-width:0!important}
.backup-panel{margin-top:15px;overflow:hidden}.backup-panel-title{align-items:center}.backup-location{margin:0 20px 12px}.backup-table-scroll{max-height:420px;overflow:auto;border-top:1px solid #e4e9ef}.backup-table{width:100%;min-width:980px;border-collapse:collapse;font-size:12px}.backup-table th,.backup-table td{padding:10px 12px;border:1px solid #d7e0e8;text-align:left;white-space:normal;word-break:break-word}.backup-table thead th{position:sticky;top:0;z-index:5;background:#eef4f8;color:#526b82}.backup-table td:nth-child(1),.backup-table td:nth-child(5),.backup-table td:nth-child(6){white-space:nowrap}.backup-table .backup-ok{color:#258056;font-weight:700}.backup-table .backup-actions{display:flex;gap:5px;white-space:nowrap}.backup-table .restore-backup{color:#c56522}.backup-table .download-backup{color:#236eaf;text-decoration:none}
@media(max-width:1200px){.analysis-section-filter{grid-template-columns:repeat(2,minmax(180px,1fr))!important}}
.briefing-config-panel{padding:18px 20px;margin-bottom:16px}.briefing-config-grid{display:grid;grid-template-columns:1.1fr 1.6fr .7fr .9fr;gap:12px}.briefing-key-grid{display:grid;grid-template-columns:minmax(280px,1fr) auto auto minmax(360px,1.35fr) auto;gap:12px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid #edf1f4}.briefing-config-panel label span{display:block;margin-bottom:6px;color:#6f8193;font-size:12px}.briefing-config-panel input,.briefing-config-panel select{width:100%;height:38px;border:1px solid #dbe3eb;border-radius:7px;padding:0 10px;color:#40556b;background:#fff;outline-color:#7cb1e2}.briefing-key-grid .key-input-wrap{display:flex;gap:7px;align-items:center}.briefing-key-grid .key-input-wrap input{flex:1}.briefing-status{margin:13px 0 0;color:#607289;line-height:1.6}.policy-briefing-progress{margin-top:12px;padding:12px 14px;border:1px solid #d8e6f3;border-radius:10px;background:#f7fbff;color:#294963;text-align:left;max-height:260px;overflow:auto}.policy-briefing-progress-bar{height:8px;border-radius:999px;background:#dfecf8;overflow:hidden;margin:8px 0 10px}.policy-briefing-progress-bar span{display:block;height:100%;background:#2d7dcc}.policy-briefing-progress-log{display:grid;gap:8px}.policy-briefing-progress-item{padding:8px 10px;border-radius:8px;background:#fff;border:1px solid #e2edf7}.policy-briefing-progress-item small{display:block;color:#8192a4;margin-bottom:3px}.policy-briefing-progress-item.thinking{background:#eef7ff;border-color:#cfe3f7}.policy-briefing-progress-item.reasoning{background:#fff8eb;border-color:#f1d7a8}.policy-briefing-reader{overflow:hidden}.policy-briefing-result{min-height:520px;max-height:calc(100vh - 360px);overflow:auto;padding:18px 22px;border-top:1px solid #edf1f4;background:#fbfcfd;color:#263f58;line-height:1.75;white-space:normal}.policy-briefing-error{border:1px solid #f0b7b7;background:#fff6f6;color:#8a2f2f;border-radius:10px;padding:18px 20px;line-height:1.7}.policy-briefing-error h3{margin:0 0 8px;color:#8a2f2f}.policy-briefing-error p{white-space:pre-wrap}.policy-briefing-result h1,.policy-briefing-result h2,.policy-briefing-result h3{color:#173552}.policy-briefing-result blockquote{margin:10px 0;padding:9px 12px;border-left:4px solid #7eb2df;background:#eef7ff;color:#526b82}.policy-briefing-result a{color:#1268b3;text-decoration:none;word-break:break-all}.policy-briefing-result a:hover{text-decoration:underline}@media(max-width:1200px){.briefing-config-grid,.briefing-key-grid{grid-template-columns:1fr}.briefing-key-grid .key-input-wrap{flex-wrap:wrap}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--navy);color:#d9e5f0;display:flex;flex-direction:column;padding:24px 16px}.brand{display:flex;align-items:center;gap:11px;padding:0 6px 26px}.brand-mark,.modal-logo{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#e28a34;color:#fff;font-weight:700}.brand strong,.brand span{display:block}.brand strong{font-size:15px;color:#fff}.brand span{font-size:11px;color:#94abc0;margin-top:4px}.nav-list{display:grid;gap:5px}.nav-item{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:8px;background:transparent;color:#b8cadd;text-align:left}.nav-item span{font-size:17px;width:16px}.nav-item:hover,.nav-item.active{background:var(--navy-2);color:#fff}.sidebar-bottom{margin-top:auto}.db-mini{display:flex;gap:10px;align-items:center;border-top:1px solid rgba(255,255,255,.1);padding:16px 3px}.db-mini small,.db-mini strong{display:block}.db-mini small{color:#8fa7bd;font-size:11px}.db-mini strong{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:12px;margin-top:3px}.status-dot{width:9px;height:9px;border-radius:50%;background:#54d395;box-shadow:0 0 0 4px rgba(84,211,149,.15)}.main-content{margin-left:232px;width:calc(100% - 232px);padding:0 34px 34px}.topbar{height:88px;display:flex;justify-content:space-between;align-items:center}.eyebrow{margin:0;color:#8a9bad;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.topbar h1{font-size:22px;margin:4px 0 0}.top-actions,.toolbar-actions{display:flex;gap:14px;align-items:center}.global-search,.inline-search{display:flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:#9aabba}.global-search{width:275px;height:40px}.inline-search{height:38px}.global-search input,.inline-search input{border:0;outline:0;width:100%;color:var(--ink)}.today{border-left:1px solid var(--line);padding-left:15px}.today small,.today b{display:block}.today small{color:var(--muted);font-size:10px}.today b{font-size:12px;margin-top:3px}.page{display:none}.page.active{display:block}.welcome{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-radius:12px;background:linear-gradient(120deg,#19334f,#2b5679);color:#fff;box-shadow:var(--shadow)}.welcome h2{margin:5px 0 7px;font-size:23px}.welcome p{margin:0;color:#d7e3ec}.welcome-meta{display:flex;gap:34px}.welcome-meta div{text-align:center}.welcome-meta span,.welcome-meta small{display:block}.welcome-meta span{font-size:21px;font-weight:700}.welcome-meta small{color:#b9d0e1;margin-top:6px;font-size:11px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.kpi-card{display:flex;gap:13px;align-items:center;background:#fff;border-radius:10px;padding:17px 16px;box-shadow:var(--shadow)}.kpi-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;font-size:17px;font-weight:700}.kpi-icon.blue{background:#e6f1fc;color:var(--blue)}.kpi-icon.orange{background:#fdf0e4;color:var(--orange)}.kpi-icon.green{background:#e7f6ef;color:var(--green)}.kpi-icon.purple{background:#eeeafa;color:var(--purple)}.kpi-card small,.kpi-card strong,.kpi-card em{display:block}.kpi-card small{color:var(--muted);font-size:11px}.kpi-card strong{font-size:20px;margin:5px 0 4px}.kpi-card em{color:#94a0ad;font-size:10px;font-style:normal}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.panel{background:#fff;border:1px solid #edf0f3;border-radius:10px;box-shadow:0 4px 14px rgba(34,56,78,.045)}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px 12px}.panel-title h3{font-size:15px;margin:0}.panel-title p{color:var(--muted);font-size:11px;margin:5px 0 0}.chip,.tag{border-radius:20px;padding:6px 10px;background:#f4f7fa;color:#607289;font-size:11px}.bar-chart{height:237px;display:flex;align-items:flex-end;gap:18px;padding:22px 22px 22px 28px;border-top:1px solid #f2f4f7}.bar-group{display:flex;flex:1;height:100%;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}.bar{position:relative;width:26px;border-radius:5px 5px 0 0;background:linear-gradient(180deg,#4b91d8,#2b6eb6);min-height:12px}.bar:hover{background:linear-gradient(180deg,#eb9b51,#d97a24)}.bar b{display:none;position:absolute;top:-30px;left:50%;transform:translateX(-50%);padding:4px 6px;border-radius:4px;background:var(--navy);color:#fff;white-space:nowrap;font-size:10px}.bar:hover b{display:block}.bar-group span{color:#8b98a8;font-size:11px}.ranking-panel{overflow:hidden}.ranking-row{display:grid;grid-template-columns:22px 1fr auto;gap:9px;align-items:center;padding:8px 18px}.ranking-row:hover{background:#f8fafc}.rank-number{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#eef3f8;color:#7c8c9e;font-size:10px}.ranking-row:nth-child(-n+3) .rank-number{background:#fff0df;color:#dd7e27}.ranking-row strong{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.ranking-row small{color:#96a3b0;font-size:10px}.ranking-row em{font-style:normal;font-weight:700;color:#cf6f26;font-size:12px}.text-button{background:transparent;color:var(--blue);font-size:12px}.primary-button,.outline-button,.ghost-button{border-radius:7px;padding:9px 14px;font-weight:700;font-size:12px}.primary-button{background:var(--blue);color:#fff}.primary-button:hover{background:#1c67b8}.outline-button{border:1px solid #d7e0e8;background:#fff;color:#587087}.ghost-button{border:1px solid rgba(255,255,255,.18);background:transparent;color:#dce9f4}.full{width:100%}.plan-preview{margin-top:16px}.compact-table{padding:0 20px 16px}.table-row{display:grid;grid-template-columns:1.25fr 1fr 2.4fr 70px;gap:14px;padding:11px 8px;border-top:1px solid #eef1f4;align-items:center;font-size:12px}.table-head{color:#91a0ad;font-size:11px}.state-pill{display:inline-block;border-radius:16px;padding:4px 8px;background:#e8f6ef;color:#258056;font-size:10px;text-align:center}.page-toolbar{display:flex;align-items:center;justify-content:space-between;margin:7px 0 16px}.page-toolbar h2{margin:0;font-size:20px}.page-toolbar p{color:var(--muted);margin:6px 0 0;font-size:12px}.receivable-summary{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:14px}.receivable-summary div{padding:15px 20px;border-right:1px solid var(--line)}.receivable-summary div:last-child{border-right:0}.receivable-summary small,.receivable-summary strong{display:block}.receivable-summary small{color:var(--muted);font-size:11px}.receivable-summary strong{margin-top:5px;font-size:18px}.split-layout{display:grid;grid-template-columns:335px 1fr;gap:15px}.client-list{height:586px;overflow:auto}.list-header{display:flex;justify-content:space-between;padding:16px 17px 10px}.list-header small{color:var(--muted)}.client-item{display:block;width:100%;padding:12px 16px;border-top:1px solid #edf1f4;background:#fff;text-align:left}.client-item:hover,.client-item.active{background:#eef6fe}.client-item b,.client-item small{display:block}.client-item b{max-width:298px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.client-item small{margin-top:5px;color:#d26f25}.debt-detail{min-height:586px}.detail-hero{padding:20px;border-bottom:1px solid var(--line)}.detail-hero h3{margin:0 0 7px;font-size:18px}.detail-hero p{margin:0;color:var(--muted);font-size:12px}.detail-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.detail-kpis div{background:#fbfcfd;padding:12px 20px}.detail-kpis small,.detail-kpis b{display:block}.detail-kpis small{color:var(--muted);font-size:10px}.detail-kpis b{margin-top:4px}.project-tree{padding:12px 20px}.project-node{border:1px solid var(--line);border-radius:7px;margin-bottom:9px;overflow:hidden}.project-node summary{display:flex;justify-content:space-between;padding:12px 13px;background:#f9fbfd;cursor:pointer;font-weight:700;font-size:12px}.task-line{display:grid;grid-template-columns:125px 1fr 90px;gap:8px;padding:10px 13px;border-top:1px solid var(--line);font-size:11px}.task-line span:last-child{text-align:right;color:#d06b22;font-weight:700}.filter-panel{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:12px;padding:16px;margin-bottom:14px}.filter-panel label span{display:block;margin-bottom:6px;color:var(--muted);font-size:11px}.filter-panel input,.filter-panel select{width:100%;height:36px;border:1px solid #dce4eb;border-radius:6px;padding:0 9px;color:#55677b;background:#fff}.filter-panel button{align-self:end;height:36px}.table-scroller{overflow:auto}.project-table table,.plan-table table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.project-table th,.project-table td,.plan-table th,.plan-table td{padding:12px 13px;border-bottom:1px solid #edf1f4;white-space:nowrap}.project-table th,.plan-table th{background:#f8fafc;color:#7e8d9c;font-size:11px}.project-table td:nth-child(4){max-width:330px;overflow:hidden;text-overflow:ellipsis}.money{font-variant-numeric:tabular-nums;text-align:right}.debt{color:#cf6c24;font-weight:700}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;color:#8998a6;font-size:11px}.pagination div{display:flex;gap:4px}.pagination button,.pagination b{display:grid;place-items:center;width:26px;height:24px;border:1px solid #e1e7ec;background:#fff;border-radius:4px;color:#708294;font-size:11px}.pagination b{background:var(--blue);color:#fff}.notice{display:flex;gap:12px;padding:12px 16px;margin-bottom:14px;border:1px solid #d9e8f7;border-radius:8px;background:#eef7ff;color:#54728f;font-size:12px}.notice b{color:#246aa7}.plan-table td:nth-child(3){min-width:370px;white-space:normal;line-height:1.55}.icon-button{padding:3px 7px;background:transparent;color:var(--blue);font-size:12px}.delete-button{color:#cc6b61}.update-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:15px}.upload-panel{display:flex;flex-direction:column;align-items:center;padding:30px;text-align:center}.upload-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:10px;border-radius:50%;background:#e9f3fd;color:var(--blue);font-size:27px}.upload-panel h3{margin:5px 0}.upload-panel p{max-width:500px;margin:4px 0 17px;color:var(--muted);font-size:12px}.upload-panel small{margin-top:12px;color:#98a4af}.green-tag{background:#e8f6ef;color:#258056}.db-details{padding:0 20px 16px}.db-details div{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line);font-size:12px}.db-details span{color:var(--muted)}.field-map{margin-top:15px}.field-tags{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 20px}.field-tags span{padding:7px 10px;border-radius:5px;background:#f0f5fa;color:#557086;font-size:11px}.modal-backdrop{position:fixed;inset:0;display:none;place-items:center;background:rgba(12,28,45,.58);z-index:20}.modal-backdrop.show{display:grid}.modal{border-radius:13px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.2)}.db-modal{width:520px;padding:28px;text-align:center}.modal-logo{margin:0 auto 13px}.db-modal h2{margin:8px 0 5px;font-size:21px}.db-modal>p:not(.eyebrow){margin:0 auto 19px;max-width:390px;color:var(--muted);line-height:1.6;font-size:12px}.db-options{display:grid;gap:9px;margin:0 0 17px}.db-option{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left}.db-option.selected{border-color:#73abe1;background:#f1f8ff}.db-file{display:grid;place-items:center;width:39px;height:39px;border-radius:7px;background:#e3f0fd;color:#2c77bf;font-size:11px;font-weight:700}.db-file.secondary{background:#f0f3f6;color:#8190a0;font-size:18px}.db-option span:nth-child(2){flex:1}.db-option b,.db-option small{display:block}.db-option small{margin-top:5px;color:#8e9ba8;font-size:10px}.db-option i{color:#3283ce}.modal-confirm{width:100%;padding:11px;margin-bottom:11px}.plan-modal{width:520px;padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0;font-size:18px}.modal-head button{background:transparent;color:#82909d;font-size:24px}.plan-modal label{display:block;margin-top:15px}.plan-modal label span{display:block;margin-bottom:6px;color:#6f8193;font-size:12px}.plan-modal input,.plan-modal textarea{width:100%;padding:9px;border:1px solid #dbe3eb;border-radius:6px;resize:vertical;outline-color:#7cb1e2}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}@media(max-width:1100px){.main-content{padding:0 20px 25px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.welcome-meta{gap:18px}.split-layout{grid-template-columns:285px 1fr}.filter-panel{grid-template-columns:repeat(2,1fr)}}
.policy-briefing-result,.policy-md-preview{font-size:14px;line-height:1.82;color:#20364c;background:#fff}.policy-briefing-result>*:first-child,.policy-md-preview>*:first-child{margin-top:0}.policy-briefing-result h1,.policy-md-preview h1{margin:0 0 20px;padding:0 0 16px;border-bottom:2px solid #dfe9f2;color:#102a43;font-size:28px;line-height:1.28;font-weight:800}.policy-briefing-result h2,.policy-md-preview h2{margin:30px 0 14px;padding:10px 0 9px;border-bottom:1px solid #dce7f1;color:#173552;font-size:20px;line-height:1.35;font-weight:800}.policy-briefing-result h3,.policy-md-preview h3{margin:24px 0 10px;padding:0 0 0 10px;border-left:4px solid #2f7ec7;color:#224762;font-size:16px;line-height:1.45;font-weight:800}.policy-briefing-result p,.policy-md-preview p{margin:9px 0;max-width:1120px}.policy-briefing-result hr,.policy-md-preview hr{height:1px;margin:22px 0;border:0;background:#e5edf4}.policy-briefing-result strong,.policy-md-preview strong{color:#112f4a;font-weight:800}.policy-briefing-result a,.policy-md-preview a{color:#176fb7;text-decoration:none;border-bottom:1px solid rgba(23,111,183,.25);overflow-wrap:anywhere}.policy-briefing-result a:hover,.policy-md-preview a:hover{color:#0d5897;border-bottom-color:#0d5897}.policy-briefing-result ul,.policy-briefing-result ol,.policy-md-preview ul,.policy-md-preview ol{margin:8px 0 16px;padding-left:24px}.policy-briefing-result li,.policy-md-preview li{margin:7px 0;padding-left:3px}.policy-briefing-result blockquote,.policy-md-preview blockquote{margin:14px 0;padding:10px 14px;border-left:4px solid #d28632;background:#fff8ec;color:#4d6072}.policy-briefing-table-wrap{width:100%;overflow:auto;margin:14px 0 22px;border:1px solid #dce6ef;border-radius:8px;background:#fff}.policy-briefing-table{width:100%;min-width:980px;border-collapse:collapse;font-size:13px}.policy-briefing-table th,.policy-briefing-table td{padding:10px 12px;border:1px solid #dce6ef;vertical-align:top;text-align:left;line-height:1.65;white-space:normal;word-break:break-word}.policy-briefing-table th{background:#eef5fa;color:#214761;font-weight:800}.policy-briefing-table tr:nth-child(even) td{background:#fafcfe}.policy-briefing-result h2+ol,.policy-briefing-result h2+ul,.policy-md-preview h2+ol,.policy-md-preview h2+ul{padding:10px 16px 10px 34px;border:1px solid #e0eaf2;border-radius:8px;background:#f8fbfd}.policy-briefing-result h2+ol li,.policy-briefing-result h2+ul li,.policy-md-preview h2+ol li,.policy-md-preview h2+ul li{margin:8px 0}.policy-briefing-result p:has(strong:first-child),.policy-md-preview p:has(strong:first-child){padding:8px 10px;border-left:3px solid #8fb8dd;background:#f7fbff}
.policy-md-browser{overflow:hidden}
.policy-md-browser-layout{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:620px;border-top:1px solid #edf1f4;background:#fff;transition:grid-template-columns .18s ease}
.policy-md-file-list{min-width:0;max-height:calc(100vh - 245px);overflow:auto;padding:14px;border-right:1px solid #edf1f4;background:#f8fbfd;transition:padding .18s ease,opacity .18s ease}
.policy-md-file{display:block;width:100%;margin:0 0 10px;padding:12px 13px;border:1px solid transparent;border-radius:8px;background:#fff;color:#173552;text-align:left;box-shadow:0 1px 4px rgba(34,56,78,.04)}
.policy-md-file:hover{border-color:#b7d5ef;background:#f5faff}
.policy-md-file.active{border-color:#8fc0ea;background:#eef7ff}
.policy-md-file b,.policy-md-file span,.policy-md-file small{display:block}
.policy-md-file b{font-size:13px;line-height:1.45;word-break:break-word}
.policy-md-file span,.policy-md-file small{margin-top:6px;color:#718096;font-size:11px}
.policy-md-file em{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;background:#e8f1fb;color:#2b73af;font-size:10px;font-style:normal}
.policy-md-preview{min-width:0;max-height:calc(100vh - 245px);overflow:auto;padding:26px 32px}
.policy-md-browser-layout.history-sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}
.policy-md-browser-layout.history-sidebar-collapsed .policy-md-file-list{padding:0;border-right:0;opacity:0;overflow:hidden}
.analysis-scan-progress{margin:-4px 0 14px;padding:12px 16px;border:1px solid #d8e8f7;border-radius:9px;background:#f7fbff;color:#294963}
.analysis-scan-progress-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.analysis-scan-progress-head b{font-size:13px;color:#173552}
.analysis-scan-progress-head span{font-weight:700;color:#236eaf;font-variant-numeric:tabular-nums}
.analysis-scan-progress-bar{height:9px;border-radius:999px;background:#dfecf8;overflow:hidden}
.analysis-scan-progress-bar span{display:block;width:0;height:100%;border-radius:999px;background:#2d7dcc;transition:width .25s ease}
.analysis-scan-progress p{margin:8px 0 0;color:#607289;font-size:12px;line-height:1.5}
.key-customer-filter{grid-template-columns:minmax(280px,1.5fr) minmax(220px,1fr) minmax(180px,.8fr) 86px!important}.key-customer-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:-2px 0 14px}.key-customer-summary div{padding:12px 16px;border:1px solid #e2e9f0;border-radius:8px;background:#fff;box-shadow:0 3px 12px rgba(34,56,78,.04)}.key-customer-summary small,.key-customer-summary b{display:block}.key-customer-summary small{color:#7b8d9f;font-size:11px}.key-customer-summary b{margin-top:4px;color:#263f58}.section-mini-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid #edf1f4}.section-mini-head h3{margin:0;font-size:15px}.section-mini-head span{color:#8495a6;font-size:11px}.key-customer-visit-table{margin-bottom:14px}.key-customer-visit-table table{min-width:1500px!important;table-layout:fixed!important}.key-customer-visit-table th:nth-child(1){width:110px}.key-customer-visit-table th:nth-child(2){width:220px}.key-customer-visit-table th:nth-child(3){width:170px}.key-customer-visit-table th:nth-child(4){width:110px}.key-customer-visit-table th:nth-child(5){width:110px}.key-customer-visit-table th:nth-child(6){width:360px}.key-customer-visit-table th:nth-child(7){width:260px}.key-customer-visit-table th:nth-child(8){width:260px}.key-customer-visit-table th:nth-child(9){width:110px}.key-customer-contact-table table{min-width:1350px!important;table-layout:fixed!important}.key-customer-contact-table th:nth-child(1){width:220px}.key-customer-contact-table th:nth-child(2){width:170px}.key-customer-contact-table th:nth-child(3){width:110px}.key-customer-contact-table th:nth-child(4){width:160px}.key-customer-contact-table th:nth-child(5),.key-customer-contact-table th:nth-child(6){width:140px}.key-customer-contact-table th:nth-child(7){width:90px}.key-customer-contact-table th:nth-child(8){width:110px}.key-customer-contact-table th:nth-child(9){width:260px}.key-customer-contact-table th:nth-child(10){width:110px}#key-customer-visits-scroll{max-height:calc(100vh - 410px);min-height:260px;overflow:auto}#key-customer-contacts-scroll{max-height:360px;overflow:auto}.key-customer-edit-entry{cursor:text;color:#315c80}.key-customer-edit-entry:hover{background:#e8f4ff}.key-customer-contact-name{color:#236eaf;font-weight:700}.key-customer-modal{width:min(820px,94vw)!important;max-height:90vh;overflow:auto}.key-customer-modal form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.key-customer-modal .wide-field,.key-customer-modal .form-actions{grid-column:1/-1}.key-customer-modal select,.key-customer-modal input,.key-customer-modal textarea{width:100%;padding:9px;border:1px solid #dbe3eb;border-radius:6px;background:#fff;color:#40556b}
.key-customer-manager-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px;margin:-2px 0 14px}.key-customer-stat-panel{padding:14px 16px}.key-customer-stat-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.key-customer-stat-head h3{margin:0;color:#173552;font-size:15px}.key-customer-stat-head span{color:#8495a6;font-size:11px}.key-customer-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.key-customer-stat-grid div{padding:8px;border:1px solid #e4ebf1;border-radius:6px;background:#f9fbfd}.key-customer-stat-grid small,.key-customer-stat-grid b{display:block}.key-customer-stat-grid small{color:#8394a6;font-size:10px}.key-customer-stat-grid b{margin-top:3px;color:#173552}.key-customer-attention h4{margin:8px 0 6px;font-size:12px;color:#8a4d10}.key-customer-attention ul{margin:0;padding:0;list-style:none;display:grid;gap:5px}.key-customer-attention li{display:grid;grid-template-columns:minmax(120px,1fr) minmax(140px,1.2fr) auto;gap:8px;align-items:center;padding:5px 0;border-top:1px solid #eef2f5;font-size:11px}.key-customer-attention li span{color:#6d7f91;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.key-customer-attention li em{font-style:normal;color:#c96b25;white-space:nowrap}.key-customer-blank-visit td{height:34px;color:#7d8fa1;text-align:center;background:#fbfdff;cursor:pointer}.key-customer-blank-visit:hover td{background:#eef7ff;color:#236eaf}.muted-cell{color:#a2afbc}.key-customer-contact-table .table-scroller{overflow-x:hidden!important}.key-customer-contact-table table{width:100%!important;min-width:100%!important;table-layout:fixed!important;font-size:11px!important}.key-customer-contact-table th,.key-customer-contact-table td{padding:3px 5px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;vertical-align:middle!important}.key-customer-contact-table th:nth-child(1){width:16%!important}.key-customer-contact-table th:nth-child(2){width:12%!important}.key-customer-contact-table th:nth-child(3){width:6%!important}.key-customer-contact-table th:nth-child(4){width:12%!important}.key-customer-contact-table th:nth-child(5){width:9%!important}.key-customer-contact-table th:nth-child(6){width:9%!important}.key-customer-contact-table th:nth-child(7){width:5%!important}.key-customer-contact-table th:nth-child(8){width:7%!important}.key-customer-contact-table th:nth-child(9){width:16%!important}.key-customer-contact-table th:nth-child(10){width:8%!important}.key-customer-contact-table tbody tr{cursor:pointer}.key-customer-contact-table tbody tr:hover td{background:#eef7ff}.key-customer-contact-table td:last-child{white-space:nowrap!important;text-align:center}.key-customer-contact-table td:last-child .icon-button{display:inline-block;padding:1px 3px!important;margin:0!important;font-size:10px!important;line-height:1.1!important}.key-customer-contact-table .key-customer-edit-entry{cursor:pointer}
.role-hidden{display:none!important}
.auth-login-backdrop{position:fixed;inset:0;display:none;place-items:center;z-index:1000;background:#f5f8f6}
.auth-login-backdrop.show{display:grid}
body.auth-pending,body.auth-locked{background:#f5f8f6}
body.auth-pending .app-shell,body.auth-locked .app-shell{visibility:hidden}
body.auth-pending .modal-backdrop:not(.auth-login-backdrop),body.auth-locked .modal-backdrop:not(.auth-login-backdrop){display:none!important}
.auth-login-card{width:568px;max-width:calc(100vw - 48px);min-height:526px;padding:38px;border:1px solid #d5e0dc;border-radius:10px;background:#fff;box-shadow:0 28px 58px rgba(45,65,60,.12);contain:layout paint}
.auth-login-mark{margin:0 auto 13px}
.auth-login-kicker{margin:0 0 10px!important;text-align:left!important;color:#008b8b!important;font-size:18px!important;line-height:1.2!important;font-weight:800}
.auth-login-card h2{margin:0 0 28px;text-align:left;color:#111f24;font-size:40px;line-height:1.12;font-weight:900}
.auth-login-card label{display:block;margin:0 0 18px}
.auth-login-card label span:first-child{display:block;margin-bottom:9px;color:#17252a;font-size:16px;font-weight:800}
.auth-login-card input{width:100%;height:62px;margin:0;padding:0 16px;border:1px solid #b9c9c3;border-radius:8px;color:#1e3035;background:#fff;outline:0;font-size:20px}
.auth-login-card input:focus{border-color:#0a9a9a;box-shadow:0 0 0 3px rgba(10,154,154,.12)}
.auth-login-card .primary-button.full{height:62px;margin-top:1px;border-radius:8px;background:#0b9d9d;color:#fff;font-size:22px;font-weight:900}
.auth-login-card .primary-button.full:hover{background:#078b8b}
.auth-password-wrap{position:relative;display:block}
.auth-password-wrap input{padding-right:58px}
.auth-password-toggle{position:absolute;right:14px;top:50%;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:#6c7a76;transform:translateY(-50%)}
.auth-password-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.auth-login-card small{display:block;min-height:20px;margin-top:12px;color:#c54d3b;text-align:center;font-weight:700}
@media(max-width:640px){.auth-login-card{width:calc(100vw - 32px);min-height:auto;padding:30px 24px}.auth-login-card h2{font-size:34px}.auth-login-card input,.auth-login-card .primary-button.full{height:56px}}
.auth-user-badge{display:flex;align-items:center;gap:8px;margin-left:4px;color:#597086;font-size:12px;white-space:nowrap}
.auth-user-badge span{padding:7px 10px;border:1px solid #dce6ef;border-radius:999px;background:#fff}
.auth-user-badge .auth-nas-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.auth-user-badge .auth-nas-link::before{content:"";width:7px;height:7px;border-radius:50%;background:#c9d0d7;box-shadow:0 0 0 2px #fff}
.auth-user-badge .auth-nas-link.connected{border-color:#b9dfc9;background:#f0fbf4;color:#23804a}
.auth-user-badge .auth-nas-link.connected::before{background:#37ae68}
.auth-user-badge .auth-nas-link.nas-attention{animation:nas-connect-attention .6s ease-in-out 3}
@keyframes nas-connect-attention{50%{border-color:#4b83d1;box-shadow:0 0 0 4px rgba(75,131,209,.18)}}
.key-management-panel{padding:18px 20px}
.key-management-status{margin-bottom:14px;padding:11px 13px;border:1px solid #d9e8f7;border-radius:8px;background:#eef7ff;color:#466984;font-weight:700}
.key-management-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px}
.key-management-card{border:1px solid #e2eaf2;border-radius:8px;background:#fbfdff;padding:15px}
.key-management-card h3{margin:0 0 12px;color:#153654;font-size:15px}
.key-management-card label{display:block;margin-bottom:10px}
.key-management-card label span{display:block;margin-bottom:5px;color:#6f8193;font-size:12px}
.key-management-card input{width:100%;height:38px;border:1px solid #d7e2ec;border-radius:7px;padding:0 10px;color:#263f58;background:#fff;outline-color:#7cb1e2}
.key-management-card p{margin:10px 0 0;color:#607289;font-size:12px;line-height:1.65}
body[data-auth-role="manager"] #key-management input,
body[data-auth-role="manager"] #save-key-management{opacity:.64;cursor:not-allowed}
@media(max-width:1100px){.key-management-grid{grid-template-columns:1fr}}

.task-register-table table{min-width:1500px;table-layout:fixed}
.task-register-table table.task-register-full{min-width:3600px}
.task-register-table{overflow:hidden}
#task-register-scroll{height:clamp(520px,calc(100vh - 330px),780px);max-height:none;overflow:auto}
.task-register-table th,.task-register-table td{font-size:12px;line-height:1.45;vertical-align:top}
.task-register-table thead th{position:sticky;white-space:normal;overflow-wrap:anywhere;word-break:break-word;vertical-align:middle;background:#eef4f8}
.task-register-table .task-register-label-row th{top:0;z-index:8;height:82px;padding:8px 7px 7px;line-height:1.3;box-shadow:0 2px 0 #dce5ed}
.task-register-head-label{display:block;min-height:29px;margin-bottom:5px;color:#526b82;font-weight:700}
.task-register-column-filter{width:100%;height:30px;box-sizing:border-box;border:1px solid #cbd9e5;border-radius:5px;background:#fff;padding:0 8px;color:#29465f;font-size:11px;outline:none}
.task-register-column-filter:focus{border-color:#3182c8;box-shadow:0 0 0 2px rgba(49,130,200,.13)}
.task-register-column-filter::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer}
.task-register-select-filter{width:100%;height:30px;box-sizing:border-box;border:1px solid #cbd9e5;border-radius:5px;background:#fff;padding:0 24px 0 7px;color:#29465f;font-size:11px;outline:none}
.task-register-select-filter:focus{border-color:#3182c8;box-shadow:0 0 0 2px rgba(49,130,200,.13)}
.task-register-filter-placeholder{display:block;height:30px}
.task-register-table tbody tr{cursor:pointer}
.task-register-table tbody tr:hover{background:#eef6fe}
.task-register-table tbody tr.task-register-focus-row td{background:#fff4d8;box-shadow:inset 0 2px 0 #e39a31,inset 0 -2px 0 #e39a31}
.task-register-table tbody tr.task-register-focus-row td:first-child{box-shadow:inset 4px 0 0 #e39a31,inset 0 2px 0 #e39a31,inset 0 -2px 0 #e39a31}
.task-register-action-cell{vertical-align:top!important}
.task-register-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:1px 0}
.task-register-row-action{border:0;background:transparent;padding:0;color:#2878bd;font:inherit;font-weight:700;line-height:1.35;cursor:pointer}
.task-register-row-action:hover{text-decoration:underline;color:#145f98}
.task-register-row-action:disabled{cursor:wait;opacity:.6;text-decoration:none}
.task-register-summary{grid-template-columns:repeat(4,1fr)}
.task-register-batch-modal{width:min(920px,calc(100vw - 40px))}
.task-batch-scope{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;padding:12px 14px;border:1px solid #d6e5f0;border-radius:7px;background:#f6fafc;color:#61788d}
.task-batch-scope b{color:#173b58;white-space:nowrap}
.task-batch-scope span{text-align:right;line-height:1.55}
.task-batch-form{grid-template-columns:1fr 1fr 1fr}
.task-batch-preview{min-height:116px;margin-top:16px;border:1px solid #d9e5ee;border-radius:7px;background:#fbfdfe;padding:14px}
.task-batch-result{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 16px}
.task-batch-result b{font-size:20px;color:#145c91}
.task-batch-result>span{color:#73899d}
.task-batch-result p{grid-column:1/-1;margin:6px 0;color:#25465f}
.task-batch-samples{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}
.task-batch-samples span{border:1px solid #d3e2ed;border-radius:5px;background:#fff;padding:4px 7px;color:#47647b;font-size:12px}
@media(max-width:800px){.task-batch-form{grid-template-columns:1fr}.task-batch-scope{display:block}.task-batch-scope span{display:block;margin-top:6px;text-align:left}}
.standard-section-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}
.standard-section-tabs button{appearance:none;min-width:92px;border:1px solid #d7e2eb;border-radius:7px;background:#fff;padding:8px 14px;color:#657b90;font-size:14px;font-weight:700;cursor:pointer}
.standard-section-tabs button:hover{border-color:#8db8dd;background:#f5faff;color:#286da9}
.standard-section-tabs button.active{border-color:#2878d0;background:#2878d0;color:#fff}
#price-standard-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.fee-standard-summary{display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:9px 12px;border:1px solid #dce7f0;border-radius:7px;background:#f7fbfe;color:#60758a;font-size:12px}
.fee-standard-summary b{color:#173d5f;font-size:13px}.fee-standard-summary span{color:#74879a}
.fee-standard-table-panel{overflow:hidden}
.fee-standard-table-panel .table-scroller{height:clamp(480px,calc(100vh - 245px),760px);overflow:auto}
.fee-standard-table{width:100%;min-width:1050px;border-collapse:collapse;table-layout:fixed}
.fee-standard-table th,.fee-standard-table td{padding:10px 12px;border-bottom:1px solid #e3eaf0;text-align:left;vertical-align:top}
.fee-standard-table th{position:sticky;z-index:4;background:#eef4f8;color:#526b82;font-size:12px}
.fee-standard-table .fee-standard-label-row th{top:0;height:39px}
.fee-standard-table .fee-standard-filter-row th{top:39px;z-index:5;padding:6px 8px;background:#f7fafc;box-shadow:0 2px 0 #dce5ed}
.fee-standard-column-filter{width:100%;height:30px;border:1px solid #cfdae4;border-radius:5px;background:#fff;padding:0 8px;color:#3e5870;font-size:11px;outline:none}
.fee-standard-column-filter:focus{border-color:#4d91ce;box-shadow:0 0 0 2px rgba(40,120,208,.12)}
.fee-standard-table th:nth-child(1){width:17%}.fee-standard-table th:nth-child(2){width:16%}.fee-standard-table th:nth-child(3){width:25%}.fee-standard-table th:nth-child(4){width:10%}.fee-standard-table th:nth-child(5){width:12%}.fee-standard-table th:nth-child(6){width:9%}.fee-standard-table th:nth-child(7){width:11%}
.fee-standard-national,.fee-standard-production{min-width:760px}
.fee-standard-national th:nth-child(1){width:52%}.fee-standard-national th:nth-child(2){width:14%}.fee-standard-national th:nth-child(3){width:18%}.fee-standard-national th:nth-child(4){width:16%}
.fee-standard-production th:nth-child(1){width:46%}.fee-standard-production th:nth-child(2){width:18%}.fee-standard-production th:nth-child(3){width:20%}.fee-standard-production th:nth-child(4){width:16%}
.fee-standard-resizable th{position:sticky;width:auto!important}
.fee-standard-resizable .column-resizer{right:-4px;width:9px;border-left:1px solid #6d9bc2;border-right:1px solid #6d9bc2;background:rgba(66,125,174,.1)}
.fee-standard-table td{font-size:13px;color:#17344d}
.fee-standard-table .price-cell{font-weight:700;color:#0b6b67;text-align:right;white-space:nowrap}
.fee-standard-table .scope-badge{display:inline-flex;padding:3px 7px;border-radius:4px;background:#eaf4f3;color:#0b6b67;font-size:11px;font-weight:700;white-space:nowrap}
.fee-standard-row-actions{display:flex;gap:6px;white-space:nowrap}
.fee-standard-modal-box{width:min(860px,92vw)}
.production-standard-modal-box{width:min(760px,92vw)}
.fee-standard-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fee-standard-form-grid label span{display:block;margin-bottom:5px;color:#5f7288;font-size:12px}
.fee-standard-form-grid input,.fee-standard-form-grid select,.fee-standard-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #d7e0e8;border-radius:6px;padding:9px 10px;background:#fff;color:#16324a}
.fee-standard-form-grid .wide-field{grid-column:1/-1}
.manual-protected{background:#fff8ec!important;color:#9a5a11;font-weight:700}
.dashboard-plan-hidden{display:none!important}
.task-register-modal{width:min(96vw,1500px);max-height:92vh;padding:20px;overflow:auto}
.task-register-modal .modal-head{position:sticky;top:-20px;z-index:10;background:#fff;padding-bottom:12px;border-bottom:1px solid #e5ebf0}
.task-register-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px}
.task-register-form-grid label span,.task-register-workbox h3{font-size:12px;color:#5f7288}
.task-register-form-grid input,.task-register-form-grid select,.task-register-form-grid textarea,.task-work-table input,.task-work-table select{width:100%;border:1px solid #d7e0e8;border-radius:6px;padding:8px 9px;background:#fff;color:#16324a;box-sizing:border-box}
.task-register-form-grid textarea{resize:vertical}
.task-register-form-grid .wide-field{grid-column:span 2}
.task-register-workbox{margin-top:14px;border:1px solid #dce7f2;border-radius:8px;background:#f8fbfe;padding:12px}
.subsection-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.subsection-head h3{margin:0;color:#11314f}
.subsection-head small{display:block;margin-top:3px;color:#75889c;font-size:11px}
.task-calc-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.task-calc-panel+.task-calc-panel{border-top:1px solid #dce7f2;padding-top:14px}
.task-work-table-wrap{overflow-x:auto}
.task-work-table{width:100%;min-width:1320px;border-collapse:collapse}
.task-production-table{min-width:1050px}
.task-fee-table-wrap{overflow-x:hidden}
.task-fee-table{width:100%;min-width:0;table-layout:fixed}
.task-fee-table th:nth-child(1),.task-fee-table td:nth-child(1){width:25%}
.task-fee-table th:nth-child(2),.task-fee-table td:nth-child(2){width:10%}
.task-fee-table th:nth-child(3),.task-fee-table td:nth-child(3){width:6%}
.task-fee-table th:nth-child(4),.task-fee-table td:nth-child(4){width:5%}
.task-fee-table th:nth-child(5),.task-fee-table td:nth-child(5){width:7%}
.task-fee-table th:nth-child(6),.task-fee-table td:nth-child(6){width:6%}
.task-fee-table th:nth-child(7),.task-fee-table td:nth-child(7){width:16%}
.task-fee-table th:nth-child(8),.task-fee-table td:nth-child(8){width:8%}
.task-fee-table th:nth-child(9),.task-fee-table td:nth-child(9){width:10%}
.task-fee-table th:nth-child(10),.task-fee-table td:nth-child(10){width:7%}
.task-fee-table th,.task-fee-table td{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.task-fee-table input{min-width:0}
.task-fee-table .task-fee-reference-button{display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
.task-fee-table .task-fee-reference-button small{justify-self:start}
.task-fee-table .task-work-actions{display:grid;grid-template-columns:1fr;gap:4px;white-space:normal}
.task-fee-table .task-work-actions button{width:100%;min-width:0;padding:5px 3px}
.task-work-table th,.task-work-table td{border:1px solid #d7e0e8;padding:6px;background:#fff;font-size:12px}
.task-work-table th{background:#eef4f8;color:#526b82;position:sticky;top:0;z-index:3}
.task-work-table input{padding:6px 7px;border-radius:5px}
.task-work-actions{display:flex;gap:5px;white-space:nowrap}
.task-work-actions button{min-width:46px;padding:6px 8px}
.task-calc-total{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:11px 14px;border-top:1px solid #dce7f2;background:#f7fbfe;color:#61768b;font-size:13px}.task-calc-total b{min-width:130px;color:#0b6b67;font-size:18px;text-align:right;font-variant-numeric:tabular-nums}
.task-fee-reference-cell{display:flex;align-items:flex-start;gap:6px}
.task-fee-reference-button{display:flex;min-width:0;width:100%;align-items:flex-start;justify-content:space-between;gap:10px;border:1px solid #bfd1df;border-radius:6px;background:#fff;padding:7px 8px;color:#174468;cursor:pointer;text-align:left;line-height:1.45}
.task-fee-reference-button span{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.task-fee-reference-button small{flex:0 0 auto;color:#0b6b67;font-weight:700}
.task-fee-reference-modal-box{width:min(1240px,96vw)}
.task-fee-reference-grid{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px}
.task-fee-reference-grid label{flex:1 1 180px;max-width:100%}
.task-fee-reference-grid label:last-child{flex-grow:2}
.task-fee-reference-grid label span{display:block;margin-bottom:5px;color:#5f7288;font-size:12px}
.task-fee-reference-grid select{width:100%;box-sizing:border-box;border:1px solid #d7e0e8;border-radius:6px;padding:10px;background:#fff;color:#16324a}
.task-fee-reference-item-label{position:relative;flex-basis:420px!important;min-width:min(420px,100%)!important}
.task-fee-reference-combobox{position:relative}
.task-fee-reference-search-line{display:flex;align-items:stretch;border:1px solid #d7e0e8;border-radius:6px;background:#fff;overflow:hidden}
.task-fee-reference-search-line:focus-within{border-color:#6da8df;box-shadow:0 0 0 2px rgba(50,126,199,.12)}
.task-fee-reference-search-line input{min-width:0;width:100%;height:40px;border:0!important;border-radius:0!important;padding:0 10px!important;outline:0!important;color:#16324a;background:#fff}
.task-fee-reference-search-line button{flex:0 0 42px;border-left:1px solid #e1e7ed;background:#fff;color:#526b82;font-size:19px}
.task-fee-reference-search-line button:hover{background:#f3f7fa}
.task-fee-reference-options{position:absolute;z-index:8;top:calc(100% + 5px);left:0;right:0;display:none;max-height:300px;overflow:auto;border:1px solid #ccd9e4;border-radius:7px;background:#fff;box-shadow:0 14px 30px rgba(21,48,72,.18)}
.task-fee-reference-options.show{display:block}
.task-fee-reference-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border-bottom:1px solid #edf1f4;background:#fff;color:#17364f;text-align:left}
.task-fee-reference-option:last-child{border-bottom:0}
.task-fee-reference-option:hover,.task-fee-reference-option.active{background:#edf6fe}
.task-fee-reference-option span{min-width:0;margin:0!important;color:#17364f!important;font-size:13px!important;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.task-fee-reference-option small{flex:0 0 auto;color:#0b6b67;font-weight:700;white-space:nowrap}
.task-fee-reference-options-empty{padding:14px;color:#8190a0;text-align:center}
.task-fee-reference-count{display:block;min-height:18px;margin-top:4px;color:#8393a2;font-size:11px}
.task-fee-reference-preview{min-height:42px;margin-top:12px;padding:10px 12px;border-left:3px solid #177e89;background:#f2f8f8;color:#173f57;line-height:1.6}
.task-register-extra{margin-top:12px;border:1px solid #dce7f2;border-radius:8px;background:#fbfdff;padding:10px 12px}
.task-register-extra summary{cursor:pointer;font-weight:700;color:#174468;margin-bottom:10px}
.task-register-modal .form-actions{margin-top:14px}
.task-register-draft-status{align-self:center;margin-right:auto;color:#718496;font-size:11px}.task-register-draft-status[data-state="saving"],.task-register-draft-status[data-state="pending"]{color:#9a641e}.task-register-draft-status[data-state="saved"]{color:#278064}.task-register-draft-status[data-state="error"]{color:#c2544b}.task-register-draft-discard{color:#a85b50}
@media (max-width:1100px){
  .task-register-form-grid{grid-template-columns:1fr 1fr}
  .task-register-form-grid .wide-field{grid-column:1/-1}
  .task-register-summary{grid-template-columns:1fr 1fr}
  .fee-standard-filter{grid-template-columns:1fr 1fr}
  .fee-standard-summary{grid-template-columns:1fr 1fr}
  .task-fee-reference-grid{display:grid;grid-template-columns:1fr}
}

/* Data update: keep every long-running stage visible to the operator. */
.update-operation-status{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:4px 13px;align-items:center;margin:0 0 14px;padding:13px 16px;border:1px solid #d8e6f2;border-radius:8px;background:#f7fbff;color:#173b5b}
.update-operation-icon{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e4f0fb;color:#2676bd;font-size:18px;font-weight:800}
.update-operation-copy b,.update-operation-copy span{display:block}.update-operation-copy b{font-size:14px}.update-operation-copy span{margin-top:4px;color:#6d8295;font-size:12px;line-height:1.45}
.update-operation-status>strong{font-size:14px;color:#2b6fa9;font-variant-numeric:tabular-nums;white-space:nowrap}
.update-operation-bar{grid-column:2/4;height:7px;border-radius:999px;background:#e6eef5;overflow:hidden}.update-operation-bar span{display:block;width:0;height:100%;border-radius:999px;background:#2d7dcc;transition:width .25s ease}
.update-operation-status.selected{border-color:#bed8ee;background:#f3f9ff}.update-operation-status.selected .update-operation-icon{background:#dceeff}
.update-operation-status.loading .update-operation-icon,.update-operation-status.processing .update-operation-icon,.update-operation-status.running .update-operation-icon{animation:update-status-spin 1.1s linear infinite}
.update-operation-status.done{border-color:#c8e2d0;background:#f4fbf6}.update-operation-status.done .update-operation-icon{background:#dff2e5;color:#267349}.update-operation-status.done .update-operation-bar span{background:#39865a}
.update-operation-status.error{border-color:#efc2bd;background:#fff6f4}.update-operation-status.error .update-operation-icon{background:#fbe3df;color:#ba4034}.update-operation-status.error>strong{color:#ba4034}.update-operation-status.error .update-operation-bar span{background:#d25749}
@keyframes update-status-spin{to{transform:rotate(360deg)}}
#update .update-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);align-items:start}
#update .upload-panel{display:block;padding:20px;text-align:left}
.update-source-heading{display:flex;align-items:center;gap:13px;margin-bottom:16px}.update-source-heading .upload-icon{flex:0 0 48px;width:48px;height:48px;margin:0;font-size:22px}.update-source-heading h3{margin:0;font-size:15px}.update-source-heading p{margin:5px 0 0!important;max-width:none!important}
.update-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.update-source-group-label{grid-column:1/-1;display:flex;align-items:baseline;gap:10px;padding:8px 2px 2px;color:#173b5b}
.update-source-group-label b{font-size:13px}.update-source-group-label span{color:#7c8fa0;font-size:11px}
.update-source-item{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);align-items:center;gap:10px;min-height:54px;padding:7px 9px;border:1px solid #e3eaf0;border-radius:7px;background:#fbfcfd;transition:border-color .15s ease,background .15s ease}
.update-source-item.selected{border-color:#8dbce6;background:#eef7ff}.update-source-item.selected small{color:#246fae;font-weight:700}
.update-source-item .source-button{width:100%;min-width:0;margin:0;text-align:left}.update-source-item small{min-width:0;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8b99a7}
.update-source-actions{position:sticky;bottom:10px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 13px;border:1px solid #d7e5f1;border-radius:8px;background:rgba(248,252,255,.97);box-shadow:0 6px 18px rgba(35,67,95,.09)}

.system-maintenance-overlay{position:fixed;inset:0;z-index:5000;display:none;place-items:center;padding:24px;background:rgba(20,37,52,.72);backdrop-filter:blur(3px)}
.system-maintenance-overlay.show{display:grid}
.system-maintenance-card{width:min(520px,calc(100vw - 40px));padding:38px 40px;border:1px solid #dce6ec;border-radius:8px;background:#fff;box-shadow:0 28px 70px rgba(7,24,38,.28);text-align:center}
.system-maintenance-icon{display:flex;justify-content:center;gap:8px;width:58px;height:58px;margin:0 auto 18px;padding:15px;border-radius:50%;background:#fff1dc}
.system-maintenance-icon span{display:block;width:8px;height:28px;border-radius:2px;background:#df8428}
.system-maintenance-kicker{margin:0 0 7px;color:#b66b23;font-size:12px;font-weight:800}
.system-maintenance-card h2{margin:0;color:#17334c;font-size:25px}
.system-maintenance-card>p:not(.system-maintenance-kicker){margin:14px 0 18px;color:#526b7f;line-height:1.8}
.system-maintenance-warning{padding:12px 14px;border-left:3px solid #df8428;background:#fff8ee;color:#8b5b2d;line-height:1.65;text-align:left;font-size:12px}
.system-maintenance-wait{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:22px;color:#6e8294;font-size:12px}
.system-maintenance-wait i{width:16px;height:16px;border:2px solid #d8e3ea;border-top-color:#2878c3;border-radius:50%;animation:maintenance-spin .85s linear infinite}
.system-maintenance-banner{position:fixed;top:0;left:232px;right:0;z-index:4900;display:none;padding:9px 16px;background:#fff3df;color:#8a581f;border-bottom:1px solid #e7c58d;text-align:center;font-size:12px;font-weight:700}
.system-maintenance-banner.show{display:block}
body:has(.system-maintenance-banner.show) .topbar{padding-top:28px}
@keyframes maintenance-spin{to{transform:rotate(360deg)}}
.update-source-actions div{min-width:0}.update-source-actions b,.update-source-actions span{display:block}.update-source-actions b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#173b5b;font-size:12px}.update-source-actions span{margin-top:4px;color:#74889a;font-size:11px}.update-source-actions .primary-button{flex:0 0 auto;margin:0!important;min-width:150px}.update-source-actions .primary-button:disabled{cursor:not-allowed;background:#a9bac8;color:#f7fafc}
#import-modal .plan-modal{width:min(820px,calc(100vw - 40px));max-height:calc(100vh - 48px);overflow:auto}
#import-modal .plan-modal.header-mismatch-mode{width:min(1180px,calc(100vw - 40px))}
.import-header-blocked-note{display:flex;align-items:center;gap:14px;margin:8px 0 16px;padding:14px 16px;border-left:4px solid #d85d4a;background:#fff3f0;color:#7b3027}
.import-header-blocked-note b{flex:0 0 auto}.import-header-blocked-note span{line-height:1.6}
.import-header-mismatch-list{display:grid;gap:16px}
.import-header-mismatch-card{overflow:hidden;border:1px solid #d8e3ec;border-radius:6px;background:#fff}
.import-header-mismatch-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid #e1e9f0;background:#f7fafc}
.import-header-mismatch-card h3,.import-header-mismatch-card h4,.import-header-mismatch-card p{margin:0}
.import-header-mismatch-card h3{color:#183b56;font-size:16px}.import-header-mismatch-card header p{margin-top:4px;color:#77899a;font-size:11px}
.import-header-mismatch-card>header>span{padding:5px 9px;border-radius:4px;background:#fde4df;color:#b54031;font-size:11px;font-weight:700}
.import-header-compare{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e1e9f0}
.import-header-compare>div{min-width:0;padding:14px 16px}.import-header-compare>div+div{border-left:1px solid #e1e9f0}
.import-header-compare h4{color:#294b66;font-size:13px}.import-header-compare>div>p{margin:4px 0 10px;color:#8192a1;font-size:11px;overflow-wrap:anywhere}
.import-header-sheet+.import-header-sheet{margin-top:12px}.import-header-sheet-name{margin-bottom:6px;color:#5b7185;font-size:11px;font-weight:700}
.import-header-row{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:6px;margin-top:5px}.import-header-row>small{padding-top:6px;color:#8a9aaa}
.import-header-row>div{display:flex;flex-wrap:wrap;gap:5px}.import-header-row span{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid #d8e3ec;border-radius:4px;background:#f9fbfd;color:#34546d;font-size:11px}
.import-header-row span.changed{border-color:#e98975;background:#fff1ed;color:#a93e30}.import-header-row span i{font-style:normal;color:#90a0ad;font-size:9px}
.import-header-empty{padding:18px;background:#f6f8fa;color:#8292a0;text-align:center;font-size:11px}
.import-header-differences{padding:14px 16px}.import-header-differences>h4{margin-bottom:8px}
.import-header-diff{display:grid;grid-template-columns:170px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px solid #edf2f5}.import-header-diff:first-of-type{border-top:0}
.import-header-diff b{color:#465f74;font-size:12px}.import-header-diff ul{display:flex;flex-wrap:wrap;gap:5px 14px;margin:0;padding:0;list-style:none;color:#6c7e8d;font-size:11px}.import-header-diff.missing b{color:#b14234}.import-header-diff.added b{color:#a36a20}
@media(max-width:820px){.import-header-compare{grid-template-columns:1fr}.import-header-compare>div+div{border-left:0;border-top:1px solid #e1e9f0}.import-header-diff{grid-template-columns:1fr}.import-header-blocked-note{align-items:flex-start;flex-direction:column}}
@media(max-width:1180px){#update .update-grid{grid-template-columns:1fr}.update-source-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.update-source-grid{grid-template-columns:1fr}.update-source-actions{align-items:stretch;flex-direction:column}.update-source-actions .primary-button{width:100%}.update-operation-status{grid-template-columns:38px minmax(0,1fr)}.update-operation-status>strong{grid-column:2}.update-operation-bar{grid-column:1/3}}
.data-pagination{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  min-height:54px;
  padding:10px 4px;
  color:#60748c;
}
.data-pagination span{margin-right:auto;}
.data-pagination b{color:#183b56;font-weight:700;}
.data-pagination button{
  min-width:76px;
  height:38px;
  border:1px solid #cbd9e8;
  border-radius:6px;
  background:#fff;
  color:#315b7d;
  cursor:pointer;
}
.data-pagination button:hover:not(:disabled){border-color:#2f7ed8;color:#1768bd;}
.data-pagination button:disabled{opacity:.45;cursor:default;}
.workspace-loading-indicator{
  display:none;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border:1px solid #cfe0f2;
  border-radius:6px;
  background:#f4f9ff;
  color:#32658f;
  font-size:14px;
  white-space:nowrap;
}
.workspace-loading-indicator.show{display:flex;}
.workspace-loading-indicator.show::before{
  content:"";
  width:14px;
  height:14px;
  margin-right:8px;
  border:2px solid #b9d2eb;
  border-top-color:#2f7ed8;
  border-radius:50%;
  animation:workspace-loading-spin .75s linear infinite;
}
@keyframes workspace-loading-spin{to{transform:rotate(360deg)}}
@media (max-width:760px){
  .data-pagination{flex-wrap:wrap;justify-content:center;}
  .data-pagination span{width:100%;margin:0;text-align:center;}
  .workspace-loading-indicator{display:none!important;}
}
.task-quick-date-modal-box{
  width:min(920px,94vw);
}
#open-custom-fee-standard{
  height:34px;
  padding:7px 12px;
  border:1px solid #d7e0e8;
  background:#fff;
  color:#587087;
  font-size:12px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
}
#open-custom-fee-standard:hover{
  border-color:#8ab9df;
  background:#eef7ff;
  color:#276da8;
}
.task-quick-date-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
}
.task-quick-date-search label span,
.task-quick-date-fields label span{
  display:block;
  margin-bottom:6px;
  color:#60758a;
  font-size:13px;
}
.task-quick-date-search input,
.task-quick-date-fields input{
  box-sizing:border-box;
  width:100%;
  min-height:42px;
  padding:8px 11px;
  border:1px solid #ccd9e6;
  border-radius:6px;
  background:#fff;
  color:#173451;
  font:inherit;
}
.task-quick-date-results{
  display:grid;
  gap:8px;
  max-height:300px;
  margin-top:12px;
  overflow:auto;
}
.task-quick-date-result{
  display:grid;
  grid-template-columns:minmax(200px,.85fr) minmax(180px,1fr);
  gap:5px 16px;
  width:100%;
  padding:12px 14px;
  border:1px solid #d8e3ed;
  border-radius:6px;
  background:#fff;
  color:#29445f;
  text-align:left;
  cursor:pointer;
}
.task-quick-date-result:hover,
.task-quick-date-result.selected{
  border-color:#2f7fd4;
  background:#f1f7fd;
}
.task-quick-date-result.read-only{
  background:#f7f8fa;
  color:#748397;
}
.task-quick-date-result-main{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  align-items:baseline;
}
.task-quick-date-result strong{
  color:#153b5d;
}
.task-quick-date-result small,
.task-quick-date-existing,
.task-quick-date-result em{
  grid-column:1/-1;
}
.task-quick-date-result small{
  color:#60758a;
}
.task-quick-date-existing{
  color:#4f7396;
  font-size:13px;
}
.task-quick-date-result em{
  color:#b75b3d;
  font-size:12px;
  font-style:normal;
}
.task-quick-date-selected{
  display:grid;
  gap:4px;
  margin-top:14px;
  padding:11px 13px;
  border-left:3px solid #2f7fd4;
  background:#f2f7fc;
}
.task-quick-date-selected span{
  color:#60758a;
}
.task-quick-date-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:14px;
}
.task-quick-date-note{
  margin:10px 0 0;
  color:#60758a;
  font-size:13px;
}
@media (max-width:720px){
  .task-quick-date-search,
  .task-quick-date-fields,
  .task-quick-date-result{
    grid-template-columns:1fr;
  }
  .task-quick-date-result small,
  .task-quick-date-existing,
  .task-quick-date-result em{
    grid-column:auto;
  }
}

/* Keep dashboard pairs visually balanced on desktop. */
.dashboard-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
@media(max-width:1100px){
  .dashboard-grid{grid-template-columns:1fr;}
}
