/* Shared technician / management performance surface. */
#view-performance { padding-bottom: 96px; }
body .app-shell .performance-workspace { color:#203149; font-size:1rem; line-height:1.5; --perf-line:#dbe3ed; }
.performance-workspace * { box-sizing:border-box; }
body .performance-workspace .perf-heading { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:30px 32px; background:#17283e; color:#fff; border-radius:14px 14px 0 0; border-left:5px solid #739eff; }
body .app-shell .performance-workspace h2 { font-size:clamp(1.65rem,3vw,2.25rem); letter-spacing:-.035em; line-height:1.15; margin:8px 0 10px; color:inherit; }
body .app-shell .performance-workspace h3 { font-size:1.125rem; line-height:1.4; margin:0; }
body .app-shell .performance-workspace h4 { font-size:1rem; margin:0; }
.performance-workspace .perf-eyebrow { font-size:.72rem; letter-spacing:.16em; font-weight:700; color:#abc7ff; }
.performance-workspace p { margin:6px 0 16px; color:#59697d; }
.performance-workspace .perf-heading p { color:#ced9e8; margin:0; font-size:.95rem; max-width:680px; }
.performance-workspace .perf-scope { flex-shrink:0; border:1px solid #5a708c; border-radius:6px; padding:8px 14px; font-size:.875rem; color:#fff; background:#243c58; max-width:100%; overflow-wrap:anywhere; }
.performance-workspace .perf-policy { display:flex; flex-wrap:wrap; gap:8px 24px; padding:12px 20px; background:#eaf0fa; border-radius:0 0 10px 10px; font-size:.8rem; color:#42546c; margin-bottom:20px; }
.performance-workspace .perf-policy b { color:#254d94; }
.performance-workspace .perf-update { display:flex; justify-content:space-between; align-items:center; gap:12px; background:#fff5df; color:#704b08; border:1px solid #e7ce94; padding:12px 16px; margin-bottom:12px; border-radius:8px; font-size:.875rem; }
.performance-workspace .perf-update[hidden] { display:none; }
.performance-workspace .perf-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; padding:16px 20px; background:#fff; border:1px solid var(--perf-line); border-radius:10px; margin-bottom:24px; }
body .app-shell .performance-workspace .perf-filters label { display:grid; gap:5px; font-size:.8rem; min-width:150px; flex:1; color:#43546a; font-weight:600; }
.performance-workspace .perf-filters label[hidden] { display:none; }
body .app-shell .performance-workspace input,body .app-shell .performance-workspace select { min-height:42px; font-size:.95rem; width:100%; border-color:#b5c4d5; }
body .app-shell .performance-workspace .perf-filters button { min-height:42px; padding:10px 18px; font-size:.875rem; }
.performance-workspace .perf-live { font-size:.75rem; align-self:center; color:#59697d; flex-basis:100%; }
.performance-workspace .perf-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.performance-workspace .perf-metric { background:#fff; border:1px solid var(--perf-line); border-top:3px solid #7f93ad; border-radius:10px; padding:20px; min-width:0; box-shadow:0 3px 12px #17283e05; }
.performance-workspace .perf-metric-0 { border-top-color:#426fe0; }
.performance-workspace .perf-metric-1 { border-top-color:#198474; }
.performance-workspace .perf-metric-2 { border-top-color:#c28729; }
.performance-workspace .perf-metric>span { display:block; font-size:.875rem; font-weight:650; color:#40536a; }
.performance-workspace .perf-metric>strong { display:block; font-size:clamp(2rem,3.4vw,2.8rem); letter-spacing:-.045em; line-height:1.15; margin:16px 0 10px; font-variant-numeric:tabular-nums; color:#1b304d; }
.performance-workspace .perf-metric-1>strong { color:#116b5e; }
.performance-workspace .perf-metric-2>strong { color:#8b590f; }
.performance-workspace small { display:block; color:#59697d; font-size:.78rem; }
.performance-workspace details { margin-top:12px; font-size:.8rem; }
.performance-workspace summary { cursor:pointer; color:#31558c; min-height:28px; }
.performance-workspace details p { margin:8px 0 0; }
.performance-workspace .perf-tracking { display:flex; gap:14px; background:#edf1f6; border-left:3px solid #94a6be; padding:15px 18px; font-size:.8rem; margin:20px 0; color:#47586e; }
.performance-workspace .perf-tracking strong { white-space:nowrap; color:#203149; }
.performance-workspace .perf-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px; }
.performance-workspace .perf-panel { background:#fff; border:1px solid var(--perf-line); border-radius:12px; padding:24px; min-width:0; }
.performance-workspace .perf-panel>p { font-size:.8rem; }
.performance-workspace .perf-team { margin-top:20px; border-top:3px solid #426fe0; }
.performance-workspace .perf-bars { display:grid; gap:20px; }
.performance-workspace .perf-bar-row>div:first-child { display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px 12px; font-size:.875rem; margin-bottom:8px; }
.performance-workspace .perf-bar-row span { font-variant-numeric:tabular-nums; }
.performance-workspace .perf-bar-row small { display:inline; }
.performance-workspace .perf-track { height:8px; border-radius:3px; background:#edf1f6; overflow:hidden; }
.performance-workspace .perf-track i { display:block; height:100%; background:#557bca; border-radius:3px; }
.performance-workspace .perf-quality .perf-track i { background:#bb8840; }
.performance-workspace .perf-cost-list>div { display:flex; justify-content:space-between; gap:12px; padding:14px 0; border-bottom:1px solid #e1e8f0; font-size:.875rem; }
.performance-workspace .perf-focus { margin-top:24px; padding:18px; border-radius:8px; background:#eef4fb; border-left:3px solid #527fcc; }
.performance-workspace .perf-focus p { font-size:.875rem; margin-bottom:0; }
.performance-workspace .perf-section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.performance-workspace .perf-section-heading span { font-size:.75rem; color:#59697d; }
.performance-workspace .perf-table-wrap { overflow-x:auto; }
.performance-workspace table { width:100%; border-collapse:collapse; font-size:.875rem; }
body .app-shell .performance-workspace th,body .app-shell .performance-workspace td { text-align:left; padding:14px 12px; border-bottom:1px solid #e1e8f0; vertical-align:middle; font-size:.875rem; line-height:1.45; white-space:normal; }
body .app-shell .performance-workspace th { background:#f3f6fa; font-size:.75rem; color:#50647e; }
.performance-workspace .perf-review-tag { display:inline-block; background:#fff0d2; color:#785010; padding:3px 8px; border-radius:5px; font-size:.78rem; }
.performance-workspace .perf-empty { padding:20px 0; }
.performance-workspace .perf-footnote { margin-top:20px; font-size:.8rem; }
.performance-workspace .text-button { min-height:36px; color:#315ca5; font-weight:650; }
@media(max-width:1100px) { .performance-workspace .perf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:700px) {
 body .performance-workspace .perf-heading{align-items:start;gap:16px;flex-direction:column;padding:24px 20px;}
 .performance-workspace .perf-grid{grid-template-columns:1fr;gap:14px;}
 .performance-workspace .perf-tracking{flex-direction:column;gap:5px;}
 .performance-workspace .perf-panel{padding:16px;}
 .performance-workspace .perf-metric{padding:16px 12px;}
 .performance-workspace .perf-metric>span{min-height:2.7em;}
 .performance-workspace .perf-filters{padding:14px;}
 .performance-workspace .perf-filters button,.performance-workspace .text-button{min-height:44px;}
 .performance-workspace .perf-update{align-items:start;flex-direction:column;}
 .performance-workspace .perf-table-wrap table{min-width:620px;}
}
@media(max-width:390px) { .performance-workspace .perf-kpis{grid-template-columns:1fr;} .performance-workspace .perf-metric>span{min-height:0;} }
