.helper-col{background:#f3f6fa!important;color:#667085}
.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.schedule-toolbar>div:first-child b,.schedule-toolbar>div:first-child span{display:block}.schedule-toolbar>div:first-child span{margin-top:4px}.schedule-toolbar .toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px}.schedule-anchor{display:flex;align-items:center;gap:8px;padding-left:7px;color:#695448;font-size:12px;font-weight:700}.schedule-anchor input{min-width:145px}.schedule-table-wrap{max-height:calc(100vh - 350px)}.schedule-table th:first-child,.schedule-table td:first-child{position:sticky;left:0;z-index:1;background:#fff}.schedule-table thead th:first-child{z-index:3;background:#fbf7f0}.schedule-cell{border:0;background:transparent;padding:0;cursor:pointer}.schedule-cell:hover .badge{box-shadow:0 0 0 3px rgba(209,59,45,.12)}
.switch{display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.switch input{width:18px;height:18px;accent-color:var(--blue)}
.switch input:disabled{cursor:not-allowed}
.health-row{display:grid;grid-template-columns:76px 1fr 48px 150px;gap:10px;align-items:center;margin:13px 0}
.health-row small{color:var(--muted);text-align:right}
.health-row .fill{background:linear-gradient(90deg,var(--teal),var(--blue))}
nav button[hidden]{display:none}
nav button:disabled{cursor:not-allowed;opacity:.45}
@media(max-width:1100px){.health-row{grid-template-columns:70px 1fr 42px}.health-row small{grid-column:1/-1;text-align:left}.summary-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.schedule-toolbar{align-items:flex-start;flex-direction:column}.schedule-toolbar .toolbar{justify-content:flex-start}.schedule-anchor{padding-left:0}}

:root{--navy:#3b1620;--blue:#d64132;--teal:#c28b22;--bg:#f8f5ef;--line:#eadfce;--amber:#c48216}
.sidebar{width:246px;background:linear-gradient(180deg,#41131d 0%,#651a22 54%,#35131a 100%);padding:18px 16px;box-shadow:8px 0 30px rgba(75,25,25,.12)}
main{margin-left:246px}
.brand{display:flex;align-items:center;gap:11px;padding:0 8px 16px;font-size:25px;color:#ffd76b}
.brand img{width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.24))}
.brand small{color:#f4d6b3;letter-spacing:3px}
.nav-group{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#d9a889;font-size:11px;padding:13px 12px 6px;letter-spacing:1.5px;border-radius:7px;cursor:pointer;user-select:none}.nav-group:after{content:'▾';color:#d6af92;font-size:11px;transition:transform .16s ease}.nav-group:hover{background:rgba(255,255,255,.06);color:#ffe0a0}.nav-group.collapsed:after{transform:rotate(-90deg)}nav button.nav-group-collapsed{display:none!important}
nav button{color:#eadcd3;padding:9px 14px}
nav button:hover,nav button.active{background:linear-gradient(90deg,rgba(255,207,92,.2),rgba(255,255,255,.08));color:#ffe28a;box-shadow:inset 3px 0 #f3bb41}
.sidebar-foot{color:#dbb7a0;border-top-color:rgba(255,255,255,.14)}
.primary{background:linear-gradient(135deg,#d13b2d,#ad221f);box-shadow:0 5px 13px rgba(190,47,35,.18)}
.card,.panel,.table-wrap{border-color:#eadfce}
.card strong{color:#431a21}
th{background:#fbf7f0;color:#6b584d}
.summary-strip{background:#eadfce;border-color:#eadfce}
.summary-strip b{color:#4c1f25}
.helper-col{background:#edf3f8!important;color:#51697b!important;border-left:1px solid #dce6ef}
.formula-note{margin:0 0 16px;background:linear-gradient(90deg,#fff7df,#fffdf7);border-left:4px solid #d49a25}
.logic-flow{display:grid;grid-template-columns:1fr 64px 1fr 64px 1fr;align-items:center;gap:10px;margin:0 0 18px}
.logic-flow>div{min-height:92px;padding:15px 18px;background:#fff;border:1px solid #eadfce;border-radius:14px;box-shadow:0 4px 14px rgba(80,45,31,.05)}
.logic-flow b,.logic-flow span{display:block}.logic-flow b{color:#a52925;font-size:16px;margin-bottom:8px}.logic-flow span{font-size:12px;color:#75655b;line-height:1.65}
.logic-flow i{text-align:center;color:#b77b18;font-style:normal;font-weight:800}
.tier-section{margin-top:18px;padding:18px;border-radius:16px;border:1px solid #eadfce;background:#fff}
.tier-section .section-head{margin-bottom:12px}.tier-one{border-top:4px solid #cc473b}.tier-two{border-top:4px solid #d39b2c}.tier-upper{border-top:4px solid #71568e}
.tier-section h2{margin:0;font-size:18px}.toolbar{flex-wrap:wrap}
@media(max-width:1100px){.logic-flow{grid-template-columns:1fr}.logic-flow i{transform:rotate(90deg)}.sidebar{width:214px}main{margin-left:214px}}
@media(max-width:900px){.sidebar{width:82px}.brand{padding:0 5px 18px}.brand img{width:54px}.brand div,.nav-group{display:none}main{margin-left:82px}}

.auth-pending .sidebar,.auth-pending main{visibility:hidden}
.login-screen{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at 15% 15%,#8e292b 0,#4a1720 38%,#261017 100%);display:grid;place-items:center;padding:24px}
.login-screen.hidden{display:none}
.login-card{width:min(430px,100%);background:rgba(255,252,245,.98);border:1px solid rgba(255,222,137,.45);border-radius:24px;padding:34px 38px;text-align:center;box-shadow:0 25px 80px rgba(0,0,0,.35)}
.login-card>img{width:96px;height:96px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(87,35,20,.2))}.login-card h1{font-size:27px;color:#4a1720;margin:12px 0 8px}.login-card>p{color:#826d60;margin:0 0 24px}
.login-card form{display:grid;gap:14px;text-align:left}.login-card label{display:grid;gap:7px;color:#5e4a40;font-size:13px;font-weight:700}.login-card input{width:100%;font-size:16px}.login-card .primary{margin-top:4px;padding:12px}.login-card small{display:block;color:#9a7c68;margin-top:18px;line-height:1.6}.login-error{min-height:20px;color:#bd2f35;text-align:center;font-size:13px}
.login-card .remember-login{display:flex;align-items:center;gap:8px;font-weight:500;cursor:pointer}.login-card .remember-login input{width:16px;height:16px;margin:0;accent-color:#bd2f35}
.user-chip{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);background:#fff;border-radius:9px;color:#5d463d;font-size:13px;white-space:nowrap;flex-shrink:0}.user-chip b{color:#8f2d27}.user-chip button{border:0;background:none;color:#b02a2a;cursor:pointer;padding:0;white-space:nowrap}.header-actions>.primary{white-space:nowrap}
.import-drop{display:grid;place-items:center;min-height:150px;border:2px dashed #d8b46b;border-radius:16px;background:#fffbef;color:#765b32;padding:24px;text-align:center}.import-drop input{max-width:100%}
.import-errors{background:#fff1f0;border-left:4px solid #cf3c4f}.import-success{background:#eef9f3;border-left:4px solid #16845b}
.setup-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.setup-step{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px}.setup-step b,.setup-step span{display:block}.setup-step span{font-size:12px;color:var(--muted);margin-top:7px}.setup-step.done{border-color:#b8dfca;background:#f3fbf7}.setup-step.warn{border-color:#eed39a;background:#fffaf0}
.summary-strip small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:6px}
.assistant-action-col{position:sticky;left:0;z-index:2;background:#fff!important;box-shadow:5px 0 9px rgba(73,42,30,.06)}
thead .assistant-action-col{z-index:3;background:#fbf7f0!important}
.assistant-issue{display:flex;gap:5px;flex-wrap:wrap}.assistant-work-table td{vertical-align:middle}
.assistant-work-table .customer-cell{max-width:260px;white-space:normal;line-height:1.45}
.work-plan-list{margin:12px 0 0;padding-left:24px;display:grid;gap:8px;color:#26344f}
.work-form{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.work-form label{display:grid;gap:7px;color:#695448;font-size:12px;font-weight:700}.work-form .wide{grid-column:span 2}.work-form textarea,.report-editor textarea{width:100%;min-height:92px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:11px;font:inherit}
.task-checks{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.task-check{padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff}.task-check b,.task-check span{display:block}.task-check b{color:#4b2025}.task-check span{font-size:12px;color:var(--muted);margin-top:6px}.task-check.done{border-color:#b9ddc9;background:#f4fbf7}.task-check.warn{border-color:#efd099;background:#fff9ed}
.supervisor-report{padding:22px;border-radius:16px;background:linear-gradient(145deg,#fffdf8,#fff7e8);border:1px solid #ead2a1;line-height:1.8}.supervisor-report h2{color:#6d2026;margin-bottom:12px}.supervisor-report pre{white-space:pre-wrap;font-family:"Microsoft YaHei",system-ui,sans-serif;margin:0;color:#3e3029;font-size:14px}.report-editor{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-editor label{display:grid;gap:8px;color:#695448;font-size:13px;font-weight:700}
.task-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.task-page-toolbar>div:first-child b,.task-page-toolbar>div:first-child span{display:block}.task-page-toolbar>div:first-child span{margin-top:5px;color:var(--muted);font-size:12px}.task-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px;padding:16px 20px;border:2px solid #e15345;border-radius:14px;background:linear-gradient(90deg,#fff0ed,#fff8f5);color:#8d241f;box-shadow:0 6px 18px rgba(190,49,39,.1)}.task-alert strong{font-size:18px}.task-alert span{font-size:12px}.task-alert.is-complete{border-color:#82c6a2;background:#f2fbf6;color:#176b48}.task-role-grid{align-items:start}.task-row-incomplete>td{background:#fff4f0!important}.task-row-incomplete>td:first-child{box-shadow:inset 4px 0 #df4338}.task-row-done>td{background:#f7fcf9}.task-pending-count{color:#c72f2a;font-size:16px}.assessment-panel{margin-top:16px;border-top:4px solid #d39b2c}.assessment-result{display:inline-flex;padding:8px 12px;border-radius:999px;font-weight:800;white-space:nowrap}.assessment-result.pass{color:#176b48;background:#e7f7ee}.assessment-result.fail{color:#b42318;background:#ffebe8}.assessment-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:10px}.assessment-grid>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fffaf2}.assessment-grid span,.assessment-grid strong,.assessment-grid small{display:block}.assessment-grid span{color:var(--muted);font-size:12px}.assessment-grid strong{margin:7px 0 5px;color:#4b2025;font-size:20px}.assessment-grid small{color:#7d6a5d}.assessment-grid small button{padding:4px 8px;font-size:11px}
@media(max-width:1100px){.work-form{grid-template-columns:repeat(2,1fr)}.task-checks{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1100px){.assessment-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.work-form,.task-checks,.report-editor,.assessment-grid{grid-template-columns:1fr}.work-form .wide{grid-column:auto}.task-page-toolbar,.task-alert{align-items:flex-start;flex-direction:column}}
@media(max-width:1100px){.setup-steps{grid-template-columns:repeat(2,1fr)}}

.sales-screen{display:grid;gap:18px}
.sales-top-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:stretch}
.sales-today-board{background:#fff;border:1px solid #ead8c1;border-radius:18px;padding:18px;min-width:0}
.sales-today-board h2{margin:0}
.today-sales-list{display:grid;gap:8px;max-height:258px;overflow:auto;margin-top:12px}
.today-sales-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:10px;background:#fff8ef}
.today-sales-list>div.is-me{outline:2px solid #e8aa25}
.today-sales-list span{display:grid;gap:2px}
.today-sales-list small{color:var(--muted)}
.today-sales-list strong{color:#9b1c1c;white-space:nowrap}
.today-sales-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ead8c1;margin-top:12px;padding-top:12px}
.today-sales-total b{font-size:20px;color:#8f1d1d}
@media(max-width:1100px){.sales-top-layout{grid-template-columns:1fr}}
.sales-hero{position:relative;overflow:hidden;padding:25px 28px;border-radius:20px;background:linear-gradient(125deg,#42141e 0%,#7f2427 55%,#c78b25 145%);color:#fff;box-shadow:0 14px 38px rgba(74,23,29,.2)}
.sales-hero:after{content:"¥";position:absolute;right:28px;top:-36px;font-size:190px;font-weight:900;color:rgba(255,223,130,.09);transform:rotate(8deg)}
.sales-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;position:relative;z-index:1}
.sales-hero h2{font-size:27px;margin:0 0 8px;color:#ffe292}.sales-hero p{margin:0;color:#f3d9c5;font-size:13px}
.sales-hero input{background:rgba(255,255,255,.96);border-color:rgba(255,255,255,.4)}
.sales-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px;position:relative;z-index:1}
.sales-kpi{padding:15px 17px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.1);backdrop-filter:blur(5px)}
.sales-kpi span,.sales-kpi small{display:block;color:#f0cfbd}.sales-kpi span{font-size:12px}.sales-kpi b{display:block;font-size:26px;color:#fff;margin:7px 0 3px}.sales-kpi small{font-size:11px}
.sales-focus{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-radius:15px;border:1px solid #f0d28d;background:linear-gradient(90deg,#fff8e4,#fffdf8)}
.sales-focus strong{color:#8d2826}.sales-focus span{font-size:13px;color:#745c4b}
.sales-rank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.sales-person-card{position:relative;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(71,43,31,.05)}
.sales-person-card.is-me{border:2px solid #d89b2a;background:linear-gradient(150deg,#fff,#fff8e6)}
.sales-place{position:absolute;right:15px;top:14px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#f6ecdc;color:#89572b;font-weight:800}.sales-place.top{background:linear-gradient(135deg,#ffd86c,#c88a20);color:#5d2a13}
.sales-person-card h3{margin:0 0 4px;font-size:18px;color:#4d1e24}.sales-person-card>small{color:var(--muted)}
.sales-person-value{font-size:25px;font-weight:800;margin:15px 0 10px;color:#b3312b}.sales-person-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:11px;color:var(--muted)}.sales-person-meta b{display:block;color:#3f302b;font-size:14px;margin-top:4px}
.sales-progress{height:7px;border-radius:8px;background:#f0e9df;overflow:hidden;margin-top:14px}.sales-progress i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#d44535,#e3a62f)}
.sales-execution{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.execution-card{padding:16px;border:1px solid var(--line);border-radius:15px;background:#fff}.execution-card.is-me{border-color:#dca840;background:#fffaf0}.execution-card h3{margin:0 0 12px;color:#4d1e24}.execution-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.execution-stats span{font-size:11px;color:var(--muted)}.execution-stats b{display:block;color:#30241f;font-size:16px;margin-top:4px}
.sales-trend{height:220px;display:flex;align-items:flex-end;gap:7px;padding:24px 4px 29px;border-bottom:1px solid var(--line);overflow-x:auto}.sales-trend-item{height:100%;min-width:26px;flex:1;display:flex;align-items:flex-end;position:relative}.sales-trend-bar{width:100%;min-height:3px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#e5aa32,#b9322e);position:relative}.sales-trend-bar em{position:absolute;bottom:-23px;left:0;width:100%;text-align:center;font-size:10px;color:var(--muted);font-style:normal}.sales-trend-bar span{position:absolute;top:-19px;left:50%;transform:translateX(-50%);font-size:9px;color:#8c5a3e;white-space:nowrap}
.sales-status-good{color:var(--green);font-weight:700}.sales-status-watch{color:var(--amber);font-weight:700}.sales-status-risk{color:var(--red);font-weight:700}
@media(max-width:1250px){.sales-rank-grid,.sales-execution{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.sales-kpis{grid-template-columns:repeat(2,1fr)}.sales-rank-grid,.sales-execution{grid-template-columns:1fr}.sales-hero-top,.sales-focus{align-items:flex-start;flex-direction:column}}

.flow-pool-table table{min-width:1460px}
.flow-channel-heading{min-width:330px;background:#fff4d9!important;color:#7c4b17}
.flow-suggestion-editor{display:grid;gap:7px;min-width:310px}
.flow-suggestion-item,.flow-suggestion-add{display:grid;grid-template-columns:24px minmax(160px,1fr) 34px;gap:6px;align-items:center}
.flow-suggestion-item>span{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#f8ead2;color:#8c5622;font-size:11px;font-weight:800}
.flow-suggestion-item select,.flow-suggestion-add select{width:100%;min-width:0;padding:7px 9px;border:1px solid #decdbb;border-radius:8px;background:#fff;color:#49372e}
.flow-suggestion-remove{padding:5px 8px;border:1px solid #efc8c4;background:#fff6f5;color:#b9332d;font-size:17px;line-height:1;border-radius:8px}
.flow-suggestion-add{grid-template-columns:24px minmax(160px,1fr) auto}
.flow-suggestion-add:before{content:"+";display:grid;place-items:center;color:#a76d24;font-weight:800}
.flow-suggestion-add button{padding:7px 10px;white-space:nowrap;border-color:#e1c184;background:#fff9ea;color:#85541c}
.flow-suggestion-editor>small{display:block;color:var(--muted);font-size:10px;line-height:1.45}
.flow-suggestion-empty{color:var(--muted);font-size:12px;padding:5px 0}
.flow-channel-chip{display:inline-flex;width:max-content;margin:2px 5px 2px 0;padding:5px 9px;border-radius:999px;background:#fff3d8;color:#794d1f;border:1px solid #ecd19a;font-size:12px}
.flow-plan-history{display:grid;gap:8px;max-height:260px;overflow:auto}
.flow-plan-history p{display:grid;grid-template-columns:112px 1fr;gap:3px 10px;margin:0;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}
.flow-plan-history p>b{color:#71302e}.flow-plan-history p>span{color:#4e3b32}.flow-plan-history p>small{grid-column:2;color:var(--muted)}

.base-source-note{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;margin:0 0 10px;padding:6px 10px;border:1px solid #ead9b8;border-left:4px solid #d39a26;border-radius:8px;background:#fff9ec}
.base-source-note b{color:#702127;font-size:12px}.base-source-note span{color:#705f53;font-size:12px;line-height:1.5}
.base-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 12px;padding:14px 17px;border:1px solid var(--line);border-radius:14px;background:#fff}
.base-toolbar>div:first-child b,.base-toolbar>div:first-child span{display:block}.base-toolbar>div:first-child b{color:#4b2025;font-size:17px}.base-toolbar>div:first-child span{margin-top:5px;color:var(--muted);font-size:12px}
.base-toolbar input{min-width:250px}.base-table-wrap{max-height:calc(100vh - 330px)}
.base-table{min-width:max-content}.base-table th,.base-table td{white-space:nowrap}.base-table td{max-width:260px;overflow:hidden;text-overflow:ellipsis}
.base-action-col{position:sticky!important;left:0;z-index:2;min-width:142px;background:#fff!important;box-shadow:6px 0 10px rgba(73,42,30,.07)}
.base-action-col{min-width:176px}
.base-header-check{display:inline-flex;align-items:center;gap:5px;color:#5b4639;font-size:12px;cursor:pointer}
.base-header-check input,.base-row-check input{width:15px;height:15px;accent-color:#c72d2d;cursor:pointer}
.base-row-check{display:inline-flex;align-items:center;margin-right:5px;vertical-align:middle}
thead .base-action-col{z-index:4;background:#fbf7f0!important}.base-action-col>div{display:flex;gap:5px}.base-action-col button{padding:6px 9px}
.danger-link{color:#b42318!important;border-color:#efc2bd!important;background:#fff7f6!important}.number-cell{text-align:right;font-variant-numeric:tabular-nums}
.auto-col{background:#fff8df!important;color:#725a21}.correction-col{background:#eef5fb!important;color:#365b75}
.base-dialog{width:min(980px,calc(100vw - 48px));max-height:88vh;padding:0;border:0;border-radius:20px;background:#fff;box-shadow:0 28px 90px rgba(42,19,22,.35)}
.base-dialog::backdrop{background:rgba(33,17,20,.55);backdrop-filter:blur(2px)}.base-dialog form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:88vh}
.base-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);background:#fffaf0}.base-dialog-head b,.base-dialog-head span{display:block}.base-dialog-head b{font-size:20px;color:#541e25}.base-dialog-head span{margin-top:4px;color:var(--muted);font-size:12px}
.base-dialog-close{border:0;background:transparent;font-size:26px;color:#866c5d}.base-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px 24px;overflow:auto}.base-form label{display:grid;gap:7px}.base-form label>span{font-size:12px;font-weight:700;color:#665247}.base-form .wide{grid-column:span 2}.base-form input,.base-form select,.base-form textarea{width:100%}.base-form textarea{min-height:82px;resize:vertical;border:1px solid var(--line);border-radius:9px;padding:10px;font:inherit}
.base-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--line);background:#fff}.base-finance-grid{display:grid;gap:16px;margin-top:16px}.base-finance-grid .panel{min-width:0}.base-finance-grid .table-wrap{max-height:420px}
@media(max-width:900px){.base-source-note,.base-toolbar{align-items:flex-start;flex-direction:column}.base-source-note b{min-width:0}.base-toolbar input{min-width:0;width:100%}.base-form{grid-template-columns:1fr}.base-form .wide{grid-column:auto}}

.sheet-table-wrap{max-height:calc(100vh - 325px);border:1px solid #dfd2c2}
.sheet-table{min-width:max-content;border-collapse:separate;border-spacing:0}.sheet-table th{position:sticky;top:0;z-index:3}.sheet-table td{padding:0;background:#fff}.sheet-table .base-action-col{padding:7px 8px}
.sheet-cell{display:block;width:132px;min-width:100%;height:38px;padding:7px 9px;border:0;border-radius:0;background:transparent;color:#2f2925;font:inherit;outline:none}
.sheet-cell:hover{background:#fffaf0}.sheet-cell:focus{position:relative;z-index:2;background:#fff;border:2px solid #d59a27;box-shadow:0 0 0 2px rgba(213,154,39,.12)}
.sheet-cell[type="date"]{width:142px}.sheet-cell[type="number"]{width:110px;text-align:right;font-variant-numeric:tabular-nums}.sheet-cell.sheet-wide{width:220px}
.sheet-table select.sheet-cell{cursor:pointer}.sheet-table tr:focus-within td{background:#fffdf7}.sheet-table .helper-col{padding:9px 12px}
.base-save-status{display:inline-flex;align-items:center;white-space:nowrap;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:700}.base-save-status.saved{color:#176b48;background:#eaf8f0}.base-save-status.saving{color:#915d13;background:#fff2d7}
.paste-dialog{width:min(1060px,calc(100vw - 48px))}.paste-body{display:grid;gap:12px;padding:22px 24px}.paste-columns{padding:11px 14px;border:1px solid #ead4a2;border-radius:10px;background:#fff8e7;color:#7c5525;font-size:12px;line-height:1.7}
.paste-body textarea{width:100%;min-height:340px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:14px;font:13px Consolas,"Microsoft YaHei",sans-serif;line-height:1.6}
.correction-sheet-wrap{max-height:calc(100vh - 330px)}.correction-sheet{min-width:2050px}.correction-sheet td{vertical-align:middle}.correction-sheet .correction-col{padding:0}.correction-sheet .auto-col{padding:9px 12px}
.correction-sheet .sheet-cell{width:145px;background:rgba(255,255,255,.72)}.correction-sheet .correction-note{width:210px}.correction-sheet .customer-context{min-width:230px;max-width:290px;white-space:normal;line-height:1.45;padding:8px 11px}
.correction-sheet .context-wide{max-width:235px;overflow:hidden;text-overflow:ellipsis;padding:8px 11px}.inline-edit-tip{color:#8a6b58;font-size:11px;white-space:normal}
.column-hidden{display:none!important}
.column-picker{position:relative}.column-picker>summary{display:inline-flex;align-items:center;gap:7px;list-style:none;cursor:pointer;white-space:nowrap;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#4e3b32;font-size:13px}.column-picker>summary::-webkit-details-marker{display:none}.column-picker>summary em{padding:2px 6px;border-radius:999px;background:#edf7f1;color:#18724b;font-size:10px;font-style:normal}.column-picker[open]>summary{border-color:#d49a25;background:#fff8e7;color:#7b4f1c}.column-picker[open]>summary em{background:#ffe6b0;color:#7b4f1c}
.column-picker-panel{position:absolute;right:0;top:calc(100% + 7px);z-index:40;width:min(390px,88vw);padding:14px;border:1px solid #ddcba9;border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(66,38,25,.18)}
.column-picker-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.column-picker-title>div{display:grid;gap:4px;min-width:0}.column-picker-title b{color:#4b2025}.column-picker-title small{max-width:275px;color:#967969;font-size:11px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.column-picker-title button{flex:0 0 auto;padding:5px 9px;font-size:11px}
.column-picker-search{width:100%!important;margin-bottom:8px}.column-picker-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.column-picker-actions button{padding:5px 8px;border-color:#e1c889;background:#fff9e9;color:#79521d;font-size:11px}.column-picker-actions span{color:#90796b;font-size:11px}
.column-picker-grid{display:grid;grid-template-columns:1fr;gap:5px;max-height:330px;padding-right:4px;overflow-y:auto;overflow-x:hidden}.column-picker-grid .column-picker-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:6px 9px;border:1px solid #eee5d7;border-radius:8px;background:#fff;color:#5b4a40;font-size:12px;white-space:normal}.column-picker-grid .column-picker-row:hover{border-color:#e0ba63;background:#fffaf0}.column-picker-row>span{display:flex;align-items:center;gap:7px;min-width:0}.column-picker-row b{font-weight:600;overflow-wrap:anywhere}.column-picker-row em{flex:0 0 auto;padding:2px 7px;border-radius:999px;background:#e8f7ef;color:#176b48;font-size:10px;font-style:normal}.column-picker-row.is-hidden{border-color:#ead9d7;background:#f7f3f2;color:#8b7772}.column-picker-row.is-hidden em{background:#e9e5e4;color:#796d69}.column-picker-row.picker-search-hidden{display:none}.column-picker-grid input{min-width:auto!important;width:auto!important}
.raw-full-sheet .raw-source-cell{background:#fff}.raw-full-sheet .raw-source-cell:hover{background:#fff8e7}.raw-full-sheet .raw-source-cell:focus{background:#fffdf8}.raw-full-sheet td.auto-col{padding:8px 10px}
.advanced-filter-control{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.advanced-filter-control>button:first-child{border-color:#d8b66f;background:#fff9e9;color:#7c541f;white-space:nowrap}.advanced-filter-control.has-active-filter{padding:4px 6px;border:1px solid #efd59a;border-radius:9px;background:#fffdf6}.active-filter-label{color:#7f6047;font-size:11px;white-space:nowrap}
.advanced-filter-chip{display:inline-flex;align-items:center;gap:5px;max-width:280px;padding:5px 6px 5px 9px;border:1px solid #e7c983;border-radius:999px;background:#fff7dc;color:#754b18;font-size:11px;white-space:nowrap}.advanced-filter-chip>span{overflow:hidden;text-overflow:ellipsis}.advanced-filter-chip button{display:inline-grid;place-items:center;width:19px;height:19px;padding:0;border:0;border-radius:50%;background:#f2d8d3;color:#a42c27;font-size:15px;line-height:1}.advanced-filter-control .filter-clear{padding:6px 8px;border-color:#e7c6c2;background:#fff7f6;color:#b02b28;font-size:11px}
.advanced-filter-dialog{width:min(680px,calc(100vw - 40px))}.advanced-filter-form{grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.advanced-filter-form input:disabled{background:#eee;color:#999}
.historical-account-fold{margin-top:12px;border:1px solid #e3d4bd;border-radius:12px;background:#fbf8f3;overflow:hidden}.historical-account-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;cursor:pointer;list-style:none;color:#654b3d}.historical-account-fold>summary::-webkit-details-marker{display:none}.historical-account-fold>summary span{display:flex;align-items:center;gap:8px}.historical-account-fold>summary em{padding:3px 8px;border-radius:999px;background:#eee7dc;color:#756458;font-size:11px;font-style:normal}.historical-account-fold>summary small{color:#9a8374}.historical-account-fold>summary:after{content:'展开 ▼';padding:5px 9px;border:1px solid #d9c6aa;border-radius:7px;background:#fff;font-size:11px}.historical-account-fold[open]>summary:after{content:'收起 ▲'}.historical-account-fold[open]>summary{border-bottom:1px solid #e3d4bd;background:#fffaf1}.historical-account-note{padding:9px 14px;background:#fff8e9;color:#84664e;font-size:12px}.historical-account-fold .table-wrap{margin:0;border:0;border-radius:0;max-height:440px}
.staff-filter-bar{padding:12px 14px;margin-bottom:12px;border:1px solid var(--line);border-radius:12px;background:#fffaf1}.staff-date-missing{display:inline-flex;padding:4px 8px;border-radius:999px;background:#ffebe7;color:#b42318}
.phone-sheet-wrap{max-height:calc(100vh - 335px)}.phone-sheet{min-width:3100px}.phone-sheet .sheet-cell{width:130px}.phone-sheet .sheet-wide{width:210px}
.group-register-panel{margin:16px 0;border-top:4px solid #d39a26;background:linear-gradient(135deg,#fff,#fff9ea)}.group-register-form{display:grid;grid-template-columns:1.1fr 1.1fr 1.1fr .8fr auto;gap:12px;align-items:end}.group-register-form label{display:grid;gap:7px}.group-register-form label span{font-size:12px;font-weight:700;color:#695448}.group-register-form select,.group-register-form input{width:100%}.group-register-form>.primary{height:40px;white-space:nowrap}
.evidence-cell{display:flex;align-items:center;justify-content:center;gap:4px;min-width:118px;height:31px}.evidence-cell.is-uploading{opacity:.55;pointer-events:none}.evidence-drop-zone{border:1px dashed transparent;border-radius:7px;outline:none}.evidence-drop-zone:focus,.evidence-drop-zone.drag-over{border-color:#d49a24;background:#fff4d3;box-shadow:0 0 0 2px rgba(212,154,36,.16)}.evidence-upload,.evidence-view{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border:1px solid #d6b670;border-radius:7px;background:#fff9e9;color:#80571e;font-size:11px;cursor:pointer;white-space:nowrap}.evidence-upload input{display:none}.evidence-view{border-color:#a8d5bd;background:#edf9f2;color:#176b48}.evidence-remove{display:inline-flex;align-items:center;justify-content:center;padding:5px 7px!important;border:1px solid #e5b5b1!important;border-radius:7px!important;background:#fff5f4!important;color:#b42318!important;font-size:11px!important;white-space:nowrap;cursor:pointer!important;pointer-events:auto!important}.evidence-remove:hover,.evidence-remove.is-confirming{border-color:#c83b34!important;background:#c92e28!important;color:#fff!important}.evidence-remove:disabled{opacity:.55;cursor:wait!important}.evidence-status{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f0ece6;color:#796b61;font-size:10px}.evidence-status.has-evidence{background:#e8f7ef;color:#176b48}
.evidence-dialog{width:min(920px,calc(100vw - 36px))}.evidence-preview{display:grid;place-items:center;min-height:260px;max-height:70vh;padding:16px;overflow:auto;background:#211d1d}.evidence-preview img{display:block;max-width:100%;max-height:66vh;object-fit:contain}.button-link{display:inline-flex;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#654f42;text-decoration:none;font-size:12px}

/* 全系统表格紧凑模式：减少空白，但不删除、折叠任何字段。 */
main{padding-left:20px;padding-right:20px}
header{height:82px}
.panel{padding:14px}.panel h2{margin-bottom:12px}.section-head{margin-bottom:10px}
.summary-strip{margin-bottom:11px}.summary-strip div{padding:11px 13px}.summary-strip span{margin-bottom:4px}.summary-strip b{font-size:18px}
.table-wrap table{font-size:12px}.table-wrap table th{padding:7px 8px}.table-wrap table td{padding:7px 8px;line-height:1.25}.table-wrap button{padding:4px 7px;font-size:11px}.table-wrap input,.table-wrap select{padding:5px 7px;font-size:12px}
.base-toolbar{margin:10px 0 8px;padding:9px 11px;gap:10px}.base-toolbar>div:first-child b{font-size:15px}.base-toolbar>div:first-child span{margin-top:3px}.base-toolbar input{min-width:170px}.toolbar{gap:6px}
.base-table td{max-width:190px}.base-action-col{min-width:84px;width:84px}.base-action-col>div{gap:3px}.base-action-col button{padding:4px 6px}
.table-wrap table.sheet-table td{padding:0}.sheet-table .base-action-col{padding:4px 5px}.sheet-cell{width:108px;height:31px;padding:4px 6px;font-size:12px}.sheet-cell[type="date"]{width:120px}.sheet-cell[type="number"]{width:82px}.sheet-cell.sheet-wide{width:158px}.sheet-table .helper-col{padding:6px 8px}
.correction-sheet .sheet-cell{width:120px}.correction-sheet .correction-note{width:155px}.correction-sheet .customer-context{min-width:175px;max-width:215px;padding:6px 8px}.correction-sheet .context-wide{max-width:185px;padding:6px 8px}
.raw-correction-compact{min-width:1580px}.raw-correction-compact th,.raw-correction-compact td{padding:3px 5px!important;height:29px;max-width:150px}
.raw-correction-compact [data-col="actions"]{width:58px;min-width:58px}.raw-correction-compact [data-col="actions"] button{padding:3px 5px}
.raw-correction-compact [data-col="statDate"]{width:78px}.raw-correction-compact [data-col="customerName"]{width:155px;min-width:155px;max-width:155px}
.raw-correction-compact [data-col="customerName"] .sheet-cell{width:155px;height:28px;padding:3px 5px}.raw-correction-compact [data-col="addedBy"]{width:145px;max-width:145px;overflow:hidden;text-overflow:ellipsis}
.raw-correction-compact [data-col="departmentPath"]{width:125px;max-width:125px}.raw-correction-compact [data-col="source"],.raw-correction-compact [data-col="tags"]{width:105px;max-width:105px}
.raw-correction-compact [data-col="duplicateStatus"]{width:112px}.raw-correction-compact [data-col="validStatus"]{width:82px}.raw-correction-compact [data-col="invalidEvidence"]{width:88px}
.raw-correction-compact .sheet-cell{height:28px;width:105px;padding:3px 5px}.raw-correction-compact .correction-note{width:125px}
.raw-valid-row td{background:var(--raw-valid-color,#fff0f0)!important}.raw-invalid-row td{background:var(--raw-invalid-color,#ededed)!important;color:#6f6f6f}.raw-invalid-row .base-action-col{background:var(--raw-invalid-color,#ededed)!important}
.raw-duplicate-row td{border-top:2px solid #9b51e0!important;border-bottom:2px solid #9b51e0!important}.raw-duplicate-row td:first-child{border-left:5px solid #9b51e0!important}
.validity-effective{background:#ffdede!important;color:#b42318!important;font-weight:800}.validity-invalid{background:#dedede!important;color:#666!important;font-weight:800}.validity-pending{background:#fff6db!important;color:#8a5c13!important}
.duplicate-select{background:#f2e5ff!important;color:#6f2ca1!important;font-weight:700}.duplicate-clear{display:inline-flex;padding:3px 6px;border-radius:999px;background:#eaf8f0;color:#31715a;font-size:10px}
.summary-valid{color:#c52026!important}.summary-invalid{color:#777!important}.summary-duplicate{color:#7b2cbf!important}
.raw-correction-compact .evidence-cell{min-width:78px;height:28px}.raw-correction-compact .evidence-upload,.raw-correction-compact .evidence-view{padding:3px 5px;font-size:10px}
.raw-correction-compact thead th{position:sticky;top:0;z-index:6;background:#fff8e9!important;box-shadow:0 1px 0 #d9c9ad}
.raw-table-guide{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:7px 0;padding:8px 11px;border:1px solid #e5c98e;border-radius:9px;background:#fff9e9;color:#5f3b16;font-size:12px}.raw-table-guide b{color:#8f1d22}
.status-color-picker{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 7px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;white-space:nowrap}.status-color-picker input[type="color"]{min-width:24px!important;width:24px!important;height:24px;padding:1px;border:0;background:transparent;cursor:pointer}
.phone-sheet{min-width:2550px}.phone-sheet .sheet-cell{width:105px}.phone-sheet .sheet-wide{width:155px}
@media(max-width:900px){.sheet-cell{width:118px}.paste-body textarea{min-height:260px}.correction-sheet{min-width:1900px}}
@media(max-width:900px){.group-register-form{grid-template-columns:repeat(2,minmax(0,1fr))}.group-register-form>.primary{grid-column:span 2}}
@media(max-width:760px){.column-picker-grid{grid-template-columns:1fr}.column-picker-panel{position:fixed;left:12px;right:12px;top:110px;width:auto;max-height:70vh;overflow:auto}.advanced-filter-form{grid-template-columns:1fr}.group-register-form{grid-template-columns:1fr}.group-register-form>.primary{grid-column:auto}}
.excel-grid table{border-collapse:separate;border-spacing:0;font-size:13px}
.excel-grid th{position:sticky;top:0;z-index:2;background:#f4f7fb;border-right:1px solid #d9e0ea;border-bottom:1px solid #cbd5e1;white-space:nowrap;padding:8px 9px}
.excel-grid td{border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:7px 9px;vertical-align:top;white-space:nowrap}
.excel-grid tbody tr:nth-child(even){background:#fafcff}
.excel-grid tbody tr:hover{background:#fff7e8}
.excel-grid .row-number{position:sticky;left:0;background:#f4f7fb;color:#64748b;text-align:center;min-width:42px}
.excel-grid .need-cell{white-space:normal;min-width:260px;max-width:420px;line-height:1.5}
.customer-group-panel select{min-width:320px;max-width:100%}
.editable-mark{display:inline-block;color:#087f5b;background:#e7f8f0;border-radius:999px;padding:3px 7px;font-size:12px;white-space:nowrap}
.performance-sheet{font-size:12px}
.performance-sheet,.expense-sheet{table-layout:fixed;width:max-content;min-width:100%}
.performance-sheet th,.performance-sheet td,.expense-sheet th,.expense-sheet td{box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.performance-sheet .sheet-cell,.expense-sheet .sheet-cell{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.expense-sheet [data-col="actions"]{width:66px;min-width:66px;max-width:66px}
.expense-sheet [data-col="date"],.expense-sheet [data-col="paymentDate"]{width:116px;min-width:116px;max-width:116px}
.expense-sheet [data-col="expenseMonth"]{width:105px;min-width:105px;max-width:105px}
.expense-sheet [data-col="category"]{width:120px;min-width:120px;max-width:120px}
.expense-sheet [data-col="account"]{width:110px;min-width:110px;max-width:110px}
.expense-sheet [data-col="summary"]{width:230px;min-width:230px;max-width:230px}
.expense-sheet [data-col="amount"]{width:100px;min-width:100px;max-width:100px}
.expense-sheet [data-col="voucherImage"]{width:125px;min-width:125px;max-width:125px}
.expense-sheet [data-col="project"]{width:135px;min-width:135px;max-width:135px}
.expense-sheet [data-col="owner"]{width:100px;min-width:100px;max-width:100px}
.performance-sheet th{padding:5px 6px;line-height:1.2}
.performance-sheet td{padding:3px 4px;line-height:1.2;max-width:155px}
.performance-sheet .sheet-cell{height:26px;width:82px;padding:2px 4px;font-size:12px}
.performance-line-tag,.performance-line-select{display:inline-flex;align-items:center;justify-content:center;border:0!important;border-radius:999px!important;font-weight:800!important;white-space:nowrap}.performance-line-select{width:88px!important;padding:3px 22px 3px 9px!important;background-position:right 6px center!important}.line-first{background-color:#ffe2e2!important;color:#b42318!important}.line-second{background-color:#e0efff!important;color:#175cd3!important}.line-third{background-color:#e9e3ff!important;color:#6938b8!important}.line-fourth{background-color:#dcf7e8!important;color:#087443!important}.line-other{background-color:#eee!important;color:#555!important}.performance-line-tag{min-width:66px;padding:4px 9px}
.history-import-entry{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0;padding:10px 12px;border:1px dashed #d49a2d;border-radius:10px;background:#fff8e8}.history-import-entry b{color:#8f1d22}.history-import-entry span{color:var(--muted);font-size:12px}.history-import-entry button{margin-left:auto}.history-mapping-panel{margin-top:16px;border:2px solid #e0ad4f}.history-mapping-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:9px;margin:14px 0}.history-mapping-grid label{display:flex;flex-direction:column;gap:5px}.history-mapping-grid label span{font-size:12px;font-weight:700;color:#593238}.history-mapping-grid select{width:100%}.history-source-preview{margin-top:12px}.history-source-preview .table-wrap{max-height:260px;margin-top:7px}.history-source-preview th,.history-source-preview td{white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis}.history-mapping-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.history-mapping-actions p{margin:0;color:var(--muted);font-size:12px}
@media(max-width:1200px){.history-mapping-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media(max-width:760px){.history-mapping-grid{grid-template-columns:1fr}.history-mapping-actions{align-items:stretch;flex-direction:column}}
.performance-sheet .sheet-cell.sheet-wide{width:128px}
.performance-sheet .base-action-col{width:72px;min-width:72px}
.performance-sheet th:nth-child(2),.performance-sheet td:nth-child(2),.performance-sheet td:nth-child(2) .sheet-cell{width:96px}
.performance-sheet th:nth-child(3),.performance-sheet td:nth-child(3),.performance-sheet td:nth-child(3) .sheet-cell{width:78px}
.performance-sheet th:nth-child(4),.performance-sheet td:nth-child(4),.performance-sheet td:nth-child(4) .sheet-cell{width:78px}
.performance-sheet th:nth-child(5),.performance-sheet td:nth-child(5),.performance-sheet td:nth-child(5) .sheet-cell{width:58px}
.performance-sheet th:nth-child(6),.performance-sheet td:nth-child(6){width:68px}
.performance-sheet th:nth-child(7),.performance-sheet td:nth-child(7),.performance-sheet td:nth-child(7) .sheet-cell{width:76px}
.performance-sheet th:nth-child(8),.performance-sheet td:nth-child(8),.performance-sheet td:nth-child(8) .sheet-cell{width:96px}
.performance-sheet th:nth-child(9),.performance-sheet td:nth-child(9),.performance-sheet td:nth-child(9) .sheet-cell{width:82px}
.performance-sheet th:nth-child(10),.performance-sheet td:nth-child(10),.performance-sheet td:nth-child(10) .sheet-cell{width:82px}
.performance-sheet th:nth-child(11),.performance-sheet td:nth-child(11),.performance-sheet td:nth-child(11) .sheet-cell{width:68px}
.performance-sheet th:nth-child(12),.performance-sheet td:nth-child(12),.performance-sheet td:nth-child(12) .sheet-cell{width:128px}
.inline-follow{height:29px;min-width:88px;max-width:150px;padding:3px 6px;border:1px solid #d8cbbb;border-radius:5px;background:#fff;font-size:12px}
.inline-follow.note{width:180px;max-width:180px}.inline-follow.need{width:220px;max-width:220px}
.inline-save-hint{margin:4px 0 10px;color:#7b6b63;font-size:12px}
.settings-grid-table th,.settings-grid-table td{padding:5px 8px;vertical-align:middle}
.inline-setting{box-sizing:border-box;width:112px;min-width:0;height:29px;padding:3px 7px;border:1px solid #d9cdbf;border-radius:5px;background:#fff;color:#24181a;font:inherit;font-size:12px}
.inline-setting:focus{border-color:#b98b36;outline:2px solid rgba(214,164,61,.16)}
.inline-setting.short{width:78px}.inline-setting.wide{width:170px}.inline-setting.date{width:132px}.inline-setting.number{text-align:right}
.staff-group-row td{padding:9px 12px;background:#fff7e7;color:#7a3d17;border-top:2px solid #e9c37b}
.staff-group-row td span{margin-left:12px;color:#9a765f;font-size:12px;font-weight:400}
.staff-group-row.departed td{background:#f6f1f1;color:#7b4c52;border-top-color:#d8c5c8}
.staff-departed-row td{background:#fcfafa;color:#755f63}
.knowledge-access-note{display:flex;align-items:center;gap:9px;margin-bottom:16px;padding:13px 16px}
.knowledge-access-note span,.knowledge-area{display:inline-block;padding:4px 9px;border-radius:999px;background:#fff0d2;color:#8a4b14;font-size:12px}
.knowledge-access-note small{margin-left:auto;color:#8f7e72}
.knowledge-upload-panel{margin-bottom:16px}.knowledge-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;align-items:end}
.knowledge-form label{display:grid;gap:5px;color:#725e52;font-size:12px}.knowledge-form input,.knowledge-form select,.knowledge-form textarea{width:100%}
.knowledge-note-field{grid-column:span 2}.knowledge-note-field textarea{min-height:72px;resize:vertical}
.knowledge-toolbar{margin-top:16px}.knowledge-note-cell{max-width:320px;overflow:hidden;text-overflow:ellipsis}
.knowledge-area.area-first{background:#e8f2ff;color:#24558b}.knowledge-area.area-second{background:#eee9ff;color:#5b4495}.knowledge-area.area-common{background:#fff0d2;color:#8a4b14}
.knowledge-dialog{max-width:760px}.knowledge-note-full{padding:20px;white-space:pre-wrap;line-height:1.8;max-height:65vh;overflow:auto}
@media(max-width:1100px){.knowledge-form{grid-template-columns:repeat(2,minmax(160px,1fr))}.knowledge-access-note{align-items:flex-start;flex-wrap:wrap}.knowledge-access-note small{width:100%;margin-left:0}}
.saved-mark{color:#11835a;font-size:12px}
.excel-date-filter{position:relative;min-width:92px}
.excel-date-filter>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;color:inherit;font-weight:700}
.excel-date-filter>summary::-webkit-details-marker{display:none}
.excel-date-filter>summary span{font-size:9px;color:#9a6b16}
.excel-date-filter-panel{position:absolute;z-index:30;top:28px;left:0;width:230px;padding:12px;display:grid;gap:10px;background:#fff;border:1px solid #e5c98f;border-radius:10px;box-shadow:0 12px 30px rgba(54,31,16,.18)}
.excel-date-filter-panel label{display:grid;gap:5px;font-size:12px;color:#6f5b45}
.excel-date-filter-panel input,.excel-date-filter-panel select{width:100%;padding:7px 8px}
.excel-date-filter-panel button{padding:7px 9px;border:1px solid #e2c58e;background:#fff8ea;border-radius:7px;cursor:pointer}
.excel-date-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.excel-date-range input{min-width:0}
.table-wrap:has(.excel-date-filter[open]){overflow:visible}
.finance-simple-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:13px 16px;background:#fff;border:1px solid #ecd8b5;border-radius:12px}
.finance-simple-head b{display:block;font-size:18px;color:#54151d}
.finance-simple-head span{display:block;margin-top:4px;color:#8a786d;font-size:12px}
.finance-main-summary small{display:block;margin-top:5px;color:#8a786d}
.finance-party-panel{padding:16px}
.finance-party-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.finance-party-card{padding:16px;border:1px solid #eadbc3;border-radius:12px;background:#fffdf9}
.finance-party-card.party-sheng{border-top:4px solid #b72b2d}
.finance-party-card.party-peng{border-top:4px solid #d89b20}
.finance-party-card.party-company{border-top:4px solid #485b78}
.finance-party-title{display:flex;align-items:center;justify-content:space-between}
.finance-party-title strong{font-size:20px}
.finance-party-title span{font-size:12px;color:#8a786d}
.finance-party-card dl{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0 0}
.finance-party-card dl div{padding:0 10px;border-left:1px solid #eee2cf}
.finance-party-card dl div:first-child{padding-left:0;border-left:0}
.finance-party-card dt{font-size:12px;color:#8a786d}
.finance-party-card dd{margin:6px 0 0;font-size:17px;font-weight:800}
.finance-party-card dd.negative{color:#c63434}
.party-opening-editor{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px;padding:10px;background:#fbf6ee;border-radius:9px}
.party-opening-editor label{display:grid;gap:5px;color:#7d6a5d;font-size:11px}.party-opening-editor input{box-sizing:border-box;width:100%;min-width:0;padding:7px;border:1px solid #dfd1bf;border-radius:6px;background:#fff}
.finance-party-card dl.party-ledger-dl{grid-template-columns:repeat(3,1fr);row-gap:13px}.finance-party-card dl.party-ledger-dl div:nth-child(4){padding-left:0;border-left:0}
.finance-party-card dl.party-ledger-dl div:last-child{grid-column:span 2;padding:9px 10px;border-radius:8px;background:#fff3d7;border-left:0}.finance-party-card dl.party-ledger-dl div:last-child dd{font-size:21px;color:#5b1820}
.finance-account-spread{margin-top:14px}.finance-account-spread .negative{color:#c63434}
.finance-quick-details{display:grid;gap:12px;margin-top:14px}
.finance-detail{padding:0;overflow:visible}
.finance-detail>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;cursor:pointer;list-style:none}
.finance-detail>summary::-webkit-details-marker{display:none}
.finance-detail>summary span{color:#765d42;font-size:13px}
.finance-detail[open]>summary{border-bottom:1px solid #eee2cf}
.finance-detail>.table-wrap,.finance-detail>.finance-detail-grid{margin:14px}
.finance-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.finance-detail h3{margin:8px 0 10px;font-size:14px}
.finance-account-manager{margin:14px 0;padding:0;overflow:visible}
.finance-account-manager>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;cursor:pointer;list-style:none}
.finance-account-manager>summary::-webkit-details-marker{display:none}.finance-account-manager>summary span{color:#765d42;font-size:13px}
.finance-account-manager[open]>summary{border-bottom:1px solid #eee2cf}.finance-account-manager>.table-wrap{margin:12px}
.finance-account-guide{margin:12px;padding:11px 13px;border-left:4px solid #d89b20;background:#fff8e9;color:#6f553d;font-size:12px;line-height:1.6}
.finance-account-manager td input,.finance-account-manager td select{box-sizing:border-box;width:100%;min-width:88px;height:29px;padding:3px 6px;border:1px solid #dfd1bf;border-radius:5px;background:#fff;font-size:12px}
.finance-account-manager td input.number{min-width:92px;text-align:right}
.financial-account-dialog{width:min(720px,92vw);border:0;border-radius:16px;padding:0;box-shadow:0 22px 70px rgba(50,18,22,.28)}
.financial-account-dialog::backdrop{background:rgba(40,18,20,.48)}.financial-account-dialog form{padding:22px}.financial-account-dialog .section-head button{font-size:24px;border:0;background:transparent}
.financial-account-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:16px}.financial-account-form label{display:grid;gap:6px;color:#705d51;font-size:12px}.financial-account-form label.wide{grid-column:1/-1}
.financial-account-form input,.financial-account-form select{width:100%;box-sizing:border-box;padding:9px;border:1px solid #dfd1bf;border-radius:7px;background:#fff}
@media(max-width:1100px){.finance-simple-head{align-items:flex-start;flex-direction:column}.finance-party-grid,.finance-detail-grid{grid-template-columns:1fr}.finance-party-card dl{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.financial-account-form,.excel-date-range{grid-template-columns:1fr}}
.compact-staff-table th,.compact-staff-table td{white-space:nowrap}
.department-tags{display:flex;gap:5px;flex-wrap:wrap}.department-tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f3eee5;color:#6f5544;font-size:12px}.primary-department{background:#fff0cc;color:#8c5310;font-weight:700}.muted{color:#aa9d94;font-size:12px}
.staff-department-dialog{width:min(720px,92vw);border:0;border-radius:16px;padding:0;box-shadow:0 22px 70px rgba(50,18,22,.28)}.staff-department-dialog::backdrop{background:rgba(40,18,20,.48)}.staff-department-dialog form{padding:22px}.staff-department-dialog .section-head button{font-size:24px;border:0;background:transparent}.department-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.department-choice-grid label{display:flex;gap:8px;align-items:center;padding:11px;border:1px solid #eadbc3;border-radius:9px;cursor:pointer}.department-choice-grid label:has(input:checked){background:#fff4d9;border-color:#d69727;color:#6c3812}.primary-department-field{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:10px;margin:12px 0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.permission-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.permission-guide>div{display:flex;align-items:center;gap:10px;padding:13px 15px;background:#fff7e8;border:1px solid #ecd8b5;border-radius:11px}.permission-guide b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#b82d2d;color:#fff}.permission-guide span{font-size:13px;color:#604b3e}.permission-simple-grid{grid-template-columns:minmax(280px,.75fr) minmax(600px,1.8fr)}.permission-person-list{display:grid;gap:7px;max-height:620px;overflow:auto}.permission-person-list button{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:10px 12px;border:1px solid #eadfce;border-radius:9px;background:#fff}.permission-person-list button.active{background:#fff0d6;border-color:#d79b29;box-shadow:inset 3px 0 #b52b2b}.permission-person-list span{display:grid;gap:3px}.permission-person-list small{color:#8e7d70}.permission-person-list em{font-style:normal;font-size:12px;color:#7c5d47}.permission-person-head{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.permission-person-head>div,.permission-person-head>label{display:grid;gap:6px;padding:12px;background:#fbf8f3;border-radius:9px}.permission-person-head span,.permission-person-head label{font-size:12px;color:#7a685b}.permission-quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:18px}.permission-quick-grid label,.permission-action-list label,.permission-all-pages label{display:grid;grid-template-columns:1fr 120px 70px;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid #eee6db}.permission-quick-grid small,.permission-action-list small,.permission-all-pages small{color:#8a786d;text-align:right}.permission-action-list{display:grid;gap:2px}.permission-advanced{margin-top:16px;padding:0}.permission-advanced>summary{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;cursor:pointer;list-style:none}.permission-advanced>summary span{font-size:12px;color:#8a786d}.permission-advanced[open]>summary{border-bottom:1px solid #eee2cf}.permission-advanced>h3,.permission-advanced>.table-wrap,.permission-all-pages{margin:14px 18px}.permission-all-pages{display:grid;grid-template-columns:repeat(2,1fr)}.compact-switch{justify-content:center}.compact-switch span{font-size:11px}
.monthly-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.monthly-overview-grid>div{display:grid;gap:6px;padding:16px;background:#fff;border:1px solid #eadbc3;border-radius:12px}.monthly-overview-grid span{font-size:12px;color:#77675c}.monthly-overview-grid b,.monthly-overview-grid strong{font-size:24px;color:#52151d}.monthly-overview-grid small{color:#89776c}.monthly-overview-grid .monthly-hero-card{grid-column:span 2;background:linear-gradient(135deg,#5b1420,#8f2024);border:0;color:#fff}.monthly-overview-grid .monthly-hero-card span,.monthly-overview-grid .monthly-hero-card small{color:#f4d9cc}.monthly-overview-grid .monthly-hero-card strong{font-size:34px;color:#ffd86a}.monthly-overview-grid .monthly-budget-card{background:#fff7df;border-color:#edc36d}.monthly-overview-grid .monthly-budget-card b{color:#9b5c00}.monthly-overview-grid .monthly-confirmed-card{background:#edf9f1;border-color:#9bd2ae}.monthly-overview-grid .monthly-confirmed-card b{color:#177245}.monthly-overview-grid .monthly-pending-card{background:#fff1ec;border-color:#efa98d}.monthly-overview-grid .monthly-pending-card b{font-size:20px;color:#b44425}.monthly-overview-grid .monthly-negative b{color:#c52d2d}.monthly-analysis-panel{margin-bottom:16px}.monthly-analysis-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.monthly-analysis-list>div{display:flex;gap:10px;padding:12px;background:#fbf8f3;border-radius:9px}.monthly-analysis-list span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#f1dba9;color:#6d4214;font-weight:700}.monthly-analysis-list p{margin:2px 0;line-height:1.55}
@media(max-width:1100px){.department-choice-grid{grid-template-columns:repeat(2,1fr)}.permission-guide,.monthly-overview-grid{grid-template-columns:1fr}.permission-simple-grid{grid-template-columns:1fr}.permission-quick-grid,.permission-all-pages,.monthly-analysis-list{grid-template-columns:1fr}.monthly-overview-grid .monthly-hero-card{grid-column:auto}}
.raw-filterable-header{display:inline-flex;align-items:center;justify-content:center;gap:4px;max-width:100%}
.raw-filterable-header>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.raw-header-filter{display:inline-grid;place-items:center;flex:0 0 18px;width:18px;height:18px;padding:0;border:1px solid #d9c5a3;border-radius:4px;background:#fff;color:#826b55;font-size:9px;line-height:1;cursor:pointer}
.raw-header-filter:hover{border-color:#c58b22;background:#fff6df;color:#8b4e00}
.raw-header-filter.is-active{border-color:#c52828;background:#c52828;color:#fff;box-shadow:0 0 0 2px rgba(197,40,40,.12)}
.flow-audit-head,.raw-drilldown-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:12px;border:1px solid #e4c27d;border-radius:10px;background:#fff9e9}.flow-audit-head>div,.raw-drilldown-banner{flex-wrap:wrap}.flow-audit-head span,.raw-drilldown-banner span{display:block;color:#7b6a5f;font-size:12px}.table-drill-name{border:0;background:transparent;color:#8b1f2b;font-weight:700;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.flow-channel-audit{margin-top:14px}.flow-audit-grid{align-items:start}.raw-drilldown-banner b{color:#76202a}
.billable-flow-note{display:block;margin-top:3px;color:#9a6b16;font-size:10px;white-space:nowrap}
.table-view-controls{display:flex;align-items:center;gap:5px;padding:4px 6px;border:1px solid #ead8c0;border-radius:9px;background:#fff}.table-view-controls span{font-size:11px;color:#806d60}.table-view-controls select{min-width:74px;padding:6px 7px;border:0;background:#fff7ec}.table-view-controls button{padding:6px 8px}
html[data-table-density="compact"] #app table th,html[data-table-density="compact"] #app table td{padding-top:4px!important;padding-bottom:4px!important;font-size:11px!important;line-height:1.25}
html[data-table-density="standard"] #app table th,html[data-table-density="standard"] #app table td{padding-top:7px!important;padding-bottom:7px!important;font-size:12px!important;line-height:1.4}
html[data-table-density="comfortable"] #app table th,html[data-table-density="comfortable"] #app table td{padding-top:11px!important;padding-bottom:11px!important;font-size:14px!important;line-height:1.55}
html[data-table-density="custom"] #app table th,html[data-table-density="custom"] #app table td{padding-top:var(--table-custom-padding,6px)!important;padding-bottom:var(--table-custom-padding,6px)!important;font-size:var(--table-custom-font,12px)!important}
html[data-table-density="custom"] #app .table-wrap table{min-width:calc(100% * var(--table-width-scale,1))}
#app table thead th{position:relative}.column-resize-grip{position:absolute;z-index:5;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;user-select:none}.column-resize-grip::after{content:"";position:absolute;top:18%;bottom:18%;left:3px;width:1px;background:#d9c5a3;opacity:.45}.column-resize-grip:hover,.resizing-column .column-resize-grip{background:rgba(210,145,35,.32)}.column-resize-grip:hover::after,.resizing-column .column-resize-grip::after{opacity:1;background:#b87910}.resizing-column{cursor:col-resize!important;user-select:none!important}
.table-view-dialog{width:min(560px,92vw);border:0;border-radius:16px;padding:0;box-shadow:0 22px 70px rgba(50,18,22,.28)}.table-view-dialog::backdrop{background:rgba(40,18,20,.48)}.table-view-dialog form{padding:22px}.table-view-dialog .section-head button{font-size:24px;border:0;background:transparent}.table-view-dialog form>label{display:grid;grid-template-columns:110px 55px 1fr;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #eee4d6}.table-view-dialog input[type=range]{width:100%}
.performance-sheet thead th,.expense-sheet thead th,.raw-correction-compact thead th,.raw-full-sheet thead th{position:sticky!important;top:0;z-index:14;background:#fff8ec;box-shadow:0 1px 0 #e6d7c2,0 3px 8px rgba(76,45,26,.06)}
.performance-sheet thead th.helper-col,.raw-full-sheet thead th.correction-col{background:#edf6fd}.raw-full-sheet thead th.auto-col{background:#fff5d7}
.wps-filter-dialog{width:min(420px,92vw);max-height:min(650px,86vh);padding:0;border:0;border-radius:14px;box-shadow:0 22px 70px rgba(47,21,23,.32);overflow:hidden}.wps-filter-dialog::backdrop{background:rgba(38,20,20,.35)}.wps-filter-dialog form{display:flex;flex-direction:column;max-height:min(650px,86vh);background:#fff}.wps-filter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 18px 13px;border-bottom:1px solid #eadfce}.wps-filter-head b{display:block;font-size:17px;color:#53151c}.wps-filter-head span{display:block;margin-top:4px;color:#8b796b;font-size:12px}.wps-filter-close{border:0;background:transparent;font-size:24px;line-height:1;cursor:pointer}.wps-filter-month{display:flex;align-items:center;gap:10px;padding:11px 16px 0}.wps-filter-month label{color:#6f5d51;font-size:12px;font-weight:700}.wps-filter-month input{box-sizing:border-box;padding:7px 9px;border:1px solid #dccbb3;border-radius:8px}.wps-filter-search{padding:12px 16px 8px}.wps-filter-search input{box-sizing:border-box;width:100%;padding:9px 11px;border:1px solid #dccbb3;border-radius:8px}.wps-filter-toolbar{display:flex;align-items:center;gap:7px;padding:0 16px 9px}.wps-filter-toolbar button{padding:5px 9px;border:1px solid #ddc9a8;border-radius:6px;background:#fff9ed;cursor:pointer}.wps-filter-toolbar em{margin-left:auto;color:#8c7a6c;font-size:11px;font-style:normal}.wps-filter-choices{min-height:130px;max-height:370px;overflow:auto;border-top:1px solid #f0e8dc;border-bottom:1px solid #f0e8dc}.wps-filter-choice{display:flex;align-items:center;gap:9px;padding:8px 18px;border-bottom:1px solid #f5eee5;cursor:pointer}.wps-filter-choice:hover{background:#fff7e8}.wps-filter-choice input{width:16px;height:16px;accent-color:#c72d2d}.wps-filter-choice span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wps-filter-choice.is-search-hidden{display:none}.wps-filter-empty{padding:26px;text-align:center;color:#9c8e84}.wps-filter-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:13px 16px}.wps-filter-actions button{padding:8px 13px;border:1px solid #dac8ad;border-radius:7px;background:#fff;cursor:pointer}.wps-filter-actions .wps-filter-clear{margin-right:auto;color:#b62929}.wps-filter-actions .primary{border-color:#c62c2c;background:#c62c2c;color:#fff;font-weight:700}
.ai-safety-banner{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;margin-bottom:16px;border:1px solid #edcf95;border-left:5px solid #d99b1d;border-radius:14px;background:#fff9eb}.ai-safety-banner div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ai-safety-banner b{color:#6d1b25;font-size:17px}.ai-safety-banner span{color:#6d5a52}.ai-safety-banner .ai-guard{padding:7px 12px;border-radius:999px;background:#e7f7ef;color:#08784e;font-weight:700;white-space:nowrap}.ai-summary{margin-bottom:16px}.ai-employee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-employee-card{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #eadfd1;border-radius:12px;background:#fff}.ai-employee-card.paused{opacity:.65;background:#f7f5f2}.ai-employee-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:linear-gradient(135deg,#6d1523,#d13b2d);color:#ffd967;font-weight:800}.ai-employee-main{min-width:0;flex:1}.ai-employee-main>div{display:flex;align-items:center;gap:8px}.ai-employee-main h3{margin:0;font-size:16px}.ai-employee-main p{margin:7px 0;color:#342b2d}.ai-employee-main small{display:block;color:#776b6b;line-height:1.6}.ai-status{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:12px;white-space:nowrap;background:#fff0cf;color:#996100}.ai-status.done{background:#e4f7ee;color:#08784e}.ai-status.review{background:#fff0cf;color:#996100}.ai-status.danger{background:#fde5e5;color:#b42318}.ai-status.working{background:#e9f1ff;color:#215eaa}.ai-work-grid{margin-top:16px;align-items:start}.ai-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-form label{display:flex;flex-direction:column;gap:5px;color:#5d4e4c;font-size:13px}.ai-form input,.ai-form select,.ai-form textarea{width:100%;box-sizing:border-box;border:1px solid #dfd1c2;border-radius:8px;padding:9px;background:#fff;font:inherit}.ai-form textarea{min-height:78px;resize:vertical}.ai-form .ai-chat-history{min-height:130px}.ai-form .wide{grid-column:1/-1}.ai-table-panel{margin-top:16px}.ai-task-detail,.ai-reply-preview{max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-connection{margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.ai-connection h2{margin:0 0 8px}.ai-connection p{margin:5px 0}@media(max-width:900px){.ai-employee-grid,.ai-form{grid-template-columns:1fr}.ai-form .wide{grid-column:auto}.ai-safety-banner,.ai-connection{align-items:flex-start;flex-direction:column}}
.daily-unfilled td {
  background-color: #fffaf1;
}

.daily-fill-state {
  display: inline-block;
  margin-left: 6px;
  color: #a56b16;
  font-size: 11px;
  white-space: nowrap;
}
.dashboard-daily-performance{padding:30px 4px 22px;gap:10px}
.dashboard-daily-performance .sales-trend-item{min-width:58px}
.dashboard-daily-performance .sales-trend-bar span{font-size:10px;white-space:nowrap;left:50%;transform:translateX(-50%)}
.dashboard-daily-performance .sales-trend-bar em{white-space:nowrap}

/* 公司经营：首页聚焦经营结果、风险与团队表现 */
.owner-dashboard{display:flex;flex-direction:column;gap:16px;min-width:0;color:#2d1820}
.owner-dashboard *{box-sizing:border-box}
.owner-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);overflow:hidden;border:1px solid #ded5c9;border-radius:18px;background:linear-gradient(135deg,#fffdfa 0%,#f6f1e9 68%,#efe7dc 100%);color:#332b2d;box-shadow:0 8px 24px rgba(77,57,43,.08)}
.owner-hero-main{padding:26px 30px}
.owner-eyebrow{display:block;font-size:13px;font-weight:700;letter-spacing:.08em;color:#8f6d43}
.owner-hero-total{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:13px}
.owner-hero-total>div>small{display:block;margin-bottom:7px;color:#756a68}
.owner-hero-value{display:block;margin:0;font-size:42px;line-height:1;font-variant-numeric:tabular-nums;color:#5d2930}
.owner-progress-badge{flex:none;padding:7px 11px;border:1px solid #decaa4;border-radius:999px;background:#fffaf0;font-size:12px;font-weight:800;color:#7c5421}
.owner-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 15px}
.owner-breakdown>span{min-width:0;padding:9px 11px;border:1px solid #e5ddd2;border-radius:10px;background:rgba(255,255,255,.72)}
.owner-breakdown small,.owner-breakdown b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-breakdown small{margin-bottom:4px;font-size:11px;color:#756a68}
.owner-breakdown b{font-size:14px;color:#3f3032}
.owner-goal{height:8px;overflow:hidden;border-radius:999px;background:#e8dfd3}
.owner-goal span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9c6b45,#c29b68)}
.owner-goal-caption{display:block;margin-top:9px;color:#756a68}
.owner-date-card{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:24px;background:rgba(255,255,255,.56);border-left:1px solid #ded5c9}
.owner-date-card label{font-size:12px;color:#756a68}
.owner-date-card strong{font-size:24px}
.owner-date-card span{font-size:12px;line-height:1.5;color:#756a68}
.owner-date-card input{margin-top:5px;width:100%;padding:9px 11px;border:1px solid rgba(255,255,255,.35);border-radius:9px;background:#fff;color:#3c1820}
.owner-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.owner-kpi{min-width:0;padding:16px 18px;border:1px solid #eadbc7;border-top:3px solid #d9b989;border-radius:15px;background:linear-gradient(180deg,#fff,#fffcf7);box-shadow:0 6px 18px rgba(64,35,18,.05)}
.owner-kpi span{display:block;font-size:12px;color:#7a6d70}
.owner-kpi b{display:block;margin:8px 0 6px;font-size:24px;color:#4b1720;white-space:nowrap;font-variant-numeric:tabular-nums}
.owner-kpi small{display:block;overflow:hidden;text-overflow:ellipsis;color:#877b7a;white-space:nowrap}
.owner-kpi.is-positive{border-color:#cce7d9;background:#f8fffb}
.owner-kpi.is-positive b{color:#087a4b}
.owner-kpi.is-negative{border-color:#f2c8c4;background:#fff8f7}
.owner-kpi.is-negative b{color:#c62828}
.owner-kpi.is-revenue{border-top-color:#a8262f}
.owner-kpi.is-flow{border-top-color:#d99a23}
.owner-freshness{display:grid;grid-template-columns:1.2fr repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #eadbc7;border-radius:15px;background:#fff}
.owner-freshness>div,.owner-freshness>article{min-width:0;padding:15px 17px}
.owner-freshness>article{border-left:1px solid #eee2d4}
.owner-freshness span,.owner-freshness small{display:block;color:#827579}
.owner-freshness>div span{margin-top:6px;font-size:12px;line-height:1.45}
.owner-freshness article span{font-size:11px}
.owner-freshness article b{display:block;margin:5px 0 3px;font-size:16px}
.owner-freshness article.has-data b{color:#166c4a}
.owner-freshness article.no-data b{color:#c47c10}
.owner-main-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:16px}
.owner-trend-panel,.owner-alert-panel,.owner-team-panel,.owner-day-panel{overflow:hidden;border:1px solid #eadbc7;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(64,35,18,.045)}
.owner-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 19px;border-bottom:1px solid #f0e6da}
.owner-panel-head h2{margin:0 0 4px;font-size:18px;color:#401821}
.owner-panel-head p{margin:0;font-size:12px;color:#817377}
.owner-panel-head>b{flex:none;color:#8f1e28}
.owner-trend{display:flex;align-items:flex-end;gap:10px;min-height:218px;overflow-x:auto;padding:22px 18px 16px}
.owner-trend-item{display:grid;grid-template-rows:32px 150px 18px;align-items:end;justify-items:center;min-width:50px}
.owner-trend-item span{max-width:55px;overflow:hidden;font-size:10px;color:#7f6e6e;text-overflow:ellipsis;white-space:nowrap}
.owner-trend-item i{display:block;width:26px;max-height:150px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#e9a82b,#b92c2a);box-shadow:inset 0 1px rgba(255,255,255,.35)}
.owner-trend-item small{font-size:11px;color:#786b6c}
.owner-alert-panel{padding-bottom:10px}
.owner-alert{display:flex;gap:11px;margin:10px 14px;padding:12px;border:1px solid #eee2d5;border-radius:11px;background:#fffcf8}
.owner-alert>span{flex:none;width:9px;border-radius:999px;background:#b5aaa3}
.owner-alert b{font-size:14px}
.owner-alert p{margin:4px 0 0;font-size:12px;line-height:1.45;color:#796d6e}
.owner-alert.danger>span{background:#d32f2f}
.owner-alert.warn>span{background:#e29a16}
.owner-alert.good>span{background:#159667}
.owner-alert.neutral>span{background:#7b8794}
.owner-team-panel .table-wrap,.owner-day-panel .table-wrap{max-width:100%;overflow:auto}
.owner-team-panel table,.owner-day-panel table{min-width:920px}
.owner-team-panel th,.owner-day-panel th{position:sticky;top:0;z-index:1;background:#fbf5eb}
.owner-team-panel td,.owner-team-panel th,.owner-day-panel td,.owner-day-panel th{padding:10px 12px;white-space:nowrap}
.owner-rank{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#f4e7d2;color:#7e251f;font-weight:800}
.owner-team-panel tbody tr:nth-child(-n+3) .owner-rank{background:linear-gradient(135deg,#ffd758,#e99e27);color:#51210e}

/* 公司经营 2026-10：结果优先，压缩空白，一屏集中查看流量质量和单条成本 */
.owner-dashboard-compact{gap:12px;color:#2b2524}
.owner-command{display:grid;grid-template-columns:minmax(0,1fr) 250px;overflow:hidden;border:1px solid #dfd6cc;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(60,40,25,.055)}
.owner-command-main{min-width:0;padding:14px 16px 12px}
.owner-command-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.owner-command-top .owner-eyebrow{font-size:12px;letter-spacing:0;color:#8a5a2c}
.owner-command-date{font-size:12px;color:#817573}
.owner-command-row{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(260px,1.6fr) minmax(190px,1fr);align-items:center;gap:14px}
.owner-command-total small,.owner-command-quality>small{display:block;color:#817573;font-size:11px}
.owner-command-total strong{display:block;margin:3px 0;color:#5c1c25;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}
.owner-command-total span{color:#8b7777;font-size:11px}
.owner-command-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.owner-command-breakdown>span{padding:8px 10px;border:1px solid #ede3d8;border-radius:8px;background:#fcfaf7}
.owner-command-breakdown small,.owner-command-breakdown b{display:block}
.owner-command-breakdown small{color:#8a7c79;font-size:10px}
.owner-command-breakdown b{margin-top:3px;color:#3e3031;font-size:14px;white-space:nowrap}
.owner-command-quality b{display:block;margin:4px 0 5px;font-size:22px;color:#3d3030}
.owner-command-quality span{display:flex;flex-wrap:wrap;gap:4px}
.owner-command-quality i,.owner-metric-strip i{display:inline-block;padding:2px 6px;border-radius:999px;font-size:10px;font-style:normal;white-space:nowrap}
.flow-valid{color:#087a4b;background:#e9f8f0}
.flow-invalid{color:#b42318;background:#fff0ee}
.flow-pending{color:#a66508;background:#fff6df}
.owner-command-side{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:14px;border-left:1px solid #eee5dc;background:#fbf8f3}
.owner-command-side label{display:grid;gap:5px;color:#7d706f;font-size:11px}
.owner-command-side input{width:100%;padding:7px 9px;border:1px solid #ddd2c9;border-radius:7px;background:#fff;font:inherit}
.owner-source-line{display:flex;flex-wrap:wrap;gap:5px}
.owner-source-line span{padding:3px 6px;border-radius:999px;font-size:10px;background:#fff;border:1px solid #e5dcd4;color:#7c706d}
.owner-source-line span.ok{color:#14734e;border-color:#cce7d8;background:#f5fcf8}
.owner-source-line span.wait{color:#ad7411;border-color:#f0dfb7;background:#fffaf0}
.owner-metric-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.owner-metric-strip article{min-width:0;padding:12px 13px;border:1px solid #e6ddd4;border-radius:10px;background:#fff;box-shadow:0 3px 10px rgba(60,40,25,.035)}
.owner-metric-strip article span{display:block;color:#817573;font-size:11px}
.owner-metric-strip article>b{display:block;margin:5px 0 4px;color:#4d1d25;font-size:21px;line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums}
.owner-metric-strip article>small{display:flex;flex-wrap:wrap;gap:4px;color:#8a7d7a;font-size:10px;line-height:1.45}
.owner-metric-strip article.is-cost{border-color:#efd3ae;background:#fffaf2}
.owner-metric-strip article.is-positive b{color:#087a4b}
.owner-metric-strip article.is-negative b{color:#c62828}
.owner-main-grid-compact{grid-template-columns:minmax(0,1.55fr) minmax(260px,.45fr);gap:12px}
.owner-trend.compact{min-height:174px;padding:16px 14px 12px;gap:8px}
.owner-trend.compact .owner-trend-item{grid-template-rows:26px 120px 16px;min-width:44px}
.owner-trend.compact .owner-trend-item i{width:23px}
.owner-team-compact .table-wrap{overflow:visible}
.owner-dashboard-compact .owner-team-panel table{min-width:760px;table-layout:fixed}
.owner-dashboard-compact .owner-team-panel th,.owner-dashboard-compact .owner-team-panel td{padding:9px 10px;white-space:normal;vertical-align:middle}
.owner-person{display:flex;align-items:center;gap:8px;min-width:0}
.owner-person>div{min-width:0}
.owner-person b,.owner-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-person small{margin-top:2px;color:#8c807d;font-size:10px;font-weight:400}
.owner-flow-quality{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.owner-flow-quality>b{min-width:24px;color:#3d3030;font-size:15px}
.owner-flow-quality span{padding:2px 6px;border-radius:999px;font-size:10px;white-space:nowrap}
.owner-cell-note{display:block;margin-top:3px;color:#968a86;font-size:10px;white-space:nowrap}
.owner-day-panel{padding:0}
.owner-day-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;cursor:pointer;list-style:none}
.owner-day-panel>summary::-webkit-details-marker{display:none}
.owner-day-panel>summary span b,.owner-day-panel>summary span small{display:block}
.owner-day-panel>summary span b{font-size:15px;color:#431c24}
.owner-day-panel>summary span small{margin-top:3px;color:#8b7e7a;font-size:11px}
.owner-day-panel>summary strong{color:#8f1e28;font-size:13px}
.owner-day-panel[open]>summary{border-bottom:1px solid #f0e6da}
.owner-dashboard-compact .owner-day-panel table{min-width:680px}

/* 经营分析页 2026-10：统一按结果、流量质量和实际成本呈现，避免宽表与预计口径 */
.analysis-dashboard{display:grid;gap:12px;color:#2b2524}
.analysis-command{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:12px;padding:14px 16px;border:1px solid #dfd6cc;border-radius:8px;background:#fff;box-shadow:0 4px 14px rgba(60,40,25,.05)}
.analysis-command-main{display:grid;gap:9px;min-width:0}
.analysis-command-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.analysis-command-head b{color:#4b2025;font-size:17px}
.analysis-command-head span{color:#817573;font-size:11px}
.analysis-command-value{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;min-width:0}
.analysis-command-value>div{min-width:0}
.analysis-command-value small{display:block;color:#817573;font-size:11px}
.analysis-command-value strong{display:block;margin-top:4px;color:#5c1c25;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}
.analysis-command-value>span{align-self:center;color:#847673;font-size:11px;text-align:right}
.analysis-quality{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.analysis-quality i{padding:3px 7px;border-radius:999px;font-size:10px;font-style:normal;white-space:nowrap}
.analysis-command-side{display:grid;align-content:center;gap:8px;padding:12px;border-left:1px solid #eee5dc;background:#fbf8f3;border-radius:0 7px 7px 0}
.analysis-command-side>span,.analysis-command-side label{color:#7d706f;font-size:11px}
.analysis-command-side strong{color:#4b2025;font-size:16px}
.analysis-command-side input{width:100%;box-sizing:border-box;padding:7px 9px;border:1px solid #ddd2c9;border-radius:7px;background:#fff;font:inherit}
.analysis-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.analysis-kpi-grid article{min-width:0;padding:12px 13px;border:1px solid #e6ddd4;border-radius:8px;background:#fff;box-shadow:0 3px 10px rgba(60,40,25,.035)}
.analysis-kpi-grid article.is-cost{border-color:#efd3ae;background:#fffaf2}
.analysis-kpi-grid article.is-positive{border-color:#cce7d9;background:#f8fffb}
.analysis-kpi-grid article.is-negative{border-color:#f2c8c4;background:#fff8f7}
.analysis-kpi-grid span{display:block;color:#817573;font-size:11px}
.analysis-kpi-grid b{display:block;margin:5px 0 4px;color:#4d1d25;font-size:20px;line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums}
.analysis-kpi-grid article.is-positive b{color:#087a4b}
.analysis-kpi-grid article.is-negative b{color:#c62828}
.analysis-kpi-grid small{display:block;color:#8a7d7a;font-size:10px;line-height:1.45}
.analysis-two-col{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:12px;align-items:start}
.analysis-table-note{display:block;margin-top:3px;color:#968a86;font-size:10px;white-space:nowrap}
.analysis-table-compact table{min-width:720px}
.analysis-table-compact th,.analysis-table-compact td{padding:9px 10px;vertical-align:middle}
.analysis-table-compact tbody tr:hover{background:#fffcf7}
.analysis-quality-cell{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.analysis-quality-cell>b{min-width:24px;font-size:15px}
.analysis-quality-cell span{padding:2px 6px;border-radius:999px;font-size:10px;white-space:nowrap}
@media(max-width:1500px){.analysis-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.analysis-command{grid-template-columns:1fr}.analysis-command-side{border-top:1px solid #eee5dc;border-left:0;border-radius:0 0 7px 7px}.analysis-two-col{grid-template-columns:1fr}}
@media(max-width:900px){.analysis-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.analysis-command-value{align-items:flex-start;flex-direction:column}.analysis-command-value>span{text-align:left}.analysis-kpi-grid{grid-template-columns:1fr}}

/* 抖音运营工作台 2026-10：独立一级菜单，内部采用小V猫式账号栏、工作区、任务栏三栏结构 */
.douyin-ops-shell{display:grid;grid-template-columns:230px minmax(0,1fr) 280px;gap:12px;align-items:start;min-width:0}
.douyin-account-rail,.douyin-side-panel,.douyin-panel{min-width:0;border:1px solid #e5ddd5;border-radius:8px;background:#fff;box-shadow:0 3px 12px rgba(60,40,25,.035)}
.douyin-account-rail{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow:hidden}
.douyin-brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px;border-bottom:1px solid #eee6df}
.douyin-brand-row>div{min-width:0}.douyin-brand-row b,.douyin-brand-row span{display:block}.douyin-brand-row b{color:#4b2025;font-size:15px}.douyin-brand-row span{margin-top:2px;color:#8d817b;font-size:10px}
.douyin-account-rail button,.douyin-side-panel button,.douyin-action-row button,.douyin-account-form button{padding:6px 9px;border:1px solid #ddcfc2;border-radius:7px;background:#fff;color:#5b4842;font-size:11px;font-weight:700;cursor:pointer}
.douyin-account-rail button:hover,.douyin-side-panel button:hover,.douyin-action-row button:hover,.douyin-account-form button:hover{border-color:#c7aa8f;background:#fffaf4}
.douyin-account-rail .primary,.douyin-action-row .primary,.douyin-account-form .primary{border-color:#a82b34;background:#a82b34;color:#fff}
.douyin-action-row .danger{border-color:#c94040;background:#fff5f5;color:#b42318}
.douyin-account-scroll{max-height:calc(100vh - 154px);overflow:auto;padding:8px}
.douyin-account-scroll section+section{margin-top:7px}.douyin-account-scroll h4{display:flex;justify-content:space-between;margin:7px 5px;color:#766962;font-size:11px}.douyin-account-scroll h4 small{color:#a0928a;font-weight:400}
.douyin-account-item{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;margin:3px 0;padding:8px!important;text-align:left!important}
.douyin-account-item.active{border-color:#c58c58!important;background:#fff4e8!important;box-shadow:inset 3px 0 #b52b2b}
.douyin-account-item>span:nth-child(2){min-width:0}.douyin-account-item b,.douyin-account-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-account-item b{color:#4b2025;font-size:12px}.douyin-account-item small{margin-top:2px;color:#91827a;font-size:10px}
.douyin-account-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#29212a,#121014);color:#fff;font-size:13px;font-weight:800;box-shadow:0 0 0 2px #fff,0 0 0 3px #d84a5d}
.douyin-account-avatar img,.douyin-conversation-avatar img,.douyin-chat-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.douyin-channel-avatar{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:8px;background:#eef1f5;color:#5b6570;font-size:11px;font-weight:900;overflow:hidden}
.douyin-channel-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.douyin-channel-grid article header{display:flex;align-items:center;gap:7px;min-width:0}.douyin-channel-grid article header b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-engagement-conversation-list .avatar{flex:none;width:38px;height:38px;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#edf0f4;color:#667383;font-size:13px;font-weight:800}
.douyin-engagement-conversation-list .avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.douyin-account-avatar.large{width:44px;height:44px;font-size:16px}
.douyin-workspace{display:grid;gap:10px;min-width:0}
.douyin-tabs{display:flex;align-items:center;gap:4px;padding:6px;border:1px solid #e5ddd5;border-radius:8px;background:#fff;overflow:auto}
.douyin-tabs button{flex:none;padding:8px 13px;border:0;border-radius:6px;background:transparent;color:#746862;font-size:12px;font-weight:800;cursor:pointer}
.douyin-tabs button.active{background:#4b2025;color:#fff}.douyin-tabs button:hover:not(.active){background:#f8f1eb;color:#6d2028}
.douyin-panel{padding:14px}
.douyin-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
.douyin-panel-head h2{margin:0;color:#4b2025;font-size:16px}.douyin-panel-head p{margin:4px 0 0;color:#8d817b;font-size:11px;line-height:1.55}
.douyin-action-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.douyin-account-form{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px;padding:12px;border:1px solid #eee4da;border-radius:8px;background:#fbf8f4}
.douyin-account-form label,.douyin-task-form label,.douyin-message-grid label{display:grid;gap:5px;color:#766962;font-size:11px}.douyin-account-form label.wide{grid-column:1/-1}
.douyin-account-form input,.douyin-account-form select,.douyin-task-form input,.douyin-message-grid input{width:100%;box-sizing:border-box;padding:8px 9px;border:1px solid #dfd2c8;border-radius:7px;background:#fff;font:inherit}
.douyin-account-form button{grid-column:1/-1;justify-self:start}
.douyin-account-detail{padding-top:3px}.douyin-account-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid #eee4da;border-radius:8px;background:#fffaf6}
.douyin-account-title>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.douyin-account-title h3{margin:0;color:#4b2025;font-size:15px}.douyin-account-title p{margin:3px 0 0;color:#8d817b;font-size:11px}
.douyin-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.douyin-detail-grid article{min-width:0;padding:11px;border:1px solid #eee4da;border-radius:8px;background:#fcfbf9}
.douyin-detail-grid article>span{display:block;color:#8d817b;font-size:10px}.douyin-detail-grid article>b{display:block;margin:5px 0 3px;color:#4b2025;font-size:15px}.douyin-detail-grid article>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#95877f;font-size:10px}
.douyin-status{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:#f2ece7;color:#796d67;font-size:10px;font-weight:800;white-space:nowrap}
.douyin-status.good{background:#e7f7ef;color:#08784e}.douyin-status.warn{background:#fff3d9;color:#a86800}.douyin-status.work{background:#e9f1ff;color:#215eaa}
.douyin-task-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.douyin-task-guide article{display:grid;gap:4px;padding:12px;border:1px solid #eee4da;border-radius:8px;background:#fcfbf9}.douyin-task-guide b{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#4b2025;color:#fff}.douyin-task-guide span{color:#4b2025;font-size:12px;font-weight:800}.douyin-task-guide small{color:#91827a;font-size:10px}
.douyin-callout{margin-top:12px;padding:10px 12px;border:1px solid #eed8ad;border-radius:8px;background:#fffaf1;color:#775a37;font-size:11px;line-height:1.6}.douyin-callout.warn{border-color:#efc5c1;background:#fff5f4;color:#9c3b34}
.douyin-message-grid{display:grid;grid-template-columns:minmax(160px,.42fr) minmax(260px,1fr);gap:9px}.douyin-message-grid article{padding:11px;border:1px solid #eee4da;border-radius:8px;background:#fcfbf9}.douyin-message-grid article>span{display:block;color:#8d817b;font-size:10px}.douyin-message-grid article>b{display:block;margin:5px 0;color:#4b2025;font-size:15px}
.douyin-confirm{display:inline-flex;align-items:center;gap:6px;color:#b42318;font-size:11px}.douyin-confirm input{accent-color:#b42318}
.douyin-task-form{display:grid;grid-template-columns:1.2fr .7fr .7fr .7fr;gap:9px;margin-bottom:12px}
.douyin-side-panel{position:sticky;top:76px;max-height:calc(100vh - 96px);display:grid;align-content:start;gap:0;overflow:hidden}
.douyin-side-panel>section{padding:12px;border-bottom:1px solid #eee6df}.douyin-side-panel>section:last-child{border-bottom:0}
.douyin-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.douyin-side-head b{color:#4b2025;font-size:12px}.douyin-side-head button{padding:4px 6px!important}
.douyin-side-panel>section>strong{display:block;color:#4b2025;font-size:17px}.douyin-side-panel>section>small{display:block;margin-top:3px;color:#90827a;font-size:10px}
.douyin-live-dot{width:8px;height:8px;border-radius:50%;background:#16a363;box-shadow:0 0 0 3px rgba(22,163,99,.14)}
.douyin-task-list,.douyin-event-list{display:grid;gap:5px;max-height:260px;overflow:auto}.douyin-task-list article{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:7px 8px;border:1px solid #eee4da;border-radius:7px;background:#fcfbf9}.douyin-task-list article>div{min-width:0}.douyin-task-list b,.douyin-task-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-task-list b{color:#4b2025;font-size:10px}.douyin-task-list small{margin-top:2px;color:#94867e;font-size:9px}
.douyin-event-list p{display:flex;justify-content:space-between;gap:8px;margin:0;padding:6px 0;border-bottom:1px solid #f3ede8;color:#5d504b;font-size:10px}.douyin-event-list p:last-child{border-bottom:0}.douyin-event-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-event-list span{flex:none;color:#9a8d85}
.douyin-empty-account{display:grid;gap:4px;padding:22px 14px;border:1px dashed #ddcec2;border-radius:8px;background:#fcfbf9;text-align:center;color:#857771}.douyin-empty-account b{color:#5d4b45}.douyin-empty-account span{font-size:11px}
@media(max-width:1450px){.douyin-ops-shell{grid-template-columns:210px minmax(0,1fr) 250px}.douyin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1180px){.douyin-ops-shell{grid-template-columns:210px minmax(0,1fr)}.douyin-side-panel{position:static;grid-column:1/-1;max-height:none;grid-template-columns:repeat(3,minmax(0,1fr))}.douyin-side-panel>section{border-right:1px solid #eee6df;border-bottom:0}}
@media(max-width:900px){.douyin-ops-shell{grid-template-columns:1fr}.douyin-account-rail,.douyin-side-panel{position:static;max-height:none}.douyin-account-scroll{max-height:360px}.douyin-detail-grid,.douyin-task-guide,.douyin-task-form{grid-template-columns:1fr 1fr}.douyin-side-panel{grid-template-columns:1fr}.douyin-side-panel>section{border-right:0;border-bottom:1px solid #eee6df}}
@media(max-width:620px){.douyin-panel-head,.douyin-account-title{align-items:flex-start;flex-direction:column}.douyin-account-form,.douyin-detail-grid,.douyin-task-guide,.douyin-task-form,.douyin-message-grid{grid-template-columns:1fr}.douyin-account-form label.wide{grid-column:auto}}

.social-studio-shell{display:grid;gap:12px;min-width:0}
.social-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid #e4d7ca;border-radius:8px;background:linear-gradient(135deg,#4a1821,#7e2528);color:#fff;box-shadow:0 8px 24px rgba(72,29,32,.12)}
.social-hero span{color:#f3c9aa;font-size:11px;font-weight:800;letter-spacing:0}
.social-hero h2{margin:5px 0 4px;color:#fff;font-size:24px}.social-hero p{margin:0;color:#f0dcd3;font-size:12px;line-height:1.6}
.social-hero-badge{flex:none;padding:8px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);color:#ffe7c2;font-size:11px;font-weight:800}
.social-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.social-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.social-form-grid label{display:grid;gap:5px;color:#746761;font-size:11px}.social-form-grid label.wide{grid-column:1/-1}
.social-form-grid input,.social-form-grid textarea,.social-form-grid select,.social-inline-form input,.social-inline-form select{width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #dfd2c8;border-radius:7px;background:#fff;font:inherit}
.social-form-grid textarea{resize:vertical}.social-form-grid button{grid-column:1/-1;justify-self:start}
.social-inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.social-inline-form input{min-width:240px;flex:1}
.social-content-result{max-height:680px;overflow:auto}.social-output-stack{display:grid;gap:10px}.social-output-stack section{padding:12px;border:1px solid #eee4da;border-radius:8px;background:#fcfbf9}.social-output-stack h3{margin:0 0 8px;color:#4b2025;font-size:13px}.social-output-stack p{margin:5px 0;color:#5b4d48;font-size:12px;line-height:1.65}.social-output-stack ol,.social-output-stack ul{margin:0;padding-left:20px}.social-output-stack li{margin:5px 0;font-size:12px;line-height:1.55}.social-output-stack article{margin-top:8px;padding:10px;border-radius:7px;background:#fff}.social-output-stack pre{margin:6px 0 0;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:12px;line-height:1.7;color:#433631}.social-output-stack .social-validation-warning{border-color:#efc3bd;background:#fff5f3}.social-output-stack .social-validation-warning h3{color:#a52f25}.social-output-stack .social-validation-warning p{color:#9d473e}
.social-media-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.social-media-stats article{padding:11px;border:1px solid #eee4da;border-radius:8px;background:#fcfbf9}.social-media-stats span{display:block;color:#8b7d76;font-size:10px}.social-media-stats b{display:block;margin-top:4px;color:#4b2025;font-size:20px}
.social-media-list{display:grid;gap:5px;max-height:640px;overflow:auto}.social-media-list article{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid #eee4da;border-radius:7px;background:#fcfbf9}.social-media-list b,.social-media-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-media-list b{color:#4b2025;font-size:11px}.social-media-list small{margin-top:2px;color:#94867e;font-size:9px}.social-media-list em{color:#887a73;font-size:10px;font-style:normal}.social-file-type{display:grid;place-items:center;height:24px;border-radius:6px;background:#efe7e1;color:#715e55;font-size:9px;font-weight:800}.social-file-type.video{background:#e9f1ff;color:#215eaa}.social-file-type.audio{background:#e8f7ef;color:#08784e}.social-file-type.image{background:#fff3d9;color:#9b6500}
.social-task-cards{display:grid;gap:7px}.social-task-cards article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid #eee4da;border-radius:7px;background:#fcfbf9}.social-task-cards b,.social-task-cards span{display:block}.social-task-cards b{color:#4b2025;font-size:11px}.social-task-cards span,.social-task-cards small{color:#8e817a;font-size:10px;font-style:normal}
.social-confirm{display:flex!important;align-items:center;gap:6px;color:#b42318!important}
@media(max-width:1180px){.social-two-column{grid-template-columns:1fr}}
@media(max-width:700px){.social-hero,.social-inline-form{align-items:flex-start;flex-direction:column}.social-form-grid{grid-template-columns:1fr}.social-form-grid label.wide{grid-column:auto}.social-media-list article{grid-template-columns:40px minmax(0,1fr)}.social-media-list em{grid-column:2}}
@media(max-width:1280px){.owner-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-freshness{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-freshness>div{grid-column:1/-1}.owner-freshness>article:nth-of-type(odd){border-left:0}.owner-main-grid{grid-template-columns:1fr}}
@media(max-width:1500px){.owner-metric-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.owner-command{grid-template-columns:1fr}.owner-command-side{border-top:1px solid #eee5dc;border-left:0}.owner-command-row{grid-template-columns:1fr 1fr}.owner-command-quality{grid-column:1/-1}.owner-main-grid-compact{grid-template-columns:1fr}}
@media(max-width:900px){.owner-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.owner-command-row,.owner-command-breakdown,.owner-metric-strip{grid-template-columns:1fr}.owner-command-total strong{font-size:28px}.owner-team-compact .table-wrap{overflow:auto}}
@media(max-width:760px){.owner-hero{grid-template-columns:1fr}.owner-date-card{border-top:1px solid #ded5c9;border-left:0}.owner-hero-value{font-size:36px}.owner-kpi-grid,.owner-freshness{grid-template-columns:1fr}.owner-freshness>article{border-top:1px solid #eee2d4;border-left:0}.owner-panel-head{align-items:flex-start;flex-direction:column}.owner-kpi small{white-space:normal}}

/* 2026-10-18 业绩底表：压缩彩色表头，文字悬停/聚焦时再显示；底部固定三线合计。 */
.performance-month-filter{display:inline-flex;align-items:center;gap:5px;padding:0 4px;color:#6b5548;font-size:12px;font-weight:700;white-space:nowrap}
.performance-month-filter input{min-width:128px!important;padding:5px 8px!important}
.performance-summary-strip>div small{display:block;margin-top:3px}
.performance-report-total{display:block;width:100%;padding:4px 6px;text-align:right;color:#7b3d18;font-weight:700;font-variant-numeric:tabular-nums}
main .performance-sheet thead th{height:28px!important;min-height:0!important;padding:2px 3px!important;border-width:1px!important;border-radius:5px!important;font-size:0!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important}
main .performance-sheet thead th .raw-filterable-header{justify-content:center!important;gap:2px!important;white-space:nowrap!important}
main .performance-sheet thead th .raw-filterable-header>span:first-child,
main .performance-sheet thead th .excel-date-filter summary>b,
main .performance-sheet thead th .excel-date-filter summary>span{position:absolute;left:3px;top:calc(100% + 2px);z-index:40;display:none;max-width:220px;padding:4px 7px;border:1px solid #decfba;border-radius:6px;background:#fffdf8;color:#432d23!important;box-shadow:0 6px 18px rgba(62,34,24,.22);font-size:11px!important;line-height:1.35;white-space:nowrap}
main .performance-sheet thead th:hover .raw-filterable-header>span:first-child,
main .performance-sheet thead th:focus-within .raw-filterable-header>span:first-child,
main .performance-sheet thead th:hover .excel-date-filter summary>b,
main .performance-sheet thead th:focus-within .excel-date-filter summary>b,
main .performance-sheet thead th:hover .excel-date-filter summary>span,
main .performance-sheet thead th:focus-within .excel-date-filter summary>span{display:block}
main .performance-sheet thead .raw-header-filter{flex:0 0 18px!important;width:18px!important;height:18px!important;min-width:18px!important;padding:0!important;font-size:10px!important;opacity:1!important}
main .performance-sheet thead .excel-date-filter summary{min-height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.performance-sheet tfoot td{position:sticky;bottom:0;z-index:12;padding:7px 9px!important;border-top:1px solid #e3cfb7;background:#2b2021!important;color:#fff!important;font-size:11px!important;white-space:nowrap}
.performance-sheet tfoot .performance-total-first{background:#183c29!important}
.performance-sheet tfoot .performance-total-second{background:#1b3552!important}
.performance-sheet tfoot .performance-total-third{background:#3b2850!important}
.performance-line-total-footer b,.performance-line-total-footer span,.performance-line-total-footer strong{display:inline-block;margin-right:9px}
.performance-line-total-footer strong{color:#ffe1a0;font-size:13px}

/* 2026-10-25 业绩底表：表头文字常显，列宽按内容密度分配。 */
main .performance-sheet thead th{
  height:38px!important;
  min-height:38px!important;
  padding:4px 5px!important;
  overflow:hidden!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  white-space:normal!important;
  word-break:keep-all!important;
}
main .performance-sheet thead th .raw-filterable-header{
  width:100%!important;
  justify-content:center!important;
  gap:2px!important;
  white-space:normal!important;
}
main .performance-sheet thead th .raw-filterable-header>span:first-child,
main .performance-sheet thead th .excel-date-filter summary>b{
  position:static!important;
  display:block!important;
  max-width:none!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow:visible!important;
}
main .performance-sheet thead th .raw-filterable-header>span:first-child{min-width:0!important}
main .performance-sheet thead th .raw-header-filter{
  flex:0 0 14px!important;
  width:14px!important;
  height:16px!important;
  min-width:14px!important;
  padding:0!important;
  font-size:8px!important;
  line-height:16px!important;
}
main .performance-sheet thead .excel-date-filter{width:100%}
main .performance-sheet thead .excel-date-filter summary{
  min-height:28px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  white-space:normal!important;
}
main .performance-sheet thead .excel-date-filter summary>b{font-size:9.5px!important}
main .performance-sheet thead .excel-date-filter summary>span{
  display:block!important;
  position:static!important;
  max-width:none!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.72)!important;
  box-shadow:none!important;
  font-size:7px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
main .performance-sheet th[data-col="actions"],main .performance-sheet td[data-col="actions"]{width:76px!important;min-width:76px!important;max-width:76px!important}
main .performance-sheet th[data-col="date"],main .performance-sheet td[data-col="date"]{width:112px!important;min-width:112px!important;max-width:112px!important}
main .performance-sheet th[data-col="incomeType"],main .performance-sheet td[data-col="incomeType"]{width:86px!important;min-width:86px!important;max-width:86px!important}
main .performance-sheet th[data-col="account"],main .performance-sheet td[data-col="account"]{width:80px!important;min-width:80px!important;max-width:80px!important}
main .performance-sheet th[data-col="amount"],main .performance-sheet td[data-col="amount"]{width:72px!important;min-width:72px!important;max-width:72px!important}
main .performance-sheet th[data-col="reportTotalAmount"],main .performance-sheet td[data-col="reportTotalAmount"]{width:84px!important;min-width:84px!important;max-width:84px!important}
main .performance-sheet th[data-col="voucherImage"],main .performance-sheet td[data-col="voucherImage"]{width:92px!important;min-width:92px!important;max-width:92px!important}
main .performance-sheet th[data-col="channel"],main .performance-sheet td[data-col="channel"]{width:88px!important;min-width:88px!important;max-width:88px!important}
main .performance-sheet th[data-col="customerAlias"],main .performance-sheet td[data-col="customerAlias"]{width:144px!important;min-width:144px!important;max-width:144px!important}
main .performance-sheet th[data-col="contact"],main .performance-sheet td[data-col="contact"]{width:76px!important;min-width:76px!important;max-width:76px!important}
main .performance-sheet th[data-col="promotion"],main .performance-sheet td[data-col="promotion"]{width:96px!important;min-width:96px!important;max-width:96px!important}
main .performance-sheet th[data-col="sales"],main .performance-sheet td[data-col="sales"]{width:76px!important;min-width:76px!important;max-width:76px!important}
main .performance-sheet th[data-col="customerNeed"],main .performance-sheet td[data-col="customerNeed"]{width:150px!important;min-width:150px!important;max-width:150px!important}
main .performance-sheet th[data-col="customerName"],main .performance-sheet td[data-col="customerName"]{width:92px!important;min-width:92px!important;max-width:92px!important}
main .performance-sheet th[data-col="customerPhone"],main .performance-sheet td[data-col="customerPhone"]{width:112px!important;min-width:112px!important;max-width:112px!important}
main .performance-sheet th[data-col="conversion"],main .performance-sheet td[data-col="conversion"]{width:62px!important;min-width:62px!important;max-width:62px!important}
main .performance-sheet th[data-col="remark"],main .performance-sheet td[data-col="remark"]{width:160px!important;min-width:160px!important;max-width:160px!important}
main .performance-sheet th[data-col="groupPrefix"],main .performance-sheet td[data-col="groupPrefix"]{width:88px!important;min-width:88px!important;max-width:88px!important}
main .performance-sheet th[data-col="groupPerformance"],main .performance-sheet td[data-col="groupPerformance"]{width:104px!important;min-width:104px!important;max-width:104px!important}
main .performance-sheet th[data-col="groupCheck"],main .performance-sheet td[data-col="groupCheck"]{width:92px!important;min-width:92px!important;max-width:92px!important}
main .performance-sheet td[data-col] .sheet-cell{width:100%!important;min-width:0!important;max-width:100%!important}
main .performance-sheet td[data-col="amount"] .sheet-cell{text-align:right}
.performance-month-strip{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:9px 12px;border:1px solid #eadbc9;border-radius:10px;background:#fffdf8;overflow:hidden}
.performance-month-strip>b{flex:none;color:#6b443f;font-size:13px}
.performance-month-strip>div{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;padding:1px 0}
.performance-month-chip,.performance-month-all{flex:none;display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid #e3d4c2;border-radius:8px;background:#fff;color:#5e4b43;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.performance-month-chip small{color:#9b887d;font-size:9px;font-weight:600}
.performance-month-chip:hover,.performance-month-all:hover{border-color:#d6a75f;background:#fff8e9}
.performance-month-chip.active,.performance-month-all.active{border-color:#9d2f35;background:#9d2f35;color:#fff;box-shadow:0 4px 12px rgba(126,31,40,.18)}
.performance-month-chip.active small{color:#ffe0ba}
.performance-split-mode{display:flex;align-items:center;gap:7px;margin:0 0 10px;padding:8px 11px;border:1px solid #e7d8c7;border-radius:10px;background:#fffaf2}
.performance-split-mode>b{color:#6b443f;font-size:12px;white-space:nowrap}
.performance-split-mode button{padding:6px 10px;border:1px solid #dfcfbd;border-radius:8px;background:#fff;color:#67534a;font-size:12px;font-weight:700;cursor:pointer}
.performance-split-mode button.active{border-color:#9d2f35;background:#9d2f35;color:#fff}
.performance-split-mode span{color:#8d7a6e;font-size:11px}
.performance-split-amount{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:4px 7px;color:#7b3d18;font-weight:800;font-variant-numeric:tabular-nums}
.performance-split-amount small{padding:2px 5px;border-radius:999px;background:#fff0d8;color:#9a5c18;font-size:9px;font-weight:700}
.performance-split-sales{display:block;padding:4px 7px;color:#7b332f;font-weight:700;white-space:normal;line-height:1.4}
.evidence-gallery-button{background:#e8f2ff;border-color:#9bbbe4;color:#23578d}
.evidence-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;max-height:70vh;padding:16px;overflow:auto;background:#211d1d}
.evidence-gallery figure{display:grid;gap:8px;margin:0;padding:10px;border-radius:9px;background:#fff}
.evidence-gallery img{display:block;width:100%;height:260px;object-fit:contain;background:#f4f1ed;border-radius:6px}
.evidence-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#5e4b43;font-size:11px}
.evidence-gallery figcaption span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.performance-sheet .split-rowspan-cell{vertical-align:middle!important;background:#fffaf1!important;border-bottom:1px solid #ead9c6!important}
.performance-sheet tr.is-split-primary td.split-person-cell{border-top:2px solid #d9b56c!important}
.performance-sheet tr.is-split-secondary td.split-person-cell{background:#fffdf8!important;border-bottom:1px solid #ead9c6!important}
.performance-sheet tr.is-split-primary td[data-col="sales"],.performance-sheet tr.is-split-secondary td[data-col="sales"]{background:#fff8ed!important}

/* 公司经营窄屏优化：页面不横向漂移，只有明细表内部滚动 */
html,body{max-width:100%;overflow-x:hidden}
main,#app,header,header>div:first-child,.owner-dashboard,.owner-main-grid{min-width:0}
main{width:calc(100% - 246px);overflow-x:hidden}
header{gap:18px}
.header-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.owner-dashboard{max-width:100%;overflow:hidden}
.owner-dashboard .table-wrap{max-width:100%;min-width:0;overflow:auto;overscroll-behavior:contain}
.owner-kpi{position:relative;overflow:hidden}
.owner-kpi::after{content:"";position:absolute;right:-26px;bottom:-34px;width:92px;height:92px;border-radius:50%;background:rgba(196,132,35,.07);pointer-events:none}
.owner-kpi:nth-child(2)::after,.owner-kpi:nth-child(6)::after{background:rgba(24,139,93,.08)}
.owner-kpi:nth-child(4)::after,.owner-kpi:nth-child(8)::after{background:rgba(190,49,49,.07)}

@media(max-width:1180px){
  .sidebar{width:184px;padding-left:10px;padding-right:10px}
  .brand{padding-left:8px;padding-right:8px;gap:10px}
  .brand img{width:44px;height:44px}
  .brand strong{font-size:24px}
  nav button,nav a{padding-left:14px;padding-right:12px;font-size:15px}
  main{margin-left:184px;width:calc(100% - 184px);padding-left:14px;padding-right:14px}
  header{height:auto;min-height:88px;padding:10px 0;align-items:flex-start;flex-direction:column}
  header h1{font-size:25px;line-height:1.15}
  .header-actions{width:100%;justify-content:flex-start;gap:7px}
  .header-actions>*{max-width:100%}
  .owner-hero{grid-template-columns:1fr}
  .owner-hero-main{padding:22px 24px}
  .owner-hero-value{font-size:38px}
  .owner-date-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 14px;padding:14px 20px;border-top:1px solid rgba(255,255,255,.12);border-left:0}
  .owner-date-card strong{margin:0;font-size:19px}
  .owner-date-card span{display:none}
  .owner-date-card input{width:152px;margin:0}
  .owner-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-kpi{min-height:108px;padding:15px 17px}
  .owner-kpi b{font-size:25px}
  .owner-main-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  main{width:calc(100% - 82px)}
  .owner-dashboard{gap:12px}
  .owner-kpi-grid,.owner-freshness{gap:10px}
}

.ops-workspace-active .douyin-message-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 9px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.ops-workspace-active .douyin-message-filters button{padding:6px 11px;border:0;border-radius:8px;background:transparent;color:#69727e;font-size:10px;font-weight:800;cursor:pointer}
.ops-workspace-active .douyin-message-filters button.active{background:#fff0f1;color:#b41f34}
.ops-workspace-active .douyin-conversation-item{grid-template-columns:36px minmax(0,1fr) auto!important;gap:9px!important;padding:9px!important;border-color:#e8eaee!important;background:#fff!important}
.ops-workspace-active .douyin-conversation-item:hover{background:#f8f9fb!important;border-color:#dfe3e8!important}
.ops-workspace-active .douyin-conversation-item.active{background:#fff0f1!important;border-color:#dd6874!important;box-shadow:inset 3px 0 #d94254}
.douyin-conversation-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#f06a78,#a92942);color:#fff;font-size:13px;font-weight:900}
.douyin-conversation-copy{min-width:0}
.douyin-conversation-line{display:flex;align-items:center;gap:6px;min-width:0}
.douyin-conversation-line b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-conversation-line time{flex:none;color:#98a0ab;font-size:9px;font-weight:500}
.douyin-conversation-copy small,.douyin-conversation-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-conversation-tail{display:grid;justify-items:end;gap:6px}
.douyin-conversation-tail>i{display:grid;place-items:center;width:18px;height:18px;border-radius:6px;background:#f0f2f5;color:#7d8793;font-size:9px;font-style:normal;font-weight:900}
.ops-workspace-active .douyin-chat-row{display:flex;align-items:flex-end;gap:7px;width:100%}
.ops-workspace-active .douyin-chat-row.agent{justify-content:flex-end}
.ops-workspace-active .douyin-chat-row.customer{justify-content:flex-start}
.douyin-chat-avatar{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#e9edf2;color:#5b6570;font-size:10px;font-weight:900}
.douyin-chat-avatar.agent{background:#b82e43;color:#fff}
.douyin-chat-avatar.large{width:42px;height:42px;font-size:14px;background:linear-gradient(135deg,#f06a78,#a92942);color:#fff}
.ops-workspace-active .douyin-chat-message{max-width:min(74%,680px)}
.ops-workspace-active .douyin-chat-message.customer{border-color:#e3e6eb;background:#fff;color:#242a31}
.ops-workspace-active .douyin-chat-message.agent{border-color:#edb8bf;background:#fff0f1}
.ops-workspace-active .douyin-chat-message span{color:#7a8490}
.ops-workspace-active .douyin-chat-message b{color:#252b33}
.ops-workspace-active .douyin-chat-message small{color:#9aa2ad}
.douyin-message-date{display:flex;align-items:center;gap:10px;margin:8px 0;color:#9aa2ad;font-size:9px}
.douyin-message-date::before,.douyin-message-date::after{content:"";flex:1;height:1px;background:#e8eaee}
.douyin-thread-person{display:flex;align-items:center;gap:10px;min-width:0}
.douyin-thread-person>div{min-width:0}
.douyin-compose-hint{color:#8b939e;font-size:10px}
@media(max-width:760px){
  .owner-date-card{grid-template-columns:1fr}
  .owner-date-card input{width:100%}
}

/* Light workbench skin for the original Douyin modules. Custom modules keep their own theme. */
.ops-workspace-active .douyin-ops-shell{background:#f3f4f6;color:#20242a}
.ops-workspace-active .douyin-account-rail,
.ops-workspace-active .douyin-workspace>.douyin-panel,
.ops-workspace-active .douyin-side-panel,
.ops-workspace-active .douyin-tabs,
.ops-workspace-active .douyin-workbench{background:#fff;border-color:#e4e6ea;color:#20242a;box-shadow:0 2px 10px rgba(15,23,42,.035)}
.ops-workspace-active .douyin-brand-row{border-color:#e6e8ec;background:#fff}
.ops-workspace-active .douyin-brand-row b{color:#241c1f}
.ops-workspace-active .douyin-brand-row span{color:#8a919d}
.ops-workspace-active .douyin-account-scroll{background:#f8f9fb}
.ops-workspace-active .douyin-account-scroll section+section{border-top:1px solid #e8eaee}
.ops-workspace-active .douyin-account-scroll h4{color:#626b78}
.ops-workspace-active .douyin-account-item{background:#fff!important;border-color:transparent!important;box-shadow:none!important}
.ops-workspace-active .douyin-account-item:hover{background:#f5f6f8!important}
.ops-workspace-active .douyin-account-item.active{background:#fff0f1!important;border-color:#d65b67!important;box-shadow:inset 3px 0 #d93f50!important}
.ops-workspace-active .douyin-account-item b{color:#22262d}
.ops-workspace-active .douyin-account-item small{color:#8f97a3}
.ops-workspace-active .douyin-account-avatar{background:linear-gradient(135deg,#f05e6e,#9e2438);box-shadow:0 0 0 2px #fff,0 0 0 3px #e2e5e9}
.ops-workspace-active .douyin-account-rail button,
.ops-workspace-active .douyin-side-panel button,
.ops-workspace-active .douyin-action-row button,
.ops-workspace-active .douyin-account-form button{background:#fff;border-color:#dfe2e7;color:#4a515c}
.ops-workspace-active .douyin-account-rail button:hover,
.ops-workspace-active .douyin-side-panel button:hover,
.ops-workspace-active .douyin-action-row button:hover,
.ops-workspace-active .douyin-account-form button:hover{background:#f7f8fa;border-color:#c9ced6}
.ops-workspace-active .douyin-account-rail .primary,
.ops-workspace-active .douyin-action-row .primary,
.ops-workspace-active .douyin-account-form .primary{background:#f04d5e;border-color:#f04d5e;color:#fff}
.ops-workspace-active .douyin-tabs{gap:8px;padding:8px 10px;border-radius:12px}
.ops-workspace-active .douyin-tabs button{color:#555d68;border-radius:10px;padding:8px 16px}
.ops-workspace-active .douyin-tabs button.active{background:#b62035;color:#fff;box-shadow:0 4px 12px rgba(182,32,53,.18)}
.ops-workspace-active .douyin-tabs button:hover:not(.active){background:#f3f4f6;color:#252a31}
.ops-workspace-active .douyin-panel{background:#fff;border-color:#e4e6ea;color:#20242a}
.ops-workspace-active .douyin-panel-head{border-color:#eceef1}
.ops-workspace-active .douyin-panel-head h2{color:#20242a}
.ops-workspace-active .douyin-panel-head p{color:#848c98}
.ops-workspace-active .douyin-browser-panel{background:#fff}
.ops-workspace-active .douyin-browser-panel>.douyin-panel-head{background:#fff;border-color:#eceef1}
.ops-workspace-active .douyin-browser-panel>.douyin-panel-head h2{color:#20242a}
.ops-workspace-active .douyin-browser-panel>.douyin-panel-head p{color:#848c98}
.ops-workspace-active .douyin-workbench-tabs{background:#fafbfc;border-color:#e8eaee}
.ops-workspace-active .douyin-workbench-tabs>button{background:#f4f5f7;border-color:#e1e4e8;color:#606975}
.ops-workspace-active .douyin-workbench-tabs>button.active{background:#fff;border-color:#d8dce2;color:#20242a;box-shadow:0 -2px 0 #f04d5e inset}
.ops-workspace-active .douyin-workbench-tabs>button small{color:#929aa5}
.ops-workspace-active .douyin-browser-toolbar-main{background:#fafbfc;border-color:#e8eaee}
.ops-workspace-active .douyin-browser-toolbar-main button{background:#fff;border-color:#dfe2e7;color:#454c56}
.ops-workspace-active .douyin-browser-toolbar-main input{background:#fff;border-color:#dfe2e7;color:#20242a}
.ops-workspace-active .douyin-inline-browser-mount{background:#f7f8fa;border-color:#e8eaee}
.ops-workspace-active .douyin-inline-browser-empty{background:#f7f8fa;color:#6f7783}
.ops-workspace-active .douyin-inline-browser-empty .douyin-browser-orbit span{background:radial-gradient(circle at 35% 30%,#9bbcff,#6f8ee8 58%,#dce6ff);box-shadow:0 0 0 16px rgba(105,140,230,.08),0 0 0 34px rgba(105,140,230,.045)}
.ops-workspace-active .douyin-inline-browser-empty small{color:#8d95a1}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-shell{background:#fff;border-color:#e3e5e9}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-shell>header{background:#fff;border-color:#e8eaee;color:#20242a}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-shell>header>div:first-child span{color:#89919d}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-shell>header button{background:#fff;border-color:#dfe2e7;color:#4b525d}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-toolbar{background:#fafbfc;border-color:#e8eaee}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-toolbar button{background:#fff;border-color:#dfe2e7;color:#4b525d}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-toolbar input{background:#fff;border-color:#dfe2e7;color:#20242a}
.ops-workspace-active .douyin-browser-overlay.inline .douyin-browser-shell>footer{background:#fff;border-color:#e8eaee;color:#858d98}
.ops-workspace-active .douyin-browser-overlay.inline #douyin-browser-loading{background:#f7f8fa;color:#6f7783}
.ops-workspace-active .douyin-side-panel>section{border-color:#e8eaee;background:#fff}
.ops-workspace-active .douyin-side-head b,.ops-workspace-active .ops-rail-hero b{color:#20242a}
.ops-workspace-active .ops-rail-hero{background:linear-gradient(160deg,#fff,#f5f6f8)!important}
.ops-workspace-active .ops-executor-state{background:#fafbfc;border-color:#e4e6ea}
.ops-workspace-active .ops-executor-state b{color:#20242a}
.ops-workspace-active .ops-executor-state small{color:#89919d}

.ops-workspace-active .douyin-ops-shell{grid-template-columns:246px minmax(0,1fr) 302px;grid-template-rows:58px minmax(0,1fr)}
.ops-workspace-active .douyin-ops-shell.right-collapsed{grid-template-columns:246px minmax(0,1fr)}
.ops-workspace-active .douyin-global-nav{grid-column:1/-1;grid-row:1;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 12px;border:1px solid #e4e6ea;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.035);overflow-x:auto}
.ops-workspace-active .douyin-global-brand{display:flex;align-items:center;gap:8px;flex:none;margin-right:20px;color:#252a31;font-size:17px;font-weight:900;white-space:nowrap}
.ops-workspace-active .douyin-global-brand::before{content:"抖";display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#17181b;color:#fff;font-size:12px}
.ops-workspace-active .douyin-global-nav>button{display:inline-flex;align-items:center;gap:6px;flex:none;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:#4d5560;font-size:12px;font-weight:800;cursor:pointer}
.ops-workspace-active .douyin-global-nav>button i{display:grid;place-items:center;width:16px;height:16px;color:#737b87;font-size:14px;font-style:normal}
.ops-workspace-active .douyin-global-nav>button:hover{background:#f4f5f7;color:#252a31}
.ops-workspace-active .douyin-global-nav>button.active{background:#f04d5e;color:#fff;box-shadow:0 5px 14px rgba(240,77,94,.18)}
.ops-workspace-active .douyin-global-nav>button.active i{color:#fff}
.ops-workspace-active .douyin-global-more{margin-left:auto}
.ops-workspace-active .douyin-account-rail{grid-column:1;grid-row:2}
.ops-workspace-active .douyin-workspace{grid-column:2;grid-row:2}
.ops-workspace-active .douyin-side-panel{grid-column:3;grid-row:2}
.ops-workspace-active .douyin-account-tools{display:grid;grid-template-columns:1fr 1fr 34px;gap:7px;padding:10px;border-bottom:1px solid #e8eaee;background:#fff}
.ops-workspace-active .douyin-account-tools button{padding:8px 8px!important;font-size:11px!important}
.ops-workspace-active .douyin-account-tools .icon{padding:8px 0!important;text-align:center}
.ops-workspace-active .douyin-account-search{display:grid;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:5px;margin:0 10px 8px;padding:0 9px;height:34px;border:1px solid #e1e4e9;border-radius:9px;background:#fff;color:#8d95a1}
.ops-workspace-active .douyin-account-search input{min-width:0;border:0;outline:0;background:transparent;color:#252a31;font:inherit;font-size:11px}
.ops-workspace-active .douyin-account-search b{font-size:12px;font-weight:400}
.ops-workspace-active .douyin-account-scroll{padding:5px 8px 8px}
.ops-workspace-active .douyin-account-group h4{display:flex;align-items:center;gap:6px;margin:8px 4px 6px;color:#626b78;font-size:11px}
.ops-workspace-active .douyin-account-group h4 .douyin-account-group-toggle{padding:0!important;border:0!important;background:transparent!important;color:#7d8591!important;font-size:12px!important;transition:transform .16s ease}
.ops-workspace-active .douyin-account-group.collapsed h4 .douyin-account-group-toggle{transform:rotate(-90deg)}
.ops-workspace-active .douyin-account-group h4 span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops-workspace-active .douyin-account-group h4 small{color:#8e96a2;font-weight:500}
.ops-workspace-active .douyin-account-group h4 .douyin-account-group-more{margin-left:auto;padding:0 4px!important;border:0!important;background:transparent!important;color:#9aa2ad!important;font-size:14px!important}
.ops-workspace-active .douyin-account-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid #e8eaee;background:#fff}
.ops-workspace-active .douyin-account-foot button{padding:7px 8px!important;font-size:10px!important}
.ops-workspace-active .douyin-account-foot span{color:#8c95a1;font-size:10px;white-space:nowrap}
.douyin-account-drawer.douyin-account-manager>section{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(880px,96vw);padding:0;overflow:hidden}
.douyin-account-manager>section>header{height:auto;min-height:0;margin:0;padding:14px 16px;align-items:flex-start;justify-content:space-between;border:0;border-bottom:1px solid rgba(15,22,34,.1);border-radius:0;background:rgba(255,255,255,.9);box-shadow:none}
.douyin-account-manager-body{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:0}
.douyin-account-manager-body>aside{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:12px;border-right:1px solid rgba(15,22,34,.1);background:rgba(15,22,34,.025)}
.douyin-account-manager-body>main{min-width:0;min-height:0;padding:14px 16px;overflow:auto}
.douyin-account-manager-title,.douyin-account-manager-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.douyin-account-manager-title b,.douyin-account-manager-head b{color:var(--gl-ink,#242a31);font-size:13px}
.douyin-account-manager-title small,.douyin-account-manager-head span{color:var(--gl-muted,#7d8793);font-size:10px}
.douyin-account-manager-groups{display:grid;align-content:start;gap:5px;min-height:0;margin:10px 0;overflow:auto}
.douyin-account-manager-groups button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--gl-ink-2,#4a515c);font-size:11px;text-align:left;cursor:pointer}
.douyin-account-manager-groups button:hover{background:rgba(255,255,255,.6)}
.douyin-account-manager-groups button.active{border-color:rgba(214,91,103,.5);background:rgba(255,240,241,.9);color:var(--gl-wine,#b62035)}
.douyin-account-manager-groups button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-account-manager-groups button small{flex:none;color:var(--gl-muted,#8f97a3)}
.douyin-account-manager-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding-top:10px;border-top:1px solid rgba(15,22,34,.08)}
.douyin-account-manager-create input,.douyin-account-manager-edit input,.douyin-account-manager-row select{min-width:0;box-sizing:border-box;padding:7px 8px;border:1px solid rgba(15,22,34,.14);border-radius:7px;background:rgba(255,255,255,.82);color:var(--gl-ink,#242a31);font:inherit;font-size:11px}
.douyin-account-manager-create button,.douyin-account-manager-actions button,.douyin-account-manager-edit button{padding:7px 9px;border:1px solid rgba(15,22,34,.14);border-radius:7px;background:rgba(255,255,255,.78);color:var(--gl-ink-2,#4a515c);font-size:10px;font-weight:800;cursor:pointer}
.douyin-account-manager-create .primary,.douyin-account-manager-actions .primary{border-color:#f04d5e;background:#f04d5e;color:#fff}
.douyin-account-manager-edit button.danger{border-color:rgba(201,64,64,.35);background:rgba(255,245,245,.9);color:#b42318}
.douyin-account-manager-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.douyin-account-manager-actions button:disabled{opacity:.42;cursor:default}
.douyin-account-manager-edit{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:6px;margin-top:12px;padding:10px;border:1px solid rgba(15,22,34,.08);border-radius:8px;background:rgba(255,255,255,.38)}
.douyin-account-manager-list{display:grid;gap:6px;margin-top:12px}
.douyin-account-manager-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto minmax(120px,150px);align-items:center;gap:8px;padding:8px 9px;border:1px solid rgba(15,22,34,.09);border-radius:8px;background:rgba(255,255,255,.62)}
.douyin-account-manager-copy{min-width:0}
.douyin-account-manager-copy b,.douyin-account-manager-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-account-manager-copy b{color:var(--gl-ink,#242a31);font-size:11px}
.douyin-account-manager-copy small{margin-top:2px;color:var(--gl-muted,#8f97a3);font-size:10px}
body.ops-workspace-active .douyin-ops-shell.focus-mode{grid-template-columns:minmax(0,1fr)}
body.ops-workspace-active .douyin-ops-shell.focus-mode .douyin-workspace{grid-column:1}
.douyin-home-kpis{margin:10px 0 14px}
.douyin-home-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:12px;align-items:start}
.douyin-home-grid>section,.douyin-home-grid>aside,.douyin-two-column>section{min-width:0;padding:12px;border:1px solid #e7e9ed;border-radius:9px;background:#fff}
.douyin-home-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;margin-bottom:14px}
.douyin-home-groups button{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border:1px solid #e3e6ea;border-radius:8px;background:#fafbfc;color:#4b535e;font-size:11px;text-align:left;cursor:pointer}
.douyin-home-groups button:hover{border-color:#e3b7bd;background:#fff7f8}
.douyin-home-groups span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-home-groups b{color:#b62035;font-size:14px}
.douyin-home-accounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px}
.douyin-home-accounts>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid #e7e9ed;border-radius:8px;background:#fff;text-align:left;cursor:pointer}
.douyin-home-accounts>button:hover{border-color:#d6dbe1;background:#fafbfc}
.douyin-home-accounts>button>span:nth-child(2){min-width:0}
.douyin-home-accounts b,.douyin-home-accounts small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-home-accounts b{color:#252a31;font-size:11px}
.douyin-home-accounts small{margin-top:2px;color:#8d95a1;font-size:10px}
.douyin-block-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 8px;padding-bottom:7px;border-bottom:1px solid #edf0f3}
.douyin-block-title b{color:#28313b;font-size:12px}
.douyin-block-title span{color:#9099a4;font-size:10px}
.douyin-subtabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:4px 0 10px;padding:6px;border:1px solid #e7e9ed;border-radius:9px;background:#fafbfc}
.douyin-subtabs button{padding:7px 14px;border:0;border-radius:7px;background:transparent;color:#626b76;font-size:11px;font-weight:800;cursor:pointer}
.douyin-subtabs button.active{background:#fff;color:#b62035;box-shadow:0 1px 5px rgba(15,23,42,.08)}
.douyin-page-loading{padding:42px 18px;border:1px dashed #d9dde3;border-radius:9px;background:#fafbfc;text-align:center;color:#8d95a1}
.douyin-table-wrap{max-height:520px}
.douyin-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
body.ops-workspace-active .douyin-publish-compose{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(240px,1fr) minmax(140px,.45fr) minmax(180px,.55fr);gap:7px;margin:10px 0 12px;padding:10px;border:1px solid #e5e8ed;border-radius:9px;background:#fafbfc}
body.ops-workspace-active .douyin-publish-compose label{display:grid;gap:4px;min-width:0;color:#69737e;font-size:9px}
body.ops-workspace-active .douyin-publish-compose label.wide{grid-column:1/-1}
body.ops-workspace-active .douyin-publish-compose input,body.ops-workspace-active .douyin-publish-compose select,body.ops-workspace-active .douyin-publish-compose textarea{width:100%;min-width:0;box-sizing:border-box;padding:6px 7px;border:1px solid #dce1e7;border-radius:7px;background:#fff;color:#3d4853;font:inherit;font-size:10px}
body.ops-workspace-active .douyin-publish-compose textarea{resize:vertical;line-height:1.45}
body.ops-workspace-active .douyin-publish-actions{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-top:4px}
body.ops-workspace-active .douyin-publish-actions button{padding:7px 11px;border:1px solid #dce1e7;border-radius:7px;background:#fff;color:#4e5964;font-size:10px;font-weight:800;cursor:pointer}
body.ops-workspace-active .douyin-publish-actions button.primary{border-color:#d33b4a;background:#d33b4a;color:#fff}
body.ops-workspace-active .douyin-publish-actions .douyin-confirm{margin-left:auto;display:flex;align-items:center;gap:5px;color:#9e303a;font-size:9px}
@media(max-width:900px){body.ops-workspace-active .douyin-publish-compose{grid-template-columns:1fr 1fr}body.ops-workspace-active .douyin-publish-compose label.wide,body.ops-workspace-active .douyin-publish-actions{grid-column:1/-1}body.ops-workspace-active .douyin-publish-actions .douyin-confirm{margin-left:0}}
@media(max-width:760px){.douyin-account-drawer.douyin-account-manager>section{width:100vw}.douyin-account-manager-body{grid-template-columns:1fr;overflow:auto}.douyin-account-manager-body>aside{border-right:0;border-bottom:1px solid rgba(15,22,34,.1)}.douyin-account-manager-row{grid-template-columns:34px minmax(0,1fr) auto}.douyin-account-manager-row select{grid-column:2/-1;width:100%}}
@media(max-width:1180px){.douyin-home-grid,.douyin-two-column{grid-template-columns:1fr}}
@media(max-width:1180px){
  .ops-workspace-active .douyin-ops-shell{grid-template-columns:220px minmax(0,1fr)}
  .ops-workspace-active .douyin-side-panel{display:none}
  .ops-workspace-active .douyin-global-brand{margin-right:8px}
}
@media(max-width:900px){
  .ops-workspace-active .douyin-ops-shell{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);height:auto}
  .ops-workspace-active .douyin-account-rail{grid-column:1;grid-row:2;max-height:360px}
  .ops-workspace-active .douyin-workspace{grid-column:1;grid-row:3}
  .ops-workspace-active .douyin-global-nav{position:sticky;top:0;z-index:20}
}

/* 驾驶舱 2026-08：窄窗口也保持卡片化，不退化成普通文字列表 */
@media(max-width:1050px){
  .owner-dashboard{gap:12px}
  .owner-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .owner-kpi{min-height:104px;padding:13px 15px}
  .owner-kpi b{font-size:22px}
  .owner-freshness{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-freshness>div{grid-column:1/-1;padding:12px 15px}
  .owner-freshness>article{padding:12px 15px}
  .owner-panel-head{padding:14px 16px}
  .owner-trend{min-height:190px;padding-top:16px}
}
@media(max-width:620px){
  .owner-hero-main{padding:18px}
  .owner-hero-total{align-items:flex-start;flex-direction:column}
  .owner-hero-value{font-size:34px}
  .owner-breakdown,.owner-kpi-grid,.owner-freshness{grid-template-columns:1fr}
  .owner-breakdown{gap:6px}
  .owner-breakdown>span{display:flex;align-items:center;justify-content:space-between}
  .owner-breakdown small{margin:0}
  .owner-freshness>article{border-top:1px solid #eee2d4;border-left:0}
}
.office-tools-panel{background:#fff;border-color:var(--line)}
.office-tool-dock{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}
.office-tool-tile{display:grid;grid-template-columns:42px auto;align-items:center;gap:11px;min-width:166px;padding:11px 15px 11px 11px;border:1px solid #e6ddd1;border-radius:11px;background:#fdfcf9;color:#3d2d2b;text-align:left;font:inherit;cursor:pointer;box-shadow:0 1px 2px rgba(75,45,30,.04);transition:border-color .16s,box-shadow .16s,transform .16s}
.office-tool-tile:hover{border-color:#d6a75e;box-shadow:0 5px 14px rgba(86,43,32,.08);transform:translateY(-1px)}
.office-tool-glyph{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;color:#fff;font-size:17px;font-weight:800;box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}
.office-tool-tile.wps .office-tool-glyph{background:linear-gradient(135deg,#0f7b5f,#27a575)}
.office-tool-tile.feishu .office-tool-glyph{background:linear-gradient(135deg,#2f62e0,#4a83f4)}
.office-tool-tile.youzan .office-tool-glyph{background:linear-gradient(135deg,#d92b34,#ff5a45)}
.office-tool-tile.doubao .office-tool-glyph{background:linear-gradient(135deg,#00a86b,#12b37c)}
.office-tool-tile.deepseek .office-tool-glyph{background:linear-gradient(135deg,#1f2d5f,#4a6cf7)}
.office-tool-name{font-size:14px;font-weight:700;color:#3c2d2b}
.office-tool-settings{margin-top:14px;padding-top:12px;border-top:1px solid #eee0cb}
.office-tool-settings summary{cursor:pointer;font-weight:700;color:#7f1d2d}
.office-tool-setting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.office-tool-setting-grid label{display:grid;gap:6px}
.office-tool-setting-grid input{width:100%}
.office-embedded-shell[hidden]{display:none!important}
.office-embedded-shell{position:fixed;top:0;right:0;bottom:0;left:246px;z-index:80;display:block;padding:12px;background:#f5f2ed}
.office-embedded-window{width:100%;height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid #ded6ca;border-radius:14px;background:#fff;box-shadow:0 8px 28px rgba(45,35,31,.12)}
.office-embedded-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:#fffdf9;border-bottom:1px solid #e7dfd4;color:#34282a}
.office-embedded-head h2{margin:2px 0 0;color:#34282a}
.office-embedded-head small{color:#897b73}
.office-embedded-actions{display:flex;gap:8px}
.office-embedded-actions button{padding:8px 13px;border:1px solid #d9cfc2;border-radius:8px;background:#fff;color:#514449;cursor:pointer}
.office-embedded-actions button.primary{border-color:#79515a;background:#6c414a;color:#fff}
.office-embedded-notice{margin:0;padding:8px 18px;background:#fff8e8;border-bottom:1px solid #eadac5;color:#705c4f}
.office-embedded-frame{width:100%;height:100%;border:0;background:#fff}
.ai-capability-tool-note{margin:10px 0 0;color:#8b786c}
.ai-capability-section{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.ai-capability-section>.section-head{border-bottom:1px solid #eee2d4}
.ai-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}
.ai-capability-card{display:flex;flex-direction:column;min-width:0;padding:15px;border:1px solid #eadfd1;border-top:3px solid #a8262f;border-radius:12px;background:#fff}
.ai-capability-card-head h3{margin:0;font-size:18px;color:#53151c}
.ai-capability-card-head p{margin:6px 0 0;color:#705f60;font-size:13px;line-height:1.45}
.ai-capability-field{margin-top:13px}
.ai-capability-field span{display:block;font-size:11px;font-weight:700;color:#9a6b16}
.ai-capability-field pre{margin:6px 0 0;padding:10px;min-height:38px;border:1px solid #eee2d4;border-radius:9px;background:#fdfaf5;color:#4a3734;font-family:inherit;font-size:13px;line-height:1.5;white-space:pre-wrap;word-break:break-word}
.ai-capability-field pre:not(.has-content){color:#9d8e85}
.ai-capability-actions{display:flex;gap:8px;margin-top:14px}
.ai-capability-actions button{padding:8px 10px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-weight:600}
.ai-capability-actions button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ai-capability-editor{margin-top:12px;padding-top:10px;border-top:1px solid #eee2d4}
.ai-capability-editor summary{cursor:pointer;color:#7e1c2a;font-weight:700}
.ai-capability-editor label{display:grid;gap:6px;margin-top:10px;color:#5f4e4c;font-size:13px}
.ai-capability-editor textarea{width:100%;min-height:76px;resize:vertical;box-sizing:border-box;border:1px solid #dfd1c2;border-radius:8px;padding:9px;font:inherit}
.ai-capability-editor button{margin-top:10px}
.ai-capability-knowledge{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid #eee2d4;background:#fdf9f3}
.ai-capability-knowledge span{color:#8b7768;font-size:12px;font-weight:700}
.ai-capability-knowledge b{padding:5px 8px;border-radius:999px;background:#f5ead7;color:#6b4318;font-size:12px;font-weight:600}
.ai-capability-future{margin-top:16px}
.ai-capability-placeholder{padding:28px 18px;text-align:center;color:#9a8d84}
@media(max-width:1050px){.ai-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ai-capability-grid{grid-template-columns:1fr}.ai-capability-actions{align-items:stretch;flex-direction:column}}
@media(max-width:1180px){.office-embedded-shell{left:184px}}
@media(max-width:900px){.office-tool-dock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.office-tool-tile{min-width:0;grid-template-columns:1fr;justify-items:center;text-align:center;padding:12px 8px}.office-tool-setting-grid{grid-template-columns:1fr}.office-embedded-shell{left:82px;padding:0}.office-embedded-window{width:100%;height:100vh;border-radius:0}.office-embedded-head{align-items:flex-start}.office-embedded-actions{flex-wrap:wrap;justify-content:flex-end}.office-embedded-notice{font-size:12px}}
.wps-panel{margin:0 0 14px;padding:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.wps-panel{margin-bottom:8px;border-radius:8px}
#wps-auth-shell{z-index:90}
.wps-panel-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;border:0;background:linear-gradient(90deg,#fdf6e8,#fff);color:#4b2025;text-align:left;font:inherit;cursor:pointer}
.wps-panel-toggle{padding:7px 10px;gap:8px}
.wps-panel-toggle:hover{background:linear-gradient(90deg,#faf0dc,#fff)}
.wps-panel-toggle .wps-status-dot{flex:none;width:9px;height:9px;border-radius:50%;background:#c9a24b}
.wps-panel-toggle .wps-status-dot{width:7px;height:7px}
.wps-panel-toggle .wps-status-dot.ok{background:#1d9c68}
.wps-panel-toggle .wps-panel-title{display:grid;gap:2px;min-width:0}
.wps-panel-toggle .wps-panel-title b{font-size:14px}
.wps-panel-toggle .wps-panel-title b{font-size:13px}
.wps-panel-toggle .wps-panel-title span{font-size:11px;color:var(--muted)}
.wps-panel-toggle .wps-panel-chevron{margin-left:auto;padding:5px 9px;border:1px solid #dac8ad;border-radius:7px;background:#fff;color:#6b4c3d;font-size:12px;white-space:nowrap}
.wps-panel-toggle .wps-panel-chevron{padding:3px 7px;font-size:11px}
.wps-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;background:linear-gradient(90deg,#fdf6e8,#fff);border-bottom:1px solid var(--line)}.wps-panel-head b{display:block;color:#4b2025;font-size:15px}.wps-panel-head span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.wps-panel-head button{padding:7px 11px;border:1px solid #dac8ad;border-radius:7px;background:#fff;color:#6b4c3d;cursor:pointer;white-space:nowrap}
.wps-panel-head{padding:9px 12px}.wps-panel-head b{font-size:14px}.wps-panel-head button{padding:5px 9px;font-size:12px}
.wps-panel-body{padding:14px 16px;border-top:1px solid var(--line)}
.wps-panel-body{padding:10px 12px}
.wps-panel-summary{margin:0 0 12px}.wps-panel-summary b.ok{color:#177a4f}.wps-panel-summary b.warn{color:#b96b12}
.wps-panel-summary{margin-bottom:8px}
.wps-panel-actions{display:flex;flex-wrap:wrap;gap:8px}.wps-panel-actions button{white-space:nowrap}.wps-panel-actions button:disabled{opacity:.5;cursor:not-allowed}
.wps-panel-actions{gap:6px}.wps-panel-actions button{padding:5px 9px;font-size:12px}
.wps-config-details{margin-top:12px;border:1px dashed #d8c8ad;border-radius:9px;background:#fffdf8}.wps-config-details summary{cursor:pointer;padding:11px 13px;display:flex;align-items:center;gap:9px;color:#5b4639}.wps-config-details summary b{font-size:13px}.wps-config-details summary span{color:var(--muted);font-size:11px}.wps-config-details[open] summary{border-bottom:1px solid #eadfce;margin-bottom:12px}
.wps-config-details{margin-top:8px;border-radius:7px}.wps-config-details summary{padding:8px 10px}.wps-config-details[open] summary{margin-bottom:8px}
.wps-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 13px}.wps-form label{display:grid;gap:6px;color:#695448;font-size:12px;font-weight:700}.wps-form input{width:100%;box-sizing:border-box}.wps-form .wps-switch{display:flex;align-items:center;gap:9px;font-weight:600}.wps-form .wps-switch input{width:18px;height:18px;accent-color:var(--blue)}.wps-form .wps-switch i{font-style:normal;color:var(--muted);font-weight:400;font-size:11px;line-height:1.5}.wps-config-details .wps-panel-actions{padding:0 13px 13px}
.wps-form{gap:8px;padding:0 10px}
.wps-preview{margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.wps-preview-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.wps-preview-head b{color:#4b2025;font-size:14px}.wps-preview-head span{color:var(--muted);font-size:11px}.wps-preview .summary-strip{margin-bottom:10px}.wps-preview .summary-strip div{padding:9px 12px}.wps-preview .summary-strip b{font-size:16px}
.wps-errors{display:grid;gap:5px;margin:10px 0;padding:9px 12px;border-left:4px solid #cf3c4f;background:#fff3f2;color:#9a2b2b;font-size:12px;border-radius:0 8px 8px 0}
.wps-platform-hint{display:flex;gap:9px;align-items:flex-start;margin:0 0 12px;padding:10px 12px;border:1px solid #efcfa1;border-radius:9px;background:#fff7e8;color:#7a4a17;font-size:12px;line-height:1.6}
.wps-platform-hint b{display:block;color:#6f3d0e;font-size:13px}
.wps-platform-hint.info{border-color:#cfe3d7;background:#f2faf5;color:#38664d}
.wps-platform-hint.info b{color:#2c5540}
@media(max-width:900px){.wps-form{grid-template-columns:1fr}.wps-panel-head{align-items:flex-start}.wps-panel-head button{margin-left:auto}}
.wps-form .wps-saved-key{font-style:normal;font-weight:600;font-size:10px;color:#1f7a4d;background:#e8f6ee;border:1px solid #cdecd8;border-radius:999px;padding:1px 7px;margin-left:6px;vertical-align:1px}
.base-toolbar{background:linear-gradient(180deg,#fff,#fdfaf4);border-color:#e8dccb;box-shadow:0 1px 4px rgba(73,42,30,.05)}
.base-toolbar>div:first-child b{color:#5a2227}
.summary-strip{border-radius:10px;box-shadow:0 1px 3px rgba(73,42,30,.05)}
.summary-strip div{background:#fff;border-right:1px solid #eadfce}
.summary-strip div:last-child{border-right:0}
.sheet-table thead th{background:#f7efe3;color:#5c3f33;border-bottom:2px solid #e2d0b4}
.sheet-table tbody tr:nth-child(even) td{background:#fffcf7}
.sheet-table tbody tr:hover td{background:#fff5e6}
.sheet-table td .sheet-cell{transition:background .12s ease}
.sheet-table td .sheet-cell:focus{background:#fffbe8;box-shadow:inset 0 0 0 1px #d9b36a}
.base-table-wrap,.sheet-table-wrap{border-radius:10px;border-color:#e6d9c6;box-shadow:0 1px 4px rgba(73,42,30,.04)}
.base-toolbar .toolbar select,.base-toolbar .toolbar input{padding:6px 9px;border:1px solid #dccbb3;border-radius:7px;background:#fff;color:#3f3530;font-size:12px}
.base-toolbar .toolbar button{padding:6px 10px;border:1px solid #d9cfc2;border-radius:7px;background:#fff;color:#514449;font-size:12px;cursor:pointer}
.base-toolbar .toolbar button.primary{border-color:#8b3440;background:#7c2d38;color:#fff}
.base-toolbar .toolbar button.danger-link{border-color:#efc2bd;background:#fff7f6;color:#b42318}
.conversion-auto{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#e7f7ef;color:#08784e;font-weight:700;font-size:12px}
.conversion-empty{color:#c4b8ae;font-size:12px}
.sheet-table tbody tr.is-editing td{background:#fff0c2 !important}
.sheet-table tbody tr.is-editing .base-action-col{background:#fff0c2 !important}
.expense-summary-wrap{position:relative;margin:0 0 14px}
.expense-summary-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;align-items:stretch;width:100%}
.expense-summary-cell{--card-sub:#D8C1A5;--card-amount:#F2D7A4;min-width:0;padding:10px 7px;border:1px solid rgba(0,0,0,.22);border-radius:16px;background:linear-gradient(150deg,#2a2023,#1d1518);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow);cursor:pointer;display:flex;flex-direction:column;height:196px;transition:box-shadow .18s ease,filter .18s ease}
.expense-summary-cell:hover{filter:brightness(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),var(--shadow-hover)}
.expense-summary-cell.main{--card-sub:#D9BFA7;--card-amount:#F4D48A;background:linear-gradient(150deg,#651421,#3E0C16)}
.expense-summary-cell.flow{--card-sub:#D8C1A5;--card-amount:#F3D5A0;background:linear-gradient(150deg,#421315,#2b0c0e)}
.expense-summary-cell.site{--card-sub:#C9CEB4;--card-amount:#F0D6A3;background:linear-gradient(150deg,#172719,#0f1a12)}
.expense-summary-cell.bonus{--card-sub:#D8BE91;--card-amount:#F4D69B;background:linear-gradient(150deg,#42260d,#2b1808)}
.expense-summary-cell.share{--card-sub:#BCC5D0;--card-amount:#F2D7A4;background:linear-gradient(150deg,#152131,#0d1520)}
.expense-summary-cell.salary{--card-sub:#C2CBD5;--card-amount:#F2D5A0;background:linear-gradient(150deg,#1a2938,#111b26)}
.expense-summary-cell.comm{--card-sub:#BFC3C5;--card-amount:#F0D5A6;background:linear-gradient(150deg,#202529,#15181b)}
.expense-summary-cell.other{--card-sub:#C8BEC9;--card-amount:#F1D4A0;background:linear-gradient(150deg,#2a1e30,#1c141f)}
.expense-summary-cell span{display:block;text-align:center;color:#e8d8c8;font-size:12px;font-weight:700;white-space:nowrap;letter-spacing:0}
.expense-summary-cell.main span{color:#FFF3DF}
.expense-summary-cell b{display:block;margin-top:6px;text-align:center;color:var(--card-amount);font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.expense-summary-cell .expense-sub-list{height:118px;flex:none;overflow-y:auto;overflow-x:hidden;display:grid;gap:3px;margin-top:8px;padding-right:0;scrollbar-width:thin}
.expense-summary-cell.collapsed{height:auto;min-height:0;padding:10px 7px;justify-content:center}
.expense-summary-cell.collapsed .expense-sub-list,.expense-summary-cell.collapsed b{display:none}
.expense-summary-cell .expense-sub-list i{display:flex;justify-content:space-between;gap:4px;align-items:baseline;min-width:0;font-style:normal;color:var(--card-sub);font-size:11px;line-height:1.5;white-space:nowrap}
.expense-summary-cell .expense-sub-list i em{flex:1 1 auto;min-width:0;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.expense-summary-cell .expense-sub-list i span{flex:0 0 auto;min-width:72px;padding-right:14px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--card-amount);font-weight:600}
.expense-card-toggle{margin-top:auto;align-self:flex-end;border:0;background:transparent;color:rgba(255,255,255,.65);font-size:10px;cursor:pointer;padding:2px 0}
.expense-card-toggle:hover{color:#fff}
.expense-summary-cell.is-marked{outline:2px solid #e0a83c;outline-offset:-2px;background:rgba(255,255,255,.05)}
.expense-summary-collapse{position:absolute;top:-26px;right:0;padding:3px 9px;border:1px solid #eadfce;border-radius:6px;background:#fff;color:#8c7a6c;font-size:11px;cursor:pointer}
.expense-summary-collapse:hover{background:#f7f0e2;color:#6f3d0e}
.expense-summary-collapsed-title{display:none;align-items:center;justify-content:center;gap:12px;padding:12px;border:1px solid rgba(0,0,0,.22);border-radius:16px;background:linear-gradient(150deg,#651421,#3E0C16);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow);color:#FFF3DF;font-size:16px;font-weight:700;cursor:pointer;transition:filter .18s ease}
.expense-summary-collapsed-title:hover{filter:brightness(1.06)}
.expense-summary-collapsed-title em{font-style:normal;color:#F4D48A;font-size:12px}
.expense-summary-wrap.collapsed .expense-summary-row{display:none}
.expense-summary-wrap.collapsed .expense-summary-collapsed-title{display:flex}
.expense-summary-wrap.collapsed .expense-summary-collapse{display:none}
@media(max-width:1300px){.expense-summary-cell{height:180px;padding:9px}.expense-summary-cell span{font-size:10px}.expense-summary-cell b{font-size:16px}.expense-summary-cell .expense-sub-list{height:104px}.expense-summary-cell .expense-sub-list i{font-size:10px}}
.expense-color-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:18px 24px}
.expense-color-option{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e2d5c4;border-radius:8px;background:#fff;cursor:pointer;font-size:13px;color:#4b2025}
.expense-color-option:hover{border-color:#c9a24b;background:#fffaf0}
.expense-color-option i{width:18px;height:18px;border-radius:5px;border:1px solid #d9cfc2;background:#fff}
.expense-color-option.swatch-light-red i{background:#ffdcd7}
.expense-color-option.swatch-light-yellow i{background:#ffedb8}
.expense-color-option.swatch-light-blue i{background:#d8ebff}
.expense-color-option.swatch-light-green i{background:#d9f1df}
.expense-color-option.swatch-light-gray i{background:#e4e4e4}
.sheet-table tbody tr.expense-color-light-red td{background:#ffdcd7 !important}
.sheet-table tbody tr.expense-color-light-yellow td{background:#ffedb8 !important}
.sheet-table tbody tr.expense-color-light-blue td{background:#d8ebff !important}
.sheet-table tbody tr.expense-color-light-green td{background:#d9f1df !important}
.sheet-table tbody tr.expense-color-light-gray td{background:#e4e4e4 !important}
.sheet-table tbody tr.expense-color-light-red td.base-action-col{background:#ffdcd7 !important}
.sheet-table tbody tr.expense-color-light-yellow td.base-action-col{background:#ffedb8 !important}
.sheet-table tbody tr.expense-color-light-blue td.base-action-col{background:#d8ebff !important}
.sheet-table tbody tr.expense-color-light-green td.base-action-col{background:#d9f1df !important}
.sheet-table tbody tr.expense-color-light-gray td.base-action-col{background:#e4e4e4 !important}
.sheet-table tbody tr.expense-color-light-red:hover td{background:#ffdcd7 !important}
.sheet-table tbody tr.expense-color-light-yellow:hover td{background:#ffedb8 !important}
.sheet-table tbody tr.expense-color-light-blue:hover td{background:#d8ebff !important}
.sheet-table tbody tr.expense-color-light-green:hover td{background:#d9f1df !important}
.sheet-table tbody tr.expense-color-light-gray:hover td{background:#e4e4e4 !important}
:root{
  --wine:#6e1f2c;
  --wine-dark:#4d141d;
  --wine-light:#84303f;
  --navy:#5f1c28;
  --blue:#7a2330;
  --teal:#4f7a72;
  --bg:#f6f2ec;
  --line:#e7ded2;
  --text:#2d2424;
  --muted:#807066;
  --green:#2f7a5a;
  --red:#b33a3a;
  --amber:#c89b4a;
  --radius:10px;
  --radius-card:14px;
  --radius-control:8px;
  --surface-soft:#fbf8f3;
  --shadow:0 2px 10px rgba(72,40,30,.06);
  --shadow-hover:0 6px 18px rgba(72,40,30,.10)
}
body{background:var(--bg);color:var(--text)}
.sidebar{background:linear-gradient(180deg,var(--wine-dark),var(--wine))}
nav button{color:#e6cfd0}
nav button:hover{background:rgba(255,255,255,.08)}
nav button.active{background:var(--wine-light);box-shadow:inset 3px 0 0 var(--amber)}
.brand small{color:#d9b7ae}
.sidebar-foot{color:#d9b7ae;border-top-color:#7a2b38}
header h1{color:var(--wine-dark)}
header p{color:var(--muted)}
.card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.primary{background:var(--wine)}
.primary:hover{background:var(--wine-light)}
input,select,textarea{border-color:var(--line);background:#fff}
th{background:#f2ece3;color:#6f5b50}
td{border-top-color:#f0e9df}
.table-wrap{background:#fff;border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.summary-strip{background:#f1e8da;border-color:#eadfce;border-radius:var(--radius)}
.summary-strip div{background:#fff}
.base-toolbar,.schedule-toolbar{background:#fff;border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.toolbar button,.base-toolbar .toolbar button{border-radius:7px}
.sheet-table thead th{background:#f2ece3;color:#6f5b50}
.sheet-table tbody tr:nth-child(even) td{background:#fbf8f3}
.sheet-table tbody tr:hover td{background:#f7f0e6}
.sheet-table td[data-col="amount"]{text-align:right}
.sheet-table td[data-col="amount"] input{text-align:right}
.number-cell{text-align:right;font-variant-numeric:tabular-nums}
.table-wrap,.base-table-wrap,.sheet-table-wrap{width:100%;max-width:100%;border-radius:var(--radius-card)}
.base-table,.sheet-table{width:100%}
.expense-sheet td[data-col="date"]{min-width:108px}
.expense-sheet td[data-col="amount"]{min-width:92px}
.expense-sheet td[data-col="summary"]{min-width:240px}
.expense-sheet td[data-col="project"]{min-width:150px}
.expense-sheet td[data-col="account"]{min-width:130px}
.base-toolbar{padding:14px 18px}
.base-toolbar .toolbar{gap:8px}
.card,.panel{transition:box-shadow .18s ease,transform .18s ease}
.panel:hover,.card:hover{box-shadow:var(--shadow-hover)}
button{transition:background .15s ease,color .15s ease,border-color .15s ease}
.primary:active{transform:translateY(1px)}
nav button{transition:background .15s ease,box-shadow .15s ease}
body.expense-page-title header{display:none}
.page-title-bar{display:flex;align-items:center;justify-content:center;width:100%;height:62px;margin:0 0 14px;border:1px solid rgba(216,178,95,.18);border-radius:12px;background:linear-gradient(120deg,#6b1c2a,#4d141d);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--shadow);color:#d8b25f;font-size:28px;font-weight:700;letter-spacing:0}
body.expense-page-title main{background:var(--wine);padding:18px 20px 40px}
body.expense-page-title #app,body.performance-page-title #app{display:flex;flex-direction:column;gap:14px;width:100%}
body.expense-page-title .page-title-bar,body.performance-page-title .page-title-bar{margin:0}
body.expense-page-title .expense-summary-wrap{margin:0}
body.expense-page-title .base-toolbar{margin:0}
body.expense-page-title .base-table-wrap,body.expense-page-title .sheet-table-wrap{margin:0}
body.performance-page-title main{background:var(--wine);padding:18px 20px 40px}
body.performance-page-title header{display:none}
body.performance-page-title .summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:transparent;border:0;box-shadow:none}
body.performance-page-title .summary-strip>div{border:1px solid rgba(0,0,0,.22);border-radius:14px;padding:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow);color:#fff}
body.performance-page-title .summary-strip>div:nth-child(1){background:linear-gradient(150deg,#651421,#3E0C16)}
body.performance-page-title .summary-strip>div:nth-child(2){background:linear-gradient(150deg,#172719,#0f1a12)}
body.performance-page-title .summary-strip>div:nth-child(3){background:linear-gradient(150deg,#1f3347,#15202e)}
body.performance-page-title .summary-strip>div:nth-child(4){background:linear-gradient(150deg,#42260d,#2b1808)}
body.performance-page-title .summary-strip span{color:#e8d8c8;font-size:12px;font-weight:700}
body.performance-page-title .summary-strip b{color:#F2D7A4;font-size:22px;font-weight:700}
body.performance-page-title .base-toolbar{margin:0}
body.performance-page-title .base-table-wrap,body.performance-page-title .sheet-table-wrap{margin:0}
.base-toolbar{background:linear-gradient(180deg,#fdfaf5,#f7f1e8);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow)}
.base-toolbar>div:first-child b{color:var(--wine);font-size:16px;font-weight:700}
.base-save-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#e6f5ec;color:#1f7a4d;font-size:12px;font-weight:700}
.base-toolbar .toolbar select,.base-toolbar .toolbar input{padding:7px 10px;border-radius:9px;background:#faf6f0;border:1px solid #e7ded2;color:#4a3b35;font-size:13px}
.base-toolbar .toolbar button{padding:7px 11px;border-radius:9px;font-size:13px;background:#f4efe8;border:1px solid #e2d7c9;color:#5b4639;font-weight:600}
.base-toolbar .toolbar button:hover{background:#ece3d7}
.base-toolbar .toolbar button.primary{background:var(--wine);border-color:var(--wine);color:#fff;font-weight:700}
.base-toolbar .toolbar button.primary:hover{background:var(--wine-light)}
.base-toolbar .toolbar button.danger-link{background:#fff4f2;border-color:#efcfc9;color:#b33a3a}
.base-toolbar .toolbar .column-picker summary{background:#faf3e2;border-color:#e5cf9d;color:#8a5f14;font-weight:600}
.sheet-table thead th{background:#efe5d8;color:#5c4236;font-size:13px;font-weight:700}
.sheet-table thead th[data-col="amount"],.sheet-table thead th[data-col="project"]{color:#6e1f2c}
.expense-sheet thead th,
.expense-sheet thead th *{color:#fff !important}
.expense-sheet thead th{border:3px solid transparent;border-radius:9px;background-clip:padding-box;height:48px;padding:0 6px;text-align:center !important;vertical-align:middle;font-size:16px !important;font-weight:800 !important}
.expense-sheet thead th[data-col="actions"]{background:#6e1f2c !important}
.expense-sheet thead th[data-col="date"]{background:#4a2c1a !important}
.expense-sheet thead th[data-col="category"]{background:#1d3323 !important}
.expense-sheet thead th[data-col="account"]{background:#1f3347 !important}
.expense-sheet thead th[data-col="summary"]{background:#3a2b3d !important}
.expense-sheet thead th[data-col="amount"]{background:#4a2c10 !important}
.expense-sheet thead th[data-col="voucherImage"]{background:#2b3440 !important}
.expense-sheet thead th[data-col="project"]{background:#4a1f1c !important}
.expense-sheet thead th[data-col="owner"]{background:#3b1f3a !important}
.expense-sheet thead .raw-header-filter{border-color:rgba(255,255,255,.35) !important;background:rgba(255,255,255,.12) !important;color:#fff !important}
.expense-sheet thead .raw-header-filter:hover{background:rgba(255,255,255,.22) !important;color:#fff !important;border-color:rgba(255,255,255,.55) !important}
.expense-sheet thead .raw-header-filter.is-active{background:#c8a34a !important;border-color:#c8a34a !important;color:#fff !important}
.performance-sheet thead th,
.performance-sheet thead th *{color:#fff !important}
.performance-sheet thead th{border:3px solid transparent;border-radius:9px;background-clip:padding-box;height:auto;min-height:48px;padding:6px 8px;text-align:center !important;vertical-align:middle;font-size:16px !important;font-weight:800 !important;white-space:normal;line-height:1.2}
.performance-sheet thead .raw-filterable-header>span{white-space:normal;overflow:visible;text-overflow:clip;min-width:0}
.performance-sheet thead .raw-header-filter{flex:0 0 18px}
.performance-sheet thead th:nth-child(9n+1){background:#6e1f2c !important}
.performance-sheet thead th:nth-child(9n+2){background:#4a2c1a !important}
.performance-sheet thead th:nth-child(9n+3){background:#1d3323 !important}
.performance-sheet thead th:nth-child(9n+4){background:#1f3347 !important}
.performance-sheet thead th:nth-child(9n+5){background:#3a2b3d !important}
.performance-sheet thead th:nth-child(9n+6){background:#4a2c10 !important}
.performance-sheet thead th:nth-child(9n+7){background:#2b3440 !important}
.performance-sheet thead th:nth-child(9n+8){background:#4a1f1c !important}
.performance-sheet thead th:nth-child(9n+9){background:#3b1f3a !important}
.performance-sheet thead .raw-header-filter{border-color:rgba(255,255,255,.35) !important;background:rgba(255,255,255,.12) !important;color:#fff !important}
.performance-sheet thead .raw-header-filter:hover{background:rgba(255,255,255,.22) !important;color:#fff !important;border-color:rgba(255,255,255,.55) !important}
.performance-sheet thead .raw-header-filter.is-active{background:#c8a34a !important;border-color:#c8a34a !important;color:#fff !important}
main{background:var(--wine);padding:18px 20px 40px}
header{position:relative;display:flex;align-items:center;justify-content:center;height:62px;margin:0 0 14px;padding:0 16px;border:1px solid rgba(216,178,95,.18);border-radius:12px;background:linear-gradient(120deg,#6b1c2a,#4d141d);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--shadow)}
header h1{margin:0;font-size:28px;font-weight:700;color:#d8b25f;text-align:center}
header p{display:none}
header .header-actions{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px;opacity:.9}
header .header-actions input,header .header-actions select,header .header-actions button{padding:5px 9px;border-radius:7px;font-size:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#f4e2dc}
header .header-actions button:hover{background:rgba(255,255,255,.18)}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}
.cards .card{display:flex;flex-direction:column;justify-content:flex-start;padding:14px;border:1px solid rgba(0,0,0,.22);border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow);color:#fff}
.cards .card:nth-child(9n+1){background:linear-gradient(150deg,#651421,#3E0C16)}
.cards .card:nth-child(9n+2){background:linear-gradient(150deg,#421315,#2b0c0e)}
.cards .card:nth-child(9n+3){background:linear-gradient(150deg,#172719,#0f1a12)}
.cards .card:nth-child(9n+4){background:linear-gradient(150deg,#1f3347,#15202e)}
.cards .card:nth-child(9n+5){background:linear-gradient(150deg,#3a2b3d,#241926)}
.cards .card:nth-child(9n+6){background:linear-gradient(150deg,#42260d,#2b1808)}
.cards .card:nth-child(9n+7){background:linear-gradient(150deg,#202529,#15181b)}
.cards .card:nth-child(9n+8){background:linear-gradient(150deg,#4a1f1c,#2c1110)}
.cards .card:nth-child(9n+9){background:linear-gradient(150deg,#2a1e30,#1c141f)}
.cards .card .label{color:#e8d8c8;font-size:12px;font-weight:700}
.cards .card strong{display:block;margin:6px 0 4px;color:#F2D7A4;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}
.cards .card .delta{color:#d9c8b5;font-size:12px}
.cards .card .delta.down{color:#f0b9b2}
.summary-strip{background:transparent;border:0;box-shadow:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 0 14px;border-radius:0}
.summary-strip>div{border:1px solid rgba(0,0,0,.22);border-radius:14px;padding:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow);color:#fff}
.summary-strip>div:nth-child(9n+1){background:linear-gradient(150deg,#651421,#3E0C16)}
.summary-strip>div:nth-child(9n+2){background:linear-gradient(150deg,#421315,#2b0c0e)}
.summary-strip>div:nth-child(9n+3){background:linear-gradient(150deg,#172719,#0f1a12)}
.summary-strip>div:nth-child(9n+4){background:linear-gradient(150deg,#1f3347,#15202e)}
.summary-strip>div:nth-child(9n+5){background:linear-gradient(150deg,#3a2b3d,#241926)}
.summary-strip>div:nth-child(9n+6){background:linear-gradient(150deg,#42260d,#2b1808)}
.summary-strip>div:nth-child(9n+7){background:linear-gradient(150deg,#202529,#15181b)}
.summary-strip>div:nth-child(9n+8){background:linear-gradient(150deg,#4a1f1c,#2c1110)}
.summary-strip>div:nth-child(9n+9){background:linear-gradient(150deg,#2a1e30,#1c141f)}
.summary-strip span{color:#e8d8c8;font-size:12px;font-weight:700}
.summary-strip b{color:#F2D7A4;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.summary-strip small{color:#d9c8b5;font-size:11px}
main .table-wrap thead th,main .excel-grid thead th,main .settings-grid-table thead th,main .panel table thead th{border:3px solid transparent;border-radius:9px;background-clip:padding-box;height:auto;min-height:44px;padding:6px 8px;text-align:center !important;vertical-align:middle;color:#fff !important;font-size:16px !important;font-weight:800 !important;white-space:normal;line-height:1.2}
main .table-wrap thead th:nth-child(9n+1),main .excel-grid thead th:nth-child(9n+1),main .settings-grid-table thead th:nth-child(9n+1),main .panel table thead th:nth-child(9n+1){background:#6e1f2c !important}
main .table-wrap thead th:nth-child(9n+2),main .excel-grid thead th:nth-child(9n+2),main .settings-grid-table thead th:nth-child(9n+2),main .panel table thead th:nth-child(9n+2){background:#4a2c1a !important}
main .table-wrap thead th:nth-child(9n+3),main .excel-grid thead th:nth-child(9n+3),main .settings-grid-table thead th:nth-child(9n+3),main .panel table thead th:nth-child(9n+3){background:#1d3323 !important}
main .table-wrap thead th:nth-child(9n+4),main .excel-grid thead th:nth-child(9n+4),main .settings-grid-table thead th:nth-child(9n+4),main .panel table thead th:nth-child(9n+4){background:#1f3347 !important}
main .table-wrap thead th:nth-child(9n+5),main .excel-grid thead th:nth-child(9n+5),main .settings-grid-table thead th:nth-child(9n+5),main .panel table thead th:nth-child(9n+5){background:#3a2b3d !important}
main .table-wrap thead th:nth-child(9n+6),main .excel-grid thead th:nth-child(9n+6),main .settings-grid-table thead th:nth-child(9n+6),main .panel table thead th:nth-child(9n+6){background:#4a2c10 !important}
main .table-wrap thead th:nth-child(9n+7),main .excel-grid thead th:nth-child(9n+7),main .settings-grid-table thead th:nth-child(9n+7),main .panel table thead th:nth-child(9n+7){background:#2b3440 !important}
main .table-wrap thead th:nth-child(9n+8),main .excel-grid thead th:nth-child(9n+8),main .settings-grid-table thead th:nth-child(9n+8),main .panel table thead th:nth-child(9n+8){background:#4a1f1c !important}
main .table-wrap thead th:nth-child(9n+9),main .excel-grid thead th:nth-child(9n+9),main .settings-grid-table thead th:nth-child(9n+9),main .panel table thead th:nth-child(9n+9){background:#3b1f3a !important}
.raw-header-filter{border-color:rgba(255,255,255,.35) !important;background:rgba(255,255,255,.12) !important;color:#fff !important}
.raw-header-filter:hover{background:rgba(255,255,255,.22) !important;color:#fff !important;border-color:rgba(255,255,255,.55) !important}
.raw-header-filter.is-active{background:#c8a34a !important;border-color:#c8a34a !important;color:#fff !important}
main .expense-sheet thead th{height:48px !important}
main .performance-sheet thead th{height:auto !important;min-height:48px !important;white-space:normal !important}
.global-account-menu{position:relative}
.global-menu-trigger{padding:5px 10px;border-radius:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#f4e2dc;font-size:12px;cursor:pointer;white-space:nowrap}
.global-menu-trigger:hover{background:rgba(255,255,255,.18)}
.global-menu-panel{position:absolute;right:0;top:calc(100% + 8px);display:none;min-width:230px;padding:10px;border:1px solid rgba(216,178,95,.25);border-radius:12px;background:#fff;box-shadow:var(--shadow-hover);color:#3c2626;z-index:60}
.global-account-menu.open .global-menu-panel{display:grid;gap:8px}
.global-menu-user{display:grid;gap:2px;padding-bottom:8px;border-bottom:1px solid #eadfce}
.global-menu-user b{color:#6e1f2c;font-size:14px}
.global-menu-user span{color:#8c7a6c;font-size:12px}
.global-menu-panel label{display:grid;gap:4px;color:#665247;font-size:12px;font-weight:700}
.global-menu-panel input,.global-menu-panel select,.global-menu-panel button{width:100%;box-sizing:border-box;padding:6px 9px;border:1px solid #dccbb3;border-radius:8px;background:#faf6f0;color:#3c2626;font-size:12px;text-align:left}
.global-menu-panel button{cursor:pointer;font-weight:600}
.global-menu-panel button:hover{background:#f0e6d8}
.global-menu-panel .table-view-controls{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center}
.global-menu-panel .table-view-controls span{color:#665247;font-size:12px;font-weight:700}
#global-header-actions,.global-account-menu,.user-chip,#role-preview,#table-view-controls,.header-actions #month,.header-actions #import-btn{display:none !important}
.sidebar{width:246px;padding:20px 14px 16px;background:linear-gradient(180deg,#3b1019 0%,var(--wine) 58%,#2e0e15 100%);gap:0}
.brand{display:flex;align-items:center;gap:12px;padding:2px 10px 20px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}
.brand img{width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.24))}
.brand div{display:grid;gap:4px}
.brand div span{font-size:27px;font-weight:800;color:#ffd76b;letter-spacing:0}
.brand small{color:#d9b7ae;font-size:12px;letter-spacing:2px}
nav{display:grid;gap:3px;padding:4px 2px 12px}
.nav-group{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#c99a78;font-size:13px;font-weight:600;padding:16px 12px 6px;letter-spacing:1px;cursor:pointer;user-select:none;border-radius:8px}
.nav-group:after{content:'▾';color:#c99a78;font-size:10px;transition:transform .18s ease}
.nav-group:hover{background:rgba(255,255,255,.04);color:#f0c48f}
.nav-group.collapsed:after{transform:rotate(-90deg)}
nav button{color:#d8c4c6;font-size:17px;font-weight:600;padding:11px 14px;border-radius:11px;line-height:1.3;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
nav button:hover{background:rgba(255,255,255,.07);color:#f4d6b3}
nav button.active{background:linear-gradient(90deg,rgba(216,178,95,.18),rgba(255,255,255,.06));color:#ffe28a;font-weight:700;box-shadow:inset 3px 0 0 var(--amber),inset 0 1px 0 rgba(255,255,255,.05)}
.sidebar-foot{margin-top:auto;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.05);color:#f0d6b0;font-size:15px;font-weight:600;display:flex;flex-direction:column;gap:2px}
.sidebar{width:264px;padding:18px 14px 14px;background:linear-gradient(180deg,#2d0b12 0%,#4d141d 34%,#6e1f2c 68%,#3b0d15 100%);box-shadow:inset -1px 0 0 rgba(255,215,140,.08),8px 0 30px rgba(0,0,0,.18)}
.brand{display:flex;align-items:center;gap:12px;padding:6px 10px 20px;margin:0 0 10px;border-bottom:1px solid rgba(255,215,140,.14)}
.brand img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.24))}
.brand div{display:grid;gap:5px}
.brand div span{font-size:29px;font-weight:800;color:#ffd76b;letter-spacing:0}
.brand small{font-size:12px;color:#d9b7ae;letter-spacing:2px}
nav{display:grid;gap:7px;align-content:start;padding:2px 0 14px;flex:1;overflow-y:auto}
.nav-group{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#e8bd8d;font-size:14px;font-weight:700;letter-spacing:1px;padding:18px 10px 8px;margin-top:10px;border-top:1px solid rgba(255,255,255,.08);cursor:pointer;user-select:none;border-radius:10px}
.nav-group:first-child{margin-top:0;border-top:0}
.nav-group:before{content:'';width:3px;height:14px;border-radius:3px;background:linear-gradient(180deg,#f3bb41,#b9822b);flex:none}
.nav-group:after{content:'▾';color:#e8bd8d;font-size:10px;transition:transform .18s ease}
.nav-group:hover{background:rgba(0,0,0,.16);color:#ffe0a0}
.nav-group.collapsed:after{transform:rotate(-90deg)}
nav button{position:relative;display:flex;align-items:center;gap:10px;min-height:50px;padding:12px 14px;margin:0 2px;border:1px solid rgba(255,255,255,.06);border-radius:13px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.12));color:#d9c6c8;font-size:17px;font-weight:600;text-align:left;line-height:1.25;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:all .16s ease}
nav button:before{content:'◆';font-size:8px;color:#d9a34a;flex:none;opacity:.85}
nav button:after{content:'›';position:absolute;right:12px;font-size:16px;color:#d9a34a;opacity:.5;transition:transform .16s ease}
nav button:hover{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));color:#ffe8c0;border-color:rgba(255,215,140,.18);transform:translateX(1px)}
nav button.active{background:linear-gradient(135deg,#8a2c3c 0%,#6e1f2c 58%,#5a1824 100%);border-color:rgba(255,215,140,.38);color:#ffe28a;font-weight:700;box-shadow:inset 4px 0 0 #f3bb41,inset 0 1px 0 rgba(255,255,255,.08),0 6px 16px rgba(0,0,0,.22);transform:translateX(2px)}
nav button.active:before{color:#ffd76b}
nav button.active:after{color:#ffd76b;opacity:1;transform:translateX(1px)}
.sidebar-foot{margin-top:auto;padding:13px 14px;border:1px solid rgba(255,215,140,.16);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.14));color:#f0d6b0;font-size:16px;font-weight:600;display:flex;flex-direction:column;gap:3px;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
main{margin-left:264px}
@media(max-width:1200px){.sidebar{width:232px}.brand img{width:56px;height:56px}.brand div span{font-size:25px}nav button{font-size:16px;min-height:48px}main{margin-left:232px}}
@media(max-width:900px){.sidebar{width:82px;padding:22px 8px}.brand{justify-content:center;padding:0 5px 18px}.brand img{width:54px;height:54px}.brand div,.nav-group{display:none}nav button{font-size:0;min-height:0;padding:14px 8px;margin:0}nav button:before{content:'•';font-size:22px}nav button:after{display:none}main{margin-left:82px}}
.sidebar-foot{position:relative;display:flex;align-items:center;gap:10px;padding-left:44px}
.sidebar-foot::before{content:'';position:absolute;left:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:1px solid rgba(255,215,140,.55);border-radius:50%;background-color:rgba(255,255,255,.08);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,.92)' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M5 21c0-3.9 3.1-7 7-7s7 3.1 7 7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:15px 15px}
.ai-workbench-page > main > header{display:none!important}
.ai-workbench-page main{padding-top:16px}
.ai-workbench-page main{padding-top:12px;padding-bottom:12px}
.ai-workbench{display:flex;flex-direction:column;height:calc(100vh - 24px);min-height:620px;grid-template-rows:none}
.ai-workbench-title{flex:none;display:grid;place-items:center;min-height:54px;padding:0 18px;border-radius:14px 14px 0 0;background:linear-gradient(180deg,#651421,#4d1119);color:#ffe28a;box-shadow:inset 0 1px 0 rgba(255,215,140,.18)}
.ai-workbench-title h1{margin:0;font-size:27px;font-weight:800;letter-spacing:0}
.ai-console-bar{grid-template-columns:auto minmax(0,1fr) auto auto;padding:8px 10px;gap:8px}
.ai-console-brand b{font-size:14px}
.ai-console-brand span{display:none}
.ai-console-bar input{padding:8px 11px;border-radius:9px}
.ai-console-bar button{padding:8px 11px}
.ai-console-status:empty{display:none}
.ai-console-status{min-height:0;padding:0 10px 0}
.ai-console-task{margin:6px 0 0;padding:4px 8px;font-size:11px}
.ai-workbench-toolbar{padding:7px 10px}
.ai-workbench-tabs{min-height:40px;padding:0 10px}
.ai-workbench-body{flex:1;min-height:0;display:grid;grid-template-columns:220px minmax(0,1fr)}
.ai-capability-panel{padding:12px;gap:9px}
.ai-capability-item{padding:12px 13px;border-radius:12px}
.ai-capability-item b{font-size:17px}
.ai-workbench-controlbar{padding:7px 10px}
.ai-control-actions button{padding:6px 9px;font-size:12px}
.ai-control-status{font-size:12px}
.ai-new-tab-menu{top:36px;left:10px}
.nav-group{font-size:15px;font-weight:800;color:#f2c888;padding:17px 10px 7px;letter-spacing:1.2px;border-top:1px solid rgba(255,215,140,.13)}
.nav-group:before{width:4px;height:17px}
nav button{margin-left:8px;padding:10px 12px;font-size:15px;border-radius:11px;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.07);color:#ddc5c9}
nav button:hover{background:rgba(255,255,255,.10);color:#ffe8c0}
nav button.active{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;font-weight:800;box-shadow:inset 4px 0 0 #f3bb41,0 5px 14px rgba(0,0,0,.20)}
@media(max-width:900px){.ai-workbench{height:calc(100vh - 100px)}.ai-workbench-title h1{font-size:22px}.ai-workbench-body{grid-template-columns:1fr}.ai-console-brand span{display:none}}
.ai-workbench{height:calc(100vh - 190px);min-height:560px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid #e1d5c7;border-radius:16px;background:#f5f2ed;box-shadow:0 8px 28px rgba(53,27,23,.10)}
.ai-workbench-toolbar{display:flex;align-items:center;gap:9px;padding:10px 12px;background:linear-gradient(180deg,#fff,#fdfaf5);border-bottom:1px solid #e4d7c7;overflow-x:auto}
.ai-tool-button{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #e6ddd1;border-radius:10px;background:#fff;color:#3d2d2b;font-weight:600;white-space:nowrap;cursor:pointer}
.ai-tool-button:hover{border-color:#d6a75e;background:#fffaf0}
.ai-tool-button img{width:22px;height:22px;object-fit:contain}
.ai-tool-group{display:inline-flex;align-items:center;gap:7px;flex:none}
.ai-tool-group>span{color:#9a6b16;font-size:12px;font-weight:700;margin-right:2px;white-space:nowrap}
.ai-tool-divider{color:#d2c0ad;font-size:18px;padding:0 4px;white-space:nowrap}
.ai-workbench-tabs{position:relative;display:flex;align-items:flex-end;gap:5px;min-height:44px;padding:0 12px;background:#f5f2ed;border-bottom:1px solid #d8c9b9;overflow-x:auto}
.ai-workbench-tab{position:relative;display:inline-flex;align-items:center;gap:8px;max-width:220px;padding:8px 10px;border:1px solid transparent;border-bottom:0;border-radius:10px 10px 0 0;background:transparent;color:#7b6b65;cursor:pointer;white-space:nowrap;font-weight:600}
.ai-workbench-tab span{overflow:hidden;text-overflow:ellipsis}
.ai-workbench-tab.active{background:#fff;border-color:#e3d7c9;color:#53151c;box-shadow:0 -2px 8px rgba(70,34,26,.08)}
.ai-workbench-tab.pinned span{color:#9a6b16}
.ai-tab-pin,.ai-tab-close{font-style:normal;color:#a7988d;font-size:12px;line-height:1}
.ai-tab-pin:hover,.ai-tab-close:hover{color:#b42318}
.ai-workbench-new{flex:none;width:32px;height:30px;border:0;background:transparent;color:#7b6b65;font-size:22px;font-weight:700;cursor:pointer;border-radius:8px}
.ai-workbench-new:hover{background:#fff;color:#53151c}
.ai-new-tab-menu{position:absolute;z-index:20;top:38px;left:12px;display:flex;gap:8px;padding:10px;border:1px solid #e1d5c7;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(53,27,23,.14)}
.ai-new-tab-menu[hidden]{display:none!important}
.ai-new-tab-menu button{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #e6ddd1;border-radius:9px;background:#fff;color:#3d2d2b;font-weight:600;white-space:nowrap;cursor:pointer}
.ai-new-tab-menu button:hover{border-color:#d6a75e;background:#fffaf0}
.ai-new-tab-menu img{width:20px;height:20px;object-fit:contain}
.ai-workbench-body{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:0;flex:1}
.ai-capability-panel{display:grid;align-content:start;gap:8px;padding:14px;background:linear-gradient(180deg,#2b1c1e,#1d1518);border-right:1px solid #e1d5c7}
.ai-capability-item{display:grid;gap:4px;padding:12px 13px;border:1px solid rgba(255,215,140,.12);border-radius:12px;background:rgba(255,255,255,.04);color:#d9c6c8;text-align:left;cursor:pointer}
.ai-capability-item b{font-size:16px}
.ai-capability-item small{font-size:12px;color:#c3adaf}
.ai-capability-item em{font-style:normal;font-size:11px;color:#e2b969}
.ai-capability-item.active{background:linear-gradient(135deg,#8a2c3c 0%,#6e1f2c 58%,#5a1824 100%);border-color:rgba(255,215,140,.38);color:#ffe28a;box-shadow:inset 4px 0 0 #f3bb41}
.ai-capability-item.active small{color:#f0d6b0}
.ai-workbench-stage{min-width:0;min-height:0;overflow:hidden;background:#fff}
.ai-workbench-frames{position:relative;width:100%;height:100%;background:#fff}
.ai-workbench-frame{position:absolute;inset:0}
.ai-workbench-frame[hidden]{display:none!important}
.ai-workbench-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff}
.ai-workbench-empty{display:grid;place-items:center;align-content:center;gap:8px;height:100%;padding:30px;color:#8b786c;text-align:center}
.ai-workbench-empty b{font-size:18px;color:#53151c}
.ai-workbench-empty span{font-size:13px;max-width:420px;line-height:1.6}
.ai-workbench-controlbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border-top:1px solid #e1d5c7;background:#fdfaf5}
.ai-control-status{display:flex;align-items:center;gap:18px;color:#7a6762;font-size:13px}
.ai-control-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ai-control-actions button{padding:7px 10px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-weight:600}
.ai-control-actions button.active{border-color:#8b3440;background:#7c2d38;color:#fff}
.ai-control-actions button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ai-console-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(180deg,#fff,#fdfaf5);border-bottom:1px solid #e4d7c7}
.ai-console-brand{display:grid;gap:2px;white-space:nowrap}
.ai-console-brand b{font-size:16px;color:#53151c}
.ai-console-brand span{font-size:11px;color:#8b786c}
.ai-console-bar input{width:100%;min-width:0;padding:10px 12px;border:1px solid #dfd1c2;border-radius:10px;background:#fff;color:#342b2d;font:inherit}
.ai-console-bar button{padding:9px 13px;border:1px solid #d8c5aa;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-weight:700}
.ai-console-bar button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ai-console-status{display:flex;gap:8px;min-height:30px;padding:7px 12px;background:#faf5ee;border-bottom:1px solid #eadfd0;overflow-x:auto}
.ai-console-task{display:inline-flex;align-items:center;gap:8px;flex:none;padding:5px 9px;border:1px solid #eadfd0;border-radius:999px;background:#fff;color:#5e4c49;font-size:12px}
.ai-console-task b{color:#9a6b16}
.ai-console-task em{font-style:normal;color:#7a6762}
.ai-console-task.empty{border:0;background:transparent;color:#a4978d}
@media(max-width:1050px){.ai-workbench-body{grid-template-columns:170px minmax(0,1fr)}.ai-capability-item{padding:10px}}
@media(max-width:760px){.ai-workbench{height:calc(100vh - 130px)}.ai-console-bar{grid-template-columns:1fr auto auto}.ai-console-brand{grid-column:1/-1}.ai-workbench-body{grid-template-columns:1fr}.ai-capability-panel{display:flex;flex-wrap:wrap;border-right:0;border-bottom:1px solid #e1d5c7;padding:9px}.ai-capability-item{flex:1;min-width:130px}.ai-workbench-controlbar{align-items:flex-start;flex-direction:column}}
.ai-workbench-page main{padding-top:8px;padding-bottom:8px}
.ai-workbench{display:flex;flex-direction:column;height:calc(100vh - 16px);min-height:600px;grid-template-rows:none}
.ai-workbench-body{flex:1;min-height:0;display:grid;grid-template-columns:220px minmax(0,1fr)}
.ai-workbench-stage{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:#fff}
.ai-workbench-frames{flex:1;min-height:0;position:relative;width:100%;height:auto}
.ai-workbench-toolbar,.ai-workbench-tabs,.ai-workbench-controlbar{flex:none}
.ai-console-status{min-height:0;padding:0 10px 0}
.ai-console-status:empty{display:none}
.ai-console-idle{display:block;padding:6px 0;color:#a4978d;font-size:11px}
.ai-capability-group-title{margin-top:8px;color:#e2b969;font-size:12px;font-weight:800;letter-spacing:1px}
.ai-capability-group-title:first-child{margin-top:0}
.ai-internal-page{height:100%;max-height:100%;min-height:0;background:#fff;overflow-x:hidden;overflow-y:scroll;scrollbar-gutter:stable}
.ai-standalone-shell{position:relative;height:calc(100vh - 16px);min-height:620px;background:#fff}
.ai-standalone-shell .ai-workbench-frame{position:absolute;inset:0}
.ai-standalone-shell .ai-internal-page{height:100%;max-height:100%;overflow-y:auto}
.ai-internal-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid #eee2d4}
.ai-internal-head h2{margin:0;font-size:18px;color:#53151c}
.ai-internal-head span{color:#8b786c;font-size:12px}
.ai-internal-table{font-size:12px}
.ai-internal-soon{display:grid;place-items:center;align-content:center;gap:8px;min-height:300px;color:#8b786c;text-align:center}
.ai-internal-soon b{font-size:20px;color:#53151c}
.ai-workbench-body{grid-template-columns:168px minmax(0,1fr)}
.ai-capability-panel{padding:8px;gap:6px}
.ai-capability-group-title{font-size:11px;margin:4px 0 2px;color:#e2b969}
.ai-capability-item{padding:8px 9px;border-radius:10px}
.ai-capability-item b{font-size:14px}
.ai-capability-item small{font-size:11px}
.ai-prompt-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px 14px}
.ai-prompt-stats div{padding:8px 10px;border:1px solid #eadfd0;border-radius:10px;background:#fff}
.ai-prompt-stats span{display:block;color:#8b786c;font-size:11px}
.ai-prompt-stats b{font-size:20px;color:#53151c}
.ai-prompt-form-panel{margin:0 14px 14px}
.ai-prompt-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ai-prompt-form label{display:grid;gap:5px;color:#5f4e4c;font-size:13px}
.ai-prompt-form input,.ai-prompt-form select,.ai-prompt-form textarea{width:100%;box-sizing:border-box;padding:8px 9px;border:1px solid #dfd1c2;border-radius:8px;font:inherit;background:#fff}
.ai-prompt-form textarea{resize:vertical}
.ai-prompt-form .wide{grid-column:1/-1}
.ai-prompt-table th,.ai-prompt-table td{padding:9px 10px}
.ai-prompt-dialog{width:min(720px,94vw)}
.ai-prompt-detail{white-space:pre-wrap;word-break:break-word;max-height:45vh;overflow:auto;background:#fffdf8;border:1px solid #eadfd0;border-radius:10px;padding:12px;font-family:inherit;font-size:13px;line-height:1.6}
.base-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px}
.base-dialog-actions button{padding:8px 12px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-weight:600}
.base-dialog-actions button:hover{border-color:#c9a24b;background:#fffaf0}
@media(max-width:1050px){.ai-prompt-form{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ai-prompt-form{grid-template-columns:1fr}.ai-prompt-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sidebar{width:210px;padding:14px 10px 12px}
main{width:calc(100% - 210px);margin-left:210px}
.brand{padding:4px 6px 14px;margin:0 0 8px;gap:8px}
.brand img{width:44px;height:44px}
.brand div span{font-size:22px}
.brand small{font-size:11px;letter-spacing:1px}
.nav-group{font-size:14px;font-weight:800;color:#f2c888;padding:13px 8px 5px;margin-top:8px;letter-spacing:.8px;border-top:1px solid rgba(255,215,140,.13)}
.nav-group:before{width:3px;height:12px}
nav button{min-height:36px;margin:0 0 3px 8px;padding:8px 9px;font-size:14px;font-weight:600;border-radius:9px;background:rgba(0,0,0,.18);color:#dcc4c8;border-color:rgba(255,255,255,.05)}
nav button:hover{background:rgba(255,255,255,.10);color:#ffe8c0}
nav button.active{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;font-weight:800;border-color:rgba(255,215,140,.38);box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.18)}
.ai-workbench-body{grid-template-columns:124px minmax(0,1fr)}
.ai-capability-panel{padding:6px;gap:5px}
.ai-capability-group-title{font-size:10px;margin:3px 2px;padding:0}
.ai-capability-item{padding:7px 8px;border-radius:9px;background:rgba(0,0,0,.20);border-color:rgba(255,255,255,.06);color:#dcc4c8}
.ai-capability-item b{font-size:13px}
.ai-capability-item small{font-size:10px}
.ai-capability-item.active{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;border-color:rgba(255,215,140,.38);box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.18)}
.ai-capability-item.active small{color:#f0d6b0}
@media(max-width:1200px){.sidebar{width:210px;padding:14px 10px 12px}main{width:calc(100% - 210px);margin-left:210px}}
@media(max-width:900px){.sidebar{width:82px;padding:22px 8px}.brand{justify-content:center;padding:0 5px 18px}.brand img{width:54px;height:54px}.brand div,.nav-group{display:none}nav button{font-size:0;min-height:0;padding:14px 8px;margin:0}nav button:before{content:'•';font-size:22px}nav button:after{display:none}main{width:calc(100% - 82px);margin-left:82px}.ai-workbench-body{grid-template-columns:1fr}}
.sidebar-nav{display:flex;flex:1;min-height:0;gap:6px;margin-top:10px;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}
.sidebar-nav::-webkit-scrollbar{width:0;height:0;display:none}
.nav-primary{width:118px;flex:none;display:flex;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;padding:0 2px;scrollbar-width:none}
.nav-secondary{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;overflow-x:hidden;overflow-y:auto;padding:0 2px 12px;scrollbar-width:none}
.nav-primary::-webkit-scrollbar,.nav-secondary::-webkit-scrollbar{width:0;height:0;display:none}
.nav-primary button{display:block;width:100%;min-height:44px;padding:9px 8px;margin:0;border:1px solid rgba(255,215,140,.08);border-radius:11px;background:rgba(255,255,255,.04);color:#e8cfa8;font-size:14px;font-weight:800;line-height:1.2;text-align:center;cursor:pointer}
.nav-primary button:hover{background:rgba(255,255,255,.10);color:#ffe8c0}
.nav-primary button.selected{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;border-color:rgba(255,215,140,.38);box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.18)}
.nav-secondary button{display:block;width:100%;min-height:32px;padding:7px 8px;margin:0;border:1px solid rgba(255,255,255,.05);border-radius:8px;background:rgba(0,0,0,.18);color:#dcc4c8;font-size:12px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer}
.nav-secondary button:hover{background:rgba(255,255,255,.10);color:#ffe8c0}
.nav-secondary button.active{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;font-weight:800;border-color:rgba(255,215,140,.38);box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.18)}
button.nav-secondary-hidden{display:none!important}
.sidebar-foot{margin-top:auto}
@media(max-width:1200px){.sidebar{width:210px;padding:12px 8px}.nav-primary{width:104px}.nav-secondary{width:auto}}
@media(max-width:900px){.sidebar{width:82px;padding:18px 6px}.sidebar-nav{display:none}}
.ai-workbench-body{grid-template-columns:124px minmax(0,1fr)}
.sidebar{width:282px;padding:14px 10px 12px}
main{width:calc(100% - 282px);margin-left:282px}
.sidebar-nav{gap:8px;margin-top:10px}
.nav-primary{width:134px;gap:7px;padding:0 1px}
.nav-primary button{min-height:46px;padding:10px 8px;font-size:13.5px;letter-spacing:.1px;border-radius:12px;white-space:nowrap;text-align:left}
.nav-primary button::before{content:none}
.nav-primary button.selected{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;border-color:rgba(255,215,140,.42);box-shadow:inset 3px 0 0 #f3bb41,0 5px 12px rgba(0,0,0,.20)}
.nav-secondary{flex:0 0 120px;gap:6px;padding:10px 8px 14px;background:rgba(0,0,0,.14);border:1px solid rgba(255,215,140,.08);border-radius:12px}
.nav-secondary button{min-height:34px;padding:8px 9px;font-size:12.5px;border-radius:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-secondary button.active{background:linear-gradient(135deg,#8a2c3c,#5a1824);color:#ffe28a;font-weight:800;border-color:rgba(255,215,140,.42);box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.18)}
@media(max-width:1200px){.sidebar{width:268px;padding:12px 8px}main{width:calc(100% - 268px);margin-left:268px}.nav-primary{width:126px}.nav-secondary{flex-basis:116px}#nav-collapse-toggle{left:268px}}
#nav-collapse-toggle{position:fixed;left:282px;top:14px;z-index:120;width:28px;height:28px;padding:0;border:1px solid rgba(255,215,140,.45);border-radius:0 10px 10px 0;background:linear-gradient(135deg,#7e1c2a,#5a1824);color:#ffe28a;font-size:13px;line-height:1;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.22)}
#nav-collapse-toggle:hover{background:#8a2c3c;color:#fff0bd}
.sidebar{transition:transform .22s ease}
main{transition:margin-left .22s ease,width .22s ease}
body.nav-collapsed .sidebar{transform:translateX(-100%)}
body.nav-collapsed main{width:100%;margin-left:0}
body.nav-collapsed #nav-collapse-toggle{left:0;border-radius:0 10px 10px 0}
@media(max-width:900px){#nav-collapse-toggle{display:none}}

/* 客户建档 */
.ca-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 12px}
.ca-head h2{margin:0;color:#4b2025;font-size:19px}
.ca-head span{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.ca-stats{margin-bottom:10px}
.ca-tabs{display:flex;gap:8px;margin-bottom:10px}
.ca-tabs button{padding:8px 18px;border:1px solid #e5d9c8;border-radius:10px;background:#fff;color:#5b4948;font-weight:600;cursor:pointer}
.ca-tabs button.active{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ca-tabs button b{font-weight:700;margin-left:4px}
.ca-toolbar{margin-bottom:12px}
.ca-toolbar input{width:100%;max-width:420px;box-sizing:border-box;padding:9px 12px;border:1px solid #e0d3c2;border-radius:10px;font:inherit}
.ca-list{display:flex;flex-direction:column;gap:10px}
.ca-card{border:1px solid #eadfd1;border-radius:12px;background:#fff;overflow:hidden}
.ca-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px}
.ca-card-title{display:flex;align-items:center;gap:8px;min-width:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit}
.ca-card-title b{color:#4b2025;font-size:15px}
.ca-card-title em{font-style:normal;color:var(--muted);font-size:12px;margin-left:8px}
.ca-expand{color:#7e1c2a;font-size:13px}
.ca-actions{display:flex;gap:6px;flex-shrink:0}
.ca-actions button{padding:5px 10px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.ca-client-shell{display:grid;gap:8px;min-width:0;color:#3f3431}
.ca-client-top{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:8px 12px;border:1px solid #e4e7eb;border-radius:8px;background:#fff}
.ca-client-title{min-width:0}
.ca-client-title h2{display:inline;margin:0;color:#4b2025;font-size:18px}
.ca-client-title span{margin-left:9px;color:#9a8d84;font-size:11px}
.ca-client-top-actions{display:flex;gap:6px;flex:none}
.ca-client-top-actions button{padding:6px 11px;border:1px solid #d9cbbb;border-radius:7px;background:#fff;color:#5b4948;font:inherit;font-size:11px;font-weight:700;cursor:pointer}
.ca-client-command{display:flex;align-items:center;gap:7px;min-width:0}
.ca-client-command>input{flex:1 1 340px;min-width:180px;box-sizing:border-box;padding:8px 11px;border:1px solid #e0d3c2;border-radius:7px;background:#fff;color:#3f3431;font:inherit;font-size:12px}
.ca-client-segments{display:flex;gap:3px;flex:none;padding:2px;border:1px solid #e5d9cc;border-radius:7px;background:#f7f2eb}
.ca-client-segments button{padding:6px 10px;border:0;border-radius:5px;background:transparent;color:#7d6d64;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.ca-client-segments button.active{background:#fff;color:#6f202a;font-weight:750;box-shadow:0 1px 3px rgba(60,35,24,.08)}
.ca-client-staff{flex:none;min-width:112px;padding:7px 9px;border:1px solid #e0d3c2;border-radius:7px;background:#fff;color:#5b4948;font:inherit;font-size:11px}
.ca-client-filter{position:relative;flex:none}
.ca-client-filter>summary{list-style:none;padding:7px 10px;border:1px solid #e0d3c2;border-radius:7px;background:#fff;color:#5b4948;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap}
.ca-client-filter>summary::-webkit-details-marker{display:none}
.ca-client-filter[open]>summary{border-color:#b98a78;color:#762b33}
.ca-client-filter-panel{position:absolute;z-index:20;right:0;top:calc(100% + 6px);width:310px;padding:10px;border:1px solid #e2d4c6;border-radius:8px;background:#fffdfa;box-shadow:0 14px 30px rgba(55,33,24,.16)}
.ca-client-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.ca-client-filter-row label{display:grid;gap:4px;color:#8a786e;font-size:10px}
.ca-client-filter-row input{box-sizing:border-box;width:100%;padding:6px 7px;border:1px solid #e1d3c5;border-radius:6px;font:inherit;font-size:11px}
.ca-client-filter-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.ca-client-filter-actions button{padding:5px 8px;border:1px solid #e2d4c6;border-radius:6px;background:#fff;color:#67564e;font:inherit;font-size:10px;cursor:pointer}
.ca-client-filter-actions button.active{border-color:#a65d5f;background:#fff0ed;color:#7d2933;font-weight:700}
.ca-chat-workspace{display:grid;grid-template-columns:minmax(290px,320px) minmax(0,1fr);height:calc(100vh - 238px);min-height:560px;max-height:850px;overflow:hidden;border:1px solid #e3d8cc;border-radius:8px;background:#fff;box-shadow:0 5px 18px rgba(71,38,29,.05)}
.ca-chat-client-list{display:flex;flex-direction:column;gap:6px;min-width:0;overflow:auto;padding:7px;border-right:1px solid #eee3d7;background:#f8f5f1;scrollbar-width:thin}
.ca-chat-contact{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:8px;width:100%;min-width:0;box-sizing:border-box;padding:9px 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:#4b2025;text-align:left;font:inherit;cursor:pointer}
.ca-chat-contact:hover{border-color:#e2d5c8;background:#fff}
.ca-chat-contact.active{border-color:#e4c9c1;background:#fff7f4;box-shadow:inset 2px 0 0 #9c3a42}
.ca-chat-contact-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:#e7efe9;color:#31654e;font-size:13px;font-weight:800}
.ca-chat-contact.active .ca-chat-contact-avatar{background:#8d3038;color:#fff}
.ca-chat-contact-copy{display:grid;gap:3px;min-width:0}
.ca-chat-contact-main{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.ca-chat-contact-main b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.ca-chat-contact-main em{flex:none;color:#9a8d84;font-size:10px;font-style:normal}
.ca-chat-contact-meta,.ca-chat-contact-preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8f7d73;font-size:10.5px}
.ca-chat-contact-preview{color:#62514a}
.ca-chat-client-chat{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:#fcfaf6}
.ca-chat-client-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:12px 14px;border-bottom:1px solid #eee3d7;background:#fff}
.ca-chat-client-head>div:first-child{min-width:0}
.ca-chat-client-head b,.ca-chat-client-head span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ca-chat-client-head b{color:#4b2025;font-size:15px}
.ca-chat-client-head span{margin-top:3px;color:#9a8d84;font-size:10.5px}
.ca-chat-client-actions{display:flex;gap:6px;flex:none}
.ca-chat-client-actions button{padding:6px 9px;border:1px solid #d9c7b4;border-radius:7px;background:#fff;color:#5b4948;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.ca-chat-client-actions button:hover{border-color:#9c3a42;color:#8f2633}
.ca-chat-client-status{flex:none;max-height:230px;overflow:auto;border-bottom:1px solid #f0e8df;background:#fcfaf7}
.ca-chat-client-status>summary{padding:6px 14px;color:#8f7d73;font-size:10px;font-weight:700;cursor:pointer}
.ca-chat-client-status .ca-auto-status{margin:0;border:0;border-radius:0;background:transparent}
.ca-chat-client-body{display:flex;flex:1;min-height:0;overflow:hidden}
.ca-chat-client-body>.cc-chat{flex:1;height:auto;max-height:none;min-height:0;margin:0;border:0;border-radius:0;padding:14px 15px;overflow:auto;font-size:13.5px;line-height:1.72;background:#fcfaf6}
.ca-chat-client-body>.ca-chat-status{align-items:center;justify-content:center;flex:1}
.ca-chat-client-empty{display:grid;place-items:center;align-content:center;gap:6px;min-height:220px;padding:24px;color:#8b7c72;text-align:center}
.ca-chat-client-empty b{color:#4b2025;font-size:15px}
.ca-chat-client-empty span{font-size:12px;line-height:1.6}
@media(max-width:900px){.ca-client-top{align-items:flex-start}.ca-client-title span{display:block;margin:4px 0 0}.ca-client-command{flex-wrap:wrap}.ca-client-command>input{flex:1 1 100%}.ca-client-segments{flex:1}.ca-client-filter-panel{position:fixed;left:12px;right:12px;width:auto}.ca-chat-workspace{grid-template-columns:1fr;grid-template-rows:270px minmax(440px,1fr);height:auto;min-height:720px;max-height:none}.ca-chat-client-list{max-height:270px;border-right:0;border-bottom:1px solid #eee3d7}.ca-chat-client-head{align-items:flex-start;flex-direction:column}.ca-chat-client-actions{width:100%}.ca-chat-client-actions button{flex:1}}
.ca-chat{margin:0;padding:12px 14px;max-height:420px;overflow:auto;border-top:1px solid #f0e7da;background:#fdfaf5;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-family:inherit}
.ca-chat-status{display:flex;align-items:center;gap:8px;color:#7d6a60;font-size:12px}
.ca-chat-status.is-error{color:#a23828}
.ca-chat-status button{margin-left:auto;border:1px solid #ead7c5;border-radius:6px;background:#fff;color:#6d3a29;padding:4px 10px;cursor:pointer}
.ca-preview{margin:0 14px 12px;color:#9a8d84;font-size:12px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ca-empty{padding:34px 18px;text-align:center;color:#9a8d84;border:1px dashed #e0d3c2;border-radius:12px;background:#fdfaf5;line-height:1.8}

/* 每日内容 */
.dc-datebar{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.dc-datebar button{padding:7px 14px;border:1px solid #e5d9c8;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px}
.dc-datebar input[type=date]{padding:7px 10px;border:1px solid #dfd1c2;border-radius:9px;font:inherit}
.dc-today-label{color:#7e1c2a;font-size:12px;font-weight:700}
.dc-page{padding:0 14px 18px}

/* 每日内容 v2 */
.dc-page{padding:0 14px 18px;max-width:1180px;margin:0 auto}
.dc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 14px}
.dc-head h2{margin:0;color:#4b2025;font-size:19px}
.dc-head span{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.dc-head button{padding:8px 16px;border:1px solid #d8c5aa;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px}
.dc-section{background:#fff;border:1px solid #eadfd1;border-radius:14px;overflow:hidden;margin-bottom:14px;box-shadow:0 2px 10px rgba(73,42,30,.05)}
.dc-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid #f0e7da;background:linear-gradient(180deg,#fdfaf5,#faf5ec)}
.dc-section-title{display:flex;align-items:center;gap:9px;min-width:0}
.dc-section-title .dc-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#7e1c2a;color:#ffe28a;font-weight:800;font-size:13px;flex:none}
.dc-section-title b{color:#4b2025;font-size:15px;white-space:nowrap}
.dc-section-title em{color:var(--muted);font-size:12px;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dc-section-actions{display:flex;gap:8px;flex:none}
.dc-section-actions button{padding:7px 14px;border:1px solid #d8c5aa;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px;font-weight:600}
.dc-section-actions button.primary{background:#7e1c2a;border-color:#7e1c2a;color:#fff}
.dc-section-body{padding:14px 16px}

/* 腾讯公益答案卡片 */
/* 公益答案：压缩成一行 */
.dc-welfare-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid #eadfd1;border-radius:12px;background:#fdfaf5}
.dc-welfare-row .dc-welfare-date{color:#8b786c;font-size:12px;flex:none}
.dc-welfare-row .dc-welfare-q{margin:0;color:#3d2e2c;font-size:13px;font-weight:600;min-width:0;flex:1 1 200px}
.dc-welfare-row .dc-welfare-answer{margin:0;color:#16845b;font-size:14px;font-weight:800;flex:none}
.dc-welfare-row .dc-welfare-actions{display:flex;gap:8px;flex:none}
.dc-welfare-card{border:1px solid #eadfd1;border-radius:12px;background:#fdfaf5;overflow:hidden}
.dc-welfare-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #f0e7da;color:#8b786c;font-size:12px}
.dc-welfare-badge{padding:3px 10px;border-radius:20px;background:#7e1c2a;color:#ffe28a;font-size:12px;font-weight:700}
.dc-welfare-q{margin:14px 16px 12px;font-size:15px;color:#3d2e2c;font-weight:600;line-height:1.6}
.dc-welfare-options{display:grid;gap:8px;padding:0 16px}
.dc-option{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #e5d9c8;border-radius:9px;background:#fff;color:#5b4948;font-size:13px}
.dc-option i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f1e8da;color:#7b6b65;font-style:normal;font-weight:700;font-size:12px;flex:none}
.dc-option.correct{border-color:#16845b;background:#eef8f3}
.dc-option.correct i{background:#16845b;color:#fff}
.dc-option.correct em{margin-left:auto;color:#16845b;font-style:normal;font-weight:800}
.dc-welfare-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px 14px;flex-wrap:wrap}
.dc-welfare-answer{color:#16845b;font-weight:700;font-size:14px}
.dc-welfare-actions{display:flex;gap:8px}
.dc-welfare-actions button{padding:6px 12px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.dc-welfare-actions .danger-link{border-color:#efc2bd;background:#fff7f6;color:#b42318}
.dc-welfare-note{margin:0 16px 14px;color:#8b786c;font-size:12px;line-height:1.6}
.dc-welfare-history{margin:14px 16px 16px;font-size:13px}
.dc-welfare-history summary{cursor:pointer;color:#8b786c;font-size:12px;margin-bottom:6px}
.dc-welfare-history-row{display:flex;justify-content:space-between;gap:10px;padding:7px 2px;border-bottom:1px dashed #eadfd1;font-size:13px}
.dc-welfare-history-row b{color:#3d2e2c;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dc-welfare-history-row span{color:#16845b;flex:none}

/* 朋友圈工作台 */
.dc-moment-workbench{padding:14px 16px 16px}
.dc-moment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.dc-moment-date-switch{display:flex;align-items:center;gap:6px}
.dc-moment-date-switch button{height:32px;padding:0 11px;border:1px solid #dfd1c2;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px}
.dc-moment-date-switch button:first-child,.dc-moment-date-switch button:nth-child(3){width:32px;padding:0;font-size:20px;line-height:1}
.dc-moment-date-switch input{height:32px;padding:0 9px;border:1px solid #dfd1c2;border-radius:8px;background:#fff;color:#3d2e2c;font:inherit;font-size:13px}
.dc-moment-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#7b6b65;font-size:12px}
.dc-moment-stats span{padding:5px 10px;border-radius:999px;background:#f7f1e8}
.dc-moment-stats b{margin-left:2px;color:#3d2e2c;font-size:13px}
.dc-moment-stats .used{background:#edf8f1;color:#1f7a52}
.dc-moment-stats .draft{background:#fff4e8;color:#b15c16}
.dc-moment-list{display:grid;gap:12px}
.dc-moment-card{border:1px solid #eadfd1;border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(73,42,30,.045);padding:14px;display:grid;gap:11px;overflow:hidden}
.dc-moment-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.dc-moment-card-head>div{display:grid;gap:3px;min-width:0}
.dc-moment-card-head b{color:#4b2025;font-size:14px}
.dc-moment-card-head span{color:#9a8d84;font-size:11px}
.dc-moment-status{flex:none;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:700}
.dc-moment-status.used{background:#e9f7ef;color:#137a4d}
.dc-moment-status.draft{background:#fff1e2;color:#a95413}
.dc-moment-text{margin:0;color:#3d2e2c;font-size:13px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}
.dc-moment-note{margin:0;padding:7px 9px;border-radius:8px;background:#faf6ef;color:#7b6b65;font-size:12px;line-height:1.55}
.dc-moment-images{display:grid;gap:4px;max-width:720px;overflow:hidden;border-radius:9px;background:#f1e8da}
.dc-images-1{grid-template-columns:1fr;max-width:470px}
.dc-images-1 .dc-moment-image{aspect-ratio:4/3}
.dc-images-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:470px}
.dc-images-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:560px}
.dc-images-4{grid-template-columns:repeat(2,minmax(0,1fr));max-width:470px}
.dc-images-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:560px}
.dc-moment-image{position:relative;display:block;width:100%;aspect-ratio:1/1;padding:0;border:0;background:#eee2d3;cursor:zoom-in;overflow:hidden}
.dc-moment-image img{width:100%;height:100%;object-fit:cover;display:block}
.dc-moment-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid #f1e8dd;flex-wrap:wrap}
.dc-moment-foot>span{color:#9a8d84;font-size:11px}
.dc-moment-actions{display:flex;gap:6px;flex-wrap:wrap}
.dc-moment-actions button{padding:5px 10px;border:1px solid #d8c5aa;border-radius:7px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.dc-moment-actions button:hover{border-color:#b89472;background:#fdfaf5}
.dc-moment-actions .danger-link{border-color:#efc2bd;background:#fff7f6;color:#b42318}
.dc-moment-preview-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:30px;background:rgba(31,20,18,.78);cursor:zoom-out}
.dc-moment-preview-modal img{max-width:min(94vw,1100px);max-height:90vh;object-fit:contain;border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.dc-moment-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(42,27,24,.36)}
.dc-moment-editor{width:min(720px,96vw);max-height:90vh;display:flex;flex-direction:column;border:1px solid #e4d7c7;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(55,32,28,.25);overflow:hidden}
.dc-moment-editor-head,.dc-moment-editor-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}
.dc-moment-editor-head{border-bottom:1px solid #f0e7da;background:linear-gradient(180deg,#fdfaf5,#faf5ec)}
.dc-moment-editor-head>div{display:grid;gap:3px}
.dc-moment-editor-head h3{margin:0;color:#4b2025;font-size:16px}
.dc-moment-editor-head span{color:#8b786c;font-size:12px}
.dc-moment-editor-head button,.dc-moment-editor-foot button{padding:7px 14px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px}
.dc-moment-editor-body{display:grid;gap:13px;padding:16px;overflow:auto}
.dc-moment-editor-body label{display:grid;gap:6px}
.dc-moment-editor-body label>span,.dc-moment-field-label{color:#5f4e4c;font-size:12px;font-weight:700}
.dc-moment-editor textarea,.dc-moment-editor input[type=text],.dc-moment-editor input:not([type]){width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #dfd1c2;border-radius:8px;background:#fff;font:inherit}
.dc-moment-editor textarea{resize:vertical;line-height:1.7}
.dc-moment-dropzone{min-height:116px;padding:12px;border:1px dashed #d9c7ab;border-radius:10px;background:#fdfaf5;cursor:pointer}
.dc-moment-editor-preview{display:flex;gap:8px;flex-wrap:wrap}
.dc-moment-drop-empty{display:grid;place-items:center;min-height:78px;color:#9a8d84;font-size:12px}
.dc-moment-draft-thumb{position:relative;width:92px;height:92px;border:1px solid #e0d3c2;border-radius:9px;overflow:hidden;background:#f1e8da;cursor:grab}
.dc-moment-draft-thumb img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.dc-moment-draft-thumb i{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:rgba(28,19,18,.65);color:#fff;font-style:normal;font-size:12px;cursor:pointer}
.dc-moment-draft-thumb em{position:absolute;left:0;right:0;bottom:0;padding:3px 4px;background:rgba(28,19,18,.48);color:#fff;text-align:center;font-size:10px;font-style:normal}
.dc-moment-upload-hint{margin-top:8px;color:#8b786c;font-size:11px;text-align:center}
.dc-moment-editor-foot{justify-content:flex-end;border-top:1px solid #f0e7da;background:#fdfaf5}
.dc-moment-editor-foot button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}

/* 表单与照片预览 */
.dc-form{margin:0 0 14px}
.dc-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dc-form-grid label{display:grid;gap:5px;color:#5f4e4c;font-size:13px}
.dc-form-grid input,.dc-form-grid select,.dc-form-grid textarea{width:100%;box-sizing:border-box;padding:8px 9px;border:1px solid #dfd1c2;border-radius:8px;font:inherit;background:#fff}
.dc-form-grid .wide{grid-column:1/-1}
.dc-form-grid textarea{resize:vertical}
.dc-form-grid button[type=button]{justify-self:start;padding:7px 14px;border:1px solid #d8c5aa;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:13px}
.dc-moment-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.dc-preview-thumb{position:relative;width:86px;height:86px;border:1px solid #e0d3c2;border-radius:8px;overflow:hidden;background:#f1e8da}
.dc-preview-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.dc-preview-thumb i{position:absolute;top:3px;right:3px;width:18px;height:18px;line-height:16px;text-align:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-style:normal;cursor:pointer;font-size:12px}
.dc-preview-thumb em{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:10px;color:#fff;background:rgba(0,0,0,.45);font-style:normal;padding:2px}
.dc-empty{padding:26px 16px;text-align:center;color:#9a8d84;border:1px dashed #e0d3c2;border-radius:12px;background:#fdfaf5;line-height:1.8;font-size:13px}
@media(max-width:900px){.dc-form-grid{grid-template-columns:1fr 1fr}.dc-moment-toolbar{align-items:stretch}.dc-moment-date-switch,.dc-moment-stats{width:100%;justify-content:flex-start}.dc-moment-card{padding:12px}.dc-images-3,.dc-images-grid{max-width:100%}}


/* ===== 辅助软件 ===== */
.aux-download-box{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(260px,300px);gap:18px;align-items:stretch;background:linear-gradient(135deg,#fdf6e7 0%,#faf1de 100%);border:1px solid #f0d9a8;border-radius:14px;padding:18px 20px}
.aux-info{min-width:0}
.aux-lead{margin:0 0 10px;font-size:14px;line-height:1.7;color:#6b5a3a}
.aux-features{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.aux-features li{position:relative;padding-left:20px;font-size:13px;color:#5d4f33;line-height:1.6}
.aux-features li::before{content:"";position:absolute;left:2px;top:7px;width:8px;height:8px;border-radius:50%;background:#7e1c2a}
.aux-features li b{color:#7e1c2a;font-weight:700}
.aux-actions{flex:none;display:flex;flex-direction:column;align-items:center;gap:10px;min-width:190px}
.aux-btn{display:inline-block;text-align:center;padding:11px 22px;border-radius:10px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s}
.aux-btn.primary{background:linear-gradient(135deg,#8a2c3c 0%,#6e1f2c 100%);color:#ffe28a;box-shadow:0 3px 10px rgba(126,28,42,.25)}
.aux-btn.primary:hover{transform:translateY(-1px);box-shadow:0 5px 16px rgba(126,28,42,.32)}
.aux-hint{font-size:12px;color:#9a8a68}
.aux-upgrade-card{min-width:0;padding-left:18px;border-left:1px solid #e4cfa5;display:flex;flex-direction:column;gap:9px}
.aux-upgrade-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.aux-upgrade-head span,.aux-upgrade-head small{display:block}.aux-upgrade-head span{color:#5c2028;font-size:14px;font-weight:800}.aux-upgrade-head small{margin-top:2px;color:#9a8870;font-size:10px}
.aux-upgrade-badge{flex:none;padding:4px 8px;border-radius:999px;font-style:normal;font-size:10px;font-weight:800;white-space:nowrap}
.aux-upgrade-badge.ok{background:#e4f5e9;color:#18743a}.aux-upgrade-badge.warn{background:#fff0d8;color:#a65d00}.aux-upgrade-badge.neutral{background:#eee9e1;color:#81756a}
.aux-upgrade-latest{display:flex;align-items:flex-end;gap:8px;padding:8px 10px;border-radius:10px;background:#fff8e8;border:1px solid #efdaae}.aux-upgrade-latest span{padding-bottom:3px;color:#8a7250;font-size:10px}.aux-upgrade-latest b{margin-left:auto;color:#7e1c2a;font-size:28px;line-height:1;letter-spacing:0;white-space:nowrap}
.aux-upgrade-counts{color:#725f48;font-size:11px;line-height:1.5}.aux-upgrade-counts b{color:#7e1c2a;font-size:13px}
.aux-upgrade-list{min-height:74px;max-height:144px;overflow:auto;display:grid;align-content:start;gap:5px;padding-right:2px}
.aux-upgrade-person{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;padding:6px 7px;border-radius:8px;background:rgba(255,255,255,.74);border:1px solid rgba(229,207,160,.75)}
.aux-upgrade-person b,.aux-upgrade-person small{display:block}.aux-upgrade-person b{overflow:hidden;color:#4d332c;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.aux-upgrade-person small{margin-top:2px;overflow:hidden;color:#9a8870;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.aux-upgrade-person i{font-style:normal;font-size:9px;font-weight:800;white-space:nowrap}.aux-upgrade-person.ok i{color:#18743a}.aux-upgrade-person.warn i{color:#a65d00}.aux-upgrade-person.busy i{color:#2563a9}.aux-upgrade-person.neutral i{color:#81756a}.aux-upgrade-person.conflict{background:#fff4f1;border-color:#efb4a7}.aux-upgrade-person.conflict i{color:#b42318}.aux-upgrade-person-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.aux-upgrade-rebind{padding:3px 6px;border:1px solid #e28a79;border-radius:7px;background:#fff;color:#a61b0f;font:inherit;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer}.aux-upgrade-rebind:hover{background:#fff0ec}
.aux-upgrade-empty{padding:16px 8px;border:1px dashed #e0d2b5;border-radius:9px;color:#9a8870;text-align:center;font-size:11px;line-height:1.6}
.aux-upgrade-refresh{align-self:flex-start;padding:5px 9px;border:1px solid #d8b97a;border-radius:8px;background:#fffaf0;color:#7e1c2a;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.aux-upgrade-refresh:hover{background:#fff2d7}
.aux-seat-transfer{margin-top:14px;padding:16px 18px;border:1px solid #dce7df;border-radius:10px;background:#f8fbf9}
.aux-seat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin-top:12px}
.aux-seat-grid label{display:grid;gap:5px;color:#52645a;font-size:11px;font-weight:700}
.aux-seat-grid select,.aux-seat-grid input{width:100%;min-width:0;box-sizing:border-box;padding:8px 9px;border:1px solid #cfdcd3;border-radius:8px;background:#fff;color:#25332b;font:inherit;font-size:12px}
.aux-seat-options{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:11px;color:#52645a;font-size:11px}
.aux-seat-options label{display:flex;align-items:center;gap:6px}
.aux-seat-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}
#auxSeatResult{color:#66756c;font-size:11px}
@media(max-width:760px){.aux-seat-grid{grid-template-columns:1fr}}
.aux-version-callout{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:12px 14px;border:1px solid #e9c976;border-radius:11px;background:linear-gradient(90deg,#fff7dc,#fffdf7)}.aux-version-callout span{color:#7d653e;font-size:12px}.aux-version-callout b{color:#7e1c2a;font-size:26px;line-height:1}.aux-version-callout em{margin-left:auto;color:#8a7250;font-size:11px;font-style:normal;text-align:right}
.aux-steps{margin-top:16px;padding:14px 18px;background:#fffdf7;border:1px dashed #e5cfa0;border-radius:12px}
.aux-steps b{display:block;margin-bottom:8px;color:#7e1c2a;font-size:14px}
.aux-steps ol{margin:0;padding-left:20px;display:grid;gap:5px}
.aux-steps li{font-size:13px;color:#6b5a3a;line-height:1.7}
.aux-note{margin-top:12px;padding:9px 14px;border-radius:10px;background:#f6ecd2;border:1px solid #eeddb4;color:#8a6d3b;font-size:12.5px;line-height:1.6}
@media(max-width:1220px){.aux-download-box{grid-template-columns:minmax(0,1fr) auto}.aux-upgrade-card{grid-column:1/-1;padding-left:0;padding-top:14px;border-left:0;border-top:1px solid #e4cfa5}.aux-upgrade-list{max-height:190px}}
@media(max-width:760px){.aux-download-box{grid-template-columns:1fr}.aux-actions{align-items:stretch}.aux-version-callout{align-items:flex-start;flex-wrap:wrap}.aux-version-callout em{margin-left:0;text-align:left}}
/* ===== 工作日志 ===== */
.wl-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:12px}
.wl-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wl-toolbar select,.wl-toolbar input{padding:8px 10px;border:1px solid #e0d3c2;border-radius:9px;font:inherit;background:#fff;color:#4b2025}
.wl-toolbar input{flex:1;min-width:220px;max-width:420px;box-sizing:border-box}
.wl-hint{color:#9a8d84;font-size:12px;margin-left:auto}
.wl-table td{vertical-align:top}
.wl-td-time{white-space:nowrap;color:#8b786c;font-size:12px}
.wl-sub{display:block;color:#b09f90;font-size:11px}
.wl-summary{max-width:300px;color:#5b4948}
.wl-level{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;background:#f3ece1;color:#8a6f4f}
.wl-level.wl-warn{background:#fff3e0;color:#b26a00}
.wl-level.wl-error{background:#fde8e8;color:#b3261e}
.wl-badge{display:inline-block;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}
.wl-badge.wl-open{background:#fde8e8;color:#b3261e}
.wl-badge.wl-done{background:#e6f4ea;color:#1e7a3c}
.wl-badge.wl-ignore{background:#f1f1f1;color:#777}
.wl-row-done{opacity:.62}
.wl-row-done .wl-actions button{pointer-events:none}
.wl-detail-row td{background:#fdfaf5;border-top:0}
.wl-detail{padding:12px 16px 14px;background:#fff;border:1px solid #f0e7da;border-radius:10px;margin:6px 2px}
.wl-detail-msg b{display:block;color:#4b2025;font-size:13px;margin-bottom:6px}
.wl-detail-msg p{margin:0 0 10px;color:#3f332b;font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word}
.wl-detail-tech summary{cursor:pointer;color:#7e1c2a;font-size:12px;font-weight:600;margin-bottom:6px}
.wl-detail-tech pre{max-height:280px;overflow:auto;background:#f6f1e9;border:1px solid #eee2d4;border-radius:8px;padding:10px;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-family:Consolas,Menlo,monospace;color:#4a3b31}
.wl-handle-note{margin:8px 0 0;color:#1e7a3c;font-size:12px;line-height:1.6}
.wl-handle-box{display:flex;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap;padding-top:10px;border-top:1px dashed #eadfd1}
.wl-handle-box input{flex:1;min-width:200px;padding:8px 10px;border:1px solid #e0d3c2;border-radius:8px;font:inherit}
.wl-actions{white-space:nowrap}

/* 客户建档 · 按销售 / 日期查询（2026-09-10） */
.ca-modes{margin-bottom:10px}
.ca-stats{margin-bottom:10px}
.ca-staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.ca-staff-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;border:1px solid #eadfd1;border-radius:12px;background:#fff;cursor:pointer;text-align:left;font:inherit;width:100%}
.ca-staff-card:hover{border-color:#7e1c2a;box-shadow:0 3px 12px rgba(126,28,42,.09)}
.ca-staff-name{color:#4b2025;font-size:16px;font-weight:700}
.ca-staff-nums{color:#5b4948;font-size:13px}
.ca-staff-nums b{color:#7e1c2a;font-size:17px;margin:0 2px}
.ca-staff-sub{color:#9a8d84;font-size:12px}
.ca-staff-go{color:#7e1c2a;font-size:12px;font-weight:600}
.ca-range{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px;color:#8b786c;font-size:12px}
.ca-range input[type=date]{padding:6px 9px;border:1px solid #dfd1c2;border-radius:9px;font:inherit}
.ca-range button{padding:6px 12px;border:1px solid #e5d9c8;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.ca-range button:hover{border-color:#7e1c2a;color:#7e1c2a}
.ca-range-tip{color:#b3a79d}
.ca-crumb{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.ca-crumb button{padding:6px 12px;border:1px solid #e5d9c8;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.ca-crumb b{color:#4b2025;font-size:14px}

/* 客户建档：按销售=一排人名，点人名直接看这个人的客户（老板 2026-09-10 要求） */
.ca-people{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:2px 2px 4px}
.ca-person{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #e5d9c8;border-radius:999px;background:#fff;color:#5b4948;cursor:pointer;font:inherit;font-size:13px;font-weight:600}
.ca-person em{font-style:normal;background:#f2e8dc;color:#7e1c2a;border-radius:999px;padding:1px 8px;font-size:12px}
.ca-person:hover{border-color:#7e1c2a}
.ca-person.active{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ca-person.active em{background:rgba(255,255,255,.24);color:#fff}
.ca-person.zero{color:#b3a79b;border-style:dashed}
.ca-person.zero em{background:#f4efe8;color:#b3a79b}
.ca-range{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.ca-range>span{color:#5b4948;font-size:13px}
.ca-range input{padding:8px 10px;border:1px solid #e0d3c2;border-radius:9px;font:inherit}
.ca-range button{padding:7px 14px;border:1px solid #e5d9c8;border-radius:9px;background:#fff;color:#5b4948;cursor:pointer;font-size:12px}
.ca-range button.active{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ca-range-tip{color:#9a8d84;font-size:12px}
.ca-search-row{margin-bottom:12px}
.ca-search-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ca-search-row input{width:100%;max-width:420px;box-sizing:border-box;padding:9px 12px;border:1px solid #e0d3c2;border-radius:10px;font:inherit}
.ca-search-row select{max-width:220px;box-sizing:border-box;padding:9px 12px;border:1px solid #e0d3c2;border-radius:10px;background:#fff;color:#4b2025;font:inherit}

.ca-person .ca-todo{font-style:normal;background:#fde8e6;color:#b42318;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}
.ca-person.active .ca-todo{background:#fff;color:#b42318}
.ca-summary{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:9px 14px;border:1px solid #eadfd1;border-radius:10px;background:#fdfaf5;color:#5b4948;font-size:13px}
.ca-summary b{color:#4b2025;font-size:15px;margin:0 2px}
.ca-summary b.ok{color:#16845b}
.ca-summary b.todo{color:#b42318}
.ca-flags{display:flex;align-items:center;gap:6px;margin-left:auto;margin-right:10px;flex-shrink:0}
.ca-flag{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.ca-flag.done{background:#e8f7f1;color:#16845b}
.ca-flag.todo{background:#fde8e6;color:#b42318}
.ca-flag.wait{background:#eef3fb;color:#2f6fed}
.ca-flag.plain{background:#f4efe8;color:#8b7c6d;font-weight:600}

.ca-remind-toggle{margin-left:auto;border-color:#e5b4ae!important;color:#b42318!important}
.ca-remind-toggle.active{background:#b42318!important;border-color:#b42318!important;color:#fff!important}
.ca-people{margin:2px 0 10px}

/* 2026-09-10 权限预览：老板账号必须随时能切回老板视角，避免被卡在员工视角 */
#sidebar-role-preview{display:grid;gap:5px;margin:0 0 8px;padding:8px 10px;border:1px solid rgba(255,215,140,.22);border-radius:10px;background:rgba(0,0,0,.18);color:#f0d6b0;font-size:12px;font-weight:600}
#sidebar-role-preview select{width:100%;box-sizing:border-box;padding:6px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.24);color:#ffe6c2;font-size:13px}
#role-preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:center;margin:0 0 6px;padding:9px 14px;background:#fde68a;color:#7c2d12;border:1px solid #d97706;border-radius:12px;font-size:13px;position:sticky;top:0;z-index:80}
#role-preview-banner b{color:#b91c1c}
#role-preview-banner button{border:1px solid #b45309;background:#fff;color:#7c2d12;border-radius:7px;padding:3px 12px;font-size:12px;font-weight:700;cursor:pointer}
#role-preview-banner button:hover{background:#fff7ed}

/* 2026-09-12 AI工作台入口迁到左侧二级菜单，工作区不再重复显示入口栏 */
.ai-workbench-body{grid-template-columns:minmax(0,1fr)!important}
.ai-capability-panel{display:none!important}

.ca-followup-toggle{border-color:#c9d8ee!important;color:#2f5f9f!important}
.ca-followup-toggle.active{background:#2f5f9f!important;border-color:#2f5f9f!important;color:#fff!important}
.ca-card-head{flex-wrap:wrap}
.ca-card-title{flex:1 1 360px}
.ca-manage{border-top:1px solid #f0e7da;background:#fbfaf8;padding:14px}
.ca-manage-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.ca-manage-bar b,.ca-manage-bar span{display:block}
.ca-manage-bar b{color:#4b2025;font-size:15px}
.ca-manage-bar span{margin-top:4px;color:#8a7b72;font-size:12px;line-height:1.6}
.ca-manage-bar button{flex:none;padding:8px 14px;border:1px solid #d8c5aa;border-radius:9px;background:#fff;color:#5b4948;font-weight:700;cursor:pointer}
.ca-manage-bar button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}
.ca-manage-bar button:disabled{cursor:not-allowed;opacity:.55}
.ca-analysis-empty{padding:14px 16px;border:1px dashed #dccdbe;border-radius:10px;background:#fff;color:#8b7c6d;font-size:13px;line-height:1.7}
.ca-analysis-empty.running{border-color:#b9cff0;background:#f4f8ff;color:#2f5f9f}
.ca-analysis-empty.failed{border-color:#efc2bc;background:#fff6f4;color:#b42318}
.ca-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ca-analysis-row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;padding:10px 12px;border:1px solid #eee4d8;border-radius:10px;background:#fff;font-size:13px;line-height:1.65}
.ca-analysis-row>b{color:#6f5b52}
.ca-analysis-row>ul{margin:0;padding-left:18px}
.ca-analysis-reply{margin-top:10px;padding:12px;border:1px solid #e5d5b2;border-radius:11px;background:#fffaf0}
.ca-analysis-reply>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ca-analysis-reply button{padding:6px 10px;border:1px solid #d8c5aa;border-radius:8px;background:#fff;color:#6b4d18;cursor:pointer}
.ca-analysis-reply pre{margin:9px 0 0;white-space:pre-wrap;word-break:break-word;color:#3f2f2a;font-family:inherit;font-size:13px;line-height:1.7}
.ca-analysis-stale{margin-top:8px;padding:9px 12px;border-radius:9px;background:#fff1e8;color:#a43d25;font-size:12px;font-weight:700}
.ca-auto-status{margin-bottom:12px;padding:12px 13px;border:1px solid #e5d9c8;border-radius:12px;background:#fffaf4}
.ca-auto-status-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.ca-auto-status-head b{color:#4b2025;font-size:15px}
.ca-auto-status-head span{color:#9a8d84;font-size:12px}
.ca-auto-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ca-auto-status-note{margin-top:9px;color:#9a8d84;font-size:12px}
@media(max-width:900px){.ca-auto-status-grid{grid-template-columns:1fr}}
.ca-followup-panel{margin-top:12px;padding:13px;border:1px solid #e5d9c8;border-radius:12px;background:#fff}
.ca-followup-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.ca-followup-title b{color:#4b2025;font-size:15px}
.ca-followup-title span{color:#9a8d84;font-size:12px}
.ca-followup-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ca-followup-fields label{display:grid;gap:5px;color:#6f5b52;font-size:12px;font-weight:700}
.ca-followup-fields label.wide{grid-column:1/-1}
.ca-followup-fields input,.ca-followup-fields select,.ca-followup-fields textarea,.ca-send-panel textarea,.ca-send-actions input{box-sizing:border-box;width:100%;padding:8px 10px;border:1px solid #ded0bf;border-radius:9px;background:#fff;color:#3f2f2a;font:inherit;font-size:13px}
.ca-followup-actions{display:flex;justify-content:flex-end;margin-top:10px}
.ca-followup-actions button{padding:8px 14px;border:1px solid #7e1c2a;border-radius:9px;background:#fff;color:#7e1c2a;font-weight:700;cursor:pointer}
.ca-followup-actions button.primary{background:#7e1c2a;color:#fff}
.ca-send-panel{margin-top:12px;padding-top:12px;border-top:1px solid #eee4d8}
.ca-send-panel>b,.ca-send-panel>div>b{color:#4b2025}
.ca-send-panel>div>span{display:block;margin:3px 0 8px;color:#9a8d84;font-size:12px}
.ca-send-actions{display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:8px;margin-top:8px}
.ca-send-actions button{padding:8px 14px;border:1px solid #7e1c2a;border-radius:9px;background:#7e1c2a;color:#fff;font-weight:700;cursor:pointer}
.ca-send-actions button:disabled{border-color:#d8cec4;background:#eee9e3;color:#9a8d84;cursor:not-allowed}
@media(max-width:900px){.ca-analysis-grid,.ca-followup-fields{grid-template-columns:1fr}.ca-analysis-row{grid-template-columns:1fr}.ca-send-actions{grid-template-columns:1fr}}

/* 客户建档 · 客户总控大屏（2026-09-12） */
.ca-head-actions{display:flex;align-items:center;gap:8px}
.cc-shell{height:100%;min-height:620px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;padding:12px;background:#f7f5f2;color:#3f3431;overflow:hidden}
.cc-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.cc-title{min-width:0}.cc-title h2{margin:0;color:#4b2025;font-size:19px}.cc-title span{display:block;margin-top:3px;color:#8b7c72;font-size:12px}
.cc-top-actions{display:flex;align-items:center;gap:7px;flex:none}.cc-top-actions button,.cc-detail-actions button,.cc-sale-panel-head button{padding:7px 11px;border:1px solid #dbcbbb;border-radius:8px;background:#fff;color:#5b4948;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.cc-top-actions button.primary,.cc-detail-actions button.primary{border-color:#7e1c2a;background:#7e1c2a;color:#fff}.cc-top-actions button:disabled,.cc-detail-actions button:disabled{opacity:.55;cursor:not-allowed}
.cc-top-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:7px 9px;border:1px solid #e6dcd1;border-radius:10px;background:#fff;min-width:0}
.cc-conn-summary,.cc-action-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.cc-summary-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:0;border-radius:999px;background:#f5f1ec;color:#6c5d55;font:inherit;font-size:12px;white-space:nowrap}.cc-summary-chip b{color:#4b2025}.cc-summary-chip i{width:7px;height:7px;border-radius:50%;background:#aaa}.cc-summary-chip.conn-online i{background:#1b9c62}.cc-summary-chip.conn-warning i{background:#d69a1e}.cc-summary-chip.conn-offline i{background:#cf3f36}.cc-summary-chip.conn-no_report i{background:#a9a19b}.cc-action-summary button{cursor:pointer}.cc-action-summary button:hover{border:1px solid #d8c5aa}.cc-action-summary button.active{background:#fde8e6;color:#b42318}
.cc-auto-follow-live-summary{display:flex;flex:1 1 100%;align-items:center;gap:6px;min-width:0;padding-top:5px;border-top:1px solid #eee5dc;overflow:hidden}.cc-auto-follow-live-summary span{display:inline-flex;align-items:center;gap:5px;min-width:0;padding:4px 7px;border:1px solid #d9e5dc;border-radius:999px;background:#f4faf5;color:#3f6548;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-auto-follow-live-summary span.live-warn{border-color:#e5ca8d;background:#fff8e6;color:#765719}.cc-auto-follow-live-summary span.live-error{border-color:#e0b0a7;background:#fff5f2;color:#963b2a}.cc-auto-follow-live-summary span.live-active{border-color:#b9d4c0;background:#eef8f0;color:#2f6b3d}.cc-auto-follow-live-summary b{color:#4b2025}.cc-auto-follow-live-summary em{color:#8b786c;font-size:11px;font-style:normal;white-space:nowrap}
.cc-body{display:grid;grid-template-columns:210px minmax(0,1fr);gap:10px;min-height:0;flex:1}
.cc-sales,.cc-queue,.cc-detail,.cc-sale-panel{border:1px solid #e6dcd1;border-radius:10px;background:#fff;min-width:0;min-height:0}
.cc-sales{display:flex;flex-direction:column;overflow:hidden}.cc-side-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 10px 8px;border-bottom:1px solid #eee5dc}.cc-side-head b{color:#4b2025;font-size:14px}.cc-side-head span{color:#9b8d84;font-size:11px}.cc-sales-list{display:flex;flex-direction:column;gap:5px;padding:7px;overflow:auto;min-height:0}
.cc-sale{position:relative;display:grid;grid-template-columns:9px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 7px;align-items:center;width:100%;height:58px;box-sizing:border-box;padding:7px 8px;border:1px solid transparent;border-radius:8px;background:#faf8f5;color:#4b2025;text-align:left;font:inherit;cursor:pointer;overflow:hidden}.cc-sale:hover{border-color:#d8c5aa;background:#fff}.cc-sale.selected{border-color:#7e1c2a;background:#fff4f1}.cc-sale-main{grid-column:2;grid-row:1;display:flex;align-items:baseline;gap:6px;min-width:0}.cc-sale-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.cc-sale-main em{flex:none;color:#9a8d84;font-size:11px;font-style:normal}.cc-sale-urgent{grid-column:3;grid-row:1;min-width:16px;color:#b8aba1;text-align:right;font-size:12px;font-weight:800}.cc-sale-urgent.hot{color:#b42318}.cc-sale-badges{grid-column:2/4;grid-row:2;display:flex;gap:4px;min-width:0;overflow:hidden}.cc-sale-badges i{display:inline-block;max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 5px;border-radius:4px;background:#f1ece6;color:#8b7c6d;font-size:10px;font-style:normal}.cc-sale-badges i.error{background:#fde8e6;color:#b42318}.cc-sale-badges i.unread{background:#fff2d6;color:#9a6410}.cc-sale-badges i.due{background:#e8f3ff;color:#2f6fed}.cc-sale-badges i.stale{background:#fff0e8;color:#a43d25}.cc-sale-badges i.pending{background:#eef7f0;color:#16845b}.cc-sale-badges i.plain{background:#f4efe8;color:#8b7c6d}.cc-conn{width:8px;height:8px;border-radius:50%;background:#aaa}.cc-sale .cc-conn{grid-column:1;grid-row:1/3}.cc-conn.online{background:#1b9c62;box-shadow:0 0 0 3px rgba(27,156,98,.12)}.cc-conn.warning{background:#d69a1e}.cc-conn.offline{background:#cf3f36}.cc-conn.no_report{background:#aaa}.cc-side-empty{padding:16px 8px;color:#9a8d84;font-size:12px;text-align:center}
.cc-stage{min-width:0;min-height:0;overflow:hidden}.cc-stage-loading,.cc-detail-loading{display:grid;place-items:center;height:100%;min-height:180px;color:#8b7c6d;font-size:13px}.cc-single{display:grid;grid-template-columns:320px minmax(0,1fr);gap:10px;height:100%;min-height:0}.cc-queue{display:flex;flex-direction:column;overflow:hidden}.cc-queue-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border-bottom:1px solid #eee5dc;flex:none}.cc-queue-head>div{min-width:0}.cc-queue-head b{display:block;color:#4b2025;font-size:14px}.cc-queue-head span{display:block;margin-top:2px;color:#9a8d84;font-size:11px}.cc-queue-head input{width:170px;min-width:0;box-sizing:border-box;padding:7px 8px;border:1px solid #e0d3c2;border-radius:7px;background:#fff;color:#3f3431;font:inherit;font-size:12px}.cc-queue-scroll,.cc-sale-panel-list{display:flex;flex-direction:column;gap:5px;padding:7px;overflow:auto;min-height:0;flex:1}.cc-customer{display:grid;gap:3px;width:100%;box-sizing:border-box;padding:8px 9px;border:1px solid transparent;border-radius:8px;background:#faf8f5;color:#4b2025;text-align:left;font:inherit;cursor:pointer;overflow:hidden}.cc-customer:hover{border-color:#d8c5aa;background:#fff}.cc-customer.active{border-color:#7e1c2a;background:#fff4f1}.cc-customer-top{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.cc-customer-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.cc-customer-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9a8d84;font-size:11px}.cc-customer-msg{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#74645d;font-size:11px}.cc-state{flex:none;padding:2px 6px;border-radius:999px;background:#f1ece6;color:#8b7c6d;font-size:10px;font-style:normal;font-weight:700}.cc-state.unread{background:#fff2d6;color:#9a6410}.cc-state.error{background:#fde8e6;color:#b42318}.cc-state.due{background:#e8f3ff;color:#2f6fed}.cc-state.stale{background:#fff0e8;color:#a43d25}.cc-state.pending{background:#eef7f0;color:#16845b}.cc-state.ready{background:#e8f7f1;color:#16845b}.cc-state.running{background:#eef3fb;color:#2f6fed}.cc-detail{display:flex;flex-direction:column;overflow:hidden}.cc-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid #eee5dc;flex:none}.cc-detail-title{display:flex;align-items:center;gap:7px;min-width:0}.cc-detail-title b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4b2025;font-size:16px}.cc-detail-head>div:first-child>span{display:block;margin-top:3px;color:#9a8d84;font-size:11px;word-break:break-all}.cc-detail-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cc-detail-scroll{flex:1;min-height:0;overflow:auto;padding:12px}.cc-detail-empty{display:grid;place-items:center;align-content:center;gap:6px;height:100%;min-height:220px;padding:20px;color:#8b7c6d;text-align:center}.cc-detail-empty b{color:#53151c;font-size:16px}.cc-detail-empty span{font-size:12px;line-height:1.6}.cc-chat-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:14px 0 7px;padding-top:12px;border-top:1px solid #eee5dc}.cc-chat-title b{color:#4b2025}.cc-chat-title span{color:#9a8d84;font-size:11px}.cc-chat{margin:0;padding:12px;border:1px solid #eee2d4;border-radius:9px;background:#fdfaf5;color:#3f3431;font-family:inherit;font-size:12px;line-height:1.7;white-space:pre-wrap;word-break:break-word;max-height:520px;overflow:auto}.cc-task-panel{margin-top:12px;padding:10px 12px;border:1px solid #e5d5b2;border-radius:9px;background:#fffaf0}.cc-task-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.cc-task-title b{color:#6b4d18}.cc-task-title span{color:#9c8050;font-size:11px}.cc-task-row{display:grid;grid-template-columns:auto 110px minmax(0,1fr);gap:8px;align-items:center;margin-top:7px;padding-top:7px;border-top:1px dashed #eadfc9;color:#6d5a45;font-size:11px}.cc-task-row em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.cc-split-wrap{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0}.cc-split-toolbar{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid #e6dcd1;border-radius:9px;background:#fff;flex:none}.cc-split-toolbar b{color:#4b2025}.cc-split-toolbar span{color:#9a8d84;font-size:11px}.cc-split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:8px;min-height:0;flex:1;overflow:auto}.cc-split-grid.count-1{grid-template-columns:1fr}.cc-sale-panel{display:flex;flex-direction:column;overflow:hidden}.cc-sale-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #eee5dc}.cc-sale-panel-head>div{display:flex;align-items:center;gap:6px;min-width:0}.cc-sale-panel-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4b2025}.cc-sale-panel-head em{color:#9a8d84;font-size:11px;font-style:normal}.cc-sale-panel-stats{display:flex;gap:8px;padding:6px 10px;border-bottom:1px solid #f1e9df;color:#8b7c6d;font-size:11px;flex:none}.cc-detail-overlay{display:flex;flex-direction:column;height:100%;min-height:0;border:1px solid #e6dcd1;border-radius:10px;background:#fff;overflow:hidden}.cc-footnote{padding:0 3px;color:#a0948b;font-size:11px}
.cc-shell{height:calc(100vh - 142px);min-height:620px}
.cc-shell .ca-analysis-grid{grid-template-columns:1fr}.cc-shell .ca-analysis-row{grid-template-columns:78px minmax(0,1fr);padding:8px 10px}.cc-shell .ca-followup-panel{margin-top:10px;padding:10px}.cc-shell .ca-followup-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1180px){.cc-body{grid-template-columns:155px minmax(0,1fr)}.cc-single{grid-template-columns:260px minmax(0,1fr)}.cc-queue-head input{width:140px}.cc-shell{padding:9px}}
@media(max-width:900px){.cc-shell{height:auto;min-height:760px}.cc-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.cc-sales{max-height:190px}.cc-sales-list{display:flex;flex-direction:row;overflow-x:auto}.cc-sale{flex:0 0 180px}.cc-single{grid-template-columns:1fr;grid-template-rows:260px minmax(0,1fr)}.cc-split-grid{grid-template-columns:1fr}.cc-shell .ca-analysis-row{grid-template-columns:1fr}.cc-shell .ca-followup-fields{grid-template-columns:1fr}}

/* 公司资料库 · D盘来源映射（2026-09-13） */
.company-source-panel .section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.company-source-panel .section-head h2{margin:0}.company-source-panel .section-head button{padding:7px 11px;border:1px solid #7e1c2a;border-radius:8px;background:#fff;color:#7e1c2a;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.company-source-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.company-source-summary div{padding:9px 10px;border:1px solid #e7ddd7;border-radius:8px;background:#fcfaf9}.company-source-summary span{display:block;color:#8a7b74;font-size:11px}.company-source-summary b{display:block;margin-top:3px;color:#4b2025;font-size:17px}.company-source-error{color:#b42318}.company-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.company-source-card{border:1px solid #e7ddd7;border-radius:8px;background:#fff;padding:0;overflow:hidden}.company-source-card summary{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px;cursor:pointer;list-style:none}.company-source-card summary::-webkit-details-marker{display:none}.company-source-card summary span{min-width:0}.company-source-card summary b,.company-source-card summary em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-source-card summary b{color:#4b2025;font-size:13px}.company-source-card summary em{color:#8a7b74;font-size:11px;font-style:normal;margin-top:3px}.company-source-card summary strong{flex:none;color:#7e1c2a;font-size:12px;text-align:right}.company-source-card summary small{display:block;margin-top:2px;color:#9a8d84;font-size:10px;font-weight:400}.company-source-card p{margin:0;padding:0 10px 8px;color:#71635c;font-size:11px;line-height:1.5}.company-source-files{display:flex;flex-direction:column;gap:4px;margin:0 10px 8px;padding:7px;border-radius:6px;background:#f8f5f1}.company-source-files span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#71635c;font-size:11px}.company-source-card>small{display:block;padding:0 10px 10px;color:#9a8d84;font-size:10px}.company-source-card[open] summary{border-bottom:1px solid #eee5dc}
@media(max-width:1100px){.company-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.company-source-summary,.company-source-grid{grid-template-columns:1fr}.company-source-panel .section-head{flex-direction:column}.company-source-panel .section-head button{width:100%}}

/* AI大脑中心 · 判断失误修整闭环（2026-09-13） */
.ac-repair-list{margin-top:12px;padding:12px;border:1px solid var(--ac-line);border-radius:8px;background:#fff}.ac-repair-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.ac-repair-head h4{margin:0}.ac-repair-head span{color:#8a7b74;font-size:12px}.ac-repair-task{padding:10px 0;border-top:1px solid #eee8e4}.ac-repair-task:first-of-type{border-top:0}.ac-repair-task.done{background:#f6fbf7}.ac-repair-task.failed{background:#fff8f5}.ac-repair-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.ac-repair-title b{color:#ad381f;font-size:12px}.ac-repair-task.done .ac-repair-title b{color:#217a42}.ac-repair-title span{color:#6f625c;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ac-repair-title em{color:#9a8d84;font-size:11px;font-style:normal}.ac-repair-task p{margin:6px 0 0;color:#71635c;font-size:12px;line-height:1.5}.ac-repair-task p strong{display:inline-block;min-width:36px;margin-right:6px;color:#4b2025}.ac-repair-task .ac-repair-result{color:#217a42}.ac-repair-actions{display:flex;gap:7px;align-items:center;margin-top:8px}.ac-repair-actions input{flex:1;min-width:120px;border:1px solid #d9d0ca;border-radius:5px;padding:7px;font:inherit}.ac-repair-actions button{border:1px solid #d7cec8;border-radius:5px;background:#fff;padding:7px 10px;font:inherit;font-size:12px;cursor:pointer}.ac-repair-actions button.primary{background:#7e1c2a;border-color:#7e1c2a;color:#fff}
@media(max-width:760px){.ac-repair-head{flex-direction:column}.ac-repair-actions{flex-wrap:wrap}.ac-repair-actions input{flex-basis:100%}}

/* AI大脑中心 · 复盘结论优先布局（2026-09-14） */
.ac-review-exec{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(320px,1fr);gap:10px;margin-bottom:12px}.ac-review-exec-main{padding:15px 16px;border:1px solid #d9e4d7;border-radius:9px;background:#f7fbf6}.ac-review-exec-main.urgent{border-color:#e7b7ae;background:#fff8f5}.ac-review-exec-main>span{display:block;color:#7e6f68;font-size:12px}.ac-review-exec-main>b{display:block;margin-top:5px;color:#2c6a3d;font-size:21px;line-height:1.3}.ac-review-exec-main.urgent>b{color:#a72f23}.ac-review-exec-main p{margin:7px 0 0;color:#655a55;font-size:13px;line-height:1.6}.ac-review-exec-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ac-review-exec-metrics div{padding:10px;border:1px solid var(--ac-line);border-radius:8px;background:#fff}.ac-review-exec-metrics span{display:block;color:#85776f;font-size:11px}.ac-review-exec-metrics b{display:block;margin-top:5px;color:#4b2025;font-size:20px}.ac-review-focus{margin-bottom:12px;padding:12px;border:1px solid var(--ac-line);border-radius:9px;background:#fff}.ac-review-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}.ac-review-section-head h4{margin:0}.ac-review-section-head p{margin:4px 0 0;color:#81736c;font-size:12px}.ac-review-section-head>span{flex:none;color:#8a7b74;font-size:12px}.ac-review-focus-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ac-review-focus-card{min-width:0;padding:11px;border:1px solid #e7ddd7;border-radius:8px;background:#fdfcfb}.ac-review-focus-card.overdue{border-color:#e2aaa0;background:#fff6f3}.ac-review-focus-card-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 7px;align-items:center}.ac-review-focus-card-head span{padding:2px 6px;border-radius:999px;background:#f1e9e4;color:#8c3428;font-size:10px;font-weight:700}.ac-review-focus-card-head b{min-width:0;color:#4b2025;font-size:13px;line-height:1.4}.ac-review-focus-card-head em{grid-column:2;color:#91837b;font-size:11px;font-style:normal}.ac-review-focus-card p{margin:8px 0 5px;color:#655a55;font-size:12px;line-height:1.5}.ac-review-focus-card small{display:block;color:#7b6d66;font-size:11px;line-height:1.5}.ac-review-clear{grid-column:1/-1;padding:12px;border-radius:7px;background:#f7faf6;color:#2c6a3d;font-size:13px}.ac-repair-head>div{min-width:0}.ac-repair-head p{margin:4px 0 0;color:#8a7b74;font-size:12px}.ac-repair-task>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:10px 4px;cursor:pointer;list-style:none}.ac-repair-task>summary::-webkit-details-marker{display:none}.ac-repair-task>summary::after{content:'展开';color:#9a8d84;font-size:11px}.ac-repair-task[open]>summary::after{content:'收起'}.ac-repair-task>summary .ac-repair-status{padding:2px 7px;border-radius:999px;background:#f3ece8;color:#9b3a2f;font-size:11px;font-weight:700}.ac-repair-task>summary b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4b2025;font-size:13px}.ac-repair-task>summary em{color:#94867e;font-size:11px;font-style:normal}.ac-repair-body{padding:0 4px 10px}.ac-repair-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.ac-repair-tags span{padding:2px 6px;border-radius:5px;background:#f4f0ed;color:#756861;font-size:11px}.ac-review-drawer{margin-top:10px;border:1px solid var(--ac-line);border-radius:9px;background:#fff}.ac-review-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;cursor:pointer;list-style:none}.ac-review-drawer>summary::-webkit-details-marker{display:none}.ac-review-drawer>summary span{color:#4b2025;font-size:13px;font-weight:700}.ac-review-drawer>summary b{color:#8a7b74;font-size:11px;font-weight:400}.ac-review-drawer[open]>summary{border-bottom:1px solid #eee6e1}.ac-review-drawer .ac-review-grid,.ac-review-drawer .ac-task-list,.ac-review-drawer .ac-note-form{margin:10px 12px 12px;border:0;padding:0}.ac-review-note-drawer .ac-note-form{border:0}
@media(max-width:900px){.ac-review-exec{grid-template-columns:1fr}.ac-review-exec-metrics{grid-template-columns:1fr 1fr}.ac-review-focus-list{grid-template-columns:1fr}.ac-repair-task>summary{grid-template-columns:auto minmax(0,1fr)}.ac-repair-task>summary em{grid-column:2}.ac-repair-task>summary::after{grid-column:2;justify-self:start}.ac-review-drawer>summary{align-items:flex-start;flex-direction:column;gap:4px}}

/* 公司AI工作台 · 轻量高级卡片视觉（2026-09-16）
   只使用静态渐变、细边框和 hover transform，不加整页动画、Canvas 或高频刷新。 */
.ai-workbench-page .ai-workbench{
  --aiw-ink:#3d2426;
  --aiw-muted:#82736d;
  --aiw-line:rgba(104,66,57,.16);
  --aiw-gold:#c7903e;
  --aiw-accent:#7b2030;
  position:relative;
  border:1px solid var(--aiw-line);
  border-radius:14px;
  background:linear-gradient(180deg,#f8f4ee 0%,#f3efea 48%,#f7f6f3 100%);
  box-shadow:0 1px 2px rgba(61,34,34,.04),0 14px 34px rgba(61,34,34,.08);
}
.ai-workbench-page .ai-workbench-title{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  min-height:66px;
  padding:10px 16px 10px 14px;
  overflow:hidden;
  border-radius:13px 13px 0 0;
  border-bottom:1px solid rgba(255,218,146,.22);
  background:linear-gradient(112deg,#2c1018 0%,#5b1a27 48%,#35111a 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
.ai-workbench-page .ai-workbench-title::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px);
  background-size:22px 22px;
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.65) 48%,transparent 100%);
}
.ai-workbench-page .ai-workbench-title::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,var(--aiw-gold) 0 16%,rgba(213,166,74,.48) 36%,rgba(255,255,255,.05) 78%);
}
.ai-workbench-page .ai-workbench-title-mark{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid rgba(255,224,160,.45);
  border-radius:10px;
  background:linear-gradient(145deg,rgba(255,225,151,.22),rgba(255,255,255,.06));
  color:#ffe8a9;
  font-size:13px;
  font-weight:900;
  box-shadow:inset 0 1px rgba(255,255,255,.16),0 7px 18px rgba(0,0,0,.18);
}
.ai-workbench-page .ai-workbench-title-copy{position:relative;z-index:1;min-width:0}
.ai-workbench-page .ai-workbench-title-copy h1{
  margin:0;
  overflow:hidden;
  color:#fff7e6;
  font-size:22px;
  font-weight:900;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 1px 6px rgba(0,0,0,.18);
}
.ai-workbench-page .ai-workbench-title-status{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:none;
  padding:6px 10px;
  border:1px solid rgba(255,224,160,.22);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:rgba(255,241,211,.84);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.ai-workbench-page .ai-workbench-title-status i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#74c89a;
  box-shadow:0 0 0 3px rgba(116,200,154,.12),0 0 10px rgba(116,200,154,.34);
}
.ai-workbench-page .ai-console-bar{
  padding:9px 12px;
  border-bottom:1px solid #e6dbd1;
  background:linear-gradient(180deg,#fffdfa,#faf6f0);
}
.ai-workbench-page .ai-console-brand b{color:#4b2025;font-weight:900}
.ai-workbench-page .ai-console-brand span{color:#8d7b72}
.ai-workbench-page .ai-console-bar input{
  border-color:#dfd2c8;
  background:#fff;
  box-shadow:inset 0 1px 2px rgba(69,40,35,.035);
}
.ai-workbench-page .ai-console-bar input:focus{
  border-color:rgba(123,32,48,.52);
  box-shadow:0 0 0 3px rgba(123,32,48,.08),inset 0 1px 2px rgba(69,40,35,.025);
}
.ai-workbench-page .ai-console-bar button{border-color:#ddcfc2;background:linear-gradient(180deg,#fff,#fbf7f1);color:#5a4642}
.ai-workbench-page .ai-console-bar button.primary{
  border-color:rgba(78,15,29,.24);
  background:linear-gradient(135deg,#8e263a,#681727);
  box-shadow:0 5px 14px rgba(111,30,44,.18),inset 0 1px rgba(255,255,255,.16);
}
.ai-workbench-page .ai-console-status{
  padding:6px 10px;
  border-bottom:1px solid #e8ded4;
  background:linear-gradient(180deg,#f7f1e8,#f4eee6);
}
.ai-workbench-page .ai-console-task{
  border-color:#e5d9cd;
  background:linear-gradient(180deg,#fff,#fcfaf6);
  box-shadow:0 1px 2px rgba(66,39,34,.035);
}
.ai-workbench-page .ai-toolbar,
.ai-workbench-page .ai-workbench-toolbar{
  padding:9px 12px;
  background:linear-gradient(180deg,#fbf8f3,#f5efe7);
  border-bottom:1px solid #e5d9cf;
}
.ai-workbench-page .ai-tool-button{
  min-height:44px;
  padding:6px 10px;
  border-color:#e3d7cb;
  border-radius:9px;
  background:linear-gradient(180deg,#fff,#fdfaf6);
  box-shadow:0 1px 2px rgba(67,40,34,.04),0 8px 18px rgba(67,40,34,.035);
}
.ai-workbench-page .ai-tool-button:hover{
  border-color:#c7a56b;
  background:linear-gradient(180deg,#fffdf8,#fff8ec);
  box-shadow:0 2px 4px rgba(67,40,34,.055),0 11px 24px rgba(92,55,35,.08);
  transform:translateY(-1px);
}
.ai-workbench-page .ai-tool-button img{width:24px;height:24px}
.ai-workbench-page .ai-tool-button>span{display:grid;gap:1px;min-width:0;text-align:left}
.ai-workbench-page .ai-tool-button b{color:#4a292d;font-size:13px;line-height:1.1}
.ai-workbench-page .ai-tool-button small{color:#97877f;font-size:9px;font-weight:600;line-height:1.1}
.ai-workbench-page .ai-workbench-tabs{
  min-height:42px;
  padding:0 10px;
  background:linear-gradient(180deg,#f1ece5,#ece6de);
  border-bottom:1px solid #d9cdc2;
}
.ai-workbench-page .ai-workbench-tab{
  padding:8px 11px;
  border-radius:8px 8px 0 0;
  color:#756862;
}
.ai-workbench-page .ai-workbench-tab.active{
  border-color:#e1d6cb;
  background:linear-gradient(180deg,#fffdfa,#fff);
  color:#4a2027;
  box-shadow:0 -2px 8px rgba(70,34,26,.07),inset 0 2px var(--aiw-gold);
}
.ai-workbench-page .ai-workbench-frames{background:#fff}
.ai-workbench-page .ai-workbench-controlbar{
  padding:8px 12px;
  border-top:1px solid #e3d7cc;
  background:linear-gradient(180deg,#fdfaf5,#f7f1e9);
}
.ai-workbench-page .ai-control-status{color:#796a63}
.ai-workbench-page .ai-control-status span{
  padding:4px 9px;
  border:1px solid #e6dad0;
  border-radius:999px;
  background:rgba(255,255,255,.72);
}
.ai-workbench-page .ai-control-actions button{
  border-color:#ddcfc2;
  border-radius:8px;
  background:linear-gradient(180deg,#fff,#fbf7f1);
  color:#5b4842;
}
.ai-workbench-page .ai-control-actions button:hover{border-color:#c5a06a;background:#fff9ee}
.ai-workbench-page .ai-control-actions button.active{background:linear-gradient(135deg,#8d2a3c,#681827);border-color:#8d2a3c;color:#fff}
.ai-workbench-page .ai-control-actions button.primary{background:linear-gradient(135deg,#8e263a,#681727);border-color:#681727;color:#fff}
.ai-workbench-page .ai-workbench-home-card{
  position:relative;
  border-color:#e4d8cc;
  border-radius:10px;
  background:linear-gradient(180deg,#fff,#fdfaf6);
  box-shadow:0 1px 2px rgba(67,40,34,.04),0 9px 22px rgba(67,40,34,.04);
}
.ai-workbench-page .ai-workbench-home-card:hover{
  border-color:#c8a567;
  background:linear-gradient(180deg,#fffdf8,#fff8ec);
  box-shadow:0 2px 5px rgba(67,40,34,.06),0 13px 28px rgba(92,55,35,.09);
  transform:translateY(-1px);
}
.ai-workbench-page .ai-workbench-home-copy{display:grid;gap:3px}
.ai-workbench-page .ai-workbench-home-card b{color:#4b2025;font-weight:900}
.ai-workbench-page .ai-workbench-home-card em{color:#8e7e76}
.ai-workbench-page :is(.ac-agent-card,.ac-task-card,.ac-review-focus-card,.ai-prompt-card,.knowledge-card){
  border-color:#e5d9cf;
  border-radius:9px;
  background:linear-gradient(180deg,#fff,#fdfaf7);
  box-shadow:0 1px 2px rgba(66,39,34,.035);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.ai-workbench-page :is(.ac-agent-card,.ac-task-card,.ac-review-focus-card,.ai-prompt-card,.knowledge-card):hover{
  border-color:#d2b68b;
  box-shadow:0 2px 4px rgba(66,39,34,.05),0 10px 24px rgba(80,46,35,.07);
  transform:translateY(-1px);
}
@media(max-width:900px){
  .ai-workbench-page .ai-workbench-title{grid-template-columns:auto minmax(0,1fr);min-height:60px}
  .ai-workbench-page .ai-workbench-title-status{display:none}
  .ai-workbench-page .ai-workbench-title-copy h1{font-size:20px}
}
@media(max-width:760px){
  .ai-workbench-page .ai-workbench{border-radius:10px}
  .ai-workbench-page .ai-workbench-title{border-radius:9px 9px 0 0;padding-right:12px}
  .ai-workbench-page .ai-tool-button small{display:none}
  .ai-workbench-page .ai-tool-button{min-height:40px}
}

.aux-feishu-card{
  margin-top:14px;
  padding:14px;
  border:1px solid #e4d8cc;
  border-radius:10px;
  background:linear-gradient(180deg,#fff,#fdfaf6);
  box-shadow:0 1px 2px rgba(67,40,34,.04),0 10px 24px rgba(80,46,35,.05);
}
.aux-feishu-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.aux-feishu-head>div{display:grid;gap:2px}
.aux-feishu-head b{color:#4b2025;font-size:15px}
.aux-feishu-head small{color:#8d7b72;font-size:12px}
.aux-feishu-head>span{
  padding:4px 9px;
  border:1px solid #eadccf;
  border-radius:999px;
  background:#fff;
  color:#8a6d3b;
  font-size:12px;
  font-weight:700;
}
.aux-feishu-status{margin-top:7px;color:#6f625c;font-size:12px;line-height:1.7}
.aux-system-address{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.aux-system-address>div{
  min-width:0;
  padding:9px 10px;
  border:1px solid #eadfd4;
  border-radius:8px;
  background:#fff;
}
.aux-system-address span{display:block;color:#9a8b82;font-size:11px}
.aux-system-address b{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:#4b2025;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.aux-feishu-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.aux-feishu-form{
  margin-top:12px;
  border:1px solid #eadfd4;
  border-radius:9px;
  background:#fff;
}
.aux-feishu-form>summary{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:11px 12px;
  cursor:pointer;
  color:#4b2025;
}
.aux-feishu-form>summary span{color:#8e7e76;font-size:11px}
.aux-feishu-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  padding:0 12px 12px;
}
.aux-feishu-grid label{display:grid;gap:5px;min-width:0}
.aux-feishu-grid label>span{color:#6f625c;font-size:12px;font-weight:700}
.aux-feishu-grid input,.aux-feishu-grid select{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:8px 9px;
  border:1px solid #dfd2c8;
  border-radius:7px;
  background:#fff;
  color:#3e2f2c;
  font-size:12px;
}
.aux-feishu-grid input:focus,.aux-feishu-grid select:focus{
  outline:none;
  border-color:rgba(123,32,48,.52);
  box-shadow:0 0 0 3px rgba(123,32,48,.08);
}
.aux-feishu-grid .aux-switch-row{
  grid-template-columns:1fr auto;
  align-items:center;
  padding:9px 10px;
  border:1px solid #eadfd4;
  border-radius:8px;
  background:#fcfaf6;
}
.aux-feishu-grid .aux-switch-row i{grid-column:1 / -1;color:#9a8b82;font-size:11px;font-style:normal}
@media(max-width:900px){
  .aux-system-address{grid-template-columns:1fr}
  .aux-feishu-grid{grid-template-columns:1fr}
}

.system-settings-page{display:grid;gap:14px}
.system-settings-loading{padding:34px;color:#8d7b72;text-align:center}
.system-settings-hero{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-end;
  flex-wrap:wrap;
  padding:20px 22px;
  border:1px solid #e3d7cc;
  border-radius:12px;
  background:linear-gradient(135deg,#fffaf3,#fff 55%,#f8f4ed);
  box-shadow:0 12px 28px rgba(73,43,35,.06);
}
.system-eyebrow{color:#a77a3d;font-size:11px;font-weight:900;letter-spacing:0}
.system-settings-hero h2{margin:4px 0 6px;color:#4b2025;font-size:25px}
.system-settings-hero p{max-width:720px;margin:0;color:#7c6b63;font-size:13px;line-height:1.7}
.system-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.system-hero-actions button,.system-hero-actions a,.system-panel-actions button,.system-panel-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 13px;
  border:1px solid #ddcfc2;
  border-radius:8px;
  background:linear-gradient(180deg,#fff,#fbf7f1);
  color:#5b4842;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}
.system-hero-actions button:hover,.system-hero-actions a:hover,.system-panel-actions button:hover,.system-panel-actions a:hover{border-color:#c7a56b;background:#fff9ee}
.system-hero-actions button,.system-panel-actions .primary{
  border-color:#7b2030;
  background:linear-gradient(135deg,#8e263a,#681727);
  color:#fff;
}
.system-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.system-status-card{
  min-width:0;
  padding:14px 15px;
  border:1px solid #e5d9cf;
  border-radius:10px;
  background:#fff;
  box-shadow:0 1px 2px rgba(67,40,34,.035);
}
.system-status-card span{display:block;color:#988980;font-size:11px}
.system-status-card b{display:block;margin:5px 0 3px;color:#4b2025;font-size:19px}
.system-status-card small{display:block;overflow:hidden;color:#887971;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.system-status-card.ok{border-color:#cde7d6;background:linear-gradient(180deg,#fff,#f4fbf6)}
.system-status-card.ok b{color:#138a4d}
.system-status-card.warn{border-color:#ead7b8;background:linear-gradient(180deg,#fff,#fffaf1)}
.system-status-card.warn b{color:#b66b1b}
.system-tutorial{
  padding:18px;
  border:1px solid #d8c59d;
  border-radius:12px;
  background:linear-gradient(135deg,#fff9eb,#fff 56%,#fbf7ef);
  box-shadow:0 10px 24px rgba(80,46,35,.04);
}
.system-tutorial-head{display:flex;gap:12px;align-items:flex-start}
.system-tutorial-head>span{
  padding:5px 9px;
  border-radius:999px;
  background:#8e263a;
  color:#fff;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.system-tutorial-head h3{margin:0;color:#4b2025;font-size:16px}
.system-tutorial-head p{margin:3px 0 0;color:#83736b;font-size:12px}
.system-tutorial-steps{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:9px;
  margin:14px 0 0;
  padding:0;
  list-style:none;
}
.system-tutorial-steps li{
  display:grid;
  gap:5px;
  align-content:start;
  padding:12px;
  border:1px solid #eadccd;
  border-radius:9px;
  background:#fff;
}
.system-tutorial-steps b{color:#4b2025;font-size:12px}
.system-tutorial-steps span{color:#887971;font-size:11px;line-height:1.5}
.system-tutorial-steps a{
  width:max-content;
  margin-top:2px;
  color:#8e263a;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}
.system-tutorial-steps a:hover{text-decoration:underline}
.system-panel{
  padding:18px;
  border:1px solid #e4d8cc;
  border-radius:11px;
  background:#fff;
  box-shadow:0 1px 2px rgba(67,40,34,.04),0 10px 24px rgba(80,46,35,.035);
}
.system-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}
.system-panel-head>div{display:flex;gap:11px;min-width:0}
.system-panel-head>div>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:none;
  border:1px solid #ead7bd;
  border-radius:9px;
  background:#fff8ed;
  color:#a36a24;
  font-size:12px;
  font-weight:900;
}
.system-panel-head h3{margin:0;color:#4b2025;font-size:16px}
.system-panel-head p{margin:3px 0 0;color:#8b7b73;font-size:12px;line-height:1.55}
.system-panel-head>b{padding:4px 8px;border-radius:999px;background:#f6f0e8;color:#7e6457;font-size:11px;white-space:nowrap}
.system-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px}
.system-form-grid.compact{grid-template-columns:repeat(2,minmax(220px,420px))}
.system-form-grid label{display:grid;gap:5px;min-width:0}
.system-form-grid label.wide{grid-column:1 / -1}
.system-form-grid label>span{color:#6f625c;font-size:12px;font-weight:800}
.system-form-grid input,.system-form-grid select{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:9px 10px;
  border:1px solid #dfd2c8;
  border-radius:8px;
  background:#fff;
  color:#3e2f2c;
  font-size:12px;
}
.system-form-grid input:focus,.system-form-grid select:focus{outline:none;border-color:rgba(123,32,48,.52);box-shadow:0 0 0 3px rgba(123,32,48,.08)}
.system-form-grid input:disabled{background:#f6f2ed;color:#8f8179}
.system-form-grid .system-switch{
  grid-template-columns:1fr auto;
  align-items:center;
  padding:10px 11px;
  border:1px solid #eadfd4;
  border-radius:8px;
  background:#fcfaf6;
}
.system-form-grid .system-switch i{grid-column:1 / -1;color:#9a8b82;font-size:11px;font-style:normal}
.system-panel-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:13px}
.system-inline-result{color:#7d6e66;font-size:12px}
.system-inline-result[data-tone="ok"]{color:#138a4d;font-weight:800}
.system-inline-result[data-tone="warn"]{color:#b66b1b;font-weight:800}
.system-wecom-profiles{margin-top:16px;padding-top:14px;border-top:1px solid #eee4da}
.system-wecom-sync-note{
  margin-top:10px;
  padding:9px 11px;
  border:1px solid #d7e6dc;
  border-radius:8px;
  background:#f5fbf7;
  color:#336b4e;
  font-size:11px;
}
.system-wecom-title{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.system-wecom-title b{color:#4b2025;font-size:13px}
.system-wecom-title span{color:#8f8179;font-size:11px}
.system-wecom-list{display:grid;gap:8px;margin-top:10px}
.system-wecom-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto;gap:7px;align-items:center;padding:10px;border:1px solid #e7dcd2;border-radius:9px;background:#fcfaf6}
.system-wecom-list>div.active{border-color:#c9a66b;background:#fff9ed}
.system-wecom-list span{display:grid;gap:2px;min-width:0}
.system-wecom-list b{color:#4b2025;font-size:12px}
.system-wecom-list small{overflow:hidden;color:#8e7f77;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.system-wecom-list em{color:#9a6a25;font-size:10px;font-style:normal;font-weight:800;white-space:nowrap}
.system-wecom-list button{padding:5px 7px;border:1px solid #ddcfc2;border-radius:6px;background:#fff;color:#665049;font-size:10px;cursor:pointer}
@media(max-width:760px){
  .system-wecom-list>div{grid-template-columns:1fr}
}
/* 渠道群流量监控面板 */
.system-ct-status{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:12px;padding:9px 11px;border:1px solid #d7e6dc;border-radius:8px;background:#f5fbf7;color:#336b4e;font-size:11px}
.system-ct-status b{color:#1d5c3a;font-size:12px}
.system-ct-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px;padding:10px 11px;border:1px solid #eadfd4;border-radius:8px;background:#fcfaf6}
.system-ct-stats span{color:#8f8179;font-size:11px}
.system-ct-stats b{color:#4b2025;font-size:16px;margin-left:5px}
.system-ct-rooms{margin-top:14px;padding-top:12px;border-top:1px solid #eee4da}
.system-ct-rooms-title{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}
.system-ct-rooms-title b{color:#4b2025;font-size:13px}
.system-ct-rooms-title span{color:#8f8179;font-size:11px}
.system-ct-table{width:100%;border-collapse:collapse;font-size:11px}
.system-ct-table th{text-align:left;color:#9a8b82;font-weight:600;padding:6px 8px;border-bottom:1px solid #eee4da;white-space:nowrap}
.system-ct-table td{padding:6px 8px;border-bottom:1px solid #f4ede6;color:#5d4d46;vertical-align:top}
.system-ct-table tr.ignored td{color:#b5a79e}
.system-ct-table tr.ignored .ct-name{text-decoration:line-through}
.system-ct-table .ct-tag{display:inline-block;padding:1px 7px;border-radius:5px;background:#f3e9dc;color:#7a5c3a;font-size:10px;font-weight:700;white-space:nowrap}
.system-ct-table .ct-tag.none{background:#f1ede9;color:#9a8b82}
.system-ct-table .ct-tag.warn{background:#fbe3e0;color:#a33a2a}
.system-ct-events{margin-top:4px;display:grid;gap:5px;max-height:240px;overflow:auto;padding-right:4px}
.system-ct-events>div{display:grid;grid-template-columns:54px 58px minmax(0,1fr);gap:8px;align-items:baseline;padding:5px 9px;border:1px solid #f0e7de;border-radius:7px;background:#fcfaf6;font-size:11px;color:#5d4d46}
.system-ct-events .kind-push{color:#8a6d1f;font-weight:800}
.system-ct-events .kind-response{color:#138a4d;font-weight:800}
.system-ct-events .kind-timeout{color:#b3261e;font-weight:800}
.system-ct-events small{color:#9a8b82}
.system-ct-empty{padding:14px;color:#9a8b82;font-size:11px;text-align:center}
.system-mention-tip{margin-top:10px;padding:9px 11px;border:1px dashed #e3d3c3;border-radius:8px;background:#fcfaf6;color:#877870;font-size:11px;line-height:1.7}
.system-mention-tip strong{color:#4b2025}
#sysSmMembers{margin-top:10px;max-height:300px;overflow:auto}
#sysSmMembers .system-ct-table button{padding:3px 9px;border:1px solid #ddcfc2;border-radius:6px;background:#fff;color:#6a534a;font-size:11px;cursor:pointer}
#sysSmMembers .system-ct-table button:hover{background:#f7efe6}
@media(max-width:760px){
  .system-ct-table{font-size:10px}
  .system-ct-table th:nth-child(4),.system-ct-table td:nth-child(4){display:none}
}
.system-address-list{display:grid;gap:8px;margin-bottom:13px}
.system-address-list>div{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid #eadfd4;border-radius:8px;background:#fcfaf6}
.system-address-list span{color:#8b7b73;font-size:11px}
.system-address-list b{overflow:hidden;color:#4b2025;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.system-address-list button{padding:5px 9px;border:1px solid #ddcfc2;border-radius:7px;background:#fff;color:#6a534a;font-size:11px;cursor:pointer}
.system-migration-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.system-migration-steps li{display:grid;gap:4px;padding:12px;border:1px solid #eadfd4;border-radius:9px;background:#fcfaf6}
.system-migration-steps b{color:#4b2025;font-size:12px}
.system-migration-steps span{color:#877870;font-size:11px;line-height:1.55}
@media(max-width:1080px){
  .system-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .system-tutorial-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .system-migration-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .system-settings-hero{padding:16px}
  .system-settings-hero h2{font-size:21px}
  .system-status-grid,.system-form-grid,.system-form-grid.compact,.system-tutorial-steps,.system-migration-steps{grid-template-columns:1fr}
  .system-panel{padding:14px}
  .system-address-list>div{grid-template-columns:1fr}
}

.import-center-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  flex-wrap:wrap;
  padding:22px 24px;
  border:1px solid #e3d7cc;
  border-radius:12px;
  background:linear-gradient(135deg,#fffaf3,#fff 58%,#f8f4ed);
}
.import-center-eyebrow{color:#a77a3d;font-size:11px;font-weight:900}
.import-center-hero h2{margin:4px 0 6px;color:#4b2025;font-size:25px}
.import-center-hero p{max-width:680px;margin:0;color:#7d6d65;font-size:13px;line-height:1.7}
.import-center-status{
  min-width:220px;
  padding:12px 14px;
  border:1px solid #eadfd4;
  border-radius:10px;
  background:#fff;
}
.import-center-status span,.import-center-status small{display:block;color:#95867d;font-size:11px}
.import-center-status b{display:block;margin:4px 0;color:#4b2025;font-size:14px}
.import-step-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}
.import-step-row>div{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:2px 9px;
  align-items:center;
  padding:12px;
  border:1px solid #e7dcd2;
  border-radius:9px;
  background:#fff;
}
.import-step-row>div>span{
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#f4eee7;
  color:#8f7c71;
  font-weight:900;
}
.import-step-row b{color:#51423e;font-size:12px}
.import-step-row small{color:#998b83;font-size:10px}
.import-step-row .active{border-color:#d6b57f;background:#fffaf0}
.import-step-row .active>span{background:#8e263a;color:#fff}
.import-workbench{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(270px,.75fr);
  gap:14px;
  margin-bottom:14px;
}
.import-source-panel,.import-guide-panel{
  padding:18px;
  border:1px solid #e4d8cc;
  border-radius:11px;
  background:#fff;
  box-shadow:0 1px 2px rgba(67,40,34,.04);
}
.import-panel-title h3{margin:0;color:#4b2025;font-size:16px}
.import-panel-title p{margin:3px 0 0;color:#8d7d75;font-size:12px}
.import-module-field{display:grid;gap:6px;margin-top:15px}
.import-module-field>span{color:#6f625c;font-size:12px;font-weight:800}
.import-module-field select{
  width:100%;
  padding:10px 11px;
  border:1px solid #dfd2c8;
  border-radius:8px;
  background:#fff;
  color:#3e2f2c;
}
.import-drop{
  margin-top:12px;
  padding:22px;
  border:1px dashed #d6b57f;
  border-radius:10px;
  background:#fffdf8;
  text-align:center;
}
.import-drop-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  margin:0 auto 9px;
  border-radius:50%;
  background:#f7efe2;
  color:#9c6b29;
  font-size:22px;
  font-weight:900;
}
.import-drop b{color:#4b2025}
.import-drop p{margin:4px 0 10px;color:#91837b;font-size:11px}
.import-primary-button,.import-secondary-button{width:100%;margin-top:12px}
.import-wps-button{
  width:100%;
  margin-top:9px;
  padding:9px 12px;
  border:1px solid #b9d7c6;
  border-radius:8px;
  background:#f3fbf6;
  color:#18724a;
  font-weight:800;
  cursor:pointer;
}
.import-wps-button:hover{background:#e9f7ef}
.import-secondary-button{
  padding:9px 12px;
  border:1px solid #ddcfc2;
  border-radius:8px;
  background:#fff;
  color:#5b4842;
  cursor:pointer;
}
.import-guide-panel h3{margin:0 0 12px;color:#4b2025;font-size:15px}
.import-guide-item{display:grid;gap:3px;padding:10px 0;border-top:1px solid #eee5dc}
.import-guide-item b{color:#544540;font-size:12px}
.import-guide-item span{color:#8c7e76;font-size:11px;line-height:1.5}
.import-guide-panel details{margin-top:12px;padding-top:12px;border-top:1px solid #eee5dc}
.import-guide-panel summary{color:#6d5249;font-size:12px;font-weight:800;cursor:pointer}
.import-guide-panel details p{color:#8b7d75;font-size:11px;line-height:1.6}
.import-auto-config label{display:grid;gap:5px;margin-top:9px}
.import-auto-config label>span{color:#735b54;font-size:11px;font-weight:800}
.import-auto-config input[type="number"]{
  width:100%;
  box-sizing:border-box;
  padding:8px 9px;
  border:1px solid #dfd2c8;
  border-radius:7px;
}
.import-auto-config .import-auto-switch{grid-template-columns:1fr auto;align-items:center}
.import-auto-config .import-auto-switch i{grid-column:1 / -1;color:#95877f;font-size:10px;font-style:normal}
.import-auto-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.import-auto-config button{
  width:100%;
  margin-top:10px;
  padding:8px 10px;
  border:1px solid #ddcfc2;
  border-radius:8px;
  background:#fff;
  color:#5b4842;
  font-weight:800;
  cursor:pointer;
}
.import-auto-status{margin:8px 0 0;color:#8a7a72;font-size:10px}
.import-wps-sources{margin-top:12px;padding-top:10px;border-top:1px solid #eee5dc}
.import-wps-source-head{display:flex;justify-content:space-between;gap:8px;align-items:center}
.import-wps-source-head b{color:#654a43;font-size:11px}
.import-wps-source-head span{color:#9a8a82;font-size:10px}
.import-wps-source-list{display:grid;gap:6px;margin-top:8px}
.import-wps-source-list>div{display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center;padding:8px;border:1px solid #eadfd4;border-radius:7px;background:#fff}
.import-wps-source-list span{display:grid;gap:2px;color:#4f403b;font-size:10px}
.import-wps-source-list em{color:#8c7e76;font-size:9px;font-style:normal;white-space:nowrap}
.import-wps-source-list button{padding:4px 6px;border:1px solid #ddcfc2;border-radius:6px;background:#fff;color:#6b5148;font-size:10px;cursor:pointer}
.import-wps-source-form{display:grid;gap:7px;margin-top:9px}
.import-wps-source-form input,.import-wps-source-form select{width:100%;box-sizing:border-box;padding:7px 8px;border:1px solid #dfd2c8;border-radius:7px;font-size:11px}
.import-wps-source-form>button{padding:8px;border:1px solid #b9d7c6;border-radius:7px;background:#f3fbf6;color:#18724a;font-weight:800;cursor:pointer}
.import-preview-panel{margin-top:14px}
.import-message{display:flex;gap:10px;margin-top:10px;padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.55}
.import-message.error{border:1px solid #f0c7c7;background:#fff5f5;color:#9d3434}
.import-message.warn{border:1px solid #ead7b8;background:#fffaf0;color:#9d6825}
@media(max-width:900px){
  .import-step-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .import-workbench{grid-template-columns:1fr}
}
@media(max-width:600px){
  .import-step-row{grid-template-columns:1fr}
  .import-center-hero{padding:16px}
}

.salary-policy-details{
  margin-top:12px;
  padding:11px 13px;
  border:1px solid #e6dbd1;
  border-radius:9px;
  background:#fffdfa;
}
.salary-policy-details summary{color:#654a43;font-size:12px;font-weight:800;cursor:pointer}
.salary-policy-details p{margin:9px 0 0;color:#877870;font-size:12px;line-height:1.65}

.channel-daily-shell{display:grid;gap:12px}
.channel-daily-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid #e5d9ce;border-radius:8px;background:#fff}
.channel-daily-head>div:first-child{display:grid;gap:3px}
.channel-daily-head b{color:#4b2025;font-size:18px}
.channel-daily-head span{color:#8b7c74;font-size:12px}
.channel-daily-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.channel-daily-controls input{width:145px;padding:7px 9px;border:1px solid #dfd2c8;border-radius:7px;background:#fff;color:#4b2025}
.channel-daily-controls button{padding:7px 10px;border:1px solid #ddcfc2;border-radius:7px;background:#fff;color:#5b4842;font-size:12px;font-weight:800;cursor:pointer}
.channel-daily-controls button:hover:not(:disabled){border-color:#c7aa8f;background:#fffaf4}
.channel-daily-controls button:disabled{opacity:.42;cursor:default}
.channel-day-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(76px,1fr);gap:7px;overflow-x:auto;padding:2px 0 4px}
.channel-day-strip button{display:grid;gap:2px;min-width:76px;padding:9px 8px;border:1px solid #e6dbd1;border-radius:7px;background:#fff;color:#62514b;text-align:center;cursor:pointer}
.channel-day-strip button span{font-size:11px;color:#8c7d75}
.channel-day-strip button b{font-size:14px;color:#523d38}
.channel-day-strip button small{font-size:10px;color:#9a8b83}
.channel-day-strip button.active{border-color:#8e263a;background:#fff7f5;box-shadow:inset 0 0 0 1px #8e263a}
.channel-day-strip button.active b{color:#8e263a}
.channel-data-warning{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid #ead7b8;border-radius:8px;background:#fffaf0;color:#966322;font-size:12px}
.channel-data-warning b{white-space:nowrap}
.channel-data-warning span{color:#9a7a51}
.channel-kpi-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}
.channel-kpi-row article{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid #e7ddd4;border-radius:8px;background:#fff}
.channel-kpi-row span{color:#8d7e76;font-size:11px;font-weight:800}
.channel-kpi-row b{color:#4b2025;font-size:21px;font-variant-numeric:tabular-nums;white-space:nowrap}
.channel-kpi-row small{color:#95877f;font-size:10px;line-height:1.4}
.channel-main-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(350px,.75fr);gap:12px}
.channel-compact-panel{padding:0;overflow:hidden}
.channel-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid #eee5dc}
.channel-panel-head h2{margin:0;color:#4b2025;font-size:15px}
.channel-panel-head p{margin:3px 0 0;color:#91837b;font-size:11px}
.channel-panel-head>span{color:#9a8b83;font-size:11px;white-space:nowrap}
.channel-compact-table th{padding:8px 9px;font-size:11px;white-space:nowrap}
.channel-compact-table td{padding:8px 9px;font-size:12px;vertical-align:middle}
.channel-compact-table td small{display:block;margin-top:2px;color:#9b8c84;font-size:9px}
.channel-assigned-note{margin:0;padding:9px 13px;border-top:1px solid #eee5dc;background:#fcfaf7;color:#8d7e76;font-size:11px}
.channel-detail-panel{padding:0;overflow:hidden}
.channel-detail-panel>summary{padding:13px 15px;color:#5a443e;font-weight:900;cursor:pointer;list-style:none}
.channel-detail-panel>summary::-webkit-details-marker{display:none}
.channel-detail-panel>summary::after{content:'展开';float:right;color:#9a8b83;font-size:11px;font-weight:700}
.channel-detail-panel[open]>summary::after{content:'收起'}
.channel-detail-panel>.hint,.channel-detail-panel>.table-wrap{margin:0 13px 13px}
@media(max-width:1350px){.channel-kpi-row{grid-template-columns:repeat(3,minmax(0,1fr))}.channel-main-grid{grid-template-columns:1fr}}
@media(max-width:760px){.channel-daily-head{align-items:flex-start;flex-direction:column}.channel-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-daily-controls{width:100%}.channel-daily-controls input{flex:1;min-width:135px}.channel-data-warning{align-items:flex-start;flex-direction:column}}

/* 侧边栏收敛：功能分组、当前栏目和登录人分层，避免底部拥挤。 */
.sidebar{width:286px;padding:14px 12px 10px;background:linear-gradient(180deg,#2b1016 0%,#45151d 55%,#241015 100%);box-shadow:inset -1px 0 0 rgba(255,215,140,.07),10px 0 28px rgba(37,12,17,.16)}
.sidebar .brand{padding:0 6px 12px;margin-bottom:0;border-bottom:1px solid rgba(255,255,255,.07)}
.sidebar .brand img{width:52px;height:52px}
.sidebar .brand div span{font-size:25px}
.sidebar .brand small{font-size:11px;letter-spacing:1.6px}
.sidebar-nav{margin-top:10px;gap:8px}
.nav-primary,.nav-secondary{position:relative;padding-top:26px}
.nav-primary{width:126px;gap:5px}
.nav-secondary{flex:1;padding:26px 8px 10px;background:rgba(0,0,0,.12);border:1px solid rgba(255,215,140,.08);border-radius:9px}
.nav-primary::before,.nav-secondary::before{position:absolute;top:7px;left:10px;color:#b98d70;font-size:10px;font-weight:800;letter-spacing:1px;pointer-events:none}
.nav-primary::before{content:'功能区'}
.nav-secondary::before{content:'当前栏目'}
.nav-primary button{min-height:36px;padding:7px 8px;border:1px solid rgba(255,215,140,.07);border-radius:8px;font-size:12.5px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-primary button::after{content:'›';float:right;color:rgba(255,226,138,.55);font-size:15px;line-height:1;margin-left:5px}
.nav-primary button.selected{box-shadow:inset 3px 0 0 #f3bb41,0 4px 10px rgba(0,0,0,.16)}
.nav-secondary button{position:relative;min-height:29px;padding:6px 8px 6px 20px;border:0;border-radius:6px;background:transparent;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-secondary button::before{content:'';position:absolute;left:9px;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:rgba(240,214,176,.45)}
.nav-secondary button:hover{background:rgba(255,255,255,.08)}
.nav-secondary button.active{background:linear-gradient(90deg,rgba(138,44,60,.92),rgba(90,24,36,.92));box-shadow:inset 2px 0 0 #f3bb41}
.nav-secondary button.active::before{background:#ffd76b}
.sidebar-foot{margin-top:8px;padding:8px 7px 2px;border:0;border-top:1px solid rgba(255,255,255,.09);border-radius:0;background:transparent;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;color:#f0d6b0}
.sidebar-user-avatar{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,215,140,.32);border-radius:50%;background:rgba(255,255,255,.06);color:#ffe6a8;font-size:14px;font-weight:900}
.sidebar-user-meta{display:grid;gap:2px;min-width:0}
.sidebar-user-meta b{overflow:hidden;color:#f4d9b8;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.sidebar-user-meta small{overflow:hidden;color:#cda88e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.sidebar-foot{cursor:pointer}
.sidebar-switch-account{grid-column:1 / -1;width:100%;padding:6px 8px;border:1px solid rgba(255,215,140,.24);border-radius:7px;background:rgba(255,255,255,.06);color:#f4d9b8;font-size:11px;font-weight:800;cursor:pointer}
.sidebar-switch-account:hover{border-color:rgba(255,215,140,.5);background:rgba(255,255,255,.12)}
#sidebar-role-preview{grid-column:1/-1;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;margin:0;padding:6px 0 0;border:0;border-top:1px solid rgba(255,255,255,.07);border-radius:0;background:transparent;color:#cda88e;font-size:10px;font-weight:700}
#sidebar-role-preview>span{padding-left:2px}
#sidebar-role-preview select{width:100%;box-sizing:border-box;padding:5px 7px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:rgba(0,0,0,.18);color:#f0d6b0;font-size:11px}
@media(max-width:1200px){.sidebar{width:272px;padding:12px 9px 8px}main{width:calc(100% - 272px);margin-left:272px}.nav-primary{width:120px}.nav-secondary{flex-basis:126px}}
@media(max-width:900px){.sidebar{width:82px;padding:18px 6px}.sidebar-foot{display:none}#sidebar-role-preview{display:none}}

.auto-metric{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:8px 10px;border:1px solid #e4d8cc;border-radius:7px;background:#f8f5ef;color:#4b2025;font-size:13px;font-weight:800}
.auto-metric small,.field-note,.auto-inline{color:#8d7e76;font-size:10px;font-weight:600}
.auto-metric small{display:block;white-space:nowrap}
.field-note{display:block;margin-top:4px}
.auto-inline{display:block;margin-top:2px}
.daily-report-time{display:inline-flex;align-items:center;gap:10px;color:#654a43;font-size:12px;font-weight:800}
.daily-report-time input{width:130px}

/* 系统内账号浏览器：登录、验证码和页面操作都在系统里完成。 */
.douyin-browser-overlay{position:fixed;top:0;right:0;bottom:0;left:auto;z-index:1600;display:grid;place-items:stretch;padding:10px;background:transparent;backdrop-filter:none;pointer-events:none}
.douyin-browser-overlay.full{left:0;place-items:center;padding:18px;background:rgba(25,13,15,.72);backdrop-filter:blur(5px);pointer-events:auto}
.douyin-browser-overlay.hidden{display:none}
.douyin-browser-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(760px,54vw);height:100%;pointer-events:auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#151215;box-shadow:0 28px 80px rgba(0,0,0,.48)}
.douyin-browser-overlay.full .douyin-browser-shell{width:min(1500px,96vw);height:min(980px,94vh)}
.douyin-browser-shell>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.1);background:#241b20;color:#fff}
.douyin-browser-shell>header>div:first-child{min-width:0}.douyin-browser-shell>header b,.douyin-browser-shell>header span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-browser-shell>header b{font-size:13px}.douyin-browser-shell>header>div:first-child span{margin-top:2px;color:#bba8af;font-size:10px}
.douyin-browser-shell>header>div:last-child{display:flex;align-items:center;gap:6px}.douyin-browser-shell>header button,.douyin-browser-toolbar button{padding:6px 9px;border:1px solid #5c4b53;border-radius:6px;background:#33272d;color:#f7eef1;font-size:11px;font-weight:700;cursor:pointer}.douyin-browser-shell>header button.danger{border-color:#9f3d45;background:#6d222a}
.douyin-browser-toolbar{display:grid;grid-template-columns:minmax(240px,1.2fr) auto minmax(240px,1fr) auto auto auto;gap:6px;padding:7px 9px;border-bottom:1px solid rgba(255,255,255,.08);background:#1d171a}
.douyin-browser-toolbar input{min-width:0;width:100%;box-sizing:border-box;padding:7px 9px;border:1px solid #4a3d43;border-radius:6px;background:#100d0f;color:#f4eef0;font:inherit;font-size:11px}
.douyin-browser-screen{position:relative;display:grid;place-items:center;min-height:0;overflow:auto;background:#090809;cursor:crosshair}
.douyin-browser-screen img{display:block;max-width:100%;max-height:100%;object-fit:contain;user-select:none}
.douyin-browser-cursor{position:absolute;z-index:4;width:14px;height:14px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:rgba(209,59,45,.2);box-shadow:0 0 0 2px rgba(0,0,0,.35),0 2px 10px rgba(0,0,0,.35);pointer-events:none;transform:translate(-50%,-50%);}
.douyin-browser-cursor::after{content:"";position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.douyin-browser-cursor.hidden{display:none}
#douyin-browser-loading{position:absolute;inset:0;display:grid;place-items:center;background:#121012;color:#dbcbd0;font-size:13px;font-weight:700}
#douyin-browser-loading.hidden{display:none}
.douyin-browser-shell>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px;border-top:1px solid rgba(255,255,255,.08);background:#1d171a;color:#ad9da3;font-size:10px}
@media(max-width:950px){.douyin-browser-toolbar{grid-template-columns:1fr 1fr 1fr}.douyin-browser-toolbar input{grid-column:1/-1}.douyin-browser-shell>header{align-items:flex-start;flex-direction:column}.douyin-browser-shell>header>div:last-child{flex-wrap:wrap}.douyin-browser-shell>footer{align-items:flex-start;flex-direction:column}.douyin-browser-overlay{padding:6px}.douyin-browser-shell{width:99vw;height:98vh}.douyin-browser-screen img{max-width:none;width:auto;height:100%}}
.douyin-browser-panel{padding:0;overflow:hidden;background:#141115;border-color:#2d252a}
.douyin-browser-panel>.douyin-panel-head{margin:0;padding:13px 14px;border-bottom:1px solid #30272c;background:#211a1e}
.douyin-browser-panel>.douyin-panel-head h2,.douyin-browser-panel>.douyin-panel-head p{color:#f2e9ec}.douyin-browser-panel>.douyin-panel-head p{color:#aa999f}
.douyin-workbench{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-height:720px;background:#0d0b0d}
.douyin-native-shell-panel{background:#f7f8fa!important;border-color:#e4e6ea!important;color:#20242a!important}
.douyin-native-shell-panel>.douyin-panel-head{border-color:#e8eaee!important;background:#fff!important}
.douyin-native-shell-panel>.douyin-panel-head h2{color:#20242a!important}
.douyin-native-shell-panel>.douyin-panel-head p{color:#7d8794!important}
.douyin-native-browser-host{position:relative;height:calc(100vh - 176px);min-height:520px;overflow:hidden;border-radius:10px}
.douyin-native-browser-host .douyin-native-shell-empty{height:100%;min-height:100%}
.douyin-native-shell-empty{min-height:520px;display:grid;place-items:center;border:1px dashed #d9dee6;border-radius:10px;background:linear-gradient(180deg,#fff,#f4f6f9);color:#20242a}
.douyin-native-shell-empty .douyin-browser-orbit span{background:radial-gradient(circle at 35% 30%,#dce7ff,#8ba9ea 58%,#eef3ff);box-shadow:0 0 0 16px rgba(36,87,214,.06),0 0 0 34px rgba(36,87,214,.03)}
.douyin-native-shell-empty .douyin-browser-orbit b{color:#24334a}
.douyin-native-shell-empty .douyin-browser-orbit small{color:#7d8794}
.douyin-workbench-tabs{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:4px;min-height:38px;padding:5px 7px 0;border-bottom:1px solid #30272c;background:#1b1619;overflow-x:auto}
.douyin-workbench-tabs>button{position:relative;display:flex;align-items:center;gap:7px;min-width:150px;max-width:260px;padding:8px 25px 8px 10px;border:1px solid #352c31;border-bottom:0;border-radius:7px 7px 0 0;background:#211b1f;color:#bcaab0;font-size:11px;text-align:left;cursor:pointer}
.douyin-workbench-tabs>button.active{background:#111;color:#fff;border-color:#66545c}
.douyin-workbench-tabs>button.dragging{opacity:.42}
.douyin-workbench-tabs>button.drop-before{box-shadow:-3px 0 0 #d24b62}
.douyin-workbench-tabs>button.drop-after{box-shadow:3px 0 0 #d24b62}
.douyin-workbench-tabs>button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-workbench-tabs>button small{overflow:hidden;color:#806f76;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.douyin-workbench-tabs>button i{position:absolute;right:7px;top:50%;transform:translateY(-50%);color:#8f7b83;font-size:14px;font-style:normal}
.douyin-workbench-tabs .douyin-new-tab{min-width:32px;width:32px;padding:8px;justify-content:center;color:#d0bdc4}
.douyin-browser-toolbar-main{display:flex;align-items:center;gap:5px;padding:6px 8px;border-bottom:1px solid #30272c;background:#161215}
.douyin-browser-toolbar-main button{min-width:30px;padding:6px 8px;border:1px solid #493d43;border-radius:6px;background:#2a2226;color:#f0e4e8;font-size:11px;font-weight:700;cursor:pointer}
.douyin-browser-toolbar-main input{flex:1;min-width:160px;padding:7px 9px;border:1px solid #44383e;border-radius:6px;background:#0c0a0b;color:#f0e5e8;font:inherit;font-size:11px}
.douyin-inline-browser-mount{position:relative;min-height:650px;overflow:hidden;background:#090809}
.douyin-inline-browser-empty{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,#2a1d24 0,#111 42%,#080708 100%);color:#eee2e6}
.douyin-inline-browser-empty.hidden{display:none}
.douyin-browser-orbit{display:grid;place-items:center;gap:6px;text-align:center}.douyin-browser-orbit span{display:block;width:74px;height:74px;border:1px solid rgba(255,196,113,.42);border-radius:50%;box-shadow:0 0 0 16px rgba(255,196,113,.04),0 0 0 34px rgba(255,196,113,.025);background:radial-gradient(circle at 35% 30%,#ffd39b,#82283a 55%,#24131b)}.douyin-browser-orbit b{font-size:16px}.douyin-browser-orbit small{max-width:420px;color:#ad9ca3;font-size:11px;line-height:1.6}
.douyin-browser-overlay.inline{position:relative;inset:auto;display:block;padding:0;background:transparent;backdrop-filter:none;pointer-events:auto}
.douyin-browser-overlay.inline .douyin-browser-shell{width:100%;height:min(860px,calc(100vh - 215px));border:0;border-radius:0;box-shadow:none}
@media(max-width:1100px){.douyin-browser-overlay .douyin-browser-shell{width:min(680px,70vw)}}
@media(max-width:760px){.douyin-browser-overlay{left:0}.douyin-browser-overlay .douyin-browser-shell{width:100%}}
.douyin-account-create{margin:10px 14px 0;border:1px solid #3b3036;border-radius:8px;background:#1d171a;color:#ded1d6}
.douyin-account-create summary{padding:10px 12px;color:#f1e6ea;font-size:12px;font-weight:800;cursor:pointer}.douyin-account-create .douyin-account-form{margin:0;border:0;border-top:1px solid #352c31;border-radius:0;background:#171316}.douyin-account-create label{color:#a8969d}
.douyin-browser-panel+.douyin-detail-grid{background:#171316}
.social-studio-shell>.social-hero{display:none}
.ops-live-board{display:grid;gap:12px;min-width:0}
.ops-live-controls{display:grid;gap:10px;padding:13px;border:1px solid #30272c;border-radius:9px;background:#181417;color:#eee4e8}
.ops-live-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ops-live-control-head h2{margin:0;font-size:18px}.ops-live-control-head p{margin:4px 0 0;color:#9f8e95;font-size:11px;line-height:1.6}
.ops-live-actions{display:flex;gap:7px}.ops-live-actions button{padding:7px 10px;border:1px solid #4b3e44;border-radius:7px;background:#2b2327;color:#f1e6ea;font-size:11px;font-weight:800;cursor:pointer}.ops-live-actions .primary{border-color:#b33b4e;background:#a52d43}
.ops-live-form{display:grid;grid-template-columns:minmax(280px,1.65fr) repeat(6,minmax(94px,.48fr));gap:8px;align-items:end}.ops-live-form>label{display:grid;gap:5px;color:#a9979e;font-size:10px}.ops-live-form input{width:100%;box-sizing:border-box;padding:7px 8px;border:1px solid #44383e;border-radius:6px;background:#0d0b0c;color:#f4edf0;font:inherit;font-size:11px}
.ops-live-accounts{display:flex;flex-wrap:wrap;gap:6px;min-height:48px;padding:7px;border:1px solid #3b3036;border-radius:7px;background:#100d0f}.ops-live-accounts label{display:grid;grid-template-columns:auto 1fr;gap:1px 6px;align-items:center;min-width:150px;padding:6px 8px;border:1px solid #342a2f;border-radius:6px;background:#1d171a;color:#e7dde1;font-size:10px;cursor:pointer}.ops-live-accounts input{grid-row:1/3;accent-color:#b63a51}.ops-live-accounts small{color:#8f7e85}
.ops-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:10px;min-width:0}
.ops-live-card{min-width:0;overflow:hidden;border:1px solid #30272c;border-radius:9px;background:#141115;box-shadow:0 10px 30px rgba(17,8,11,.16)}
.ops-live-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #30272c;background:#20191d}.ops-live-card-head div{min-width:0}.ops-live-card-head b,.ops-live-card-head small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-live-card-head b{color:#fff;font-size:12px}.ops-live-card-head small{margin-top:2px;color:#8e7e85;font-size:9px}
.ops-live-frame{position:relative;aspect-ratio:16/9;min-height:220px;overflow:hidden;background:#080708}.ops-live-frame img{width:100%;height:100%;object-fit:contain}.ops-live-overlay{position:absolute;left:8px;right:8px;bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:6px;background:rgba(12,9,10,.76);color:#fff;backdrop-filter:blur(4px)}.ops-live-overlay span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.ops-live-overlay b{font-size:12px}
.ops-live-progress{height:3px;background:#2b2226}.ops-live-progress i{display:block;height:100%;background:linear-gradient(90deg,#d24b62,#f0b86a);transition:width .4s ease}
.ops-live-meta{display:grid;gap:3px;padding:9px 10px;border-bottom:1px solid #2d2529}.ops-live-meta b{overflow:hidden;color:#f2e9ec;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ops-live-meta span{overflow:hidden;color:#8c7a81;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.ops-live-log{display:grid;gap:2px;min-height:74px;max-height:96px;overflow:auto;padding:7px 9px}.ops-live-log p{display:flex;justify-content:space-between;gap:8px;margin:0;color:#b7a8ae;font-size:9px}.ops-live-log p span{flex:none;color:#74656b}
.ops-live-empty{grid-column:1/-1;display:grid;place-items:center;gap:6px;min-height:420px;text-align:center;border:1px dashed #3b3036;border-radius:9px;background:#151114;color:#9f8e95}.ops-live-empty b{color:#eee4e8;font-size:16px}.ops-live-empty span{max-width:560px;font-size:11px;line-height:1.7}.ops-live-alert{padding:18px;border:1px solid #8e3c47;border-radius:8px;background:#351820;color:#f0cbd3}
@media(max-width:1450px){.ops-live-form{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-live-accounts{grid-column:1/-1}}
@media(max-width:760px){.ops-live-control-head{align-items:flex-start;flex-direction:column}.ops-live-form{grid-template-columns:1fr}.ops-live-grid{grid-template-columns:1fr}}

/* 运营系统专用作业台：去掉重复页头，账号栏、内容区、执行器统一深色层级。 */
body.ops-workspace-active main>header{display:none}
body.ops-workspace-active{overflow:hidden}
body.ops-workspace-active main{height:100vh;overflow:hidden;padding:0;background:#0e0b0d}
body.ops-workspace-active #app{height:100vh;overflow:hidden;padding:8px}
.douyin-ops-shell{grid-template-columns:246px minmax(0,1fr) 302px;gap:8px;height:100%;min-height:0;padding:0;border-radius:12px;background:#0e0b0d;overflow:hidden}
.douyin-account-rail,.douyin-side-panel{background:#151114;border-color:#30262b;color:#eee5e8;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.douyin-brand-row{border-color:#30262b;background:#1d171a}.douyin-brand-row b{color:#fff}.douyin-brand-row span{color:#8f7f86}
.douyin-account-rail button,.douyin-side-panel button{border-color:#493c43;background:#251f23;color:#e9dfe3}.douyin-account-rail button:hover,.douyin-side-panel button:hover{border-color:#8c5362;background:#31272c}
.douyin-account-rail{height:100%;max-height:none;display:flex;flex-direction:column;overflow:hidden}.douyin-account-scroll{height:auto;min-height:0;flex:1;max-height:none;background:#121012;overflow:auto}.douyin-account-scroll section+section{border-top:1px solid #282126}.douyin-account-scroll h4{color:#b3a2a9}
.douyin-account-item{background:#171316!important;border-color:#2f262b!important}.douyin-account-item.active{border-color:#b64a62!important;background:#2c1f25!important;box-shadow:inset 3px 0 #e35c76!important}.douyin-account-item b{color:#fff}.douyin-account-item small{color:#8f7e85}
.douyin-account-avatar{background:linear-gradient(135deg,#f35976,#6b2339)}
.douyin-tabs{border-color:#30262b;background:#171316}.douyin-tabs button{color:#a99aa0}.douyin-tabs button.active{background:#f0e9ec;color:#2a171e}.douyin-tabs button:hover:not(.active){background:#2a2226;color:#fff}
.douyin-panel{background:#171316;border-color:#30262b;color:#ede3e7}.douyin-panel-head{border-color:#30262b}.douyin-panel-head h2{color:#fff}.douyin-panel-head p{color:#9d8d93}
.douyin-detail-grid article{background:#1e191c;border-color:#352b30}.douyin-detail-grid article>span,.douyin-detail-grid article>small{color:#988890}.douyin-detail-grid article>b{color:#fff}
.douyin-side-panel{position:static;height:100%;max-height:none;overflow:auto}.douyin-side-panel>section{border-color:#30262b;background:#171316}.douyin-side-head b{color:#fff}.douyin-side-head>span{color:#a8959d;font-size:10px}
.ops-rail-hero{background:linear-gradient(160deg,#2b2026,#171316)!important}.ops-executor-state{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #3b3036;border-radius:8px;background:#100d0f}.ops-executor-state>div{min-width:0}.ops-executor-state b,.ops-executor-state small{display:block}.ops-executor-state b{color:#fff;font-size:14px}.ops-executor-state small{margin-top:3px;overflow:hidden;color:#9d8d93;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.douyin-live-dot.off{background:#74666c;box-shadow:none}
.ops-rail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.ops-rail-metrics article{padding:8px;border:1px solid #332a2f;border-radius:7px;background:#1e191c}.ops-rail-metrics span,.ops-rail-metrics b{display:block}.ops-rail-metrics span{color:#8f7f86;font-size:9px}.ops-rail-metrics b{margin-top:4px;color:#fff;font-size:16px}
.ops-current-task{display:grid;gap:4px;padding:10px;border:1px solid #4a3a41;border-radius:8px;background:#21191e}.ops-current-task b{color:#fff}.ops-current-task span,.ops-current-task small{color:#a998a0;font-size:10px}
.ops-rail-empty{padding:11px;border:1px dashed #3a3035;border-radius:7px;color:#8f7f86;font-size:10px}
.douyin-task-list.compact article{padding:6px 7px}.douyin-event-list.readable p{font-size:10px}.douyin-event-list.readable b{color:#dfd2d7}
.douyin-workspace{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.douyin-workspace>.douyin-panel{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.douyin-browser-panel>.douyin-panel-head{flex:none}.douyin-workbench{flex:1;min-height:0;height:auto;grid-template-rows:auto auto minmax(0,1fr)}.douyin-inline-browser-mount{height:100%;min-height:0}.douyin-browser-overlay.inline .douyin-browser-shell{height:100%;max-height:none}
.douyin-account-drawer{position:fixed;inset:0;z-index:2500;display:flex;justify-content:flex-end;background:rgba(10,6,8,.42);backdrop-filter:blur(3px)}.douyin-account-drawer.hidden{display:none}.douyin-account-drawer>section{width:min(470px,94vw);height:100%;overflow:auto;padding:14px;background:#171316;border-left:1px solid #3a2f35;box-shadow:-20px 0 50px rgba(0,0,0,.3)}.douyin-account-drawer header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.douyin-account-drawer header b,.douyin-account-drawer header span{display:block}.douyin-account-drawer header b{color:#fff;font-size:17px}.douyin-account-drawer header span{margin-top:4px;color:#9e8e94;font-size:11px}.douyin-account-drawer header button{padding:6px 9px;border:1px solid #493c43;border-radius:7px;background:#251f23;color:#eee4e8;font-size:11px;cursor:pointer}.douyin-account-drawer .douyin-account-form{grid-template-columns:1fr;margin:0;border-color:#352b30;background:#1d181b}.douyin-account-drawer .douyin-account-form label.wide{grid-column:auto}.douyin-account-drawer .douyin-account-form input{background:#0f0c0e;border-color:#493c43;color:#f3eaed}

/* 全系统非阻塞提示和运营页提示。 */
.system-toast-stack,.ops-toast-stack{position:fixed;right:18px;bottom:18px;z-index:2400;display:grid;gap:8px;width:min(380px,calc(100vw - 36px));pointer-events:none}
.system-toast,.ops-toast{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;max-height:240px;overflow:auto;padding:11px 12px;border:1px solid #52677e;border-radius:9px;background:#172536;color:#f3e9ed;box-shadow:0 16px 38px rgba(0,0,0,.32);pointer-events:auto;animation:system-toast-in .18s ease}
.system-toast span,.ops-toast span{white-space:pre-wrap;font-size:11px;line-height:1.55}
.system-toast button,.ops-toast button{width:22px;height:22px;padding:0;border:0;border-radius:5px;background:rgba(255,255,255,.08);color:#d9cbd0;font-size:14px;line-height:20px;cursor:pointer}
.system-toast.success,.ops-toast.success{border-color:#2f7658;background:#153326;color:#edf9f2}
.system-toast.error,.ops-toast.error{border-color:#99414c;background:#391920;color:#ffeef1}
@keyframes system-toast-in{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}
.douyin-ops-shell.right-collapsed{grid-template-columns:246px minmax(0,1fr)}
.douyin-rail-reopen{position:fixed;right:12px;top:50%;z-index:1500;display:grid;place-items:center;gap:5px;padding:10px 7px;border:1px solid #4b3c43;border-radius:9px;background:#1d171a;color:#eee4e8;box-shadow:0 12px 30px rgba(0,0,0,.28);cursor:pointer;transform:translateY(-50%)}
.douyin-rail-reopen b{margin:0;color:#f09aae;font-size:16px}.douyin-rail-reopen span{writing-mode:vertical-rl;font-size:10px;letter-spacing:1px}
.ops-rail-head-actions{display:flex;gap:5px}.ops-rail-head-actions button{padding:4px 6px!important;font-size:9px!important}

/* 2026-10-09 老板反馈：原始客户底表上下留白太多，一屏放不了几行，
   明明能塞更多内容。这里只调"密度"，不动任何字段、不动客户名称原文。
   用追加覆盖的方式写在最后，前面的规则一律不删。 */
.sheet-table-wrap{max-height:calc(100vh - 212px)}
.raw-correction-compact th,.raw-correction-compact td{padding:2px 4px!important;height:25px}
.raw-correction-compact .sheet-cell{height:25px;width:100px;padding:2px 4px;font-size:12px}
.raw-correction-compact [data-col="customerName"] .sheet-cell{height:25px;width:168px;padding:2px 5px}
.raw-correction-compact [data-col="customerName"]{width:168px;min-width:168px;max-width:168px}
.raw-correction-compact .correction-note{width:118px;height:25px}
.raw-correction-compact .evidence-cell{height:25px;min-width:74px}
.raw-correction-compact .evidence-upload,.raw-correction-compact .evidence-view{padding:2px 4px}
.raw-correction-compact [data-col="actions"] button{padding:2px 4px;font-size:11px}
.raw-table-guide{margin:4px 0;padding:5px 9px;gap:9px}
.sheet-table thead th{padding:2px 4px!important}

/* 2026-10-09 老板反馈：原始客户底表上半部分（汇总卡 + 工具条 + 引导条）吃掉近 300px，
   真正能放数据的地方被挤掉。这里只压"外框"，不动任何数据列和内容。 */
.summary-strip{margin:6px 0!important;padding:4px 8px!important;gap:6px!important;min-height:0!important}
.summary-strip>div{padding:4px 10px!important;min-height:0!important}
.summary-strip span{font-size:11px!important;line-height:1.2!important;display:block}
.summary-strip b{font-size:17px!important;line-height:1.25!important}
.section-head{padding:4px 0!important;margin:0 0 4px!important}
.section-head h2{font-size:15px!important;margin:0!important;line-height:1.3!important}
.section-head .hint,.section-head p.hint{font-size:11px!important;margin:2px 0 0!important;line-height:1.25!important}
.base-toolbar{padding:4px 8px!important;margin:4px 0!important;gap:6px!important;flex-wrap:wrap!important}
.base-toolbar b{font-size:13px!important}
.base-toolbar span{font-size:11px!important}
.base-toolbar .toolbar{gap:5px!important;flex-wrap:wrap!important}
.base-toolbar button,.base-toolbar .toolbar button{padding:3px 9px!important;font-size:12px!important;line-height:1.35!important}
.base-toolbar select,.base-toolbar input{height:27px!important;padding:2px 6px!important;font-size:12px!important}
.raw-table-guide{margin:4px 0!important;padding:4px 9px!important;gap:8px!important;font-size:11px!important;line-height:1.3!important}
.raw-table-guide b{font-size:11px!important}
.page-title-bar{padding:4px 0!important;margin:0 0 4px!important;font-size:15px!important}


/* 2026-10-09 老板要求：说明条默认收起；汇总卡/工具条做成苹果那种磨砂玻璃小卡片。 */
.base-source-note{display:block!important;margin:4px 0!important;padding:4px 10px!important;border:1px solid #e7cfa0!important;border-radius:11px!important;background:rgba(255,250,240,.62)!important;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%);color:#5f3b16!important;font-size:11px!important;line-height:1.35!important}
.base-source-note>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;outline:none}
.base-source-note>summary::-webkit-details-marker{display:none}
.base-source-note>summary::after{content:'▾';margin-left:auto;font-size:10px;opacity:.55;transition:transform .15s}
.base-source-note[open]>summary::after{transform:rotate(180deg)}
.base-source-note b{font-size:11.5px!important}
.base-source-note-tip{font-style:normal;font-size:10.5px;opacity:.55}
.base-source-note>span{display:block;margin-top:3px}
.base-source-note[open]{padding-bottom:6px!important}
.summary-strip>div{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.62))!important;border:1px solid rgba(255,255,255,.75)!important;box-shadow:0 6px 16px rgba(31,26,20,.07),inset 0 1px 0 rgba(255,255,255,.9)!important;backdrop-filter:blur(12px) saturate(170%);-webkit-backdrop-filter:blur(12px) saturate(170%);border-radius:12px!important}
.base-toolbar{background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(255,255,255,.58))!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 6px 16px rgba(31,26,20,.06),inset 0 1px 0 rgba(255,255,255,.9)!important;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border-radius:12px!important}


/* 2026-10-09 老板要求：
   ① 小助理快速修正表这块只留一行（标题+按钮同排），副标题收掉；
   ② 上面工具条的字发白看不清 → 提高对比度、加粗；
   ③ 表格里的小方块（下拉、有效/无效、未重复、插入/粘贴）换成和上面一致的磨砂玻璃小卡片。 */
.section-head{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:nowrap!important;overflow:visible!important;padding:2px 0!important;margin:0 0 3px!important}
.section-head h2{flex:0 0 auto;font-size:14px!important;font-weight:700!important;color:#3a2b1c!important;margin:0!important;white-space:nowrap}
.section-head>.hint,.section-head>p.hint{display:none!important}
.base-toolbar{color:#3a2b1c!important}
.base-toolbar,.base-toolbar *{color:#3a2b1c!important;font-weight:600}
.base-toolbar button,.base-toolbar .toolbar button{color:#3a2b1c!important;font-weight:600!important;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.78))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:9px!important;box-shadow:0 3px 8px rgba(31,26,20,.07),inset 0 1px 0 rgba(255,255,255,.95)!important;backdrop-filter:blur(9px) saturate(150%);-webkit-backdrop-filter:blur(9px) saturate(150%)}
.base-toolbar button.primary,.base-toolbar .toolbar button.primary{color:#fff!important;background:linear-gradient(180deg,#b5343a,#8f1d22)!important}
.base-toolbar select,.base-toolbar input{color:#3a2b1c!important;font-weight:600!important;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.78))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:9px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 2px 5px rgba(31,26,20,.05)!important}
#base-save-status,.base-save-status{background:rgba(255,255,255,.85)!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:9px!important;color:#146c2e!important;font-weight:700!important;padding:2px 8px!important}
/* 表格里的小方块 → 玻璃小卡片 */
.raw-correction-compact select.sheet-cell,.raw-correction-compact input.sheet-cell,.raw-correction-compact .correction-input{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.74))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:9px!important;box-shadow:0 2px 6px rgba(31,26,20,.06),inset 0 1px 0 rgba(255,255,255,.96)!important;backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%);height:21px!important;padding:1px 6px!important;margin:2px 0;color:#2f2925!important}
.raw-correction-compact .validity-effective{background:linear-gradient(180deg,rgba(226,248,233,.96),rgba(205,239,217,.86))!important;color:#146c2e!important;font-weight:700!important;border-color:rgba(255,255,255,.85)!important}
.raw-correction-compact .validity-invalid{background:linear-gradient(180deg,rgba(253,230,230,.96),rgba(247,206,206,.86))!important;color:#a11b22!important;font-weight:700!important;border-color:rgba(255,255,255,.85)!important}
.raw-correction-compact .validity-pending{background:linear-gradient(180deg,rgba(253,244,222,.96),rgba(246,231,196,.86))!important;color:#8a5a12!important;font-weight:700!important;border-color:rgba(255,255,255,.85)!important}
.raw-correction-compact .duplicate-status,.raw-correction-compact [data-col="duplicateStatus"] span{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.72))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:999px!important;padding:1px 8px!important;font-size:11px!important;color:#4a4038!important;display:inline-block;margin:2px 4px}
.raw-correction-compact .evidence-upload,.raw-correction-compact .evidence-view{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.74))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:9px!important;box-shadow:0 2px 6px rgba(31,26,20,.06),inset 0 1px 0 rgba(255,255,255,.96)!important;backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%);padding:2px 7px!important;margin:2px 0;color:#2f2925!important}
.raw-correction-compact [data-col="actions"] button{border-radius:8px!important;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.78))!important;border:1px solid rgba(255,255,255,.9)!important;box-shadow:0 2px 5px rgba(31,26,20,.06)!important;color:#3a2b1c!important}
.raw-correction-compact [data-col="actions"] button.danger-link{color:#a11b22!important}


/* 2026-10-09 老板反馈：
   ① 汇总卡上的字发白看不清 → 数字和标签都提对比度；
   ② 工具条要真的只有一行，副标题收掉；
   ③ 工作区（表格）放大，行距再压一点。 */
.summary-strip>div{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,252,247,.88))!important;border:1px solid rgba(214,196,170,.65)!important}
.summary-strip span{color:#6b5c4b!important;font-weight:600!important;font-size:11.5px!important}
.summary-strip b{color:#2b2118!important;font-weight:800!important;font-size:19px!important;text-shadow:0 1px 0 rgba(255,255,255,.9)}
.summary-strip .summary-valid{color:#146c2e!important}
.summary-strip .summary-invalid{color:#a11b22!important}
.summary-strip .summary-duplicate{color:#6b3fa0!important}
/* 工具条：真一行 */
.base-toolbar{flex-wrap:nowrap!important;overflow-x:auto!important;align-items:center!important;padding:3px 8px!important;margin:2px 0 3px!important;gap:6px!important}
.base-toolbar>div:first-child{flex:0 0 auto;display:flex;align-items:center;gap:6px;max-width:260px}
.base-toolbar>div:first-child b{white-space:nowrap;font-size:13px!important}
.base-toolbar>div:first-child span{display:none!important}
.base-toolbar .toolbar{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:5px!important}
.base-toolbar button,.base-toolbar select,.base-toolbar input{white-space:nowrap!important;height:26px!important;padding:2px 8px!important;font-size:12px!important}
/* 工作区放大 + 行距压缩 */
.sheet-table-wrap{max-height:calc(100vh - 148px)!important}
.raw-correction-compact th,.raw-correction-compact td{height:23px!important;padding:1px 3px!important;line-height:1.15!important}
.raw-correction-compact .sheet-cell{height:23px!important;font-size:11.5px!important;padding:1px 5px!important}
.raw-correction-compact [data-col="customerName"] .sheet-cell{height:23px!important}
.raw-correction-compact .correction-note{height:23px!important}
.raw-correction-compact .evidence-cell{height:23px!important}
.raw-correction-compact select.sheet-cell,.raw-correction-compact input.sheet-cell,.raw-correction-compact .correction-input{height:20px!important;border-radius:7px!important}
.raw-correction-compact .evidence-upload,.raw-correction-compact .evidence-view{padding:1px 6px!important;border-radius:7px!important}
.raw-correction-compact [data-col="actions"] button{padding:1px 6px!important;border-radius:7px!important;font-size:11px!important}
.sheet-table thead th{padding:2px 3px!important;font-size:11.5px!important}
.raw-table-guide{margin:2px 0!important;padding:3px 8px!important;font-size:11px!important}


/* 2026-10-09 修正：原始客户底表真正的滚动容器是 .correction-sheet-wrap，
   前面几轮改的 .sheet-table-wrap 根本没作用到它，所以"放大"没生效、下面一直是空的。
   这次直接打在正确容器上：表格吃掉整屏剩余高度，底部不留空带。 */
.correction-sheet-wrap{max-height:calc(100vh - 150px)!important;height:calc(100vh - 150px)!important;overflow:auto!important;border-radius:10px!important;margin:0 0 2px!important}
.correction-sheet-wrap .raw-correction-compact{min-width:max-content!important}
#app>p.hint,#app .correction-sheet-wrap+p.hint{margin:2px 0 0!important;padding:2px 4px!important;font-size:11px!important;line-height:1.25!important;color:#6b5c4b!important}
#app{padding-bottom:0!important}
.page-title-bar{margin:0 0 2px!important}
.raw-drilldown-banner{margin:2px 0!important;padding:3px 8px!important;font-size:11px!important}
.base-source-note{margin:2px 0!important}
.summary-strip{margin:3px 0!important}
.base-toolbar{margin:2px 0!important}
.raw-table-guide{margin:2px 0 3px!important}
/* 客户质量那一列原来是透明方块，跟别的列不统一，一并给它玻璃卡片 */
.raw-correction-compact [data-col="validStatus"] select.sheet-cell{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.74))!important}
.raw-correction-compact [data-col="validStatus"] select.sheet-cell.validity-effective{background:linear-gradient(180deg,rgba(226,248,233,.96),rgba(205,239,217,.86))!important}
.raw-correction-compact [data-col="validStatus"] select.sheet-cell.validity-invalid{background:linear-gradient(180deg,rgba(253,230,230,.96),rgba(247,206,206,.86))!important}


/* 2026-10-09 老板要求：上面（标题）、中间（汇总+工具条+引导）、下面工作区行距，三段一起再压一轮。 */
.page-title-bar{height:26px!important;min-height:0!important;padding:0 10px!important;margin:0 0 2px!important;font-size:14px!important;line-height:26px!important;display:flex!important;align-items:center!important}
.page-title-bar::before,.page-title-bar::after{display:none!important}
.base-source-note{margin:2px 0!important;padding:2px 9px!important;line-height:1.2!important}
.base-source-note>span{margin-top:2px!important}
.summary-strip{padding:2px 6px!important;gap:5px!important;margin:2px 0!important;border-radius:10px!important}
.summary-strip>div{padding:3px 9px!important;min-height:34px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;border-radius:9px!important}
.summary-strip span{font-size:10.5px!important;line-height:1.1!important}
.summary-strip b{font-size:16px!important;line-height:1.15!important}
.base-toolbar{padding:2px 6px!important;margin:2px 0!important;min-height:30px!important;border-radius:10px!important}
.base-toolbar button,.base-toolbar select,.base-toolbar input{height:24px!important;font-size:11.5px!important;padding:1px 7px!important}
.raw-table-guide{padding:2px 8px!important;margin:2px 0!important;font-size:10.5px!important;min-height:22px!important;line-height:1.2!important;border-radius:8px!important}
.correction-sheet-wrap{max-height:calc(100vh - 118px)!important;height:calc(100vh - 118px)!important;margin:0!important}
.raw-correction-compact th,.raw-correction-compact td{height:20px!important;padding:0 3px!important;line-height:1.1!important}
.raw-correction-compact .sheet-cell{height:20px!important;font-size:11px!important;padding:0 5px!important}
.raw-correction-compact [data-col="customerName"] .sheet-cell{height:20px!important}
.raw-correction-compact .correction-note{height:20px!important}
.raw-correction-compact .evidence-cell{height:20px!important;min-height:20px!important}
.raw-correction-compact select.sheet-cell,.raw-correction-compact input.sheet-cell,.raw-correction-compact .correction-input{height:18px!important;border-radius:6px!important;margin:1px 0!important}
.raw-correction-compact .evidence-upload,.raw-correction-compact .evidence-view{padding:0 6px!important;height:18px!important;line-height:18px!important;border-radius:6px!important}
.raw-correction-compact [data-col="actions"] button{padding:0 6px!important;height:18px!important;line-height:18px!important;border-radius:6px!important;font-size:10.5px!important}
.sheet-table thead th{padding:1px 3px!important;font-size:11px!important;height:24px!important}
.correction-sheet-wrap+p.hint{margin:1px 0 0!important;padding:1px 4px!important;font-size:10.5px!important;line-height:1.2!important}


/* 2026-10-09 老板要求：
   ① 顶部"小助理修正工作区"标题、"点开看说明"、"按这四步处理"三条都不要；
   ② 详情/删除的方框太大 → 按字高来，只比字高一点；
   ③ 表头这一排按原配色做成苹果磨砂玻璃小卡片；
   ④ 列宽按该列最长文字自适应。 */
.page-title-bar{display:none!important}
.base-source-note{display:none!important}
.raw-table-guide{display:none!important}
.correction-sheet-wrap{max-height:calc(100vh - 96px)!important;height:calc(100vh - 96px)!important}
/* 详情/删除：贴字高 */
.raw-correction-compact [data-col="actions"]{width:auto!important;min-width:0!important;padding:0 4px!important}
.raw-correction-compact [data-col="actions"] button{padding:0 5px!important;height:16px!important;line-height:16px!important;font-size:10.5px!important;border-radius:5px!important;margin:0 2px!important;min-width:0!important}
/* 表头：保留原配色 + 玻璃质感 */
.raw-correction-compact thead th{backdrop-filter:blur(10px) saturate(170%);-webkit-backdrop-filter:blur(10px) saturate(170%);border:1px solid rgba(255,255,255,.28)!important;border-radius:9px 9px 6px 6px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 10px rgba(0,0,0,.16)!important;text-shadow:0 1px 1px rgba(0,0,0,.35);padding:2px 5px!important;height:26px!important;font-size:11.5px!important}
.raw-correction-compact thead th>select,.raw-correction-compact thead th .th-filter{background:transparent!important;color:inherit!important;border:0!important}
/* 列宽按内容自适应 */
.raw-correction-compact{table-layout:auto!important;width:max-content!important}
.raw-correction-compact th,.raw-correction-compact td{width:auto!important;min-width:0!important;max-width:none!important;white-space:nowrap!important}
.raw-correction-compact select.sheet-cell,.raw-correction-compact input.sheet-cell,.raw-correction-compact .correction-input{width:auto!important;min-width:64px!important;max-width:none!important;padding:0 4px!important;text-overflow:ellipsis}
.raw-correction-compact [data-col="customerName"]{width:auto!important;min-width:120px!important;max-width:none!important}
.raw-correction-compact [data-col="customerName"] .sheet-cell{width:auto!important;min-width:120px!important;padding:0 6px!important}
.raw-correction-compact [data-col="statDate"]{width:auto!important;min-width:78px!important}
.raw-correction-compact [data-col="addedBy"]{width:auto!important;min-width:110px!important;max-width:none!important}
.raw-correction-compact [data-col="duplicateStatus"]{width:auto!important;min-width:78px!important}
.raw-correction-compact [data-col="validStatus"]{width:auto!important;min-width:64px!important}
.raw-correction-compact [data-col="invalidEvidence"]{width:auto!important;min-width:70px!important}
.raw-correction-compact [data-col="autoOwner"],.raw-correction-compact [data-col="finalOwner"]{width:auto!important;min-width:52px!important}


/* 2026-10-09 老板反馈：唯一归属线、是否重复两列太宽。这两列的宽度是被表头文字撑开的，
   这里把这两列收窄，表头允许折成两行，内容（一线销售 / 未重复）仍完整显示。 */
.raw-correction-compact [data-col="attributionDepartment"]{width:74px!important;min-width:74px!important;max-width:74px!important}
.raw-correction-compact [data-col="duplicateStatus"]{width:70px!important;min-width:70px!important;max-width:70px!important}
.raw-correction-compact th[data-col="attributionDepartment"],
.raw-correction-compact th[data-col="duplicateStatus"]{white-space:normal!important;line-height:1.05!important;padding:1px 3px!important;font-size:11px!important}
.raw-correction-compact [data-col="attributionDepartment"] select.sheet-cell{width:72px!important;min-width:72px!important;max-width:72px!important;padding:0 2px!important;font-size:11px!important}
.raw-correction-compact [data-col="duplicateStatus"] select.sheet-cell,
.raw-correction-compact [data-col="duplicateStatus"] span{width:68px!important;min-width:68px!important;max-width:68px!important;font-size:11px!important}
.raw-correction-compact [data-col="duplicateStatus"] select.sheet-cell{padding:0 2px!important}
/* 顺带把同为"短内容"的几列也收一下，别再被表头撑开 */
.raw-correction-compact [data-col="flowType"]{width:104px!important;min-width:104px!important;max-width:104px!important}
.raw-correction-compact [data-col="validStatus"]{width:68px!important;min-width:68px!important;max-width:68px!important}
.raw-correction-compact [data-col="invalidEvidence"]{width:72px!important;min-width:72px!important;max-width:72px!important}


/* 2026-10-09 修正上一轮压过头的地方：
   ① 页面标题被压没了 → 恢复显示，但做成一行小标题，不占高度；
   ② 是否重复列被压到 70px，内容"同名 31 条，请选择"显示不下变成乱码 → 放宽到能容下最长内容；
   ③ 表头折行后不要被裁掉。 */
.page-title-bar{display:flex!important;align-items:center!important;height:24px!important;min-height:24px!important;padding:0 10px!important;margin:0 0 2px!important;font-size:14px!important;font-weight:700!important;line-height:24px!important;color:#3a2b1c!important;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.62))!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:10px!important;box-shadow:0 4px 12px rgba(31,26,20,.06),inset 0 1px 0 rgba(255,255,255,.9)!important;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%)}
.correction-sheet-wrap{max-height:calc(100vh - 122px)!important;height:calc(100vh - 122px)!important}
/* 是否重复：按最长内容"同名 31 条，请选择"给宽 */
.raw-correction-compact [data-col="duplicateStatus"]{width:112px!important;min-width:112px!important;max-width:112px!important}
.raw-correction-compact [data-col="duplicateStatus"] select.sheet-cell{width:110px!important;min-width:110px!important;max-width:110px!important;font-size:11px!important;padding:0 3px!important;text-overflow:ellipsis}
.raw-correction-compact th[data-col="duplicateStatus"]{white-space:nowrap!important;font-size:11px!important;padding:1px 4px!important}
/* 唯一归属线：内容只有"一线销售"，74px 够了，表头不折行也不再裁字 */
.raw-correction-compact th[data-col="attributionDepartment"]{white-space:nowrap!important;font-size:11px!important;padding:1px 3px!important}
.raw-correction-compact [data-col="attributionDepartment"] select.sheet-cell{width:72px!important;min-width:72px!important;max-width:72px!important}
/* 表头一律不裁字 */
.raw-correction-compact thead th{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}
.raw-correction-compact thead th>span,.raw-correction-compact thead th>b{overflow:visible!important}


/* 2026-10-09 表头修：那一行每列配色不一，有的列里还嵌了一个像输入框的下拉，
   叠在标题文字上把字压成"乱码"。这里统一成同一种磨砂玻璃标题卡片，
   并把表头里所有内嵌控件的底色/边框/箭头全部去掉，文字白色加投影，保证看得清。 */
.raw-correction-compact thead th{
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.14)),rgba(104,58,38,.74)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.40)!important;
  border-radius:8px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 3px 9px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(10px) saturate(165%);-webkit-backdrop-filter:blur(10px) saturate(165%);
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
  font-weight:600!important;font-size:11.5px!important;
  white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important
}
.raw-correction-compact thead th *{
  background:transparent!important;border:0!important;box-shadow:none!important;
  color:inherit!important;-webkit-appearance:none!important;appearance:none!important;
  text-shadow:inherit!important;font-weight:inherit!important;font-size:inherit!important
}
.raw-correction-compact thead th select{
  width:auto!important;min-width:0!important;max-width:none!important;
  height:auto!important;line-height:normal!important;padding:0!important;margin:0!important;
  display:inline!important;vertical-align:baseline!important
}
.raw-correction-compact thead th::before,
.raw-correction-compact thead th::after{background:transparent!important;border:0!important;box-shadow:none!important}


/* 2026-10-09 老板要求：把表头里那个像输入框的筛选控件直接去掉，别再叠在标题上。 */
.raw-correction-compact thead select,
.raw-correction-compact thead input,
.raw-correction-compact thead .th-filter,
.raw-correction-compact thead .header-filter,
.raw-correction-compact thead details,
.raw-correction-compact thead summary{display:none!important;visibility:hidden!important;width:0!important;height:0!important;padding:0!important;margin:0!important;border:0!important}
.raw-correction-compact thead th{white-space:nowrap!important;overflow:visible!important}


/* 2026-10-09 老板要求：把表头里那个白框（▼ 筛选按钮）彻底去掉；
   是否重复列的长文案改成短的"同名×N"，列宽收窄，不再像输入框。 */
.raw-correction-compact thead button,
.raw-correction-compact thead .raw-header-filter,
.raw-correction-compact thead .raw-filterable-header button{display:none!important;visibility:hidden!important;width:0!important;height:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.raw-correction-compact thead .raw-filterable-header{display:inline!important;background:transparent!important;border:0!important;box-shadow:none!important}
.raw-correction-compact [data-col="duplicateStatus"]{width:92px!important;min-width:92px!important;max-width:92px!important}
.raw-correction-compact [data-col="duplicateStatus"] select.sheet-cell{width:90px!important;min-width:90px!important;max-width:90px!important;font-size:11px!important;padding:0 3px!important;text-align:center!important}
.raw-correction-compact .duplicate-clear{display:inline-block!important;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.72))!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:999px!important;padding:0 8px!important;font-size:11px!important;color:#4a4038!important;line-height:18px!important;margin:1px 0!important}


/* 2026-10-09 老板要求：表头 ▼ 筛选按钮恢复，但做小、做干净，不再压住标题；
   同时把之前收得过窄的几列放宽，给"标题+▼"留出位置。 */
.raw-correction-compact thead button,
.raw-correction-compact thead .raw-header-filter{
  display:inline-flex!important;visibility:visible!important;
  width:auto!important;height:15px!important;min-width:15px!important;
  padding:0 3px!important;margin:0 0 0 3px!important;
  border-radius:4px!important;border:1px solid rgba(255,255,255,.40)!important;
  background:rgba(255,255,255,.20)!important;box-shadow:none!important;
  color:#fff!important;font-size:8px!important;line-height:13px!important;
  vertical-align:middle!important;opacity:.92!important;align-items:center!important;justify-content:center!important
}
.raw-correction-compact thead button:hover,
.raw-correction-compact thead .raw-header-filter:hover{background:rgba(255,255,255,.42)!important;opacity:1!important}
.raw-correction-compact thead .raw-filterable-header{
  display:inline-flex!important;align-items:center!important;gap:2px!important;
  background:transparent!important;border:0!important;box-shadow:none!important;white-space:nowrap!important
}
.raw-correction-compact thead th{white-space:nowrap!important;overflow:visible!important;padding:1px 5px!important}
/* 把收得过窄的列放宽一点，容下"标题+▼" */
.raw-correction-compact [data-col="attributionDepartment"]{width:96px!important;min-width:96px!important;max-width:96px!important}
.raw-correction-compact [data-col="duplicateStatus"]{width:104px!important;min-width:104px!important;max-width:104px!important}
.raw-correction-compact [data-col="duplicateStatus"] select.sheet-cell{width:102px!important;min-width:102px!important;max-width:102px!important}
.raw-correction-compact [data-col="validStatus"]{width:86px!important;min-width:86px!important;max-width:86px!important}
.raw-correction-compact [data-col="invalidEvidence"]{width:90px!important;min-width:90px!important;max-width:90px!important}
.raw-correction-compact [data-col="flowType"]{width:120px!important;min-width:120px!important;max-width:120px!important}
.raw-correction-compact [data-col="statDate"]{width:96px!important;min-width:96px!important;max-width:96px!important}
.raw-correction-compact [data-col="actions"]{width:76px!important;min-width:76px!important;max-width:76px!important}


/* 2026-10-09 表头白框最终处理：不管它是哪个元素（筛选按钮 / 下拉 / 缩放把手 / 悬浮层），
   只要在原始客户底表的表头里，一律剥掉底色、边框、阴影、圆角，只保留文字和 ▼。
   保留 ▼ 的点击筛选功能。 */
.raw-correction-compact thead th *{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  outline:0!important;
  filter:none!important;
  text-shadow:inherit!important
}
.raw-correction-compact thead th .raw-header-filter,
.raw-correction-compact thead th button{
  color:#fff!important;
  opacity:.85!important;
  font-size:9px!important;
  padding:0 2px!important;
  margin-left:2px!important;
  cursor:pointer!important
}
.raw-correction-compact thead th .raw-header-filter:hover,
.raw-correction-compact thead th button:hover{opacity:1!important;transform:translateY(-1px)}
/* 表头自带的列宽拖拽把手在真机上会渲染成一个白色圆角块，直接不显示 */
.raw-correction-compact thead .column-resize-grip,
.raw-correction-compact thead .column-resize-grip::after{display:none!important;background:transparent!important;border:0!important;width:0!important}


/* 2026-10-09 老板要求：
   ① "小助理修正工作区"标题条去掉；
   ② 详情、日期这一整排表头都带筛选 ▼；
   ③ ▼ 绝对定位贴在格子右边缘，不参与宽度计算 —— 列宽保持不变。 */
.page-title-bar{display:none!important}
.correction-sheet-wrap{max-height:calc(100vh - 96px)!important;height:calc(100vh - 96px)!important}
.raw-correction-compact thead th{position:relative!important}
.raw-correction-compact thead .raw-header-filter,
.raw-correction-compact thead button{
  position:absolute!important;right:1px!important;top:50%!important;transform:translateY(-50%)!important;
  display:inline-flex!important;visibility:visible!important;align-items:center!important;justify-content:center!important;
  width:11px!important;height:11px!important;min-width:11px!important;max-width:11px!important;
  padding:0!important;margin:0!important;
  background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;
  color:#fff!important;font-size:7px!important;line-height:11px!important;opacity:.85!important;cursor:pointer!important
}
.raw-correction-compact thead .raw-header-filter:hover,
.raw-correction-compact thead button:hover{opacity:1!important}
.raw-correction-compact thead .raw-header-filter.is-active{color:#ffd967!important;opacity:1!important}
.raw-correction-compact thead .raw-filterable-header{display:inline!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}


/* 2026-10-09 修正两处：
   ① 大标题是页面顶部 main>header 里的 #page-title，不是 .page-title-bar，前面藏错了元素；
      用 :has() 只在"原始客户底表/小助理修正工作区"这一页把它藏掉，其它页面不受影响；
   ② 表头筛选要真的出现在整排（详情/日期/...），且不改变列宽。 */
main:has(#app .raw-correction-compact) > header{display:none!important}
.correction-sheet-wrap{max-height:calc(100vh - 40px)!important;height:calc(100vh - 40px)!important}
.raw-correction-compact thead th{position:relative!important;padding-right:14px!important}
.raw-correction-compact thead .raw-header-filter,
.raw-correction-compact thead button{
  position:absolute!important;right:2px!important;top:50%!important;transform:translateY(-50%)!important;
  display:inline-flex!important;visibility:visible!important;align-items:center!important;justify-content:center!important;
  width:12px!important;height:12px!important;min-width:12px!important;max-width:12px!important;
  padding:0!important;margin:0!important;
  background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;
  color:#fff!important;font-size:8px!important;line-height:12px!important;opacity:.9!important;cursor:pointer!important
}
.raw-correction-compact thead .raw-header-filter:hover,
.raw-correction-compact thead button:hover{opacity:1!important;color:#ffd967!important}
.raw-correction-compact thead .raw-header-filter.is-active{color:#ffd967!important;opacity:1!important}
.raw-correction-compact thead .raw-filterable-header{display:inline!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}


/* 2026-10-09 真正的原因：v20261009-36 那条
     .raw-correction-compact thead .raw-filterable-header button{display:none!important}
   选择器权重比我后面的"恢复"更高，所以 ▼ 一直没渲染出来。
   这里用更高权重把 ▼ 强制恢复，并绝对定位不占列宽。 */
.raw-correction-compact thead th span.raw-filterable-header button.raw-header-filter,
.raw-correction-compact thead th .raw-filterable-header>button{
  display:inline-flex!important;
  visibility:visible!important;
  position:absolute!important;
  right:2px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:12px!important;height:12px!important;min-width:12px!important;max-width:12px!important;
  padding:0!important;margin:0!important;
  background:transparent!important;background-image:none!important;
  border:0!important;box-shadow:none!important;border-radius:0!important;
  color:#fff!important;font-size:8px!important;line-height:12px!important;
  opacity:.9!important;cursor:pointer!important;overflow:visible!important
}
.raw-correction-compact thead th span.raw-filterable-header button.raw-header-filter:hover{
  opacity:1!important;color:#ffd967!important
}
.raw-correction-compact thead th span.raw-filterable-header{display:inline!important;padding-right:0!important}


/* 2026-10-09 老板要求：业绩底表用原始客户底表那套粉色胶囊下拉；
   收入类型列宽度不变，但"一线销售"四个字要完整显示。 */
.performance-sheet select.sheet-cell,
.performance-sheet .performance-line-select{
  appearance:none!important;-webkit-appearance:none!important;
  background-color:#ffe2e2!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23b42318' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 4px center!important;
  background-size:9px 9px!important;
  border:0!important;
  border-radius:999px!important;
  color:#b42318!important;
  font-weight:700!important;
  font-size:11px!important;
  line-height:20px!important;
  height:22px!important;
  padding:0 15px 0 5px!important;
  text-align:center!important;
  text-align-last:center!important;
  box-shadow:0 1px 2px rgba(180,35,24,.10)!important
}
.performance-sheet .performance-line-select{width:88px!important;min-width:88px!important;max-width:88px!important;padding:0 15px 0 5px!important}
.performance-sheet select.sheet-cell.line-second{background-color:#e0efff!important;color:#175cd3!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23175cd3' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.performance-sheet select.sheet-cell.line-third{background-color:#e9e3ff!important;color:#6938b8!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%236938b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.performance-sheet select.sheet-cell.line-fourth{background-color:#dcf7e8!important;color:#087443!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23087443' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.performance-sheet select.sheet-cell.line-other{background-color:#eee!important;color:#555!important}


/* 2026-10-09 客户总控右侧新增「当前流程位置」区块：定位出来的标灰、确认过的标绿。 */
.cc-ops-position{margin:6px 0 8px;padding:7px 10px;border-radius:10px;font-size:11.5px;line-height:1.5;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.74));
  border:1px solid rgba(255,255,255,.85);box-shadow:0 2px 8px rgba(31,26,20,.06),inset 0 1px 0 rgba(255,255,255,.95)}
.cc-ops-position.is-positioned{border-color:#e6dcc8;background:linear-gradient(180deg,#fbfaf7,#f4f1ea)}
.cc-ops-position.is-confirmed{border-color:#bfe3cd;background:linear-gradient(180deg,#f2fbf5,#e8f7ee)}
.cc-ops-position-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}
.cc-ops-position-head b{font-size:12px;color:#3a2b1c}
.cc-ops-position-head span{font-size:10.5px;padding:1px 7px;border-radius:999px;background:#ece7de;color:#7a6b5b}
.cc-ops-position.is-confirmed .cc-ops-position-head span{background:#dff3e7;color:#146c2e}
.cc-ops-position-line em{font-style:normal;color:#8a7a68;margin-right:4px}
.cc-ops-position-meta{color:#7a6b5b;font-size:11px}
.cc-ops-position-last{margin-top:3px;color:#453a2e;background:rgba(255,255,255,.7);border-radius:7px;padding:3px 7px;word-break:break-all}
.cc-ops-position-note{margin-top:3px;color:#9a8b7a;font-size:10.5px}
.cc-ops-position-origin{color:#7b5c24}
.cc-ops-next-card{border-color:#c9d9ef;background:linear-gradient(180deg,#f6faff,#edf5ff)}
.cc-ops-boundary{display:flex;align-items:flex-start;gap:6px;margin:5px 0;padding:5px 8px;border:1px solid #dbe7f6;border-radius:8px;background:linear-gradient(180deg,rgba(247,251,255,.98),rgba(238,246,255,.9));color:#49627f;font-size:10.5px;line-height:1.45}
.cc-ops-boundary b{flex:none;padding:1px 6px;border-radius:999px;background:#dcecff;color:#22598e;font-size:10px}
.cc-ops-boundary.is-compact{margin-top:4px}
.cc-ops-step-rail{display:flex;align-items:center;gap:4px;min-width:0;padding:4px 7px;border:1px solid rgba(120,104,84,.13);border-radius:8px;background:rgba(255,255,255,.66)}
.cc-ops-step-rail span{display:inline-flex;align-items:center;gap:3px;min-width:0;color:#9a8b7a;font-size:10px;white-space:nowrap}
.cc-ops-step-rail span i{width:6px;height:6px;border-radius:50%;background:#d8d0c7;box-shadow:0 0 0 2px rgba(216,208,199,.22)}
.cc-ops-step-rail span.is-done{color:#6a8b74}.cc-ops-step-rail span.is-done i{background:#78ad88;box-shadow:0 0 0 2px rgba(120,173,136,.18)}
.cc-ops-step-rail span.is-current{color:#7e1c2a;font-weight:800}.cc-ops-step-rail span.is-current i{background:#b02a3b;box-shadow:0 0 0 2px rgba(176,42,59,.16)}
.cc-ops-step-rail em{margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7b6b5c;font-size:10px;font-style:normal}
.cc-queue-filters .cc-ops-stage-filter{display:inline-flex;align-items:center;gap:4px;flex:none;padding:0 0 0 3px;color:#7a6762;font-size:10px;white-space:nowrap}
.cc-queue-filters .cc-ops-stage-filter select{max-width:120px;height:24px;padding:0 5px;border:1px solid #e4d9ce;border-radius:999px;background:#fff;color:#6f5c57;font:inherit;font-size:10px}
.cc-queue-filters .cc-corp-filter{display:inline-flex;align-items:center;gap:4px;flex:none;padding:0 0 0 3px;color:#7a6762;font-size:10px;white-space:nowrap}
.cc-queue-filters .cc-corp-filter select{max-width:150px;height:24px;padding:0 5px;border:1px solid #e4d9ce;border-radius:999px;background:#fff;color:#6f5c57;font:inherit;font-size:10px}
@media(max-width:900px){.cc-ops-step-rail span b{display:none}.cc-ops-step-rail span{flex:none}.cc-queue-filters .cc-ops-stage-filter select{max-width:108px}}
@media(max-width:900px){.cc-queue-filters .cc-corp-filter select{max-width:132px}}

/* 2026-10-13 company live dashboard: dense, readable, one-screen overview. */
.company-dashboard-loading,
.company-live-error{display:grid;place-items:center;align-content:center;gap:8px;min-height:calc(100vh - 130px);border:1px solid rgba(255,255,255,.72);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(246,239,230,.72));box-shadow:0 18px 45px rgba(56,38,24,.08);color:#3c332d}
.company-dashboard-loading b,.company-live-error b{font-size:18px}
.company-dashboard-loading span,.company-live-error span{color:#7a6d64;font-size:12px}
.company-live-error button{margin-top:6px}
.company-live-dashboard{display:grid;gap:8px;min-height:calc(100vh - 116px);color:#2f2925}
.company-live-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,auto);align-items:center;gap:20px;min-width:0;padding:8px 2px 10px;border:0;border-bottom:1px solid rgba(73,52,41,.11);border-radius:0;background:transparent;box-shadow:none}
.company-live-title{min-width:0}
.company-live-title span,.company-live-title b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.company-live-title span{color:#8b2f34;font-size:10px;font-weight:750;letter-spacing:.04em}
.company-live-title b{margin-top:3px;color:#29231f;font-size:15px;font-weight:650;letter-spacing:0}
.company-live-controls{display:flex;align-items:center;gap:8px;min-width:0}
.company-live-date-controls{display:inline-flex;align-items:center;gap:6px;min-width:0}
.company-live-controls input{width:118px;height:28px;padding:0 7px;border:1px solid rgba(90,67,53,.11);border-radius:5px;background:#faf9f8;color:#352e29;font-size:10.5px;outline:none}
.company-live-controls input:focus{border-color:rgba(139,47,52,.36);background:#fff;box-shadow:0 0 0 2px rgba(139,47,52,.07)}
.company-live-controls button{height:28px;width:28px;padding:0;border:1px solid rgba(78,54,42,.11);border-radius:5px;background:#faf9f8;color:#5b4c43;font-size:14px;font-weight:500;cursor:pointer}
.company-live-controls button:hover{border-color:rgba(139,47,52,.28);background:#fff;color:#8b2f34}
.company-segmented{display:inline-flex;padding:2px;border:1px solid rgba(75,54,43,.08);border-radius:6px;background:#f5f3f1}
.company-segmented button{width:auto;height:24px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:#75665c;font-size:10px;font-weight:650;box-shadow:none}
.company-segmented button.active{background:#fff;color:#8b2f34;box-shadow:0 1px 3px rgba(75,49,34,.09)}
.company-segmented.compact button{height:24px;padding:0 8px;font-size:10px}
.company-live-meta{display:flex;align-items:center;justify-content:flex-end;min-width:0}
.company-live-meta time{color:#8d8178;font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}
.company-douyin-panel{display:grid;gap:10px;min-width:0;padding:12px 14px;border:1px solid rgba(73,52,41,.10);border-radius:8px;background:#fff;box-shadow:0 3px 12px rgba(58,40,26,.045)}
.company-douyin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.company-douyin-head>div:first-child{min-width:0}
.company-douyin-head span{color:#8b2f34;font-size:9.5px;font-weight:750;letter-spacing:.04em}
.company-douyin-head h2{margin:2px 0 0;color:#29231f;font-size:15px;font-weight:700}
.company-douyin-head p{margin:3px 0 0;color:#91847b;font-size:10px}
.company-douyin-status{display:flex;align-items:center;gap:12px;padding-top:3px;color:#776a61;font-size:10px;white-space:nowrap}
.company-douyin-status span{display:inline-flex;align-items:center;gap:5px;color:inherit;font-weight:600;letter-spacing:0}
.company-douyin-status i{width:6px;height:6px;border-radius:50%;background:#b78331}
.company-douyin-status .good i{background:#278a58}
.company-douyin-metrics{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}
.company-douyin-metrics article{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid #eee9e5;border-radius:6px;background:#fbfaf9}
.company-douyin-metrics span{color:#85786f;font-size:9.5px}
.company-douyin-metrics b{color:#2d2723;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}
.company-douyin-metrics small{overflow:hidden;color:#9b8f87;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.company-douyin-foot{display:flex;align-items:center;gap:9px;min-width:0;color:#84776e;font-size:9.5px}
.company-douyin-foot>b{color:#8b2f34;font-size:9.5px}
.company-douyin-foot>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.company-douyin-foot>strong{margin-left:auto;color:#5f524a;font-size:9.5px;font-weight:650;white-space:nowrap}
.company-douyin-foot button{height:25px;padding:0 9px;border:1px solid rgba(139,47,52,.16);border-radius:5px;background:#fff;color:#8b2f34;font-size:9.5px;font-weight:650;cursor:pointer}
.company-douyin-empty{display:flex;align-items:center;gap:8px;min-height:52px;padding:10px;border:1px dashed #e5ddd8;border-radius:6px;color:#8e8178;font-size:10px}
.company-douyin-empty b{color:#4b4039;font-size:11px}
.company-section-nav{position:sticky;top:0;z-index:3;display:flex;gap:5px;overflow:auto;padding:5px;border:1px solid rgba(255,255,255,.72);border-radius:11px;background:rgba(255,255,255,.82);box-shadow:0 4px 14px rgba(54,38,27,.05);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.company-section-nav button{flex:none;height:28px;padding:0 12px;border:1px solid rgba(86,61,47,.10);border-radius:7px;background:rgba(255,255,255,.74);color:#51453d;font-size:10px;font-weight:750;cursor:pointer}
.company-section-nav button:hover{background:#fff;color:#8c2d33}
.company-pulse-grid{display:grid;grid-template-columns:repeat(8,minmax(128px,1fr));gap:7px;min-width:0}
.company-pulse-grid article{position:relative;display:grid;align-content:start;gap:3px;min-width:0;min-height:78px;padding:9px 10px 8px;overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.64));box-shadow:0 6px 16px rgba(54,38,27,.055),inset 0 1px 0 rgba(255,255,255,.95)}
.company-pulse-grid article.primary{background:linear-gradient(145deg,rgba(139,46,53,.94),rgba(91,34,41,.96));border-color:rgba(255,255,255,.16);color:#fff}
.company-pulse-grid article.positive{background:linear-gradient(160deg,rgba(238,250,242,.94),rgba(255,255,255,.68));border-color:rgba(50,150,88,.18)}
.company-pulse-grid article.negative,.company-pulse-grid article.warning{background:linear-gradient(160deg,rgba(255,244,241,.96),rgba(255,255,255,.68));border-color:rgba(184,61,54,.18)}
.company-pulse-grid span{overflow:hidden;color:#786d65;font-size:9.5px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.company-pulse-grid b{overflow:hidden;color:#2d2723;font-size:17px;line-height:1.08;text-overflow:ellipsis;white-space:nowrap}
.company-pulse-grid small{display:block;overflow:hidden;color:#8b7f76;font-size:9px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.company-pulse-grid article.primary span,.company-pulse-grid article.primary b,.company-pulse-grid article.primary small{color:#fff}
.company-pulse-grid article.primary small{color:rgba(255,255,255,.72)}
.company-pulse-grid article>i{position:absolute;left:10px;right:10px;bottom:6px;height:2px;border-radius:2px;background:rgba(255,255,255,.18)}
.company-pulse-grid article>i:after{display:block;width:var(--progress);height:100%;border-radius:2px;background:#fff;content:""}
.live-dot{display:inline-block;width:6px;height:6px;margin:0 2px 0 4px;border-radius:50%;vertical-align:middle}
.live-dot:first-child{margin-left:0}
.live-dot.good{background:#2b9a5c}
.live-dot.warn{background:#d18a19}
.live-dot.danger{background:#c83b3e}
.company-live-middle,.company-live-lower{display:grid;grid-template-columns:minmax(320px,var(--company-split-left,65%)) 10px minmax(320px,1fr);gap:0;min-width:0;min-height:0}
.company-pane-resizer{position:relative;align-self:stretch;min-width:10px;border:0;background:transparent;cursor:col-resize;touch-action:none}
.company-pane-resizer:before{position:absolute;top:12px;bottom:12px;left:4px;width:2px;border-radius:999px;background:rgba(126,96,78,.18);content:"";transition:background .15s,box-shadow .15s}
.company-pane-resizer:hover:before,.company-dashboard-resizing .company-pane-resizer:before{background:#b24a52;box-shadow:0 0 0 3px rgba(178,74,82,.12)}
.company-dashboard-resizing,.company-dashboard-resizing *{cursor:col-resize!important;user-select:none!important}
.company-story-grid{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(420px,1.35fr) minmax(260px,.8fr);gap:8px;min-width:0}
.company-live-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;overflow:hidden;border:1px solid rgba(255,255,255,.70);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.89),rgba(255,255,255,.66));box-shadow:0 8px 24px rgba(52,37,27,.065),inset 0 1px 0 rgba(255,255,255,.95)}
.company-live-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:8px 10px;border-bottom:1px solid rgba(92,68,54,.08);background:rgba(255,255,255,.48)}
.company-live-panel-head>div{min-width:0}
.company-live-panel-head h2{margin:0;color:#3a302a;font-size:12px}
.company-live-panel-head p{margin:2px 0 0;overflow:hidden;color:#8b8077;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}
.company-live-panel-head>b{color:#8e2f36;font-size:13px}
.company-live-panel-head>span{padding:3px 7px;border-radius:999px;background:rgba(34,121,74,.10);color:#257348;font-size:9px;font-weight:800}
.company-live-panel-head>span.danger{background:rgba(191,52,58,.10);color:#b3323a}
.company-trend-bars{display:flex;align-items:end;gap:4px;min-width:0;min-height:0;overflow:hidden;padding:8px 10px 7px;border-bottom:1px solid rgba(90,65,50,.05)}
.company-trend-day{display:grid;grid-template-rows:14px minmax(4px,1fr) 12px 12px;align-items:end;justify-items:center;gap:2px;flex:1;min-width:16px;height:100%;color:#7d7168;font-size:8px}
.company-trend-day span{max-width:100%;overflow:hidden;color:#9a8f86;font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}
.company-trend-day i{width:min(22px,70%);min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#c9565b,#8d2d35);box-shadow:0 3px 8px rgba(128,40,47,.14)}
.company-trend-day small{color:#6f6259;font-size:8.5px}
.company-trend-day em{color:#9c8f85;font-size:7.5px;font-style:normal}
.company-alert-list{display:grid;align-content:start;gap:5px;min-height:0;overflow:auto;padding:7px}
.company-alert-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 7px;border:1px solid rgba(92,68,54,.09);border-radius:9px;background:rgba(255,255,255,.62)}
.company-alert-list article>i{width:7px;height:7px;border-radius:50%;background:#bd7b1d}
.company-alert-list article.danger>i{background:#c73b3f}
.company-alert-list article.good>i{background:#29905a}
.company-alert-list article.neutral>i{background:#7b7068}
.company-alert-list article div{min-width:0}
.company-alert-list b,.company-alert-list span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.company-alert-list b{color:#413730;font-size:10px}
.company-alert-list span{margin-top:2px;color:#8b7f76;font-size:9px}
.company-alert-list small{color:#8a7d74;font-size:8.5px}
.company-health-list,.company-action-list{display:grid;align-content:start;gap:6px;min-height:0;overflow:auto;padding:7px}
.company-health-list article{display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,.7fr) 30px;align-items:center;gap:7px;padding:6px 7px;border:1px solid rgba(92,68,54,.08);border-radius:8px;background:rgba(255,255,255,.56)}
.company-health-list article>div:first-child{min-width:0}.company-health-list b,.company-health-list span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-health-list b{color:#40362f;font-size:10px}.company-health-list span{margin-top:1px;color:#94877d;font-size:8.5px}.company-health-list strong{color:#8e2f36;font-size:12px;text-align:right}
.company-health-track{height:6px;overflow:hidden;border-radius:999px;background:rgba(87,65,52,.09)}.company-health-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#d49a38,#2c955c)}
.company-action-list article{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(90px,.35fr);align-items:center;gap:7px;padding:7px;border:1px solid rgba(92,68,54,.08);border-radius:9px;background:rgba(255,255,255,.58)}
.company-action-list article>div{min-width:0}.company-action-list b,.company-action-list span{display:block}.company-action-list b{color:#40362f;font-size:10px}.company-action-list span{margin-top:2px;color:#877a71;font-size:8.8px;line-height:1.35}.company-action-list small{color:#8a7d74;font-size:8.5px;text-align:right}.priority{padding:3px 5px;border-radius:6px;background:rgba(184,128,30,.12);color:#9b640d;font-size:8.5px;font-weight:800}.priority.high{background:rgba(191,52,58,.11);color:#b3323a}
.company-focus-list{display:grid;gap:8px;margin:0;padding:12px 12px 12px 32px;color:#51453d;font-size:10px;line-height:1.55}.company-focus-list li::marker{color:#a33b43;font-weight:800}
.company-live-empty{display:grid;place-items:center;align-content:center;gap:4px;min-height:130px;color:#81766e;text-align:center}
.company-live-empty b{color:#4d423b;font-size:12px}
.company-live-empty span{max-width:340px;font-size:9.5px;line-height:1.5}
.company-live-table{min-width:0;min-height:0;overflow:auto;padding:0 6px 6px}
.company-live-table,.company-alert-list,.company-health-list,.company-action-list,.company-section-nav,.company-trend-bars{scrollbar-width:thin;scrollbar-color:rgba(154,74,75,.58) rgba(88,64,52,.08)}
.company-live-table::-webkit-scrollbar,.company-alert-list::-webkit-scrollbar,.company-health-list::-webkit-scrollbar,.company-action-list::-webkit-scrollbar,.company-section-nav::-webkit-scrollbar,.company-trend-bars::-webkit-scrollbar{width:8px;height:8px;display:block}
.company-live-table::-webkit-scrollbar-track,.company-alert-list::-webkit-scrollbar-track,.company-health-list::-webkit-scrollbar-track,.company-action-list::-webkit-scrollbar-track,.company-section-nav::-webkit-scrollbar-track,.company-trend-bars::-webkit-scrollbar-track{background:rgba(88,64,52,.07);border-radius:999px}
.company-live-table::-webkit-scrollbar-thumb,.company-alert-list::-webkit-scrollbar-thumb,.company-health-list::-webkit-scrollbar-thumb,.company-action-list::-webkit-scrollbar-thumb,.company-section-nav::-webkit-scrollbar-thumb,.company-trend-bars::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:rgba(154,74,75,.62);background-clip:padding-box}
.company-live-lower .company-live-table{max-height:470px}
.company-live-table table{width:100%;min-width:960px;border-collapse:separate;border-spacing:0;font-size:9.5px}
.company-live-table thead{position:sticky;top:0;z-index:1}
.company-live-table th{padding:6px 6px;border-bottom:1px solid rgba(93,69,54,.10);background:rgba(252,249,245,.96);color:#7c6f66;font-size:8.5px;text-align:left;white-space:nowrap}
.company-live-table td{padding:5px 6px;border-bottom:1px solid rgba(93,69,54,.055);color:#4d443e;white-space:nowrap}
.company-live-table tr:hover td{background:rgba(255,255,255,.58)}
.company-live-table td b{color:#352d28}
.company-live-table td small{display:block;margin-top:1px;color:#9a8e85;font-size:8px}
.company-live-table td.good{color:#237348;font-weight:800}
.company-live-table td.warn{color:#9b640d;font-weight:800}
.company-status{display:inline-block;padding:2px 5px;border-radius:999px;background:rgba(38,128,77,.10);color:#267449;font-size:8.5px;font-weight:750}
.company-status.muted{background:rgba(87,73,64,.08);color:#81756c}
.quality-count{display:inline-block;min-width:20px;margin-right:3px;padding:1px 4px;border-radius:5px;background:rgba(44,139,83,.10);color:#247047;font-weight:800;text-align:center}
.quality-count.danger{background:rgba(186,54,59,.10);color:#ad3036}
.quality-count.warn{background:rgba(192,126,24,.12);color:#95600d}
.management-action{display:inline-block;padding:2px 6px;border-radius:6px;background:rgba(87,65,52,.08);color:#6f6259;font-size:8.5px;font-weight:800}.management-action.reward{background:rgba(40,139,83,.12);color:#247047}.management-action.coach{background:rgba(187,71,48,.11);color:#b0442f}.management-action.keep{background:rgba(30,112,190,.10);color:#1f699f}
.company-target-summary{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.company-target-summary span{padding:3px 7px;border-radius:999px;background:rgba(87,65,52,.07);color:#74685f;font-size:9px}.company-target-summary button{height:26px;padding:0 9px;font-size:9.5px}.company-target-table{max-height:330px}
.company-target-control{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(130px,.55fr));gap:7px;padding:8px 10px;border-bottom:1px solid rgba(92,68,54,.08);background:rgba(255,255,255,.44)}
.company-target-control label,.company-target-control>div{display:grid;gap:3px;min-width:0;padding:6px 8px;border:1px solid rgba(92,68,54,.08);border-radius:9px;background:rgba(255,255,255,.58)}
.company-target-control span{color:#857970;font-size:9px}.company-target-control b{color:#382f2a;font-size:13px}.company-target-control input{width:100%;height:27px;box-sizing:border-box;padding:0 7px;border:1px solid rgba(91,67,52,.14);border-radius:7px;background:#fff;color:#3c332d;font-size:11px}
.target-inline{width:92px!important;height:24px!important;margin-left:5px;padding:0 5px!important;font-size:9.5px!important}.target-missing{color:#b36b14;font-size:9px;font-weight:750}.company-target-details{border-top:1px solid rgba(92,68,54,.07)}.company-target-details>summary{padding:7px 10px;color:#776a61;font-size:9.5px;font-weight:750;cursor:pointer}.company-target-details .company-target-table{max-height:280px}
.channel-matrix-panel,.channel-validity-panel{margin-bottom:10px}
.channel-matrix-panel .table-wrap{max-height:480px;overflow:auto}
.channel-sales-matrix{min-width:760px;width:100%;border-collapse:separate;border-spacing:0;font-size:11px}
.channel-sales-matrix th,.channel-sales-matrix td{padding:7px 8px;border-bottom:1px solid rgba(79,57,45,.08);text-align:center;white-space:nowrap}
.channel-sales-matrix th{position:sticky;top:0;z-index:1;background:rgba(71,47,48,.94);color:#fff;font-size:10px}
.channel-sales-matrix td:first-child,.channel-sales-matrix th:first-child{position:sticky;left:0;z-index:2;text-align:left;background:rgba(255,252,248,.98)}
.channel-sales-matrix tr.is-unmarked td{background:rgba(255,246,214,.74)}
.channel-sales-matrix tr.is-unmarked td:first-child{background:rgba(255,244,199,.96)}
.channel-sales-matrix tr.matrix-total td{border-top:2px solid rgba(144,48,54,.24);background:rgba(247,239,233,.98);font-weight:800}
.channel-owner-rule{display:flex;flex-wrap:wrap;gap:6px;padding:7px 10px;border-top:1px solid rgba(79,57,45,.07);color:#7f7269;font-size:9.5px}
.channel-owner-rule span{padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(97,70,54,.08)}
.channel-validity-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:7px;padding:8px 10px}
.channel-validity-grid article{display:grid;gap:3px;padding:8px 9px;border:1px solid rgba(97,70,54,.09);border-radius:9px;background:rgba(255,255,255,.62)}
.channel-validity-grid span{color:#81746b;font-size:9px}.channel-validity-grid b{color:#3e342e;font-size:16px}.channel-validity-grid small{color:#9a8d84;font-size:8.5px}
.channel-unmarked-count{color:#b3323a!important;background:rgba(193,49,57,.09)}
@media(max-width:1500px){.company-pulse-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.company-live-panel{min-height:220px}.company-story-grid{grid-template-columns:1fr 1fr}.company-story-grid .focus{grid-column:1/-1}.company-live-lower,.company-live-middle{grid-template-columns:1fr}.company-pane-resizer{display:none}.company-live-dashboard .company-live-table{max-height:360px}}
@media(max-width:900px){.company-live-toolbar{grid-template-columns:1fr;gap:9px}.company-live-controls,.company-live-date-controls,.company-live-meta{justify-content:flex-start;flex-wrap:wrap}.company-douyin-head,.company-douyin-foot{align-items:flex-start;flex-wrap:wrap}.company-douyin-status{padding-top:0}.company-douyin-metrics{grid-template-columns:1fr 1fr}.company-douyin-foot>strong{margin-left:0}.company-pulse-grid,.company-story-grid,.company-target-control,.channel-validity-grid{grid-template-columns:1fr}.company-trend-bars{overflow-x:auto}.company-trend-day{min-width:34px}.company-section-nav{top:0}}

.business-settings-page{display:grid;gap:12px;max-width:1320px;color:#2f2925}
.business-settings-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid rgba(73,52,41,.10);border-radius:8px;background:#fff}
.business-settings-intro>div:first-child{max-width:640px}
.business-settings-intro>div:first-child>span{color:#8b2f34;font-size:10px;font-weight:750;letter-spacing:.05em}
.business-settings-intro h2{margin:4px 0 5px;color:#29231f;font-size:19px}
.business-settings-intro p{margin:0;color:#877a71;font-size:11px;line-height:1.6}
.business-settings-summary{display:flex;gap:24px;white-space:nowrap}
.business-settings-summary span{display:grid;gap:4px;color:#91847b;font-size:9.5px}
.business-settings-summary b{color:#3e342e;font-size:14px}
.business-settings-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px}
.business-settings-card{padding:16px;border:1px solid rgba(73,52,41,.10);border-radius:8px;background:#fff}
.business-settings-card.accent{border-top:2px solid #8b2f34}
.business-settings-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px;padding:0;border:0;background:transparent!important;color:#302925!important}
.business-settings-card>header span{color:#8b2f34!important;font-size:9px;font-weight:750;letter-spacing:.05em}
.business-settings-card h2{margin:3px 0 0;color:#302925!important;font-size:14px}
.business-settings-card>header small{padding-top:2px;color:#9b8f87!important;font-size:9px;white-space:nowrap}
.business-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.business-field-grid.compact{grid-template-columns:1fr 1fr}
.business-field{display:grid;gap:5px;min-width:0}
.business-field>span{color:#4b4039;font-size:10.5px;font-weight:650}
.business-field>div{display:flex;align-items:center;gap:7px;min-width:0}
.business-field input{width:100%;height:32px;padding:0 9px;border:1px solid #e2dad4;border-radius:5px;background:#fbfaf9;color:#302925;font:inherit;font-size:12px;outline:none}
.business-field input:focus{border-color:rgba(139,47,52,.36);background:#fff;box-shadow:0 0 0 2px rgba(139,47,52,.07)}
.business-field em{flex:none;color:#9c8f86;font-size:9.5px;font-style:normal}
.business-field small{color:#a0948c;font-size:9px;line-height:1.45}
.business-settings-more{border:1px solid rgba(73,52,41,.10);border-radius:8px;background:#fff}
.business-settings-more>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:0 16px;cursor:pointer;list-style:none}
.business-settings-more>summary::-webkit-details-marker{display:none}
.business-settings-more>summary>div{display:grid;gap:3px}
.business-settings-more>summary b{color:#342d28;font-size:12px}
.business-settings-more>summary span{color:#998c83;font-size:9.5px}
.business-settings-more>summary em{padding:4px 8px;border-radius:4px;background:#f6f2ef;color:#807168;font-size:9px;font-style:normal}
.business-settings-more[open]>summary{border-bottom:1px solid #eee8e3}
.business-settings-more .table-wrap{padding:10px 12px 12px}
.business-settings-advanced{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:16px;padding:14px 16px}
.assessment-grid{display:grid;grid-template-columns:repeat(4,minmax(82px,1fr));gap:8px}
.assessment-grid>div{display:grid;gap:5px;min-width:0}
.assessment-grid span,.assessment-grid small{color:#887b72;font-size:9px}
.assessment-grid input{width:100%;height:30px;padding:0 7px;border:1px solid #e2dad4;border-radius:5px;background:#fbfaf9;font:inherit;font-size:11px}
@media(max-width:1100px){.business-settings-layout,.business-settings-advanced{grid-template-columns:1fr}.business-settings-intro{align-items:flex-start;flex-direction:column}.business-settings-summary{width:100%;justify-content:space-between}.assessment-grid{grid-template-columns:repeat(3,minmax(82px,1fr))}}
@media(max-width:700px){.business-field-grid,.business-field-grid.compact,.assessment-grid{grid-template-columns:1fr}.business-settings-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.business-settings-more>summary{align-items:flex-start;padding-top:12px;padding-bottom:12px}}
@media(max-width:900px){.sidebar{width:82px}main{width:calc(100% - 82px);margin-left:82px;padding-left:12px;padding-right:12px}}
/* 账号私信聚合：Vcat只读元数据 + 本系统正文抓取 */
.douyin-message-columns{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:12px;
  margin-top:12px;
}
.douyin-message-columns>section{
  min-width:0;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.douyin-message-list{
  display:flex;
  flex-direction:column;
  max-height:420px;
  overflow:auto;
  scrollbar-width:thin;
}
.douyin-message-list article{
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border-top:1px solid rgba(255,255,255,.06);
}
.douyin-message-list article:first-child{border-top:0}
.douyin-message-list article>div{min-width:0;display:flex;flex-direction:column;gap:3px}
.douyin-message-list article b{font-size:13px;color:var(--text-strong,#f7f8fb);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.douyin-message-list article span{font-size:12px;line-height:1.45;color:var(--text,#cfd4df);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-message-list article small{font-size:11px;color:var(--muted,#8c95a6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.douyin-message-list article i{
  width:26px;height:26px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-style:normal;font-weight:700;
  background:rgba(80,160,255,.16);color:#77b7ff;
}
.douyin-message-list article i.outbound{background:rgba(96,211,148,.14);color:#73d79a}
.douyin-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.douyin-switch input{position:absolute;opacity:0;pointer-events:none}
.douyin-switch>span{
  width:36px;height:20px;border-radius:999px;background:rgba(255,255,255,.12);
  position:relative;transition:background .18s ease;
}
.douyin-switch>span::after{
  content:"";position:absolute;width:16px;height:16px;border-radius:50%;
  left:2px;top:2px;background:#fff;transition:transform .18s ease;
  box-shadow:0 1px 5px rgba(0,0,0,.25);
}
.douyin-switch input:checked+span{background:rgba(80,180,255,.75)}
.douyin-switch input:checked+span::after{transform:translateX(16px)}
@media(max-width:1100px){
  .douyin-message-columns{grid-template-columns:1fr}
  .douyin-message-list{max-height:320px}
}

/* 2026-10-13 私信聚合：两栏聊天工作台，局部更新，避免整页闪。 */
.douyin-message-console{display:flex;flex-direction:column;gap:10px;min-height:calc(100vh - 126px);border-color:#2b3139;background:#14171b}
.douyin-message-head{margin-bottom:0}
.douyin-message-head h2{font-size:17px}
.douyin-message-summary-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:6px 2px 0;color:#8e99a8;font-size:10px}
.douyin-message-summary-line span{white-space:nowrap}.douyin-message-summary-line b{color:#f0f3f7;font-size:12px}.douyin-message-summary-line .is-online{color:#76d59c}
.douyin-message-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 9px;border:1px solid #2b3139;border-radius:8px;background:#191d22}
.douyin-message-toolbar>label{display:flex;align-items:center;gap:6px;min-width:0;color:#96a0ae;font-size:10px;white-space:nowrap}
.douyin-message-toolbar select,.douyin-message-toolbar input{height:30px;box-sizing:border-box;padding:0 8px;border:1px solid #343b45;border-radius:7px;background:#101317;color:#e7ebf0;font:inherit;font-size:11px}
.douyin-message-toolbar select{max-width:180px}.douyin-message-toolbar input[type="number"]{width:58px}
.douyin-message-toolbar button{height:30px;padding:0 10px;border:1px solid #383f49;border-radius:7px;background:#20252b;color:#dce2e9;font-size:10px;font-weight:700;cursor:pointer}
.douyin-message-toolbar button:hover{border-color:#5b6572;background:#272d35}
.douyin-message-monitor .douyin-switch{display:inline-flex}
.douyin-message-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:9px;flex:1;min-height:540px;min-width:0}
.douyin-conversation-pane,.douyin-message-thread{min-width:0;min-height:0;overflow:hidden;border:1px solid #2b3139;border-radius:8px;background:#181c21}
.douyin-conversation-pane{display:grid;grid-template-rows:auto minmax(0,1fr)}
.douyin-conversation-search{display:flex;align-items:center;gap:8px;padding:9px;border-bottom:1px solid #2b3139}
.douyin-conversation-search input{width:100%;min-width:0;height:32px;box-sizing:border-box;padding:0 10px;border:1px solid #343b45;border-radius:8px;background:#101317;color:#edf1f5;font:inherit;font-size:11px}
.douyin-conversation-search input:focus{outline:0;border-color:#8a3d44;box-shadow:0 0 0 2px rgba(181,52,65,.14)}
.douyin-conversation-search span{flex:none;color:#7f8996;font-size:9px}
.douyin-conversation-list{display:grid;align-content:start;gap:4px;min-height:0;overflow:auto;padding:6px;scrollbar-width:thin}
.douyin-conversation-item{display:grid!important;grid-template-columns:22px minmax(0,1fr) 22px;align-items:center;gap:7px;width:100%;padding:8px!important;border:1px solid transparent!important;border-radius:8px!important;background:transparent!important;color:#dfe5ec!important;text-align:left!important;cursor:pointer}
.douyin-conversation-item:hover{background:#20252b!important;border-color:#303741!important}
.douyin-conversation-item.active{background:#282127!important;border-color:#6f343d!important}
.douyin-conversation-unread{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:transparent;font-size:9px;font-weight:800}
.douyin-conversation-unread.has-unread{background:#b83c48;color:#fff}
.douyin-conversation-item>div{min-width:0}
.douyin-conversation-item b,.douyin-conversation-item small,.douyin-conversation-item em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-conversation-item b{color:#f0f3f6;font-size:11px}
.douyin-conversation-item small{margin-top:3px;color:#aab3bf;font-size:10px}
.douyin-conversation-item em{margin-top:2px;color:#727d8b;font-size:9px;font-style:normal}
.douyin-conversation-item>i{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#2b3038;color:#aeb8c4;font-size:9px;font-style:normal;font-weight:800}
.douyin-message-thread{display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#15191e}
.douyin-message-thread-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid #2b3139;background:#191d22}
.douyin-message-thread-head>div:first-child{min-width:0}.douyin-message-thread-head span{color:#9c7480;font-size:9px;font-weight:800}.douyin-message-thread-head h2{margin:3px 0;color:#f1f4f7;font-size:16px}.douyin-message-thread-head p{margin:0;color:#8994a1;font-size:10px}
.douyin-message-stream{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:auto;padding:14px;background:#12161a;scrollbar-width:thin}
.douyin-message-stream>article{display:flex;width:100%;margin:0}
.douyin-chat-message{display:grid;gap:3px;max-width:min(78%,720px);margin:0;padding:8px 10px;border:1px solid #303741;border-radius:8px;background:#20252b}
.douyin-chat-message.customer{margin-right:auto;border-color:#333b46;background:#20252b}
.douyin-chat-message.agent{margin-left:auto;border-color:#743741;background:#54262c}
.douyin-chat-message span{color:#8994a1;font-size:9px}.douyin-chat-message b{color:#eef2f6;font-size:12px;font-weight:500;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.douyin-chat-message small{color:#778290;font-size:9px}
.douyin-message-composer{display:grid;gap:7px;padding:10px 12px;border-top:1px solid #2b3139;background:#191d22}
.douyin-message-compose-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.douyin-message-compose-row button{height:30px;padding:0 12px;border:1px solid #8d3741;border-radius:7px;background:#8d3741;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.douyin-message-composer textarea{width:100%;min-height:74px;max-height:180px;box-sizing:border-box;padding:9px 10px;border:1px solid #343b45;border-radius:8px;background:#101317;color:#edf1f5;font:inherit;font-size:11px;line-height:1.55;resize:vertical}
.douyin-message-composer textarea:focus{outline:0;border-color:#8a3d44;box-shadow:0 0 0 2px rgba(181,52,65,.14)}
.douyin-message-empty,.ops-customer-state{display:grid;place-items:center;align-content:center;gap:5px;min-height:140px;padding:18px;color:#8c98a6;text-align:center}
.douyin-message-empty b,.ops-customer-state b{color:#dde3e9;font-size:12px}.douyin-message-empty span,.ops-customer-state span{font-size:10px;line-height:1.55}
.ops-customer-state button{margin-top:4px;padding:7px 10px;border:1px solid #3b434e;border-radius:7px;background:#242a32;color:#dfe5ec;font-size:10px;cursor:pointer}

/* 客户工作台：固定骨架，列表局部键更新，详情按客户切换。 */
.ops-customer-workbench{height:calc(100vh - 126px);min-height:620px;gap:7px}
.ops-customer-kpis{gap:6px}
.ops-customer-kpis article{padding:7px 9px!important;border-radius:8px!important;box-shadow:none!important}
.ops-customer-kpis span{font-size:9px!important}.ops-customer-kpis b{margin:2px 0 1px!important;font-size:17px!important}.ops-customer-kpis small{font-size:8px!important}
.ops-customer-tabs{gap:4px;padding:5px!important;border-radius:8px!important}.ops-customer-tabs button{padding:6px 9px!important;border-radius:6px!important;font-size:10px!important}
.ops-customer-grid{grid-template-columns:minmax(250px,300px) minmax(420px,1fr) minmax(235px,275px);gap:7px!important}
.ops-customer-queue,.ops-customer-thread,.ops-automation-panel{border-radius:8px!important;box-shadow:none!important}
.ops-customer-queue{gap:4px!important;padding:6px!important}
.ops-customer-queue>button.ops-customer-row{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:3px 8px;padding:7px 8px!important;border:1px solid transparent!important;border-radius:7px!important;background:transparent!important;text-align:left!important}
.ops-customer-queue>button.ops-customer-row:hover{background:#f5f7fa!important}
.ops-customer-queue>button.ops-customer-row.active{border-color:#d3a8ac!important;background:#fdf1f2!important;box-shadow:inset 3px 0 #a93642}
.ops-customer-queue .ops-lane{grid-column:1;justify-self:start}
.ops-customer-queue time{grid-column:2;justify-self:end;color:#9a8d86;font-size:8px;white-space:nowrap}
.ops-customer-queue b{grid-column:1/-1;font-size:11px!important}.ops-customer-queue small{grid-column:1/-1;font-size:9px!important;line-height:1.35}.ops-customer-queue em{grid-column:1/-1;font-size:8px!important}
.ops-customer-thread>header{padding:10px 12px!important}.ops-customer-thread>header h2{font-size:16px!important}.ops-customer-thread>header p{font-size:9px!important}
.ops-customer-source{gap:3px!important;padding:8px 12px!important}.ops-customer-source p{font-size:10px!important}.ops-customer-source small{font-size:8px!important}
.ops-chat-timeline{gap:6px!important;padding:10px 12px!important}.ops-chat-timeline article{max-width:80%!important;padding:7px 9px!important;border-radius:8px!important}.ops-chat-timeline p{font-size:10px!important;white-space:pre-wrap;overflow-wrap:anywhere}
.ops-customer-compose{padding:8px 10px!important}.ops-customer-compose textarea{min-height:68px;font-size:10px!important}.ops-customer-next{font-size:9px!important}
.ops-automation-panel>section{padding:9px!important}.ops-automation-panel label{font-size:9px!important}.ops-capacity-row{padding:6px!important}
.ops-customer-kpis>.ops-customer-state{grid-column:1/-1;min-height:58px;padding:8px 10px}
.ops-customer-state.compact{min-height:44px;padding:7px 9px;text-align:left;place-items:start}

@media(max-width:1250px){
  .douyin-message-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr)}
  .ops-customer-grid{grid-template-columns:240px minmax(380px,1fr) 240px}
}
@media(max-width:1000px){
  .douyin-message-layout{grid-template-columns:250px minmax(0,1fr)}
  .ops-customer-grid{grid-template-columns:230px minmax(360px,1fr)}
  .ops-automation-panel{display:none}
}
@media(max-width:760px){
  .douyin-message-layout{grid-template-columns:1fr;min-height:0}
  .douyin-conversation-pane{max-height:260px}.douyin-message-thread{min-height:520px}
  .douyin-message-summary-line{gap:8px}.douyin-message-toolbar>label{width:100%}
  .ops-customer-workbench{height:auto;min-height:0}.ops-customer-kpis{grid-template-columns:1fr 1fr}.ops-customer-grid{grid-template-columns:1fr}.ops-customer-queue{max-height:240px}.ops-customer-thread{min-height:520px}
}

/* 2026-10-14 粉丝互动：小V猫式二级层级，底层只接真实运营接口。 */
.ops-workspace-active .douyin-ops-shell.engagement-mode{
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:58px minmax(0,1fr);
}
.ops-workspace-active .douyin-ops-shell.engagement-mode .douyin-workspace{
  grid-column:1/-1;
  grid-row:2;
  height:100%;
  min-height:0;
  overflow:hidden;
}
.douyin-workspace.engagement-workspace{display:block}
.douyin-engagement-shell{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:10px;
  height:100%;
  min-height:0;
  color:#26303b;
}
.douyin-engagement-nav{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid #e5e8ed;
  border-radius:12px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 28px rgba(28,40,58,.055);
}
.douyin-engagement-nav>header{height:auto!important;margin:0!important;padding:12px 13px!important;border:0!important;border-bottom:1px solid #edf0f3!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;text-align:left!important}
.douyin-engagement-nav>header b,.douyin-engagement-nav>header span{display:block;white-space:nowrap}
.douyin-engagement-nav>header b{color:#222a33;font-size:15px}
.douyin-engagement-nav>header span{margin-top:4px;color:#8b949f;font-size:9px;line-height:1.45}
.douyin-engagement-nav>section{padding:8px 7px;border-bottom:1px solid #f0f2f4}
.douyin-engagement-nav h3{margin:0 6px 5px;color:#9aa1aa;font-size:9px;font-weight:850;letter-spacing:.08em}
.douyin-engagement-nav button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:8px 8px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#56606c;
  font:inherit;
  font-size:11px;
  text-align:left;
  cursor:pointer;
}
.douyin-engagement-nav button:hover{background:#f5f7fa;color:#202832}
.douyin-engagement-nav button.active{background:#fff0f2;color:#b52e3d;font-weight:800;box-shadow:inset 3px 0 #d93b4b}
.douyin-engagement-nav button span{white-space:nowrap}
.douyin-engagement-nav button i{color:#aeb5be;font-size:15px;font-style:normal}
.douyin-engagement-nav>footer{margin-top:auto;padding:10px 12px;border-top:1px solid #edf0f3;background:#fbfcfd}
.douyin-engagement-nav>footer span,.douyin-engagement-nav>footer small{display:block}
.douyin-engagement-nav>footer span{color:#59636e;font-size:10px;font-weight:800}
.douyin-engagement-nav>footer small{margin-top:3px;color:#9aa2ab;font-size:8px}
.douyin-engagement-main{
  display:flex;
  flex-direction:column;
  width:auto;
  height:100%!important;
  max-height:100%!important;
  margin-left:0!important;
  box-sizing:border-box;
  min-width:0;
  min-height:0;
  overflow:hidden;
}
body.ops-workspace-active .douyin-engagement-main>header.douyin-engagement-head,
.douyin-engagement-head{
  display:flex!important;
  height:auto;
  display:flex;
  align-items:flex-start;
  gap:14px;
  flex:none;
  padding:12px 14px;
  border:1px solid #e5e8ed;
  border-radius:12px;
  background:rgba(255,255,255,.95);
  box-shadow:0 8px 24px rgba(28,40,58,.045);
}
.douyin-engagement-head>div:first-child{min-width:0;flex:1}
.douyin-engagement-head>div:first-child>span{color:#b33846;font-size:9px;font-weight:850}
.douyin-engagement-head h2{margin:3px 0 2px;color:#202831;font-size:18px}
.douyin-engagement-head p{margin:0;color:#7d8792;font-size:10px;line-height:1.45}
.douyin-engagement-head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.douyin-engagement-head-actions>button,
.douyin-engagement-account select,
.douyin-engagement-filterbar button,
.douyin-engagement-filterbar select,
.douyin-engagement-filterbar input,
.douyin-engagement-batchbar button,
.douyin-engagement-form-card button,
.douyin-engagement-compose button,
.douyin-engagement-row-actions button{
  height:30px;
  box-sizing:border-box;
  padding:0 9px;
  border:1px solid #dce1e7;
  border-radius:8px;
  background:#fff;
  color:#4e5965;
  font:inherit;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
}
.douyin-engagement-head-actions>button:hover,
.douyin-engagement-filterbar button:hover,
.douyin-engagement-batchbar button:hover,
.douyin-engagement-form-card button:hover,
.douyin-engagement-compose button:hover,
.douyin-engagement-row-actions button:hover{border-color:#bcc5cf;background:#f7f9fb}
.douyin-engagement-head-actions>button.primary,
.douyin-engagement-filterbar button.primary,
.douyin-engagement-batchbar button.primary,
.douyin-engagement-form-card button.primary,
.douyin-engagement-compose button.primary{ border-color:#d33b4a;background:#d33b4a;color:#fff }
.douyin-engagement-row-actions button.danger,.douyin-engagement-batchbar button.danger{border-color:#ecc9cd;color:#b32f3a;background:#fff7f7}
.douyin-engagement-account{display:flex;align-items:center;gap:5px;color:#8a939d;font-size:9px;white-space:nowrap}
.douyin-engagement-account select{min-width:150px;max-width:240px;height:30px}
.douyin-engagement-status{flex:none;padding:4px 7px;border-radius:999px;background:#f3f5f7;color:#8b949e;font-size:9px;white-space:nowrap}
#douyin-engagement-content{min-height:0;flex:1;overflow:auto;padding-top:10px;scrollbar-width:thin}
.douyin-engagement-loading,.douyin-engagement-empty,.douyin-engagement-unavailable,.douyin-engagement-error{
  display:grid;
  place-items:center;
  align-content:center;
  gap:5px;
  min-height:180px;
  padding:20px;
  border:1px solid #e5e8ed;
  border-radius:12px;
  background:rgba(255,255,255,.92);
  color:#7f8994;
  text-align:center;
}
.douyin-engagement-loading span{width:30px;height:30px;border:3px solid #f0d9dc;border-top-color:#d33b4a;border-radius:50%;animation:douyin-engagement-spin .8s linear infinite}
@keyframes douyin-engagement-spin{to{transform:rotate(360deg)}}
.douyin-engagement-empty b,.douyin-engagement-unavailable b,.douyin-engagement-error b,.douyin-engagement-loading b{color:#27313b;font-size:12px}
.douyin-engagement-empty span,.douyin-engagement-unavailable span,.douyin-engagement-error span,.douyin-engagement-loading small{max-width:540px;color:#89929c;font-size:10px;line-height:1.55}
.douyin-engagement-unavailable code{max-width:90%;padding:5px 8px;border-radius:7px;background:#f4f6f8;color:#7d8792;font-size:9px;overflow-wrap:anywhere}
.douyin-engagement-unavailable button,.douyin-engagement-error button{margin-top:3px;padding:7px 11px;border:1px solid #d33b4a;border-radius:8px;background:#d33b4a;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.douyin-engagement-stats{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:7px;margin-bottom:8px}
.douyin-engagement-stats article{display:grid;gap:2px;padding:8px 10px;border:1px solid #e5e8ed;border-radius:9px;background:rgba(255,255,255,.94);box-shadow:0 4px 14px rgba(28,40,58,.035)}
.douyin-engagement-stats article[data-tone="good"]{border-color:#cbe9d7;background:#f8fdf9}
.douyin-engagement-stats article[data-tone="danger"]{border-color:#f0d0d3;background:#fffafa}
.douyin-engagement-stats span{color:#8d96a0;font-size:9px}.douyin-engagement-stats b{color:#222c36;font-size:17px}
.douyin-engagement-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,300px);gap:10px;min-height:0}
.douyin-engagement-split{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:10px;min-height:0}
.douyin-engagement-split.automation{grid-template-columns:minmax(340px,430px) minmax(0,1fr)}
.douyin-engagement-list-panel,.douyin-engagement-detail-panel,.douyin-engagement-form-card{border:1px solid #e5e8ed;border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 8px 24px rgba(28,40,58,.045)}
.douyin-engagement-list-panel{min-width:0;min-height:0;overflow:hidden}
.douyin-engagement-detail-panel{padding:13px;color:#4e5965}
.douyin-engagement-detail-panel header{padding-bottom:10px;border-bottom:1px solid #eef1f3}
.douyin-engagement-detail-panel header span{color:#b33846;font-size:9px;font-weight:850}.douyin-engagement-detail-panel h3{margin:4px 0;color:#27313b;font-size:15px}.douyin-engagement-detail-panel header p{margin:0;color:#8b949e;font-size:9px}
.douyin-engagement-detail-panel section{padding:10px 0;border-bottom:1px solid #eef1f3}.douyin-engagement-detail-panel section>span{color:#919aa4;font-size:9px}.douyin-engagement-detail-panel section p{margin:5px 0 0;color:#4f5a65;font-size:11px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.douyin-engagement-inline-send{display:grid!important;gap:7px}
.douyin-engagement-inline-send textarea{width:100%;min-height:62px;box-sizing:border-box;padding:8px;border:1px solid #dce1e7;border-radius:8px;background:#fff;color:#46515c;font:inherit;font-size:10px;line-height:1.5;resize:vertical}
.douyin-engagement-inline-send>div{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.douyin-engagement-inline-send button{height:28px;padding:0 9px;border:1px solid #dce1e7;border-radius:8px;background:#fff;color:#4f5964;font-size:10px;font-weight:800;cursor:pointer}
.douyin-engagement-inline-send button.primary{border-color:#d33b4a;background:#d33b4a;color:#fff}
.douyin-engagement-detail-panel dl{display:grid;gap:7px;margin:10px 0}.douyin-engagement-detail-panel dl>div{display:flex;justify-content:space-between;gap:10px;font-size:10px}.douyin-engagement-detail-panel dt{color:#929ba5}.douyin-engagement-detail-panel dd{margin:0;color:#4e5965;text-align:right;overflow-wrap:anywhere}.douyin-engagement-detail-panel a{color:#b33846}
.douyin-engagement-filterbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px;border-bottom:1px solid #edf0f3;background:#fcfdfe}
.douyin-engagement-filterbar.compact{padding:8px}.douyin-engagement-filterbar label{display:flex;align-items:center;gap:5px;color:#8c959f;font-size:9px;white-space:nowrap}.douyin-engagement-filterbar label.search{flex:1;min-width:160px}.douyin-engagement-filterbar label.search input{width:100%}.douyin-engagement-filterbar input,.douyin-engagement-filterbar select{height:30px;min-width:80px;box-sizing:border-box;padding:0 8px;border:1px solid #dce1e7;border-radius:8px;background:#fff;color:#46515c;font:inherit;font-size:10px}.douyin-engagement-filterbar input:focus,.douyin-engagement-filterbar select:focus{outline:0;border-color:#d99aa2;box-shadow:0 0 0 2px rgba(211,59,74,.1)}
.douyin-engagement-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px 8px;color:#7e8791;font-size:9px}.douyin-engagement-list-head b{color:#28323c;font-size:11px}
.douyin-engagement-table-wrap{max-height:calc(100vh - 280px);overflow:auto;scrollbar-width:thin}
.douyin-engagement-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:9.5px}
.douyin-engagement-table th{position:sticky;top:0;z-index:1;padding:7px 8px;border-top:1px solid #edf0f3;border-bottom:1px solid #e5e8ed;background:#fbfcfd;color:#8b949e;font-size:8.5px;text-align:left;white-space:nowrap}
.douyin-engagement-table td{padding:8px;border-bottom:1px solid #f0f2f4;color:#566170;vertical-align:top}
.douyin-engagement-table tbody tr{cursor:pointer}.douyin-engagement-table tbody tr:hover{background:#fafbfc}.douyin-engagement-table tbody tr.active{background:#fff7f8;box-shadow:inset 3px 0 #d33b4a}.douyin-engagement-table td b{display:block;max-width:320px;color:#313b45;font-weight:650;white-space:normal;overflow-wrap:anywhere}.douyin-engagement-table td:first-child b{max-width:150px}.douyin-engagement-table input[type="checkbox"]{accent-color:#d33b4a}
.douyin-engagement-row-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.douyin-engagement-row-actions button{height:25px;padding:0 6px;font-size:9px}.douyin-engagement-row-actions button.danger{border-color:#ecc9cd;color:#b32f3a;background:#fff7f7}
.douyin-engagement-badge{display:inline-block;max-width:105px;padding:2px 6px;border-radius:999px;background:#f0f2f4;color:#77818b;font-size:8.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.douyin-engagement-badge.good{background:#eaf8ef;color:#277348}.douyin-engagement-badge.warn{background:#fff5df;color:#98610d}.douyin-engagement-badge.danger{background:#fff0f1;color:#b52e3d}
.douyin-engagement-batchbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid #edf0f3;background:#fff}.douyin-engagement-batchbar label{display:flex;align-items:center;gap:5px;color:#66717c;font-size:9px}.douyin-engagement-batchbar span{margin-left:auto;color:#919aa4;font-size:9px}
.douyin-engagement-task-list,.douyin-engagement-plan-list{display:grid;align-content:start;gap:6px;max-height:calc(100vh - 300px);overflow:auto;padding:8px}.douyin-engagement-task-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:9px;border:1px solid #e9edf1;border-radius:9px;background:#fff;cursor:pointer}.douyin-engagement-task-list article:hover,.douyin-engagement-plan-list article:hover{border-color:#d9e0e6;background:#fcfdfe}.douyin-engagement-task-list article.active,.douyin-engagement-plan-list article.active{border-color:#efc3c8;background:#fff8f8}.douyin-engagement-task-list article>div{min-width:0}.douyin-engagement-task-list article b,.douyin-engagement-task-list article span,.douyin-engagement-task-list article small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-engagement-task-list article b{color:#303a44;font-size:10px}.douyin-engagement-task-list article span,.douyin-engagement-task-list article small{margin-top:3px;color:#8a949e;font-size:9px}
.douyin-engagement-plan-list article{padding:10px;border:1px solid #e9edf1;border-radius:10px;background:#fff;cursor:pointer}.douyin-engagement-plan-list article.active{border-color:#efc3c8;background:#fff8f8}.douyin-engagement-plan-list header,.douyin-engagement-plan-list footer{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.douyin-engagement-plan-list header>div{min-width:0}.douyin-engagement-plan-list header b,.douyin-engagement-plan-list header span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-engagement-plan-list header b{color:#303a44;font-size:11px}.douyin-engagement-plan-list header span{margin-top:3px;color:#8b949e;font-size:9px}.douyin-engagement-plan-list p{margin:8px 0;color:#5e6873;font-size:10px;line-height:1.45}.douyin-engagement-plan-list footer{align-items:center}.douyin-engagement-plan-list footer>span,.douyin-engagement-plan-list footer>small{color:#929ba5;font-size:8.5px}.douyin-engagement-plan-list footer .douyin-engagement-row-actions{margin-left:auto}
.douyin-engagement-form-card{padding:13px}.douyin-engagement-form-card header{padding-bottom:10px;border-bottom:1px solid #eef1f3}.douyin-engagement-form-card h3{margin:0;color:#28323c;font-size:14px}.douyin-engagement-form-card header p{margin:4px 0 0;color:#8d969f;font-size:9px;line-height:1.45}.douyin-engagement-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:11px 0}.douyin-engagement-form-grid label{display:grid;gap:4px;min-width:0;color:#7f8993;font-size:9px}.douyin-engagement-form-grid label.wide{grid-column:1/-1}.douyin-engagement-form-grid input,.douyin-engagement-form-grid select,.douyin-engagement-form-grid textarea{width:100%;min-width:0;box-sizing:border-box;padding:7px 8px;border:1px solid #dce1e7;border-radius:8px;background:#fff;color:#46515c;font:inherit;font-size:10px}.douyin-engagement-form-grid textarea{resize:vertical;line-height:1.45}.douyin-engagement-form-grid input:focus,.douyin-engagement-form-grid select:focus,.douyin-engagement-form-grid textarea:focus{outline:0;border-color:#d99aa2;box-shadow:0 0 0 2px rgba(211,59,74,.1)}.douyin-engagement-account-checks{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:2px 0 10px;color:#68737e;font-size:9px}.douyin-engagement-account-checks label{display:flex;align-items:center;gap:4px}.douyin-engagement-account-checks input,.douyin-engagement-batchbar input,.douyin-engagement-compose input{accent-color:#d33b4a}
.douyin-engagement-message-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:9px;min-height:0;height:100%}.douyin-engagement-conversations,.douyin-engagement-thread{min-width:0;min-height:0;border:1px solid #e5e8ed;border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 8px 24px rgba(28,40,58,.045)}.douyin-engagement-conversations{display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.douyin-engagement-conversation-list{display:grid;align-content:start;gap:4px;max-height:calc(100vh - 300px);overflow:auto;padding:7px}.douyin-engagement-conversation-list>button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px;border:1px solid transparent;border-radius:9px;background:transparent;color:#566170;text-align:left;cursor:pointer}.douyin-engagement-conversation-list>button:hover{background:#f6f8fa}.douyin-engagement-conversation-list>button.active{border-color:#efc3c8;background:#fff7f8}.douyin-engagement-conversation-list .avatar{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#edf1f5;color:#687481;font-size:10px;font-weight:800}.douyin-engagement-conversation-list .copy{min-width:0}.douyin-engagement-conversation-list .copy b,.douyin-engagement-conversation-list .copy small,.douyin-engagement-conversation-list .copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.douyin-engagement-conversation-list .copy b{color:#35404a;font-size:10px}.douyin-engagement-conversation-list .copy small{margin-top:3px;color:#5f6a75;font-size:9px}.douyin-engagement-conversation-list .copy em{margin-top:2px;color:#9aa2aa;font-size:8px;font-style:normal}.douyin-engagement-conversation-list .tail{display:grid;justify-items:end;gap:4px;color:#9aa2aa;font-size:8px}.douyin-engagement-conversation-list .tail i{display:grid;place-items:center;min-width:17px;height:17px;border-radius:50%;background:#d33b4a;color:#fff;font-size:8px;font-style:normal;font-weight:800}
.douyin-engagement-stats{flex:none}
#douyin-engagement-content[data-page="messageManager"],
#douyin-engagement-content[data-page="messageAggregate"]{display:flex;flex-direction:column;overflow:hidden}
#douyin-engagement-content[data-page="messageManager"] .douyin-engagement-message-layout,
#douyin-engagement-content[data-page="messageAggregate"] .douyin-engagement-message-layout{flex:1;min-height:0;height:auto}
#douyin-engagement-content[data-page="messageManager"] .douyin-engagement-conversation-list,
#douyin-engagement-content[data-page="messageAggregate"] .douyin-engagement-conversation-list{max-height:none;min-height:0}
.douyin-engagement-thread{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;overflow:hidden}.douyin-engagement-thread>header{display:flex;height:auto!important;min-height:0!important;box-sizing:border-box;align-items:center!important;justify-content:space-between;gap:10px;margin:0!important;padding:9px 12px!important;border:0!important;border-bottom:1px solid #eef1f3!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;text-align:left!important}.douyin-engagement-thread>header span{display:block!important;color:#b33846!important;font-size:9px;font-weight:850}.douyin-engagement-thread>header h3{display:block!important;margin:2px 0;color:#28323c!important;font-size:15px}.douyin-engagement-thread>header p{display:block!important;margin:0;color:#8a949e!important;font-size:9px}.douyin-engagement-chat{display:flex;flex-direction:column;align-content:flex-start;justify-content:flex-start;gap:8px;min-height:0;overflow:auto;padding:12px;background:#fafbfc}.douyin-engagement-chat>div.douyin-chat-row{display:flex;width:100%;margin:0}.douyin-engagement-chat .douyin-chat-message{max-width:78%;border-color:#e3e8ed;background:#fff}.douyin-engagement-chat .douyin-chat-message.agent{border-color:#efcbd0;background:#fff3f4}.douyin-engagement-chat .douyin-message-date{align-self:center;padding:2px 7px;border-radius:999px;background:#edf0f3;color:#8d969f;font-size:8px}.douyin-engagement-compose{display:grid;gap:7px;padding:10px;border-top:1px solid #eef1f3;background:#fff}.douyin-engagement-compose textarea{width:100%;min-height:70px;box-sizing:border-box;padding:8px;border:1px solid #dce1e7;border-radius:8px;background:#fff;color:#46515c;font:inherit;font-size:10px;line-height:1.5;resize:vertical}.douyin-engagement-compose>div{display:flex;align-items:center;justify-content:flex-end;gap:9px}.douyin-engagement-compose label{display:flex;align-items:center;gap:5px;color:#68737e;font-size:9px}
@media(max-width:1200px){.douyin-engagement-page-grid{grid-template-columns:minmax(0,1fr) 260px}.douyin-engagement-split,.douyin-engagement-split.automation{grid-template-columns:minmax(300px,1fr) minmax(0,1.2fr)}}
@media(max-width:980px){.ops-workspace-active .douyin-ops-shell.engagement-mode{grid-template-rows:auto auto minmax(0,1fr)}.douyin-engagement-shell{grid-template-columns:1fr;height:auto;min-height:0}.douyin-engagement-nav{max-height:280px}.douyin-engagement-nav>section{display:flex;gap:4px;overflow:auto}.douyin-engagement-nav h3{display:none}.douyin-engagement-nav button{width:auto;white-space:nowrap}.douyin-engagement-nav>footer{display:none}.douyin-engagement-page-grid,.douyin-engagement-split,.douyin-engagement-split.automation,.douyin-engagement-message-layout{grid-template-columns:1fr}.douyin-engagement-detail-panel{min-height:240px}.douyin-engagement-conversation-list{max-height:260px}.douyin-engagement-thread{min-height:520px}}
@media(max-width:700px){.douyin-engagement-head{flex-direction:column}.douyin-engagement-head-actions{justify-content:flex-start;width:100%}.douyin-engagement-account{width:100%}.douyin-engagement-account select{flex:1;max-width:none}.douyin-engagement-stats{grid-template-columns:1fr 1fr}.douyin-engagement-form-grid{grid-template-columns:1fr}.douyin-engagement-form-grid label.wide{grid-column:auto}.douyin-engagement-filterbar label.search{width:100%;flex:auto}.douyin-engagement-table-wrap{max-height:420px}}

/* 登录态搬运工具栏（导出/导入/复制），对齐小V猫的 Cookie 工具 */
.douyin-browser-toolbar-main .douyin-cookie-tools{display:inline-flex;align-items:center;gap:6px;margin-left:auto;flex-wrap:wrap}
.douyin-browser-toolbar-main .douyin-cookie-tools select{height:30px;min-width:120px;border-radius:8px;padding:0 6px}


/* 私信聚合的渠道聚合视图（对标小V猫 sessionId/渠道模型） */
.douyin-channel-overview{margin:10px 0}
.douyin-channel-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px;font-size:13px}
.douyin-channel-head b{font-size:14px}
.douyin-channel-head>span{min-width:0;color:#7e8791;font-size:11px;overflow-wrap:anywhere}
.douyin-channel-head>button{margin-left:auto;height:30px;padding:0 10px;border:1px solid #e3c8cc;border-radius:8px;background:#fff7f8;color:#a92f3c;cursor:pointer;font:inherit;font-size:11px;font-weight:700}
.douyin-auto-reply-toggle{display:inline-flex;align-items:center;gap:8px;padding:4px 7px;border:1px solid #e6dde0;border-radius:8px;background:#fff;color:#6d5e63;font-size:10px;white-space:nowrap}
.douyin-auto-reply-toggle label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.douyin-auto-reply-toggle input{accent-color:#b33846}
.douyin-channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.douyin-channel-grid article{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.55);border:1px solid rgba(0,0,0,.08);font-size:12px}
.douyin-channel-grid article> b{font-size:13px}
.douyin-channel-grid .is-warn{color:#c62828}
.douyin-channel-cross{margin-top:8px;font-size:12px;opacity:.85}

/* 运营系统统一紧凑排版：信息保留，压掉重复标题、过大数字和不必要留白。 */
body.ops-workspace-active #app{padding:5px}
body.ops-workspace-active .douyin-ops-shell{gap:6px;grid-template-rows:46px minmax(0,1fr)}
body.ops-workspace-active .douyin-global-nav{height:46px;min-height:46px;box-sizing:border-box;gap:3px;padding:4px 8px;border-radius:9px}
body.ops-workspace-active .douyin-global-brand{gap:6px;margin-right:10px;font-size:14px}
body.ops-workspace-active .douyin-global-brand::before{width:24px;height:24px;border-radius:7px;font-size:10px}
body.ops-workspace-active .douyin-global-nav>button{gap:4px;padding:6px 9px;border-radius:7px;font-size:10.5px}
body.ops-workspace-active .douyin-global-nav>button i{width:14px;height:14px;font-size:12px}
body.ops-workspace-active .douyin-workspace{gap:6px}
body.ops-workspace-active .douyin-panel{padding:10px}
body.ops-workspace-active .douyin-panel-head{gap:9px;margin-bottom:8px}
body.ops-workspace-active .douyin-panel-head h2{font-size:14px}
body.ops-workspace-active .douyin-panel-head p{margin-top:2px;font-size:9.5px;line-height:1.4}
body.ops-workspace-active .douyin-action-row{gap:5px}
body.ops-workspace-active .douyin-action-row button,
body.ops-workspace-active .douyin-account-rail button,
body.ops-workspace-active .douyin-side-panel button{padding:5px 8px;border-radius:6px;font-size:10px}
body.ops-workspace-active .analysis-kpi-grid{gap:6px;margin-top:7px;margin-bottom:9px}
body.ops-workspace-active .analysis-kpi-grid article{padding:7px 8px;border-radius:7px}
body.ops-workspace-active .analysis-kpi-grid span{font-size:9px}
body.ops-workspace-active .analysis-kpi-grid b{margin:3px 0 2px;font-size:16px}
body.ops-workspace-active .analysis-kpi-grid small{font-size:8.5px;line-height:1.3}
body.ops-workspace-active .douyin-detail-grid{gap:6px;margin-top:7px}
body.ops-workspace-active .douyin-detail-grid article{padding:8px}
body.ops-workspace-active .douyin-detail-grid article>b{font-size:14px}
body.ops-workspace-active .douyin-task-guide{gap:6px}
body.ops-workspace-active .douyin-task-guide article{gap:3px;padding:8px}
body.ops-workspace-active .douyin-task-guide b{width:20px;height:20px;border-radius:6px;font-size:10px}
body.ops-workspace-active .douyin-task-guide span{font-size:10px}
body.ops-workspace-active .douyin-form,
body.ops-workspace-active .social-form-grid,
body.ops-workspace-active .douyin-task-form{gap:6px}
body.ops-workspace-active .social-form-grid input,
body.ops-workspace-active .social-form-grid select,
body.ops-workspace-active .social-form-grid textarea,
body.ops-workspace-active .douyin-task-form input,
body.ops-workspace-active .douyin-action-row input,
body.ops-workspace-active .douyin-action-row select{padding:6px 7px;border-radius:6px;font-size:10px}
body.ops-workspace-active .table-wrap{border-radius:8px}
body.ops-workspace-active .table-wrap th{padding:7px 8px;font-size:9px}
body.ops-workspace-active .table-wrap td{padding:7px 8px;font-size:10px}
body.ops-workspace-active .douyin-callout{margin-top:7px;padding:7px 9px;border-radius:7px;font-size:9.5px;line-height:1.45}
body.ops-workspace-active .social-studio-shell{gap:8px}
body.ops-workspace-active .social-two-column{gap:8px}
body.ops-workspace-active .social-studio-shell>.douyin-panel,
body.ops-workspace-active .social-two-column>.douyin-panel{padding:10px}
body.ops-workspace-active .douyin-account-rail{grid-template-rows:auto auto minmax(0,1fr) auto}
body.ops-workspace-active .douyin-account-tools{gap:5px;padding:7px}
body.ops-workspace-active .douyin-account-search{height:29px;margin:0 7px 6px;padding:0 7px}
body.ops-workspace-active .douyin-account-scroll{padding:3px 6px 6px}
body.ops-workspace-active .douyin-account-item{margin:2px 0;padding:6px!important;grid-template-columns:30px minmax(0,1fr) auto;gap:6px}
body.ops-workspace-active .douyin-account-avatar{width:30px;height:30px;border-radius:7px;font-size:11px}
body.ops-workspace-active .douyin-health .douyin-account-item b{font-size:11px}
body.ops-workspace-active .douyin-account-item small{font-size:8.5px}
body.ops-workspace-active .douyin-account-foot{padding:5px 7px}
body.ops-workspace-active .douyin-account-foot button{padding:5px 6px!important;font-size:9px!important}

/* 粉丝互动：压缩左侧导航、渠道卡、统计卡和聊天区。 */
body.ops-workspace-active .douyin-ops-shell.engagement-mode{grid-template-rows:46px minmax(0,1fr)}
body.ops-workspace-active .douyin-engagement-shell{grid-template-columns:154px minmax(0,1fr);gap:6px}
body.ops-workspace-active .douyin-engagement-nav{border-radius:8px}
body.ops-workspace-active .douyin-engagement-nav>header{padding:8px 9px!important}
body.ops-workspace-active .douyin-engagement-nav>header b{font-size:12px}
body.ops-workspace-active .douyin-engagement-nav>header span{display:none}
body.ops-workspace-active .douyin-engagement-nav>section{padding:5px 4px}
body.ops-workspace-active .douyin-engagement-nav h3{margin:0 5px 3px;font-size:8px}
body.ops-workspace-active .douyin-engagement-nav button{padding:6px 7px;border-radius:6px;font-size:10px}
body.ops-workspace-active .douyin-engagement-nav button i{font-size:12px}
body.ops-workspace-active .douyin-engagement-nav>footer{display:none}
body.ops-workspace-active .douyin-engagement-main>header.douyin-engagement-head,
.ops-workspace-active .douyin-engagement-head{align-items:center;gap:8px;padding:7px 9px;border-radius:8px}
body.ops-workspace-active .douyin-engagement-head>div:first-child>span{font-size:8px}
body.ops-workspace-active .douyin-engagement-head h2{margin:1px 0;font-size:14px}
body.ops-workspace-active .douyin-engagement-head p{font-size:9px}
body.ops-workspace-active .douyin-engagement-head-actions{gap:5px}
body.ops-workspace-active .douyin-engagement-account select{min-width:130px;max-width:210px;height:26px}
body.ops-workspace-active #douyin-engagement-content{padding-top:6px}
body.ops-workspace-active .douyin-channel-overview{margin:0 0 6px;padding:7px 8px;border:1px solid #e8ebef;border-radius:8px;background:#fbfcfd}
body.ops-workspace-active .douyin-channel-head{gap:6px;margin-bottom:6px;font-size:10px}
body.ops-workspace-active .douyin-channel-head b{font-size:11px}
body.ops-workspace-active .douyin-channel-head>span{font-size:9px}
body.ops-workspace-active .douyin-channel-head>button{height:25px;padding:0 7px;border-radius:6px;font-size:9px}
body.ops-workspace-active .douyin-channel-strip{display:grid;grid-template-columns:25px minmax(0,1fr) 25px;align-items:center;gap:5px}
body.ops-workspace-active .douyin-channel-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(145px,170px);gap:5px;overflow-x:auto;overflow-y:hidden;padding:1px 1px 3px;scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain}
body.ops-workspace-active .douyin-channel-grid article{scroll-snap-align:start}
body.ops-workspace-active .douyin-channel-nav{display:grid;place-items:center;width:25px;height:36px;padding:0;border:1px solid #e2e6eb;border-radius:6px;background:#fff;color:#7b8490;font-size:14px;line-height:1;cursor:pointer}
body.ops-workspace-active .douyin-channel-nav:hover{border-color:#d6a3aa;background:#fff7f8;color:#b52e3d}
body.ops-workspace-active .douyin-channel-grid article{gap:1px;padding:5px 7px;border-radius:7px;font-size:9px}
body.ops-workspace-active .douyin-channel-grid article>b{font-size:10px}
body.ops-workspace-active .douyin-channel-cross{margin-top:5px;font-size:9px}
/* 渠道卡必须优先保证账号名和头像可读，不能继承深色主题的背景/文字。 */
body.ops-workspace-active .douyin-channel-grid article{background:#fff!important;color:#3c4752!important;border:1px solid #e3e8ee!important;box-shadow:0 1px 2px rgba(25,36,48,.04)!important}
body.ops-workspace-active .douyin-channel-grid article header{min-height:25px;padding:2px 3px;border-radius:5px;background:#f7f9fb;color:#2d3944}
body.ops-workspace-active .douyin-channel-grid article header b{color:#2d3944!important;font-size:9.5px;font-weight:850}
body.ops-workspace-active .douyin-channel-grid article>span{color:#78838f!important}
body.ops-workspace-active .douyin-channel-grid article>span b{color:#3b4651!important}
body.ops-workspace-active .douyin-channel-grid article.is-warn,
body.ops-workspace-active .douyin-channel-grid article .is-warn{color:#bd3545!important}
body.ops-workspace-active .douyin-engagement-stats{gap:5px;margin-bottom:5px}
body.ops-workspace-active .douyin-engagement-stats article{padding:5px 7px;border-radius:7px}
body.ops-workspace-active .douyin-engagement-stats span{font-size:8px}
body.ops-workspace-active .douyin-engagement-stats b{font-size:14px}
body.ops-workspace-active .douyin-engagement-message-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:6px}
body.ops-workspace-active .douyin-engagement-conversations,
body.ops-workspace-active .douyin-engagement-thread{border-radius:8px;box-shadow:none}
body.ops-workspace-active .douyin-engagement-filterbar.compact{padding:5px 6px;gap:5px}
body.ops-workspace-active .douyin-engagement-filterbar input,
body.ops-workspace-active .douyin-engagement-filterbar select{height:25px;border-radius:6px;font-size:9px}
body.ops-workspace-active .douyin-engagement-filterbar button{height:25px;padding:0 8px;border-radius:6px;font-size:9px}
body.ops-workspace-active .douyin-engagement-list-head{padding:5px 8px 4px}
body.ops-workspace-active .douyin-engagement-list-head b{font-size:10px}
body.ops-workspace-active .douyin-engagement-conversation-list{gap:2px;padding:4px}
body.ops-workspace-active .douyin-engagement-conversation-list>button{grid-template-columns:22px minmax(0,1fr) auto;gap:6px;padding:5px;border-radius:6px}
body.ops-workspace-active .douyin-engagement-conversation-list .avatar{width:22px;height:22px;border-radius:6px;font-size:9px}
body.ops-workspace-active .douyin-engagement-conversation-list .copy b{font-size:9.5px}
body.ops-workspace-active .douyin-engagement-conversation-list .copy small{font-size:8.5px}
body.ops-workspace-active .douyin-engagement-conversation-list .copy em{font-size:7.5px}
body.ops-workspace-active .douyin-engagement-thread>header{padding:6px 8px!important}
body.ops-workspace-active .douyin-engagement-thread>header h3{font-size:12px}
body.ops-workspace-active .douyin-engagement-thread>header p{font-size:8px}
body.ops-workspace-active .douyin-engagement-chat{gap:5px;padding:8px}
body.ops-workspace-active .douyin-chat-message{padding:6px 8px;border-radius:7px}
body.ops-workspace-active .douyin-chat-message b{font-size:11px}
body.ops-workspace-active .douyin-engagement-compose{gap:4px;padding:6px}
body.ops-workspace-active .douyin-engagement-compose textarea{min-height:46px;max-height:90px;padding:6px 7px;border-radius:6px;font-size:10px}
body.ops-workspace-active .douyin-engagement-compose>div{gap:5px}
body.ops-workspace-active .douyin-engagement-compose button{height:27px;padding:0 9px;border-radius:6px;font-size:9px}
body.ops-workspace-active .douyin-home-kpis .analysis-kpi-grid b,
body.ops-workspace-active #douyin-analytics-page .analysis-kpi-grid b{font-size:15px}
body.ops-workspace-active .douyin-home-grid,
body.ops-workspace-active .douyin-two-column{gap:8px}
body.ops-workspace-active .douyin-home-grid>section,
body.ops-workspace-active .douyin-home-grid>aside,
body.ops-workspace-active .douyin-two-column>section{padding:9px;border-radius:7px}
body.ops-workspace-active .douyin-home-groups{gap:5px}
body.ops-workspace-active .douyin-home-groups button{padding:6px 8px;border-radius:6px}
body.ops-workspace-active .douyin-home-accounts{gap:5px}
body.ops-workspace-active .douyin-home-accounts>button{padding:6px;border-radius:6px}
body.ops-workspace-active .douyin-block-title{margin:3px 0 6px;padding-bottom:4px}
body.ops-workspace-active .douyin-block-title b{font-size:10px}
body.ops-workspace-active .douyin-subtabs{margin-bottom:6px;padding:4px}
body.ops-workspace-active .douyin-subtabs button{padding:5px 10px;font-size:9px}
body.ops-workspace-active .douyin-page-loading{padding:28px 14px}

@media(max-width:1350px){
  body.ops-workspace-active .douyin-engagement-shell{grid-template-columns:142px minmax(0,1fr)}
}
@media(max-width:1050px){
  body.ops-workspace-active .douyin-engagement-shell{grid-template-columns:1fr;height:auto}
  body.ops-workspace-active .douyin-engagement-nav{flex-direction:row;overflow:auto;max-height:none}
  body.ops-workspace-active .douyin-engagement-nav>header{display:none}
  body.ops-workspace-active .douyin-engagement-nav>section{display:flex;gap:3px;padding:4px;border:0}
  body.ops-workspace-active .douyin-engagement-nav h3{display:none}
  body.ops-workspace-active .douyin-engagement-nav button{width:auto;white-space:nowrap}
  body.ops-workspace-active .douyin-engagement-message-layout{grid-template-columns:1fr}
  body.ops-workspace-active .douyin-engagement-conversations{max-height:250px}
}

.douyin-company-account-drawer>section{width:min(780px,96vw);padding:0;overflow:hidden}
.douyin-company-account-body{display:grid;gap:12px;padding:14px 16px;overflow:auto}
.douyin-company-account-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.douyin-company-account-summary article{padding:10px;border:1px solid rgba(15,22,34,.1);border-radius:8px;background:rgba(255,255,255,.7)}
.douyin-company-account-summary span,.douyin-company-account-summary b{display:block}
.douyin-company-account-summary span{color:#7d8793;font-size:10px}
.douyin-company-account-summary b{margin-top:3px;color:#242a31;font-size:20px}
.douyin-company-account-form,.douyin-auto-reply-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.douyin-company-account-form label,.douyin-auto-reply-form label{display:grid;gap:4px;color:#697381;font-size:10px}
.douyin-company-account-form input,.douyin-auto-reply-form input,.douyin-auto-reply-form textarea{width:100%;box-sizing:border-box;padding:8px;border:1px solid rgba(15,22,34,.14);border-radius:7px;background:#fff;color:#242a31;font:inherit;font-size:11px}
.douyin-company-account-form input[type="checkbox"],.douyin-auto-reply-form input[type="checkbox"]{width:auto;padding:0;accent-color:#b33846}
.douyin-auto-reply-form label:first-child,.douyin-auto-reply-form label:nth-child(4),.douyin-auto-reply-form .douyin-callout,.douyin-auto-reply-form>div{grid-column:1/-1}
.douyin-auto-reply-form textarea{resize:vertical}
.douyin-company-account-enabled{display:flex!important;align-items:center;gap:6px;align-self:end;min-height:30px}
.douyin-company-account-form>div{display:flex;gap:7px;justify-content:flex-end;grid-column:1/-1}
.douyin-company-account-form button,.douyin-auto-reply-form button,.douyin-company-account-list button{padding:7px 9px;border:1px solid rgba(15,22,34,.14);border-radius:7px;background:rgba(255,255,255,.78);color:#4a515c;font-size:10px;font-weight:800;cursor:pointer}
.douyin-company-account-form .primary,.douyin-auto-reply-form .primary{border-color:#f04d5e;background:#f04d5e;color:#fff}
.douyin-company-account-list{display:grid;gap:6px;max-height:320px;overflow:auto}
.douyin-company-account-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto auto;align-items:center;gap:7px;padding:8px 9px;border:1px solid rgba(15,22,34,.09);border-radius:8px;background:rgba(255,255,255,.68)}
.douyin-company-account-list article.disabled{opacity:.55}
.douyin-company-account-list b,.douyin-company-account-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.douyin-company-account-list b{color:#242a31;font-size:11px}
.douyin-company-account-list small{margin-top:2px;color:#8f97a3;font-size:10px}
.douyin-company-account-list span{color:#697381;font-size:10px;white-space:nowrap}
.douyin-company-account-list button.danger{border-color:rgba(201,64,64,.35);background:rgba(255,245,245,.9);color:#b42318}
.douyin-auto-reply-settings>section{width:min(620px,96vw)}
.douyin-auto-reply-toggle button{padding:4px 7px;border:0;border-left:1px solid #eadfe3;background:transparent;color:#b33846;font-size:10px;font-weight:800;cursor:pointer}
@media(max-width:760px){
  .douyin-company-account-drawer>section,.douyin-auto-reply-settings>section{width:100vw}
  .douyin-company-account-form,.douyin-auto-reply-form{grid-template-columns:1fr}
  .douyin-company-account-form label,.douyin-auto-reply-form label,.douyin-auto-reply-form label:first-child,.douyin-auto-reply-form label:nth-child(4),.douyin-auto-reply-form .douyin-callout,.douyin-auto-reply-form>div{grid-column:auto}
  .douyin-company-account-list article{grid-template-columns:minmax(0,1fr) auto;gap:6px}
}

/* 2026-10-18 final performance-sheet overrides: must stay after legacy table themes. */
.performance-month-filter{display:inline-flex;align-items:center;gap:5px;padding:0 4px;color:#6b5548;font-size:12px;font-weight:700;white-space:nowrap}
.performance-month-filter input{min-width:128px!important;padding:5px 8px!important}
.performance-summary-strip>div small{display:block;margin-top:3px}
.performance-report-total{display:block;width:100%;padding:4px 6px;text-align:right;color:#7b3d18;font-weight:700;font-variant-numeric:tabular-nums}
main .performance-sheet thead th{height:28px!important;min-height:0!important;padding:2px 3px!important;border-width:1px!important;border-radius:5px!important;font-size:0!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important}
main .performance-sheet thead th .raw-filterable-header{justify-content:center!important;gap:2px!important;white-space:nowrap!important}
main .performance-sheet thead th .raw-filterable-header>span:first-child,
main .performance-sheet thead th .excel-date-filter summary>b,
main .performance-sheet thead th .excel-date-filter summary>span{position:absolute;left:3px;top:calc(100% + 2px);z-index:40;display:none;max-width:220px;padding:4px 7px;border:1px solid #decfba;border-radius:6px;background:#fffdf8;color:#432d23!important;box-shadow:0 6px 18px rgba(62,34,24,.22);font-size:11px!important;line-height:1.35;white-space:nowrap}
main .performance-sheet thead th:hover .raw-filterable-header>span:first-child,
main .performance-sheet thead th:focus-within .raw-filterable-header>span:first-child,
main .performance-sheet thead th:hover .excel-date-filter summary>b,
main .performance-sheet thead th:focus-within .excel-date-filter summary>b,
main .performance-sheet thead th:hover .excel-date-filter summary>span,
main .performance-sheet thead th:focus-within .excel-date-filter summary>span{display:block}
main .performance-sheet thead .raw-header-filter{flex:0 0 18px!important;width:18px!important;height:18px!important;min-width:18px!important;padding:0!important;font-size:10px!important;opacity:1!important}
main .performance-sheet thead .excel-date-filter summary{min-height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.performance-sheet tfoot td{position:sticky;bottom:0;z-index:12;padding:7px 9px!important;border-top:1px solid #e3cfb7;background:#2b2021!important;color:#fff!important;font-size:11px!important;white-space:nowrap}
.performance-sheet tfoot .performance-total-first{background:#183c29!important}
.performance-sheet tfoot .performance-total-second{background:#1b3552!important}
.performance-sheet tfoot .performance-total-third{background:#3b2850!important}
.performance-line-total-footer b,.performance-line-total-footer span,.performance-line-total-footer strong{display:inline-block;margin-right:9px}
.performance-line-total-footer strong{color:#ffe1a0;font-size:13px}
