/* WFM Supervisor Dashboard v2 */
*,*::before,*::after{box-sizing:border-box}
.wfmd-wrap{max-width:1280px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:14px;color:#1a1a1a;padding:0 0 40px}

/* Header */
.wfmd-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}
.wfmd-title{font-size:22px;font-weight:700;margin:0 0 4px;color:#185FA5}
.wfmd-subtitle{font-size:13px;color:#6b7280}
.wfmd-last-updated{font-size:12px;color:#9ca3af}
.wfmd-notice{padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:16px}
.wfmd-warn{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}

/* Filter bar */
.wfmd-filters{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 20px;margin-bottom:24px;box-shadow:0 1px 4px rgba(0,0,0,.05)}
.wfmd-filter-title{font-size:13px;font-weight:600;color:#374151;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.wfmd-filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.wfmd-fg{display:flex;flex-direction:column;gap:4px}
.wfmd-lbl{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}
.wfmd-input{border:1px solid #d1d5db;border-radius:8px;padding:7px 10px;font-size:13px;color:#111827;width:100%;background:#fff;transition:border-color .15s,box-shadow .15s}
.wfmd-input:focus{outline:none;border-color:#185FA5;box-shadow:0 0 0 3px rgba(24,95,165,.1)}
.wfmd-filter-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.wfmd-spinner{font-size:13px;color:#6b7280}

/* Buttons */
.wfmd-btn{padding:8px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:opacity .15s,transform .1s;display:inline-block;line-height:1.4}
.wfmd-btn:active{transform:scale(.98)}
.wfmd-btn-primary{background:#185FA5;color:#fff}
.wfmd-btn-primary:hover{background:#0C447C}
.wfmd-btn-ghost{background:transparent;color:#374151;border:1px solid #d1d5db}
.wfmd-btn-ghost:hover{background:#f9fafb}
.wfmd-btn-excel{background:#217346;color:#fff}
.wfmd-btn-excel:hover{opacity:.9}

/* KPI row */
.wfmd-kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px}
.wfmd-kpi{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 14px;text-align:center;cursor:default;transition:box-shadow .15s,transform .15s}
.wfmd-kpi:hover{box-shadow:0 6px 16px rgba(0,0,0,.1);transform:translateY(-2px)}
.wfmd-kpi-icon{font-size:20px;margin-bottom:6px}
.wfmd-kpi-val{font-size:24px;font-weight:700;line-height:1;margin-bottom:4px}
.wfmd-kpi-lbl{font-size:11px;color:#6b7280;font-weight:500}

/* Layout rows */
.wfmd-row1{margin-bottom:16px}
.wfmd-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}

/* Chart boxes */
.wfmd-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 20px;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.wfmd-box-wide{grid-column:span 2}
.wfmd-box-title{font-size:14px;font-weight:600;color:#111827;margin:0 0 14px;display:flex;align-items:center;gap:8px}
.wfmd-box-title::before{content:'';display:inline-block;width:3px;height:14px;background:#185FA5;border-radius:2px}
.wfmd-empty{text-align:center;padding:28px 16px;color:#9ca3af;font-size:13px;border:1px dashed #e5e7eb;border-radius:8px}

/* Horizontal bar chart */
.wfmd-bar-chart{display:flex;flex-direction:column;gap:9px}
.wfmd-bar-row{display:grid;grid-template-columns:140px 1fr 100px;align-items:center;gap:10px}
.wfmd-bar-lbl{font-size:12px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;font-weight:500}
.wfmd-bar-track{height:24px;background:#f3f4f6;border-radius:6px;overflow:hidden}
.wfmd-bar-bg{height:100%;background:#dbeafe;border-radius:6px;position:relative;min-width:3px;transition:width .5s ease}
.wfmd-bar-done{position:absolute;left:0;top:0;height:100%;background:#185FA5;border-radius:6px;transition:width .5s ease}
.wfmd-bar-meta{display:flex;flex-direction:column;gap:1px}
.wfmd-bn{font-size:14px;font-weight:700;color:#111827}
.wfmd-bc{font-size:11px;color:#3B6D11}
.wfmd-bd{font-size:11px;color:#0891B2}
.wfmd-br{font-size:11px;color:#BA7517}

/* Stacked bar */
.wfmd-stacked-bar{display:flex;height:24px;border-radius:8px;overflow:hidden;margin-bottom:14px}
.wfmd-stack-seg{height:100%;transition:width .5s ease;min-width:2px}

/* Status list */
.wfmd-status-list{display:flex;flex-direction:column;gap:8px}
.wfmd-st-row{display:grid;grid-template-columns:10px 90px 1fr 32px 40px;align-items:center;gap:8px}
.wfmd-st-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.wfmd-st-name{font-size:12px;color:#374151}
.wfmd-st-bar{height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}
.wfmd-st-n{font-size:13px;font-weight:700;text-align:right}
.wfmd-st-pct{font-size:11px;color:#9ca3af;text-align:right}

/* Monthly trend */
.wfmd-trend-wrap{display:flex;align-items:flex-end;gap:8px;overflow-x:auto;padding-bottom:8px;min-height:140px}
.wfmd-tcol{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:50px}
.wfmd-t-vals{font-size:11px;font-weight:700;color:#374151;text-align:center;height:18px;display:flex;align-items:center;justify-content:center}
.wfmd-t-barwrap{display:flex;align-items:flex-end;position:relative}
.wfmd-t-bar{width:36px;background:#dbeafe;border-radius:4px 4px 0 0;position:relative;min-height:4px;transition:height .5s ease}
.wfmd-t-done{position:absolute;bottom:0;left:0;width:100%;background:#185FA5;border-radius:4px 4px 0 0;transition:height .5s ease}
.wfmd-t-lbl{font-size:10px;color:#6b7280;text-align:center;margin-top:4px;white-space:nowrap}
.wfmd-t-mttr{font-size:9px;color:#0891B2;font-weight:600;text-align:center}
.wfmd-legend{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}
.wfmd-leg{font-size:11px;color:#6b7280}

/* Requests table section */
.wfmd-section{margin-bottom:0}
.wfmd-sec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.wfmd-badge-count{font-size:12px;background:#f3f4f6;color:#6b7280;padding:2px 10px;border-radius:20px;margin-left:8px;font-weight:500}
.wfmd-tbl-wrap{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}
.wfmd-tbl{width:100%;border-collapse:collapse;font-size:12px;min-width:900px}
.wfmd-tbl th{background:#f9fafb;color:#6b7280;font-weight:600;padding:10px 12px;border-bottom:2px solid #e5e7eb;text-align:left;white-space:nowrap;position:sticky;top:0}
.wfmd-tbl td{padding:9px 12px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle}
.wfmd-tbl tbody tr:last-child td{border-bottom:none}
.wfmd-tbl tbody tr:hover td{background:#f9fafb}
.wfmd-badge{display:inline-block;padding:2px 10px;border-radius:20px;color:#fff;font-size:11px;font-weight:600;white-space:nowrap}
.wfmd-tc{text-align:center}
.wfmd-tbl-note{font-size:12px;color:#9ca3af;margin-top:10px;text-align:right}

/* Select2 overrides */
.select2-container{width:100%!important}
.select2-container--default .select2-selection--single{border:1px solid #d1d5db!important;border-radius:8px!important;height:36px!important;font-size:13px!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:34px!important;padding-left:10px!important;color:#111827!important}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:34px!important}
.select2-dropdown{border:1px solid #d1d5db!important;border-radius:8px!important;box-shadow:0 4px 12px rgba(0,0,0,.1)!important;font-size:13px!important;z-index:99999!important}
.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #d1d5db!important;border-radius:6px!important;padding:6px 8px!important}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:#185FA5!important}

/* Content fade during load */
#wfmd-content{transition:opacity .25s}
#wfmd-content.wfmd-loading{opacity:.4;pointer-events:none}

/* Responsive */
@media(max-width:1100px){.wfmd-kpi-row{grid-template-columns:repeat(5,1fr)}.wfmd-filter-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.wfmd-row2{grid-template-columns:1fr}.wfmd-kpi-row{grid-template-columns:repeat(3,1fr)}.wfmd-filter-grid{grid-template-columns:repeat(2,1fr)}.wfmd-box-wide{grid-column:span 1}}
@media(max-width:600px){.wfmd-kpi-row{grid-template-columns:repeat(2,1fr)}.wfmd-filter-grid{grid-template-columns:1fr}.wfmd-bar-row{grid-template-columns:100px 1fr 80px}}
