.performance-timeline-toolbar,.talent-review-cycles>header,.talent-review-summary>header,.talent-review-members>header,.performance-followup-worklist>header,.performance-detail-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.performance-timeline-toolbar small,.talent-review-summary small,.talent-review-cycle span,.performance-followup-item span{display:block;margin-top:4px;color:var(--text-muted)}.performance-window-switch{display:flex;gap:6px}.performance-window-switch .active{border-color:var(--accent);color:var(--accent)}.performance-signal{margin:14px 0;padding:14px 16px;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:12px;background:var(--surface-subtle);display:flex;justify-content:space-between;gap:14px}.performance-signal span,.performance-signal small{display:block;color:var(--text-muted)}.performance-signal strong{display:block;margin:4px 0}.performance-signal.blocked{border-left-color:var(--warning)}.performance-warning{display:grid;gap:5px;margin:10px 0;padding:10px 12px;border-radius:10px;background:var(--warning-soft);color:var(--text)}.performance-timeline-track{position:relative;margin:18px 0}.performance-point{display:grid;grid-template-columns:90px 14px 1fr;gap:12px;padding:0 0 18px}.performance-point>time{font-size:12px;color:var(--text-muted);padding-top:3px}.performance-point>i{width:10px;height:10px;margin-top:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);position:relative}.performance-point>i:after{content:"";position:absolute;left:4px;top:10px;width:2px;height:calc(100% + 22px);background:var(--border)}.performance-point:last-child>i:after{display:none}.performance-point header{display:flex;justify-content:space-between;gap:12px}.performance-point p,.performance-point small{margin:4px 0;color:var(--text-muted)}.performance-link{padding:0;border:0;background:none;color:var(--accent);cursor:pointer}.performance-followup-trigger{margin-top:4px}.performance-dimension{margin-top:16px}.performance-dimension>header{display:flex;justify-content:space-between}.talent-review-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px}.talent-review-cycles{align-self:start;position:sticky;top:14px}.talent-review-cycles>div{display:grid;gap:8px;margin-top:14px}.talent-review-cycle{width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.talent-review-cycle.active{border-color:var(--accent);background:var(--accent-soft)}.talent-review-main{display:grid;gap:14px}.talent-review-actions{display:flex;gap:8px}.talent-review-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.talent-review-kpis>div{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.talent-review-kpis span{display:block;color:var(--text-muted)}.talent-review-kpis strong{display:block;margin-top:6px;font-size:24px}.talent-matrix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.talent-matrix-cell{min-height:76px;padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.talent-matrix-cell span{display:block;color:var(--text-muted)}.talent-matrix-cell strong{display:block;margin-top:7px;font-size:21px}.talent-matrix-cell.strong{border-top:3px solid var(--success)}.talent-matrix-cell.attention{border-top:3px solid var(--warning)}.talent-review-members td small{display:block;margin-top:4px;color:var(--text-muted)}.talent-review-members select,.talent-review-members input{min-width:120px;padding:7px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text)}.talent-review-members input{min-width:190px}.performance-followup-item{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--border)}.performance-followup-item>div{flex:1}.performance-followup-item:last-child{border-bottom:0}@media(max-width:960px){.talent-review-layout{grid-template-columns:1fr}.talent-review-cycles{position:static}.talent-review-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.performance-timeline-toolbar,.talent-review-summary>header{align-items:flex-start;flex-direction:column}.talent-review-kpis,.talent-matrix{grid-template-columns:1fr}.performance-point{grid-template-columns:72px 12px 1fr}}

.talent-gradient-page{display:grid;gap:14px}.talent-gradient-toolbar,.talent-gradient-controls,.talent-reuse-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.talent-gradient-toolbar h2,.talent-gradient-toolbar p{margin:0}.talent-gradient-toolbar>div:last-child{display:flex;align-items:center;gap:10px}.talent-gradient-toolbar>div:last-child>span{color:var(--text-muted)}.talent-gradient-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.talent-gradient-card{padding:15px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.talent-gradient-card span,.talent-gradient-card small{display:block;color:var(--text-muted)}.talent-gradient-card strong{display:block;margin:8px 0 5px;font-size:30px}.talent-gradient-card.benchmark strong{color:#12a66a}.talent-gradient-card.stable strong{color:#3b82f6}.talent-gradient-card.performance_attention strong{color:#ef4444}.talent-gradient-card.ai_low strong,.talent-gradient-card.review strong{color:#f59e0b}.talent-gradient-card.insufficient strong{color:var(--text-muted)}.talent-gradient-controls{padding:2px 2px 0}.talent-gradient-controls small{display:block;margin-top:3px;color:var(--text-muted)}.talent-gradient-main{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:14px}.talent-gradient-table,.talent-gradient-method{margin:0}.gradient-chip,.gradient-strength{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:12px;white-space:nowrap}.gradient-chip.benchmark{background:#dcfce7;color:#168154}.gradient-chip.stable{background:#dbeafe;color:#2563eb}.gradient-chip.performance_attention{background:#fee2e2;color:#dc2626}.gradient-chip.ai_low,.gradient-chip.review{background:#fef3c7;color:#b56b00}.gradient-chip.insufficient{border:1px solid var(--border);background:var(--surface-subtle);color:var(--text-muted)}.gradient-strength{margin:2px 4px 2px 0;background:var(--surface-subtle);border:1px solid var(--border)}.gradient-person{padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.gradient-person strong,.gradient-person small,.talent-gradient-table td>strong,.talent-gradient-table td>small{display:block}.gradient-person small,.talent-gradient-table td>small{margin-top:4px;color:var(--text-muted)}.talent-gradient-method header{display:flex;justify-content:space-between}.talent-gradient-method ul{padding-left:18px;display:grid;gap:9px;color:var(--text)}.talent-gradient-method>p{padding:10px;border-radius:9px;background:var(--surface-subtle);color:var(--text-muted)}.talent-reuse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.talent-reuse-grid>article{padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.talent-reuse-grid span,.talent-reuse-grid small{display:block;color:var(--text-muted)}.talent-reuse-grid strong{display:block;margin:6px 0}.talent-reuse-grid p{margin:0 0 7px;line-height:1.55}.talent-gradient-footnote{margin:0;color:var(--text-muted);font-size:12px}@media(max-width:1100px){.talent-gradient-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-gradient-main{grid-template-columns:1fr}.talent-reuse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.talent-gradient-toolbar,.talent-gradient-controls{align-items:flex-start;flex-direction:column}.talent-gradient-cards,.talent-reuse-grid{grid-template-columns:1fr}}
.talent-closure-nav { margin-bottom: 12px; padding: 6px; display: inline-flex; gap: 4px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface); }
.talent-closure-nav button { padding: 8px 12px; border: 0; border-radius: 7px; background: transparent; color: var(--color-text-secondary); cursor: pointer; }
.talent-closure-nav button:hover { background: var(--color-primary-soft); color: var(--color-primary); }
.module-summary-header { margin-bottom: 12px; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-radius: var(--radius-md); background: linear-gradient(125deg,#17233b,#2a4e7b); color: #fff; }
.module-summary-header h2 { margin: 2px 0 5px; }
.module-summary-header p { margin: 0; color: #c8d5e7; font-size: var(--font-sm); }
.performance-management-page { display: grid; gap: 14px; }

.talent-review-view { display: grid; gap: 14px; }
.talent-review-interview-section { margin-top: 18px; padding-top: 20px; border-top: 1px solid var(--color-border); scroll-margin-top: 18px; }
.talent-trace-guidance { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 15px 17px; border: 1px solid color-mix(in srgb,var(--color-primary) 24%,var(--color-border)); border-left: 4px solid var(--color-primary); border-radius: var(--radius-md); background: color-mix(in srgb,var(--color-primary-soft) 55%,var(--color-surface)); }
.talent-trace-guidance.has-attention { border-color: color-mix(in srgb,var(--color-warning) 35%,var(--color-border)); border-left-color: var(--color-warning); background: color-mix(in srgb,var(--color-warning-soft) 70%,var(--color-surface)); }
.talent-trace-guidance span,.talent-trace-guidance strong { display: block; }
.talent-trace-guidance > div > span { color: var(--color-text-secondary); font-size: var(--font-xs); font-weight: 750; }
.talent-trace-guidance strong { margin-top: 5px; font-size: var(--font-lg); }
.talent-trace-guidance p { margin: 6px 0 0; color: var(--color-text-secondary); font-size: var(--font-sm); line-height: 1.55; }
.talent-gradient-list-tools { display: flex; align-items: end; gap: 10px; }
.talent-gradient-list-tools label { display: grid; gap: 5px; color: var(--color-text-secondary); font-size: var(--font-xs); }
.talent-gradient-list-tools input { min-width: 260px; min-height: 36px; padding: 7px 10px; border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-surface); color: var(--color-text-primary); font: inherit; }
.work-trace-chip { display: inline-flex; width: fit-content; padding: 3px 9px; border-radius: 999px; background: var(--color-neutral-soft,#eef1f5); color: var(--color-text-secondary); font-size: 12px; white-space: nowrap; }
.work-trace-chip.sufficient { background: var(--color-success-soft,#e8f7ef); color: var(--color-success); }
.work-trace-chip.basic { background: var(--color-primary-soft,#eaf1ff); color: var(--color-primary); }
.work-trace-chip.insufficient { background: var(--color-warning-soft,#fff5dd); color: var(--color-warning); }
.position-standard-chip { display: inline-flex; width: fit-content; padding: 3px 9px; border-radius: 999px; background: var(--color-primary-soft,#eaf1ff); color: var(--color-primary); font-size: 12px; white-space: nowrap; }
.position-standard-chip.unmatched { border: 1px solid var(--color-border); background: var(--color-surface-subtle); color: var(--color-text-secondary); }
@media(max-width:760px){.talent-trace-guidance,.talent-gradient-list-tools{align-items:stretch;flex-direction:column}.talent-gradient-list-tools input{min-width:0;width:100%}}
.performance-management-page .reference-card { margin: 0; }
.performance-management-header { margin: 0; }
.performance-management-kpis { grid-template-columns: repeat(4,minmax(0,1fr)); }
.performance-metric { position: relative; overflow: hidden; }
.performance-metric::before { position: absolute; inset: 0 auto 0 0; width: 3px; content: ""; background: var(--color-border); }
.performance-metric.positive::before { background: var(--color-success); }
.performance-metric.warning::before { background: var(--color-warning); }
.performance-management-conclusion { padding: 16px 18px; display: grid; grid-template-columns: 88px 1fr; gap: 16px; border: 1px solid var(--color-border); border-left: 4px solid var(--color-primary); border-radius: var(--radius-md); background: var(--color-surface); }
.performance-management-conclusion.warning { border-left-color: var(--color-warning); background: var(--color-warning-soft); }
.performance-management-conclusion.positive { border-left-color: var(--color-success); }
.performance-management-conclusion > span { color: var(--color-text-secondary); font-size: var(--font-sm); }
.performance-management-conclusion strong { display: block; font-size: 16px; }
.performance-management-conclusion p { margin: 5px 0 0; color: var(--color-text-secondary); line-height: 1.55; }
.performance-overview-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 14px; }
.performance-structure-bar { height: 16px; margin: 24px 0 18px; display: flex; overflow: hidden; border-radius: 999px; background: var(--color-surface-subtle); }
.performance-structure-bar span:first-child { border-radius: 999px 0 0 999px; }
.performance-structure-bar span:last-child { border-radius: 0 999px 999px 0; }
.performance-structure-bar .strong,.performance-structure-legend i.strong,.department-mini-bar .strong { background: #18a875; }
.performance-structure-bar .stable,.performance-structure-legend i.stable,.department-mini-bar .stable { background: #4d87eb; }
.performance-structure-bar .attention,.performance-structure-legend i.attention,.department-mini-bar .attention { background: #f09b45; }
.performance-structure-bar .unknown,.performance-structure-legend i.unknown,.department-mini-bar .unknown { background: #c8ced8; }
.performance-structure-legend { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.performance-structure-legend > span { display: grid; grid-template-columns: 9px 1fr auto; align-items: center; gap: 6px; color: var(--color-text-secondary); font-size: 12px; }
.performance-structure-legend i { width: 8px; height: 8px; border-radius: 50%; }
.performance-structure-legend strong { color: var(--color-text); }
.performance-structure-legend small { grid-column: 2 / -1; color: var(--color-text-secondary); }
.performance-trend-summary { margin-top: 18px; display: grid; grid-template-columns: auto 1fr; align-items: end; gap: 4px 8px; }
.performance-trend-summary > strong { color: var(--color-warning); font-size: 34px; line-height: 1; }
.performance-trend-summary > span { color: var(--color-text); }
.performance-trend-summary > small { grid-column: 1 / -1; color: var(--color-text-secondary); }
.performance-trend-list { margin-top: 18px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.performance-trend-list > span { padding: 8px; display: grid; grid-template-columns: 7px 1fr auto; align-items: center; gap: 6px; border-radius: 8px; background: var(--color-surface-subtle); color: var(--color-text-secondary); font-size: 12px; }
.performance-trend-list i { width: 7px; height: 7px; border-radius: 50%; background: #9da7b6; }
.performance-trend-list i.improving { background: #18a875; }
.performance-trend-list i.declining,.performance-trend-list i.threshold_attention { background: #e8753f; }
.performance-trend-list i.volatile { background: #e6ad38; }
.performance-trend-empty { margin-top: 18px; padding: 16px; border-radius: 10px; background: var(--color-surface-subtle); }
.performance-trend-empty p { margin: 6px 0 0; color: var(--color-text-secondary); font-size: var(--font-sm); line-height: 1.6; }
.performance-management-grid { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(290px,.75fr); gap: 14px; }
.performance-department-table td small { display: block; margin-top: 3px; color: var(--color-text-secondary); }
.performance-department-table th:nth-child(3),.performance-department-table td:nth-child(3) { min-width: 130px; }
.department-mini-bar { width: 100%; height: 8px; display: flex; overflow: hidden; border-radius: 999px; background: var(--color-surface-subtle); }
.department-mini-bar i { display: block; height: 100%; }
.attention-text { color: #c45e24; }
.performance-risk-chip { display: inline-flex; padding: 3px 8px; border-radius: 999px; background: var(--color-warning-soft); color: #a95522; font-size: 12px; font-weight: 700; }
.muted-value { color: var(--color-text-secondary); }
.performance-action-list { margin-top: 8px; }
.performance-action-list > div { padding: 13px 0; display: grid; grid-template-columns: 42px 1fr; gap: 10px; border-bottom: 1px solid var(--color-border); }
.performance-action-list > div:last-child { border-bottom: 0; }
.performance-action-list p { margin: 0; }
.performance-action-list strong,.performance-action-list small { display: block; }
.performance-action-list small { margin-top: 5px; color: var(--color-text-secondary); line-height: 1.5; }
.performance-action-priority { height: fit-content; padding: 3px 7px; border-radius: 999px; background: var(--color-surface-subtle); color: var(--color-text-secondary); font-size: 11px; text-align: center; }
.performance-action-priority.now { background: var(--color-warning-soft); color: #a95522; }
.performance-action-priority.next { background: var(--color-primary-soft); color: var(--color-primary); }
.performance-linkage-flow { margin: 18px 0 8px; display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 14px; }
.performance-linkage-flow > div { padding: 13px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
.performance-linkage-flow > div > span { width: 26px; height: 26px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--color-primary-soft); color: var(--color-primary); font-weight: 700; }
.performance-linkage-flow p { margin: 0; }
.performance-linkage-flow strong,.performance-linkage-flow small { display: block; }
.performance-linkage-flow small { margin-top: 3px; color: var(--color-text-secondary); }
.performance-linkage-flow > i { color: var(--color-text-secondary); font-style: normal; }
.performance-linkage-card .reference-hint,.performance-management-footnote { margin: 10px 0 0; }
@media (max-width: 1000px) { .performance-overview-grid,.performance-management-grid { grid-template-columns: 1fr; } }
@media (max-width: 800px) { .performance-management-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); } .performance-structure-legend { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .performance-management-header { align-items: flex-start; flex-direction: column; } .performance-management-kpis,.performance-trend-list { grid-template-columns: 1fr; } .performance-management-conclusion { grid-template-columns: 1fr; gap: 5px; } .performance-linkage-flow { grid-template-columns: 1fr; } .performance-linkage-flow > i { text-align: center; transform: rotate(90deg); } }

/* 2026-09 performance management polish: hierarchy and responsive presentation only. */
.performance-management-page {
  --performance-strong: #20ad7a;
  --performance-stable: #4d7ff0;
  --performance-attention: #e58a35;
  --performance-decline: #df5d52;
  --performance-missing: #a6afbd;
  gap: 12px;
}
.performance-management-header { min-height: 0; padding: 14px 16px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); color: var(--color-text); box-shadow: var(--shadow-card); }
.performance-management-header::before,.performance-management-header::after { display: none; }
.performance-management-header .section-label { color: var(--color-text-secondary); }
.performance-management-header h2 { margin-top: 2px; font-size: 20px; }
.performance-management-header p:last-child { margin-top: 5px; color: var(--color-text-secondary); }

.performance-source-boundary { padding: 8px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface-subtle); }
.performance-source { min-width: 0; padding: 8px 10px; display: grid; grid-template-columns: 8px minmax(0,1fr); align-items: center; gap: 8px; border: 1px solid transparent; border-radius: 8px; color: var(--color-text-secondary); }
.performance-source > i { width: 8px; height: 8px; border-radius: 50%; background: var(--performance-missing); }
.performance-source > span { min-width: 0; display: grid; gap: 2px; }
.performance-source strong,.performance-source small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.performance-source strong { color: var(--color-text); font-size: 12px; }
.performance-source small { color: var(--color-text-secondary); font-size: 10px; }
.performance-source.active { border-color: color-mix(in srgb,var(--color-primary) 28%,var(--color-border)); background: var(--color-surface); }
.performance-source.active > i { background: var(--color-primary); box-shadow: 0 0 0 4px color-mix(in srgb,var(--color-primary) 12%,transparent); }

.performance-management-conclusion { padding: 14px 16px; grid-template-columns: 78px minmax(0,1fr); align-items: start; background: linear-gradient(105deg,var(--color-primary-soft),var(--color-surface) 58%); box-shadow: var(--shadow-card); }
.performance-management-conclusion.warning { border-color: color-mix(in srgb,var(--performance-attention) 32%,var(--color-border)); border-left-color: var(--performance-attention); background: linear-gradient(105deg,var(--color-warning-soft),var(--color-surface) 58%); }
.performance-management-conclusion.positive { border-left-color: var(--performance-strong); background: linear-gradient(105deg,var(--color-success-soft),var(--color-surface) 58%); }
.performance-management-conclusion > span { padding-top: 2px; font-size: 11px; font-weight: 700; letter-spacing: .04em; }
.performance-management-conclusion strong { font-size: 17px; line-height: 1.4; }

.performance-management-kpis { gap: 10px; }
.performance-metric { min-height: 108px; padding: 13px 14px; border-top: 2px solid color-mix(in srgb,var(--performance-missing) 34%,var(--color-border)); background: var(--color-surface); box-shadow: none; }
.performance-metric strong { font-variant-numeric: tabular-nums; }
.performance-metric.positive { border-top-color: var(--performance-strong); background: linear-gradient(180deg,color-mix(in srgb,var(--color-success-soft) 46%,var(--color-surface)),var(--color-surface) 52%); }
.performance-metric.warning { border-color: color-mix(in srgb,var(--performance-attention) 30%,var(--color-border)); border-top-color: var(--performance-attention); background: linear-gradient(180deg,color-mix(in srgb,var(--color-warning-soft) 58%,var(--color-surface)),var(--color-surface) 52%); }
.performance-metric.warning strong { color: var(--performance-attention); }

.performance-overview-grid > .reference-card { min-height: 214px; }
.performance-structure-bar { height: 12px; margin: 22px 0 20px; box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--color-border) 65%,transparent); }
.performance-structure-bar .strong,.performance-structure-legend i.strong,.department-mini-bar .strong { background: var(--performance-strong); }
.performance-structure-bar .stable,.performance-structure-legend i.stable,.department-mini-bar .stable { background: var(--performance-stable); }
.performance-structure-bar .attention,.performance-structure-legend i.attention,.department-mini-bar .attention { background: var(--performance-attention); }
.performance-structure-bar .unknown,.performance-structure-legend i.unknown,.department-mini-bar .unknown { background: var(--performance-missing); }
.performance-trend-list i.improving { background: var(--performance-strong); }
.performance-trend-list i.stable { background: var(--performance-stable); }
.performance-trend-list i.declining,.performance-trend-list i.threshold_attention { background: var(--performance-decline); }
.performance-trend-list i.volatile { background: var(--performance-attention); }
.performance-trend-summary > strong { color: var(--performance-attention); }
.performance-trend-list > span { border: 1px solid color-mix(in srgb,var(--color-border) 70%,transparent); background: var(--color-surface-subtle); }

.performance-department-table { width: 100%; table-layout: fixed; }
.performance-department-table th:nth-child(1) { width: 25%; }
.performance-department-table th:nth-child(2) { width: 12%; }
.performance-department-table th:nth-child(3) { width: 21%; }
.performance-department-table th:nth-child(4),.performance-department-table th:nth-child(5) { width: 15%; }
.performance-department-table th:nth-child(6) { width: 12%; }
.performance-department-table td { vertical-align: middle; font-variant-numeric: tabular-nums; }
.performance-department-table tbody tr.has-risk td:first-child { box-shadow: inset 3px 0 var(--performance-attention); }
.performance-department-name { min-width: 0; display: grid; grid-template-columns: 24px minmax(0,1fr); align-items: center; gap: 8px; }
.performance-department-name > b { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 7px; background: var(--color-surface-subtle); color: var(--color-text-secondary); font-size: 11px; }
.performance-department-name > span { min-width: 0; }
.performance-department-name strong { overflow: hidden; display: block; text-overflow: ellipsis; white-space: nowrap; }
.department-mini-bar { height: 9px; display: block; box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--color-border) 70%,transparent); }
.department-mini-bar rect.strong { fill: var(--performance-strong); }
.department-mini-bar rect.stable { fill: var(--performance-stable); }
.department-mini-bar rect.attention { fill: var(--performance-attention); }
.department-mini-bar rect.unknown { fill: var(--performance-missing); }
.attention-text { color: var(--performance-attention); }
.performance-risk-chip { background: var(--color-warning-soft); color: var(--performance-attention); }

.performance-actions-card { border-left: 3px solid var(--performance-attention); }
.performance-action-list > div { padding: 12px 8px; border-radius: 8px; }
.performance-action-list > div:has(.performance-action-priority.now) { background: color-mix(in srgb,var(--color-warning-soft) 56%,transparent); }
.performance-action-priority.now { background: var(--color-warning-soft); color: var(--performance-attention); }
.performance-linkage-flow > div { min-height: 62px; background: var(--color-surface-subtle); }
.performance-management-footnote { padding: 10px 12px; border-radius: 8px; background: var(--color-surface-subtle); }

.performance-structure-visual { min-height: 170px; margin-top: 16px; display: grid; grid-template-columns: 154px minmax(0,1fr); align-items: center; gap: 24px; }
.performance-structure-donut { width: 146px; height: 146px; display: grid; place-items: center; position: relative; }
.performance-structure-donut svg { width: 100%; height: 100%; position: absolute; overflow: visible; transform: rotate(-90deg); }
.performance-structure-donut circle { fill: none; stroke-width: 15; stroke-linecap: butt; }
.performance-structure-donut circle.track { stroke: color-mix(in srgb,var(--performance-missing) 17%,transparent); }
.performance-structure-donut circle.strong { stroke: var(--performance-strong); }
.performance-structure-donut circle.stable { stroke: var(--performance-stable); }
.performance-structure-donut circle.attention { stroke: var(--performance-attention); }
.performance-structure-donut circle.unknown { stroke: var(--performance-missing); }
.performance-structure-donut > span { z-index: 1; display: grid; text-align: center; }
.performance-structure-donut strong { font-size: 28px; line-height: 1; font-variant-numeric: tabular-nums; }
.performance-structure-donut small { margin-top: 6px; color: var(--color-text-secondary); font-size: 10px; }
.performance-structure-legend { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.performance-structure-legend > span { min-width: 0; padding: 10px; grid-template-columns: 9px minmax(0,1fr) auto; border: 1px solid var(--color-border); border-radius: 9px; background: var(--color-surface-subtle); }
.performance-structure-legend b { overflow: hidden; color: var(--color-text); font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.performance-structure-legend small { grid-column: 2 / -1; }
.performance-structure-legend progress { width: 100%; height: 5px; grid-column: 1 / -1; overflow: hidden; border: 0; border-radius: 999px; background: color-mix(in srgb,var(--performance-missing) 18%,transparent); }
.performance-structure-legend progress::-webkit-progress-bar { border-radius: inherit; background: color-mix(in srgb,var(--performance-missing) 18%,transparent); }
.performance-structure-legend progress::-webkit-progress-value { border-radius: inherit; background: var(--performance-missing); }
.performance-structure-legend progress.strong::-webkit-progress-value { background: var(--performance-strong); }
.performance-structure-legend progress.stable::-webkit-progress-value { background: var(--performance-stable); }
.performance-structure-legend progress.attention::-webkit-progress-value { background: var(--performance-attention); }

.performance-history-summary { margin-top: 14px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.performance-history-summary > span { padding: 9px 10px; display: grid; gap: 4px; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-surface-subtle); }
.performance-history-summary small { color: var(--color-text-secondary); font-size: 10px; }
.performance-history-summary strong { font-size: 15px; font-variant-numeric: tabular-nums; }
.performance-history-summary strong.positive { color: var(--performance-strong); }
.performance-history-summary strong.negative { color: var(--performance-decline); }
.performance-history-chart { height: 142px; margin-top: 14px; padding: 0 4px 2px; display: grid; grid-template-columns: repeat(8,minmax(26px,1fr)); align-items: end; gap: 7px; border-bottom: 1px solid var(--color-border); }
.performance-history-column { min-width: 0; height: 136px; display: grid; grid-template-rows: minmax(86px,1fr) auto auto; align-items: end; gap: 3px; text-align: center; }
.performance-history-column > svg { width: min(28px,70%); height: 86px; margin: 0 auto; overflow: hidden; border-radius: 5px 5px 2px 2px; background: var(--color-surface-subtle); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--color-border) 55%,transparent); }
.performance-history-column rect.strong { fill: var(--performance-strong); }
.performance-history-column rect.stable { fill: var(--performance-stable); }
.performance-history-column rect.attention { fill: var(--performance-attention); }
.performance-history-column > strong { overflow: hidden; color: var(--color-text-secondary); font-size: 9px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.performance-history-column > small { color: var(--color-text-secondary); font-size: 8px; }
.performance-history-legend { margin-top: 9px; display: flex; flex-wrap: wrap; gap: 12px; color: var(--color-text-secondary); font-size: 10px; }
.performance-history-legend span { display: inline-flex; align-items: center; gap: 5px; }
.performance-history-legend i { width: 7px; height: 7px; border-radius: 50%; }
.performance-history-legend i.strong { background: var(--performance-strong); }
.performance-history-legend i.stable { background: var(--performance-stable); }
.performance-history-legend i.attention { background: var(--performance-attention); }
.performance-history-note { margin: 8px 0 0; color: var(--color-text-secondary); font-size: 10px; line-height: 1.45; }

.performance-sort-button { max-width: 100%; padding: 0; display: inline-flex; align-items: center; gap: 4px; border: 0; background: transparent; color: inherit; font: inherit; font-weight: inherit; cursor: pointer; }
.performance-sort-button i { color: var(--color-text-secondary); font-size: 10px; font-style: normal; }
.performance-sort-button.active { color: var(--color-primary); }
.performance-department-pagination { padding: 12px 4px 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid var(--color-border); color: var(--color-text-secondary); font-size: 11px; }
.performance-department-pagination > div { display: flex; align-items: center; gap: 4px; }
.performance-department-pagination button { min-width: 28px; height: 28px; padding: 0 8px; border: 1px solid var(--color-border); border-radius: 7px; background: var(--color-surface); color: var(--color-text-secondary); font: inherit; cursor: pointer; }
.performance-department-pagination button.active { border-color: var(--color-primary); background: var(--color-primary-soft); color: var(--color-primary); font-weight: 700; }
.performance-department-pagination button:disabled { opacity: .42; cursor: not-allowed; }
.performance-department-pagination i { padding: 0 2px; font-style: normal; }
.performance-low-trigger { padding: 2px 5px; display: inline-grid; gap: 2px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--performance-attention); text-align: left; cursor: pointer; }
.performance-low-trigger small { color: var(--performance-attention); }
.performance-low-trigger:hover,.performance-low-trigger.active { border-color: color-mix(in srgb,var(--performance-attention) 45%,var(--color-border)); background: var(--color-warning-soft); }
.performance-low-detail { margin-top: 14px; padding: 14px; border: 1px solid color-mix(in srgb,var(--performance-attention) 36%,var(--color-border)); border-radius: 10px; background: color-mix(in srgb,var(--color-warning-soft) 38%,var(--color-surface)); }
.performance-low-detail > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.performance-low-detail > header > div { display: flex; align-items: baseline; gap: 8px; }
.performance-low-detail > header span { color: var(--color-text-secondary); font-size: 11px; }
.performance-low-detail > header strong { font-size: 15px; }
.performance-low-detail > header button { width: 28px; height: 28px; border: 1px solid var(--color-border); border-radius: 50%; background: var(--color-surface); color: var(--color-text-secondary); font-size: 18px; line-height: 1; cursor: pointer; }
.performance-low-definition { margin: 8px 0 12px; color: var(--color-text-secondary); font-size: 11px; }
.performance-low-table { background: var(--color-surface); }
.performance-low-grade { display: inline-flex; min-width: 28px; justify-content: center; padding: 3px 8px; border-radius: 999px; background: var(--color-warning-soft); color: var(--performance-attention); font-weight: 750; }
.performance-low-profile { padding: 5px 9px; border: 1px solid var(--color-border); border-radius: 7px; background: var(--color-surface); color: var(--color-primary); font: inherit; cursor: pointer; }

@media (max-width: 620px) {
  .performance-management-page { gap: 10px; }
  .performance-management-header { padding: 12px 13px; }
  .performance-management-header h2 { font-size: 17px; }
  .performance-management-header p:last-child { font-size: 11px; }
  .performance-source-boundary { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px; padding: 5px; }
  .performance-source { padding: 7px 5px; grid-template-columns: 6px minmax(0,1fr); gap: 5px; }
  .performance-source > i { width: 6px; height: 6px; }
  .performance-source strong { font-size: 10px; }
  .performance-source small { display: none; }
  .performance-management-conclusion { grid-template-columns: 1fr; gap: 4px; padding: 12px 13px; }
  .performance-management-conclusion strong { font-size: 15px; }
  .performance-management-conclusion p { font-size: 11px; }
  .performance-management-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .performance-metric { min-height: 102px; padding: 11px; }
  .performance-metric strong { font-size: 25px; }
  .performance-overview-grid > .reference-card { min-height: 0; }
  .performance-structure-visual { grid-template-columns: 118px minmax(0,1fr); gap: 12px; }
  .performance-structure-donut { width: 112px; height: 112px; }
  .performance-structure-donut circle { stroke-width: 14; }
  .performance-structure-donut strong { font-size: 22px; }
  .performance-structure-legend { grid-template-columns: 1fr; gap: 6px; }
  .performance-structure-legend > span { padding: 7px 8px; }
  .performance-trend-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .performance-history-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .performance-history-summary > span:last-child { grid-column: 1 / -1; }
  .performance-history-chart { overflow-x: auto; grid-template-columns: repeat(8,minmax(42px,1fr)); }
  .performance-department-card .reference-table-scroll { overflow: visible; }
  .performance-department-table { table-layout: auto; }
  .performance-department-table thead { display: none; }
  .performance-department-table tbody { display: grid; gap: 9px; }
  .performance-department-table tbody tr { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; padding: 12px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
  .performance-department-table tbody tr.has-risk { border-left: 3px solid var(--performance-attention); }
  .performance-department-table tbody tr.has-risk td:first-child { box-shadow: none; }
  .performance-department-table tbody td { min-width: 0 !important; padding: 0; display: grid; gap: 4px; border: 0; text-align: left; }
  .performance-department-table tbody td::before { content: attr(data-label); color: var(--color-text-secondary); font-size: 10px; font-weight: 650; }
  .performance-department-table tbody td:first-child,.performance-department-table tbody td:nth-child(3) { grid-column: 1 / -1; }
  .performance-department-table tbody td:nth-child(3) { padding: 8px 0; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); }
  .performance-department-name > b { width: 22px; height: 22px; }
  .performance-action-list > div { grid-template-columns: 40px minmax(0,1fr); }
  .performance-department-pagination { align-items: flex-start; flex-direction: column; }
  .performance-low-detail { padding: 12px; }
  .performance-low-table thead { display: none; }
  .performance-low-table,.performance-low-table tbody,.performance-low-table tr,.performance-low-table td { display: block; width: 100%; }
  .performance-low-table tr { padding: 8px 0; border-top: 1px solid var(--color-border); }
  .performance-low-table td { min-height: 28px; padding: 4px 0 4px 86px; position: relative; border: 0; }
  .performance-low-table td::before { content: attr(data-label); position: absolute; left: 0; color: var(--color-text-secondary); font-size: 10px; }
}
