/* Business workspace: readable hierarchy, contained tables, accessible actions. */
:root{--paper:#f7f8fa;--paper-2:#f0f3f5;--line:#dfe5e8;--line-soft:#edf0f2;--fs-page:26px;--fs-h2:20px;--fs-h3:17px;--fs-body:14px;--fs-meta:13px;--fs-tiny:12px}
body{font-size:14px;line-height:1.6;background:var(--paper)}
.page-head h1,.modal-head h3,.sec-h h2,.kpi .v{font-family:inherit;letter-spacing:0}
.page-head{padding-bottom:18px;margin-bottom:22px}.page-head h1{font-weight:650}.aside{background:#fff}
.input,.select,.textarea{font:inherit;min-width:0}.input,.select{min-height:40px;padding:9px 12px;border-radius:7px;background:#fff}.btn{min-height:38px;padding:8px 14px;border-radius:7px;white-space:nowrap;font-size:13px;font-weight:600}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-strong)}
.form-grid{gap:18px 20px}.field label{font-size:13px;font-weight:550;color:var(--ink-2);margin-bottom:6px}.field{min-width:0}.field input,.field select,.field textarea{width:100%}
.section-head{align-items:center;gap:16px;margin:0 0 18px}.section-head>div{min-width:0}.section-head h2{font-size:20px}.action-row{display:flex;flex-wrap:wrap;gap:8px}.block-title{margin:24px 0 12px;font-size:17px}
.business-filter,#business-filter{display:grid;grid-template-columns:minmax(200px,1fr) minmax(140px,190px) auto auto;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:20px}.business-filter>.input,#business-filter>.input{width:100%;flex:none}.business-filter>.select,#business-filter>.select{width:100%;flex:none}.check-label,#business-filter>label{display:flex;align-items:center;gap:7px;white-space:nowrap}.business-filter .btn{align-self:end}
.policy-card-list,.group-card-list{display:grid;gap:16px}.policy-card,.group-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #152b3710}.policy-card>summary,.group-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;cursor:pointer;list-style:none}.policy-card>summary::after{content:'⌄';font-size:20px;color:var(--ink-3)}.policy-card[open]>summary::after{content:'⌃'}.policy-card h3{font-size:17px;line-height:1.45;overflow-wrap:anywhere}.policy-card>summary>div{min-width:0;flex:1}.policy-card>summary>span{white-space:nowrap;color:var(--ink-3);font-size:12px}.policy-platforms{margin-top:10px;display:flex;flex-wrap:wrap;gap:5px}.policy-card[open]>summary{border-bottom:1px solid var(--line)}
.business-table-wrap{width:100%;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:9px}.policy-card>.business-table-wrap{border:0;border-radius:0}.business-table{width:100%;table-layout:fixed;border-collapse:collapse}.business-table th{background:#f5f7f8;font-size:12px;font-weight:600;color:var(--ink-2);padding:12px 15px;white-space:normal}.business-table td{padding:15px;vertical-align:top;overflow-wrap:anywhere;white-space:normal;line-height:1.6;border-bottom:1px solid var(--line-soft)}.business-table td:first-child{width:auto}.business-table td small,.business-table td>span{display:block;color:var(--ink-3);font-size:12px;margin-top:4px}.business-table tr:last-child td{border-bottom:0}.business-table th:first-child{width:27%}.business-table th:last-child{width:170px}.business-table td:last-child{background:#fff}.business-table td .btn{padding:5px 8px;min-height:32px;font-size:12px}.business-table tbody tr:hover td{background:#f6faf8}
.group-card-main{padding:20px 22px}.group-card-title h3{font-size:17px;overflow-wrap:anywhere}.group-card-actions{margin-top:14px}.group-disclosure{border-top:1px solid var(--line-soft)}.group-disclosure>summary{padding:13px 22px;background:#fafcfc;color:var(--brand);font-weight:600}.group-disclosure>summary>span:last-child{font-size:12px;font-weight:400;color:var(--ink-3)}.account-detail-body{padding:0 18px 18px}.account-entity h4{margin:18px 0 10px;font-size:14px}.account-entity .business-table th:first-child{width:28%}.account-entity .business-table th:last-child{width:90px}
dialog#modal{border:1px solid var(--line);box-shadow:0 24px 80px #1c354833;border-radius:14px;background:#fff;max-height:90vh;max-width:96vw}.modal-head{padding:20px 24px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:2}.modal-body{padding:24px}.modal-workspace .modal-body{padding:24px}.modal-workspace .modal-body:has(>.editor-workspace){padding:0}.modal-workspace .editor-panel{padding:22px}.modal-workspace .modal-body>.form-grid{padding:0}.business-modal .modal-body{padding:24px}.modal-body>h3{font-size:15px;margin:22px 0 12px}.modal-body>.action-row{margin-bottom:18px}.modal-body table th{width:150px;min-width:130px;white-space:normal;overflow-wrap:normal;padding:12px 16px;vertical-align:top}.modal-body table td{padding:12px 16px;overflow-wrap:anywhere;white-space:normal}.modal-body .form-grid>.btn.full{justify-self:end;width:auto;min-width:140px}.modal-body .form-grid>p{font-size:13px;color:var(--ink-3)}
.record-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.record-fields>div{padding:13px 0;border-bottom:1px solid var(--line-soft);min-width:0}.record-fields dt{font-size:12px;color:var(--ink-3);margin-bottom:5px}.record-fields dd{font-size:14px;overflow-wrap:anywhere}.record-section{margin-bottom:24px}.record-section .section-head{margin-top:8px}.record-meta{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.record-meta summary{cursor:pointer;color:var(--ink-2)}
.cash-quote{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:14px 18px;background:#eff8f4;border:1px solid #d1e8dc;border-radius:9px}.cash-quote>span{font-size:12px;color:var(--ink-2)}.cash-quote b{font-size:24px;color:var(--brand)}.cash-quote small{font-size:12px;color:var(--ink-3)}
.report-panel{padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:26px}.report-filter{grid-template-columns:repeat(2,minmax(135px,1fr)) repeat(2,minmax(120px,1fr)) minmax(130px,1fr) auto;padding:0;border:0}.meeting-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.meeting-kpis>div{padding:18px;border:1px solid var(--line-soft);border-radius:9px;background:#f8fafb}.meeting-kpis span{display:block;font-size:12px;color:var(--ink-3)}.meeting-kpis strong{display:block;font-size:25px;font-weight:650;margin-top:6px;font-variant-numeric:tabular-nums}.report-basis{margin-top:14px;font-size:12px;color:var(--ink-3)}.report-details>summary{padding:18px 0;cursor:pointer;color:var(--brand);font-weight:600}.invoice-split{display:flex;gap:20px;padding:14px;background:#f1f7f5;border-radius:9px}.invoice-split b{display:block}.invoice-status-line{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.invoice-status-line span{padding:6px 10px;background:var(--paper-2);border-radius:6px}
@media(max-width:1100px){.report-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.business-table{min-width:650px}.business-table th:last-child,.business-table td:last-child{position:sticky;right:0;box-shadow:-3px 0 4px #24334109}.business-table th:last-child{background:#f5f7f8}}
@media(max-width:760px){.business-filter,#business-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.business-filter>.input,#business-filter>.input{grid-column:1/-1}.business-filter .btn{width:100%}.policy-card>summary{padding:16px;gap:10px}.policy-card>summary>span{white-space:normal;max-width:80px}.record-fields{grid-template-columns:1fr}.modal-body,.modal-workspace .modal-body,.business-modal .modal-body{padding:18px}.modal-head{padding:16px 18px}.meeting-kpis{grid-template-columns:1fr 1fr;gap:10px}.meeting-kpis>div{padding:12px}.meeting-kpis strong{font-size:21px}.report-filter{grid-template-columns:1fr 1fr}.report-panel{padding:16px}.group-card-main{padding:16px}.group-disclosure>summary{padding:12px 16px}.section-head{flex-wrap:wrap}.account-detail-body{padding:0 10px 12px}}

.group-card h3{font-family:inherit}.group-card-main{padding:18px 22px}.group-card-actions{margin-top:8px}.group-disclosure>summary>span:first-child{flex:1;text-align:left}.group-disclosure>summary{justify-content:flex-start}

dialog.business-modal{width:min(900px,96vw)}.business-table td>.tag{display:inline-flex;margin-top:0}.evidence-upload{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.evidence-upload small{overflow-wrap:anywhere;line-height:1.5}.field:has(.evidence-upload){grid-column:1/-1}@media(max-width:760px){.business-table th:last-child{width:110px}.business-table td:last-child .btn{padding:5px}.section-head>div:first-child{text-align:left}}
dialog#modal.business-modal-wide{width:min(1160px,96vw)}
dialog#modal.evidence-preview-modal{width:min(1100px,96vw)}.evidence-preview-name{margin:0 0 12px;overflow-wrap:anywhere;color:var(--ink-3)}.evidence-preview-image{display:block;max-width:100%;max-height:calc(90vh - 170px);width:auto;height:auto;margin:auto;object-fit:contain}.evidence-preview-frame{display:block;width:100%;height:calc(90vh - 170px);min-height:360px;border:0;background:#fff}@media(max-width:760px){.evidence-preview-frame{min-height:300px}}
.settlement-records{display:grid;gap:12px;margin-top:16px}
.settlement-record{padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}
.settlement-record-head{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}
.settlement-record dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.settlement-record dl div{min-width:0}.settlement-record dt{font-size:12px;color:var(--ink-3)}
.settlement-record dd{margin:4px 0 0;overflow-wrap:anywhere;font-size:14px}
.invoice-receipts,.invoice-profiles{margin:24px 0}.invoice-receipts .business-table{min-width:850px}
.invoice-profile-card{padding:16px;border:1px solid var(--line);border-radius:10px;margin:12px 0}
.invoice-receipt-choice{display:flex!important;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--line);font-weight:400!important}
.invoice-receipt-choice input{width:18px!important;height:18px!important;min-height:0!important;flex:0 0 18px;margin:0!important;padding:0!important}
.invoice-receipt-choice[hidden]{display:none!important}
tr.row-locate-target>td{background:#fff4c4;border-top:2px solid #c58b00;border-bottom:2px solid #c58b00}
tr.row-locate-target>td:first-child{border-left:5px solid #c58b00}
tr.row-locate-flash>td{animation:accountLocatePulse 1.5s ease-in-out 3!important}
@keyframes accountLocatePulse{0%,100%{background:#fff4c4}50%{background:#b8e4d6;box-shadow:inset 0 0 0 1px #177e66}}
@media(prefers-reduced-motion:reduce){tr.row-locate-flash>td{animation:none!important}}
dialog#modal.settlement-entry-modal{width:min(900px,96vw)}
.invoice-status-line{flex-wrap:wrap}.invoice-profile-card p{overflow-wrap:anywhere}
@media(max-width:760px){.settlement-record dl{grid-template-columns:1fr}.settlement-record-head{align-items:flex-start}.invoice-status-line{flex-wrap:wrap;gap:8px}.invoice-profile-card .action-row{flex-wrap:wrap}}

/* Permission names and switches stay together at all viewport widths. */
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.field label.permission-card{display:flex;align-items:center;gap:10px;min-height:54px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);cursor:pointer}
.permission-name{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.permission-card:has(input:checked){border-color:var(--brand);background:#eff8f4}
.field .permission-card input{appearance:none;flex:0 0 36px;width:36px;height:22px;min-height:0;margin:0;padding:0;border:0;border-radius:12px;background:#8a9593;cursor:pointer;position:relative}
.permission-card input:before{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
.permission-card input:checked{background:var(--brand)}.permission-card input:checked:before{transform:translateX(14px)}
.permission-state{font-size:12px;white-space:nowrap;color:var(--ink-2)}.permission-state:after{content:'未开放'}.permission-card input:checked+.permission-state:after{content:'已开放';color:var(--brand-strong)}
.business-image-zone{border:2px dashed var(--line);border-radius:9px;padding:14px;display:flex;flex-direction:column;gap:12px;min-height:158px;justify-content:center;background:var(--paper)}
.business-image-zone:focus,.business-image-zone:focus-within{outline:2px solid var(--brand);outline-offset:2px}
.business-image-zone img{display:block;width:100%;height:140px;object-fit:contain;background:#fff;border-radius:6px;cursor:default}
.business-image-zone [hidden]{display:none}.business-image-zone .action-row{display:flex;flex-wrap:wrap;gap:6px;margin:0}.business-image-zone .btn{padding:7px 10px}
.business-image-field>span{color:var(--ink-3);font-size:12px}
@media(max-width:600px){.permission-grid{grid-template-columns:1fr}}
#salesPerfMvp .business-table th,#salesPerfMvp .business-table td{white-space:nowrap}
#salesPerfMvp .business-table td small{font-size:12px;color:var(--ink-3);white-space:nowrap}

.pending-onboarding summary,.owned-opening-queue summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none}.pending-onboarding .action-row{display:grid;justify-items:start;gap:8px}.finance-unclaimed>summary{cursor:pointer;display:flex;justify-content:space-between;padding:14px}.finance-match-search-results{max-height:340px;overflow:auto;display:grid;gap:6px}.finance-match-choice{display:block;padding:10px;border:1px solid #dce4ec;border-radius:8px;cursor:pointer}.finance-match-choice small{display:block}.finance-match-choice:has(input:checked){background:#eaf1ff;border-color:#8aaaf5}
.customer-combined-filter .customer-filter-panel{position:static;width:100%;margin-top:12px;box-shadow:none}
.pending-onboarding>summary>span,.owned-opening-queue>summary>span,.finance-unclaimed>summary>span{display:none}.pending-onboarding>summary::after,.owned-opening-queue>summary::after,.finance-unclaimed>summary::after{content:'⌄';margin-left:auto;font-size:18px}.pending-onboarding[open]>summary::after,.owned-opening-queue[open]>summary::after,.finance-unclaimed[open]>summary::after{content:'⌃'}
