/* ===== Assignment Tab ===== */
.assign-summary{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.assign-summary-chip{padding:10px 20px;border-radius:20px;font-size:1rem;font-weight:600;
  display:flex;align-items:center;gap:8px;background:#fff;
  box-shadow:0 1px 4px rgba(0,0,0,.08)}
.assign-staff-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}
.assign-staff-filter{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;align-items:center}
.assign-staff-btn{padding:12px 20px;border-radius:24px;font-size:1.05rem;font-weight:700;
  border:3px solid #e0e0e0;background:#fff;color:#555;transition:all .15s;min-height:52px;
  display:flex;align-items:center;gap:8px}
.assign-staff-btn.active{border-color:#1a237e;background:#e8eaf6;color:#1a237e}
.assign-staff-btn:hover:not(.active){border-color:#9fa8da;background:#f5f7ff}
.assign-table{margin-top:4px}
.assign-table td{vertical-align:middle}
.assign-table tr{border-left:5px solid #ccc}
.assign-sel{min-height:44px;padding:6px 10px;border-radius:8px;
  border:2px solid #e0e0e0;font-size:.95rem;font-weight:600;background:#fff;width:100%;
  color:#333;appearance:auto}
.assign-sel:focus{border-color:#1a237e;outline:none}

/* View toggle */
.assign-view-toggle{display:flex;gap:6px;margin-bottom:14px}
.assign-view-btn{padding:10px 22px;border-radius:20px;font-size:1rem;font-weight:700;
  border:3px solid #e0e0e0;background:#fff;color:#555;min-height:48px;
  display:flex;align-items:center;gap:6px;transition:all .15s;cursor:pointer}
.assign-view-btn.active{border-color:#1a237e;background:#e8eaf6;color:#1a237e}
.assign-view-btn:hover:not(.active){border-color:#9fa8da;background:#f5f7ff}

/* Assignment grid */
.assign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.assign-grid-cell{background:#fff;border-radius:10px;padding:8px 10px;
  box-shadow:0 1px 4px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:3px;
  border-left:5px solid #ccc;min-height:0;transition:transform .1s}
.assign-grid-cell:active{transform:scale(.96)}
.assign-grid-cell.st-occupied{border-left-color:#1e88e5;background:#f3f8ff}
.assign-grid-cell.st-departing{border-left-color:#f57c00;background:#fff8f0}
.assign-grid-cell.st-vacant{border-left-color:#66bb6a;background:#f5fef5}
.assign-grid-cell.no-task{opacity:.4;pointer-events:none}
.assign-grid-cell.staff-dim{opacity:.25}
.assign-grid-room{font-size:1.2rem;font-weight:800;color:#1a1a2e;line-height:1}
.assign-grid-badges{display:flex;gap:3px;flex-wrap:wrap;align-items:center}
.assign-grid-staff{font-size:.75rem;font-weight:700;color:#555;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.assign-grid-cell .assign-sel{min-height:36px;font-size:.8rem;padding:3px 6px;border-width:1.5px}
