/* Extracted by script from the Claude Design prototype office.css (coreiq-local, 5 Sep 2026)
   for the Users & permissions and Award & payroll screens. Do not hand-edit: re-extract. */
.off-grid-row--clickable{cursor: pointer;}
.off-grid-row--clickable:hover{background: var(--bg-subtle);}
.off-row-edit{display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 7px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--text-subtle);
  cursor: pointer;
  transition: background .12s, color .12s, border-color .12s;}
.off-grid-row--clickable:hover .off-row-edit{color: var(--text-muted);}
.off-row-edit:hover{background: var(--surface);
  border-color: var(--border);
  color: var(--brand);}
.app-overlay{position: fixed;
  inset: 0;
  background: rgba(8, 24, 40, 0.45);
  display: grid;
  place-items: center;
  z-index: 200;
  padding: 60px 40px;}
.app-overlay-card{background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  width: 620px;
  max-height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: var(--shadow-xl, 0 24px 60px rgba(8, 24, 40, 0.28));}
.app-overlay-head{padding: 18px 22px;
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  gap: 14px;}
.app-overlay-head h3{margin: 0;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: -0.01em;}
.aw-two{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:16px;align-items:start}
.aw-col{display:flex;flex-direction:column;gap:16px}
.aw-schs,.aw-roles{display:flex;flex-direction:column;gap:7px;margin-top:12px}
.aw-sch,.aw-role{display:flex;gap:11px;align-items:flex-start;text-align:left;width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer;font:inherit}
.aw-sch.is-sel,.aw-role.is-sel{border-color:var(--brand);background:var(--brand-bg);box-shadow:inset 0 0 0 1px var(--brand)}
.aw-sch-h{font-size:13px;font-weight:600;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.aw-sch-s{font-size:11.5px;color:var(--text-muted);line-height:1.4;margin-top:2px}
.aw-sch-m{font-family:var(--font-mono);font-size:10px;color:var(--text-subtle);margin-top:3px}
.aw-sch-id{font-size:10.5px;color:var(--text-subtle);flex-shrink:0}
.aw-role-n{font-family:var(--font-mono);font-size:16px;font-weight:700;flex-shrink:0;text-align:right;color:var(--text-muted)}
.aw-role-n em{display:block;font-size:9px;font-style:normal;letter-spacing:.04em;text-transform:uppercase}
.aw-role.is-sel .aw-role-n{color:var(--brand)}
.ds-addbtn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border:1px dashed var(--border-strong);border-radius:10px;background:none;cursor:pointer;font:inherit;font-size:12px;color:var(--text-muted)}
.ds-addbtn:hover{border-color:var(--brand);color:var(--brand)}
.aw-draft{border:1px solid var(--brand);border-radius:10px;padding:13px;background:var(--brand-bg);display:flex;flex-direction:column;gap:10px}
.aw-draft-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--brand)}
.aw-drow{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}
.aw-drates{display:flex;flex-direction:column;background:var(--surface);border-radius:8px;padding:4px 10px}
.aw-drate{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px solid var(--border-subtle);font-size:12px}
.aw-drate:first-child{border-top:0}
.aw-drate>span{flex:1;min-width:0}
.aw-drate em{font-family:var(--font-mono);font-style:normal;color:var(--text-subtle);text-decoration:line-through}
.aw-drate strong{font-family:var(--font-mono);font-size:12.5px;min-width:58px;text-align:right}
.aw-dimpact{background:var(--surface);border-radius:8px;padding:10px 12px}
.aw-dimpact span{display:block;font-size:11.5px;color:var(--text-muted)}
.aw-dimpact strong{display:block;font-family:var(--font-mono);font-size:22px;font-weight:700;letter-spacing:-.02em}
.aw-dimpact em{display:block;font-size:11px;color:var(--text-subtle);font-style:normal}
.aw-rules,.aw-breaks{display:flex;flex-direction:column;gap:7px;margin-top:12px}
.aw-rule,.aw-break{display:flex;gap:14px;align-items:center;padding:11px 13px;border:1px solid var(--border);border-radius:10px}
.aw-rule-l{font-size:13px;font-weight:600}
.aw-rule-l em{font-family:var(--font-mono);font-size:10.5px;color:var(--text-subtle);font-style:normal;margin-left:6px}
.aw-rule-d{font-size:11.5px;color:var(--text-muted);line-height:1.45;margin-top:2px}
.aw-rule-m{font-family:var(--font-mono);font-size:10px;color:var(--text-subtle);margin-top:3px}
.aw-rule-eg{text-align:right;flex-shrink:0}
.aw-rule-eg span{display:block;font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}
.aw-rule-eg strong{display:block;font-family:var(--font-mono);font-size:14px}
.aw-rule-fixed{font-family:var(--font-mono);font-size:12px;color:var(--text-subtle);text-align:right;flex-shrink:0;min-width:96px}
.aw-rule-fixed em{display:block;font-size:9.5px;font-style:normal}
.aw-break-v{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);flex-shrink:0;text-align:right}
.aw-eg{margin-top:13px;padding:12px 14px;background:var(--bg-subtle);border-radius:10px}
.aw-eg-h{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);font-weight:600}
.aw-eg-v{display:flex;align-items:baseline;gap:12px;margin-top:5px}
.aw-eg-v span{font-size:12.5px;color:var(--text-muted);flex:1}
.aw-eg-v strong{font-family:var(--font-mono);font-size:22px;font-weight:700}
.aw-eg-v em{font-size:11px;color:var(--text-subtle);font-style:normal}
.aw-states{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.aw-hols{display:flex;flex-direction:column;gap:5px;margin-top:12px}
.aw-hol{display:flex;gap:12px;align-items:center;padding:8px 11px;border-radius:8px;background:var(--bg-subtle)}
.aw-hol.has-note{background:var(--hold-bg)}
.aw-hol-d{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);flex-shrink:0;min-width:76px}
.aw-hol-m{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--void-text);flex-shrink:0}
.aw-parea{margin-top:13px}
.aw-parea-h{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-weight:600;padding-bottom:6px;border-bottom:1px solid var(--border)}
.aw-perm{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:8px 2px;border:0;border-bottom:1px solid var(--border-subtle);background:none;cursor:pointer;font:inherit;font-size:12.5px;color:var(--text-muted)}
.aw-perm.is-on{color:var(--text);font-weight:500}
.aw-perm.is-locked{cursor:not-allowed;opacity:.8}
@media (max-width:1280px){
.aw-two{grid-template-columns:minmax(0,1fr)}
}

/* --- shared design classes, scoped to the Award screen (Office defines them only under other screens) --- */
.office-award .xp-empty{padding:22px;text-align:center;font-size:12.5px;color:var(--text-muted)}
.office-award .xp-yn{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.office-award .xp-yn.is-y{background:var(--paid-bg);color:var(--paid-text)}
.office-award .xp-yn.is-n{background:var(--void-bg);color:var(--void-text)}
.office-award .pc-note{display:flex;gap:10px;padding:11px 14px;border:1px solid var(--border);background:var(--bg-subtle);border-radius:10px;font-size:12.5px;line-height:1.5;color:var(--text-muted);margin-bottom:16px}
.office-award .pc-up{color:var(--void-text);font-weight:600}
.office-award .pc-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
.office-award .pc-submit-s{font-size:11.5px;color:var(--text-muted);line-height:1.45}
.office-award .pg-card{padding:16px 18px}
.office-award .pg-card-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-weight:600}
.office-award .pg-card-s{font-size:12px;color:var(--text-muted);line-height:1.5;margin-top:4px}
.office-award .pb-st-warn{display:flex;gap:8px;align-items:flex-start;padding:9px 11px;background:var(--hold-bg);border:1px solid var(--hold-border);border-radius:9px;font-size:11.5px;color:var(--hold-text);line-height:1.45;margin-top:8px}
.office-award .pb-st-note{font-size:10.5px;color:var(--text-subtle);line-height:1.45;margin-top:9px}
.office-award .ds-pin{font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 5px;border-radius:3px;background:var(--brand);color:var(--brand-fg)}
.office-award .ds-dwell{display:flex;align-items:center;gap:3px;flex-shrink:0}
.office-award .ds-dwell button{width:19px;height:19px;border:1px solid var(--border);background:var(--surface);border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;color:var(--text-muted)}
.office-award .ds-dwell button:hover{border-color:var(--brand);color:var(--brand)}
.office-award .ds-dwell span{font-family:var(--font-mono);font-size:11px;font-weight:700;width:22px;text-align:center}
.office-award .rs-chip{font-size:12px;padding:6px 11px;border:1px solid var(--border-strong);background:var(--surface);border-radius:var(--radius-full);cursor:pointer;font-family:inherit;color:var(--text-muted)}
.office-award .rs-chip.is-on{border-color:var(--brand);background:var(--brand-bg);color:var(--brand);font-weight:600}
.office-award .ro-fl{display:flex;flex-direction:column;gap:4px;min-width:0}
.office-award .ro-fl>span{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}
.office-award .ro-fl select{font-family:inherit;font-size:12.5px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:7px;padding:6px 9px}
.office-award .ro-chead{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}
.office-award .pf-gate{font-size:10px;font-weight:600;padding:3px 8px;border-radius:var(--radius-full);background:var(--paid-bg);color:var(--paid-text)}
.office-award .pf-gate.is-off{background:var(--void-bg);color:var(--void-text)}
/* Award & payroll › Pay periods (My work, 072): no design screen; the Staff screen's field idiom. */
.office-award .aw-pay-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 16px}
.office-award .aw-pay-field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:12px}
.office-award .aw-pay-actions{display:flex;gap:8px;margin-top:4px}
