/* TALATEX 2026.07 HEX；ERP软件扩展。最终共享样式层，优先于历史页面规则。 */
.insight-filter{display:grid!important;grid-template-columns:repeat(4,minmax(145px,1fr)) auto;align-items:end!important}
.insight-filter label{display:flex;flex-direction:column;gap:6px;min-width:0}
.insight-filter input,.insight-filter select{width:100%!important;min-width:0!important;max-width:none!important}
#insight-data td:not(:first-child),#insight-data th:not(:first-child){text-align:right}
@media(max-width:900px){.insight-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.insight-filter{grid-template-columns:minmax(0,1fr)}}
:root{
 --brand-primary:#1f1a3b;--brand-accent:#052851;--brand-gold:#c6a879;
 --action-primary:#0052d9;--surface:#fff;--surface-subtle:#f3f3f4;--surface-hover:#f2f3ff;
 --text-primary:#202328;--text-secondary:#535d6d;--border:#dcdde1;--control-border:#858a99;
 --success:#176b46;--success-bg:#e3f9e9;--warning:#874500;--warning-bg:#fff1e9;--error:#b42318;
 --control-height:36px;--radius:6px;--ink:var(--text-primary);--muted:var(--text-secondary);
 --paper:var(--surface-subtle);--line:var(--border);--accent:var(--brand-accent);
}
body{font-family:Inter,'Noto Sans SC',system-ui,sans-serif;font-size:14px;line-height:1.5}
body .content{padding:20px 24px;max-width:1600px}
body .topbar{min-height:56px;padding:8px 24px;border-bottom:1px solid var(--border)}
body .page-heading{margin-bottom:16px}body .page-heading h1{font-size:22px;line-height:1.4}
body .panel{padding:16px;border:1px solid var(--border);border-radius:var(--radius);box-shadow:none}
body .panel h2{font-size:16px;font-weight:600}
body .welcome-card{padding:16px 20px;border-radius:var(--radius);background:var(--surface);box-shadow:none}
body .welcome-card h2{font-size:20px}
body .metrics article{padding:12px 16px;border-radius:var(--radius);box-shadow:none}
body .metrics strong{font-size:26px;font-variant-numeric:tabular-nums}
body button,body .button{min-height:var(--control-height);padding:6px 12px;border-radius:var(--radius);font-size:13px;font-weight:500;line-height:1.5;box-shadow:none;touch-action:manipulation}
body .primary{background:var(--brand-accent);color:#fff;border:1px solid var(--brand-accent)}
body .secondary{background:var(--surface);color:var(--brand-accent);border:1px solid var(--control-border)}
body .ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}
body button:disabled{cursor:not-allowed}
body :is(button,.button,a,summary,input,textarea,select,[contenteditable]):focus-visible{outline:2px solid var(--action-primary);outline-offset:2px}
body label{font-size:13px;color:var(--text-secondary);margin-bottom:12px}
body input:not([type=checkbox]):not([type=radio]),body select{min-height:var(--control-height);padding:7px 10px;font-size:14px;line-height:1.5;border-color:var(--control-border);background:var(--surface);color:var(--text-primary)}
body textarea{border-color:var(--control-border);background:var(--surface);font-size:14px;line-height:1.6}
body input[type=checkbox],body input[type=radio]{width:16px;height:16px;min-width:16px;min-height:16px;margin:0;display:inline-block;accent-color:var(--action-primary)}
body table{font-size:13px;font-variant-numeric:tabular-nums}
body th,body td{padding:8px 12px;line-height:1.5;vertical-align:middle}
body th{font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--surface-subtle)}
body td button,body td .button{margin:2px 4px 2px 0;min-height:32px;padding:4px 8px}
body tbody tr:hover{background:var(--surface-hover)}
body tbody tr:focus-within{background:var(--surface-hover)}
body .table-scroll,body .five-row-list{max-width:100%;min-width:0;overscroll-behavior:contain}
body .table-scroll input[type=checkbox]{min-width:16px}
body .badge{font-size:12px;line-height:1.5;padding:3px 7px;border-radius:4px;white-space:normal;overflow-wrap:anywhere}
body .badge.green{color:var(--success);background:var(--success-bg)}
body .badge.amber{color:var(--warning);background:var(--warning-bg)}
body .hint,body .muted,body .record-meta,body .footnote{color:var(--text-secondary);font-size:12px}
body .notice{background:#faf8f3;color:var(--text-secondary);border-left:3px solid var(--brand-gold);border-radius:4px}
body .department-node{padding:8px 12px;margin:8px 0;border-color:var(--border);border-radius:var(--radius)}
body .department-info{padding:4px 0}
body .secondary-sidebar nav a{min-height:36px;padding:8px 12px}
body .attention-row,body .record{padding:12px 0}
body .page-tab a{font-weight:500}body .page-tab.active{box-shadow:inset 0 2px var(--brand-gold)}
body dialog{border-color:var(--border);border-radius:8px;width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overscroll-behavior:contain}
body .modal-head{padding:12px 16px;background:var(--surface)}body .modal-head h2{font-size:18px;line-height:1.5;overflow-wrap:anywhere}
body .modal-head .close{min-width:36px;flex-shrink:0}body .modal-body{padding:16px}
body .error,body [data-error]{color:var(--error)}
body .error:empty,body [data-error]:empty{display:none}
body .empty{padding:24px 16px}body .empty h3{font-size:15px}
body .login-form{padding:32px;max-width:500px}body .login-form h2{font-size:24px}
body .login-story h1{font-size:32px;line-height:1.45}
body .record-date-filter{background:var(--surface-subtle);border-color:var(--border)}
body form.record-date-filter input:not([type=checkbox]):not([type=radio]){border-color:var(--control-border)}
.skip-link{position:fixed;top:8px;left:104px;z-index:1000;padding:8px 12px;background:var(--surface);color:var(--brand-accent);transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
body :is(h1,h2,h3){text-wrap:balance;scroll-margin-top:64px}
body :is(.panel,.section-head,.toolbar,.form-grid,.two-col)>*{min-width:0}
body :is(.prose,.record,.acceptance,.modal-body p){overflow-wrap:anywhere}
@media(max-width:768px),(pointer:coarse){
 :root{--control-height:44px}
 body .content{padding:16px 12px}body .topbar{padding:8px 12px}
 body .panel{padding:12px}body .login-form{padding:20px}
 body input:not([type=checkbox]):not([type=radio]),body select,body textarea{font-size:16px}
 body td button,body td .button,body .page-tab button,body .modal-head .close{min-height:44px;min-width:44px}
 body .secondary-sidebar nav a{min-height:44px}body input[type=checkbox],body input[type=radio]{width:24px;height:24px;min-width:24px}
 body th:has(input[type=checkbox]),body td:has(input[type=checkbox]){padding:10px}
 .skip-link{left:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
