:root{font-family:Segoe UI,"Microsoft YaHei",sans-serif;color:#24364b;background:#f5f7fa;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #d8e0e9;background:#fff;border-radius:6px;padding:9px 16px;color:#334b66;cursor:pointer}button:hover{background:#eef5fd}button.primary,.tabs button.active{background:#1779d5;color:#fff;border-color:#1779d5}header{background:#fff;border-bottom:1px solid #e0e6ef;padding:23px 36px;display:flex;align-items:center;justify-content:space-between}h1{font-size:23px;margin:0}header p{color:#8492a3;font-size:12px;margin:7px 0 0}main{width:100%;max-width:none;margin:24px auto;padding:0 20px}.tabs{display:flex;gap:10px;margin-bottom:24px}.tabs button{min-width:110px;font-size:16px}.toolbar{display:flex;gap:10px;align-items:center;margin:22px 0}.toolbar input{max-width:360px;flex:1}.toolbar .primary{margin-left:auto}input,select,textarea{border:1px solid #d5dfe9;border-radius:5px;padding:10px;background:#fff;color:#253850;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid #c9e6ff;border-color:#3389d2}input[readonly]{background:#f5f7fa;color:#758397}textarea{min-height:80px;resize:vertical}.card{background:#fff;border:1px solid #e2e8ef;border-radius:9px;overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th{background:#f9fbfe;color:#6e7f92;text-align:left;font-weight:500}td,th{padding:17px 18px;border-bottom:1px solid #edf0f5}td button{padding:5px 12px}td.company{font-weight:600;color:#266db6}.muted,small{color:#8492a3}.empty{text-align:center;padding:75px 20px;color:#8b98a8}.pill{border-radius:4px;background:#eff5fc;color:#2777b7;padding:5px 9px}.done{background:#eaf7f0;color:#2c8d5b}.stats{display:flex;gap:30px;color:#748499}.stats b{color:#34485e;font-size:20px;margin-right:7px}dialog{border:none;border-radius:12px;padding:0;width:min(1440px,96vw);max-height:92vh;box-shadow:0 20px 70px #1a2b4c35}dialog::backdrop{background:#152c4960}dialog header{padding:20px 26px}dialog h2{font-size:20px;margin:0}dialog form,dialog .content{padding:24px 26px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}label{display:flex;flex-direction:column;gap:8px;color:#63758b;font-size:15px}.wide{grid-column:1/-1}.buttons{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid #e9edf3;padding-top:20px;margin-top:25px}.login{max-width:390px;margin:14vh auto;padding:34px;background:white;border:1px solid #e2e8ef;border-radius:12px}.login h1{margin-bottom:12px}.login label{margin:20px 0}.login button{width:100%}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#243d59;color:white;border-radius:6px;padding:12px 22px;display:none;max-width:90vw}#toast.visible{display:block}details{margin-top:20px;color:#687a90}summary{cursor:pointer;padding:10px 0}.permissions input{width:18px;height:18px}.permissions label{flex-direction:row;align-items:center;margin:14px 0}.subtitle{margin:0 0 22px;color:#7a899d}.pagebar{padding:16px;display:flex;justify-content:flex-end;align-items:center;gap:12px}@media(max-width:700px){header{padding:18px;gap:15px}main{padding:0 15px}.grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}header p{display:none}.stats{gap:12px}dialog form{padding:20px}}

.field-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:16px 0}.field-checks label{display:flex;align-items:center;gap:8px}.field-checks input{width:auto}

.row-number{width:68px;min-width:68px;text-align:center;color:#708197;font-variant-numeric:tabular-nums}th.row-number{position:sticky;left:0;z-index:1;background:#f9fbfe}td.row-number{position:sticky;left:0;background:#fff}.toolbar{flex-wrap:wrap}@media(min-width:1100px){dialog .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.record-fields{border:0;padding:0;margin:0;min-width:0}.permission-matrix th{white-space:nowrap}.permission-cell{text-align:center}.role-caption{display:block;margin-top:6px}.permission-yes{color:#197449;background:#eaf7f0;padding:5px 10px;border-radius:5px}.permission-no{color:#7b5360;background:#f7eef1;padding:5px 10px;border-radius:5px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.permission-option{flex-direction:row;align-items:flex-start;padding:18px;border:1px solid #dce5ee;border-radius:8px;background:#fafcfe;cursor:pointer}.permission-option input{margin-top:3px;width:18px;height:18px}.permission-option strong{display:block;color:#24364b}.permission-option small{display:block;line-height:1.6;margin-top:7px}@media(max-width:700px){.permission-grid{grid-template-columns:1fr}}

button.danger{color:#ac293b;border-color:#e9bbc3;background:#fff7f8}button.danger:hover{background:#ffe8ec}

.field-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e1e8f0;border-radius:7px;background:#fff}.field-row label{flex-direction:row;align-items:center;gap:8px}.field-row label input{width:auto}.field-move{padding:3px 9px;min-width:34px}.field-checks{display:flex;flex-direction:column;gap:8px}
.subtabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 4px}.subtabs button{background:#fff;color:#52657d;border:1px solid #d8e1ec}.subtabs button.active{background:#2f6fed;color:#fff;border-color:#2f6fed}

.link-button{padding:0;border:0;background:transparent;color:#245fc1;font:inherit;font-weight:600;text-align:left;cursor:pointer}.link-button:hover{text-decoration:underline;background:transparent}

.crm-link{color:#245fc1;text-decoration:none;font-weight:600}.crm-link:hover{text-decoration:underline}
.service-picker{position:relative}.service-customer-results{margin-top:6px;border:1px solid #d9e2f0;border-radius:8px;background:#fff;max-height:240px;overflow:auto}.service-customer-result{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #edf1f7}.service-customer-result:last-child{border-bottom:0}.service-customer-result .primary{margin-left:12px;padding:5px 10px;font-size:12px}
.proxy-form-group {margin:12px 0 24px;border:1px solid #e0e6ef;border-radius:12px;padding:18px;background:#fff}
.proxy-form-group>summary {font-size:18px;font-weight:600;color:#386bc4;cursor:pointer;padding:0 0 14px}
.proxy-form-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}
.proxy-form-grid .wide {grid-column:1/-1}
.proxy-form-grid input,.proxy-form-grid select {min-height:44px}
@media(max-width:760px){.proxy-form-grid{grid-template-columns:1fr}}
dialog .grid.proxy-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){dialog .grid.proxy-form-grid{grid-template-columns:1fr}}
.card table{table-layout:auto}.card td.field-cell{max-width:260px;overflow:hidden}.card td.field-cell .cell-ellipsis{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card td.field-cell .link-button{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.card td:last-child{max-width:230px;white-space:normal}.card td:last-child button{margin:2px 4px 2px 0}
/* 表格列宽保持稳定，可直接拖动表头右侧调整 */
.card table{table-layout:fixed;min-width:100%}.card table th{width:160px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;resize:horizontal;cursor:col-resize}.card table th.row-number{width:68px}.card table th:nth-last-child(2){width:100px}.card table th:last-child{width:220px}.card table td.field-cell{width:160px;max-width:260px}.card table td.field-cell .cell-ellipsis,.card table td.field-cell .link-button{max-width:100%;}
/* 订单各业务保持统一紧凑行高，代理记账操作列不自动换行 */
.card table td,.card table th{height:56px;vertical-align:middle}.card table td:last-child{white-space:nowrap;max-width:none}.card table td:last-child button{white-space:nowrap}
.approval-tabs{display:inline-flex;gap:4px;align-items:center}.approval-tabs .link-button{padding:7px 10px;border:1px solid #d8e0e9;border-radius:6px;color:#52657d}.approval-tabs .link-button.active{background:#1779d5;color:#fff;border-color:#1779d5}
