/* Operational extension of the PolyWorks account shell. */
.staff-mode { --accent: #ff995d; --accent-ink: #ffc49f; --mint: #211b17; caret-color: var(--accent); }
.staff-mode ::selection { color: #fff; background: #734025; }
.staff-mode .main.narrow { max-width: none; width: 100%; }
.staff-mode .main { padding: 28px clamp(16px, 3vw, 36px) 64px; }
.staff-workspace { max-width: 1600px; margin-inline: auto; }
.staff-workspace .page-head { margin-bottom: 24px; }
.staff-workspace .section { margin-block: 32px; }
.staff-workspace .section-head { margin-bottom: 12px; }
.staff-workspace p { max-width: 75ch; }
.staff-workspace button, .staff-workspace .btn { min-height: 40px; }
.staff-workspace :is(input, select, textarea) { min-height: 40px; max-width: 100%; }
.staff-workspace select { width: 100%; }
.staff-workspace :is(input, textarea)::placeholder { color: #aaa; opacity: 1; }
.staff-workspace :is(th, td, time, .staff-elapsed, .staff-summary) { font-variant-numeric: tabular-nums; }
.staff-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-block: 20px; max-width: 880px; }
.staff-form label { margin: 0; display: flex; flex-direction: column; align-items: stretch; gap: 6px; font-size: .85rem; }
.staff-form fieldset { border: 1px solid var(--line); padding: 12px; min-width: 0; }
.staff-form fieldset legend { padding-inline: 4px; color: var(--muted); }
.staff-form .staff-check, .staff-check { display: flex; flex-direction: row; align-items: center; gap: 10px; margin-block: 8px; }
.staff-workspace input[type="checkbox"] { width: 18px; min-height: 18px; height: 18px; accent-color: var(--accent); flex: none; }
.staff-wide { grid-column: 1 / -1; }
.staff-disclosure { margin-block: 12px; border: 1px solid var(--line); border-radius: 6px; padding: 0 16px; }
.staff-disclosure > summary { padding-block: 14px; font-size: .9rem; font-weight: 550; cursor: pointer; }
.staff-disclosure[open] > summary { border-bottom: 1px solid var(--line); }
.staff-disclosure > :not(summary) { margin-block: 16px; }
.staff-disclosure .staff-disclosure { margin: 8px 0; }
.staff-empty { padding: 24px 0; }
.staff-empty h3 { margin-bottom: 8px; }
.staff-empty p { color: var(--muted); font-size: .9rem; }
.staff-summary { display: flex; gap: 12px 28px; flex-wrap: wrap; border-block: 1px solid var(--line); padding-block: 16px; margin-block: 24px; font-size: .9rem; }
.staff-clock { padding: 20px; border: 1px solid var(--line); border-radius: 6px; background: #111; }
.staff-clock-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.staff-clock .staff-form { margin-bottom: 0; }
.staff-elapsed { font-size: 1.35rem; font-weight: 550; white-space: nowrap; }
.staff-table-wrap { overflow-x: auto; border-block: 1px solid var(--line); }
.staff-table { border-collapse: collapse; width: 100%; font-size: .88rem; }
.staff-table th { text-align: left; font-size: .75rem; color: var(--muted); font-weight: 550; }
.staff-table :is(th, td) { padding: 12px 14px; vertical-align: top; border-bottom: 1px solid var(--line); }
.staff-table :is(th, td):first-child { padding-left: 0; }
.staff-table tr:last-child td { border-bottom: 0; }
.staff-table td { overflow-wrap: anywhere; }
.staff-task-name { display: grid; gap: 6px; }
.staff-task-name > a { font-weight: 550; color: var(--ink); }
.staff-toolbar { margin-block: 16px; }
.staff-board { display: grid; grid-template-columns: repeat(4, minmax(230px, 1fr)); gap: 16px; overflow-x: auto; padding-bottom: 16px; scrollbar-color: #555 #111; }
.staff-column { background: #101010; padding: 12px; border-radius: 6px; min-height: 300px; }
.staff-column > h2 { display: flex; align-items: center; gap: 10px; font-size: .85rem; margin: 3px 0 16px; }
.staff-column > h2 span { color: var(--muted); font-weight: 450; }
.staff-card { background: #1a1a1a; border: 1px solid #393939; border-radius: 6px; padding: 14px; margin-bottom: 12px; display: grid; gap: 10px; }
.staff-card.master { border-top-color: var(--accent); }
.staff-card[draggable="true"] { cursor: grab; }
.staff-card[draggable="true"]:active { cursor: grabbing; }
.staff-card > a { color: var(--ink); font-weight: 550; line-height: 1.45; overflow-wrap: anywhere; }
.staff-card select { font-size: .8rem; background-color: #111; }
.staff-kind { display: inline-flex; align-items: center; gap: 6px; font-size: .7rem; color: #bdbdbd; line-height: 1; }
.staff-kind.master { color: var(--accent); }
.staff-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #bdbdbd; font-size: .72rem; overflow-wrap: anywhere; }
.staff-card-meta > :first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.staff-overdue { color: #ffc29d; }
.staff-text { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; }
.staff-list { list-style: none; padding: 0; margin: 0; }
.staff-list > li { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; justify-content: space-between; padding-block: 12px; border-bottom: 1px solid var(--line); }
.staff-events { list-style: none; padding: 0; margin: 0; }
.staff-events > li { padding-block: 16px; border-bottom: 1px solid var(--line); }
.staff-events > li > div:first-child { display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: space-between; }
.staff-events strong { font-size: .88rem; font-weight: 550; }
.staff-events small { color: var(--muted); display: block; margin-block: 6px; }
.staff-checklist { list-style: none; padding: 0; }
.staff-sprints { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 24px; }
.staff-sprint { border-top: 1px solid var(--line); padding-top: 20px; display: grid; align-content: start; gap: 12px; }
.staff-sprint progress { width: 100%; height: 6px; accent-color: var(--accent); }
.staff-report-total { font-weight: 550; margin-block: 20px; }
.staff-break-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; margin-block: 12px; }
.staff-correction { padding-block: 20px; border-bottom: 1px solid var(--line); }
.staff-correction > h3 { margin-bottom: 12px; }
.staff-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.staff-compare pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .75rem; }
@media (max-width: 700px) {
  .staff-form, .staff-compare { grid-template-columns: 1fr; }
  .staff-clock-head { flex-direction: column; }
  .staff-clock { padding: 16px; }
  .staff-summary { gap: 12px 20px; }
  .staff-disclosure { padding-inline: 12px; }
  .staff-table { min-width: 480px; }
  .staff-break-row { align-items: stretch; flex-direction: column; }
}
@media print {
  .staff-mode .topbar, .staff-mode .sidebar, .staff-mode .foot, .staff-mode .skip,
  .staff-mode .staff-clock, .staff-mode .staff-form, .staff-mode button, .staff-mode .no-print,
  .staff-mode .staff-correction, .staff-mode .staff-disclosure { display: none !important; }
  .staff-mode, .staff-mode .main { background: #fff; color: #000; padding: 0; }
  .staff-mode .shell { display: block; }
  .staff-mode .staff-table { min-width: 0; }
  .staff-mode .staff-table-wrap { overflow: visible; }
  .staff-mode :is(td, th, p, h1, h2, .sub) { color: #000; }
  .staff-mode .staff-table tr { break-inside: avoid; }
}

.staff-card-meta > :last-child { flex: none; white-space: nowrap; }
