:root{
  --primary:#0052FF;
  --primary-hover:#003ECB;
  --secondary:#5B616E;
  --neutral:#8A919E;
  --background:#F9FAFB;
  --surface:#FFFFFF;
  --text:#050F1A;
  --text-secondary:#5B616E;
  --border:#D1D5DB;
  --border-soft:#E5E7EB;
  --success:#05B169;
  --warning:#F0AD4E;
  --error:#DF2935;
  --blue-soft:#EEF4FF;
  --success-soft:#E6F6EF;
  --warning-soft:#FFF7E8;
  --error-soft:#FDECEE;
  --neutral-soft:#F3F4F6;
  --shadow-1:0 1px 3px rgba(5,15,26,.06);
  --shadow-2:0 4px 12px rgba(5,15,26,.08);
  --shadow-3:0 12px 24px rgba(5,15,26,.12);
}
*{box-sizing:border-box}
html{font-family:"IBM Plex Sans Thai",system-ui,sans-serif;background:var(--background);color:var(--text)}
body{margin:0;background:var(--background);font-size:16px;line-height:1.62;letter-spacing:0}
button,input,select{font:inherit}
button{cursor:pointer}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mono{font-family:"JetBrains Mono",monospace;font-variant-numeric:tabular-nums}
.topbar{height:64px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.topbar-inner{height:100%;width:100%;padding:0 20px;display:flex;align-items:center;gap:22px}
.brand{border:0;background:none;padding:0;display:flex;align-items:center;gap:10px;color:var(--text);width:220px;flex:none;text-align:left}
.brand-mark{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--primary);color:#fff;font:700 12px/1 "JetBrains Mono",monospace;letter-spacing:-.02em}
.brand-mark.large{width:52px;height:52px;border-radius:13px;font-size:14px}
.brand-copy{display:flex;flex-direction:column;line-height:1.15}
.brand-copy strong{font-size:15px;font-weight:700}
.brand-copy small{font-size:12px;color:var(--neutral);margin-top:3px}
.primary-nav{height:100%;display:flex;align-items:stretch;gap:2px;flex:1;overflow-x:auto;scrollbar-width:none}
.primary-nav::-webkit-scrollbar{display:none}
.nav-item{position:relative;border:0;background:none;color:var(--text-secondary);padding:0 12px;white-space:nowrap;font-weight:600;font-size:14px}
.nav-item:hover{color:var(--text)}
.nav-item.active{color:var(--primary)}
.nav-item.active::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--primary)}
.header-search{max-width:680px;margin-right:auto}
.header-search .search-results{top:48px}
.top-actions{display:flex;align-items:center;gap:8px}
.cycle-pill{height:36px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:#fff;white-space:nowrap;font-weight:500}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}
.cycle-state{font:500 10px "JetBrains Mono",monospace;color:var(--success);padding:3px 5px;background:var(--success-soft);border-radius:4px}
.icon-button,.profile-button{width:38px;height:38px;border:0;background:transparent;display:grid;place-items:center;border-radius:8px;position:relative;color:var(--secondary)}
.icon-button:hover,.profile-button:hover{background:var(--neutral-soft)}
.icon-button svg{width:19px}
.notification-dot{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--error);right:7px;top:7px;border:2px solid #fff}
.avatar{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:var(--text);color:#fff;font-size:11px;font-weight:700}
.avatar.soft{background:var(--blue-soft);color:var(--primary);border:1px solid #DCE8FF;flex:none}

.app-layout{display:flex;min-height:calc(100vh - 64px)}
.sidebar{width:240px;flex:none;background:#fff;border-right:1px solid var(--border);padding:18px 12px;position:sticky;top:64px;height:calc(100vh - 64px);overflow:auto}
.side-nav{display:flex;flex-direction:column;gap:18px}
.side-group{display:flex;flex-direction:column;gap:3px}
.side-label{padding:0 10px 7px;color:var(--neutral);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.side-link{width:100%;min-height:42px;border:0;background:transparent;border-radius:8px;padding:7px 10px;display:flex;align-items:center;gap:10px;color:var(--text-secondary);text-align:left;font-size:14px;font-weight:600}
.side-link:hover{background:var(--background);color:var(--text)}
.side-link.active{background:var(--blue-soft);color:var(--primary)}
.side-link.is-locked{opacity:.42}
.side-link.is-locked:hover{background:transparent;color:var(--text-secondary)}
.side-link.is-locked .side-icon::after{content:'·';margin-left:2px}
.side-icon{width:26px;height:26px;border-radius:6px;background:var(--neutral-soft);display:grid;place-items:center;flex:none;color:var(--neutral);font:500 10px "JetBrains Mono",monospace}
.side-link.active .side-icon{background:#DCE8FF;color:var(--primary)}
.side-group-last{padding-top:4px;border-top:1px solid var(--border-soft)}

.page-shell{flex:1;min-width:0;max-width:1500px;margin:0 auto;padding:34px 36px 88px;width:100%}
.view{display:none}
.view.active{display:block}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.page-heading-help{margin:6px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.5;max-width:760px}
.eyebrow{margin:0 0 8px;color:var(--primary);font:600 12px/1.3 "IBM Plex Sans Thai",system-ui,sans-serif;letter-spacing:.06em}
h1,h2,h3,p{margin-top:0}
h1{font-size:36px;line-height:1.22;letter-spacing:-.015em;margin-bottom:8px;font-weight:700}
h2{font-size:21px;line-height:1.3;letter-spacing:-.01em;margin-bottom:5px;font-weight:700}
.page-description,.panel-header p{color:var(--text-secondary);margin-bottom:0;font-size:15px;line-height:1.6}
.heading-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn{height:46px;min-width:104px;padding:0 20px;border-radius:8px;font-weight:700;font-size:15px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn.primary{background:var(--primary);color:#fff}
.btn.primary:hover{background:var(--primary-hover)}
.btn.secondary{background:#fff;color:var(--text);border-color:var(--border)}
.btn.secondary:hover{border-color:#9CA3AF;background:#FAFAFA}
.btn.ghost{background:transparent;color:var(--primary);min-width:auto;padding:0 12px}
.btn:disabled{opacity:.4;cursor:not-allowed}
.compact-btn{height:42px}
.text-button{border:0;background:none;color:var(--primary);font-weight:700;padding:7px 0}
.text-button:hover{text-decoration:underline}

.search-row{display:flex;align-items:center;gap:8px;margin-bottom:20px}
.search-box{height:44px;position:relative;display:flex;align-items:center;flex:1;max-width:620px;background:var(--neutral-soft);border:1px solid transparent;border-radius:8px}
.search-box:focus-within{background:#fff;border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.10)}
.search-box svg{width:18px;height:18px;margin-left:14px;color:var(--neutral)}
.search-box input{height:100%;flex:1;border:0;outline:0;background:transparent;padding:0 12px;color:var(--text);min-width:0}
.search-box input::placeholder{color:var(--neutral)}
.shortcut{font:500 11px "JetBrains Mono",monospace;color:var(--neutral);border:1px solid var(--border);border-radius:5px;padding:2px 5px;margin-right:8px;background:#fff}
.search-results{position:absolute;top:50px;left:0;right:0;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-2);z-index:15;padding:7px}
.search-result{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border-radius:7px}
.search-result:hover{background:var(--background)}
.search-result small{color:var(--neutral)}

.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}
.metric-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:22px;box-shadow:var(--shadow-1);min-height:148px}
.metric-card.accent{border-color:#B7CDFF}
.metric-card.warning-card{border-color:#F4D7A6}
.metric-button{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}
.metric-button:hover{border-color:#9FBCFF;box-shadow:0 1px 4px rgba(5,15,26,.08)}
.metric-label{color:var(--text-secondary);font-weight:600;display:flex;align-items:center;gap:6px;font-size:15px}
.info-dot{display:inline-grid;place-items:center;width:15px;height:15px;border:1px solid var(--border);border-radius:50%;font-size:9px;color:var(--neutral)}
.metric-value{font:600 36px/1.08 "JetBrains Mono",monospace;letter-spacing:-.025em;margin:15px 0 11px}
.metric-note{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:13px;min-height:30px;flex-wrap:wrap}

.chip{display:inline-flex;height:29px;align-items:center;padding:0 10px;border-radius:6px;font-size:13px;font-weight:600;white-space:nowrap}
.chip.positive{background:var(--success-soft);color:#008C52}
.chip.negative{background:var(--error-soft);color:var(--error)}
.chip.warning{background:var(--warning-soft);color:#A35E00}
.chip.neutral{background:var(--neutral-soft);color:var(--secondary)}
.blue-chip{background:var(--blue-soft);color:var(--primary)}

.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.panel{background:#fff;border:1px solid var(--border);border-radius:12px;padding:22px;box-shadow:var(--shadow-1)}
.panel.span-2{grid-column:span 2}
.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.panel-header p{font-size:14px}
.count-badge{min-width:28px;height:28px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:var(--error-soft);color:var(--error);font:500 12px "JetBrains Mono",monospace}

.readiness-list{display:flex;flex-direction:column;gap:12px}
.readiness-row{display:grid;grid-template-columns:180px 1fr 52px;align-items:center;gap:16px;border:0;background:none;padding:6px 0;text-align:left;color:var(--text);font-size:15px}
.readiness-name{display:flex;align-items:center;gap:8px;font-weight:500}
.legend{width:8px;height:8px;border-radius:50%;background:var(--neutral)}
.legend.success{background:var(--success)}.legend.warning{background:var(--warning)}.legend.slate{background:var(--secondary)}.legend.neutral{background:#C9CDD4}
.bar{height:7px;border-radius:999px;background:var(--neutral-soft);overflow:hidden}
.bar>span{display:block;height:100%;background:var(--success);border-radius:inherit}
.bar .slate-bar{background:var(--secondary)}.bar .warning-bar{background:var(--warning)}.bar .neutral-bar{background:#C9CDD4}
.readiness-row .mono{text-align:right;font-size:13px}

.exception-list{display:flex;flex-direction:column}
.exception-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;width:100%;padding:12px 0;border:0;border-bottom:1px solid var(--border-soft);background:none;text-align:left;font-size:14px}
.exception-item:last-child{border-bottom:0}
.exception-item strong,.exception-item small{display:block}
.exception-item small{color:var(--neutral);margin-top:1px}
.exception-icon{width:29px;height:29px;border-radius:7px;display:grid;place-items:center;font-weight:700}
.error-bg{background:var(--error-soft);color:var(--error)}
.warning-bg{background:var(--warning-soft);color:#A35E00}
.blue-bg{background:var(--blue-soft);color:var(--primary)}
.neutral-bg{background:var(--neutral-soft);color:var(--secondary)}

.stage-grid{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--border-soft);border-radius:8px;overflow:hidden}
.stage{padding:16px;border:0;border-right:1px solid var(--border-soft);background:#fff;text-align:left;color:inherit}
.stage-button{font:inherit;cursor:pointer}
.stage-button:hover{background:var(--background)}
.stage:last-child{border-right:0}
.stage-value{display:block;font:600 20px "JetBrains Mono",monospace}
.stage-label{display:block;margin-top:5px;color:var(--text-secondary);font-size:13px;line-height:1.45}
.active-stage{background:var(--blue-soft)}
.active-stage .stage-value{color:var(--primary)}

.activity-list{display:flex;flex-direction:column;gap:13px}
.activity-item{display:flex;gap:10px;align-items:flex-start}
.activity-item strong,.activity-item small{display:block}
.activity-item small{color:var(--neutral);margin-top:2px}
.activity-dot{width:8px;height:8px;background:var(--primary);border-radius:50%;margin-top:6px;flex:none}
.activity-dot.green{background:var(--success)}.activity-dot.amber{background:var(--warning)}

.mini-metrics{display:flex;gap:8px;overflow:auto;margin-bottom:16px;padding-bottom:2px}
.mini-metric{min-width:148px;border:1px solid var(--border);background:#fff;border-radius:8px;padding:13px 15px;text-align:left}
.mini-metric.selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.mini-metric .mono{display:block;font-size:21px;font-weight:600}
.mini-metric small{color:var(--text-secondary);font-size:13px}
.toolbar{display:flex;align-items:center;gap:8px;margin:16px 0}
.search-box.compact{max-width:360px;height:42px}
.select{height:42px;border:1px solid var(--border);background:#fff;border-radius:8px;padding:0 34px 0 12px;color:var(--text)}
.select:focus{outline:2px solid var(--primary);outline-offset:-2px}

.table-panel{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.table-meta{min-height:52px;padding:0 16px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--text-secondary);font-size:13px}
.table-meta strong{color:var(--text)}
.table-scroll{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:980px}
thead th{height:46px;padding:0 14px;border-bottom:1px solid var(--border);background:#FBFCFD;color:var(--neutral);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.055em;text-align:left;white-space:nowrap}
tbody td{height:70px;padding:10px 14px;border-bottom:1px solid var(--border-soft);vertical-align:middle;font-size:14px}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--background)}
th.right,td.right{text-align:right}
.check-cell{width:42px;text-align:center!important}
input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}
.person-cell{display:flex;align-items:center;gap:9px}
.person-cell strong,.person-cell small{display:block;white-space:nowrap}
.person-cell strong{font-size:15px;font-weight:600}
.person-cell small{color:var(--neutral);font:400 11px "JetBrains Mono",monospace;margin-top:2px}
.small-mono{font-size:12px;color:var(--secondary);white-space:nowrap}
.error-text{color:var(--error)!important}.success-text{color:var(--success)!important}
.disabled-row{background:#FCFCFD;color:var(--secondary)}
.disabled-row .avatar{opacity:.65}
.table-footer{min-height:54px;padding:0 14px;border-top:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between;color:var(--text-secondary);font-size:13px}
.pagination{display:flex;gap:4px}
.pagination button{width:32px;height:32px;border:1px solid var(--border);background:#fff;border-radius:6px}
.pagination .current{border-color:var(--primary);color:var(--primary)}
.pagination button:disabled{opacity:.4}

.progress-line{width:120px;height:6px;border-radius:999px;background:var(--neutral-soft);overflow:hidden}
.progress-line span{display:block;height:100%;background:var(--primary)}
.success-line span{background:var(--success)}
.waiting-stack strong,.waiting-stack small{display:block}
.waiting-stack small{font-size:11px;color:var(--text-secondary);margin-top:1px}
.highlight-row{background:#F8FBFF}
.row-action{border:0;background:transparent;color:var(--neutral);font-weight:700}

.calibration-banner{border:1px solid #B7CDFF;background:var(--blue-soft);border-radius:10px;padding:13px 16px;margin-bottom:16px;color:#1D4ED8}
.calibration-banner>div{display:flex;align-items:center;gap:10px}
.banner-icon{width:28px;height:28px;border-radius:50%;background:#fff;display:grid;place-items:center;font-weight:700;flex:none}
.calibration-banner strong,.calibration-banner small{display:block}
.calibration-banner small{color:#3B63B8;margin-top:1px}
.error-number{color:var(--error)}
.score-pair{display:block;font-size:11px;color:var(--secondary);white-space:nowrap}
.strong-data{font-size:14px;font-weight:500}
.grade{width:30px;height:27px;border-radius:6px;display:grid;place-items:center;font:700 12px "JetBrains Mono",monospace}
.grade-a{background:var(--success-soft);color:var(--success)}.grade-b{background:var(--blue-soft);color:var(--primary)}
.attention-row{background:#FFFDFC}
.precision-note{padding:12px 16px;border-top:1px solid var(--border);background:#FBFCFD;color:var(--text-secondary);font-size:12px}

.overview-heading{align-items:flex-start;margin-bottom:22px}
.overview-heading-meta{display:flex;align-items:flex-end;flex-direction:column;gap:7px;padding-top:5px}
.status-badge{height:32px;padding:0 10px;border:1px solid #BFE8D5;background:var(--success-soft);color:#087A4A;border-radius:7px;display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:13px}
.muted-copy{color:var(--text-secondary);font-size:12px;max-width:360px;text-align:right}

.phase-strip{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:8px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:16px}
.phase-card{min-height:68px;border-radius:8px;padding:11px 12px;display:flex;align-items:flex-start;gap:10px;background:var(--background)}
.phase-card strong,.phase-card small{display:block}
.phase-card strong{font-size:14px;line-height:1.35}
.phase-card small{margin-top:3px;color:var(--text-secondary);font-size:11px;line-height:1.45}
.phase-no{width:27px;height:27px;border-radius:6px;background:#fff;border:1px solid var(--border-soft);display:grid;place-items:center;flex:none;color:var(--primary);font:600 10px "JetBrains Mono",monospace}
.phase-separator{color:#A7AFBA;font-size:17px;text-align:center}
.compact-phases .phase-card{min-height:52px;align-items:center;padding:10px 12px}
.compact-phases .phase-card strong{font-size:13px}

.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}
.overview-main,.overview-side{display:flex;flex-direction:column;gap:16px}
.control-panel{padding:0;overflow:hidden}
.control-panel .panel-header{padding:20px 22px 16px;margin-bottom:0;border-bottom:1px solid var(--border-soft)}
.control-list{display:flex;flex-direction:column}
.control-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:15px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border-soft)}
.control-row:last-child{border-bottom:0}
.control-row-blue{background:#FBFDFF}
.control-icon{width:36px;height:36px;border-radius:9px;background:var(--neutral-soft);color:var(--secondary);display:grid;place-items:center;font:700 12px "JetBrains Mono",monospace}
.primary-icon{background:var(--primary);color:#fff}
.control-copy h3{margin:0 0 4px;font-size:17px;line-height:1.35}
.control-copy p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.55}
.control-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.control-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:235px}
.control-actions .btn{height:40px;font-size:13px;min-width:auto;padding:0 14px}

.workflow-status-panel .panel-header{margin-bottom:14px}
.status-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.status-cell{min-height:76px;border:1px solid var(--border-soft);background:#fff;border-radius:9px;padding:11px 12px;text-align:left;display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.status-cell:hover{border-color:#9FBCFF;background:#FCFDFF}
.status-cell span{color:var(--text-secondary);font-size:12px;line-height:1.35}
.status-cell strong{color:var(--text);font-size:18px;font-weight:600}

.quick-access-panel .panel-header{margin-bottom:12px}
.quick-access-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.quick-access{min-height:70px;border:1px solid var(--border-soft);background:#fff;border-radius:9px;padding:11px 12px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;gap:8px}
.quick-access:hover{border-color:#9FBCFF;background:#FCFDFF}
.quick-access span{color:var(--neutral);font:500 10px "JetBrains Mono",monospace}
.quick-access strong{font-size:13px;line-height:1.35}
.primary-quick{border-color:#9FBCFF;background:var(--blue-soft)}
.primary-quick span,.primary-quick strong{color:var(--primary)}

.exception-panel,.cycle-control-panel{padding:18px}
.exception-panel .panel-header,.cycle-control-panel .panel-header{margin-bottom:12px}
.exception-types{display:flex;flex-direction:column}
.exception-types button{min-height:43px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;padding:8px 2px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;color:var(--text);font-size:13px}
.exception-types button:last-child{border-bottom:0}
.exception-types button:hover{color:var(--primary)}
.cycle-info{margin:0 0 14px}
.cycle-info>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px;border-bottom:1px solid var(--border-soft)}
.cycle-info dt{color:var(--text-secondary);font-size:12px}
.cycle-info dd{margin:0;font-weight:600;font-size:13px}
.cycle-note{padding:11px 12px;border-radius:8px;background:var(--blue-soft);color:#315AAB;font-size:12px;line-height:1.5;margin-bottom:12px}
.full-width{width:100%}

.prototype-data-banner{margin-bottom:16px;min-height:42px;padding:9px 12px;border:1px solid #D9E5FF;border-radius:9px;background:#F7FAFF;color:#315AAB;display:flex;align-items:center;gap:10px;font-size:11px}
.prototype-data-banner[hidden]{display:none}
.prototype-data-banner strong{font:700 10px "JetBrains Mono",monospace;letter-spacing:.05em;background:#fff;color:var(--primary);border-radius:5px;padding:3px 6px;white-space:nowrap}
.prototype-data-banner span{flex:1}
.prototype-data-banner button{border:0;background:transparent;color:var(--primary);font-weight:700;white-space:nowrap}

.overview-control-heading{align-items:flex-start}
.overview-heading-status{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.overview-readiness-panel{padding:20px 22px;margin-bottom:14px}
.overview-readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.overview-readiness-head h2{margin:0;font-size:20px}
.overview-readiness-head>span{font-size:12px;color:var(--text-secondary);max-width:420px;text-align:right}
.overview-readiness-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.overview-readiness-card{min-height:102px;border:1px solid var(--border-soft);border-radius:10px;background:#fff;padding:12px;text-align:left;display:flex;flex-direction:column;color:var(--text)}
.overview-readiness-card:hover{border-color:#AFC4F5;background:#FCFDFF}
.overview-card-label{font-size:10px;color:var(--text-secondary);line-height:1.35}
.overview-readiness-card strong{font-size:24px;font-weight:650;margin-top:9px}
.overview-readiness-card small{font-size:10px;color:var(--text-secondary);line-height:1.4;margin-top:auto;padding-top:6px}
.overview-work-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:14px}
.overview-work-panel,.overview-journey-panel{min-height:330px}
.overview-work-list{display:flex;flex-direction:column}
.overview-work-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:68px;padding:11px 0;border-bottom:1px solid var(--border-soft)}
.overview-work-item:last-child{border-bottom:0}
.overview-work-dot{width:8px;height:8px;border-radius:999px;background:var(--neutral)}
.overview-work-item.danger .overview-work-dot{background:var(--error)}
.overview-work-item.warning .overview-work-dot{background:var(--warning)}
.overview-work-item.success .overview-work-dot{background:var(--success)}
.overview-work-item>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.overview-work-item strong{font-size:13px}
.overview-work-item small{font-size:10px;color:var(--text-secondary);line-height:1.45;margin-top:2px}
.overview-work-item button{height:34px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--primary);padding:0 9px;font-size:10px;font-weight:700;white-space:nowrap}
.overview-work-item button:hover{border-color:#9FBCFF;background:var(--blue-soft)}
.overview-journey{display:flex;flex-direction:column}
.overview-journey-step{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;min-height:64px;padding-bottom:13px}
.overview-journey-step:not(:last-child)::after{content:"";position:absolute;left:16px;top:34px;bottom:0;width:1px;background:var(--border)}
.overview-journey-step>span{width:34px;height:34px;border-radius:9px;background:var(--neutral-soft);color:var(--secondary);display:grid;place-items:center;z-index:1;font:650 10px "JetBrains Mono",monospace}
.overview-journey-step>div{display:flex;flex-direction:column;padding-top:1px}
.overview-journey-step strong{font-size:13px}
.overview-journey-step small{font-size:10px;color:var(--text-secondary);margin-top:2px}
.overview-journey-step.current>span{background:var(--blue-soft);color:var(--primary);box-shadow:0 0 0 1px #B7CDFF}
.overview-journey-step.complete>span{background:var(--success-soft);color:#087A4A}
.overview-journey-step.future{opacity:.55}

/* Setup & Import */
.setup-progress-panel{padding:18px 20px;margin-bottom:16px}
.setup-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.setup-progress-head h2{margin:0;font-size:19px}
.setup-progress-head>strong{font-size:12px;color:var(--text-secondary);padding-top:3px}
.setup-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.setup-progress-step{min-height:82px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:12px;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 10px;color:var(--text)}
.setup-progress-step:hover{border-color:#AFC4F5}
.setup-progress-step.current{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:#FBFDFF}
.setup-progress-step.complete{border-color:#BDE7D5;background:#FBFFFD}
.setup-progress-no{width:32px;height:32px;border-radius:8px;background:var(--neutral-soft);color:var(--secondary);display:grid;place-items:center;grid-row:1 / span 2;font:650 11px "JetBrains Mono",monospace}
.setup-progress-step.current .setup-progress-no{background:var(--blue-soft);color:var(--primary)}
.setup-progress-step.complete .setup-progress-no{background:var(--success-soft);color:#087A4A}
.setup-progress-step>span:nth-child(2){display:flex;flex-direction:column}
.setup-progress-step strong{font-size:13px}
.setup-progress-step small{font-size:10px;color:var(--text-secondary);margin-top:2px}
.setup-progress-step em{font-style:normal;font-size:10px;font-weight:700;color:var(--neutral);grid-column:2}
.setup-progress-step.current em{color:var(--primary)}
.setup-progress-step.complete em{color:#087A4A}
.setup-progress-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid var(--border-soft)}
.setup-progress-actions>span{font-size:11px;color:#8A5700;background:var(--warning-soft);padding:5px 8px;border-radius:6px}
.setup-progress-actions>span.ready{color:#087A4A;background:var(--success-soft)}

.setup-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.setup-main{padding:0;overflow:hidden}
.setup-section{padding:22px}
.setup-divider{height:1px;background:var(--border-soft)}
.section-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px}
.section-head h2{margin:0}
.section-help{margin:3px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.45}
.section-index{width:30px;height:30px;border-radius:8px;background:var(--blue-soft);color:var(--primary);display:grid;place-items:center;font:600 11px "JetBrains Mono",monospace;flex:none}
.validation-head .btn{margin-left:auto;height:40px;min-width:110px}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.field{display:flex;flex-direction:column;gap:6px}
.field>span{font-size:13px;font-weight:600;color:var(--text-secondary)}
.field>small{color:var(--neutral);font-size:11px;line-height:1.45}
.setup-inline-note{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--border-soft);color:var(--text-secondary);font-size:12px;line-height:1.5}
.employee-column-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 14px}
.employee-column-guide>div{padding:11px 12px;border:1px solid var(--border-soft);border-radius:9px;background:#FBFCFE;display:flex;flex-direction:column;gap:3px}
.employee-column-guide strong{font-size:12px;color:var(--text)}
.employee-column-guide span{font-size:11px;line-height:1.45;color:var(--text-secondary)}
.setup-step-footer{margin-top:16px;padding:16px 18px;border:1px solid #C9D8F5;border-radius:12px;background:#F7FAFF;display:flex;align-items:center;justify-content:space-between;gap:18px}
.setup-step-footer>div{display:flex;flex-direction:column;gap:3px}
.setup-step-footer strong{font-size:13px;color:#173A73}
.setup-step-footer span{font-size:11px;color:var(--text-secondary)}
.setup-step-footer .btn{min-width:160px}
.setup-step-footer .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.employee-column-guide,.compact-import-summary,.approval-parse-state{grid-template-columns:1fr}.setup-step-footer{align-items:stretch;flex-direction:column}.setup-step-footer .btn{width:100%}.reporting-action-buttons{width:100%;flex-direction:column-reverse;align-items:stretch}.reporting-action-buttons .btn{width:100%}.validation-grid.compact-validation{grid-template-columns:1fr 1fr}}
.field input,.mapping-row select{width:100%;height:44px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 12px;color:var(--text);outline:0}
.date-display-control{position:relative;width:100%}
.date-display-input{width:100%;height:44px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 42px 0 12px;color:var(--text);outline:0}
.date-display-input:focus{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.08)}
.date-display-input.is-invalid{border-color:var(--error);box-shadow:0 0 0 3px rgba(190,35,54,.08)}
.date-native-source{position:absolute!important;right:8px;bottom:4px;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;padding:0!important;border:0!important}
.date-picker-trigger{position:absolute;right:6px;top:6px;width:32px;height:32px;border:0;border-radius:7px;background:var(--background);color:var(--primary);font-size:14px;cursor:pointer}
.date-picker-trigger:hover{background:var(--blue-soft)}
.field input:focus,.mapping-row select:focus{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.08)}
.upload-zone{min-height:110px;border:1.5px dashed #B9C2CF;border-radius:12px;background:#FBFCFD;padding:18px;display:flex;align-items:center;gap:14px}
.upload-zone.dragover{border-color:var(--primary);background:var(--blue-soft)}
.upload-icon{width:42px;height:42px;border-radius:10px;background:var(--blue-soft);color:var(--primary);display:grid;place-items:center;font-size:22px;font-weight:700}
.upload-copy{display:flex;flex-direction:column;gap:2px;flex:1}
.upload-copy strong{font-size:15px}
.upload-copy span{font-size:12px;color:var(--neutral)}
.selected-file-row{margin-top:10px;min-height:52px;border:1px solid var(--border-soft);border-radius:9px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.selected-file-row[hidden]{display:none}
.selected-file-row>div{display:flex;align-items:center;gap:10px;min-width:0}
.selected-file-main{flex:1}
.source-sheet-wrap{display:flex;align-items:center;gap:7px;min-width:190px}
.source-sheet-wrap[hidden]{display:none}
.source-sheet-wrap>span{font-size:12px;color:var(--text-secondary);font-weight:600}
.source-sheet-wrap select{height:36px;min-width:130px;border:1px solid var(--border);border-radius:7px;background:#fff;padding:0 8px;color:var(--text)}
.selected-file-row strong,.selected-file-row small{display:block}
.selected-file-row strong{max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.selected-file-row small{font-size:11px;color:var(--neutral)}
.file-badge{height:30px;padding:0 8px;border-radius:6px;background:var(--success-soft);color:#087A4A;display:inline-flex;align-items:center;font:600 10px "JetBrains Mono",monospace}
.mapping-table{border:1px solid var(--border);border-radius:9px;overflow:hidden}
.mapping-head,.mapping-row{display:grid;grid-template-columns:1.1fr 1.25fr 1fr;gap:12px;align-items:center;padding:9px 12px}
.mapping-head{min-height:40px;background:#FBFCFD;color:var(--neutral);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border)}
.mapping-row{min-height:58px;border-bottom:1px solid var(--border-soft)}
.mapping-row:last-child{border-bottom:0}
.mapping-row strong{font-size:13px}
.mapping-row select{height:38px;font-size:13px}
.mapping-row>span:last-child{font-size:12px;color:var(--text-secondary)}
.mapping-row.needs-review{background:#FFFCF5}
.mapping-row.mapping-collision{background:var(--error-soft)}
.mapping-row.mapping-collision select{border-color:var(--error)}
.required-map{color:var(--error)!important;font-weight:700}
.mapping-health{margin-left:auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.mapping-health[hidden]{display:none}
.mapping-review-banner{margin-bottom:10px;padding:10px 12px;border:1px solid #F2D8A7;border-radius:8px;background:var(--warning-soft);display:flex;align-items:center;justify-content:space-between;gap:12px}
.mapping-review-banner[hidden]{display:none}
.mapping-review-banner strong{font-size:13px;color:#805000}
.mapping-review-banner span{font-size:12px;color:#A35E00}
.mapping-details{border-radius:9px}
.mapping-details>summary{cursor:pointer;color:var(--primary);font-size:13px;font-weight:700;margin-bottom:10px;list-style:none}
.mapping-details>summary::-webkit-details-marker{display:none}
.mapping-details>summary::after{content:" ▾"}
.mapping-details[open]>summary::after{content:" ▴"}

.import-compare-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px}
.import-compare-grid>div{min-height:76px;border:1px solid var(--border-soft);border-radius:9px;padding:11px 12px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;background:#fff}
.import-compare-grid span{font-size:12px;color:var(--text-secondary)}
.import-compare-grid strong{font-size:20px;font-weight:600}
.import-compare-grid .compare-new{background:var(--success-soft);border-color:#CBEBDD}
.import-compare-grid .compare-change{background:var(--warning-soft);border-color:#F2D8A7}
.import-compare-grid .compare-review{background:var(--error-soft);border-color:#F3C7CB}
.employee-import-note{margin:0 0 12px;padding:0;border:0}
.compact-import-summary{grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px}
.compact-import-summary>div{min-height:60px;align-items:center}
.compact-import-summary .compare-review{background:#FBFCFE;border-color:var(--border-soft)}
.employee-import-details{margin-top:10px;border:1px solid var(--border-soft);border-radius:9px;overflow:hidden;background:#fff}
.employee-import-details>summary{min-height:42px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--primary);font-size:12px;font-weight:700;list-style:none;background:#FBFCFD}
.employee-import-details>summary::-webkit-details-marker{display:none}
.employee-import-details>summary::after{content:"ดู ▾";font-size:11px;color:var(--text-secondary);font-weight:600}
.employee-import-details[open]>summary::after{content:"ซ่อน ▴"}
.employee-import-details>summary span{margin-left:auto;margin-right:8px;color:var(--neutral);font-size:11px;font-weight:500}
.employee-import-details .compact-validation{padding:10px 10px 0}
.employee-import-details .import-preview{margin:10px;border-radius:8px}
.validation-grid.compact-validation{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:0}
.compact-validation>div{min-height:58px}
.import-preview{margin-top:14px;border:1px solid var(--border-soft);border-radius:9px;overflow:hidden}
.import-preview-head{min-height:44px;padding:0 12px;border-bottom:1px solid var(--border-soft);background:#FBFCFD;display:flex;align-items:center;justify-content:space-between;gap:10px}
.import-preview-head h3{margin:0;font-size:14px}
.import-preview-head span{font-size:11px;color:var(--neutral)}
.preview-table{min-width:760px}
.preview-table thead th{height:38px}
.preview-table tbody td{height:50px}
.preview-empty{text-align:center;color:var(--neutral)}
.identity-review-panel{margin:12px 0;border:1px solid #F2D8A7;border-radius:10px;background:#FFFCF5;overflow:hidden}
.identity-review-panel[hidden]{display:none}
.identity-review-head{min-height:54px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #F2D8A7}
.identity-review-head>div{display:flex;flex-direction:column;gap:2px}
.identity-review-head strong{font-size:13px}
.identity-review-head span:not(.chip){font-size:11px;color:var(--text-secondary)}
.identity-review-list{display:flex;flex-direction:column}
.identity-review-row{padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #F3E5C9}
.identity-review-row:last-child{border-bottom:0}
.identity-review-person{display:flex;flex-direction:column;gap:3px;min-width:0}
.identity-review-person strong{font-size:13px}
.identity-review-person>span{font-size:12px;color:var(--text-secondary)}
.identity-review-person small{font-size:11px;color:var(--neutral)}
.identity-review-actions{display:flex;gap:6px;flex:none}
.identity-review-actions .btn{height:38px;min-width:auto;padding:0 12px;font-size:12px}
.duplicate-file-alert{margin-top:12px;padding:10px 12px;border-radius:8px;background:var(--blue-soft);color:#315AAB;font-size:12px;font-weight:600}
.duplicate-file-alert[hidden]{display:none}
.history-chips{display:flex;gap:5px;flex-wrap:wrap}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.validation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.validation-grid>div{min-height:70px;border:1px solid var(--border-soft);border-radius:9px;padding:11px 12px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.validation-grid span{font-size:12px;color:var(--text-secondary)}
.validation-grid strong{font-size:18px;font-weight:600}
.setup-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.setup-side{display:flex;flex-direction:column;gap:16px}
.source-readiness-list{display:flex;flex-direction:column;gap:2px}
.source-readiness-item{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border-soft)}
.source-readiness-item:last-child{border-bottom:0}
.source-readiness-item>span:first-child{display:flex;flex-direction:column;gap:2px}
.source-readiness-item strong{font-size:13px}
.source-readiness-item small{font-size:11px;color:var(--neutral)}
.source-readiness-controls{display:flex;align-items:center;gap:8px;flex:none}
.source-readiness-action .text-button{font-size:12px}

.approval-import-modal{width:min(980px,100%)}
.approval-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.approval-modal-heading h2{margin:0}
.approval-modal-heading p{margin:4px 0 0;color:var(--text-secondary);font-size:13px}
.approval-modal-heading .row-action{font-size:20px;line-height:1}
.approval-upload-row{margin-top:16px;min-height:64px;border:1px solid var(--border-soft);border-radius:10px;background:#FBFCFD;padding:10px 12px;display:flex;align-items:center;gap:12px}
.approval-upload-row>div{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.approval-upload-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.approval-upload-row span{font-size:11px;color:var(--neutral)}
.approval-parse-state{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.approval-parse-state[hidden]{display:none}
.approval-parse-state>div{min-height:64px;border:1px solid var(--border-soft);border-radius:9px;padding:10px 11px;display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.approval-parse-state span{font-size:12px;color:var(--text-secondary)}
.approval-parse-state strong{font-size:18px}
.approval-import-alert{margin-top:12px;padding:10px 12px;border-radius:8px;border:1px solid #F2D8A7;background:var(--warning-soft);color:#855300;font-size:12px;line-height:1.5}
.approval-import-alert[hidden]{display:none}
.approval-preview-block{margin-top:12px;border:1px solid var(--border-soft);border-radius:9px;overflow:hidden}
.approval-preview-table{min-width:760px}
.approval-preview-table td{height:48px}
.approval-import-rule{margin-top:10px;color:var(--text-secondary);font-size:12px}
.approval-edge-person{display:flex;flex-direction:column;gap:1px}
.approval-edge-person strong{font-size:12px}
.approval-edge-person small{font-size:10px;color:var(--neutral)}
.table-subnote{display:block;margin-top:3px;color:var(--error);font-size:10px;line-height:1.35}

/* Reporting line setup */
.reporting-section{padding-bottom:22px}
.reporting-status-chip{margin-left:auto;align-self:flex-start}
.reporting-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:2px 0 16px}
.reporting-mode-tab{min-height:64px;border:1px solid var(--border);background:#fff;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left;color:var(--text);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.reporting-mode-tab:hover{border-color:#AFC6FF;background:#FBFDFF}
.reporting-mode-tab.active{border-color:var(--primary);background:var(--blue-soft);box-shadow:0 0 0 1px rgba(0,82,255,.06)}
.reporting-tab-icon{width:34px;height:34px;border-radius:9px;background:#F3F6FA;color:var(--secondary);display:grid;place-items:center;font-size:17px;flex:none}
.reporting-mode-tab.active .reporting-tab-icon{background:#fff;color:var(--primary)}
.reporting-mode-tab>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.reporting-mode-tab strong{font-size:13px;font-weight:700}
.reporting-mode-tab small{font-size:11px;color:var(--text-secondary);font-weight:400}
.reporting-mode-panel[hidden]{display:none}

.reporting-upload-zone{min-height:88px;border:1px dashed #B9C4D4;border-radius:10px;background:#FBFCFD;padding:14px 16px;display:flex;align-items:center;gap:13px}
.reporting-upload-zone:hover{border-color:#8FB0FF;background:#F8FBFF}
.reporting-upload-icon{background:var(--blue-soft);color:var(--primary)}
.reporting-file-trigger{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none}
.reporting-file-trigger:hover{border-color:#9FBCFF;color:var(--primary)}
.approval-parse-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;max-width:520px}
.approval-parse-state[hidden]{display:none}
.approval-parse-state>div{min-height:58px;border:1px solid var(--border-soft);border-radius:9px;padding:9px 11px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px}
.approval-parse-state>div:last-of-type{background:#FBFCFE}
.approval-parse-state span{font-size:11px;color:var(--text-secondary)}
.approval-parse-state strong{font-size:18px;font-weight:600}
.approval-import-alert{margin-top:10px;padding:10px 12px;border-radius:8px;border:1px solid #BFD2FF;background:var(--blue-soft);color:#315AAB;font-size:12px;line-height:1.5}
.approval-import-alert[hidden]{display:none}
.approval-preview-block{margin-top:10px;border:1px solid var(--border-soft);border-radius:9px;overflow:hidden;background:#fff}
.approval-preview-block[hidden]{display:none}
.approval-preview-block>summary{min-height:42px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--primary);font-size:12px;font-weight:700;list-style:none;background:#FBFCFD}
.approval-preview-block>summary::-webkit-details-marker{display:none}
.approval-preview-block>summary::after{content:"ดู ▾";font-size:11px;color:var(--text-secondary);font-weight:600}
.approval-preview-block[open]>summary::after{content:"ซ่อน ▴"}
.approval-preview-block>summary span{margin-left:auto;margin-right:8px;color:var(--neutral);font-size:11px;font-weight:500}
.approval-preview-table{min-width:760px}
.approval-preview-table td{height:54px}
.reporting-action-bar{min-height:58px;margin-top:10px;padding-top:12px;border-top:1px solid var(--border-soft);display:flex;align-items:center;justify-content:flex-end;gap:14px}
.reporting-action-bar[hidden]{display:none}
.reporting-action-buttons{display:flex;align-items:center;gap:8px;flex:none}
.reporting-safe-note{color:var(--text-secondary);font-size:12px}

.reporting-manual-toolbar{margin-top:0;padding:0 0 12px;border-bottom:1px solid var(--border-soft)}
.reporting-manual-table-wrap{border:1px solid var(--border-soft);border-radius:9px;overflow:auto;background:#fff}
.reporting-manual-table{min-width:760px}
.reporting-manual-table td{height:62px}
.reporting-manager-modal{width:min(620px,100%)}
.reporting-manager-results{max-height:260px;overflow:auto;border:1px solid var(--border-soft);border-radius:9px;margin-top:8px}
.manager-search-result{width:100%;min-height:54px;border:0;border-bottom:1px solid var(--border-soft);background:#fff;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer}
.manager-search-result:last-child{border-bottom:0}
.manager-search-result:hover{background:#F8FAFD}
.manager-search-result>span{display:flex;flex-direction:column;gap:2px}
.manager-search-result strong{font-size:13px}
.manager-search-result small{font-size:11px;color:var(--neutral)}
.manager-search-empty{padding:18px;text-align:center;color:var(--neutral);font-size:12px}
.reporting-manager-selected{margin-top:10px;padding:10px 12px;border:1px solid #BFD2FF;border-radius:9px;background:var(--blue-soft);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}
.reporting-manager-selected[hidden]{display:none}
.reporting-manager-selected span{font-size:11px;color:var(--text-secondary)}
.reporting-manager-selected strong{font-size:13px}
.reporting-manager-selected small{font-size:11px}
.split-actions{align-items:center}
.modal-action-spacer{flex:1}
.text-muted{color:var(--neutral)}

.approval-import-alert{display:flex;align-items:center;justify-content:space-between;gap:14px}
.approval-import-alert>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.approval-import-alert strong{font-size:12px}
.approval-import-alert span{font-size:11px;line-height:1.45}
.approval-import-alert.info{border-color:#BFD2FF;background:var(--blue-soft);color:#315AAB}
.approval-import-alert.success{border-color:#BDE7D5;background:var(--success-soft);color:#087A4A}
.approval-import-alert.warning{border-color:#F2D8A7;background:var(--warning-soft);color:#855300}
.approval-inline-review{margin-top:12px;border:1px solid #F0D9A8;border-radius:10px;background:#FFFCF5;overflow:hidden}
.approval-inline-review[hidden]{display:none}
.approval-inline-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 14px 8px}
.approval-inline-review-head h3{margin:0;font-size:14px}
.approval-inline-review-head p{margin:3px 0 0;color:var(--text-secondary);font-size:11px}
.approval-inline-search{margin:0 14px 10px;max-width:520px}
.approval-inline-review-list{border-top:1px solid #F3E5C9;background:#fff}
.approval-inline-issue{display:grid;grid-template-columns:12px minmax(0,1fr);gap:9px;padding:11px 14px;border-bottom:1px solid var(--border-soft)}
.approval-inline-issue:last-child{border-bottom:0}
.approval-inline-issue>div{display:flex;flex-direction:column;gap:3px}
.approval-inline-issue strong{font-size:12px}
.approval-inline-issue span{font-size:11px;line-height:1.45;color:var(--text-secondary)}

.approval-detail-toolbar{margin-top:10px;min-height:58px;padding:10px 12px;border:1px solid var(--border-soft);border-radius:9px;background:#FBFCFD;display:flex;align-items:center;justify-content:space-between;gap:14px}
.approval-detail-toolbar[hidden]{display:none}
.approval-detail-toolbar>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.approval-detail-toolbar strong{font-size:12px}
.approval-detail-toolbar span{font-size:11px;color:var(--text-secondary)}

.reporting-inspector-view{max-width:1400px}
.reporting-workspace-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px}
.reporting-workspace-head>div{min-width:0}
.reporting-workspace-head h1{margin:2px 0 0;font-size:30px;line-height:1.15}
.reporting-workspace-head .btn{flex:none;margin-top:2px}
.reporting-workspace-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.reporting-workspace-metrics>div{min-height:82px;border:1px solid var(--border-soft);border-radius:10px;background:#fff;padding:12px 14px;display:flex;flex-direction:column;justify-content:space-between}
.reporting-workspace-metrics span{font-size:11px;color:var(--text-secondary)}
.reporting-workspace-metrics strong{font-size:24px;font-weight:600}
.reporting-workspace-metrics>div:last-child{background:#FFFCF5;border-color:#F2D8A7}

.reporting-workspace-toolbar{min-height:62px;border:1px solid var(--border-soft);border-radius:10px 10px 0 0;background:#fff;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.approval-inspector-tabs{display:flex;align-items:center;gap:5px;overflow:auto}
.approval-inspector-tab{height:40px;border:1px solid transparent;border-radius:8px;background:transparent;padding:0 12px;color:var(--text-secondary);font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.approval-inspector-tab:hover{background:#F7F9FC;color:var(--text)}
.approval-inspector-tab.active{border-color:#BFD2FF;background:var(--blue-soft);color:var(--primary)}
.approval-inspector-search{width:min(390px,38vw);height:42px;position:relative;display:flex;align-items:center;flex:none;border:1px solid var(--border);background:#F7F9FC;border-radius:8px}
.approval-inspector-search:focus-within{background:#fff;border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.08)}
.approval-inspector-search svg{width:18px;height:18px;margin-left:13px;color:var(--neutral);flex:none}
.approval-inspector-search input{height:100%;min-width:0;flex:1;border:0;outline:0;background:transparent;padding:0 12px;color:var(--text)}
.approval-inspector-search input::placeholder{color:var(--neutral)}
.reporting-workspace-panel{min-height:520px;border:1px solid var(--border-soft);border-top:0;border-radius:0 0 10px 10px;background:#F8FAFC}
.approval-inspector-body{padding:16px;min-height:520px}

.approval-group-list,.approval-employee-list,.approval-issue-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.approval-issue-list{grid-template-columns:1fr}
.reporting-tree-note{margin-bottom:14px;padding:10px 12px;border:1px solid #D9E5FF;border-radius:8px;background:#F7FAFF;color:var(--text-secondary);font-size:11px;line-height:1.5}
.reporting-tree-note strong{color:var(--text)}
.reporting-tree-note span{color:var(--neutral)}

.reporting-org-chart{overflow:auto;padding:8px 8px 24px}
.reporting-org-root,.reporting-org-root ul{margin:0;padding:20px 0 0;position:relative;display:flex;justify-content:center;min-width:max-content}
.reporting-org-root{padding-top:0;justify-content:flex-start;margin-bottom:28px}
.reporting-org-root ul::before{content:"";position:absolute;top:0;left:50%;height:20px;border-left:1px solid #C9D4E3}
.reporting-org-item{list-style:none;position:relative;text-align:center;padding:20px 8px 0}
.reporting-org-root>.reporting-org-item{padding-top:0}
.reporting-org-item::before,.reporting-org-item::after{content:"";position:absolute;top:0;right:50%;width:50%;height:20px;border-top:1px solid #C9D4E3}
.reporting-org-item::after{right:auto;left:50%;border-left:1px solid #C9D4E3}
.reporting-org-item:only-child::before,.reporting-org-item:only-child::after{display:none}
.reporting-org-item:first-child::before,.reporting-org-item:last-child::after{border:0}
.reporting-org-item:last-child::before{border-right:1px solid #C9D4E3;border-radius:0 6px 0 0}
.reporting-org-item:first-child::after{border-radius:6px 0 0 0}
.reporting-org-root>.reporting-org-item::before,.reporting-org-root>.reporting-org-item::after{display:none}

.reporting-tree-person{min-width:220px;max-width:280px;margin:0 auto;border:1px solid var(--border);border-radius:10px;background:#fff;padding:10px 11px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;text-align:left;box-shadow:0 1px 2px rgba(5,15,26,.03)}
.reporting-tree-person:hover{border-color:#AFC6FF}
.reporting-tree-person.highlighted{border-color:var(--primary);box-shadow:0 0 0 2px rgba(0,82,255,.08)}
.reporting-tree-person.loop{border-color:#F2D8A7;background:#FFFCF5}
.reporting-tree-identity{display:flex;flex-direction:column;gap:2px;min-width:0}
.reporting-tree-identity strong{font-size:12px;line-height:1.35;white-space:normal}
.reporting-tree-identity small{font-size:10px;color:var(--neutral)}
.reporting-tree-node-actions{display:flex;align-items:flex-end;gap:4px;flex-direction:column;flex:none}
.tree-direct-count{font-size:10px;color:var(--text-secondary);white-space:nowrap}
.tree-node-edit{height:26px;border:0;background:transparent;padding:0;color:var(--primary);font-size:10px;font-weight:700;cursor:pointer}
.tree-node-edit:hover{text-decoration:underline}

.approval-employee-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}

/* Focus hierarchy explorer */
.focus-tree-start{display:flex;flex-direction:column;gap:14px}
.focus-tree-start>div:first-child{display:flex;flex-direction:column;gap:3px}
.focus-tree-start>div:first-child strong{font-size:16px}
.focus-tree-start>div:first-child span{font-size:12px;color:var(--text-secondary)}
.focus-root-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.focus-root-card{min-height:92px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:12px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px 12px;text-align:left;cursor:pointer}
.focus-root-card:hover{border-color:#9FBCFF;background:#FBFDFF}
.focus-root-card>span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.focus-root-card strong{font-size:13px}
.focus-root-card small{font-size:10px;color:var(--neutral)}
.focus-root-meta{font-size:11px;color:var(--text-secondary);align-self:end}
.focus-root-open{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--primary);font-size:11px;font-weight:700}

.focus-search-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.focus-search-result-head strong{font-size:14px}
.focus-search-result-head span{font-size:11px;color:var(--text-secondary)}
.focus-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.focus-search-result{min-height:64px;border:1px solid var(--border);border-radius:9px;background:#fff;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer}
.focus-search-result:hover{border-color:#9FBCFF;background:#FBFDFF}
.focus-search-result>span:first-child{display:flex;flex-direction:column;gap:2px}
.focus-search-result strong{font-size:12px}
.focus-search-result small{font-size:10px;color:var(--neutral)}
.focus-search-result>span:last-child{font-size:11px;color:var(--primary);font-weight:700}

.focus-tree-shell{max-width:980px;margin:0 auto;padding:2px 0 24px}
.focus-tree-context{min-height:48px;margin-bottom:14px;padding:8px 10px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.focus-tree-context>span{font-size:11px;color:var(--text-secondary)}
.focus-tree-context>strong{font-size:13px}
.focus-tree-context>small{font-size:10px;color:var(--neutral)}
.focus-tree-context .text-button{margin-left:auto}
.focus-tier{display:flex;flex-direction:column;align-items:center}
.focus-tier.selected-tier{margin-top:0}
.focus-person-card{width:min(560px,100%);min-height:86px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.focus-person-card.selected{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.07)}
.focus-person-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.focus-role{font-size:10px;font-weight:700;color:var(--primary);letter-spacing:.03em}
.focus-person-copy strong{font-size:15px;line-height:1.35}
.focus-person-copy small{font-size:11px;color:var(--neutral)}
.focus-person-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.focus-child-count{font-size:11px;color:var(--text-secondary)}
.focus-edit-manager{height:34px;min-width:auto;padding:0 12px;font-size:11px}
.focus-connector{height:38px;width:1px;background:#C8D3E1;margin:0 auto}
.focus-connector.children{height:30px}
.focus-no-manager{width:min(560px,100%);margin:0 auto 12px;padding:10px 12px;border:1px dashed var(--border);border-radius:9px;text-align:center;color:var(--text-secondary);font-size:11px;background:#FBFCFD}
.focus-tree-warning{width:min(640px,100%);margin:0 auto 12px;padding:10px 12px;border:1px solid #F2D8A7;border-radius:9px;background:#FFFCF5;color:#855300;font-size:11px;text-align:center}
.focus-reports-head{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 0 9px}
.focus-reports-head strong{font-size:12px}
.focus-reports-head span{font-size:11px;color:var(--text-secondary)}
.focus-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.focus-report-card{min-height:76px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:10px 11px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;cursor:pointer}
.focus-report-card:hover{border-color:#9FBCFF;background:#FBFDFF}
.focus-report-card strong{font-size:12px}
.focus-report-card small{font-size:10px;color:var(--neutral)}
.focus-report-card span{margin-top:auto;font-size:10px;color:var(--primary);font-weight:700}
.focus-empty-reports{margin-top:18px;padding:16px;border:1px dashed var(--border);border-radius:9px;text-align:center;color:var(--neutral);font-size:11px}

.approval-group-card{border:1px solid var(--border-soft);border-radius:9px;background:#fff;overflow:hidden}
.approval-group-card summary{min-height:62px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}
.approval-group-card summary::-webkit-details-marker{display:none}
.approval-group-card[open] summary{background:#FBFCFD;border-bottom:1px solid var(--border-soft)}
.approval-group-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.approval-group-main strong{font-size:13px}
.approval-group-main>span{font-size:11px;color:var(--text-secondary)}
.approval-group-members{display:flex;flex-direction:column}
.approval-group-member{min-height:48px;padding:8px 12px 8px 18px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between;gap:12px}
.approval-group-member:last-child{border-bottom:0}
.approval-group-member>span{display:flex;flex-direction:column;gap:1px}
.approval-group-member strong{font-size:12px}
.approval-group-member small{font-size:10px;color:var(--neutral)}

.approval-employee-card{border:1px solid var(--border-soft);border-radius:9px;padding:11px 12px;background:#fff;display:flex;flex-direction:column;gap:8px}
.approval-employee-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.approval-employee-top>div{display:flex;flex-direction:column;gap:1px}
.approval-employee-top strong{font-size:13px}
.approval-employee-top small,.approval-employee-card>small{font-size:10px;color:var(--neutral)}
.approval-chain{padding:8px 10px;border-radius:7px;background:#F7F9FC;display:flex;flex-direction:column;gap:3px}
.approval-chain span{font-size:10px;color:var(--neutral);text-transform:uppercase;letter-spacing:.04em}
.approval-chain strong{font-size:11px;line-height:1.45;white-space:normal}

.approval-issue-row{padding:10px 12px;border:1px solid #F2D8A7;border-radius:9px;background:#FFFCF5;display:flex;align-items:flex-start;gap:9px}
.approval-issue-dot{width:8px;height:8px;margin-top:5px;border-radius:999px;background:var(--warning);flex:none}
.approval-issue-row>div{display:flex;flex-direction:column;gap:2px}
.approval-issue-row strong{font-size:12px}
.approval-issue-row span{font-size:11px;color:var(--text-secondary);line-height:1.45}
.inspector-empty{min-height:180px;border:1px dashed var(--border);border-radius:9px;display:grid;place-items:center;text-align:center;padding:20px;color:var(--neutral);font-size:12px}
.inspector-empty.good{border-color:#BDE7D5;background:var(--success-soft);color:#087A4A}

.setup-summary{margin:0 0 14px}
.setup-summary>div{display:flex;align-items:center;justify-content:space-between;min-height:40px;border-bottom:1px solid var(--border-soft)}
.setup-summary dt{font-size:12px;color:var(--text-secondary)}
.setup-summary dd{margin:0;font-size:14px;font-weight:600}
.empty-list{min-height:92px;border:1px dashed var(--border);border-radius:9px;display:grid;place-items:center;color:var(--neutral);font-size:13px;text-align:center;padding:16px}
.import-history-item{border:1px solid var(--border-soft);border-radius:9px;padding:11px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.import-history-item strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.import-history-item>span:not(.chip){font-size:11px;color:var(--neutral)}

/* Eligibility */
.eligibility-control-heading{align-items:flex-start}
.eligibility-readiness-panel{padding:20px 22px;margin-bottom:14px}
.eligibility-readiness-copy{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.eligibility-readiness-copy h2{margin:0;font-size:19px}
.eligibility-cutoff-copy{display:inline-flex;align-items:center;min-height:30px;padding:4px 9px;border-radius:7px;background:var(--neutral-soft);color:var(--secondary);font-size:11px;font-weight:700;white-space:nowrap}
.eligibility-queue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.eligibility-filter-card{min-height:102px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:14px;text-align:left;display:flex;align-items:flex-start;gap:11px;color:var(--text)}
.eligibility-filter-card:hover{border-color:#AFC4F5}
.eligibility-filter-card.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.eligibility-filter-card>span:last-child{display:flex;flex-direction:column;min-width:0}
.eligibility-filter-card strong{font:650 23px/1 "JetBrains Mono",monospace}
.eligibility-filter-card small{font-size:13px;font-weight:700;margin-top:7px}
.eligibility-filter-card em{font-style:normal;font-size:10px;color:var(--text-secondary);line-height:1.4;margin-top:3px}
.eligibility-queue-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:none;font-weight:800}
.eligibility-queue-icon.danger{background:var(--error-soft);color:var(--error)}
.eligibility-queue-icon.success{background:var(--success-soft);color:#087A4A}
.eligibility-queue-icon.neutral{background:var(--neutral-soft);color:var(--secondary)}
.eligibility-queue-icon.blue{background:var(--blue-soft);color:var(--primary)}

.eligibility-toolbar{margin-top:0}
.eligibility-control-table-panel{overflow:visible}
.eligibility-table-compact{min-width:980px}
.eligibility-table-compact td{height:76px}
.eligibility-table-compact th:last-child,.eligibility-table-compact td:last-child{width:118px}
.eligibility-status{display:inline-flex;align-items:center;min-height:27px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap}
.eligibility-status.eligible{background:var(--success-soft);color:#087A4A}
.eligibility-status.january{background:var(--warning-soft);color:#A35E00}
.eligibility-status.not-eligible{background:var(--neutral-soft);color:var(--secondary)}
.eligibility-status.missing{background:var(--error-soft);color:var(--error)}
.eligibility-tenure,.eligibility-rule-result,.eligibility-decision{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.eligibility-tenure small,.eligibility-rule-result small,.eligibility-decision small{font-size:10px;color:var(--text-secondary);line-height:1.4}
.eligibility-rule-result{max-width:260px}
.eligibility-decision strong{font-size:11px}
.eligibility-decision.warning strong{color:#9A5C00}
.eligibility-decision.success strong{color:#087A4A}
.eligibility-decision.neutral strong{color:var(--secondary)}
.eligibility-row-action{height:34px;border:0;background:transparent;border-radius:7px;padding:0 8px;font-size:11px;font-weight:700;color:var(--primary);white-space:nowrap}
.eligibility-row-action:hover{text-decoration:underline}
.table-empty{min-height:140px;display:grid;place-items:center;color:var(--neutral);border-top:1px solid var(--border-soft)}
.table-empty[hidden]{display:none}
.eligibility-modal-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 18px}
.eligibility-modal-status>small{width:100%;font-size:11px;color:var(--text-secondary);line-height:1.45}
.bulk-eligibility-copy{margin:8px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.55}
.eligibility-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.eligibility-action-grid button{height:42px;border:1px solid var(--border);background:#fff;border-radius:8px;font-weight:700}
.eligibility-action-grid button:hover{border-color:#9FBCFF;color:var(--primary)}
.eligibility-action-grid button.selected{border-color:var(--primary);background:var(--blue-soft);color:var(--primary)}
.modal-field{display:flex;flex-direction:column;gap:6px;margin-top:14px}
.modal-field span{font-size:13px;font-weight:600;color:var(--text-secondary)}
.modal-field input{height:44px;border:1px solid var(--border);border-radius:8px;padding:0 12px;outline:0;font:inherit}
.modal-field textarea{min-height:88px;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:10px 12px;outline:0;font:inherit}
.modal-field input:focus,.modal-field textarea:focus{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.08)}
.modal-error{margin-top:7px;color:var(--error);font-size:12px}
.modal-error[hidden]{display:none}

@media (max-width:1000px){
  .eligibility-queue-grid{grid-template-columns:1fr 1fr}
  .eligibility-readiness-copy{flex-direction:column}
}

/* People & Assessors */
.people-control-heading{align-items:flex-start}
.people-control-heading h1{max-width:760px}
.people-tools{justify-content:flex-end}
.people-tools .btn.ghost{border:1px solid transparent}
.people-tools .btn.ghost:hover{border-color:var(--border);background:#fff}

.people-readiness-panel{padding:20px 22px;margin-bottom:14px}
.people-readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.people-readiness-head h2{margin:0;font-size:19px}
.people-readiness-head-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.people-readiness-head-status>strong{font-size:13px}
.readiness-blocker{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 9px;border-radius:7px;background:var(--error-soft);color:var(--error);font-size:11px;font-weight:700}
.readiness-blocker.clear{background:var(--success-soft);color:#087A4A}
.readiness-blocker strong{font-size:12px}
.people-readiness-flow{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr) auto minmax(110px,1fr) auto minmax(110px,1fr);align-items:center;gap:8px}
.readiness-step{min-height:76px;border:1px solid var(--border-soft);border-radius:10px;background:#FBFCFD;padding:11px 13px;display:flex;flex-direction:column;justify-content:center}
.readiness-step .mono{font-size:22px;font-weight:650;line-height:1}
.readiness-step small{margin-top:7px;color:var(--text-secondary);font-size:12px}
.readiness-step.warning{background:var(--warning-soft);border-color:#F2D8A7}
.readiness-step.danger{background:var(--error-soft);border-color:#F2B8BD}
.readiness-step.success{background:var(--success-soft);border-color:#BDE7D5}
.readiness-arrow{color:#A8B0BC;text-align:center}

.people-queue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.people-queue-card{min-height:116px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:17px;text-align:left;display:flex;align-items:flex-start;gap:13px;color:var(--text);box-shadow:var(--shadow-1)}
.people-queue-card:hover{border-color:#AFC4F5}
.people-queue-card.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.people-queue-card>span:last-child{display:flex;flex-direction:column;min-width:0}
.people-queue-card strong{font:650 25px/1 "JetBrains Mono",monospace}
.people-queue-card small{font-size:14px;font-weight:700;margin-top:7px}
.people-queue-card em{font-style:normal;font-size:11px;color:var(--text-secondary);line-height:1.45;margin-top:3px}
.queue-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex:none;font-weight:800}
.queue-icon.danger{background:var(--error-soft);color:var(--error)}
.queue-icon.warning{background:var(--warning-soft);color:#9A5C00}
.queue-icon.success{background:var(--success-soft);color:#087A4A}

.people-toolbar{margin:14px 0}
.people-control-table-panel{overflow:visible}
.people-table-compact{min-width:1050px}
.people-table-compact td{height:76px}
.people-table-compact th:last-child,.people-table-compact td:last-child{width:126px}
.people-table-compact .person-cell small{white-space:normal}
.people-open-detail{height:34px;border:0;background:transparent;color:var(--primary);font-size:12px;font-weight:700;white-space:nowrap}
.people-open-detail:hover{text-decoration:underline}

.reporting-manager-cell.compact{display:flex;align-items:center;gap:9px;min-width:190px}
.reporting-manager-cell.compact>span:first-child{display:flex;flex-direction:column;min-width:0}
.reporting-manager-cell.compact strong{font-size:12px;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reporting-manager-cell.compact small{font-size:10px;color:var(--neutral);margin-top:1px}
.reporting-manager-cell.compact .chip{height:23px;padding:0 6px;font-size:9px}

.compact-assessor{display:flex;flex-direction:column;min-width:180px}
.compact-assessor strong{font-size:12px;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-assessor span{font-size:10px;color:var(--secondary);margin-top:2px}
.empty-inline{font-size:12px;color:var(--error);font-weight:600}

.workflow-state{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:150px}
.workflow-state small{font-size:10px;color:var(--text-secondary);line-height:1.35}
.workflow-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:7px;font-size:11px;font-weight:750;white-space:nowrap;background:var(--neutral-soft);color:var(--secondary)}
.workflow-badge.danger{background:var(--error-soft);color:var(--error)}
.workflow-badge.warning{background:var(--warning-soft);color:#9A5C00}
.workflow-badge.success{background:var(--success-soft);color:#087A4A}

.assessor-stack{display:flex;flex-direction:column;gap:4px}
.assessor-line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:250px}
.assessor-line strong{font-size:12px;font-weight:600;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.assessor-line span{font:500 11px "JetBrains Mono",monospace;color:var(--secondary);white-space:nowrap}
.weight-total{font:600 12px "JetBrains Mono",monospace}
.weight-total.invalid{color:var(--error)}
.confirmation-badge{display:inline-flex;align-items:center;height:29px;padding:0 9px;border-radius:6px;font-size:12px;font-weight:700;white-space:nowrap}
.confirmation-badge.confirmed{background:var(--success-soft);color:#087A4A}
.confirmation-badge.waiting{background:var(--warning-soft);color:#A35E00}
.confirmation-badge.waiting-hr{background:var(--blue-soft);color:var(--primary)}

.assessor-modal{width:min(620px,100%)}
.modal-subline{margin-top:-6px;margin-bottom:18px;color:var(--text-secondary);font-size:13px}
.assessor-list-head,.assessor-editor-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 36px;gap:8px;align-items:start}
.assessor-list-head{padding:0 2px 7px;color:var(--neutral);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.assessor-editor-list{display:flex;flex-direction:column;gap:8px}
.assessor-editor-row input{height:42px;border:1px solid var(--border);border-radius:8px;padding:0 10px;outline:0}
.assessor-editor-row input:focus{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(0,82,255,.08)}
.assessor-editor-row .weight-input{font-family:"JetBrains Mono",monospace;text-align:right}
.assessor-picker{position:relative;min-width:0}
.assessor-picker::after{content:"⌄";position:absolute;right:12px;top:8px;color:#6F8096;font-size:18px;line-height:1;pointer-events:none}
.assessor-picker .assessor-code-input{width:100%;padding-right:34px}
.assessor-picker-menu{position:absolute;z-index:30;left:0;right:0;top:47px;max-height:260px;overflow:auto;border:1px solid #CCD8EA;border-radius:9px;background:#fff;box-shadow:0 12px 28px rgba(24,39,75,.16)}
.assessor-picker-menu[hidden]{display:none}
.assessor-picker-option{width:100%;min-height:54px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid #EDF1F6;background:#fff;text-align:left;cursor:pointer}
.assessor-picker-option:last-child{border-bottom:0}
.assessor-picker-option:hover,.assessor-picker-option:focus{background:#F5F8FF;outline:0}
.assessor-picker-option>span{display:flex;flex-direction:column;gap:2px;min-width:0}
.assessor-picker-option strong{font-size:12px;color:#172842;line-height:1.4;overflow-wrap:anywhere}
.assessor-picker-option small{font:500 10px "JetBrains Mono",monospace;color:#60738D}
.assessor-picker-option em{max-width:44%;font-style:normal;font-size:10px;line-height:1.35;color:#7A899C;text-align:right;overflow-wrap:anywhere}
.assessor-picker-empty{padding:14px;color:#8794A6;font-size:12px;text-align:center}
.remove-assessor{width:36px;height:36px;border:0;background:var(--error-soft);color:var(--error);border-radius:7px;font-size:18px}
.assessor-add-btn{margin-top:10px;padding-left:0}
.assessor-total-row{margin-top:14px;padding-top:12px;border-top:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between}
.assessor-total-row span{color:var(--text-secondary);font-size:13px}
.assessor-total-row strong{font-size:17px}
.assessor-total-row strong.invalid{color:var(--error)}

.people-detail-modal{width:min(860px,100%);max-height:90vh;overflow:auto;padding:26px}
.people-detail-head,.case-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.people-detail-head h2,.case-review-head h2{margin:0 0 7px}
.modal-close-button{width:36px;height:36px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--secondary);font-size:22px;line-height:1}
.people-detail-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0 16px;border-bottom:1px solid var(--border-soft)}
.people-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.people-detail-card{border:1px solid var(--border-soft);border-radius:10px;padding:15px;background:#fff}
.people-detail-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
.people-detail-card-head>div{display:flex;flex-direction:column}
.people-detail-card-head strong{font-size:14px}
.people-detail-content{min-height:54px}
.detail-person{display:flex;flex-direction:column}
.detail-person strong{font-size:14px}
.detail-person span{font-size:11px;color:var(--secondary);margin-top:2px}
.source-label{display:inline-flex;margin-top:9px;font-size:10px;font-weight:700;color:var(--secondary);background:var(--neutral-soft);padding:4px 7px;border-radius:5px}
.detail-assessor-row,.roster-confirmation-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-soft)}
.detail-assessor-row:last-child,.roster-confirmation-row:last-child{border-bottom:0}
.detail-assessor-row>span,.roster-confirmation-row>span:first-child{display:flex;flex-direction:column}
.detail-assessor-row strong,.roster-confirmation-row strong{font-size:12px}
.detail-assessor-row small,.roster-confirmation-row small{font-size:10px;color:var(--neutral);margin-top:1px}
.people-detail-roster-card{margin-top:12px}
.people-detail-alert{margin-top:12px;border:1px solid var(--border-soft);border-radius:9px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.people-detail-alert strong{font-size:12px}
.people-detail-alert span{font-size:11px;color:var(--text-secondary)}
.people-detail-alert.warning{background:var(--warning-soft);border-color:#F2D8A7}
.people-detail-alert.danger{background:var(--error-soft);border-color:#F2B8BD}
.people-detail-alert.success{background:var(--success-soft);border-color:#BDE7D5}
.people-detail-alert.neutral{background:var(--neutral-soft)}
.people-detail-actions{display:flex;align-items:center;gap:8px;margin-top:18px}
.danger-ghost{color:var(--error)!important}
.warning-icon{background:var(--warning-soft);color:#9A5C00}


/* 04 · single-screen roster / assessor workbench */
.people-workspace{padding-bottom:104px}
.people-page-heading{margin-bottom:18px}
.people-page-heading .page-heading-help{max-width:720px}
.people-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.people-filter-card{position:relative;min-height:108px;padding:17px 18px;border:1px solid var(--border);border-radius:12px;background:#fff;text-align:left;box-shadow:var(--shadow-1);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.people-filter-card:hover{border-color:#a9bde8;transform:translateY(-1px)}
.people-filter-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.people-filter-card small,.people-filter-card em{display:block;font-style:normal}
.people-filter-card small{font-size:12px;font-weight:700;color:var(--text-secondary)}
.people-filter-card span{display:block;margin:7px 0 5px;font:650 28px/1 "JetBrains Mono",monospace;color:var(--text)}
.people-filter-card em{font-size:11px;color:var(--neutral)}
.people-list-panel{border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow-1);overflow:hidden}
.people-list-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 4px}
.people-list-heading h2{margin:0;font-size:18px}
.people-list-heading p{margin:5px 0 0;color:var(--text-secondary);font-size:12px}
.people-count{font-size:12px;color:var(--text-secondary);white-space:nowrap}
.people-count strong{font:650 16px "JetBrains Mono",monospace;color:var(--text)}
.people-list-panel .people-toolbar{padding:10px 22px;margin:0}
.people-selection-bar{margin:0 22px 10px}
.people-table-wrap{border-top:1px solid var(--border-soft);overflow:auto}
.people-table{min-width:1060px}
.people-table tbody tr:hover{background:#f8faff}
.people-row-needs-fix{background:#fffafa}
.people-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}
.people-row-action{border:0;background:transparent;color:var(--primary);font-weight:700;font-size:12px;cursor:pointer;padding:0}
.people-row-confirm{border:1px solid #b9dcca;background:#eaf8f1;color:#087a4a;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:750;cursor:pointer}
.people-validity{display:inline-flex;align-items:center;min-height:27px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:750}
.people-validity.valid{background:var(--success-soft);color:#087a4a}
.people-validity.invalid{background:var(--error-soft);color:var(--error)}
.people-validity.ready{background:#eef3ff;color:#2457b8}
.people-validity.confirmed{background:#fff4dc;color:#9b6815}
.people-validity.staged{background:var(--success-soft);color:#087a4a}
.people-row-confirmed{background:#fffdf8}
.people-row-staged{background:#fbfffd}
.people-row-stage{border:1px solid #bfd2ff;background:#eef3ff;color:#2457b8;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:750;cursor:pointer}
.people-confirmed-at{display:block;margin-top:5px;font-size:10px;color:var(--text-secondary)}
.people-summary.people-summary-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.people-summary.people-summary-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.decision-saved{display:block;margin-top:4px;font-size:10px;color:#087a4a;font-weight:650}
.people-weight-note{display:block;margin-top:6px;font-size:10px;color:var(--text-secondary)}
.people-weight-note.invalid{color:var(--error)}
.people-ready-bar{position:sticky;z-index:8;bottom:14px;margin:18px 0 0;padding:14px 16px;border:1px solid #cbd7ef;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 12px 36px rgba(24,39,75,.14);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;gap:18px}
.people-ready-copy{display:flex;align-items:center;gap:12px;min-width:0}
.people-ready-copy>div{display:flex;flex-direction:column;gap:2px}
.people-ready-copy strong{font-size:13px}
.people-ready-copy small{font-size:11px;color:var(--text-secondary)}
.people-ready-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--success-soft);color:#087a4a;font-weight:800;flex:none}
.people-ready-actions{display:flex;align-items:center;gap:8px;flex:none}
.people-ready-actions .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:900px){.people-summary{grid-template-columns:1fr}.people-ready-bar{align-items:stretch;flex-direction:column}.people-ready-actions{width:100%}.people-ready-actions .btn{flex:1}}


/* 04 · stable review/action cells */
#view-people.assignment-workspace .people-summary.people-summary-five{grid-template-columns:repeat(5,minmax(0,1fr))}
#view-people.assignment-workspace .people-cell-actions{min-width:190px;display:table-cell!important;vertical-align:middle!important;padding:14px 16px!important}
#view-people.assignment-workspace .people-assignment-status{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
#view-people.assignment-workspace .people-row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
#view-people.assignment-workspace .people-row-actions button{margin:0!important;white-space:nowrap}
#view-people.assignment-workspace .people-row-confirm,
#view-people.assignment-workspace .people-row-stage{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border-radius:7px;font-size:11px;font-weight:800;cursor:pointer}
#view-people.assignment-workspace .people-row-confirm{border:1px solid #A9D9C2;background:#F0FAF5;color:#087548}
#view-people.assignment-workspace .people-row-stage{border:1px solid #0758F5;background:#0758F5;color:#fff}
#view-people.assignment-workspace .people-validity.ready{background:#EEF4FF;color:#2054AA}
#view-people.assignment-workspace .people-validity.confirmed{background:#E8F7EF;color:#087548}
#view-people.assignment-workspace .people-validity.staged{background:#E7F0FF;color:#174FAE}
#view-people.assignment-workspace .people-confirmed-at{display:block;font-size:10px;line-height:1.4;color:#718198}
#view-people.assignment-workspace .people-row-confirmed{background:#FCFEFD}
#view-people.assignment-workspace .people-row-staged{background:#FAFCFF}
@media(max-width:1250px){#view-people.assignment-workspace .people-summary.people-summary-five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#view-people.assignment-workspace .people-summary.people-summary-five{grid-template-columns:1fr 1fr}}


/* 05 · Manager access inside the same HR shell */
#view-dispatch.dispatch-workspace{padding-bottom:36px}
#view-dispatch .dispatch-page-heading{align-items:flex-end;margin-bottom:18px}
#view-dispatch .dispatch-list-panel{background:#fff;border:1px solid #DFE6F0;border-radius:13px;overflow:hidden;box-shadow:0 2px 7px rgba(21,45,82,.035)}
#view-dispatch .dispatch-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 21px 12px}
#view-dispatch .dispatch-list-heading h2{margin:0 0 4px;font-size:19px}
#view-dispatch .dispatch-list-heading p{margin:0;color:#697B92;font-size:11px;line-height:1.5}
#view-dispatch .dispatch-list-heading>span{white-space:nowrap;font-size:11px;color:#667A96}
#view-dispatch .assessor-dispatch-counts{margin-bottom:14px;border:1px solid #DFE7F1;border-radius:12px;background:#fff}
#view-dispatch .assessor-dispatch-toolbar{background:#fff}
#view-dispatch .assessor-dispatch-batch{margin:0}
#view-dispatch .assessor-package-action{border:1px solid #BED1F5;border-radius:7px;background:#F5F8FF;color:#2054AA;padding:8px 10px;font-size:11px;font-weight:750;white-space:nowrap}
#view-dispatch .dispatch-pagination{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid #E4ECF6;background:#F9FBFE}
#view-dispatch .dispatch-pagination button{border:1px solid #CDDAEB;background:#fff;color:#315884;border-radius:7px;padding:7px 11px;font-size:11px}
#view-dispatch .dispatch-pagination button:disabled{opacity:.38}
@media(max-width:800px){#view-dispatch .dispatch-page-heading{align-items:flex-start;flex-direction:column}#view-dispatch .dispatch-list-heading{flex-direction:column}}


/* 08 · Review & Calibration */
.calibration-workspace{padding-bottom:38px}
.calibration-heading{margin-bottom:16px}
.calibration-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.calibration-summary article{padding:15px 16px;border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:4px}
.calibration-summary small{font-size:11px;color:var(--text-secondary);font-weight:700}
.calibration-summary strong{font-size:27px;line-height:1.05;color:var(--text)}
.calibration-summary span{font-size:10px;color:var(--neutral)}
.calibration-panel{border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow-1);overflow:visible}
.calibration-toolbar{padding:18px;border-bottom:1px solid var(--border-soft);background:#fff;border-radius:14px 14px 0 0}
.calibration-search{max-width:none;margin-bottom:12px}
.calibration-search input{font-size:13px}
.calibration-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.calibration-filter{position:relative}
.calibration-filter summary{list-style:none;min-height:38px;padding:0 12px;border:1px solid #D7DEE8;border-radius:9px;background:#fff;color:#233247;font-size:11px;font-weight:800;display:flex;align-items:center;gap:7px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.calibration-filter summary:hover{background:#F8FAFD;border-color:#B9C5D6}
.calibration-filter summary::-webkit-details-marker{display:none}
.calibration-filter summary::after{content:'⌄';color:#7A8798;font-size:11px;margin-left:3px}
.calibration-filter[open] summary{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,82,255,.08);background:#FBFDFF}
.calibration-filter summary span:not(:empty){min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#EAF1FF;color:var(--primary);font:700 9px/18px "JetBrains Mono",monospace;text-align:center}
.calibration-filter-menu{position:absolute;z-index:50;top:44px;left:0;width:270px;max-height:330px;overflow:hidden;padding:8px;border:1px solid #D6DDE8;border-radius:11px;background:#fff;box-shadow:0 18px 42px rgba(31,48,78,.16)}
.calibration-filter-wide .calibration-filter-menu{width:330px}
.cal-filter-search-wrap{height:36px;border:1px solid #DCE3EC;border-radius:8px;display:flex;align-items:center;gap:7px;padding:0 9px;margin-bottom:7px;background:#F9FBFD}
.cal-filter-search-wrap svg{width:14px;height:14px;fill:none;stroke:#7B8A9E;stroke-width:1.8}
.cal-filter-search-wrap input{width:100%;border:0;outline:0;background:transparent;font-size:11px;color:var(--text);min-width:0}
.cal-filter-options{max-height:250px;overflow:auto;padding-right:2px}
.calibration-filter-menu label{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:7px;font-size:11px;cursor:pointer;color:#28384E}
.calibration-filter-menu label:hover{background:#F4F7FB}
.calibration-filter-menu label[hidden]{display:none}
.calibration-filter-menu input[type="checkbox"]{width:15px;height:15px;accent-color:var(--primary);flex:0 0 auto}
.calibration-filter-menu label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-filter-no-results{padding:18px 10px;text-align:center;color:#8795A8;font-size:10px}
.calibration-active-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-top:11px}
.cal-filter-chip{border:1px solid #D6E1F6;border-radius:999px;background:#F6F9FF;color:#284568;padding:5px 8px;display:inline-flex;align-items:center;gap:5px;font-size:10px;cursor:pointer}
.cal-filter-chip span{color:#718198}
.cal-filter-chip b{font-size:13px;line-height:1;color:#557195}
.calibration-result-head{padding:11px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#F8FAFD;border-bottom:1px solid var(--border-soft)}
.calibration-result-head>div{display:flex;align-items:baseline;gap:8px}
.calibration-result-head strong{font-size:12px}
.calibration-result-head span{font-size:10px;color:var(--text-secondary)}
.calibration-query-note{font-size:9px!important;color:#7F8EA2!important}
.calibration-table-wrap{overflow:auto;border-radius:0}
.calibration-table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0}
.calibration-table th{padding:11px 14px;border-bottom:1px solid #DDE3EB;background:#FBFCFE;color:#67768B;font-size:10px;font-weight:800;text-align:left;white-space:nowrap;letter-spacing:.01em}
.calibration-table th:nth-child(1){width:25%}
.calibration-table th:nth-child(2){width:13%}
.calibration-table th:nth-child(3){width:24%}
.calibration-table th:nth-child(4){width:25%}
.calibration-table th:nth-child(5){width:8%}
.calibration-table th:nth-child(6){width:5%}
.calibration-table td{padding:15px 14px;border-bottom:1px solid #E9EDF2;vertical-align:middle;font-size:11px;background:#fff}
.calibration-table tbody tr:last-child td{border-bottom:0}
.calibration-table tbody tr:hover td{background:#FAFCFF}
.cal-person-cell{align-items:center;gap:11px}
.cal-person-cell .avatar{width:38px;height:38px;flex:0 0 38px}
.cal-person-cell>span:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.cal-person-cell strong{font-size:13px;color:#172437;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-person-cell small{display:flex;align-items:center;gap:5px;color:#7A889B;font-size:10px;white-space:nowrap}
.calibration-org{display:flex;flex-direction:column;gap:4px}
.calibration-org strong{font-size:11px;color:#243449}
.calibration-org span{font-size:10px;color:#7A889B}
.cal-assessor-mini{display:flex;flex-direction:column;gap:7px}
.cal-assessor-person{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cal-assessor-person>span{display:flex;flex-direction:column;gap:2px;min-width:0}
.cal-assessor-person strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-assessor-person small{font-size:9px;color:#8794A6}
.cal-assessor-person em{font-style:normal;font:700 9px "JetBrains Mono",monospace;color:#48617F;background:#F2F5F9;border-radius:999px;padding:3px 6px;flex:0 0 auto}
.cal-score-grid{display:grid;grid-template-columns:repeat(4,minmax(58px,1fr));gap:7px}
.cal-score-grid>div{min-height:49px;padding:7px 8px;border:1px solid #E4E9F0;border-radius:8px;background:#FAFBFD;display:flex;flex-direction:column;justify-content:center;gap:3px}
.cal-score-grid small{font-size:8px;font-weight:800;color:#8491A3;letter-spacing:.03em}
.cal-score-grid strong{font:800 12px "JetBrains Mono",monospace;color:#25364D}
.cal-score-grid .final{background:#F6F9FF;border-color:#D8E4FA}
.cal-score-grid .final strong{color:#124EC8}
.cal-score-grid .final.adjusted{background:#F1FBF6;border-color:#CFEEDF}
.cal-score-grid .final.adjusted strong{color:#087A4A}
.cal-variance{font:700 8px "JetBrains Mono",monospace}
.cal-variance.up{color:#087A4A}.cal-variance.down{color:var(--error)}
.cal-result-stack{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.cal-status{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}
.cal-status.unchanged{background:#F1F4F8;color:#5D6B7E}
.cal-status.adjusted{background:var(--success-soft);color:#087A4A}
.cal-status.review{background:var(--warning-soft);color:#8A5700}
.cal-action-col{text-align:right}
.cal-view-button{border:1px solid #C7D6F5;border-radius:8px;background:#fff;color:var(--primary);padding:8px 10px;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
.cal-view-button:hover{background:#F3F7FF;border-color:#9DBAF1}
.cal-view-button span{margin-left:4px}
.calibration-pagination{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;background:#FAFCFF;border-top:1px solid var(--border-soft);font-size:10px;color:var(--text-secondary);border-radius:0 0 14px 14px}
.calibration-pagination>div{display:flex;gap:7px}
.calibration-pagination button{border:1px solid var(--border);border-radius:7px;background:#fff;padding:6px 10px;color:var(--text-secondary);font-size:10px}
.calibration-pagination button:disabled{opacity:.4}
.calibration-drawer-backdrop{position:fixed;inset:0;z-index:80;background:rgba(15,26,43,.28)}
.calibration-drawer{position:fixed;z-index:81;top:0;right:0;width:min(760px,96vw);height:100vh;background:#fff;box-shadow:-18px 0 48px rgba(15,26,43,.16);overflow:auto}
.calibration-drawer-head{position:sticky;top:0;z-index:2;padding:20px 22px 16px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.98);display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.calibration-drawer-head h2{margin:3px 0 2px;font-size:21px}
.calibration-drawer-head p{margin:0;color:var(--text-secondary);font-size:11px}
.calibration-drawer-head>button{width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:20px;color:var(--text-secondary);cursor:pointer}
.calibration-drawer-body{padding:18px 22px 30px;display:flex;flex-direction:column;gap:14px}
.cal-detail-section{border:1px solid var(--border);border-radius:11px;background:#fff;overflow:hidden}
.cal-detail-title{padding:12px 14px;border-bottom:1px solid var(--border-soft);background:#FBFCFE;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.cal-detail-title h3{margin:0;font-size:13px}
.cal-detail-title span{font-size:9px;color:var(--text-secondary)}
.cal-assessor-breakdown{padding:14px;display:flex;flex-direction:column;gap:14px}
.cal-assessor-detail-card{border:1px solid #DCE3EC;border-radius:10px;overflow:hidden;background:#fff}
.cal-assessor-detail-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;background:#F8FAFD;border-bottom:1px solid #E3E8EF}
.cal-assessor-detail-head>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}
.cal-assessor-index{width:28px;height:28px;border-radius:7px;background:#EAF1FF;color:var(--primary);display:grid;place-items:center;font:800 10px "JetBrains Mono",monospace;flex:0 0 28px}
.cal-assessor-detail-head>div:first-child>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.cal-assessor-detail-head strong{font-size:12px;color:#172437}
.cal-assessor-detail-head small{font-size:9px;color:#7B899C}
.cal-assessor-total{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:0 0 auto}
.cal-assessor-total span{font-size:8px;color:#7B899C}
.cal-assessor-total strong{font:800 15px "JetBrains Mono",monospace;color:#173B73}
.cal-detail-score-block{padding:12px 14px 0}
.cal-detail-score-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.cal-detail-score-head strong{font-size:10px;color:#304158}
.cal-detail-score-head span{font-size:8px;color:#8B97A7}
.cal-detail-score-table{border:1px solid #E5EAF0;border-radius:8px;overflow:hidden}
.cal-detail-score-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 70px 88px;align-items:center;min-height:36px;border-top:1px solid #EDF0F4}
.cal-detail-score-row:first-child{border-top:0}
.cal-detail-score-row.header{min-height:30px;background:#F8FAFC;color:#7C899B;font-size:8px;font-weight:800}
.cal-detail-score-row>span{padding:7px 9px;font-size:9px}
.cal-detail-score-row .title{font-size:9.5px;color:#2B3B50;line-height:1.35}
.cal-detail-score-row .score{font-weight:800;color:#172437}
.cal-detail-score-row .weighted{font-weight:800;color:#2459A8}
.cal-assessor-calc{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;padding:11px 14px 13px;margin-top:12px;border-top:1px solid #E6EAF0;background:#FBFCFE;font-size:9px;color:#68778B}
.cal-assessor-calc b{color:#A0A9B6}
.cal-assessor-calc strong{font:800 11px "JetBrains Mono",monospace;color:#20344D}
.cal-assessor-calc .contribution{color:#0A6A45}
.cal-score-formula{padding:14px;display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center}
.cal-score-formula span{font-size:10px;color:var(--text-secondary)}
.cal-score-formula strong{font:800 12px "JetBrains Mono",monospace}
.cal-score-formula .total{padding-top:9px;border-top:1px solid var(--border);color:var(--text);font-size:12px}
.cal-edit-section{padding-bottom:14px}
.cal-edit-section .cal-detail-title{margin-bottom:12px}
.cal-score-input,.cal-reason-input{display:flex;flex-direction:column;gap:6px;margin:0 14px 12px}
.cal-score-input span,.cal-reason-input span{font-size:10px;font-weight:700;color:var(--text-secondary)}
.cal-score-input input,.cal-reason-input textarea{border:1px solid var(--border);border-radius:8px;padding:10px 11px;color:var(--text);outline:0;font:inherit}
.cal-score-input input:focus,.cal-reason-input textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,82,255,.07)}
.cal-edit-error{margin:0 14px 10px;color:var(--error);font-size:10px}
.cal-edit-section>.btn{margin:0 14px;width:calc(100% - 28px)}
@media(max-width:1100px){.calibration-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.calibration-query-note{display:none}}
@media(max-width:700px){.calibration-summary{grid-template-columns:1fr 1fr}.calibration-result-head{align-items:flex-start;flex-direction:column}}



/* 10 · HR documents */
.hr-documents-view{padding-bottom:40px}
.hr-doc-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hr-doc-heading h1{font-size:25px}
.hr-doc-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.hr-doc-stats>div{background:#fff;border:1px solid #DFE6EF;border-radius:12px;padding:15px 17px;display:flex;flex-direction:column;gap:5px}
.hr-doc-stats span{color:#708197;font-size:11px;font-weight:700}
.hr-doc-stats strong{font:750 25px "JetBrains Mono",monospace;color:#193858}
.hr-doc-notice{padding:11px 14px;background:#EFF5FC;color:#43617F;border:1px solid #D9E6F5;border-radius:9px;margin-bottom:16px;font-size:11px}
.hr-doc-notice.error{background:#FFF4F2;border-color:#F0D1CB;color:#A04437}
.hr-doc-layout{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(430px,1.35fr);gap:17px;align-items:start}
.hr-doc-collection,.hr-doc-editor{background:#fff;border:1px solid #DCE4EE;border-radius:14px;overflow:hidden;box-shadow:0 5px 17px rgba(16,39,70,.035)}
.hr-doc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border-bottom:1px solid #E7ECF3}
.hr-doc-panel-head h2{margin:0;color:#23364E;font-size:15px;line-height:1.4}
.hr-doc-panel-head p{margin:4px 0 0;color:#8794A5;font-size:10px}
.hr-doc-panel-head>button{width:31px;height:31px;background:#F3F7FB;color:#58748E;border:1px solid #DEE5ED;border-radius:8px;font-size:20px;cursor:pointer}
.hr-doc-filterbar{display:flex;gap:7px;padding:13px 15px;background:#FBFCFE;border-bottom:1px solid #EBEEF3}
.hr-doc-filterbar input,.hr-doc-filterbar select{min-width:0;height:37px;padding:0 10px;border:1px solid #D9E2EC;border-radius:8px;font-size:11px;background:#fff;color:#30445D}
.hr-doc-filterbar input{flex:1}
.hr-doc-filterbar select{width:145px}
.hr-doc-list{padding:12px;display:flex;flex-direction:column;gap:8px;max-height:740px;overflow:auto}
.hr-doc-empty{padding:60px 24px;text-align:center;color:#8595A9;font-size:12px;line-height:1.8}
.hr-doc-item{display:flex;flex-direction:column;gap:6px;width:100%;padding:13px;text-align:left;background:#fff;border:1px solid #E4EAF1;border-radius:10px;color:#243B57;cursor:pointer}
.hr-doc-item:hover{background:#FAFCFF;border-color:#B9CDE8}
.hr-doc-item.active{background:#F5F9FF;border-color:#7EA7E6;box-shadow:inset 3px 0 0 #2869C3}
.hr-doc-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.hr-doc-type{font-size:9px;color:#577EA8;font-weight:700}
.hr-doc-item strong{font-size:12px;color:#23364C;line-height:1.55}
.hr-doc-item p{font-size:10px;color:#6B7B90;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hr-doc-item small{font-size:9px;color:#98A5B4}
.hr-doc-state{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:800;white-space:nowrap}
.hr-doc-state.published{background:#E6F5EE;color:#13865B}
.hr-doc-state.draft{background:#EFF2F7;color:#677A91}
.hr-doc-editor-fields{padding:20px;display:grid;gap:16px}
.hr-doc-editor-fields .field{display:flex;flex-direction:column;gap:6px}
.hr-doc-editor-fields .field>span{font-size:11px;font-weight:800;color:#3C526B}
.hr-doc-editor-fields input:not([type=file]),.hr-doc-editor-fields textarea,.hr-doc-editor-fields select{width:100%;border:1px solid #D5DFEB;border-radius:9px;background:#fff;padding:11px 12px;color:#253E5C;font-size:12px;font-family:inherit;outline:0}
.hr-doc-editor-fields input:focus,.hr-doc-editor-fields textarea:focus,.hr-doc-editor-fields select:focus{border-color:#6397D9;box-shadow:0 0 0 3px #E8F1FF}
.hr-doc-editor-fields textarea{resize:vertical;min-height:122px;line-height:1.7}
.hr-doc-required{color:#D25E54}
.hr-doc-file-field{border:1px dashed #CCD9E9;padding:15px;border-radius:10px;background:#FAFCFF;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hr-doc-file-field>div:first-child{display:flex;flex-direction:column;gap:4px;flex:1}
.hr-doc-file-field strong{font-size:11px;color:#294561}
.hr-doc-file-field small{font-size:9px;color:#8595A8}
.hr-doc-upload-button{display:inline-flex;align-items:center;border:1px solid #C7D8F1;border-radius:8px;padding:9px 11px;background:#fff;color:#235FA9;font-size:10px;font-weight:800;cursor:pointer}
.hr-doc-file-current{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;color:#6C819A;font-size:10px;overflow-wrap:anywhere}
.hr-doc-file-current a{color:#1455AE}
.hr-doc-editor-error{margin:0;padding:11px 13px;border-radius:8px;background:#FFF4F2;color:#B1463A;font-size:11px}
.hr-doc-editor-actions{padding:15px 20px;display:flex;align-items:center;gap:9px;border-top:1px solid #E7ECF3}
.hr-doc-editor-actions .btn{white-space:nowrap}
.hr-doc-editor-actions .btn:disabled,.hr-doc-panel-head button:disabled{opacity:.4;cursor:wait}
.hr-doc-action-spacer{flex:1}
.hr-doc-delete{background:none;border:0;color:#B54C4C;font-size:11px;font-weight:700;cursor:pointer;padding:9px}
.hr-doc-editor-footnote{padding:0 20px 17px;font-size:10px;line-height:1.7;color:#8293A6}
@media(max-width:1100px){.hr-doc-layout{grid-template-columns:1fr}.hr-doc-list{max-height:400px}}
@media(max-width:600px){.hr-doc-stats{gap:6px}.hr-doc-stats>div{padding:12px}.hr-doc-stats strong{font-size:20px}.hr-doc-panel-head{padding:14px}.hr-doc-editor-fields{padding:14px}.hr-doc-filterbar{flex-wrap:wrap}.hr-doc-filterbar select{width:100%}.hr-doc-editor-actions{padding:12px;flex-wrap:wrap}.hr-doc-editor-actions .btn{flex:1}}

/* HR auth inside the unified prototype shell */
.hr-auth-modal{z-index:120}
.hr-auth-card{width:min(430px,calc(100vw - 32px));padding:20px}
.hr-auth-card .modal-header{margin-bottom:14px}
.hr-auth-card .modal-header h2{margin:3px 0 0}
.hr-auth-card .field{margin-bottom:12px}
.hr-auth-card .full-width{width:100%;margin-top:4px}
.hr-auth-qr{display:flex;justify-content:center;align-items:center;min-height:190px;margin:10px 0 12px;padding:12px;border:1px solid var(--border-soft);border-radius:10px;background:#fff}
.hr-auth-qr svg,.hr-auth-qr img{width:180px;height:180px;max-width:100%;object-fit:contain}
.hr-auth-secret-row{display:flex;flex-direction:column;gap:4px;margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#F7F9FC}
.hr-auth-secret-row span{font-size:10px;color:var(--text-secondary)}
.hr-auth-secret-row code{font-size:11px;word-break:break-all;color:var(--text)}
.hr-auth-help{margin:0 0 12px;color:var(--text-secondary);font-size:12px}
.hr-auth-message{min-height:18px;margin:12px 0 0;font-size:11px;color:var(--text-secondary)}
.hr-auth-message.error{color:var(--error)}

/* Manager Roster Confirmation */
.manager-preview-banner{display:flex;align-items:center;gap:10px;border:1px solid #B7CDFF;background:var(--blue-soft);border-radius:10px;padding:11px 14px;margin-bottom:14px;color:#234D9B}
.manager-preview-banner strong{font-size:11px;text-transform:uppercase;letter-spacing:.05em;background:#fff;border-radius:5px;padding:3px 6px;color:var(--primary)}
.manager-preview-banner span{font-size:12px}
.manager-roster-picker{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.manager-roster-picker>div:first-child{min-width:360px}
.field-label{display:block;margin-bottom:7px;color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.045em}
.manager-roster-picker .select{width:100%}
.manager-roster-manager-meta{display:flex;align-items:center;gap:10px;color:var(--text-secondary)}
.manager-roster-manager-meta strong{color:var(--text);font-size:15px}
.manager-roster-manager-meta span{font-size:12px}
.manager-roster-summary{margin-bottom:16px}
.manager-roster-table{min-width:1120px}
.roster-assignment{display:flex;flex-direction:column;gap:2px;min-width:170px}
.roster-assignment strong{font-size:13px;font-weight:600}
.roster-assignment span{font-size:11px;color:var(--secondary)}
.manager-roster-actions{display:flex;gap:5px;flex-wrap:wrap;min-width:360px}
.manager-roster-actions .people-row-action{height:32px;padding:0 8px}
.manager-roster-actions .people-row-action:disabled{opacity:.4;cursor:not-allowed}
.roster-request-modal{width:min(620px,100%)}

@media (max-width:900px){
  .manager-roster-picker{align-items:stretch;flex-direction:column}
  .manager-roster-picker>div:first-child{min-width:0;width:100%}
  .people-readiness-flow{grid-template-columns:1fr}
  .readiness-arrow{transform:rotate(90deg)}
  .people-queue-grid{grid-template-columns:1fr}
  .people-detail-grid{grid-template-columns:1fr}
}

/* Exceptions */
.exception-control-heading{align-items:flex-start}
.exception-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.exception-focus-card{min-height:92px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:14px 15px;display:flex;align-items:center;gap:13px;text-align:left;color:var(--text)}
.exception-focus-card:hover{border-color:#AFC4F5}
.exception-focus-card.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.exception-focus-card>span:last-child{display:flex;flex-direction:column}
.exception-focus-card strong{font-size:13px}
.exception-focus-card small{font-size:10px;color:var(--text-secondary);margin-top:2px;line-height:1.35}
.exception-focus-value{font-size:24px;font-weight:650;min-width:36px;color:var(--primary)}
.exception-toolbar{margin-top:0}
.exception-case-panel{overflow:visible}
.exception-table-compact{min-width:960px}
.exception-table-compact td{height:72px}
.exception-type{display:inline-flex;min-height:28px;align-items:center;padding:4px 9px;border-radius:6px;background:var(--neutral-soft);color:var(--secondary);font-size:11px;font-weight:700;white-space:nowrap}
.exception-type.eligibility{background:var(--warning-soft);color:#A35E00}
.exception-type.assessor{background:var(--error-soft);color:var(--error)}
.exception-type.roster{background:var(--blue-soft);color:var(--primary)}
.exception-description{max-width:500px;color:var(--text-secondary);font-size:12px;line-height:1.5}
.exception-resolution{display:inline;color:var(--neutral);font-size:10px}
.exception-status{display:inline-flex;min-height:28px;align-items:center;padding:4px 9px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap}
.exception-status.open{background:var(--warning-soft);color:#A35E00}
.exception-status.resolved{background:var(--success-soft);color:#087A4A}
.exception-open-btn{height:34px;border:1px solid var(--border);background:#fff;border-radius:7px;padding:0 10px;font-size:11px;font-weight:700;color:var(--primary);white-space:nowrap}
.exception-open-btn:hover{border-color:#9FBCFF;background:var(--blue-soft)}

.case-review-modal{width:min(820px,100%);max-height:90vh;overflow:auto}
.case-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.case-review-card{border:1px solid var(--border-soft);border-radius:10px;background:#fff;padding:14px}
.case-fact{display:flex;flex-direction:column;padding:9px 0;border-bottom:1px solid var(--border-soft)}
.case-fact:last-child{border-bottom:0}
.case-fact>span,.case-note>span{font-size:10px;color:var(--neutral);text-transform:uppercase;letter-spacing:.04em}
.case-fact strong,.case-note strong{font-size:13px;margin-top:2px}
.case-fact small{font-size:10px;color:var(--secondary);margin-top:2px}
.case-fact.danger strong{color:var(--error)}
.case-note{display:flex;flex-direction:column;padding-top:9px}
.case-review-impact{margin-top:12px;border:1px solid #B7CDFF;background:var(--blue-soft);border-radius:10px;padding:14px}
.case-review-impact>div{font-size:12px;line-height:1.55;color:#284F95}
.case-review-check{margin-top:12px;border-radius:9px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.case-review-check strong{font-size:12px}
.case-review-check span{font-size:11px}
.case-review-check.pending{background:var(--warning-soft);color:#8A5700}
.case-review-check.complete{background:var(--success-soft);color:#087A4A}
.case-review-actions{flex-wrap:wrap}
.case-review-actions #case-review-reject{margin-right:auto}

@media (max-width:900px){
  .exception-overview{grid-template-columns:1fr 1fr}
  .case-review-grid{grid-template-columns:1fr}
}

/* HR eligibility workspace — compact, scan-first, no horizontal scrolling */
#view-eligibility{--elig-ink:#14233A;--elig-muted:#64748B;--elig-stroke:#E2E8F0;--elig-paper:#FFFFFF;color:var(--elig-ink)}
#view-eligibility .eligibility-page-heading{align-items:center;margin-bottom:17px}
#view-eligibility .eligibility-page-heading h1{font-size:33px;letter-spacing:-.035em;margin-bottom:5px}
#view-eligibility .eligibility-next-btn{font-size:13px;height:43px;white-space:nowrap}
.eligibility-guidance{display:flex;align-items:center;gap:11px;margin-bottom:18px;padding:12px 16px;border:1px solid #C9D8F4;border-left:4px solid var(--primary);border-radius:11px;background:#F4F8FF;color:#34445D;font-size:13px;line-height:1.5}
.eligibility-guidance-icon{width:23px;height:23px;flex:none;display:grid;place-items:center;border-radius:50%;background:#DDE9FF;color:#174CB0;font-family:Georgia,serif;font-size:15px;font-weight:700}
.eligibility-guidance strong{color:#153A80}
.eligibility-preview-note{margin-left:auto;flex:none;padding:4px 9px;border-radius:5px;color:#825307;background:#FFF2D8;font-size:11px;font-weight:650;white-space:nowrap}
.eligibility-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:22px}
#view-eligibility .eligibility-filter-card{position:relative;min-height:112px;padding:15px 17px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;text-align:left;background:#fff;border:1px solid var(--elig-stroke);border-radius:12px;color:var(--elig-ink);box-shadow:0 1px 1px rgba(20,35,58,.025);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
#view-eligibility .eligibility-filter-card:hover{border-color:#8EAEF4;transform:translateY(-1px)}
#view-eligibility .eligibility-filter-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 2px rgba(0,82,255,.12),0 3px 10px rgba(20,35,58,.05)}
#view-eligibility .eligibility-filter-card.is-selected::before{content:'';position:absolute;inset:11px auto 11px 0;width:3px;border-radius:0 4px 4px 0;background:var(--primary)}
#view-eligibility .eligibility-filter-card small{font-size:13px;font-weight:750;color:#415067}
#view-eligibility .eligibility-filter-card .mono{font-size:29px;line-height:1.15;font-weight:650;letter-spacing:-.045em}
#view-eligibility .eligibility-filter-card em{font-size:11px;font-style:normal;line-height:1.25;color:var(--elig-muted)}
#view-eligibility [data-eligibility-filter="needs_review"] .mono{color:#A2610A}
#view-eligibility [data-eligibility-filter="eligible"] .mono{color:#087A4A}
.eligibility-list-panel{background:#fff;border:1px solid var(--elig-stroke);border-radius:15px;overflow:hidden;box-shadow:0 3px 14px rgba(17,39,77,.035)}
.eligibility-list-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px 10px}
.eligibility-list-heading h2{font-size:20px;margin:0 0 2px}
.eligibility-list-heading p{margin:0;color:var(--elig-muted);font-size:12px}
.eligibility-count{background:#F1F5FA;border-radius:6px;padding:6px 11px;color:#34445D;font-size:12px;white-space:nowrap}
.eligibility-count strong{font:700 16px "JetBrains Mono",monospace;color:var(--elig-ink)}
#view-eligibility .eligibility-toolbar{display:flex;gap:9px;flex-wrap:wrap;margin:2px 0 0;padding:13px 20px;background:#FBFCFE;border-top:1px solid var(--elig-stroke);border-bottom:1px solid var(--elig-stroke)}
#view-eligibility .eligibility-toolbar .search-box{min-width:215px;flex:1 1 260px}
#view-eligibility .eligibility-toolbar .select{flex:0 1 180px;min-width:150px;max-width:100%}
.eligibility-selection-bar{min-height:57px;padding:10px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#F8FAFD;border-top:1px solid var(--elig-stroke);border-bottom:1px solid var(--elig-stroke)}
.eligibility-select-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#394B64;cursor:pointer;white-space:nowrap}
.eligibility-select-label input,.eligibility-row-check{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}
#eligibility-selected-copy{font-size:12px;color:var(--elig-muted)}
#view-eligibility .eligibility-bulk-btn{margin-left:auto;height:36px;min-width:0;padding:0 16px;font-size:12px;border-radius:7px}
#view-eligibility .eligibility-table-wrap{width:100%;overflow:visible}
#view-eligibility .eligibility-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
#view-eligibility .eligibility-table th{padding:12px 12px;background:#fff;color:#6E7D90;font-size:11px;font-weight:750;text-align:left;white-space:normal;border-bottom:1px solid var(--elig-stroke)}
#view-eligibility .eligibility-table th:first-child{width:46px}
#view-eligibility .eligibility-table th:nth-child(2){width:36%}
#view-eligibility .eligibility-table th:nth-child(3){width:19%}
#view-eligibility .eligibility-table th:nth-child(4){width:17%}
#view-eligibility .eligibility-table td{padding:15px 12px;vertical-align:middle;border-bottom:1px solid #EDF1F6;font-size:12px;overflow-wrap:anywhere}
#view-eligibility .eligibility-table tr:last-child td{border-bottom:0}
#view-eligibility .eligibility-table tbody tr:hover{background:#FBFCFF}
#view-eligibility .eligibility-table .check-cell{text-align:center;padding-left:12px;padding-right:2px}
#view-eligibility .eligibility-table .person-cell{display:flex;align-items:center;gap:9px;min-width:0}
#view-eligibility .eligibility-table .person-cell>span:last-child{min-width:0}
#view-eligibility .eligibility-table .person-cell strong{display:block;font-size:13px;line-height:1.5;color:#1A2A40;overflow-wrap:anywhere}
#view-eligibility .eligibility-table .person-cell small{display:block;color:#697B91;font-size:11px;line-height:1.45}
#view-eligibility .eligibility-table .person-cell .eligibility-person-meta{display:block;max-width:100%;margin-top:4px;color:#53667E;white-space:normal;overflow:visible;overflow-wrap:anywhere;line-height:1.5}
#view-eligibility .eligibility-status{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:26px;padding:3px 9px;border-radius:6px;white-space:normal;font-size:11px;font-weight:750;line-height:1.3}
#view-eligibility .eligibility-status.eligible{background:#E5F7EE;color:#067047}
#view-eligibility .eligibility-status.january{background:#FFF3D9;color:#9B5D09}
#view-eligibility .eligibility-status.not-eligible{background:#EDF1F5;color:#566476}
#view-eligibility .eligibility-status.missing{background:#FFF0F0;color:#B02936}
.eligibility-status-reason{display:block;margin-top:6px;color:#6E7D90;font-size:11px;line-height:1.45}
.eligibility-date{display:block;color:#1A2A40;font-weight:650;font-size:12px}
.eligibility-cell-tenure small{display:block;margin-top:5px;color:#6E7D90;font-size:11px;line-height:1.45}
.eligibility-cell-action .eligibility-decision-copy{margin-bottom:7px}
#view-eligibility .decision-badge{display:inline-flex;max-width:100%;padding:3px 7px;min-height:24px;align-items:center;border-radius:5px;background:#EDF1F5;color:#526277;font-size:10px;font-weight:750;line-height:1.35;white-space:normal}
#view-eligibility .decision-badge.approved{background:#E5F7EE;color:#067047}
#view-eligibility .decision-badge.rejected{background:#FFF0F0;color:#B02936}
#view-eligibility .decision-badge.overridden{background:#EAF1FF;color:#174CB0}
#view-eligibility .decision-reason{display:block;margin-top:4px;font-size:10px;color:#64748B;line-height:1.45;overflow-wrap:anywhere}
#view-eligibility .eligibility-row-action{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:34px;padding:6px 11px;border:1px solid #C9D9FC;border-radius:7px;color:#174CB0;background:#F4F8FF;font-size:11px;font-weight:750;white-space:nowrap;text-decoration:none;transition:background .15s,border-color .15s}
#view-eligibility .eligibility-row-action:hover{background:#E5EFFF;border-color:#80A8FF;text-decoration:none}
#view-eligibility .eligibility-row-action.requires-review{background:var(--primary);border-color:var(--primary);color:white}
#view-eligibility .eligibility-row-action.requires-review:hover{background:var(--primary-hover)}
#view-eligibility button:focus-visible,#view-eligibility select:focus-visible,#view-eligibility input:focus-visible{outline:3px solid #7CA8FF;outline-offset:2px}
#view-eligibility .table-empty{padding:34px;text-align:center;color:#64748B}
.eligibility-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--elig-stroke);color:#64748B;font-size:12px}
.eligibility-pagination>div{display:flex;gap:7px}
.eligibility-page-btn{min-height:34px;padding:5px 12px;border:1px solid #CDD8E6;border-radius:7px;background:#fff;color:#235294;font-size:12px;font-weight:700}
.eligibility-page-btn:hover:not(:disabled){border-color:#7A9FEA;background:#F0F6FF}
.eligibility-page-btn:disabled{opacity:.4;cursor:not-allowed}
.eligibility-followup{margin-top:17px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #D5E2FC;border-radius:12px;background:#F5F8FF}
.eligibility-followup>div{display:flex;flex-direction:column;gap:2px}
.eligibility-followup strong{font-size:14px;color:#183C78}
.eligibility-followup span{font-size:12px;color:#516783}
.eligibility-followup .btn{height:42px;min-width:0;font-size:13px;white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1250px){
  .eligibility-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  #view-eligibility .eligibility-table thead{display:none}
  #view-eligibility .eligibility-table tbody{display:grid;gap:10px;padding:14px;background:#F8FAFD}
  #view-eligibility .eligibility-table tbody tr{display:grid;grid-template-columns:30px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"check person person" "check status tenure" "check action action";column-gap:14px;row-gap:12px;align-items:start;padding:15px;border:1px solid #E0E7F0;border-radius:10px;background:white}
  #view-eligibility .eligibility-table tbody tr:hover{background:white;border-color:#B8CBEC}
  #view-eligibility .eligibility-table td{display:block;padding:0!important;border:0;min-width:0}
  #view-eligibility .eligibility-table .eligibility-cell-check{grid-area:check;padding-top:5px!important}
  #view-eligibility .eligibility-cell-person{grid-area:person}
  #view-eligibility .eligibility-cell-status{grid-area:status}
  #view-eligibility .eligibility-cell-tenure{grid-area:tenure}
  #view-eligibility .eligibility-cell-action{grid-area:action;display:flex!important;justify-content:space-between;align-items:center;gap:12px;padding-top:12px!important;border-top:1px solid #EDF1F6!important}
  #view-eligibility .eligibility-cell-action .eligibility-decision-copy{margin-bottom:0}
}
@media(max-width:900px){
  #view-eligibility .eligibility-page-heading{align-items:flex-start;flex-direction:column;gap:13px}
  .eligibility-guidance{flex-wrap:wrap}
  .eligibility-preview-note{margin-left:34px}
  #view-eligibility .eligibility-toolbar .select{flex:1 1 170px}
  .eligibility-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  #view-eligibility .eligibility-page-heading h1{font-size:28px}
  #view-eligibility .eligibility-filter-card{min-height:104px;padding:13px}
  .eligibility-list-heading{padding:16px 14px 8px}
  .eligibility-list-heading p{font-size:11px}
  #view-eligibility .eligibility-toolbar{padding:10px 14px 13px}
  #view-eligibility .eligibility-toolbar .search-box,#view-eligibility .eligibility-toolbar .select{flex:1 1 100%;width:100%}
  .eligibility-selection-bar{padding:11px 14px}
  #view-eligibility .eligibility-bulk-btn{flex:1 1 100%;margin-left:0}
  #view-eligibility .eligibility-table tbody{padding:10px}
  #view-eligibility .eligibility-table tbody tr{grid-template-columns:24px minmax(0,1fr);grid-template-areas:"check person" ". status" ". tenure" ". action";column-gap:9px;row-gap:10px;padding:13px}
  #view-eligibility .eligibility-cell-action{flex-wrap:wrap;align-items:flex-start;gap:10px}
  .eligibility-followup{align-items:flex-start;flex-direction:column;padding:16px}
  .eligibility-followup .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  #view-eligibility .eligibility-filter-card,#view-eligibility .eligibility-row-action{transition:none}
  #view-eligibility .eligibility-filter-card:hover{transform:none}
}

.people-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
.people-filter-card{cursor:pointer;color:var(--text)}
.people-filter-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:#FCFDFF}
.people-table{min-width:1540px}
.reporting-manager-cell{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:190px}
.reporting-manager-cell>span:first-child{display:flex;flex-direction:column;min-width:0}
.reporting-manager-cell strong{font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reporting-manager-cell small{font-size:10px;color:var(--neutral);margin-top:2px}
.reporting-manager-cell .chip{height:23px;padding:0 6px;font-size:9px}
.people-exception{display:inline-flex;align-items:center;min-height:27px;padding:4px 8px;border-radius:6px;background:var(--neutral-soft);color:var(--secondary);font-size:11px;font-weight:600;white-space:nowrap}
.people-exception.error{background:var(--error-soft);color:var(--error)}
.people-exception.blue{background:var(--blue-soft);color:var(--primary)}
.people-row-actions{display:flex;gap:5px;flex-wrap:wrap;min-width:190px}
.people-row-action{height:32px;border:1px solid var(--border);background:#fff;border-radius:7px;padding:0 8px;color:var(--primary);font-size:11px;font-weight:700;white-space:nowrap}
.people-row-action:hover{border-color:#9FBCFF;background:var(--blue-soft)}
.people-row-action:disabled{opacity:.4;cursor:not-allowed}

.exception-summary-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:16px}
.exception-filter-card{min-height:72px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:11px 12px;text-align:left;color:var(--text);display:flex;flex-direction:column;justify-content:center;gap:5px}
.exception-filter-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:#FCFDFF}
.exception-filter-card .mono{font-size:19px;font-weight:600;line-height:1}
.exception-filter-card small{font-size:11px;color:var(--text-secondary)}
.exception-table{min-width:1040px}
.exception-row-actions,.exception-decision-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.exception-decision{height:34px;border:1px solid var(--border);background:#fff;border-radius:7px;padding:0 9px;font-size:11px;font-weight:700}
.exception-decision.approve{border-color:#A9DDC6;color:#087A4A;background:var(--success-soft)}
.exception-decision.reject{border-color:#F2B8BD;color:var(--error);background:var(--error-soft)}

@media (max-width:1180px){
  .people-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .exception-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:820px){
  .eligibility-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .people-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .exception-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.simple-heading{margin-bottom:22px}
.workflow-panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:22px;margin-bottom:20px}
.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.section-title h2{margin-bottom:0;font-size:22px}
.section-title p{margin-bottom:0;color:var(--text-secondary);font-size:14px}
.workflow-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:stretch}
.workflow-step{min-width:0;border:1px solid var(--border-soft);border-radius:10px;padding:14px;background:#fff;display:flex;gap:10px;align-items:flex-start}
.workflow-step strong,.workflow-step small{display:block}
.workflow-step strong{font-size:14px;line-height:1.35}
.workflow-step small{font-size:12px;line-height:1.45;color:var(--text-secondary);margin-top:3px}
.step-no{width:28px;height:28px;border-radius:999px;background:var(--blue-soft);color:var(--primary);display:grid;place-items:center;flex:none;font:600 12px "JetBrains Mono",monospace}
.workflow-arrow{display:grid;place-items:center;color:#A8B0BC;font-size:18px}

.hr-actions{display:flex;flex-direction:column;gap:12px}
.action-title{margin:4px 0 2px}
.action-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px 22px}
.action-card.emphasis{border-color:#9FBCFF;background:#FCFDFF;box-shadow:0 0 0 1px rgba(0,82,255,.05)}
.action-number{width:38px;height:38px;border-radius:10px;background:var(--neutral-soft);color:var(--secondary);display:grid;place-items:center;font:600 15px "JetBrains Mono",monospace}
.action-card.emphasis .action-number{background:var(--primary);color:#fff}
.action-copy h3{margin:0 0 5px;font-size:19px;line-height:1.35}
.action-copy p{margin:0;color:var(--text-secondary);font-size:15px;line-height:1.55}
.rule-line{margin-top:8px;color:var(--text);font-size:13px;font-weight:600}
.action-buttons{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.action-buttons .btn{white-space:nowrap}

.placeholder-view{min-height:600px}
.prototype-placeholder{min-height:340px;border:1px dashed #B8C0CC;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px}
.prototype-placeholder h2{font-size:22px;margin:16px 0 8px}
.prototype-placeholder p{max-width:560px;color:var(--text-secondary)}

.modal-backdrop{position:fixed;inset:0;background:rgba(5,15,26,.35);z-index:50;display:grid;place-items:center;padding:20px}
.modal-backdrop[hidden]{display:none}
.modal{width:min(480px,100%);background:#fff;border-radius:16px;padding:28px;box-shadow:var(--shadow-3);border:1px solid var(--border)}
.modal-icon{width:44px;height:44px;border-radius:12px;background:var(--blue-soft);color:var(--primary);display:grid;place-items:center;font-size:24px;margin-bottom:16px}
.modal h2{font-size:24px}.modal>p{color:var(--text-secondary)}
.release-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}
.release-summary>div{background:var(--background);border:1px solid var(--border-soft);border-radius:8px;padding:12px}
.release-summary span,.release-summary strong{display:block}.release-summary span{font-size:11px;color:var(--neutral)}.release-summary strong{font-size:18px;margin-top:5px}
.modal-callout{padding:12px;border-radius:8px;background:var(--warning-soft);color:#805000;font-size:12px}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
.action-status{position:fixed;right:24px;top:22px;z-index:120;display:flex;align-items:center;gap:11px;min-width:280px;max-width:min(430px,calc(100vw - 32px));padding:12px 14px;border:1px solid #C8D8ED;border-radius:11px;background:#fff;box-shadow:0 12px 30px rgba(24,52,91,.16);color:#173558}
.action-status[hidden]{display:none}
.action-status-icon{width:18px;height:18px;border:2px solid #B8C9E2;border-top-color:#0B58D0;border-radius:50%;flex:none;animation:action-spin .8s linear infinite}
.action-status>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.action-status strong{font-size:12px;line-height:1.35;color:#173558}
.action-status span:not(.action-status-icon){font-size:10px;line-height:1.45;color:#6E8098}
.action-status.success{border-color:#BDE2CE;background:#F6FCF8}
.action-status.success .action-status-icon{border:0;background:#15945E;animation:none;position:relative}
.action-status.success .action-status-icon:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:900}
.action-status.error{border-color:#EEC4BF;background:#FFF8F7}
.action-status.error .action-status-icon{border:0;background:#C65345;animation:none;position:relative}
.action-status.error .action-status-icon:after{content:'!';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:900}
@keyframes action-spin{to{transform:rotate(360deg)}}
.toast{position:fixed;right:24px;bottom:24px;background:var(--text);color:#fff;border-radius:9px;box-shadow:var(--shadow-3);padding:13px 16px;display:flex;gap:9px;align-items:center;z-index:80}
.toast[hidden]{display:none}.toast-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}

@media (max-width:1180px){
  .sidebar{width:210px}
  .brand{width:190px}
  .overview-layout{grid-template-columns:1fr}
  .overview-side{display:grid;grid-template-columns:1fr 1fr}
  .setup-layout{grid-template-columns:1fr}
  .setup-side{display:grid;grid-template-columns:1fr 1fr}
  .overview-readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .overview-work-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .import-compare-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .validation-grid.compact-validation{grid-template-columns:repeat(3,minmax(0,1fr))}
  .phase-strip{grid-template-columns:1fr 1fr}
  .phase-separator{display:none}
  .status-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quick-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .metric-grid{grid-template-columns:repeat(2,1fr)}
  .content-grid{grid-template-columns:1fr 1fr}
  .panel.span-2{grid-column:span 2}
  .stage-grid{grid-template-columns:repeat(3,1fr)}
  .stage:nth-child(3){border-right:0}
}

@media (max-width:820px){
  .overview-heading-status{justify-content:flex-start}
  .overview-readiness-head{flex-direction:column}
  .overview-readiness-head>span{text-align:left}
  .overview-readiness-grid{grid-template-columns:1fr 1fr}
  .setup-progress-grid{grid-template-columns:1fr}
  .setup-progress-head,.setup-progress-actions{align-items:stretch;flex-direction:column}
  .prototype-data-banner{flex-wrap:wrap}
  .topbar{height:auto}
  .topbar-inner{min-height:64px;padding:10px 12px;gap:10px;flex-wrap:wrap}
  .brand{width:auto;min-width:0}
  .brand-copy{display:none}
  .header-search{order:3;flex-basis:100%;max-width:none}
  .cycle-pill span:nth-child(2){display:none}
  .app-layout{display:block}
  .sidebar{position:sticky;top:108px;z-index:15;width:100%;height:auto;border-right:0;border-bottom:1px solid var(--border);padding:8px 10px;overflow-x:auto}
  .side-nav{flex-direction:row;gap:6px;width:max-content}
  .side-group{display:flex;flex-direction:row;gap:4px}
  .side-label{display:none}
  .side-group-last{padding-top:0;border-top:0}
  .side-link{width:auto;white-space:nowrap;padding:7px 9px}
  .side-icon{display:none}
  .page-shell{padding:26px 16px 60px}
  .page-heading{align-items:flex-start;flex-direction:column}
  .overview-heading-meta{align-items:flex-start}
  .muted-copy{text-align:left}
  h1{font-size:29px}
  .phase-strip{grid-template-columns:1fr}
  .overview-side{display:flex}
  .control-row{grid-template-columns:38px 1fr}
  .control-actions{grid-column:2;justify-content:flex-start;max-width:none}
  .status-matrix{grid-template-columns:1fr 1fr}
  .heading-actions{width:100%}.heading-actions .btn{flex:1}
  .metric-grid,.content-grid{grid-template-columns:1fr}
  .panel.span-2{grid-column:auto}
  .stage-grid{grid-template-columns:repeat(2,1fr)}
  .stage:nth-child(2n){border-right:0}
  .toolbar{align-items:stretch;flex-direction:column}
  .search-box.compact{max-width:none}
  .select{width:100%}
  .table-meta{align-items:flex-start;flex-direction:column;padding:11px 14px}
  .setup-side{display:flex}
  .form-grid{grid-template-columns:1fr}
  .mapping-head,.mapping-row{grid-template-columns:1fr}
  .mapping-head span:nth-child(2),.mapping-head span:nth-child(3){display:none}
  .mapping-row{gap:7px;padding:12px}
  .validation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .import-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .validation-grid.compact-validation{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reporting-flow{grid-template-columns:1fr}
  .reporting-flow-step{border-right:0;border-bottom:1px solid var(--border-soft)}
  .reporting-flow-step:last-child{border-bottom:0}
  .reporting-mode-tabs{overflow:auto}
  .reporting-mode-tab{white-space:nowrap;flex:1}
  .reporting-upload-bar{align-items:flex-start;flex-direction:column}
  .reporting-upload-bar .btn{width:100%}
  .reporting-status-chip{margin-left:0}
  .mapping-health{margin-left:0;width:100%}
  .mapping-review-banner{align-items:flex-start;flex-direction:column;gap:3px}
  .upload-zone{align-items:flex-start;flex-wrap:wrap}
  .upload-copy{min-width:180px}
  .upload-zone .btn{width:100%}
  .setup-actions{flex-direction:column}
  .setup-actions .btn{width:100%}
  .release-summary{grid-template-columns:1fr}
  .toast{left:16px;right:16px;bottom:16px}
}
/* HR / People & Assessors: readable status, primary action beside each person */
#view-people{--pw-ink:#172842;--pw-stroke:#E1E8F2}
#view-people .people-page-heading{align-items:center;margin-bottom:18px}
#view-people .people-page-heading h1{font-size:33px;letter-spacing:-.025em}
.people-header-action{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
#view-people .people-header-action .btn{height:43px;min-width:0;font-size:13px;white-space:nowrap}
.people-guidance{display:flex;align-items:center;gap:12px;padding:13px 16px;margin-bottom:20px;border:1px solid #C9D9F6;border-left:4px solid var(--primary);border-radius:11px;background:#F5F8FF;color:#3E526F;font-size:13px;line-height:1.5}
.people-guidance strong{color:#16418A}
.people-guidance-icon{display:grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;background:#DFEAFE;color:#16418A;font-weight:800}
.people-demo-note{margin-left:auto;flex:none;padding:4px 8px;border-radius:5px;color:#865308;background:#FFF1D4;font-size:11px;white-space:nowrap}
#view-people .people-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:22px}
#view-people .people-filter-card{position:relative;min-width:0;min-height:118px;padding:14px 15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;border:1px solid var(--pw-stroke);border-radius:12px;background:#fff;text-align:left;box-shadow:0 1px 3px rgba(20,35,58,.025)}
#view-people .people-filter-card:hover{border-color:#8FACF2}
#view-people .people-filter-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 2px rgba(0,82,255,.12)}
#view-people .people-filter-card.is-selected::before{content:'';position:absolute;left:0;top:13px;bottom:13px;width:3px;background:var(--primary);border-radius:0 4px 4px 0}
#view-people .people-filter-card small{font-size:12px;line-height:1.35;font-weight:700;color:#44536C}
#view-people .people-filter-card .mono{font-size:28px;line-height:1.15;font-weight:650}
#view-people .people-filter-card em{font-style:normal;font-size:10px;line-height:1.4;color:#728198}
#view-people [data-people-filter="confirmed"] .mono{color:#087A4A}
#view-people [data-people-filter="needs_action"] .mono,#view-people [data-people-filter="missing"] .mono{color:#A2610A}
.people-list-panel{background:#fff;border:1px solid var(--pw-stroke);border-radius:15px;overflow:visible;box-shadow:0 3px 14px rgba(20,35,58,.04)}
.people-list-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px 10px}
.people-list-heading h2{font-size:20px;margin:0 0 3px}
.people-list-heading p{font-size:12px;line-height:1.5;color:#65758B;margin:0}
.people-count{background:#F2F5FA;border-radius:6px;padding:6px 11px;font-size:12px;color:#4A5970;white-space:nowrap}
.people-count strong{font:700 16px "JetBrains Mono",monospace;color:#172842}
#view-people .people-toolbar{margin:0;padding:14px 20px 17px;display:flex;flex-wrap:wrap;gap:9px}
#view-people .people-toolbar .search-box{flex:1 1 280px;min-width:200px}
#view-people .people-toolbar .select{flex:0 1 190px;min-width:145px;max-width:100%}
.people-selection-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 20px;background:#F8FAFD;border-top:1px solid var(--pw-stroke);border-bottom:1px solid var(--pw-stroke)}
.people-select-label{display:inline-flex;align-items:center;gap:8px;color:#394D68;font-size:12px;font-weight:700;cursor:pointer}
.people-select-label input,.people-row-check{width:16px;height:16px;accent-color:var(--primary)}
#people-selected-copy{font-size:12px;color:#65758B}
.people-selection-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#view-people .people-selection-actions>.btn{height:36px;min-width:0;padding:0 12px;font-size:12px}
.people-batch-extra{position:relative}
.people-batch-extra summary{list-style:none;border:1px solid #CED9E9;border-radius:7px;background:#fff;padding:7px 11px;font-size:12px;font-weight:700;color:#365787;cursor:pointer}
.people-batch-extra summary::-webkit-details-marker{display:none}
.people-batch-extra summary::after{content:' ▾'}
.people-batch-extra-menu{position:absolute;top:calc(100% + 7px);right:0;z-index:9;width:285px;max-width:80vw;display:flex;flex-direction:column;gap:8px;padding:13px;border:1px solid #CFDCEC;border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(20,35,58,.15)}
.people-batch-extra-menu p{font-size:11px;color:#64748B;margin:0}
#view-people .people-batch-extra-menu .btn{width:100%;height:38px;padding:0 8px;font-size:12px}
#view-people .people-table-wrap{overflow:visible;width:100%}
#view-people .people-table{min-width:0;width:100%;table-layout:fixed;border-collapse:collapse}
#view-people .people-table th{padding:12px;background:#fff;color:#6A7B92;text-align:left;font-size:11px;font-weight:750;border-bottom:1px solid var(--pw-stroke);white-space:normal}
#view-people .people-table th:first-child{width:46px}
#view-people .people-table th:nth-child(2){width:24%}
#view-people .people-table th:nth-child(3){width:22%}
#view-people .people-table th:nth-child(4){width:25%}
#view-people .people-table td{padding:15px 12px;border-bottom:1px solid #EDF1F6;vertical-align:middle;font-size:12px;overflow-wrap:anywhere}
#view-people .people-table tr:last-child td{border-bottom:0}
#view-people .people-table tbody tr:hover{background:#FAFCFF}
#view-people .people-table .check-cell{text-align:center;padding-left:12px;padding-right:2px}
#view-people .people-table .person-cell{display:flex;align-items:center;gap:9px;min-width:0}
#view-people .people-table .person-cell>span:last-child{min-width:0}
#view-people .people-table .person-cell strong{display:block;font-size:13px;line-height:1.5;color:#172842;overflow-wrap:anywhere}
#view-people .people-table .person-cell small{display:block;color:#687B93;font-size:11px;line-height:1.45}
#view-people .people-table .person-cell .people-person-meta{color:#526780;white-space:normal;overflow-wrap:anywhere}
#view-people .people-table .person-cell .people-department{margin-top:5px}
#view-people .people-table .person-cell .people-position{margin-top:2px;color:#405A78}
#view-people .people-table .reporting-manager-cell{display:flex;align-items:flex-start;flex-wrap:wrap;gap:7px;min-width:0}
#view-people .people-table .reporting-manager-cell>span:first-child{min-width:0;flex:1 1 100px}
#view-people .people-table .reporting-manager-cell strong{display:block;max-width:none;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
#view-people .people-table .reporting-manager-cell small{display:block;font-size:11px;color:#687B93;margin-top:3px}
#view-people .people-table .reporting-manager-cell .chip{height:auto;min-height:22px;padding:3px 6px;font-size:10px}
#view-people .people-table .assessor-stack{gap:6px}
#view-people .people-table .assessor-line{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:1px 8px}
#view-people .people-table .assessor-line strong{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
#view-people .people-table .assessor-line span{white-space:normal;font-size:10px}
.people-weight-note{display:block;margin-top:7px;color:#687B93;font-size:11px}
.people-weight-note.invalid{color:#BA303A;font-weight:700}
.people-state-line{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
#view-people .people-state-line .workflow-badge{min-height:24px;height:auto;max-width:100%;white-space:normal;line-height:1.4;padding:4px 8px}
.people-attention-note{font-size:10px;line-height:1.4;color:#9A5C00}
.people-action-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
#view-people .people-action-buttons .people-row-action{height:34px;min-width:0;padding:0 10px;border-radius:7px;font-size:11px;white-space:nowrap}
#view-people .people-action-buttons .people-open-detail{border-color:var(--primary);background:var(--primary);color:white}
#view-people .people-action-buttons .people-open-detail:hover{background:var(--primary-hover)}
#view-people .people-action-buttons .edit-assessor{border-color:#C9D9FC;background:#F4F8FF;color:#16418A}
.people-updated{display:block;font-size:10px;color:#8998AA;margin-top:9px;line-height:1.3}
.people-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:12px 20px;border-top:1px solid var(--pw-stroke);font-size:12px;color:#64748B}
.people-pagination>div{display:flex;gap:7px}
.people-page-btn{min-height:34px;padding:5px 12px;border:1px solid #CCD8EA;border-radius:7px;background:#fff;color:#28548C;font-size:12px;font-weight:700}
.people-page-btn:disabled{opacity:.4;cursor:not-allowed}
.people-page-btn:hover:not(:disabled){background:#F1F6FF;border-color:#8EAFF0}
.people-followup{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:17px;padding:17px 20px;border:1px solid #D5E2FC;border-radius:12px;background:#F5F8FF}
.people-followup>div{display:flex;flex-direction:column;gap:3px}
.people-followup strong{font-size:14px;color:#183C78}
.people-followup span{font-size:12px;color:#516783}
#view-people .people-followup .btn{height:42px;min-width:0;font-size:13px}
#view-people button:focus-visible,#view-people select:focus-visible,#view-people input:focus-visible,#view-people summary:focus-visible{outline:3px solid #7CA8FF;outline-offset:2px}
@media(max-width:1440px){
  #view-people .people-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1350px){
  #view-people .people-table thead{display:none}
  #view-people .people-table tbody{display:grid;gap:10px;padding:14px;background:#F8FAFD}
  #view-people .people-table tbody tr{display:grid;grid-template-columns:26px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"check person person" "check assessor status" "check actions actions";gap:12px 16px;align-items:start;padding:15px;border:1px solid #E0E7F0;border-radius:10px;background:#fff}
  #view-people .people-table tbody tr:hover{background:#fff;border-color:#B8CBEC}
  #view-people .people-table td{display:block;min-width:0;padding:0!important;border:0}
  #view-people .people-cell-check{grid-area:check;padding-top:4px!important}
  #view-people .people-cell-person{grid-area:person}
  #view-people .people-cell-assessor{grid-area:assessor}
  #view-people .people-cell-status{grid-area:status}
  #view-people .people-cell-actions{grid-area:actions;display:flex!important;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px;padding-top:12px!important;border-top:1px solid #EDF1F6!important}
  #view-people .people-cell-assessor::before{content:'ผู้ประเมิน';display:block;margin-bottom:6px;font-size:10px;font-weight:700;color:#77869A}
  #view-people .people-cell-status::before{content:'สถานะ';display:block;margin-bottom:6px;font-size:10px;font-weight:700;color:#77869A}
}
@media(max-width:900px){
  #view-people .people-page-heading{flex-direction:column;align-items:flex-start;gap:13px}
  .people-guidance{flex-wrap:wrap}
  .people-demo-note{margin-left:34px}
  #view-people .people-toolbar .select{flex:1 1 175px}
  .people-selection-actions{margin-left:0;flex:1 1 100%}
}
@media(max-width:620px){
  #view-people .people-page-heading h1{font-size:28px}
  .people-header-action{width:100%}
  #view-people .people-header-action .btn{flex:1 1 100%}
  #view-people .people-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  #view-people .people-filter-card{min-height:105px;padding:12px}
  .people-list-heading{padding:16px 14px 8px}
  .people-list-heading p{font-size:11px}
  #view-people .people-toolbar{padding:10px 14px 13px}
  #view-people .people-toolbar .search-box,#view-people .people-toolbar .select{flex:1 1 100%;width:100%}
  .people-selection-bar{padding:11px 14px}
  #view-people .people-selection-actions>.btn{flex:1 1 100%}
  #view-people .people-table tbody{padding:10px}
  #view-people .people-table tbody tr{grid-template-columns:24px minmax(0,1fr);grid-template-areas:"check person" ". assessor" ". status" ". actions";gap:12px 8px;padding:13px}
  #view-people .people-cell-actions{flex-direction:column;align-items:flex-start}
  #view-people .people-action-buttons{width:100%}
  #view-people .people-action-buttons .people-row-action{flex:1 1 auto}
  .people-followup{flex-direction:column;align-items:flex-start;padding:16px}
  #view-people .people-followup .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){#view-people .people-filter-card{transition:none}}
/* HR high-volume workboard */
#view-people .people-preview-link{font-size:12px;color:#375B8F;border:1px solid transparent;white-space:nowrap}
#view-people .people-preview-link:hover{border-color:#D2DEEE}
#view-people .people-command-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;padding:20px 22px;border-radius:13px;border:1px solid #ABC7FA;background:linear-gradient(110deg,#EAF2FF,#F6F9FF 72%);box-shadow:0 3px 12px rgba(0,82,255,.06)}
.people-command-copy{display:flex;flex-direction:column;gap:3px}
.people-command-copy strong{font-size:17px;font-weight:750;color:#164180}
.people-command-copy span{font-size:12px;color:#556C92}
#view-people .people-command-bar .btn{font-size:14px;min-width:220px;min-height:44px}
.people-triage-panel,.people-manager-panel{border:1px solid #E1E7F0;border-radius:13px;background:#fff;margin-bottom:14px;overflow:hidden}
.people-triage-heading,.people-manager-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px 13px}
.people-triage-heading h2,.people-manager-heading h2{font-size:17px;margin:0 0 3px}
.people-triage-heading p,.people-manager-heading p{font-size:12px;color:#667891;line-height:1.4;margin:0}
#view-people .people-triage-heading .btn{height:37px;min-width:0;padding:0 12px;font-size:12px;white-space:nowrap}
.people-inbox-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 20px;border-top:1px solid #EDF1F6}
.people-inbox-row:hover{background:#FBFCFF}
.people-inbox-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.people-inbox-copy strong{font-size:13px;color:#193454}
.people-inbox-copy small{font-size:12px;color:#394D68;line-height:1.4}
.people-inbox-copy span{font-size:11px;color:#798BA1;line-height:1.4}
.people-inbox-review{flex:none;border:1px solid #F1CF92;border-radius:7px;padding:8px 12px;background:#FFF7E8;color:#996107;font-weight:750;font-size:12px;white-space:nowrap}
.people-inbox-review:hover{background:#FFEBC3}
.people-inbox-empty{margin:0;padding:18px 20px;font-size:13px;color:#6C7D91;background:#FBFCFE}
.people-inbox-more{margin:0;padding:9px 20px;background:#F9FAFC;color:#526982;font-size:12px;border-top:1px solid #EDF1F6}
.people-plain-action{border:0;background:transparent;color:#2359A3;font-size:12px;font-weight:700;padding:7px 8px;white-space:nowrap}
.people-plain-action:hover{text-decoration:underline}
.people-manager-item{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(180px,1fr) minmax(165px,.85fr) auto;align-items:center;gap:18px;padding:13px 20px;border-top:1px solid #EDF1F6}
.people-manager-item:hover{background:#FBFCFF}
.people-manager-identity,.people-manager-progress{display:flex;flex-direction:column;gap:4px;min-width:0}
.people-manager-identity strong{font-size:13px;overflow-wrap:anywhere}
.people-manager-identity small{font-size:11px;color:#697C94}
.people-manager-progress strong{font-size:11px;font-weight:700;color:#3E5470}
.people-manager-track{display:block;height:6px;background:#E7EDF6;border-radius:999px;overflow:hidden}
.people-manager-track>span{display:block;height:100%;border-radius:999px;background:#12A26A}
.people-manager-alerts{display:flex;flex-wrap:wrap;gap:5px}
.people-mini-alert{background:#FFF3DA;color:#945F08;padding:4px 7px;border-radius:5px;font-size:11px;font-weight:700}
.people-mini-alert.muted{background:#FFEDEF;color:#AC303D}
.people-manager-calm{font-size:11px;color:#677990}
.people-manager-filter-btn{border:1px solid #CADAF6;border-radius:7px;padding:7px 11px;background:#F4F8FF;color:#205299;font-size:11px;font-weight:750;white-space:nowrap}
.people-manager-filter-btn:hover{background:#E9F0FF}
.people-prepare-dialog{width:min(630px,100%)}
.people-prepare-dialog h2{font-size:23px;margin-bottom:12px}
.people-prepare-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0}
.people-prepare-detail>div{display:flex;flex-direction:column;gap:7px;align-items:flex-start;padding:15px 12px;border:1px solid #D7E3F8;background:#F9FBFF;border-radius:9px}
.people-prepare-detail strong{font:650 25px "JetBrains Mono",monospace;color:#163F85}
.people-prepare-detail span{font-size:11px;color:#506681;line-height:1.45}
.people-prepare-warning{border:1px solid #F0D9AA;background:#FFF9E9;color:#805A1B;padding:12px 14px;border-radius:8px;font-size:12px;line-height:1.65}
.people-prepare-dialog .modal-actions{flex-wrap:wrap}
.people-case-note{margin-top:12px}
.people-case-confirm{display:flex;align-items:flex-start;gap:9px;margin-top:13px;font-size:12px;color:#3F5169;cursor:pointer}
.people-case-confirm input{accent-color:var(--primary);height:16px;width:16px;flex:none;margin-top:3px}
.people-manager-preview-banner{margin-bottom:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 15px;border:1px solid #E6CD9B;border-left:4px solid #D59729;background:#FFF7E8;color:#755012;border-radius:10px;font-size:13px}
.people-manager-preview-banner strong{white-space:nowrap}
.people-followup-tag{font-size:12px;color:#755012;background:#FFF1D6;padding:6px 9px;border-radius:6px}
@media(max-width:1150px){
 .people-manager-item{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto;gap:10px}
 .people-manager-alerts{grid-column:1/3;grid-row:2}
 .people-manager-filter-btn{grid-column:3;grid-row:1/3}
}
@media(max-width:760px){
 #view-people .people-command-bar{padding:16px;align-items:flex-start}
 #view-people .people-command-bar .btn{width:100%}
 .people-triage-heading,.people-manager-heading{align-items:flex-start;flex-direction:column;gap:9px}
 .people-inbox-row{align-items:flex-start;flex-wrap:wrap;padding:13px 15px}
 .people-inbox-review{margin-left:auto}
 .people-manager-item{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px 15px}
 .people-manager-progress{grid-column:1/3;grid-row:2}
 .people-manager-alerts{grid-column:1;grid-row:3}
 .people-manager-filter-btn{grid-column:2;grid-row:3}
 .people-prepare-detail{grid-template-columns:repeat(3,minmax(0,1fr))}
 #view-people .people-preview-link{white-space:normal}
}
@media(max-width:430px){
 .people-prepare-detail{grid-template-columns:1fr}
 .people-prepare-detail>div{flex-direction:row;align-items:center}
 .people-prepare-detail strong{font-size:21px;min-width:47px}
}

/* Assignment-only HR workspace. No workflow inbox or progress dashboard. */
#view-people.assignment-workspace .people-page-heading{margin-bottom:22px;align-items:center}
#view-people.assignment-workspace .people-page-heading h1{font-size:32px;margin-bottom:4px}
#view-people.assignment-workspace .people-page-heading .page-heading-help{font-size:13px;line-height:1.55;color:#61738C}
#view-people.assignment-workspace .people-page-heading>.btn{height:40px;min-width:0;font-size:12px;white-space:nowrap}
#view-people.assignment-workspace .people-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
#view-people.assignment-workspace .people-filter-card{min-height:106px;padding:14px 18px;box-shadow:none;border:1px solid #DCE5F1}
#view-people.assignment-workspace .people-filter-card small{font-size:13px;color:#435771}
#view-people.assignment-workspace .people-filter-card .mono{font-size:29px}
#view-people.assignment-workspace [data-people-filter="assigned"] .mono{color:#078054}
#view-people.assignment-workspace [data-people-filter="needs_fix"] .mono{color:#C07619}
#view-people.assignment-workspace .people-list-panel{box-shadow:0 2px 6px rgba(25,44,78,.025);border-radius:12px}
#view-people.assignment-workspace .people-list-heading{padding-top:17px}
#view-people.assignment-workspace .people-list-heading h2{font-size:19px}
#view-people.assignment-workspace .people-toolbar{padding-top:12px;padding-bottom:13px}
#view-people.assignment-workspace .people-toolbar .select{flex:0 1 190px;cursor:pointer;background-color:#fff}
#view-people.assignment-workspace .people-selection-bar{gap:10px;background:#F9FBFE;min-height:56px}
.people-select-filtered{background:transparent;border:0;padding:6px 4px;color:#1C54B9;font-size:12px;font-weight:700}
.people-select-filtered:hover:not(:disabled){text-decoration:underline}
.people-select-filtered.is-selected{color:#B33A3A}
.people-select-filtered:disabled{opacity:.45;cursor:not-allowed}
#view-people.assignment-workspace #people-clear-selection{color:#6F8096}
#view-people.assignment-workspace #people-clear-selection:disabled{opacity:.4;cursor:not-allowed}
#view-people.assignment-workspace .people-selection-actions{margin-left:auto}
#view-people.assignment-workspace .people-selection-actions .btn{height:37px}
#view-people.assignment-workspace .people-table th:nth-child(2){width:38%}
#view-people.assignment-workspace .people-table th:nth-child(3){width:30%}
#view-people.assignment-workspace .people-table th:nth-child(4){width:12%}
#view-people.assignment-workspace .people-table th:nth-child(5){width:20%}
#view-people.assignment-workspace .people-table td{padding-top:17px;padding-bottom:17px}
#view-people.assignment-workspace .people-cell-assessor{vertical-align:middle}
#view-people.assignment-workspace .people-cell-status{vertical-align:middle}
#view-people.assignment-workspace .people-cell-actions{display:table-cell;vertical-align:middle;padding:14px 16px}
#view-people.assignment-workspace .people-cell-actions .people-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
#view-people.assignment-workspace .people-cell-actions .people-row-action{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:1px solid #BED1F5;border-radius:7px;background:#F5F8FF;color:#2054AA;font-weight:750;font-size:11px}
#view-people.assignment-workspace .people-row-needs-fix .people-cell-actions .people-row-action{background:#0758F5;border-color:#0758F5;color:white}
#view-people.assignment-workspace .people-row-needs-fix .people-cell-actions .people-row-action:hover{background:#0349CE}
#view-people.assignment-workspace .people-row-needs-fix{background:#FFFDF9}
#view-people.assignment-workspace .people-row-needs-fix:hover{background:#FFFBF3}
.people-validity{display:inline-flex;align-items:center;max-width:100%;padding:5px 8px;border-radius:6px;font-size:11px;font-weight:750;line-height:1.3}
.people-validity.valid{background:#E5F6EC;color:#067548}
.people-validity.invalid{background:#FFF0D8;color:#9B6110}
#view-people.assignment-workspace .people-assessor-cell{display:flex;flex-direction:column;gap:6px;min-width:0}
#view-people.assignment-workspace .people-empty-assessor{color:#97A4B5;font-size:14px}
#view-people.assignment-workspace .people-assessor-person{display:flex;align-items:baseline;justify-content:flex-start;flex-wrap:wrap;gap:2px 7px;min-width:0}
#view-people.assignment-workspace .people-assessor-person strong{font-size:12px;line-height:1.45;color:#172842;overflow-wrap:anywhere}
#view-people.assignment-workspace .people-assessor-person small{font:500 10px "JetBrains Mono",monospace;color:#657891;white-space:nowrap}
#view-people.assignment-workspace .people-assessor-source{font-size:10px;line-height:1.45;color:#74859A}
#view-people.assignment-workspace .people-action-done{color:#97A4B5}
.people-bulk-modal{width:min(680px,calc(100vw - 32px));max-width:100%}
.people-bulk-modal h2{margin-bottom:6px;font-size:23px}
.people-bulk-modal .modal-subline{font-size:13px;margin-bottom:17px}
.people-bulk-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:17px}
.people-bulk-action-grid button{min-height:70px;padding:11px 12px;border:1px solid #D5DFEC;border-radius:9px;background:#fff;text-align:left;cursor:pointer}
.people-bulk-action-grid button:hover:not(:disabled){border-color:#8FACF2;background:#F8FBFF}
.people-bulk-action-grid button.selected{border-color:#0758F5;background:#EEF4FF;box-shadow:0 0 0 2px rgba(7,88,245,.1)}
.people-bulk-action-grid button:disabled{opacity:.42;cursor:not-allowed}
.people-bulk-action-grid strong{display:block;font-size:12px;color:#1E334F;line-height:1.4}
.people-bulk-action-grid span{display:block;margin-top:5px;font-size:11px;color:#718198}
.people-bulk-mode-panel[hidden]{display:none}
.people-bulk-simple-copy{padding:17px 18px;border:1px solid #DCE7F8;border-radius:10px;background:#F7FAFF}
.people-bulk-simple-copy strong{display:block;font-size:15px;color:#183B70;margin-bottom:4px}
.people-bulk-simple-copy span{display:block;font-size:12px;line-height:1.55;color:#617389}
.people-bulk-scope-field{margin:0 0 17px}
.people-bulk-scope-field>span{font-size:12px}
.people-bulk-scope-field .select{width:100%;height:44px;min-height:44px}
.people-bulk-assessor-editor{padding:15px;border:1px solid #DFE7F2;border-radius:10px;background:#FBFCFE}
.people-bulk-assessor-editor .assessor-list-head{padding-top:0}
.people-bulk-assessor-editor .assessor-add-btn{margin-top:9px}
.people-bulk-assessor-editor .assessor-total-row{margin-top:13px}
.people-bulk-result{margin:15px 0 9px;padding:14px 15px;border:1px solid #DCE7F8;border-radius:10px;background:#F7FAFF}
.people-bulk-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.people-bulk-stats span{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#516783}
.people-bulk-stats strong{font:650 22px "JetBrains Mono",monospace;color:#1A355E}
.people-bulk-error,.people-bulk-ok{margin:13px 0 0;padding-top:11px;border-top:1px solid #DDE8F7;font-size:12px;line-height:1.6}
.people-bulk-error{color:#A43A2A}.people-bulk-ok{color:#087548}
.people-bulk-footnote{margin:0 0 17px;color:#617389;font-size:12px;line-height:1.6}
.people-bulk-modal .modal-actions{flex-wrap:wrap}
@media(max-width:1300px){
 #view-people.assignment-workspace .people-row-actions{gap:6px}
}
@media(max-width:800px){
 #view-people.assignment-workspace .people-page-heading{align-items:flex-start;flex-direction:column}
 #view-people.assignment-workspace .people-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
 #view-people.assignment-workspace .people-toolbar .select{flex:1 1 150px}
}
@media(max-width:600px){
 #view-people.assignment-workspace .people-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 #view-people.assignment-workspace .people-filter-card{padding:12px 10px;min-height:104px}
 #view-people.assignment-workspace .people-filter-card small{font-size:11px}
 #view-people.assignment-workspace .people-filter-card .mono{font-size:24px}
 #view-people.assignment-workspace .people-filter-card em{font-size:9px}
 #view-people.assignment-workspace .people-selection-actions{width:100%;margin-left:0}
 #view-people.assignment-workspace .people-selection-actions>.btn{width:100%}
 .people-bulk-action-grid{grid-template-columns:1fr}
 .people-bulk-assessor-editor .assessor-list-head,.people-bulk-assessor-editor .assessor-editor-row{grid-template-columns:minmax(0,1fr) 92px 36px}
}

/* Step 05: HR exception inbox — read, route, resolve at source */
#view-exceptions.hr-review-workspace{--rv-border:#E1E7F0;--rv-muted:#64758B;--rv-ink:#162B48;color:var(--rv-ink)}
#view-exceptions .hr-review-heading{margin-bottom:20px}
#view-exceptions .hr-review-heading h1{font-size:32px;letter-spacing:-.025em;margin-bottom:4px}
#view-exceptions .hr-review-heading .page-heading-help{font-size:13px;max-width:760px;color:var(--rv-muted)}
.hr-review-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:20px}
#view-exceptions .exception-filter-card{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;min-width:0;min-height:107px;padding:15px 16px;text-align:left;background:#fff;border:1px solid var(--rv-border);border-radius:11px;box-shadow:none;color:var(--rv-ink)}
#view-exceptions .exception-filter-card:hover{border-color:#9DB9EE}
#view-exceptions .exception-filter-card.is-selected{border-color:#0052FF;box-shadow:0 0 0 2px rgba(0,82,255,.1)}
#view-exceptions .exception-filter-card.is-selected::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 4px 4px 0;background:#0052FF}
#view-exceptions .exception-filter-card small{font-size:12px;line-height:1.35;font-weight:750;color:#455973}
#view-exceptions .exception-filter-card strong.mono{font-size:27px;font-weight:650;line-height:1.15;color:#1C3B72}
#view-exceptions .exception-filter-card[data-exception-filter="roster"] strong.mono{color:#A2640B}
#view-exceptions .exception-filter-card em{font-style:normal;font-size:10px;color:#74849B;line-height:1.3}
.hr-review-list-panel{background:#fff;border:1px solid var(--rv-border);border-radius:13px;overflow:hidden}
.hr-review-list-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px 10px}
.hr-review-list-heading h2{font-size:19px;margin:0 0 2px}
.hr-review-list-heading p{font-size:12px;color:var(--rv-muted);margin:0;line-height:1.45}
.hr-review-count{flex:none;display:inline-flex;gap:5px;align-items:center;padding:7px 10px;border-radius:7px;background:#F1F5FA;color:#4D6079;font-size:12px;white-space:nowrap}
.hr-review-count strong{font:700 16px "JetBrains Mono",monospace;color:var(--rv-ink)}
#view-exceptions .hr-review-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:0;padding:12px 20px 17px}
#view-exceptions .hr-review-toolbar .search-box{flex:1 1 290px;min-width:190px}
#view-exceptions .hr-review-toolbar .select{flex:0 1 215px;min-width:170px;max-width:100%}
.hr-review-table-wrap{width:100%;overflow:visible}
#view-exceptions .hr-review-table{min-width:0;width:100%;border-collapse:collapse;table-layout:fixed}
#view-exceptions .hr-review-table th{text-align:left;padding:12px 16px;background:#FAFBFD;font-size:11px;font-weight:700;color:#71829A;border-top:1px solid var(--rv-border);border-bottom:1px solid var(--rv-border)}
#view-exceptions .hr-review-table th:nth-child(1){width:22%}
#view-exceptions .hr-review-table th:nth-child(2){width:26%}
#view-exceptions .hr-review-table th:nth-child(3){width:35%}
#view-exceptions .hr-review-table th:nth-child(4){width:17%}
#view-exceptions .hr-review-table td{vertical-align:middle;padding:16px;border-bottom:1px solid #ECF0F5;overflow-wrap:anywhere;font-size:12px}
#view-exceptions .hr-review-table tr:last-child td{border-bottom:0}
#view-exceptions .hr-review-table tbody tr:hover{background:#FBFCFF}
#view-exceptions .hr-review-table .hr-review-needs-fix{background:#FFFEFB}
.hr-review-source-label{display:inline-flex;align-items:center;max-width:100%;padding:5px 8px;border-radius:6px;background:#EEF3FA;color:#375679;font-size:11px;font-weight:750;line-height:1.4}
.hr-review-source-label.eligibility{background:#FFF3DF;color:#955B0B}
.hr-review-source-label.assessor{background:#FEEEF0;color:#AC3540}
.hr-review-source-label.reporting{background:#EEEFFF;color:#4E52A1}
.hr-review-source-label.roster{background:#ECF2FF;color:#2152A5}
.hr-review-source small{display:block;margin-top:6px;font-size:10px;line-height:1.45;color:#73839A}
.hr-review-subject strong{display:block;font-size:13px;line-height:1.5;color:#1B304C}
.hr-review-subject small{display:block;font-size:10px;line-height:1.4;color:#8290A4;margin-top:4px}
.hr-review-priority{display:inline-flex;align-items:center;border-radius:5px;padding:4px 8px;font-size:10px;font-weight:750}
.hr-review-priority.fix{background:#FFF0DB;color:#986011}
.hr-review-priority.review{background:#EAF2FF;color:#2055A6}
.hr-review-priority.done{background:#E6F6EB;color:#107149}
.hr-review-description p{font-size:12px;color:#43536C;line-height:1.55;margin:8px 0 0}
.hr-review-resolution{display:block;font-size:11px;font-weight:700;color:#098153;margin-top:6px}
#view-exceptions .exception-open-btn{min-height:36px;height:auto;padding:7px 10px;white-space:normal;border-radius:7px;display:inline-flex;align-items:center;gap:7px;justify-content:center;background:#F3F7FF;border:1px solid #BDD2FA;color:#2058B4;font-size:11px;line-height:1.35}
#view-exceptions .exception-open-btn:hover{background:#E8F0FF;border-color:#81A6EE}
.hr-review-done{color:#168158;font-weight:750;font-size:12px}
.hr-review-pagination{padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--rv-border);font-size:12px;color:#6E7E94}
.hr-review-pagination>div{display:flex;gap:7px}
.hr-review-page-btn{border:1px solid #D0DAE8;background:#fff;color:#235797;min-height:34px;padding:5px 12px;border-radius:7px;font-size:12px;font-weight:700}
.hr-review-page-btn:hover:not(:disabled){border-color:#87AAF0;background:#F4F8FF}
.hr-review-page-btn:disabled{opacity:.4;cursor:not-allowed}
#view-exceptions .table-empty{padding:32px 20px;text-align:center;font-size:13px;color:#718096}
.hr-review-footnote{margin:13px 3px 0;color:#75849B;font-size:11px;line-height:1.6}
#view-exceptions button:focus-visible,#view-exceptions select:focus-visible,#view-exceptions input:focus-visible{outline:3px solid #8CB2FF;outline-offset:2px}
@media(max-width:1300px){
 .hr-review-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1060px){
 #view-exceptions .hr-review-table thead{display:none}
 #view-exceptions .hr-review-table tbody{display:grid;gap:10px;padding:13px;background:#F8FAFD}
 #view-exceptions .hr-review-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"subject source" "description description" "action action";gap:11px 15px;padding:15px;border-radius:10px;border:1px solid #DFE7F1;background:#fff}
 #view-exceptions .hr-review-table tbody tr:hover{background:#fff}
 #view-exceptions .hr-review-table td{min-width:0;padding:0!important;border:0;display:block}
 #view-exceptions .hr-review-source{grid-area:source}
 #view-exceptions .hr-review-subject{grid-area:subject}
 #view-exceptions .hr-review-description{grid-area:description}
 #view-exceptions .hr-review-action{grid-area:action;padding-top:10px!important;border-top:1px solid #EDF1F6!important}
}
@media(max-width:660px){
 .hr-review-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 #view-exceptions .exception-filter-card{min-height:100px;padding:12px}
 #view-exceptions .hr-review-toolbar{padding:12px 14px}
 #view-exceptions .hr-review-toolbar .search-box,#view-exceptions .hr-review-toolbar .select{width:100%;flex:1 1 100%}
 #view-exceptions .hr-review-list-heading{padding:16px 14px 8px}
 #view-exceptions .hr-review-list-heading h2{font-size:17px}
 #view-exceptions .hr-review-table tbody{padding:10px}
 #view-exceptions .hr-review-table tbody tr{grid-template-columns:minmax(0,1fr);grid-template-areas:"subject" "source" "description" "action"}
 #view-exceptions .hr-review-action .exception-open-btn{width:100%}
}

/* 06 · HR KPI Release Gate: high-volume, validation-first */
#view-release.kpi-release-workspace{--kr-stroke:#DFE7F1;--kr-muted:#64758B;color:#152942}
#view-release .kpi-page-heading{margin-bottom:17px}
#view-release .kpi-page-heading h1{font-size:33px;letter-spacing:-.03em;margin-bottom:4px}
#view-release .kpi-page-heading .page-heading-help{max-width:850px;line-height:1.6;font-size:13px;color:#61738B}
.kpi-gate-note{display:flex;align-items:flex-start;gap:10px;border:1px solid #C7DAFC;border-left:4px solid #0052FF;background:#F5F9FF;border-radius:10px;padding:12px 15px;font-size:12px;line-height:1.5;color:#38547D;margin-bottom:19px}
.kpi-gate-icon{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#DEEAFF;color:#2357AD;font-size:14px;font-weight:800}
.kpi-release-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
#view-release .kpi-metric{position:relative;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:5px;min-height:115px;min-width:0;padding:16px;background:#fff;border:1px solid var(--kr-stroke);border-radius:11px;text-align:left}
#view-release .kpi-metric:hover{border-color:#A0BEF4}
#view-release .kpi-metric.selected{border-color:#0052FF;box-shadow:0 0 0 2px rgba(0,82,255,.12)}
#view-release .kpi-metric.selected::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;background:#0052FF;border-radius:0 4px 4px 0}
#view-release .kpi-metric small{font-size:12px;font-weight:750;color:#445873;line-height:1.35}
#view-release .kpi-metric strong.mono{font-size:29px;font-weight:650;line-height:1.15;color:#183C79}
#view-release [data-kpi-filter="ready"] strong.mono{color:#087A50}
#view-release [data-kpi-filter="blocked"] strong.mono{color:#BD6712}
#view-release [data-kpi-filter="released"] strong.mono{color:#367A56}
#view-release .kpi-metric em{font-style:normal;color:#7C8BA0;font-size:10px;line-height:1.4}
.kpi-release-command{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:19px;padding:18px 20px;border:1px solid #BCD1FA;border-radius:12px;background:linear-gradient(110deg,#EAF2FF,#F7FAFF 82%)}
.kpi-release-command>div{display:flex;flex-direction:column;gap:5px}
.kpi-release-command strong{font-size:16px;color:#174382}
.kpi-release-command span{font-size:12px;color:#556F93;line-height:1.55}
#view-release .kpi-release-command .btn{height:43px;min-width:230px;font-size:13px}
.kpi-list-panel{background:#fff;border:1px solid var(--kr-stroke);border-radius:13px;overflow:hidden}
.kpi-list-heading{padding:19px 20px 11px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.kpi-list-heading h2{font-size:19px;margin:0 0 3px}
.kpi-list-heading p{font-size:12px;margin:0;color:#6C7F96;line-height:1.5}
.kpi-list-count{background:#F2F5FA;color:#4E6079;border-radius:7px;padding:8px 11px;font-size:12px;white-space:nowrap}
#view-release .kpi-toolbar{display:flex;flex-wrap:wrap;gap:9px;padding:12px 20px 16px;margin:0;border:0}
#view-release .kpi-toolbar .search-box{flex:1 1 255px;min-width:180px}
#view-release .kpi-toolbar .select{flex:0 1 185px;min-width:155px;max-width:100%}
.kpi-selection-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--kr-stroke);border-bottom:1px solid var(--kr-stroke);background:#F8FAFD}
.kpi-selection-bar label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap;font-size:12px;color:#455A75;font-weight:700}
.kpi-selection-bar input,.kpi-release-ack input{width:16px;height:16px;accent-color:#0052FF}
.kpi-text-action{border:0;background:none;color:#2259A7;font-size:12px;font-weight:750;padding:4px}
.kpi-text-action:hover:not(:disabled){text-decoration:underline}
.kpi-text-action.is-selected{color:#B33A3A}
.kpi-text-action:disabled{opacity:.45}
#view-release #selection-copy{margin-left:auto;font-size:12px;color:#667B94}
.kpi-table-wrap{width:100%;overflow:visible}
#view-release .kpi-table{table-layout:fixed;width:100%;min-width:0;border-collapse:collapse}
#view-release .kpi-table th{padding:12px;font-size:11px;font-weight:750;color:#718399;text-align:left;background:#FAFBFD;border-bottom:1px solid var(--kr-stroke);white-space:normal}
#view-release .kpi-table th:first-child{width:47px}
#view-release .kpi-table th:nth-child(2){width:24%}
#view-release .kpi-table th:nth-child(3){width:22%}
#view-release .kpi-table th:nth-child(4){width:15%}
#view-release .kpi-table th:nth-child(5){width:16%}
#view-release .kpi-table td{padding:15px 12px;vertical-align:middle;border-bottom:1px solid #EDF1F6;font-size:12px;overflow-wrap:anywhere}
#view-release .kpi-table tbody tr:last-child td{border-bottom:0}
#view-release .kpi-table tbody tr:hover{background:#FAFCFF}
#view-release .kpi-table td.check-cell{padding-left:16px}
#view-release .kpi-table .kpi-row-check{width:16px;height:16px;accent-color:#0052FF}
#view-release .kpi-table .kpi-row-check:disabled{opacity:.35}
.kpi-person strong,.kpi-count strong{display:block;line-height:1.5;color:#1A2B42;font-size:13px}
.kpi-person small,.kpi-count small{display:block;line-height:1.45;color:#7989A0;font-size:11px;margin-top:4px}
.kpi-assessor-name{font-weight:700;font-size:12px;line-height:1.4;color:#31445F;margin-bottom:4px}
.kpi-assessor-name small{display:block;color:#8793A4;font-size:11px;font-weight:400}
.kpi-muted{font-size:12px;color:#8190A6;line-height:1.5}
.kpi-count .kpi-weight-error{color:#BD4C3C;font-weight:750}
.kpi-self{font-size:12px;color:#394C65}
.kpi-status-action{min-width:0}
.kpi-state{display:inline-flex;align-items:center;min-height:24px;max-width:100%;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:750;line-height:1.4}
.kpi-state.ready{background:#E6F7EC;color:#0B764D}
.kpi-state.waiting{background:#EDF2F8;color:#5B6D83}
.kpi-state.blocked{background:#FFF0D9;color:#A26A0B}
.kpi-state.held{background:#FFF0E7;color:#AC5440}
.kpi-state.released{background:#EAF0FF;color:#2856A0}
#view-release .kpi-details-button{display:flex;align-items:center;gap:7px;background:transparent;border:0;padding:8px 0 0;font-weight:750;font-size:11px;color:#2055A4;text-align:left;white-space:normal}
#view-release .kpi-details-button:hover{text-decoration:underline}
.kpi-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--kr-stroke);font-size:12px;color:#6A7C95}
.kpi-pagination>div{display:flex;gap:7px}
.kpi-pagination button{height:34px;border:1px solid #CAD7E7;border-radius:7px;padding:0 12px;background:#fff;color:#255692;font-size:12px;font-weight:700}
.kpi-pagination button:disabled{opacity:.4;cursor:not-allowed}
.kpi-pagination button:hover:not(:disabled){background:#F1F6FF}
.kpi-screen-footnote{font-size:11px;line-height:1.6;color:#71829A;margin:13px 2px 0}
.kpi-release-dialog{width:min(570px,100%)}
.kpi-release-dialog .modal-subline{font-size:12px;line-height:1.6}
.kpi-release-dialog .release-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
.kpi-release-dialog .release-summary>div{background:#F8FAFE;border:1px solid #DCE7F6;border-radius:9px;padding:13px}
.kpi-release-dialog .release-summary strong{font-size:26px;color:#183B75}
.kpi-modal-excluded{font-size:12px;color:#805C18;line-height:1.5}
.kpi-release-ack{margin-top:15px;display:flex;align-items:flex-start;gap:9px;font-size:12px;color:#405674;line-height:1.5;cursor:pointer}
.kpi-release-ack input{flex:none;margin-top:3px}
.kpi-detail-dialog{width:min(660px,100%);max-height:90vh;overflow-y:auto}
.kpi-detail-dialog .modal-subline{line-height:1.6;font-size:12px}
.kpi-detail-checks{padding:14px 16px;border:1px solid #DDE7F7;border-radius:9px;background:#F6F9FF;margin:15px 0}
.kpi-detail-checks>strong{font-size:13px;color:#163B7C}
.kpi-detail-checks ul{padding-left:20px;margin:9px 0 0;color:#4D5F7A;font-size:12px;line-height:1.65}
.kpi-detail-items{margin:17px 0}
.kpi-detail-items h3{font-size:14px;margin:0 0 10px}
.kpi-item-row{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #EBEFF6}
.kpi-item-row>span{flex:none;font:650 12px "JetBrains Mono",monospace;color:#7790B2}
.kpi-item-row>div{min-width:0;flex:1}
.kpi-item-row strong{display:block;font-size:13px;line-height:1.5}
.kpi-item-row small{display:block;font-size:11px;color:#6A7A91;line-height:1.6;margin-top:4px}
.kpi-item-row>b{flex:none;font:700 13px "JetBrains Mono",monospace}
.kpi-detail-actions .modal-field span{font-size:12px}
.kpi-detail-actions textarea{width:100%;min-height:76px}
#view-release button:focus-visible,#view-release input:focus-visible,#view-release select:focus-visible{outline:3px solid #80A9F8;outline-offset:2px}
@media(max-width:1380px){.kpi-release-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1120px){
 #view-release .kpi-table thead{display:none}
 #view-release .kpi-table tbody{display:grid;gap:10px;padding:13px;background:#F8FAFD}
 #view-release .kpi-table tbody tr{display:grid;grid-template-columns:25px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"check person person" "check manager kpis" "check self status";gap:13px 15px;align-items:start;border:1px solid #DDE7F2;border-radius:10px;background:#fff;padding:14px}
 #view-release .kpi-table tbody tr:hover{background:#fff}
 #view-release .kpi-table td{display:block;min-width:0;padding:0!important;border:0}
 #view-release .kpi-table td.check-cell{grid-area:check}
 #view-release .kpi-person{grid-area:person}
 #view-release .kpi-manager{grid-area:manager}
 #view-release .kpi-count{grid-area:kpis}
 #view-release .kpi-self{grid-area:self}
 #view-release .kpi-status-action{grid-area:status}
}
@media(max-width:760px){
 .kpi-release-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kpi-release-command{align-items:stretch;flex-direction:column}
 #view-release .kpi-release-command .btn{min-width:0;width:100%}
 #view-release .kpi-toolbar .search-box,#view-release .kpi-toolbar .select{width:100%;flex:1 1 100%}
 #view-release #selection-copy{margin-left:0}
 .kpi-list-heading{padding:16px 14px 9px}
 .kpi-selection-bar{padding:11px 14px}
 #view-release .kpi-table tbody{padding:10px}
 #view-release .kpi-table tbody tr{grid-template-columns:22px minmax(0,1fr);grid-template-areas:"check person" ". manager" ". kpis" ". self" ". status";gap:10px}
 .kpi-status-action{border-top:1px solid #E9EEF6!important;padding-top:10px!important}
}

/* KPI RELEASE REFINEMENT · distinct status hierarchy + manager-task preview */
#view-release.kpi-release-workspace{
  --kpi-navy:#112b56;--kpi-blue:#0052ff;--kpi-amber:#ae600b;--kpi-red:#ac3d25;
  --kpi-green:#147b51;
}
#view-release .kpi-page-heading{align-items:center;gap:18px}
#view-release .kpi-page-heading h1{font-size:34px;letter-spacing:-.035em}
#view-release .kpi-page-heading .page-heading-help{max-width:580px}
#view-release .kpi-header-preview{flex:none;min-width:0;height:39px;padding:0 14px;font-size:12px;border-color:#B7C9E5;color:#22519A;background:#F7FAFF}
#view-release .kpi-gate-note{width:fit-content;max-width:100%;border:0;border-radius:8px;border-left:3px solid #B5C7DE;background:#EAF0F8;margin-bottom:19px;padding:9px 13px;color:#47607E;font-size:11px}
#view-release .kpi-gate-icon{display:none}
#view-release .kpi-release-metrics{gap:12px}
#view-release .kpi-metric{border:1px solid #E1E9F3;border-radius:12px;box-shadow:0 4px 13px rgba(23,49,89,.04);background:#FFFFFF;min-height:124px}
#view-release .kpi-metric strong.mono{font-size:31px;letter-spacing:-.04em}
#view-release .kpi-metric em{font-size:11px}
#view-release .kpi-metric[data-kpi-filter="ready"]{background:#EDF3FF;border-color:#B7CCFF}
#view-release .kpi-metric[data-kpi-filter="ready"] strong.mono{color:#0641B4}
#view-release .kpi-metric[data-kpi-filter="waiting"]{background:#FFF4E1;border-color:#F2D39E}
#view-release .kpi-metric[data-kpi-filter="waiting"] strong.mono{color:#A45A06}
#view-release .kpi-metric[data-kpi-filter="waiting"] small{color:#83510E}
#view-release .kpi-metric[data-kpi-filter="blocked"]{background:#FFF0EA;border-color:#F0C6B8}
#view-release .kpi-metric[data-kpi-filter="blocked"] strong.mono{color:#AA3822}
#view-release .kpi-metric[data-kpi-filter="blocked"] small{color:#97412C}
#view-release .kpi-metric[data-kpi-filter="released"]{background:#E9F8F0;border-color:#AFE1C4}
#view-release .kpi-metric[data-kpi-filter="released"] strong.mono{color:#147B51}
#view-release .kpi-metric[data-kpi-filter="released"] small{color:#176441}
#view-release .kpi-release-command{background:#163A79;color:#fff;border-color:#17376D;box-shadow:0 8px 24px rgba(19,53,107,.15);padding:19px 22px;border-radius:13px}
#view-release .kpi-release-command strong{color:#fff;font-size:17px}
#view-release .kpi-release-command span{color:#C0D6F8;font-size:12px}
#view-release .kpi-release-command .btn{background:#fff!important;border-color:#fff!important;color:#124190!important;font-size:13px;font-weight:750}
#view-release .kpi-release-command .btn:disabled{opacity:.54}
#view-release .kpi-list-panel{border-radius:12px;box-shadow:0 5px 17px rgba(23,49,89,.035)}
#view-release .kpi-table tbody tr.waiting{background:#FFFCF6}
#view-release .kpi-table tbody tr.blocked{background:#FFF9F7}
#view-release .kpi-table tbody tr.ready{background:#F9FBFF}
#view-release .kpi-table .kpi-status-action{padding-left:15px}
#view-release .kpi-state{font-size:11px;font-weight:800;letter-spacing:0;padding:6px 9px;border-radius:6px}
#view-release .kpi-state.ready{background:#E5EEFF;color:#104BAE}
#view-release .kpi-state.waiting{background:#FFDFAC;color:#925005}
#view-release .kpi-state.blocked{background:#FFE0D7;color:#9F3621}
#view-release .kpi-state.released{background:#D9F5E5;color:#10663E}
#view-release .kpi-details-button{color:#1551BC}

/* Decision sheet: clear hero, compact evidence, action anchored at bottom */
.kpi-detail-dialog{width:min(800px,calc(100vw - 26px));max-height:min(92vh,950px);overflow:hidden;padding:0;border:0;border-radius:17px;display:flex;flex-direction:column;background:#F7F9FD}
.kpi-detail-dialog .kpi-detail-hero{position:relative;flex:none;padding:23px 30px 25px;color:#fff;background:radial-gradient(circle at 98% -20%,rgba(56,132,255,.45),transparent 45%),linear-gradient(115deg,#0E2B5A,#17478D)}
.kpi-detail-hero-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}
.kpi-detail-overline{font-size:10px;font-weight:800;letter-spacing:.1em;color:#ACCAFF}
.kpi-detail-preview-link{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.31);border-radius:8px;color:#fff;padding:7px 10px;font-size:11px;font-weight:750}
.kpi-detail-preview-link:hover{background:rgba(255,255,255,.18)}
.kpi-detail-hero h2{margin:0;color:#fff;font-size:29px;line-height:1.2;letter-spacing:-.025em}
.kpi-detail-hero>p{margin:7px 0 20px;color:#BDCEE9;font-size:12px;line-height:1.55}
.kpi-detail-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kpi-detail-status{font-size:12px;font-weight:800;border-radius:6px;padding:7px 11px;background:rgba(255,255,255,.16);color:#fff}
.kpi-detail-status.ready{background:#D9E7FF;color:#154CA1}
.kpi-detail-status.waiting{background:#FFE2AA;color:#875008}
.kpi-detail-status.blocked,.kpi-detail-status.held{background:#FFE0D5;color:#9D3826}
.kpi-detail-status.released{background:#D9F5E6;color:#126F46}
#kpi-detail-manager{font-size:11px;color:#D5E2F8;line-height:1.5}
.kpi-detail-body{overflow-y:auto;padding:22px 30px 16px;min-height:0}
.kpi-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 0 17px}
.kpi-detail-stats>div{display:flex;flex-direction:column;gap:7px;padding:14px 16px;border-radius:10px;border:1px solid #DFE6F2;background:#fff;box-shadow:0 2px 5px rgba(25,47,85,.02)}
.kpi-detail-stats small{font-size:11px;color:#61758D;font-weight:700}
.kpi-detail-stats strong{font:750 22px "IBM Plex Sans Thai",sans-serif;color:#172F54;line-height:1.25}
.kpi-detail-stats strong span{font-size:12px;font-weight:500;color:#7C8CA1}
.kpi-detail-stats strong.pass{color:#15784C}
.kpi-detail-stats strong.fail{color:#AE4A2D}
.kpi-detail-dialog .kpi-detail-checks{border:1px solid #CEDCF1;border-left:4px solid #2258B1;margin:0 0 22px;padding:13px 17px;border-radius:8px;background:#EDF3FF}
.kpi-detail-dialog .kpi-detail-checks strong{color:#164990;font-size:13px}
.kpi-detail-dialog .kpi-detail-checks.waiting{background:#FFF1D8;border-color:#EFD29C;border-left-color:#D88A1F}
.kpi-detail-dialog .kpi-detail-checks.waiting strong{color:#855214}
.kpi-detail-dialog .kpi-detail-checks.blocked,.kpi-detail-dialog .kpi-detail-checks.held{background:#FFF0EB;border-color:#F0C7B9;border-left-color:#C65A39}
.kpi-detail-dialog .kpi-detail-checks.blocked strong,.kpi-detail-dialog .kpi-detail-checks.held strong{color:#933A26}
.kpi-detail-dialog .kpi-detail-checks.released{background:#EAF8F0;border-color:#B7E1C9;border-left-color:#15925F}
.kpi-detail-dialog .kpi-detail-checks.released strong{color:#126B45}
.kpi-detail-dialog .kpi-detail-checks ul{margin:9px 0 0;padding-left:20px;color:#495F7D;line-height:1.65}
.kpi-detail-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}
.kpi-detail-section-title h3{margin:0;font-size:16px;color:#192E4D}
.kpi-detail-section-title span{color:#7589A3;font-size:12px}
.kpi-detail-dialog .kpi-item-row{align-items:flex-start;gap:15px;background:#fff;border:1px solid #E0E8F4;border-radius:10px;padding:17px;margin-bottom:9px}
.kpi-detail-dialog .kpi-item-index{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#EAF1FF;color:#1A54B8;font-weight:800;font-size:11px}
.kpi-detail-dialog .kpi-item-content{min-width:0;flex:1}
.kpi-detail-dialog .kpi-item-content strong{font-size:13px;line-height:1.45}
.kpi-detail-dialog .kpi-item-content small{font-size:12px;color:#60718A;line-height:1.5}
.kpi-target-line{margin-top:9px;line-height:1.55;font-size:12px;color:#3E516D;overflow-wrap:anywhere}
.kpi-target-line span{display:inline-block;color:#1A57AE;background:#EAF1FF;font-size:10px;font-weight:750;padding:3px 7px;border-radius:4px;margin-right:8px}
.kpi-item-weight{flex:none;min-width:65px;text-align:right}
.kpi-item-weight b{display:block;font:750 19px "JetBrains Mono",monospace;color:#144C9E}
.kpi-item-weight i{display:block;margin-top:9px;width:100%;height:4px;border-radius:5px;background:linear-gradient(90deg,#0052FF,#88AEFF)}
.kpi-empty-items{padding:22px;border:1px dashed #C4D4EA;border-radius:9px;background:#fff;color:#697F99;font-size:12px;text-align:center}
.kpi-detail-actions:not([hidden]){padding:15px;background:#FFF9EC;border:1px solid #F2D9A8;border-radius:9px;margin-top:13px}
.kpi-detail-actions .modal-field{display:block}
.kpi-detail-actions label span{display:block;margin-bottom:8px;font-size:12px;color:#7C5314;font-weight:750}
.kpi-detail-actions textarea{width:100%;padding:11px 12px;border-radius:8px;border:1px solid #D9C6A6;font-size:13px;min-height:70px}
.kpi-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none;border-top:1px solid #DCE5F2;padding:17px 30px;background:#fff}
.kpi-detail-work-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.kpi-detail-footer .btn{min-width:0;min-height:41px;height:auto;font-size:12px;padding:10px 16px}
.kpi-detail-footer #kpi-detail-return{border-color:#E9C9BE;background:#FFF5F1;color:#A33A27}
.kpi-detail-footer #kpi-detail-open{background:#0052FF;border-color:#0052FF;color:#fff}
.kpi-detail-footer #kpi-detail-open:hover{background:#0041CE}

/* Separate read-only manager-task reference, not part of HR actions */
.kpi-manager-preview-dialog{width:min(710px,calc(100vw - 25px));max-height:93vh;overflow-y:auto;border:0;border-radius:15px;padding:0;background:#F1F5FA;box-shadow:0 22px 70px rgba(7,23,50,.28)}
.kpi-manager-preview-header{background:#112B55;color:#fff;padding:23px 28px 24px}
.kpi-manager-preview-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}
.kpi-manager-preview-top span{color:#94B9F5;font-size:10px;font-weight:750;letter-spacing:.09em}
.kpi-manager-preview-top button{border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;background:rgba(255,255,255,.09);width:33px;height:33px}
.kpi-manager-preview-header h2{color:#fff;font-size:24px;margin:0}
.kpi-manager-preview-header p{font-size:12px;color:#C3D7F4;line-height:1.6;margin:7px 0 0}
.kpi-manager-preview-body{padding:22px 28px 26px}
.kpi-manager-preview-note{background:#E1EBF9;color:#355785;font-size:11px;padding:9px 12px;border-radius:8px;margin-bottom:16px}
.kpi-manager-preview-form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}
.kpi-manager-preview-form-head strong{font-size:15px;color:#172F52}
.kpi-manager-preview-form-head span{color:#5F7798;font-size:12px}
.kpi-manager-preview-item{margin-bottom:12px;padding:16px;background:#fff;border:1px solid #DAE4F2;border-radius:10px}
.kpi-manager-preview-item-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #E7EDF6}
.kpi-manager-preview-item-head strong{font-size:12px;color:#184A9B}
.kpi-manager-preview-item-head span{font:750 12px "JetBrains Mono",monospace;color:#17488D}
.kpi-manager-preview-item label{display:block;margin-bottom:11px;color:#697C96;font-size:10px;font-weight:700}
.kpi-manager-preview-item label:last-child{margin-bottom:0}
.kpi-manager-preview-item label>div{margin-top:5px;border:1px solid #DFE6F0;border-radius:7px;background:#FAFCFF;padding:10px 11px;color:#243B5A;font-size:12px;font-weight:500;min-height:37px;line-height:1.5}
.kpi-manager-preview-bottom{display:flex;gap:10px;margin-top:14px}
.kpi-manager-preview-bottom>div{flex:1;display:flex;flex-direction:column;gap:6px;padding:13px 15px;background:#E9F1FF;border-radius:9px}
.kpi-manager-preview-bottom span{font-size:11px;color:#547095}
.kpi-manager-preview-bottom strong{font-size:16px;color:#1B4C96}
.kpi-manager-preview-empty{padding:30px;background:#fff;border:1px dashed #BFD0E8;border-radius:10px;color:#7087A2;font-size:12px;text-align:center}
.kpi-manager-preview-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:18px}
.kpi-manager-preview-actions button{border:1px solid #BEC9D9;color:#8190A1;padding:10px 14px;border-radius:8px;font-size:12px;cursor:not-allowed;background:#F4F7FB}
.kpi-manager-preview-actions button:last-child{background:#C9D7EC;border-color:#C9D7EC}
@media(max-width:770px){
 #view-release .kpi-page-heading{flex-direction:column;align-items:flex-start}
 #view-release .kpi-header-preview{width:100%}
 .kpi-detail-dialog .kpi-detail-hero{padding:21px}
 .kpi-detail-body{padding:16px}
 .kpi-detail-footer{padding:13px 16px;align-items:stretch;flex-direction:column}
 .kpi-detail-work-actions{justify-content:stretch}
 .kpi-detail-work-actions .btn{flex:1 1 auto}
 .kpi-manager-preview-header{padding:21px}
 .kpi-manager-preview-body{padding:16px}
}
@media(max-width:470px){
 .kpi-detail-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .kpi-detail-stats>div{padding:11px}
 .kpi-detail-stats strong{font-size:17px}
 .kpi-detail-dialog .kpi-item-row{padding:12px;gap:8px}
 .kpi-item-weight{min-width:54px}
 .kpi-item-weight b{font-size:15px}
 .kpi-manager-preview-bottom{flex-direction:column}
}

/* Pre-KPI handoff: compact HR launch panel at the end of People & Assessors */
.preflight-panel{margin:21px 0 0;background:#F4F8FF;border:1px solid #B8CEF2;border-radius:13px;padding:20px 22px;box-shadow:0 5px 14px rgba(23,57,112,.055)}
.preflight-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}
.preflight-heading .eyebrow{display:block;color:#2B61B0;font-size:10px;font-weight:800;letter-spacing:.08em;margin-bottom:6px}
.preflight-heading h2{margin:0 0 5px;font-size:19px;letter-spacing:-.02em;color:#173C78}
.preflight-heading p{margin:0;font-size:12px;color:#5C7191}
.preflight-demo-pill{flex:none;background:#DDEBFF;border-radius:6px;padding:6px 9px;color:#2754A0;font-size:10px;font-weight:800}
.preflight-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:18px 0 14px}
.preflight-summary>div{min-width:0;padding:13px 15px;border:1px solid #D5E2F4;border-radius:9px;background:#fff;display:flex;flex-direction:column;gap:6px}
.preflight-summary small{font-size:11px;font-weight:650;color:#657C9A;line-height:1.45}
.preflight-summary strong{font-size:23px;color:#174A95;font-weight:700}
.preflight-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.preflight-actions>.btn{font-size:12px;min-width:0;min-height:41px;height:auto;padding:10px 14px}
.preflight-status{margin:13px 0 0;font-size:12px;line-height:1.6;color:#4D6380}
.preflight-confirm-dialog{width:min(570px,calc(100vw - 24px))}
.preflight-confirm-dialog h2{margin-top:5px;font-size:23px}
.preflight-confirm-dialog>p{font-size:12px;color:#667B99;line-height:1.55}
.preflight-confirm-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}
.preflight-confirm-summary>div{display:flex;flex-direction:column;gap:8px;background:#EDF4FF;border:1px solid #D4E2F6;border-radius:9px;padding:15px}
.preflight-confirm-summary strong{font:700 27px "JetBrains Mono",monospace;color:#154D9C}
.preflight-confirm-summary span{font-size:11px;color:#536C91}
#preflight-freeze-review{border-radius:8px;padding:14px 16px;background:#FFF3E4;color:#864E14;font-size:12px;line-height:1.65;margin:14px 0}
#preflight-freeze-review ul{margin:8px 0 0;padding-left:18px}
.preflight-freeze-good{background:#E5F8EF;color:#126B46;padding:8px;border-radius:6px}
.manager-kpi-phase{margin:14px 0 12px;border-radius:8px;background:#FFF2DA;color:#8A5613;padding:12px 15px;font-weight:750;font-size:12px}
.manager-kpi-phase.is-open{background:#E4F5ED;color:#146A44}
.manager-kpi-step{display:block;color:#516E93;font-size:10px;line-height:1.5;margin-top:6px}
.manager-roster-table .manager-roster-actions .manager-kpi-edit{background:#1258D1;border-color:#1258D1;color:#fff;white-space:nowrap;padding:6px 11px}
.manager-roster-table .manager-roster-actions .manager-kpi-edit:hover{background:#0647B6}
.manager-kpi-editor{width:min(690px,calc(100vw - 25px));max-height:93vh;display:flex;flex-direction:column;overflow:hidden;border-radius:15px;padding:0}
.manager-kpi-editor-head{background:#133973;padding:22px 26px;color:#fff}
.manager-kpi-editor-head .eyebrow{font-size:10px;color:#AECAFF}
.manager-kpi-editor-head h2{color:#fff;margin:5px 0;font-size:24px}
.manager-kpi-editor-head p:last-child{margin:0;color:#D2E0F5;font-size:12px;line-height:1.5}
.manager-kpi-editor-scroll{overflow:auto;min-height:0;flex:1;background:#F5F8FC;padding:17px 24px}
.manager-kpi-item{background:#fff;border:1px solid #DAE4F2;border-radius:10px;padding:17px;margin:0 0 12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.manager-kpi-item-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-bottom:9px;border-bottom:1px solid #E8EDF6}
.manager-kpi-item-head strong{font-size:13px;color:#2355A6}
.manager-kpi-remove{background:transparent;border:0;color:#B04436;font-size:11px;font-weight:800}
.manager-kpi-item label{font-size:11px;font-weight:700;color:#50647F;display:flex;flex-direction:column;gap:6px;min-width:0}
.manager-kpi-item label:nth-of-type(2),.manager-kpi-item label:nth-of-type(3){grid-column:1/-1}
.manager-kpi-item input,.manager-kpi-item textarea{border:1px solid #CEDAE8;border-radius:8px;background:#fff;color:#203752;width:100%;min-height:40px;padding:8px 10px;font-size:13px;font-weight:450;line-height:1.5}
.manager-kpi-item input:disabled,.manager-kpi-item textarea:disabled{background:#F4F7FB;color:#637994}
.manager-kpi-item textarea{resize:vertical}
.manager-kpi-total{display:inline-block;margin:12px 0;padding:10px 13px;border-radius:8px;font-size:13px;font-weight:800}
.manager-kpi-total.correct{background:#DDF4E8;color:#14734D}
.manager-kpi-total.incorrect{background:#FFF0D8;color:#965716}
.manager-kpi-self{margin:9px 0 14px;border:1px solid #D7E4F2;background:#fff;border-radius:10px;padding:13px 16px;display:flex;gap:16px;flex-wrap:wrap}
.manager-kpi-self legend{padding:0 5px;font-size:12px;font-weight:800;color:#314766}
.manager-kpi-self label{display:flex;align-items:center;gap:7px;font-size:12px;color:#334E70}
.manager-kpi-self input{accent-color:#0052FF}
#manager-kpi-lock-note{margin:6px 0 12px;color:#9B4E23;font-size:12px}
.manager-kpi-editor>.modal-actions{margin:0;padding:14px 22px;background:#fff;border-top:1px solid #DCE7F4;flex-wrap:wrap}
.manager-kpi-editor>.modal-actions .btn{height:41px}
#manager-kpi-error{line-height:1.6;margin:0 0 14px}
/* After Freeze: manager KPI workspace takes over the roster review surface */
.manager-roster-view [hidden]{display:none!important}
.manager-kpi-editor [hidden]{display:none!important}
.kpi-detail-dialog button[hidden]{display:none!important}

.manager-kpi-workbench{border:1px solid #C8D8F0;border-radius:13px;background:#F1F6FE;padding:17px 20px;margin:14px 0 15px}
.manager-work-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.manager-work-heading h2{font-size:19px;color:#153F7A;margin:0 0 2px}
.manager-work-heading p{font-size:12px;color:#687FA0;margin:0}
.manager-kpi-work-total{font-size:12px;font-weight:800;background:#DAE9FC;color:#18509B;border-radius:7px;padding:7px 10px}
.manager-kpi-work-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:12px}
.manager-kpi-work-filters button{display:flex;justify-content:space-between;align-items:center;min-width:0;gap:8px;padding:11px 12px;border-radius:9px;border:1px solid #D6E2F1;background:#fff;text-align:left}
.manager-kpi-work-filters button span{font-size:11px;font-weight:750;color:#445E7D}
.manager-kpi-work-filters button strong{font-size:19px;color:#1B477F}
.manager-kpi-work-filters button.active{background:#15478B;border-color:#15478B;box-shadow:0 3px 10px rgba(18,66,145,.15)}
.manager-kpi-work-filters button.active span,.manager-kpi-work-filters button.active strong{color:#fff}
.manager-kpi-work-filters button[data-manager-kpi-filter="returned"] strong{color:#AF4229}
.manager-kpi-work-filters button[data-manager-kpi-filter="returned"].active{background:#AE4A33;border-color:#AE4A33}
.manager-kpi-work-filters button[data-manager-kpi-filter="returned"].active strong{color:#fff}
.manager-work-search input{width:100%;min-height:39px;max-width:480px;border:1px solid #CEDAEA;background:#fff;border-radius:8px;padding:8px 13px;font-size:12px;color:#2C4263}
.manager-roster-view .manager-kpi-workbench:not([hidden])~.manager-roster-table-panel .manager-roster-actions{gap:0}
.manager-roster-view .manager-kpi-workbench:not([hidden])~.manager-roster-table-panel .manager-roster-actions .manager-kpi-edit{font-size:12px;font-weight:800;padding:8px 12px;border:1px solid #1A58B5;border-radius:7px;background:#1857BD;color:#fff}
.manager-kpi-status{display:inline-flex;align-items:center;border-radius:6px;padding:5px 9px;font-size:11px;font-weight:800;line-height:1.5;white-space:nowrap}
.manager-kpi-status.todo{background:#FFF0D4;color:#98580D}
.manager-kpi-status.draft{background:#DDEAFF;color:#1953A4}
.manager-kpi-status.returned{background:#FFE4D9;color:#B0432D}
.manager-kpi-status.submitted{background:#DCF4E6;color:#176F48}
.manager-kpi-return-reason{display:block;font-size:10px;color:#A34B34;margin-top:5px;line-height:1.5;max-width:320px}
@media(max-width:1050px){.manager-kpi-work-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.manager-kpi-work-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-work-heading{align-items:flex-start}.manager-kpi-workbench{padding:13px}}

@media(max-width:700px){
 .preflight-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 .preflight-panel{padding:15px}
 .preflight-heading{flex-direction:column}
 .preflight-actions .btn{width:100%}
 .manager-kpi-editor-head{padding:18px}
 .manager-kpi-editor-scroll{padding:13px}
 .manager-kpi-item{grid-template-columns:minmax(0,1fr);padding:13px}
 .manager-kpi-item label:nth-of-type(2),.manager-kpi-item label:nth-of-type(3){grid-column:1}
}

/* One HR People / Assessor workspace with an embedded review inbox and launch stage. */
#view-people .people-summary[hidden],
#view-people .people-list-panel[hidden],
#view-people .preflight-panel[hidden],
#view-people #view-exceptions[hidden]{display:none!important}
.people-work-tabs{position:sticky;top:62px;z-index:10;display:flex;gap:8px;align-items:stretch;flex-wrap:wrap;padding:9px;margin:15px 0 19px;border:1px solid #D5E1F2;border-radius:11px;background:#EFF4FC;box-shadow:0 4px 12px rgba(15,43,85,.045)}
.people-work-tabs>button{display:flex;align-items:center;gap:9px;justify-content:center;min-height:42px;flex:1 1 175px;padding:9px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:#526C91;font-size:12px;font-weight:800;text-align:center}
.people-work-tabs>button.active{background:#164889;border-color:#164889;color:#fff;box-shadow:0 4px 12px rgba(17,65,137,.13)}
.people-work-tabs>button:not(.active):hover{background:#fff;border-color:#C4D8F5;color:#2155A2}
.people-work-tabs>button strong{font-size:11px;min-width:22px;min-height:22px;display:grid;place-items:center;padding:2px 6px;border-radius:7px;background:#FFE0CE;color:#963C25}
.people-work-tabs>button.active strong{background:rgba(255,255,255,.18);color:#fff}
#view-people #view-exceptions.hr-review-workspace{margin-top:0;padding:0;min-width:0}
#view-people #view-exceptions .hr-review-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
#view-people #view-exceptions .hr-review-heading h2{font-size:23px;color:#17395F;letter-spacing:-.025em;margin:3px 0 4px}
#view-people #view-exceptions .hr-review-heading .page-heading-help{font-size:12px}
#view-people #view-exceptions .hr-review-footnote{font-size:11px}
@media(max-width:720px){.people-work-tabs{top:55px;padding:7px;gap:5px}.people-work-tabs>button{flex:1 1 100%;min-height:38px}.people-work-tabs>button.active{box-shadow:none}}
/* HR 04 ↔ 05: freeze blockers with direct actions */
.people-freeze-guide{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 16px;padding:13px 17px;border-radius:11px;border:1px solid #F0C7B5;border-left:5px solid #CF5F3E;background:#FFF4EC}
.people-freeze-guide>div{display:flex;align-items:center;gap:12px;min-width:0}
.people-freeze-guide-icon{flex:none;width:32px;height:32px;display:grid;place-items:center;background:#FFE0D0;color:#A64229;border-radius:9px;font-size:18px;font-weight:900}
.people-freeze-guide strong{font-size:13px;color:#8D391F;display:block;line-height:1.4}
.people-freeze-guide small{font-size:11px;color:#926450;display:block;line-height:1.5;margin-top:3px}
.people-freeze-guide-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:none}
.people-freeze-guide-actions button{flex:none;border:1px solid #DAB29F;color:#8D3D26;font-weight:800;background:#FFFDFB;border-radius:8px;padding:9px 12px;font-size:11px}
.people-freeze-guide-actions #people-freeze-guide-cases{background:#B24E30;border-color:#B24E30;color:#fff}
.people-freeze-guide.is-ready{border-color:#A8DBBE;border-left-color:#15915D;background:#ECF9F2}
.people-freeze-guide.is-ready .people-freeze-guide-icon{background:#CFEDDA;color:#116F48}
.people-freeze-guide.is-ready strong{color:#116F48}
.people-freeze-guide.is-ready small{color:#517A62}
.people-freeze-guide.is-ready .people-freeze-guide-actions button{border-color:#B0D9C4;color:#166847}
.preflight-blocker-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:17px 0 8px}
.preflight-blocker-head h3{margin:0;font-size:15px;font-weight:800;color:#1C355B}
#preflight-blocker-count{font-size:11px;font-weight:750;color:#AB532F;background:#FFF0E7;border-radius:6px;padding:5px 8px}
.preflight-blocker-list{background:#fff;border-radius:10px;border:1px solid #D8E4F3;overflow:hidden}
.preflight-issue{display:flex;align-items:center;gap:14px;padding:13px 15px;background:#FFF;border-bottom:1px solid #E7EDF6;min-width:0}
.preflight-issue:last-child{border-bottom:0}
.preflight-issue.is-first{background:#FFFAF7}
.preflight-issue-count{display:grid;place-items:center;flex:none;min-width:32px;height:32px;border-radius:8px;background:#FFDFD1;color:#A53F28;font-size:14px;font-weight:800}
.preflight-issue-info{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:4px}
.preflight-issue-info strong{font-size:12px;font-weight:800;color:#263E60;line-height:1.45}
.preflight-issue-info small{font-size:11px;color:#75849B;line-height:1.5;overflow-wrap:anywhere}
.preflight-fix-button{border:1px solid #B7CDF0;background:#F2F6FF;color:#1452AC;border-radius:8px;font-size:11px;font-weight:800;padding:9px 12px;line-height:1.5;white-space:nowrap;flex:none}
.preflight-fix-button:hover{background:#DFEAFF;border-color:#6D9AEC}
.preflight-fix-button:focus-visible,.people-freeze-guide button:focus-visible,.exception-freeze-context button:focus-visible{outline:3px solid #96BCFF;outline-offset:2px}
.preflight-all-clear{background:#ECF9F2;color:#116F48;font-size:13px;font-weight:800;padding:17px;border-radius:8px}
.preflight-freeze-review.has-issues{border:0!important;background:transparent!important;padding:4px 0!important;margin:10px 0!important;color:#263E60!important}
.preflight-freeze-review.has-issues .preflight-issue{border:1px solid #E0E8F3;border-bottom:0}
.preflight-freeze-review.has-issues .preflight-issue:last-child{border-bottom:1px solid #E0E8F3}
.preflight-freeze-error-title{display:flex;align-items:center;gap:10px;padding:10px 0 15px}
.preflight-freeze-error-title>span{width:32px;height:32px;display:grid;place-items:center;background:#FFE1D6;color:#AB432B;border-radius:8px;font-weight:850}
.preflight-freeze-error-title strong{display:block;color:#9A3D28;font-size:16px}
.preflight-freeze-error-title small{display:block;color:#7F8898;font-size:11px}
.preflight-confirm-dialog{max-height:88vh;overflow:auto}
.preflight-modal-caption{font-size:11px;color:#7889A0}
.exception-freeze-context{margin:2px 0 16px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 18px;border-radius:11px;background:#F0F5FE;border:1px solid #D0E0F7;border-left:4px solid #2163C4}
.exception-freeze-context>div{display:flex;flex-direction:column;gap:4px}
.exception-freeze-context strong{font-size:13px;color:#183E80}
.exception-freeze-context small{font-size:11px;color:#637B9C;line-height:1.5}
.exception-freeze-context button{font-size:11px;font-weight:800;white-space:nowrap;border:1px solid #B6CEEE;background:#fff;color:#1755A9;border-radius:8px;padding:9px 12px}
.exception-freeze-context.is-ready{background:#E9F8F0;border-color:#BDE3CD;border-left-color:#169961}
.exception-freeze-context.is-ready strong{color:#176B48}
#view-exceptions .hr-review-heading{align-items:center}
#view-exceptions .hr-review-heading .heading-actions{flex:none}
#view-exceptions #exception-back-preflight{font-size:12px;min-height:40px;padding:9px 13px}
@media(max-width:780px){
 .people-freeze-guide,.exception-freeze-context{align-items:stretch;flex-direction:column}
 .people-freeze-guide-actions,.people-freeze-guide-actions button,.exception-freeze-context>button{width:100%}
 .preflight-issue{flex-wrap:wrap;gap:9px}
 .preflight-issue-info{flex:1 1 calc(100% - 55px)}
 .preflight-fix-button{margin-left:42px;white-space:normal;flex:1 1 calc(100% - 42px)}
 #view-exceptions .hr-review-heading{align-items:stretch;flex-direction:column}
 #view-exceptions .hr-review-heading .heading-actions{width:100%}
 #view-exceptions #exception-back-preflight{width:100%}
}

/* Assessor access handoff — HR prepares and tracks notices, demo PIN is not authentication */
.assessor-dispatch{margin-top:23px;border:1px solid #C9D9F0;border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(18,52,99,.065)}
.assessor-dispatch-head{background:linear-gradient(115deg,#102F61,#1D4E96);color:#fff;padding:19px 23px;display:flex;justify-content:space-between;gap:14px;align-items:center}
.assessor-dispatch-head h3{color:#fff;margin:5px 0 3px;font-size:19px;letter-spacing:-.025em}
.assessor-dispatch-head p{font-size:12px;line-height:1.5;margin:0;color:#B8D2F6}
.assessor-dispatch-head .eyebrow{font-size:10px;color:#98BEF6;letter-spacing:.08em;font-weight:800}
.assessor-dispatch-demo{font-size:10px;font-weight:750;padding:8px 10px;border-radius:6px;white-space:nowrap;background:rgba(255,255,255,.12);color:#E6F0FF}
.assessor-dispatch-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:17px 21px;background:#F3F7FE;border-bottom:1px solid #DDE8F6}
.assessor-dispatch-counts>div{display:flex;flex-direction:column;gap:6px}
.assessor-dispatch-counts small{font-size:11px;font-weight:750;color:#607793}
.assessor-dispatch-counts strong{font-size:24px;color:#144689}
.assessor-dispatch-counts>div:nth-child(2) strong{color:#A26316}
.assessor-dispatch-counts>div:nth-child(3) strong{color:#157047}
.assessor-dispatch-toolbar{display:flex;gap:10px;align-items:center;padding:13px 21px;border-bottom:1px solid #E1E9F4}
.assessor-dispatch-toolbar input{flex:1 1 auto;min-width:0;max-width:420px;min-height:39px;border:1px solid #CEDCEC;border-radius:8px;background:#fff;color:#233A5A;padding:8px 12px;font-size:12px}
.assessor-dispatch-toolbar select{flex:none;min-height:39px;max-width:175px;border:1px solid #CEDCEC;border-radius:8px;background:#fff;color:#233A5A;padding:8px 10px;font-size:12px}
.assessor-dispatch-batch{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 16px;background:#F7FAFF;border-bottom:1px solid #E1E9F4}
.assessor-dispatch-selection,.assessor-dispatch-actions{display:flex;align-items:center}
.assessor-dispatch-selection{gap:10px;min-width:0}
.assessor-dispatch-actions{gap:8px;margin-left:auto}
.assessor-dispatch-batch label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:#304C72;cursor:pointer;white-space:nowrap}
.assessor-dispatch-batch input,.assessor-dispatch-check-cell input{accent-color:#0052FF;width:16px;height:16px}
.assessor-dispatch-batch button{border:1px solid #2E64B3;border-radius:8px;color:#fff;background:#1A55A6;min-height:36px;padding:8px 13px;font-size:11px;font-weight:800;white-space:nowrap}
.assessor-dispatch-batch button:disabled{background:#E8EEF6;color:#96A4B7;border-color:#D8E1ED}
.assessor-dispatch-batch .people-plain-action{border:0;background:transparent;color:#1C54B9;min-height:auto;padding:4px 2px;border-radius:0;font-size:10px}
.assessor-dispatch-batch .people-plain-action:hover:not(:disabled){background:transparent;text-decoration:underline}
.assessor-dispatch-batch #assessor-dispatch-selected-copy{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border:1px solid #DDE6F2;border-radius:999px;background:#fff;font-size:10px;font-weight:700;color:#6A7E98;white-space:nowrap}
.assessor-dispatch-table .assessor-dispatch-check-head,.assessor-dispatch-table .assessor-dispatch-check-cell{width:60px;max-width:60px;text-align:center;padding-left:16px;padding-right:6px}
.assessor-dispatch-table-wrap{overflow-x:auto}
.assessor-dispatch-table{width:100%;border-collapse:collapse;min-width:720px;table-layout:fixed}
.assessor-dispatch-table th{text-align:left;font-weight:800;font-size:10px;color:#657992;background:#FAFCFF;border-bottom:1px solid #E3EAF4;padding:11px 16px}
.assessor-dispatch-table td{border-bottom:1px solid #EDF1F6;padding:12px 16px;vertical-align:middle;font-size:12px;color:#29415F}
.assessor-dispatch-table th:nth-child(1),.assessor-dispatch-table td:nth-child(1){width:62px}
.assessor-dispatch-table th:nth-child(2),.assessor-dispatch-table td:nth-child(2){width:auto}
.assessor-dispatch-table th:nth-child(3),.assessor-dispatch-table td:nth-child(3){width:90px;text-align:center}
.assessor-dispatch-table th:nth-child(4),.assessor-dispatch-table td:nth-child(4){width:145px}
.assessor-dispatch-table th:nth-child(5),.assessor-dispatch-table td:nth-child(5){width:190px}
.assessor-dispatch-table tbody tr:last-child td{border-bottom:0}
.assessor-dispatch-table td:nth-child(2) strong{font-size:12px;color:#173558;line-height:1.45}
.assessor-dispatch-table td:nth-child(2) small{display:block;color:#7990AD;font-size:10px;margin-top:3px}
.assessor-delivery{display:inline-block;padding:5px 8px;border-radius:6px;font-size:11px;font-weight:750;white-space:nowrap}
.assessor-delivery.prepared{background:#FFF0D5;color:#93540D}
.assessor-delivery.sent{background:#E1F6E9;color:#177049}
.assessor-package-action{border:1px solid #BBD0F0;color:#194C97;background:#F3F7FE;padding:8px 10px;border-radius:7px;font-size:11px;font-weight:800;white-space:nowrap}
.assessor-package-action:hover{background:#DDEAFF}
.assessor-dispatch-empty{text-align:center!important;padding:22px!important;color:#7A8BA4!important}
.assessor-dispatch-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 21px;border-top:1px solid #E4ECF6;background:#F9FBFE}
.assessor-dispatch-footer span{font-size:11px;color:#687E9B}
.assessor-dispatch-footer>div{display:flex;gap:8px}
.assessor-dispatch-footer button{border:1px solid #CDDAEB;background:#fff;color:#315884;border-radius:7px;padding:7px 11px;font-size:11px}
.assessor-dispatch-footer button:disabled{opacity:.38}
.assessor-access-dialog{padding:0;overflow:hidden;max-height:92vh;overflow-y:auto;width:min(680px,calc(100vw - 26px));border-radius:16px}
.assessor-access-header{padding:22px 27px;background:#fff;color:#173558;border-bottom:1px solid #E3EAF4}
.assessor-access-header .eyebrow{color:#1760C5;font-size:10px;font-weight:850;letter-spacing:.09em}
.assessor-access-header h2{font-size:23px;color:#132E52;margin:7px 0 6px;letter-spacing:-.02em}
.assessor-access-header p{margin:0;font-size:12px;color:#637895;font-weight:700}
.assessor-access-body{padding:20px 27px 19px;background:#FBFCFE}
.assessor-access-warning{font-size:11px;line-height:1.6;color:#794F16;padding:11px 13px;border-radius:8px;background:#FFF3DE;border:1px solid #F1D8A8;margin-bottom:15px}
.assessor-package-credentials{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:15px}
.assessor-package-link-card,.assessor-package-mini-card{position:relative;min-width:0;border:1px solid #DCE6F3;border-radius:11px;background:#fff;padding:14px 15px}
.assessor-package-link-card{grid-column:1/-1;padding-right:110px}
.assessor-package-link-card span,.assessor-package-mini-card span{display:block;font-size:10px;font-weight:800;color:#6D8098;margin-bottom:6px}
.assessor-package-link-card strong{display:block;font-size:12px;line-height:1.55;color:#164A92;overflow-wrap:anywhere;font-family:"JetBrains Mono",monospace}
.assessor-package-mini-card strong{display:block;font-size:19px;line-height:1.3;color:#173C70;letter-spacing:.02em}
.assessor-package-link-card button,.assessor-package-mini-card button{border:0;background:transparent;color:#0B57C7;font-size:11px;font-weight:800;padding:0;cursor:pointer}
.assessor-package-link-card button{position:absolute;top:14px;right:15px}
.assessor-package-mini-card button{margin-top:7px}
.assessor-package-dialog .assessor-package-scope{box-shadow:0 1px 2px rgba(21,46,84,.03)}
.assessor-package-dialog .assessor-package-delivery-draft{border:1px solid #DFE7F2;border-radius:10px;background:#fff;margin:0 0 14px;overflow:hidden}
.assessor-package-dialog .assessor-package-delivery-draft summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;background:#F8FAFD}
.assessor-package-dialog .assessor-package-delivery-draft summary::-webkit-details-marker{display:none}
.assessor-package-dialog .assessor-package-delivery-draft summary strong{font-size:11px;color:#2C425F}
.assessor-package-dialog .assessor-package-delivery-draft summary small{font-size:9px;color:#7D899A}
.assessor-package-dialog .assessor-package-delivery-draft textarea{margin:0;border:0;border-top:1px solid #E8EDF4;border-radius:0;min-height:135px;background:#fff}
.assessor-package-dialog .assessor-package-delivery-draft>.btn{margin:10px 12px 12px}
.assessor-package-dialog .assessor-access-actions{justify-content:flex-end}
.assessor-package-dialog .assessor-access-actions .btn{flex:0 0 auto;min-width:150px}
.assessor-package-dialog .assessor-access-footer{justify-content:space-between}
.assessor-package-dialog .assessor-access-footer .btn.primary{min-width:190px}
.assessor-package-scope{border:1px solid #DFE7F2;border-radius:10px;background:#fff;margin-bottom:14px;overflow:hidden}
.assessor-package-scope-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 14px;background:#F8FAFD;border-bottom:1px solid #E8EDF4}
.assessor-package-scope-head>div{display:flex;flex-direction:column;gap:2px}.assessor-package-scope-head strong{font-size:12px;color:#233A5C}.assessor-package-scope-head small{font-size:10px;color:#73829A}
.assessor-package-scope-head>span{font-size:10px;font-weight:800;color:#0754C1;background:#EAF1FF;border-radius:7px;padding:5px 8px;white-space:nowrap}
.assessor-package-scope-list{max-height:180px;overflow:auto}.assessor-package-scope-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #EEF2F7}
.assessor-package-scope-row:last-child{border-bottom:0}.assessor-package-scope-row>div{display:flex;flex-direction:column;min-width:0}.assessor-package-scope-row strong{font-size:11px;color:#203653}.assessor-package-scope-row small{font-size:9px;color:#7A899D;margin-top:2px}.assessor-package-scope-row>span{font-size:10px;font-weight:800;color:#3B557A}.assessor-package-scope-empty{padding:14px;color:#7B899B;font-size:10px}
.assessor-package-delivery-draft{margin:12px 0 14px}.assessor-package-delivery-draft>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.assessor-package-delivery-draft strong{font-size:11px;color:#2C425F}.assessor-package-delivery-draft small{font-size:9px;color:#7D899A}
.assessor-package-delivery-draft textarea{width:100%;min-height:130px;margin-top:7px;border:1px solid #DCE5F1;border-radius:9px;background:#F8FAFD;color:#344A68;padding:10px 11px;resize:vertical;font:10px/1.6 "JetBrains Mono",monospace}
.assessor-access-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:14px}
.assessor-access-fields>div{min-width:0;background:#F6F9FE;border:1px solid #DAE5F4;padding:13px 14px;border-radius:9px;display:flex;flex-direction:column;gap:8px}
.assessor-access-fields span{font-size:11px;color:#657C9D;font-weight:750}
.assessor-access-fields strong{font-size:16px;color:#17457F;letter-spacing:.015em;overflow-wrap:anywhere}
.assessor-access-fields button{border:0;background:none;color:#0754C1;padding:0;font-size:11px;font-weight:800;align-self:flex-start}
.assessor-access-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.assessor-access-actions .btn{font-size:11px;min-height:38px;height:auto;padding:9px 12px;flex:1 1 auto}
.assessor-access-actions .btn:disabled{opacity:.5}
.assessor-access-footnote{margin:0;font-size:11px;color:#637895;line-height:1.6}
.assessor-access-footer{padding:14px 27px;border-top:1px solid #DEE8F5;background:#F7F9FD;display:flex;gap:9px;align-items:center;justify-content:flex-end}
.assessor-access-footer .btn{font-size:12px;min-height:40px;height:auto;padding:9px 14px}
.assessor-pin-label{display:flex;flex-direction:column;gap:9px;color:#3F5778;font-size:12px;font-weight:800}
.assessor-pin-label input{min-height:51px;padding:10px 15px;border-radius:8px;border:1px solid #AFC6E8;color:#153C7D;background:#F8FAFF;font:700 22px "JetBrains Mono",monospace;letter-spacing:.3em;max-width:290px}
.assessor-pin-label input:focus-visible{outline:3px solid #B3CFFF;outline-offset:2px}
@media(max-width:630px){
 .assessor-dispatch-head{flex-direction:column;align-items:flex-start;padding:16px}
 .assessor-dispatch-counts{gap:8px;padding:13px}
 .assessor-dispatch-counts strong{font-size:20px}
 .assessor-dispatch-toolbar{flex-direction:column;align-items:stretch;padding:12px}
 .assessor-dispatch-toolbar input,.assessor-dispatch-toolbar select{max-width:none;width:100%}
 .assessor-dispatch-batch{flex-direction:column;align-items:stretch;gap:9px;padding:11px 12px}
 .assessor-dispatch-selection{gap:8px;flex-wrap:wrap}
 .assessor-dispatch-actions{width:100%;margin-left:0}
 .assessor-dispatch-actions .btn{width:100%}
 .assessor-dispatch-footer{padding:10px 13px}
 .assessor-access-header{padding:20px}
 .assessor-access-body{padding:16px}
 .assessor-access-fields{grid-template-columns:1fr}
 .assessor-access-footer{padding:12px;flex-wrap:wrap}
}
/* Demo role-scope presentation only, not a security boundary. */
body.assessor-demo-active{background:#F0F4FA}
body.assessor-demo-active .topbar,
body.assessor-demo-active .sidebar,
body.assessor-demo-active #prototype-data-banner{display:none!important}
body.assessor-demo-active .app-layout{min-height:100vh}
body.assessor-demo-active .page-shell{max-width:1200px;padding-top:34px}
body.assessor-demo-active #view-manager-roster{background:transparent}
body.assessor-demo-active .people-manager-preview-banner{background:#E8F1FF;border:1px solid #BCD3F5;border-radius:9px;color:#17447C}
body.assessor-demo-active .manager-roster-picker select{background:#EAF0FA;color:#526B8D;cursor:not-allowed}
@media(max-width:600px){body.assessor-demo-active .page-shell{padding:16px 12px 38px}}

/* 07 · Evaluation Progress HR — status-based monitoring, no automated alerts */
.progress-hr-view{color:#183355}
.progress-heading{display:flex;align-items:flex-start;gap:15px;justify-content:space-between;margin-bottom:19px}
.progress-heading .eyebrow{color:#0052FF;font-size:11px;font-weight:800;letter-spacing:.09em}
.progress-heading h1{font-size:32px;color:#102E55;margin:5px 0 4px;letter-spacing:-.045em}
.progress-heading .page-heading-help{font-size:12px;color:#657C99}
.progress-heading-actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px}
.progress-heading-actions .btn{font-size:12px;padding:10px 14px;min-height:40px}
.progress-demo-note{color:#546D90;background:#E7EEF8;border:1px solid #D3E0F1;padding:7px 10px;border-radius:7px;font-size:10px;font-weight:800}
.progress-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:15px}
.progress-summary-card{display:flex;flex-direction:column;gap:7px;text-align:left;align-items:flex-start;background:#fff;border:1px solid #D8E2F0;border-radius:11px;padding:14px 13px;min-width:0;min-height:124px;color:#2B4262;transition:border-color .12s,box-shadow .12s}
.progress-summary-card:hover,.progress-summary-card.selected{border-color:#86B0EA;box-shadow:0 2px 12px rgba(0,82,255,.11)}
.progress-summary-card>span{font-size:11px;line-height:1.45;font-weight:750;color:#506681}
.progress-summary-card strong{font-size:28px;line-height:1.25;font-weight:750;color:#153B6F}
.progress-summary-card small{font-size:10px;line-height:1.5;color:#7A8BA0}
.progress-summary-card:nth-child(2){border-top:3px solid #D8A04B}
.progress-summary-card:nth-child(3){border-top:3px solid #447AD3}
.progress-summary-card:nth-child(4){border-top:3px solid #9874C7}
.progress-summary-card:nth-child(5){border-top:3px solid #279B68}
.progress-summary-card:nth-child(6){border-top:3px solid #DD7853}
.progress-summary-card:nth-child(2) strong{color:#A87026}
.progress-summary-card:nth-child(5) strong{color:#137B50}
.progress-summary-card:nth-child(6) strong{color:#B55A39}
.progress-completion{border:1px solid #CEDDF1;border-radius:11px;padding:15px 18px;background:linear-gradient(105deg,#F4F8FF,#fff);margin-bottom:18px}
.progress-completion>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:10px}
.progress-completion>div:first-child span{font-size:12px;font-weight:800;color:#315986}
.progress-completion>div:first-child strong{font-size:20px;color:#1959A3}
.progress-completion-track{height:10px;border-radius:99px;background:#E4EBF6;overflow:hidden}
.progress-completion-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0052FF,#3B99E8);transition:width .2s}
.progress-completion small{display:block;margin-top:8px;font-size:11px;color:#6C819D}
.progress-workbench{background:#fff;border:1px solid #D7E2F0;border-radius:12px;overflow:hidden}
.progress-workbench-head{padding:17px 19px 10px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.progress-workbench-head h2{font-size:18px;color:#18375C;margin:0 0 4px}
.progress-workbench-head p{margin:0;color:#7389A5;font-size:11px}
.progress-workbench-head button{font-size:11px;font-weight:750;border:1px solid #CFDDEC;border-radius:7px;padding:9px 11px;color:#315A93;background:#F7FAFF}
.progress-filterbar{display:grid;grid-template-columns:minmax(220px,1.75fr) repeat(3,minmax(120px,1fr));gap:10px;padding:8px 19px 14px}
.progress-filterbar input,.progress-filterbar select{width:100%;height:40px;min-width:0;background:#fff;border:1px solid #D2DEEC;border-radius:8px;color:#284565;font-size:12px;padding:0 11px}
.progress-filterbar input:focus,.progress-filterbar select:focus{outline:2px solid #A1BFFD;outline-offset:1px}
.progress-tabs{display:flex;gap:7px;padding:0 19px 13px;overflow:auto}
.progress-tabs button{white-space:nowrap;border:1px solid #D9E2EE;border-radius:7px;background:#F7F9FD;color:#617894;font-size:11px;font-weight:750;padding:9px 12px}
.progress-tabs button.selected{border-color:#1955A9;background:#1955A9;color:#fff}
.progress-table-scroller{overflow-x:auto}
.progress-data-table{min-width:990px;width:100%;border-collapse:collapse}
.progress-data-table thead th{height:44px;font-size:10px;font-weight:800;text-transform:none;letter-spacing:0;color:#7284A1;background:#F7F9FE;white-space:nowrap;border-bottom:1px solid #DDE7F3;padding:0 13px}
.progress-data-table tbody td{height:71px;padding:11px 13px;border-bottom:1px solid #ECF1F7;font-size:12px;color:#3A5272;vertical-align:middle}
.progress-data-table tbody tr:hover{background:#F8FBFF}
.progress-employee strong,.progress-employee small,.progress-data-table td:nth-child(3) small{display:block}
.progress-employee strong{font-size:12px;color:#12365D;font-weight:800}
.progress-employee small{color:#8191AA;font-size:10px;margin-top:5px}
.progress-assessor-count{font-size:11px;color:#1D4679}
.progress-data-table td:nth-child(3) small{font-size:10px;margin-top:4px;color:#8293A9;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.progress-substate{display:inline-block;color:#60738D;font-size:11px;font-weight:800}
.progress-substate.waiting{color:#AB7127}
.progress-substate.complete{color:#157B50}
.progress-status{display:inline-flex;padding:5px 9px;font-size:10px;font-weight:800;border-radius:6px;white-space:nowrap}
.progress-status.self{background:#FFF0D9;color:#9C630C}
.progress-status.assessor{background:#E4EEFF;color:#2858AC}
.progress-status.partial{background:#EBEBF9;color:#6355A1}
.progress-status.done{background:#DDF5E8;color:#1C7D52}
.progress-overdue{color:#B84F31!important;font-weight:800}
.progress-row-open{font-size:11px;font-weight:800;background:#F1F6FF;color:#1753AE;border:1px solid #C8DAF4;padding:9px 11px;border-radius:7px;white-space:nowrap}
.progress-row-open:hover{border-color:#7CA8E9;background:#E7F0FF}
.progress-empty{padding:44px 20px;text-align:center;color:#65809E;border-top:1px solid #E5EDF8}
.progress-empty strong{display:block;font-size:15px;color:#3A5980}
.progress-empty p{font-size:12px;margin-top:6px}
.progress-empty button{margin-top:8px;color:#1656B2;background:#F1F6FF;border:1px solid #D3E2FA;padding:10px 14px;border-radius:8px;font-size:12px;font-weight:800}
.progress-pagination{min-height:54px;padding:11px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#7387A1;font-size:11px;background:#FAFCFF;border-top:1px solid #E4EBF5}
.progress-pagination>div{display:flex;gap:7px}
.progress-pagination button{background:#fff;border:1px solid #CFDCEC;color:#37618F;padding:8px 10px;border-radius:7px;font-size:11px}
.progress-pagination button:disabled{opacity:.4}
.progress-footnote{font-size:11px;line-height:1.5;color:#788AA3;margin-top:12px}
.progress-detail-dialog{max-height:91vh;overflow:hidden;display:flex;flex-direction:column;padding:0;width:min(690px,calc(100vw - 24px));border-radius:13px}
.progress-detail-header{background:linear-gradient(118deg,#112F5C,#2359A2);color:#fff;padding:23px 25px;display:flex;align-items:start;justify-content:space-between;gap:12px}
.progress-detail-header .eyebrow{font-size:10px;color:#AECAF9}
.progress-detail-header h2{margin:6px 0 4px;color:#fff;font-size:23px}
.progress-detail-header p{font-size:11px;margin:0;color:#D0E0FB}
.progress-detail-header button{background:rgba(255,255,255,.14);color:#fff;border:0;width:31px;height:31px;border-radius:7px}
.progress-detail-body{overflow:auto;padding:22px 25px;background:#F6F8FC}
.progress-detail-status{display:flex;align-items:center;gap:12px;margin-bottom:20px;font-size:11px;color:#667E9C}
.progress-detail-body h3{font-size:14px;color:#1D395F;margin-bottom:13px}
.progress-assessor-detail{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:10px;padding:16px;background:#fff;border:1px solid #D9E4F2;border-radius:9px;margin:0 0 10px;align-items:center}
.progress-assessor-detail>div{min-width:0;display:flex;flex-direction:column;gap:5px}
.progress-assessor-detail strong{font-size:11px;color:#244469;overflow-wrap:anywhere}
.progress-assessor-detail span,.progress-assessor-detail small{font-size:10px;line-height:1.5;color:#8090A4}
.progress-assessor-detail-name strong{color:#17487C;font-size:12px}
.progress-detail-note{margin-top:15px;font-size:11px;line-height:1.6;color:#657B96}
.progress-detail-footer{background:#fff;border-top:1px solid #E1EAF5;padding:13px 25px;display:flex;justify-content:flex-end}
.progress-detail-footer button{min-width:100px}
.progress-detail-dialog [hidden]{display:none!important}
@media(max-width:1260px){.progress-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.progress-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-assessor-detail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .progress-heading{flex-direction:column}
 .progress-heading-actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap}
 .progress-heading h1{font-size:26px}
 .progress-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .progress-summary-card{padding:11px;min-height:115px}
 .progress-summary-card strong{font-size:25px}
 .progress-filterbar{grid-template-columns:1fr;padding:6px 12px 10px}
 .progress-tabs{padding:0 12px 12px}
 .progress-workbench-head{padding:14px 12px}
 .progress-detail-header{padding:18px}
 .progress-detail-body{padding:13px}
 .progress-assessor-detail{grid-template-columns:1fr 1fr;padding:12px}
}











